Jump to content

ThatGuyYeah

Premium Member
  • Posts

    158
  • Joined

  • Last visited

Everything posted by ThatGuyYeah

  1. I'm back. Working on the next build of the mod.
  2. Version 1.0 of the Serana Dialogue Edit is released for Oldrim, SSE and XBox One!
  3. Version 0.9 of the Serana Dialogue Edit is released for Oldrim and SSE!
  4. Version 0.7RBeta is progressing very well. I should be on time for that release.
  5. From your post, I assumed you were talking about scenes from that cinematic word, which ran into the same problem as I was doing it via the non-EVENT method.
  6. So, I think I solved it and to not torture some future person that will run into this situation, I am going to explain it. My theory turned out to be true in that the forcegreet package needs to really be triggered through some EVENT to work properly. You can trigger it with a variable method, which is what I was doing. But for some reason, the package DOES NOT LIKE this and will break off after the first topic. My solution is simple, once my variable reaches a certain value, I register for a single update (about 10 seconds), it will fire off the EVENT trigger OnUpdate and the forcegreet will trigger as is and the dialogue will continue to the next topic. Taking what Psy said last, I moved the topic from the working FG to the non-working one to see if that made a difference and it worked as is as well. That fueled my speculation that it does not like non-event triggers. I am going to run some testing this weekend and give a better update/100% confirm it, but that's pretty much it. The forcegreet must have some EVENT trigger. If you want to do it dynamically (without trigger box at a location), just do a register for single update for a few seconds. Here's the list of events you can use: https://www.creationkit.com/index.php?title=Category:Events
  7. Here's the weird thing, when I was making the audio and doing the testing, they are not fuzzed, yet But when I prep a mod for release, they are 're-fuzzed' for space saving purposes. Here's the kicker, the forcegreet that is tied to a trigger box is working with the fuz file as I released it with Version 0.5RBeta of the mod. It's an interesting theory and something I should look out for in the future, but I don't think that is it.
  8. Thanks for the replies, I will do a more detailed answer to it tomorrow but I wanted to reply to one person. I did click and unclick must complete and ran the game and still the same issue on either choice. The goodbye box is only checked in the last topic. I only set a stage in the first topic, to prevent bleedover. I ran an experiment using link to and invisible continue on two different forcegreets and still the same issue. The last part I did not do but I will do when I get home tonight. Lastly, I appreciate any help and I just said the let's assume I am not an idiot because I just wanted to skip the whole 'turning it off and on again' procedure as I already have done it. @Tasheni - I will give you a more detailed response tomorrow as I wanted to fire at this reply as it was easier to write. But I have a theory as to why that one forcegreet is working and the others are not. I will do this when I get home tonight.
  9. I REALLY hate Forcegreets. Never met anything so infuriating. Now, for those who helped me with my previous problem with firing a forcegreet without the need of a scene (https://forums.nexusmods.com/index.php?/topic/6266696-putting-this-to-bed-once-and-for-all-forcegreets-through-ai-packing-via-quest-stages/) I thank you as it helped resolve one problem, but it started a whole new issue for me. My current issue is that I am trying to do a forcegreet through an alias package and having the dialogue branch continue beyond the first dialogue. Doesn't matter if I do an invisible continue to the second topic or have the player pick the dialogue topic, the dialogue ends after the first topic (the topic that is fired with the forcegreet). Let's pretend I am not an idiot and I am linking the dialogues topic together properly. I also regenerated the SEQ files. I have tried doing the priority issue that I dealt with previously and it still won't work. For whatever reason, the dialogue will not continue beyond the first dialogue. It also won't work for scenes either. Each forcegreet is controlled by its own quest and stages. And to add to the weirdness of my dilemma, I do have one forcegreet that triggers at a location (via trigger box) and that works without a problem. It will continue to the second topic and there is no issue. But for some reason, doing this dynamically, I can get the forcegreet to trigger but I can't the get second dialogue to fire after the first forcegreet dialogue happens. Meaning if I have a dialogue branch like this: Topic 1 (Forcegreet) -Link-> Topic 2 -Link-> Topic 3 This happens instead: Topic 1 (Forcegreet) -Dialogue End -> Branch Ends If I click on the NPC, the dialogue topic is there and I can branch normally. At this point, I have no idea what is going on, so I am asking for help on this one as it is really holding my mod up. Thank you.
  10. Okay, that makes a lot more sense. Thanks. Now (to pick your brain a little bit more), is there a list of what these keywords associated with these perks? That way I don't keep making posts like this all the time.
  11. Hello, I have been tinkering with Fallout 4 CK (while taking a break from Skyrim modding here and there) and wanted to understand some mechanics of Fallout 4 mod, in particular weapon modding. There are some fixes and tweaks I have been adding for my game and one thing I wanted to understand is how to implement Weapon Skill perks (Rifleman/Commando/Gunslinger) into a weapon mod. In particular, say you have two different weapon grips, one that is geared for a gun and one geared for a rifle, how do you make sure the right perk (Rifleman/Commando/Gunslinger/whatever) is implemented into the right stock/weapon mod. Thanks for your time.
  12. I just wanted to make sure that my code seems valid. I have ran several test and it seems fine, but I wanted to make sure it will be fine with a person's game (i.e. no save bloat issues or anything like that). Pretty much this code is my second brain for Serana, which keeps my variables and the relationship mechanic. I will make calls to these functions based on dialogue choices, which will use a fragment script which calls a function in the main script here. I am 95% sure it should be fine, but I just want some external input as a sanity check. And here is a sample fragment code:
  13. I am finally moving forward with this mod. Pretty much testing and debugging as I come along.
  14. That's the pretty much the goal. I am aiming for a relationship mechanic (ala Fallout 4) and a remembrance mechanic (ala Telltale Games) for Serana and I know I will be updating the mod and releasing a new update here and there (as I progress the dialogue expansion in Dragonborn and the Main Game). My fear is that the subsequent updates (when a person is downloading and replacing my mod with the new version MAY reset those variables. I get the suspicion that it might not and I should be fine, but given this is the Creation Kit and Skyrim, I might not be so lucky. I am doing test runs right now to see, but again, I don't know. This is pretty much uncharted territory for me. But considering when Bethesda updates their Update.esm patch, I don't think it would change, Also, thanks for the link, I'm trying to keep the mod as lightweight as possible with other mod requirements (I even toe the line with the Unofficial Patch). I personally don't want to deal with having to use SKSE as a requirement, but if it does fail, I will look into that more. Thank you.
  15. I am writing scripts for my mod and I know that I will be updating this mod regularly over the next year. My question is about persistence in variables that I will be adding. My concern is that when I update the mod (not changing the name or anything like that, just adding onto the esp so they will just have to replace the esp) that variables/choices that the players made previously, will be wiped out with the next version of the mod. I hope that is not the case and I will do a few experiments as I build the mod (i.e. making a test save and seeing if the changes I make will reset the values), but I have no idea. My major concern is that I have a mechanic which is really just a variable that I initialize as 0, but will either go up or down based on player actions. My concern is if a person updates my mod mid game, that value will be knocked back to 0. I am hoping there is some Persistence that it will remain at its default value. Any feedback would be nice on this. My second concern is Quest Stages. The variable I mentioned is going to be used a lot through the mod and to save on putting a lot of scripting on the dialogues, I wanted to make a quest handler in order to handle the quest. My approach is to build a quest that has a few stages where each stage where the stages will make the value go up or go down and it is repeatable. I am wondering if this will be a valid and correct approach than the other approach is to heavily script each dialogue choice that will affect it. The drawback of this is that once a stage hits the highest stage, it will not register going back down (meaning that if you have a stage of 40 then setting the stage so 20 will still make the value 40), but it will still do the actions of the stage 20. It seems weird to me so I would like feedback on this. Thank you for your time.
  16. Alias was loaded and status was set but setting priority to 99 (mine was 60 originally) seemed to have fixed it. Thanks! Now my next question does setting the quest priority to 99 break other quests?
  17. This has been a bane of my existence for a few years now. Put simply, I am trying to add a simple forcegreet to a follower that is currently following me. For some reason, I get mixed results. The only way I can get it to work is if I use scenes and I believe I can do it with just a simple AI package. Difficulty: It's Serana so chances are her bugged AI is probably causing all sorts of issues. I need someone to just follow my train of though as I go through my process and point to where I am screwing up. First, I create a simple Dialogue block to test to see if the dialogue works: Next, I write a simple AI package for the forcegreet as shown: Then, I write a simple quest stage progress where stage 10 starts the forcegreet: Then, I create an alias: Then, in Stage 10, I write the following: Alias_Alias_Serana.getActorReference().evaluatePackage() Utility.Wait(3.0) Debug.Notification("Forcegree Active!") I add the three seconds to see if the package evaluates and a Notification to see if it goes into stage 10. Then set the stage to 10 and the Notification pops up, but nothing else happens. The package does not evaluate. At this point, it's been a few years that I have been wrapping my head around this. I really want this demon put to rest so I can move on. Any help will do. If more information is needed, I will add on to it. Thanks again.
  18. The problem with Serana is mostly they kind of left her unfinished and rushed so a LOT of these quirks was because Bethesda didn't really take care of Serana. Just general laziness/wanting a DLC to be released ASAP were the culprits.
  19. Alright, after tinkering with the code, I manged to get it to work perfectly. If you are wondering how to do it here is what I did: First, I build a quest for the script and write the main script as follows: Scriptname SDE extends Quest Conditional ; This script will poll the character with Serana and see if she is near the player. DLC1_NPCMentalModelScript Property SDECMM Auto ; Reference other script for following status ObjectReference Property Serana Auto ; Adds Serana as Reference for Code int Property X = 0 auto conditional EVENT OnInit() Debug.Trace("OnInit() - Quest 'SDETestCode' is running. " +self) ; Info only ENDEVENT Event OnUpdateGameTime() If (self as Quest) && self.IsRunning() ; Make sure mod is still running ; Debug.Notification("Seeing this message, code works here.") ; Utility.Wait(2.0) ; Debug.Notification("Checking other code.") ; Utility.Wait(2.0) If (Game.GetPlayer().GetDistance(Serana) < 1024) && (SDECMM.IsFollowing == true) X += 1 ; Not exact but wanted to add increment to script - will add cap to prevent overflow error ; Debug.Notification("Your time with Serana has improved your standing with her.") ; Will shorten RegisterForSingleUpdateGameTime(1.0) ; if (X == 4) ; Debug.Notification("Serana Admires You - Just Kidding.") ; EndIf Else Debug.Notification("Code failed At Following.") EndIf Else Debug.Notification("Code failed At Check.") EndIf EndEvent Next, I implement a simple quest stage (called it 0) with an Empty Log Entry so I can write a simple fragment as so: ((self as Quest) as SDE).RegisterForSingleUpdateGameTime(1.0) With that, the game will check if an in-game hour has passed. Then it will first check to see if the mod is running then it will check to see if Serana is following the player (using her variable that status - will not work for other followers) as well as check if Serana is close by. If all these are true, then my code will do its poll and repeat the cycle in another in-game hour. If any of these fail, the code will stop and will not repeat. I am hoping someone can check to see if the structure of the code will be safe to use and not cause too much issue with saves (i.e bloat). Anyone can now modify this code for 24 hours or for other purposes. Also, ignore the semi-colons, I was using that code for debug and commented it out.
  20. Thank you for clarifying, yeah I had a feeling having this count every 24 hours in a while loop would be problematic. Yeah I started maybe a week ago, and I just got this mind set of what exactly I wanted to make, and ever since then I have just none stopped rammed head first into scripting .... I haven't even made my first simple dungeon yet, and I am already making new crafting systems with modified armor types and other neat stuff, a long side a well optimized and decently designed level. The best advice I can give is make a dummy esp and just do practice scripts there. I mean RegisterforSingleUpdate when doing what I am doing is technically a loop, but it can easily break itself when it is no longer in use (Which is what I am trying to figure out). But yeah, practice, practice, practice.
  21. So after doing some research, my approach will be as follows: Scriptname SDEPollingScript extends Quest ; This script will poll the character with Serana and see if she is near the player. ObjectReference Property Serana Auto ; Adds Serana as Reference for Code int Property X = 0 auto conditional SDECustomModelScript Property SDECMM Auto ; Reference other script for following status EVENT OnInit() Debug.Trace("OnInit() - Quest 'SDECMM' is running. " +self) ; Info only ENDEVENT Event OnUpdate() If (self as Quest) && self.IsRunning() ; Make sure mod is still running If (Game.GetPlayer().GetDistance(Serana) < 256) && (SDECMM.IsFollowing == true) X += 1 ; Not exact but wanted to add increment to script - will add cap to prevent overflow error Debug.Notification("Your time with Serana has improved your standing with her.") ; Will shorten RegisterForSingleUpdateGameTime(24.0) EndIf EndIf EndEvent And with Serana's following scripts, I will add the following: ((self as Quest) as SDEPollingScript).RegisterForSingleUpdateGameTime(24.0) Does this hold water?
  22. The problem is while loops can get nasty in Skyrim and add the script lag and save bloats. I was trying to find a way to avoid that while getting what I am looking at the same time. I was looking for a safer way of doing this without it killing player's games/saves.
  23. I am looking for some pointers on the best way to approach doing a simple polling script for an NPC. Essentially, I want this script to check every 24 hours to see if the NPC is following the player and is within a relative distance of the player. If so, the variable I have is incremented by 1 (or whatever value). I am aware that registerforSingleUpdateGameTime(24) would be the better way of working with what I am doing. So my script would look something like this: bool Property bKeepUpdating auto ; Make Global in Script so can be altered by if the NPC is following player Function StartChain() RegisterForSingleUpdateGameTime(24.0) ; Register to be notified every in-game day EndFunction Event OnUpdate() ; Add Increment Here If bKeepUpdating RegisterForSingleUpdateGameTime(24.0) EndIf EndEvent My idea is 'simple:' when the NPC is following the player, this script will run. Once the player dismisses the NPC, the script stops until NPC is following the player again. Any advice would be appreciated.
  24. The road to v0.4R begins.
  25. No big deal, we can talk about this when you get back. It's on my hit list of things to figure out but could never get it to work cleanly. Have fun with Vegas.
×
×
  • Create New...