Galsiah's Character Development (GCD) Bug Report

Post » Tue May 17, 2011 4:25 am

Hi.

I can read English. Basically.
But I can not write English. Basically.
We have communication difficulty.
But I will try.

I found bugs in scripts in GCD.
I report.

(1) Galsiahs Character Development.esp

(1-1) Gals__Expectation_Skill_Points, Gals__Init_ManagerB, Gals_Reprocess_Character
Name of variable "Expectation_Skill_Points_Finished" is too long.
Max length is 32. Maybe.
Must change variable name to "ExpectationSkillPointsFinished" or something.

(1-2) bittercup
Name of variable "end" is bad.
I know this problem was made by Bethesda.
But need fix. I think.

(1-3) Gals_Attribute_Luck
Variable "luckShouldBe" declare two times.

(1-4) Gals_Sk_*
Unnecessary "endif".

	Set currentAcrobatics to ( player->GetAcrobatics )	if ( currentAcrobatics < Gals_Natural_Acrobatics )		return	elseif ( ( player->GetLongBlade ) < 2 )		if ( ( player->GetRestoration ) < 2 )			if ( ( player->GetDestruction ) < 2 )				if ( ( player->GetHeavyArmor ) < 2 )					if ( ( player->GetLightArmor ) < 2 )						return;Return if player is a werewolf (or very down on his luck;)					endif				endif			endif		endif	endifendif;I am lonely.


(1-5) Gals__GetInGame_Prepare
Need comma.
Bad : player -> AddItem "Gals_Ring", 1
Good : player->AddItem, "Gals_Ring", 1

(2) GCD_107x_to_108_patch.esp

(2-1) Gals_HUD_reset_script
"MenuTest" function need a parameter.

(3)

(3-1) Many scripts
Unnecessary space.
Bad : player -> GetStrength
Good : player->GetStrength

(3-2) Many scripts
After "StartScript" or "StopScript". Almost there is a comma. Sometimes not.
I do not think this a ploblem.
But um... uniformity.

Period.

I like GCD.
Thank you Galsiah.
User avatar
Mr. Ray
 
Posts: 3459
Joined: Sun Jul 29, 2007 8:08 am

Post » Tue May 17, 2011 2:55 am

Thanks for the information. I'll be sure to fix some of these things if I release a new version. I'm surprised no-one has reported them before.

I'm pretty sure none of them causes any serious problem - or people would have noticed. Maybe they contribute to occasional problems though. E.g. I guess save file corruption and similar might not be helped by variable names that are too long(??), even though the length doesn't seem to be a problem when the script runs.


Name of variable "Expectation_Skill_Points_Finished" is too long. Max length is 32. Maybe.
Do you know what problems this might cause? It seems to work in the script. Might it cause savegame trouble?


(1-2) bittercup
Name of variable "end" is bad.
I know this problem was made by Bethesda.
But need fix. I think.
Good point - I never considered that.

(1-3) Gals_Attribute_Luck
Variable "luckShouldBe" declare two times.

(1-4) Gals_Sk_*
Unnecessary "endif".
You're right on these, but I guess they should be harmless.


(1-5) Gals__GetInGame_Prepare
Need comma.
Bad : player -> AddItem "Gals_Ring", 1
Good : player->AddItem, "Gals_Ring", 1
Maybe - I don't think it's ever caused a problem though.



(2-1) Gals_HUD_reset_script
"MenuTest" function need a parameter.
I'm not sure about that. I'm using MenuTest as a hack to trigger the HUD, not for any documented function. It's used without a parameter because that's what works. Perhaps "MenuTest 0" would do the same thing - I don't remember.


(3-1) Many scripts
Unnecessary space.
Bad : player -> GetStrength
Good : player->GetStrength
When I was writing them I thought the spaces were a good idea. Later I learned differently, but I never got around to changing them all back. Again, it doesn't seem to cause problems.

(3-2) Many scripts
After "StartScript" or "StopScript". Almost there is a comma. Sometimes not.
I do not think this a ploblem.
But um... uniformity.
I think I stopped using the commas in later scripts. I was learning as I went, and never did a proper cleanup.


