Hey guys,
I'm scripting a periodic update to let the player know what their bounty is in my land, since custom bounties can't be added to the menu.
Now, the reason I've come here is simply because this will be very time consuming and difficult to test, so I figured I'd ask here to see if anyone could point out any glaring issues with this right off the bat. Then it's just up to chance as we test over time and try to find issues. If nobody finds any issues then I'll assume I'm good to go and won't worry too much.
The idea here is that I have a script on a book, that opens a bunch of menus on read, allowing the player to configure a message to appear every X amount of time, either game time or real world time. Here's the script on the quest that displays this message, the book's script is pretty straight forward and easy to test so I won't be posting it:
Int Property Frequency AutoFaction Property FalskaarCrimeFaction AutoMessage Property FSBountyNotification AutoFunction UpdateDisplay(Int iType, Int iTime) ; Type 0 = never, 1 = game time, 2 = real time UnregisterForUpdate() UnregisterForUpdateGameTime() FSBountyNotification.Show((FalskaarCrimeFaction.GetCrimeGold())) Frequency = iTime Debug.Notification("Setting variables and preparing to register") If iType == 1 RegisterForSingleUpdateGameTime(iTime) Debug.Notification("Registered for update game time") ElseIf iType == 2 RegisterForSingleUpdate(iTime) Debug.Notification("Registered for update") EndIfEndFunctionEvent OnUpdateGameTime() RegisterForSingleUpdateGameTime(Frequency) If FalskaarCrimeFaction.GetCrimeGold() > 0 FSBountyNotification.Show((FalskaarCrimeFaction.GetCrimeGold())) EndIfEndEventEvent OnUpdate() RegisterForSingleUpdate(Frequency) If FalskaarCrimeFaction.GetCrimeGold() > 0 FSBountyNotification.Show((FalskaarCrimeFaction.GetCrimeGold())) EndIfEndEvent
Now, one of my concerns here is how much RegisterForUpdate() can take. Since it takes an input in seconds, and my message can be set to display every few hours, it means I input values as big as 3600, or 7200 seconds. Can the engine handle that alright? Also, does that time tick down even in a menu? Are there any problems with this? Since RegisterForUpdateGameTime() takes an input in game hours, it never has a value above about 24.
Thanks for any input! Hopefully I can make sure this works without actually having to acquire a bounty and then play for several hours.
Thanks,
AJV