Srende Posted December 18, 2013 Posted December 18, 2013 Since upgrading to SexLab 1.30, trying to compile any scripts that use sexlab at all, the compiling fails with the following errors: D:\Games\Steam\steamapps\common\skyrim\Data\Scripts\Source\sslThreadModel.psc(173,1): the parameter defaults of function make in state unlocked on script sslthreadmodel does not match the empty state D:\Games\Steam\steamapps\common\skyrim\Data\Scripts\Source\sslThreadController.psc(490,0): the parameter defaults of function centeroncoords in the empty state on script sslthreadcontroller do not match the parent script sslthreadmodel Clearly others haven't had problems compiling since mods have been updated since the update. So I've tried removing all sexlab related scripts and reinstalling everything, which didn't help. Also compiling the same scripts with 1.24 installed works fine. Currently I'm at a loss what to do, any ideas?
josenightbreed Posted December 18, 2013 Posted December 18, 2013 Since upgrading to SexLab 1.30, trying to compile any scripts that use sexlab at all, the compiling fails with the following errors: D:\Games\Steam\steamapps\common\skyrim\Data\Scripts\Source\sslThreadModel.psc(173,1): the parameter defaults of function make in state unlocked on script sslthreadmodel does not match the empty state D:\Games\Steam\steamapps\common\skyrim\Data\Scripts\Source\sslThreadController.psc(490,0): the parameter defaults of function centeroncoords in the empty state on script sslthreadcontroller do not match the parent script sslthreadmodel Clearly others haven't had problems compiling since mods have been updated since the update. So I've tried removing all sexlab related scripts and reinstalling everything, which didn't help. Also compiling the same scripts with 1.24 installed works fine. Currently I'm at a loss what to do, any ideas? Reinstall skyui SDK and SKSE, this solved my compiling problems yesterday when i made some changes and compiled sexlab again. For some reason after reinstalling the above mentioned fix it for me. Hope it's of help
Srende Posted December 18, 2013 Author Posted December 18, 2013 Nope, made sure to remove the SkyUI files first as well, but reinstalling those two didn't seem to help.
Ashal Posted December 18, 2013 Posted December 18, 2013 Check your sslThreadModel.psc script, there should be two lines taht start with "sslThreadModel function Make(" they should look like this: Line 172: state Unlocked sslThreadModel function Make(float timeoutIn = 30.0) Initialize() GoToState("Making") RegisterForSingleUpdate(timeoutIn) return self endFunction endState Line 933: sslThreadModel function Make(float timeoutIn = 30.0) _Log("Cannot enter make on a locked thread", "Make") return none endFunction As you can see the function argument defaults match in both, so the error your getting is utter nonsense. Unless you are missing installing some updated 1.30 scripts
EternalDamned Posted December 18, 2013 Posted December 18, 2013 As I just discovered a few minutes ago, when installing SKSE use the 7zip file not the installer. It does not overwrite all the files it needs too. Hope that helps!
Srende Posted December 18, 2013 Author Posted December 18, 2013 I should've mentioned that in the first post, but I checked the files again. Both instances actually do match the empty state. Though in sslThreadModel.psc the empy state function starts a couple of lines earlier (929) than yours, which probably are due to some updates on your copy since 1.30? I did also redownload sexlab when reinstalling just to be sure. lines 168 - 179: ;/-----------------------------------------------\; ;| Preparation Functions |; ;\-----------------------------------------------/; state Unlocked sslThreadModel function Make(float timeoutIn = 30.0) Initialize() GoToState("Making") RegisterForSingleUpdate(timeoutIn) return self endFunction endState lines 925 - 932: ;/-----------------------------------------------\; ;| State Permissible Functions |; ;\-----------------------------------------------/; sslThreadModel function Make(float timeoutIn = 30.0) _Log("Cannot enter make on a locked thread", "Make") return none endFunction
Ashal Posted December 19, 2013 Posted December 19, 2013 I should've mentioned that in the first post, but I checked the files again. Both instances actually do match the empty state. Though in sslThreadModel.psc the empy state function starts a couple of lines earlier (929) than yours, which probably are due to some updates on your copy since 1.30? I did also redownload sexlab when reinstalling just to be sure. lines 168 - 179: ;/-----------------------------------------------\; ;| Preparation Functions |; ;\-----------------------------------------------/; state Unlocked sslThreadModel function Make(float timeoutIn = 30.0) Initialize() GoToState("Making") RegisterForSingleUpdate(timeoutIn) return self endFunction endState lines 925 - 932: ;/-----------------------------------------------\; ;| State Permissible Functions |; ;\-----------------------------------------------/; sslThreadModel function Make(float timeoutIn = 30.0) _Log("Cannot enter make on a locked thread", "Make") return none endFunction Are you able to compile sslThreadModel?
remois Posted December 19, 2013 Posted December 19, 2013 Ok I have the same problem... Compiling sslThreadModel also gave me the errors... What is strange because I couldn't find where is that I also get a warning from the text editor stating the number of parenthesis doesn't match (I'm french so it's only a rough translation... But since it's the editor's warning it could be false since it doesn't comes from the compilation... The warning is shown here at the arrow: state Making event OnUpdate() if !Active ==> _Log("Thread has timed out of the making process; resetting model for selection pool", "Make", "FATAL") endIf endEvent As for sslthreadcontroller the error I get is on this line function CenterOnCoords(float LocX = 0.0, float LocY = 0.0, float LocZ = 0.0, float RotX = 0.0, float RotY = 0.0, float RotZ = 0.0, bool resync = true) The only common point I can see is the fact you initialize floats within the call. But it still doesn't make sense to me as I thought this was allowed in papyrus.
Srende Posted December 19, 2013 Author Posted December 19, 2013 I think I figured it out actually. After remois mentioned about translating from french I had a hunch, since I have the windows locale settings set to Finnish. I changed the number & date formats and location settings in the windows control panel to English (United states) and tried compiling afterwards. And it worked. So I'm guessing the compiler craps itself due to the number format differences, probably due to the decimal separator used here being comma instead of period. As both the errors had floats in the default parameters. I saw a similar issue in this games SDK a couple of years back. Their level editor originally couldn't read any map coordinates with the "wrong" locale set in windows, the difference is, they fixed it shortly afterwards. I don't think we can expect bethesda to fix that anymore And it looks to be easily reproducible with a simple test script: Scriptname test Extends Quest Function hello(float arg = 5.0) Debug.Notification("Hello!") EndFunction State helloState Function hello(float arg = 5.0) Debug.Notification("In state!") EndFunction EndState In short, if you have the problem, change the date and time formats to "English (United States)" in the windows Region and language settings to fix it.
Ashal Posted December 19, 2013 Posted December 19, 2013 Crazy Europeans and your nonsensical comma decimal points, get it right like 'murica!
Srende Posted December 19, 2013 Author Posted December 19, 2013 I think that's happening around the same time when you switch to a proper measurement system from that nonsensical imperial
Pastortom Posted October 3, 2014 Posted October 3, 2014 I think I figured it out actually. After remois mentioned about translating from french I had a hunch, since I have the windows locale settings set to Finnish. I changed the number & date formats and location settings in the windows control panel to English (United states) and tried compiling afterwards. And it worked. So I'm guessing the compiler craps itself due to the number format differences, probably due to the decimal separator used here being comma instead of period. As both the errors had floats in the default parameters. I saw a similar issue in this games SDK a couple of years back. Their level editor originally couldn't read any map coordinates with the "wrong" locale set in windows, the difference is, they fixed it shortly afterwards. I don't think we can expect bethesda to fix that anymore And it looks to be easily reproducible with a simple test script: Scriptname test Extends Quest Function hello(float arg = 5.0) Debug.Notification("Hello!") EndFunction State helloState Function hello(float arg = 5.0) Debug.Notification("In state!") EndFunction EndState In short, if you have the problem, change the date and time formats to "English (United States)" in the windows Region and language settings to fix it. Seriously man, thanks ALOT! This helped me so much! I live in Norway and my computer setup is european, and to think the solution was as simple as to change the date and time formats to US. I think very many have this problem, so maybe this should be added in some stickies regarding the compiling of scripts!
Recommended Posts
Archived
This topic is now archived and is closed to further replies.