I like GCD.
Glad to hear it, and thanks for the input.
I think most of the errors you point out should be harmless, but a few might be problematic - I don't know enough about savegame files to be confident either way. I haven't done anything with GCD in ages, but if I do change/update it, I'll include this stuff.
User avatar
Stephanie I
 
Posts: 3357
Joined: Thu Apr 05, 2007 3:28 pm

Post » Tue May 17, 2011 11:17 am

Well, while you're here, if I may put in a little input? I hate to bugger you down, but I'd LOOOVE to see a new version of GCD because it's a work of art, seamlessly adding into Morrowind's leveling system. Brilliant! :D

But I feel it's a little underpowered for fighter types/hybrids. I understand the idea behind more strength = more health, but it seems almost like strength is the only thing GCD really depends on for fighting types. I'd just like to see some more smoothness while leveling with a fighter. Again, sorry to pester you.
User avatar
Joanne
 
Posts: 3357
Joined: Fri Oct 27, 2006 1:25 pm

Post » Tue May 17, 2011 12:19 pm

The balance-for-fighters issue is something I'd certainly look at if I released a new version.
However, it's not that likely I will at the moment. I haven't done any Morrowind scripting for literally years, and I haven't been doing much with GCD for even longer. Unless I was very careful, it's quite possible I'd screw up more than I fixed, thanks to all the details I might have forgotten - both about scripting generally, and about what exactly I was thinking in certain areas of GCD. If I did release a new version, I'd need to give it quite a bit of time for testing. I don't have much time right now, so don't hold your breath. If I get more free time at some point, I might give it a go.
User avatar
Invasion's
 
Posts: 3546
Joined: Fri Aug 18, 2006 6:09 pm

Post » Tue May 17, 2011 1:51 pm

The balance-for-fighters issue is something I'd certainly look at if I released a new version.
However, it's not that likely I will at the moment. I haven't done any Morrowind scripting for literally years, and I haven't been doing much with GCD for even longer. Unless I was very careful, it's quite possible I'd screw up more than I fixed, thanks to all the details I might have forgotten - both about scripting generally, and about what exactly I was thinking in certain areas of GCD. If I did release a new version, I'd need to give it quite a bit of time for testing. I don't have much time right now, so don't hold your breath. If I get more free time at some point, I might give it a go.


Ah, no no it's all good. I understand how life is. :) Hell, I hardly ever play games anymore myself, yet alone mod them.
You've got a real gem as is, so no need to think about ever adhering to that request. :)
User avatar
Everardo Montano
 
Posts: 3373
Joined: Mon Dec 03, 2007 4:23 am

Post » Tue May 17, 2011 3:21 pm

I can compile GCD.esp with TESCS. No problem.
But compile with MWEdit I got errors. Masterfile is Morrowind.esm, Tribunal.esm and Bloodmoon.esm.
I think these errors maybe harmfulness? I do not understand.
So I make this thread.

