Jump to content

TookYoCookies

Initiates
  • Posts

    4
  • Joined

  • Last visited

Reputation

2 Neutral

About TookYoCookies

  • Rank
    (0) Nub
    (0) Nub
  1. Hey I appreciate any help i could get. I actually tried using the LL_Lurker_Bog loot list earlier but i couldnt get it to work, either way though its all good and i appreciate the help. I was always hoping to have specific enough conditions to guarantee that it was one unique drop, so i was always gonna be looking for something to point to that one specific instance of that Soul Collector. I Do think i have something thats as close to a loot list pointing to that specific Soul Collector as i can get. heres my finished work around: { "$type": "Game.GameData.ItemGameData, Assembly-CSharp", "DebugName": "Part_Spirit_residue", "ID": "e474463c-1c74-44c5-945c-385d864b6974", "Components": [{ "$type": "Game.GameData.ItemComponent, Assembly-CSharp", "DisplayName": 850, "DescriptionText": 1458, "FilterType": "Ingredients", "InventoryAudioEventListID": "705deb97-3f84-48c8-a84b-e3c34e2d0e3a", "IsQuestItem": "false", "IsIngredient": "true", "IsCurrency": "false", "IsAdventuringItem": "false", "CanSellForFullValue": "false", "MaxStackSize": 999, "NeverDropAsLoot": "false", "CanBePickpocketed": "false", "IsUnique": "false", "Value": 95, "IconTextureSmall": "gui/icons/items/ingredients/spirit_residue_s.png", "IconTextureLarge": "gui/icons/items/ingredients/spirit_residue_l.png", "PencilSketchTexture": "", "InspectOnUseButton": [], "IsPlaceholder": "false" }, { "$type": "Game.GameData.DataScriptEventComponent, Assembly-CSharp", "Scripts": [{ "Event": "OnItemDroppedAsLoot", "Script": { "Conditional": { "Operator": 0, "Components": [{ "$type": "OEIFormats.FlowCharts.ConditionalCall, OEIFormats", "Data": { "FullName": "Boolean IsInScene(Guid, Guid)", "Parameters": ["b1a8e901-0000-0000-0000-000000000000", "0159a190-8857-480f-bfd5-0f43b61d6424"], "Flags": "", "UnrealCall": "", "FunctionHash": 0, "ParameterHash": 0 }, "Not": false, "Operator": 0 } ] }, "Scripts": [{ "Data": { "FullName": "Void GenerateLootListInto(Guid, Guid)", "Parameters": ["9bef9fbc-eec8-4aeb-996c-b22da1f2ff4c", "6897484c-1502-4300-bd2b-bc68be30d263"], "Flags": "", "UnrealCall": "", "FunctionHash": 0, "ParameterHash": 0 }, "Conditional": { "Operator": 0, "Components": [{ "$type" "OEIFormats.FlowCharts.ConditionalCall, OEIFormats", "Data": { "FullName": "Boolean ObjectHasItemCount(Guid, Guid, Operator, Int32)", "Parameters": ["9bef9fbc-eec8-4aeb-996c-b22da1f2ff4c", "77c22eeb-0d74-4fbf-a229-910271711608", "EqualTo", "0"], "Flags": "", "UnrealCall": "", "FunctionHash": 0, "ParameterHash": 0 }, "Not": false, "Operator": 0 } ] } } ] } } ] } ] } Hopefully my formatting is better this time too.. Anyways i changed the event call from "Event": "OnItemCollected", to "Event": "OnItemDroppedAsLoot", . I also added a condition to that originating script event, one problem i didnt want to have was having this script fire every ****ing time i picked up spirit residue, or every time one dropped. so i added: "FullName": "Boolean IsInScene(Guid, Guid)", "Parameters": ["b1a8e901-0000-0000-0000-000000000000", "0159a190-8857-480f-bfd5-0f43b61d6424"], If Im not mistaken, the way its set up is that unless those conditions(read: "Parameters", the first GUID being the Player and the Second GUID represents the zone's GUID) are met then the "OnItemDroppedAsLoot" event script doesnt even fire. so it solves the problem of going off every time a ghost/spirit etc. drops loot basically. And the Bottom condition call: "FullName": "Boolean ObjectHasItemCount(Guid, Guid, Operator, Int32)", "Parameters": ["9bef9fbc-eec8-4aeb-996c-b22da1f2ff4c", "77c22eeb-0d74-4fbf-a229-910271711608", "EqualTo", "0"], Ensures that once the Soul Collector has the one unique pair of boots in his inventory it stops spamming him with more supposedly super rare unique boots spawns. So I think the work around is finished, its worked out so far and nothing scary came up in the output_log so i think its good to go. Im gonna attach a screenshot incase any one wants to take a look at it all properly formatted.
  2. Here were two work arounds i was able to come up with that, while not perfect, they are capable of getting the job done. Just gotta make sure to loot the Spirit Residue before the unique boots. This work around hooks into the "OnItemCollected" Event: "$type": "Game.GameData.DataScriptEventComponent, Assembly-CSharp", "Scripts": [{ "Event": "OnItemCollected", "Script": { "Conditional": { "Operator": 0, "Components": [] }, "Scripts": [{ "Data": { "FullName": "Void GenerateLootListInto(Guid, Guid)", "Parameters": ["9bef9fbc-eec8-4aeb-996c-b22da1f2ff4c", "6897484c-1502-4300-bd2b-bc68be30d263"], "Flags": "", "UnrealCall": "", "FunctionHash": 0, "ParameterHash": 0 }, "Conditional": { "Operator": 0, "Components": [{ "$type": "OEIFormats.FlowCharts.ConditionalCall, OEIFormats", "Data": { "FullName": "Boolean ObjectHasItemCount(Guid, Guid, Operator, Int32)", "Parameters": ["9bef9fbc-eec8-4aeb-996c-b22da1f2ff4c", "77c22eeb-0d74-4fbf-a229-910271711608", "EqualTo", "0"], "Flags": "", "UnrealCall": "", "FunctionHash": 0, "ParameterHash": 0 }, "Not": false, "Operator": 0 again sorry for my poor formatting. You can see the the extra conditional i added here : "FullName": "Boolean ObjectHasItemCount(Guid, Guid, Operator, Int32)", "Parameters": ["9bef9fbc-eec8-4aeb-996c-b22da1f2ff4c", "77c22eeb-0d74-4fbf-a229-910271711608", "EqualTo", "0"], what this did is made it so the GenerateLootList only fired when my custom item, represented by GUID: "77c22eeb-0d74-4fbf-a229-910271711608" was only at '0' instances. Here is a 2nd version of the work around but its scripted as a conditional from the LootListDataComponet, instead of as a Data Script Event. : "$type": "Game.GameData.LootListComponent, Assembly-CSharp", "Conditional": { "Operator": 0, "Components": [] }, "OutputChance": 1, "OutputMode": "All", "Items": [{ "Conditional": { "Operator": 0, "Components": [{ "$type": "OEIFormats.FlowCharts.ConditionalCall, OEIFormats", "Data": { "FullName": "Boolean ObjectHasItemCount(Guid, Guid, Operator, Int32)", "Parameters": ["9bef9fbc-eec8-4aeb-996c-b22da1f2ff4c", "77c22eeb-0d74-4fbf-a229-910271711608", "EqualTo", "0"], "Flags": "", "UnrealCall": "", "FunctionHash": 0, "ParameterHash": 0 }, "Not": false, "Operator": 0 } ] }, "OutputChance": 1, "MinCount": 1, "MaxCount": 1, "Weight": 1, "ItemID": "77c22eeb-0d74-4fbf-a229-910271711608", "LootListID": "00000000-0000-0000-0000-000000000000", "LockedVisible": "false" again poor formatting, my apologies butr as you can see, same thing just triggers from the lootlistcomponent. So its not nearly as clean as a true LootList to an instanced creature would be, but it does get the job done for he time being. If any one wants me to put up the whole file let me know.
  3. I was able to rig a work around for the moment but its real ghetto. As you can see here: { "$type": "Game.GameData.ItemGameData, Assembly-CSharp", "DebugName": "Part_Spirit_residue", "ID": "e474463c-1c74-44c5-945c-385d864b6974", "Components": [{ "$type": "Game.GameData.ItemComponent, Assembly-CSharp", "DisplayName": 850, "DescriptionText": 1458, "FilterType": "Ingredients", "InventoryAudioEventListID": "705deb97-3f84-48c8-a84b-e3c34e2d0e3a", "IsQuestItem": "false", "IsIngredient": "true", "IsCurrency": "false", "IsAdventuringItem": "false", "CanSellForFullValue": "false", "MaxStackSize": 999, "NeverDropAsLoot": "false", "CanBePickpocketed": "false", "IsUnique": "false", "Value": 95, "IconTextureSmall": "gui/icons/items/ingredients/spirit_residue_s.png", "IconTextureLarge": "gui/icons/items/ingredients/spirit_residue_l.png", "PencilSketchTexture": "", "InspectOnUseButton": [], "IsPlaceholder": "false" }, { "$type": "Game.GameData.DataScriptEventComponent, Assembly-CSharp", "Scripts": [{ "Event": "OnItemCollected", "Script": { "Conditional": { "Operator": 0, "Components": [] }, "Scripts": [{ "Data": { "FullName": "Void GenerateLootListInto(Guid, Guid)", "Parameters": ["9bef9fbc-eec8-4aeb-996c-b22da1f2ff4c", "6897484c-1502-4300-bd2b-bc68be30d263"], "Flags": "", "UnrealCall": "", "FunctionHash": 0, "ParameterHash": 0 }, "Conditional": { "Operator": 0, "Components": [] } } ] } } ] } ] My God i dont know how to format on here.. But as you can see i was able to get the script to hook, only problem is the script fires EVERY time i loot a spirit residue. Any chance you guys know of a way i can kill the script once its fired once?
  4. As the title says, i need to know more about loot lists. For the past 2 days ive been unsuccessfully attempting to generate loot into the Soul Collector . While i can do it in game via GiveItemsToObject(Guid, Guid, Int32) as well as with the GenerateLootListInto(Guid, Guid) i can not for the life of me get either of these scripts to trigger by themselves from a mod file. I'd really love some understanding not only how lootlists at large work, and how i can get them to trigger into existing instanced objects like say the Soul Collector, or a hidden container like here. If any one can help, or point me in the right direction I'd be super grateful
×
×
  • Create New...