Install Steam
login
|
language
简体中文 (Simplified Chinese)
繁體中文 (Traditional Chinese)
日本語 (Japanese)
한국어 (Korean)
ไทย (Thai)
Български (Bulgarian)
Čeština (Czech)
Dansk (Danish)
Deutsch (German)
Español - España (Spanish - Spain)
Español - Latinoamérica (Spanish - Latin America)
Ελληνικά (Greek)
Français (French)
Italiano (Italian)
Bahasa Indonesia (Indonesian)
Magyar (Hungarian)
Nederlands (Dutch)
Norsk (Norwegian)
Polski (Polish)
Português (Portuguese - Portugal)
Português - Brasil (Portuguese - Brazil)
Română (Romanian)
Русский (Russian)
Suomi (Finnish)
Svenska (Swedish)
Türkçe (Turkish)
Tiếng Việt (Vietnamese)
Українська (Ukrainian)
Report a translation problem
As for the NPC hate and the "Werewolf? So what?" mod, the mod only removes the faction and crime changes the script preforms, so if someone is scripted to hate you for being a werewolf (transformed or not) or for being in a quest stage, that mod will not stop it.
On another note, I am having a problem myself now that my save game is getting large. Now when I try to turn back the spell/script that checks for the changing stances (sheath weapons, change to first person) seems to be lagging or failing to register at all. I will have to have a look and see if I can make it a little more robust (maybe a little more aggressive on the checking).
Thanks Syrris for going to all this trouble to find the cause of the problem. I will see what I can do, but I make no promises. This is just a hobby for me and I don’t really want it to turn into a second job. I have added the source code files to the BSA files in my mods so if anyone else is interested in finding problems and solutions or just using my mods to create their own, they can. I am generally of the opinion that code should be shared and built upon and not hidden and hoarded.
Anyway, thanks again.
"CompanionsHousekeepingScript" has a function called "PlayerJoin". Among other things, it checks the player's current race and stores it as the variable "PlayerOriginalRace" (with specific error handling if the original race was a vampire version). This presumably means that if the player is in beast form at the time, it'll store werewolfbeastrace as their original race, thereby making the reversion script change them "back" to it from that point on.
It also includes the following lines:
; set up the spell tracking so the first time you cast it doesn't count
PlayerIsWerewolfVirgin = true
This also appears in "WerewolfChangeEffectScript":
; if this is the first time, don't actually do anything (transform handled in rampage script)
if ( (C00 as CompanionsHousekeepingScript).PlayerIsWerewolfVirgin )
; Debug.Trace("WEREWOLF: Player's first time; bailing out.")
And the rampage event does indeed have its own separate script (or rather, set of scripts for handling various aspects of it). This would seem to be what's causing the failed transformation attempts between joining the faction at the end of "Taking Up Arms" and the conclusion of the rampage sequence, with the separate rampage sequence script also explaining why issues can arise if someone reverts early using the Exit On Demand method.
In this case it would seem that the problem isn't specifically with the Exit On Demand mod (or other mods in this series) - it's an issue connected to the fact that other mods and/or console commands can result in the player having the beast blood ability before the game's off-the-shelf scripts expect it to, and they're not hardened against this possibility.
I'm not sure how to fix the "PlayerIsWerewolfVirgin" issue since it would require rewriting the way those interconnected scripts work, but the PlayerOriginalRace problem might be solved by capturing that value at some other point instead of at the time the player joins the Companions faction, perhaps checking for it each time Beast Blood is activated. Alternatively, an interactive object could be added to the game (probably as a separate mod) to allow the player to check on and if necessary change that reference. Either would have the side benefit of solving the potential issue of a character undergoing a race change for some other reason (console being the most likely, but I suppose that mods and/or other special events could also cause this).
It would be best to implement either or both of these solutions in an independent mod however, since the script-faults are presumably incidental to the PWC mods - it's probably just that people using PWC are also more likely to be using other mods that allow them to become a werewolf ahead of the game's expected schedule.
A new mod to help people to reset their stored base race is a good idea. I’m not going to make it myself but it sounds like you might be able to do it yourself. You already know were/how the scripts are storing the value. And you can check out PWC - Permanent Werewolf for an example on how I externally referenced the quest/script variable that stores werewolf beast form duration.
If you do want to try making the mod yourself, let me know and I will see if I can help you.
Thanks again Syrris, great work.
I did just look up the console commands on the UESP and while it's easy enough to change global variables, I don't see anything that would allow in-game console modification of the PlayerOriginalRace entry used by that script. Resetting the Taking Up Arms quest and doing it again doesn't seem to work either.
The console does of course allow the player to "setrace" directly, but they'd need to do it every time they reverted from 'officially' being a werewolf (such reversion being necessary to re-enable the menus and such that are disabled by the transformation script).
Still, at least we know what's causing the problem so that people can avoid it.
As for changing the in “quest script variable”, that’s what I was talking about when I said have a look at PWC - Permanent Werewolf for an example (I change the duration variable in the quest script to prolong beast form).
The idea for this mod would be to have maybe a spell that is given to the player the moment the mod is installed (most of my PWC mods do this but the spell is of the ability type and not a castable spell). That spell would run a script to set the race for the werewolf quest script ether to the player’s current race (like it is done in the original werewolf scripts) or maybe ask the player to choose a race from a pop-up message window.
If you want to try let me know and I can try and help you. Either way thanks for the information above.