1) Warning: Line 390 (43): Use of 34th local float variable 'vampireWillpower' may result in errors and is not recommended!	Invalid input was received!2) Warning: Line 318 (24): Use of 34th local float variable 'vampireWillpower' may result in errors and is not recommended!	Invalid input was received!3) Warning: Line 98 (72): Use of 34th local float variable 'vampireExtraWillpower' may result in errors and is not recommended!	Invalid input was received!4) Warning: Line 377 (43): Use of 34th local float variable 'normalWill' may result in errors and is not recommended!	Invalid input was received!5) Warning: Line 238 (28): Use of 34th local float variable 'normalWill' may result in errors and is not recommended!	Invalid input was received!6) Gals_Sk_UnArmored: Failed to compile script!7) Error: Line 83 (7): Syntax Error: Expected 'end' but found 'endif' (endif)!	Invalid input was received!8) Gals_Sk_Speechcraft: Failed to compile script!9) Error: Line 83 (7): Syntax Error: Expected 'end' but found 'endif' (endif)!	Invalid input was received!10) Gals_Sk_Spear: Failed to compile script!11) Error: Line 83 (7): Syntax Error: Expected 'end' but found 'endif' (endif)!	Invalid input was received!12) Gals_Sk_Sneak: Failed to compile script!13) Error: Line 83 (7): Syntax Error: Expected 'end' but found 'endif' (endif)!	Invalid input was received!14) Gals_Sk_ShortBlade: Failed to compile script!15) Error: Line 83 (7): Syntax Error: Expected 'end' but found 'endif' (endif)!	Invalid input was received!16) Gals_Sk_Security: Failed to compile script!17) Error: Line 83 (7): Syntax Error: Expected 'end' but found 'endif' (endif)!	Invalid input was received!18) Gals_Sk_Restoration: Failed to compile script!19) Error: Line 83 (7): Syntax Error: Expected 'end' but found 'endif' (endif)!	Invalid input was received!20) Gals_Sk_Mysticism: Failed to compile script!21) Error: Line 83 (7): Syntax Error: Expected 'end' but found 'endif' (endif)!	Invalid input was received!22) Gals_Sk_Mercantile: Failed to compile script!23) Error: Line 83 (7): Syntax Error: Expected 'end' but found 'endif' (endif)!	Invalid input was received!24) Gals_Sk_MediumArmor: Failed to compile script!25) Error: Line 83 (7): Syntax Error: Expected 'end' but found 'endif' (endif)!	Invalid input was received!26) Gals_Sk_Marksman: Failed to compile script!27) Error: Line 83 (7): Syntax Error: Expected 'end' but found 'endif' (endif)!	Invalid input was received!28) Gals_Sk_LongBlade: Failed to compile script!29) Error: Line 83 (7): Syntax Error: Expected 'end' but found 'endif' (endif)!	Invalid input was received!30) Gals_Sk_LightArmor: Failed to compile script!31) Error: Line 83 (7): Syntax Error: Expected 'end' but found 'endif' (endif)!	Invalid input was received!32) Gals_Sk_Illusion: Failed to compile script!33) Error: Line 83 (7): Syntax Error: Expected 'end' but found 'endif' (endif)!	Invalid input was received!34) Gals_Sk_HeavyArmor: Failed to compile script!35) Error: Line 83 (7): Syntax Error: Expected 'end' but found 'endif' (endif)!	Invalid input was received!36) Gals_Sk_HandToHand: Failed to compile script!37) Error: Line 83 (7): Syntax Error: Expected 'end' but found 'endif' (endif)!	Invalid input was received!38) Gals_Sk_Enchant: Failed to compile script!39) Error: Line 83 (7): Syntax Error: Expected 'end' but found 'endif' (endif)!	Invalid input was received!40) Gals_Sk_Destruction: Failed to compile script!41) Error: Line 83 (7): Syntax Error: Expected 'end' but found 'endif' (endif)!	Invalid input was received!42) Gals_Sk_Conjuration: Failed to compile script!43) Error: Line 83 (7): Syntax Error: Expected 'end' but found 'endif' (endif)!	Invalid input was received!44) Gals_Sk_BluntWeapon: Failed to compile script!45) Error: Line 83 (7): Syntax Error: Expected 'end' but found 'endif' (endif)!	Invalid input was received!46) Gals_Sk_Block: Failed to compile script!47) Error: Line 83 (7): Syntax Error: Expected 'end' but found 'endif' (endif)!	Invalid input was received!48) Gals_Sk_Axe: Failed to compile script!49) Error: Line 83 (7): Syntax Error: Expected 'end' but found 'endif' (endif)!	Invalid input was received!50) Gals_Sk_Athletics: Failed to compile script!51) Error: Line 83 (7): Syntax Error: Expected 'end' but found 'endif' (endif)!	Invalid input was received!52) Gals_Sk_Armorer: Failed to compile script!53) Error: Line 83 (7): Syntax Error: Expected 'end' but found 'endif' (endif)!	Invalid input was received!54) Gals_Sk_Alteration: Failed to compile script!55) Error: Line 83 (7): Syntax Error: Expected 'end' but found 'endif' (endif)!	Invalid input was received!56) Gals_Sk_Alchemy: Failed to compile script!57) Error: Line 83 (7): Syntax Error: Expected 'end' but found 'endif' (endif)!	Invalid input was received!58) Gals_Sk_Acrobatics: Failed to compile script!59) Error: Line 134 (7): Syntax Error: Expected 'end' but found 'endif' (endif)!	Invalid input was received!60) Gals_Level_Screen_Update: Failed to compile script!61) Error: Line 36 (1): Missing required argument(s) for function call!	Invalid input was received!62) Gals_Attribute_Luck: Failed to compile script!63) Error: Line 34 (20): Local variable 'luckShouldBe' has already been defined!	Invalid input was received!64) Warning: Line 301 (46): Use of 34th local short variable 'perMdArm' may result in errors and is not recommended!	Invalid input was received!65) Warning: Line 166 (49): Use of 34th local short variable 'perMdArm' may result in errors and is not recommended!	Invalid input was received!66) Warning: Line 320 (38): Use of 34th local short variable 'perArm' may result in errors and is not recommended!	Invalid input was received!67) Warning: Line 176 (45): Use of 34th local short variable 'perArm' may result in errors and is not recommended!	Invalid input was received!68) Gals__Init_ManagerB: Failed to compile script!69) Error: Line 12 (41): Local variable name exceeds the maximum length of 32 (Expectation_Skill_Points_Finished)!	Invalid input was received!70) Warning: Line 76 (55): Use of 34th local float variable 'startIntelligenceFinalised' may result in errors and is not recommended!	Invalid input was received!71) Warning: Line 75 (32): Use of 34th local float variable 'startIntelligenceFinalised' may result in errors and is not recommended!	Invalid input was received!72) Warning: Line 133 (57): Use of 34th local float variable 'increaseThresholdStrength' may result in errors and is not recommended!	Invalid input was received!73) Warning: Line 125 (85): Use of 34th local float variable 'increaseThresholdStrength' may result in errors and is not recommended!	Invalid input was received!74) Warning: Line 110 (31): Use of 34th local float variable 'increaseThresholdStrength' may result in errors and is not recommended!	Invalid input was received!75) Warning: Line 705 (45): Use of 34th local short variable 'perArm' may result in errors and is not recommended!	Invalid input was received!76) Warning: Line 405 (12): Use of 34th local short variable 'perArm' may result in errors and is not recommended!	Invalid input was received!77) bittercup: Failed to compile script!78) Error: Line 20 (11): Invalid local variable name 'end'!	Invalid input was received!

