Jump to content

Cheyron

Premium Member
  • Posts

    102
  • Joined

  • Last visited

Everything posted by Cheyron

  1. just fyi, nothing you mentioned is why it happens as i have my game setup with vsync, usleep, capped at 60 fps etc and i still get that bug.
  2. Well I decided to attach scripts to all of his packages to notify me when they start, end or change and none of his packages attached to his actor print messages when they are supposed to start. It makes me feel like all the package changes I am making are not being reflected in game. And I even checked with TES5Edit to make sure all the Skyrim stuff I edited like the Terek actor is not being overwritten by another esp. So i know my changes are updated in the load order but they do not seem to be reflected in game. I was able to use a scene to get him to first activate the breeze home door, then to activate the bannered mare door and then when the scene ends to evaluate his packages and lo and behold he goes to the bannered mare and i find him leaning up against a wall in there... so it appears the only way i could get it done was with a scene. I just wonder why not using conditions on packages would not evaluate correctly. Anyways I guess I am over it but if anyone knows or wants to test out what I am doing I wouldn't mind knowing what I did wrong. I didn't think I would have had to instruct him how to get to the bannered mare. Thanks.
  3. So anyways, I can get the dialogue from my quest to show up in game and it runs the code seen above so shouldnt it result in him going to the bannered mare? The example above shows the package for when he sleeps but the package for sandboxing is identical it just uses the sandboxing template... i still tell him to sandbox in the bannered mare. In my game he just stands there and does nothing.
  4. Uses of the Actor: Me kicking him out: Original Sleep Package: Original Sleep Package Updated Conditions: The added package to replace the above one when the global variable = 1: And the condition for the "streets" version of the sleep package:
  5. im not sure what COC means... iirc it is a console command but i never have used it. I am walking into Breezehome through the front door and I am trying to update Terek's package stack after I update a global variable that his packages consider in their conditions. Check my images below I just added... you can see when I update their packages in the topic response.
  6. I have Don't know why I never replied but I am working on this again now after so many months. I gave up trying to make this stupid NPC do what I want. It is the NPC Terek. When you first buy Breezehome he is in there saying you have to kill him. I'm not going to do that so I wanted to make a quest where I threaten him and then he backs down and leaves. So his original packages have him sandboxing or sleeping near his editor location... so i made a global variable to act as a flag when i had kicked him out... and then on the conditions for his original packages i made sure the flag = 0 in order for his original packages to run and i set the variable to 1 in a topic on end script. And then I have the actor evaluate his packages. I also made new packages which tell him to sandbox in the bannered mare cell if the global variable is set to 1. So shouldn't all his original packages be blocked and only the ones that have conditions where my global = 1 would run. I don't know maybe i will take some screenshots and show you cause this problem is annoying... this guy just stands there after I do the dialogue that runs the script to edit the global and evaluate his packages even though no package telling him to do stuff near the editor location should be running. The guy actually does nothing... just stands there. Does he not know how to leave the house or something? 1. Terek NPC has 3 original packages, DefaultSandboxEditorLoc, DefaultSleepEditorLoc, SandboxBreezehome. These 3 packages have no conditions other than a schedule attached. I then edited them to only allow them to run if my global variable = 0. Then I duplicated the sleep and sandbox editor loc package (not the breezehom one, that one i just block). Then in these new packages i tell him to sleep and sandbox in the bannered mare cell. So he will follow the same schedule as his orginal packages but now the condition for these 2 duplicated packages are when my global variable = 1. 2. I searched in creation kit and he does not get used in any alias references. This is a very basic npc who does literally nothing but sandbox around breezehome and keeps repeating dialogues. He is only referenced ever in the topic infos for the WhiterunDialogue quest. 3. I would hope the package configuration is fine since all i did was duplicate the two editor location packages and added conditions to run either the original or the edited ones based on if i selected the dialogue to threaten him. I will post screenshots but if you want you can open creation kit (if you have installed) and just filter for Terek under Actors. I can post screenshots... is that what you mean? 4. Yeah possibly but all i did was add two new packages... set a condition for original packages to run on when global variable = 0 ... then i have dialogue with npc that runs a script on end of topic info dialogue to set the global variable to 1 and then for akSpeaker "Terek" to EvaluatePackage(). Which will now block all his original packages and run the two duplicated packages which have the condition global = 1 and instead of editor location in the duplicated packages it is now location = in cell bannered mare.
  7. Try to uninstall the high res textures and test if it avoids the crashes... when i was using high res textures i always would get random crashes
  8. Is this Skyrim default behavior because I need to come to a complete stop in order to sheath a weapon. I am using combat mods so i am wondering if something is bugged... relevant mods I use are... Ultimate Combat TKDodge Archery Gameplay Overhaul Equipping Overhaul Because I use equipping overhaul, you need to sheath a weapon before switching to another weapon or else you drop your weapon so it forces me to come to a stand still to sheath my bow for example. Is this a bug or does anyone know if I can use creation kit or tes5edit to fix?
  9. i guess using quest aliases and starting quests is not the way to go... i was able to search formlists using this if anyone cares... Game.FindClosestReferenceOfAnyTypeInListFromRef
  10. Scriptname _cheyron_FindBedEffect extends activemagiceffect ObjectReference Function FindBedToSleepIn() ;begin search for beds in loaded area ;the quest aliases ClosestSingleBedRef, ClosestDoubleBedRef, and ClosestBedrollRef... ;all have the condition that checks if the base furniture object of the object matches a furniture on the list using IsInList ;i made sure to mark this quest as able to run more than once by unchecking the box on the quest data tab and the aliases are optional as well Debug.Notification("Starting Bed Quest") FindBedQuest.Stop() Utility.Wait(0.1) FindBedQuest.Start() Utility.Wait(0.1) ;check results of search ObjectReference sBed = ClosestSingleBedRef.GetReference() Float sDist = 9999.0 ObjectReference dBed = ClosestDoubleBedRef.GetReference() Float dDist = 9999.0 ObjectReference rBed = ClosestBedrollRef.GetReference() Float rDist = 9999.0 Actor player = PlayerRef.GetReference() as Actor Int found = 0 If sBed != None found += 1 sDist = player.GetDistance(sBed) Debug.Notification("Single Bed Found") EndIf If dBed != None found += 1 dDist = player.GetDistance(dBed) Debug.Notification("Double Bed Found") EndIf If rBed != None found += 1 rDist = player.GetDistance(rBed) Debug.Notification("Bedroll Found") EndIf If found > 0 If dDist <= sDist && dDist <= rDist Return dBed ElseIf sDist <= dDist && sDist <= rDist Return sBed Else Return rBed EndIf Else Debug.Notification("No Bed Found!") Return None EndIf EndFunction Event OnEffectStart(Actor akTarget, Actor akCaster) ;cast spell then check debug messages... it always says "No Bed Found!" even when I am standing next to a valid bed ObjectReference bed = FindBedToSleepIn() EndEvent Quest Property FindBedQuest Auto ReferenceAlias Property ClosestSingleBedRef Auto ReferenceAlias Property ClosestDoubleBedRef Auto ReferenceAlias Property ClosestBedrollRef Auto ReferenceAlias Property PlayerRef Auto
  11. If I have a list of Furnitures (for example CommonBed01, which the object inherits activators which then inherits form) how exactly do you force the quest to restart and fill the aliases? I can't seem to fill aliases by checking if a furniture is in a formlist and I will try to start the quest that fills the aliases when I am standing right next to a bed that I know is on the list. I am using match conditions for closest and loaded area. And the condition function I am using is IsInList.
  12. I created this thread again in the actual modding and creation kit forum. Some reason I uploaded it here but meant to upload it in the modding help forum. If a moderator could delete this that would be helpful.
  13. So I have a FormList of beds. CommonBed01 for example. Beds inherit Activator which inherit Form so they are valid objects to load into the list. Now when I try to find the closest furniture in the list, it never seems to find one because after stopping and starting the quest in order to force the quest to fill aliases... the aliases are always empty... I try to call GetReference after starting the quest when I am standing next to one of these beds on the list and it always returns None/Null. I am simply using a matching condition in the quest alias to check IsInList and then I point to the list that has the list of Furnitures. Can someone explain how to do this properly? I want to be able to dynamically find furniture at runtime. I always assumed to find objects loaded in the world... you create quest aliases with conditions and then start the quest to begin looking for them. What am I missing?
  14. So I have a FormList of beds. CommonBed01 for example. Beds inherit Activator which inherit Form so they are valid objects to load into the list. Now when I try to find the closest furniture in the list, it never seems to find one because after stopping and starting the quest in order to force the quest to fill aliases... the aliases are always empty... I try to call GetReference after starting the quest when I am standing next to one of these beds on the list and it always returns None/Null. I am simply using a matching condition in the quest alias to check IsInList and then I point to the list that has the list of Furnitures. Can someone explain how to do this properly? I want to be able to dynamically find furniture at runtime. I always assumed to find objects loaded in the world... you create quest aliases with conditions and then start the quest to begin looking for them. What am I missing?
  15. I have noticed it is the nature of internet... if you ever dare suggest something (to anyone and everyone, they all act like this online) then you better be ready to get chewed out... the thing is I know I am right and was ready to be chewed out... I simply don't care... because I am right and I know I am right. That is simply an immutable fact. Now they can take my advice or continue to use the wrong terms. I do not get mad when someone disagrees with me, I simply wish them all the best.
  16. this is the point I am trying to make... if you tell a user of vortex the mod is being installed what do you think they are going to think it means? ;) I mean if you honestly think some random user of vortex understands how vortex works under the hood then you are kidding yourself... now if you tell people mods are staged and ready to deploy then they know exactly what the app is doing ;)
  17. Yeah what im saying is to rename the first one to Stage... install suggests the game folder
  18. I think it would help the user understand what the app is doing. Right now when we install a mod we really are staging the mod for deployment. It makes the user think they have already placed mods into the game folders. Maybe I am the only one who thinks this lol.
  19. Some mods have multiple submodule folders like detailed character creation and one of those submodules needs to be loaded before the native modules. Vortex does not allow this currently since the load order screen only allows you to order Detailed Character Creation as a single mod. The install instructions listed here will better describe the process that Vortex load ordering will need to accommodate... https://www.nexusmods.com/mountandblade2bannerlord/mods/118 This is how it should be installed and how the load order in vortex needs to look... Vortex needs to look at the installed mods folder and check how many submodules are being loaded and to then display those in the load order Thanks!
  20. I have a mod where I am trying to change the AI packages the character uses when it evaluates their package list. I added some of my own and edited some existing ones but when I go in game the character seems to be running their original packages. Would it be because he was already loaded by the game? Can I just update actor's package list in creation kit and have the change reflected in game or does it not work if they are already loaded in the game? Would there be a way to completely reset the character??
  21. i figured it out, i had made a mistake and forgot to set the guard variable properly... forgot to include the return for my function that creates a npc but the compiler failed to warn me there was an error and overlooked it
  22. From what I understand, fragment scripts are supposed to be edited through the CK interface only, not directly. It may not cause any issues if done correctly, but I'd rather avoid doing so. Moving the custom functions to a quest script makes it easier to call it from other scripts on your quest and, in my experience, helps to keep things organized...but of course that's up to you! If you say the function code is only used once and in a single script, there's no reason to make it a function in the first place. :smile: it's a function simply for readability, I just moved it to a quest script anyway, thanks
  23. lmao I forgot to put the return value... wow thanks papyrus compiler for warning me! thanks for pointing that out, maybe im too tired but I never noticed that … well no wonder the guard never listened to me LMAO why would that function not be ok in the fragment... I know those fragments are garbage collected after the are done being used but I actually only use that function in the fragment, does it affect something else im not aware of? Thanks for posting, I simply never noticed that!
  24. I'm a little confused if I have to make a NPC in the creation kit to use in my quest or if I can just spawn an existing NPC and use it then delete them when I am done with them. I just need a whiterun guard to use in a scene for my quest. I want them to arrest another npc and escort them to prison? When I spawn a guard using this code... it seems the reference does not get filled because they don't participate in the scene and the guard just walks away doing his own thing... Actor Function SpawnNPCOffsetFromRef(ObjectReference ref, Form npcBaseForm, Float offsetX, Float offsetY, Float offsetZ, Float rotationOffset) Actor npc = ref.PlaceAtMe(npcBaseForm, 1, abInitiallyDisabled = True) As Actor Float zAngle = ref.GetAngleZ() + rotationOffset offsetX *= Math.Sin(zAngle) offsetY *= Math.Cos(zAngle) npc.MoveTo(ref, offsetX, offsetY, offsetZ) npc.SetAngle(0, 0, npc.GetHeadingAngle(Game.GetPlayer())) npc.Enable(True) EndFunction ;BEGIN FRAGMENT Fragment_0 Function Fragment_0(ObjectReference akSpeakerRef) Actor akSpeaker = akSpeakerRef as Actor ;BEGIN CODE akSpeaker.RemoveFromFaction(WhiterunBreezhomeFaction) Actor guard = SpawnNPCOffsetFromRef(FrontDoor, NPCToSummon.GetBaseObject(), 0, 10, 0, 0) guard.SetRelationshipRank(akSpeaker, -4) guard.SetAlert(True) GuardRef.ForceRefTo(guard) Utility.Wait(0.01) ApprehendScene.ForceStart();//the guard is supposed to chase (follow) a npc but he ignores... I spawned the npc GuardWhiterunImperialPatrolDay1 FleeBreezehomeScene.ForceStart();//this scene makes the npc run out the house where the guard is ;END CODE EndFunction ;END FRAGMENT
  25. thanks for posting this I will try to get ideas from this and see what happens... I do want to make a NPC a "criminal" so would I need to increase their rank in the crime faction? I'm still confused what you mean. I know each area has guards that each area has their own bounties. How would I make a whiterun citizen a criminal so guards go after them? Does the CrimeFaction have anything top do with that? What does the game do with the crime faction? What happens if you increase rank in the crime faction?
×
×
  • Create New...