Jump to content

vkz89q

Members
  • Posts

    203
  • Joined

  • Last visited

Nexus Mods Profile

About vkz89q

Profile Fields

  • Country
    None

vkz89q's Achievements

Collaborator

Collaborator (7/14)

0

Reputation

  1. Hmm, that's a bit weird. Way the spell works is: when day comes and they flee from player, when they are far away(out of sight) the spell disables(hides completely) them. Then the script in the quest enables them at night. I remember I tested this a lot and it almost always worked flawless, unless they get stuck and can't flee from player and then they just wait to get killed. Not sure what you mean by "combat disable", but I guess it's the "ignore combat" flag in AI package? If that is not checked, they can't flee if they are in combat, they will fight instead. Remember to always disable and enable the mod(from holotape) if you make changes, otherwise they won't have all the changes.
  2. It's spell in their race. You might want to give them other spells too. DayDisableCloak hides them during the day, I think. Here's a picture: https://imgur.com/a/sW4jBdy There's also speed spell if you want to make them faster, up to you :D You can add those spells straight to alien actor or race, I don't think it matters. I'm glad you got it working! edit: Spell which gives them cloak is called "_vnh_chameleonSpell". edit2: Be careful who you give the "DayDisableCloak" spell. The quest will make them visible at night again, but if they are not spawned by quest, nothing will make them visible and they are forever disabled. I think it's safest to make copy of alien actor/race, give the spells to them and then select those new aliens to spawn in quest properties.
  3. Hmm, the scripts only handle the spawning mechanic. I think the flee mechanic is made with "AI package" in the quest or/and magic effect/spell, you can try take a look what AI packages/spells the actors have and give the same to the aliens. They should only flee during the day or when their health is very low.. if they are not in same faction, they might attack each other and be low health, or the alien actor might be missing AI package and the quest gives them flee package, that is always active = they always flee. So in short, you want to see what AI packages and magic effects(maybe perks?) the ghoul actor has, and give those same to the alien actor. edit: The workflow of quests and scripts is something like this: when you enable the mod, master quest is started that starts "spawn quests" that have scripts on them. The scripts monitor the ghouls and reports back to the master quest when most of them are dead and then cleans the remaining enemies and restarts the spawn quest(s). When you shut down the mod via holotape, it disables and marks all enemies for delete, then shuts down all quests. Actual spawning is handled by quest, so I'm 95% sure somewhere should be a property which enemy to spawn. I downloaded the mod and opened in creation kit, these decide which enemies to spawn: https://imgur.com/a/hoba3P3
  4. Hello there! I haven't been modding Fallout 4 for almost 2 years, so my memory might be a bit rusty. I think everything related to this mod is prefixed with "vnh" or something similiar in creation kit. There are ghouls that are made from original ghouls and there are quests that spawn those ghouls. In the quest properties you should be able to select which enemies they spawn.. So if you make new enemies based on those aliens, you should be able to select those aliens in quest properties. Might be in script property too, which should be available in the quest(s). Let me know if it works for you.. I have the mod source on my old pc and can't look at it right now. You want to use the the holotape to disable the mod first and then re-enable after modifying enemies. Otherwise they might be using old data. You propably need to load both mods same time in creation kit to be able to select those aliens. If that doesn't work, you can try find those "vnh" ghoul enemies(actors?) and modify them so they use alien data instead of ghouls.
  5. So, I'm trying to make a travel package with random locations. My problem is that I noticed that it isn't random at all. It's only random the first time the package starts, not when its supposed to repeat itself. Heres a picture of 2 packages. They both seem to work exactly the same: Package 1: Package 2: Here is what happens when I spawn actor with this package: 1. They always skip the first travel destination and go either travel2 or travel3 first(nice random??). 2. After they reach travel2 or travel3, the package is supposed to start over and it does, BUT it completely forgots any randomness and just loops from travel1, travel2, travel3 and then starts over. 3. I have tried LOT of Random branches, like random inside a random that is inside a random but at some point they always stop being random. Like I said, the first time the package starts it IS random, but not after first destination is reached. Now, what wiki says about random branch is: Random - This branch will run and pick one and only one valid branch or procedure to do. Once it does that branch or procedure, the branch will finish. I have tried ticking Success completes package on the Travels, but it doesn't change anything. I have checked other mods with Random packages and I have couple of my own that use random packages. This is just the first time I actually paid attention how it really works. It's not random at all when the package completes and continues. Then its just basic go from top to bottom. Any ideas what I'm doing wrong or is this just "feature" ? The images I posted make NO difference at all, I'm testing on a clean save and using quest with high priority so nothing else messes with the packages. I can't even find a single vanilla package that uses Random branch.
  6. Can you possibly elaborate on this more? OP was talking about using same fragment over and over again.. so you can put the fragment code in Quest script and call the function in fragment, instead of repeating the same code on multiple dialogues. https://www.creationkit.com/index.php?title=Quest_Stage_Fragments
  7. We make a quest and script that runs everytime player levels up. 1. Go to quest tab, click new: https://imgur.com/a/X1oFS 2. We give our quest name: https://imgur.com/a/q0WZ6 - If we want our quest to run only once, we check "run once", otherwise it will run every time player levels up - If we want it to run more than once, we select "allow repeated stages" 3. Go to Scripts tab, press Add and select new script: https://imgur.com/a/JhtGw 4. Let's give our script a name and namespace(optional): https://imgur.com/a/HXVsV - Click OK and then right click our script and "Edit Source" 5. Make a new function in the script and give it a name we can remember: https://imgur.com/a/Qmo1K - Then click Save and let it compile 6. Let's make a new stage that will run our script when the quest is started by Story manager: https://imgur.com/a/LvYz0 - Make sure every checkbox is like in the picture and fragment matches - Select our new script in the "kmyquest" - Do as is done in the picture - Click OK at the end 7. Let's find the SM event node in Creation kit and select Increase Level event: https://imgur.com/a/TadtF - Open it 8. Select the top most thing in the Increase Level window and select "New Quest Node": https://imgur.com/a/lCJfr - Make sure you don't touch the things that are already there, so we don't make any conflicts with other mods 9. Let's add a quest to the Stacked Quest Node we just made: https://imgur.com/a/YH0xP - Select Add Quests 10. Let's select the quest we made earlier: https://imgur.com/a/Oz7SU - Click OK 11. Thats it! Now we have a script that runs every time player levels up: https://imgur.com/a/P32MU Feel free to test it in game. You can increase your level by 1 and you should see a message in the top left corner. For example: if your level is 10, type this in console: player.setlevel 11 and you should see the message.
  8. It's not that complicated. It just sounds bad and confusing(and it is for the first time). Check these https://www.creationkit.com/index.php?title=SM_Event_Node https://www.creationkit.com/index.php?title=Bethesda_Tutorial_Story_Manager You don't even need to fill any aliases. Just make a quest that will run your script. Find SM event Node in creation kit and check how it works for "LegendaryChanceQuest". Then find that quest in quest tab and setup your quest the same way. It will have one stage that runs on start and has fragment script on it.
  9. Find SM event node, Increase level, make a new Quest node, make a new quest and select that in your quest node. Check "shares event". Then, make a script in the quest, make a new stage and check "run on start", check "allow repeated stages", then make a function in your quest script, then go back to your fragment and write: kmyQuest.MyFunctionIJustMade() or if the script is simple enough, just put the whole thing in the fragment. Now, everytime you level up, that fragment will run.
  10. You need to override it with new topic group and conditions. If you check Nick Valentines companion quest and Favors tab, you should figure it out.
  11. You need to make Property for your script. You can type this in your script before(or after) any events: Race Property GhoulRace Auto Const Then click properties on your script and Auto-Fill.
  12. I never tried to do that kind of thing with furnitures so sadly I don't have real answer :( I can only think that the bed he is assigned is linked to him somehow and is target in his workshop alias package. I would imagine that Mama Murphy should have very close to what you need? Try adding more priority to the quest so it will be higher than any workshop quests. Maybe someone else has tried to do this and can answer better.
  13. Make quest, make new alias unique actor, select your unique npc. Put the package in alias window. Then, the package will "fight" vs other packages, the one with highest quest priority will be used(if package conditions are met). If your NPC isn't in any other quests, you can simply give your quest priority of 10 or so. Do not select "run once" in your quest, so you can Start() or Stop() the quest if you want to enable/disable the package.
  14. I have been playing a lot with quest and stages lately so I can give couple examples, I'll try to explain it simple as possible: Example 1. Quest with stages 10, 50, 100 and 200. Allow repeated stages is NOT selected in ck window. Let's assume every stage has a fragment on it. You start the quest by doing Quest.SetStage(100). The quest starts and you do GetCurrentStageID(), it will return 100. Now, you do SetStage(50), the fragment in that stage runs. You do GetCurrentStageID() it will return 100. It will always return the HIGHEST stage the quest has ever been. Now you do SetStage(50) again, it does NOT run the fragments because "Allow repeated stages" was not selected. Now you do IsStageDone(50) and it will return true. You do IsStageDone(10) and it will return false. As you can see, you can still use stages for controlling stuff. For example, player picks up a quest item and we set stage 10, to track if it's picked or not. So, now we can use condition IsStageDone(10) in our dialogue to see if the player picked the item. We also can't "undo" the stage 10, so we want to make our item not-droppable. Example 2. Same thing but we have "Allow repeated stages" checked. The only difference is that we can run any stage any amount of time and it will always run the fragment on it. If we run SetStage(10), it will run. We do SetStage(10), and it will run again. From now on, IsStageDone(10) will always return true after the first time we ran it. If we started our quest by running stage 200, GetCurrentStageID will always return 200. The only way to "reset" all stages, so CurrentStageID goes to 0 is to do this: Reset() Stop() and in that order. It won't work right the otherway around. Hope this helps. It will require then to Start() the quest again and you want to give it couple seconds atleast before starting again to make sure it's shut down and can actually start.
  15. Some keywords are also used in conditions and scripts. For example some mod that adds perk that only works for sniper rifles might use condition HasKeyword or WornHasKeyword HasScope. If you remove them without checking them out(if anything uses them) they will stop working and break things.
×
×
  • Create New...