User avatar
Jonny
 
Posts: 3508
Joined: Wed Jul 18, 2007 9:04 am

Post » Tue May 17, 2011 7:57 am

When compile GCD_107x_to_108_patch.esp with MWEdit.

1) Gals_HUD_reset_script: Failed to compile script!2) Error: Line 26 (1): Missing required argument(s) for function call!	Invalid input was received!

User avatar
-__^
 
Posts: 3420
Joined: Mon Nov 20, 2006 4:48 pm

Post » Tue May 17, 2011 7:49 am

A premise. I am a MWEdit fan, I don't release a mod if it does not pass MWEdit strict syntax check, and often I try to fix syntax of mods I play.
MWEdit is not perfect though (still beta).
It does not understand object local variables references (they work).
I.E.
if ( myObj.localvar != 1 )	set myObj.localvar to 1endif
and is nitpicking with some things that TESCS compiles and runs anyway, I.E.
if ( var = 1 ); this is a basic like syntax that works exactly as commonly used C like syntax; if ( var == 1 ), remember, the assignment operator is set so no possible confusion!

Knowing what legit things are, most MWEdit advices about spaces, brackets, wrong endif and so on are precious and writing your scripts in a way they can pass MWEdit strict syntax check is surely a good habit guarantee to avoid most syntax errors/typos and help with random crashes.

Having said that, if something like GCD works for hundreds of people, usually it means it works even if MWEdit does not like it. Everything "[censored] grano salis" :) .

For anybody interested, an extract from MWEdit Bugs.txt which shows the reason of some nitpicking
Possible TESCK Script Bugs/Notes
=======================================

v0.4.1
- AiActivate, "player", reset ??? ("reset\0" is used in place of "player")
- AiWander: Idle2 value is completely ignored, Reset maybe incorrectly output as compared
to the other AI functions. Does not limit the number of arguments?
- Functions accepting IDs output the ',' where it exists (in set statements?). Unneeded?
- Random: Outputs all but the first ASCII digit to the binary stream (strange?)
Regular Function: < X>
Random: < X>
Outputting the Random function the 'correct' way appears to work fine.
- Show: Prevents compiled script SCDT data from being saved (no compile time errors?)
- SetJournalIndex/Journal: Has an extra short parameter after the index (always -1)?
- GetTarget: Does not require the ID to be a creature or NPC? (outputs a ' r' reference
instead of an ' o').
- GetDetected: Uses a ' r' type reference instead of a ' o' reference (npc/creature). This
may be a bug or on purpose.
- Only MessageBox/GetSquareRoot accept globals?
- ModRegion: Has two extra unknown arguments?
- RemoveSoulgem: Does not accept the count variable as mentioned and used in some places.
- MessageBox: The TESCS actually parses the message string and looks for any % variables.
It then takes the next X arguments and considers them as the variables to output. This means
that if the '%' codes and output variables do not match, you'll lose or add some buttons.
Does not accept numbers.
- Set: A "set X to -10" will result in the compiled output "set X to 10 * -1". This only happens
for a single negative, numeric value. There are similar problems with outputting "set X to +10"
which has a compiled output like "set X to 10 +".


v0.5.0
- A script in Tribunal has a name what includes the '-' character which should not be allowed.



CS Script Notes (v0.5.6)
-----------------------------
Some script notes for getting consistent results with the CS.

- Commas in function calls mess up the CS in several situations. It is recommended
to never use commas (there should be no situation where they are needed).
- Using reset with AiWander results in inconsistent output in the CS and is not
recommended until the behavior of reset is verified.
- Spaces are important in the CS. Missing or extra spaces can result in the script
not working as intended or outright crashing. A single space is needed on each
side of the comparison operator in if and while statements as well as around
any brackets and operators in expressions.
GOOD: if ( SomeVar >= 10 )
BAD: if (SomeVar >=10)
GOOD: set SomeVar to 10 * ( TestVar - SomeGlobal01 / 3 )
BAD: set SomeVar to 10*(TestVar-SomeGlobal01/3)
- Many of the animation codes used in LoopGroup and PlayGroup have changed at
some point (expansion or patch). This will result in the incorrect animation
being played unless the version the script is run on matches the version it
was compiled with (unless there is a hidden mechanism to correct them). This should
be verified. Some example changes that could be checked:
BowAndArrow can be confused with Attack1 and InventoryWeaponOneHand
Hit1 is not changed
HandToHand can be confused with PickProbe and SpellTurnLeft
- MWEdit does not let script IDs start with a number. This is just a convienence to
make parsing much simpler and is not likely to change. The CS may also experience
difficulties with scripts starting with a number or underscore.
- Ensure all function calls are enclosed in brackets with spaces on either side.
Omitting the brackets or the spaces can result in incorrect compiled output in
the CS in some situations.
GOOD: if ( ( player->GetStrength ) < 90 )
GOOD: set SomeVar to ( player->GetStrength ) * LocalVar
BAD: set SomeVar to player->GetStrength * LocalVar
this outputs missing the call to GetStrength
- IDs starting with numbers (and possibly underscores) need to be surrounded in quotes
in order for the CS and MWEdit to properly handle them. If you omit the quotes when
compiling in the CS the scripts may not work correctly or crash. In MWEdit you will
receive a compile time error.
- Unary add/minus operations may cause problems. Even simple expressions are output
in a strange manner, for example:

set local to -1 => set local to -1 * 1
set local to +15 => set local to 15 +
set local to -global => set local to -1 * global
if local == -1 => if local == -1 ; Not changed in if statements

More complex expressions may actually be output incorrectly, for example:

set local1 to -(-1 -9) * -local2 / -local3
Outputs As: set local1 to 9 * -local2 / -local3

if ( -testmisc2.local1 == 10 )
Outputs As: if -1 *( testmisc2.local1 == 10 )

Such expressions will compile fine in the CS.
[EDIT] Oh boy! Forum censor does not like latin :lol:
[EDIT2] typos
User avatar
Elizabeth Davis
 
Posts: 3406
Joined: Sat Aug 18, 2007 10:30 am

Post » Tue May 17, 2011 6:06 am

Sure - I'm sure these issues aren't important most of the time, since things do work. However, GCD does increase instability for some, and give weird "@@@@@@@@..." errors for others in some circumstances. Most of the picky syntax issues shouldn't be causing trouble, but I don't know about things like over-long variable names, and 34th variable issues.

The 34th variables I've used were in scripts written before I knew of the issue. They worked (and I spent considerable time getting them to work), so I didn't want to change things around unnecessarily. It's impossible to be certain they this is never causing problems though, so ideally they probably should be re-written.

Forum censor does not like latin
:) The world really is pretty daft sometimes.
User avatar
Rowena
 
Posts: 3471
Joined: Sun Nov 05, 2006 11:40 am

Post » Tue May 17, 2011 2:15 am

Fix 34th variables is simple.

float 33thfloat DoNotUsefloat 34th


When I test my mod.
GCD output error "@@@@@@@@" thing.
I wonder why GCD? Not my mod?
Then I check GCD script and found glitches and fix glitches. 34th variable and long variable name and the picky syntax issues.
After activate my version GCD, GCD do not output "@@@@@@@" thing yet.

I use MWEdit to check script syntax.
But compile with TESCS.
Because MWEdit is beta.
User avatar
Blackdrak
 
Posts: 3451
Joined: Thu May 17, 2007 11:40 pm

Post » Tue May 17, 2011 4:06 am

So any chance of a fixed version being released?
User avatar
Project
 
Posts: 3490
Joined: Fri May 04, 2007 7:58 am

Post » Tue May 17, 2011 11:08 am

I'm receiving some really fun errors whenever I load a savegame. It takes me 3-4 times of reloading Morrowind each time I want to play. Maybe these should be fixed. If someone can tell ME how to fix them simply and quickly in the TESCS, or whatever other tool is needed, I'd be happy to take the initiative, test it myself, and if this fix works, maybe it could be implemented, since I see alot of people with these strange errors. However, It's just as likely that I'm a dumbarse and have botched something myself. So, I'm loading morrowind up and getting the errors and typing them here. If anybody can make sense of them and let me know what of them, that would be wonderful.
User avatar
Tikarma Vodicka-McPherson
 
Posts: 3426
Joined: Fri Feb 02, 2007 9:15 am

Post » Tue May 17, 2011 2:29 pm

Expression Error Unable to find sound id
"ight)ovW q" in script
Gals__GetInGame__GetAttribs
User avatar
Benjamin Holz
 
Posts: 3408
Joined: Fri Oct 19, 2007 9:34 pm

Post » Tue May 17, 2011 1:38 pm

Expression Error Unable to find sound id
"ightAtc#q" in script
Gals__GetInGame__GetAttribs
User avatar
+++CAZZY
 
Posts: 3403
Joined: Wed Sep 13, 2006 1:04 pm

Post » Mon May 16, 2011 11:44 pm

Specifically they're nonsense - they refer to stuff that doesn't exist, in scripts that probably aren't the problem. You can't fix the specific errors it's identifying, since they're nonsense.

However, it's possible that things like the fixes AzuMite mentions might prevent these errors. E.g. 34th variable bug is supposed to produce weird errors, and these are weird errors - so the two could conceivably be related. However, AzuMite's experience alone is far from definitive - perhaps he fixed the errors and this caused the @@@ errors to disappear; perhaps they would have disappeared anyway after re-saving some plugins / reloading the game.
It certainly seems like making these fixes would be a good idea - since it might help, and my reasons for thinking it might have caused problems were largely irrational superstition (i.e. it broadly works now... don't touch anything, back slowly away from the scripts, and just maybe it'll keep working).

As I say, I don't really have time to mess with things at the moment. Maybe I'll have a look at things in a few weeks. At the least I should probably fix AzuMite's errors. At most, I might continue/finish the re-write I was doing a while back - but that's less likely, since it involves my remembering how to script.
User avatar
Emma Copeland
 
Posts: 3383
Joined: Sat Jul 01, 2006 12:37 am

Post » Tue May 17, 2011 5:35 am

Well, it DOES work. These aren't game breaking in any fashion. So, these are more of a mild annoyance. But, yeah, they are annoying, and fixing them would be something great :D. If it's simple to do, would you, could you, try? Or, barring that, maybe someone could explain to me how, if it's simple enough for me to understand? My knowledge of scripting is enough that I can rather often decipher the general purpose of a script, but I couldn't write one to save my life. So, if it's simple enough I can probably be told how to fix it and not make anything explode in the process.
User avatar
Chris Cross Cabaret Man
 
Posts: 3301
Joined: Tue Jun 19, 2007 11:33 pm

Post » Tue May 17, 2011 5:41 am

As I say, I don't really have time to mess with things at the moment. Maybe I'll have a look at things in a few weeks. At the least I should probably fix AzuMite's errors. At most, I might continue/finish the re-write I was doing a while back - but that's less likely, since it involves my remembering how to script.


IMO the mod as it stands has stood the test of time over the years and has no game breaking or otherwise serious issues.
Why fix something that isn't really broken? :)
User avatar
Nicholas C
 
Posts: 3489
Joined: Tue Aug 07, 2007 8:20 am

Post » Mon May 16, 2011 11:30 pm

IMO the mod as it stands has stood the test of time over the years and has no game breaking or otherwise serious issues.
Why fix something that isn't really broken? :)


Because it does have some quite annoying small glitches? If those can be fixed I think it would be excellent - just because it is such a great mod.
User avatar
Steeeph
 
Posts: 3443
Joined: Wed Apr 04, 2007 8:28 am

Post » Tue May 17, 2011 11:31 am

In light of the recent thread discussion on this, I thought I'd pipe up with a little note in this thread about it. I have had some serious instability in my ongoing game, and I have noticed that, often, crash dump information WinXP provides has GCD information toward the trailing end of it. I'm going to try out implementing some fixes for these in my own game and see whether it has a noticeable effect on my game performance and CTD rate.

One thing I did want to ask is, will modifying the GCD scripts (particularly the 34th var fixes) and then using the modified ESPs in an ongoing GCD game cause problems? I'm very new to scripting, and am still in the early stages of learning, but I remember reading that, once compiled, scripts are stored sequentially, and switching that sequence can literally cause it to reassign the values for one var to another var. If I got the issue correctly there, would it be safe, or would there be a safe way, to implement a fixed version?

(For example, say, moving the 34th var of each type in each script to the end of the var declaration sequence, instead of merely inserting a DoNotUse var in place #34 and leaving the others untouched -- therefore making *only* that script change its sequence number (or whatever -- again, still very fuzzy on all this)?

Apologies if this is easily and quickly answered in some basic documentation I have yet to read.
User avatar
Nicholas C
 
Posts: 3489
Joined: Tue Aug 07, 2007 8:20 am

Post » Tue May 17, 2011 7:52 am

One thing I did want to ask is, will modifying the GCD scripts (particularly the 34th var fixes) and then using the modified ESPs in an ongoing GCD game cause problems?

I would guess 'yes', though I'd have to look it up to be sure. When a script is loaded into a game that was saved with a version of that script that had a different number of variables, the variables will all be reset (to 0). In case that wasn't clear - if the local count differs from the saved version, all locals (I think only of that type?) in that script (not other scripts!) will be reset to 0. If the scripts aren't prepared for this kind of thing they'll mess up, probably in a big way. I'm assuming the constantly-running scripts, at least, won't have a fix. I could well be wrong though.
User avatar
phil walsh
 
Posts: 3317
Joined: Wed May 16, 2007 8:46 pm

Post » Tue May 17, 2011 1:02 pm

I would guess 'yes', though I'd have to look it up to be sure. When a script is loaded into a game that was saved with a version of that script that had a different number of variables, the variables will all be reset (to 0). In case that wasn't clear - if the local count differs from the saved version, all locals (I think only of that type?) in that script (not other scripts!) will be reset to 0. If the scripts aren't prepared for this kind of thing they'll mess up, probably in a big way. I'm assuming the constantly-running scripts, at least, won't have a fix. I could well be wrong though.

Thanks for the answer. Well, I'll find out for certain (hopefully) soon enough, and report here! :)

EDIT: Have applied the 34th var fixes, syntactical corrections and other fixes to my GCD plugin without renaming it, and superficial play so far seems fine. I'll pipe up if I notice anything special. (For the record, in case it matters in any tiny way, I followed the advice I vaguely remember reading somewhere about avoiding massive changes in variable declarations sequence in a script used in an ongoing game, and cut-and-pasted the dispaced 34th variable of the relevant scripts at the end of its var-declaration sequence so the others retain their former place in sequence.

EDIT 2: So far, it could be coincidental, and is certainly not conclusive, but my CTD rate definitely has gone down significantly. Before, playing 2 hours (and reloading saved games approximately 20 or so times in that session) without a crash could happen, but was the exception. I had sort of become accustomed to CTDs, such that death often meant restarting the game. And, particularly, I was quite lucky to be able to load two games in a relatively short period of time (often I could not load the last normal savegame from the main menu without a CTD, but I *could* load the quicksave, so I would load the quicksave then try to load the normal savegame, with almost no success -- but I could sometimes load that savegame if I had been playing another one for a while) -- about 80% of the time that CTD'd the game.

The CTDs at this point seem to be the exception. And I have not seen any crash dumps that have GCD script text toward the trailing end of them.

So, hypothesis: The stability impact of the use of 34th variables of their type in GCD may be more significant than previously thought.
User avatar
Scott Clemmons
 
Posts: 3333
Joined: Sun Sep 16, 2007 5:35 pm

Post » Tue May 17, 2011 9:51 am

Question to Galsiah. Since you aren't interested in continuing work on your mod how would you feel if someone else were to modify or fix things and release a fixed version for upload assuming you were given full credit for the mod's creation? (as if the mod's name itself doesn't remind everyone who made it ;))
User avatar
Harry-James Payne
 
Posts: 3464
Joined: Wed May 09, 2007 6:58 am

Post » Tue May 17, 2011 6:06 am

Okay -- I thought I'd post a bUmpdate instead of just amending my last post this time.

I'm haven't changed anything else, and I'm seeing a serious improvement in stability that is consistent and definitely not easily dismissable as luck of the draw.

Another 2-3 hours of work-avoidance playing went without a hitch, except for a CTD from trying to setdelete 1 on one of the corpses in the Imperial Proving Grounds (Noonan's MWA, where he appears to have implemented the now-standard player-shows-up-in-aftermath-of-extradimensional-invasion-of-military-base plot :P). It is, I must confess, quite a relief to not find myself bracing for a CTD every time I reload a saved game.

So, again, not enough to be conclusive, but enough to hypothesize that it may be very worth trying out a fixed version if you are having stability problems, and might be helpful as a sort of unofficial beta testing to report results (after more extensive playing) here.

P.S. Can anyone tell me where the double-barreled shotgun is in the Imperial Proving Grounds? Or the BFG9000?
P.P.S. No knock on Noonan's mod, by the way. It was fun. Just some lighthearted poking.
User avatar
steve brewin
 
Posts: 3411
Joined: Thu Jun 21, 2007 7:17 am

Post » Tue May 17, 2011 1:17 am

Interesting, if anecdotal, stuff Gluby :) Wonder if an update-ette is possible..?
User avatar
Rachell Katherine
 
Posts: 3380
Joined: Wed Oct 11, 2006 5:21 pm

Post » Tue May 17, 2011 3:12 am

That would probably be up to Galsiah. ^^" He did ask people not to upload their own versions of GCD.

I'd check with Galsiah before passing it around.
User avatar
Natasha Biss
 
Posts: 3491
Joined: Mon Jul 10, 2006 8:47 am

Next

Return to III - Morrowind