CTD with Werewolf 0XP

For test results, bug reports, announcements of new builds etc.

Moderators: another_commander, winston, Getafix

User avatar
Kaks
Quite Grand Sub-Admiral
Quite Grand Sub-Admiral
Posts: 3009
Joined: Mon Jan 21, 2008 11:41 pm
Location: The Big Smoke

Post by Kaks »

Well if there's an error in the plist, the whole of the plist cannot be read, which will definitely cause some problems anyway, if not CTDs (which shouldn't happen anyway. <Rolled up newspaper mode> Bad Oolite, baad Oolite!).

It's fairly easy to fail notice this kind of stuff if you're working on windows (or linux). It's always worth using someone with a mac as a guinea pig: quite a few plists that seem to load ok in GNUStep have got some stray punctuation and are technically not valid.
Macs will spit out all 'broken' plists, even the ones that GNUStep still manages to cope with.

While we're on the subject, Thargoid, I think the TCAT equipment.plist has got this kind of problem too! ;)

Cheers,

Kaks.
Hey, free OXPs: farsun v1.05 & tty v0.5! :0)
User avatar
Killer Wolf
---- E L I T E ----
---- E L I T E ----
Posts: 2269
Joined: Tue Jan 02, 2007 12:38 pm

Post by Killer Wolf »

well spotted Griff, i'll sort that tonight. Like Kaks said tho, i thought if the plist was unreadable the ship wouldn't have been available as you'd get a "ship doesn't have a corresponding shipyard entry" thing :-/
User avatar
Eric Walch
Slightly Grand Rear Admiral
Slightly Grand Rear Admiral
Posts: 5536
Joined: Sat Jun 16, 2007 3:48 pm
Location: Netherlands

Post by Eric Walch »

Kaks wrote:
Well if there's an error in the plist, the whole of the plist cannot be read, which will definitely cause some problems anyway, if not CTDs (which shouldn't happen anyway. <Rolled up newspaper mode> Bad Oolite, baad Oolite!).
This particular error (definition how it should be) should not be a great problem. I think windows had never problems with it. On the mac under tiger (OSX10.4) those plist were refused and did not load at all.
However, the plist editor that ships with Leopard (OSX 10.5) always adds that comma. I always try to make sure I re-save released work with the old plist editor from tiger that saves it in a way that all systems should be able to read. I don't know how the plist editor with Snow Leopard saves this stuff.

But at least the mac refuses plist it can't read correct, windows might get problems on using such plists. But as said, windows should allow this spelling and as far as I know it is only Mac tiger and older that has problems with it.
User avatar
Killer Wolf
---- E L I T E ----
---- E L I T E ----
Posts: 2269
Joined: Tue Jan 02, 2007 12:38 pm

Post by Killer Wolf »

tried it on Trunk, no bothers, even w/ the extra ",".
in 1.73, i fired it up, bought a WW, got around the F3 screens no bother but crashed when i tried to buy something:
"[exception]: ***** Exception while performing script event guiScreenChanged for <PlayerEntity 0x9560fa0>{"Werewolf (Civilian)"}: NSInvalidArgumentException : GSMutableArray(instance) does not recognize doEvent:withArguments:
[exception]: ***** Exception while performing script event guiScreenChanged for <PlayerEntity 0x9560fa0>{"Werewolf (Civilian)"}: NSInvalidArgumentException : GSMutableArray(instance) does not recognize doEvent:withArguments:
[exception]: ***** Exception while performing script event guiScreenChanged for <PlayerEntity 0x9560fa0>{"Werewolf (Civilian)"}: NSInvalidArgumentException : GSMutableArray(instance) does not recognize doEvent:withArguments:"

i took out the extra comma, shift-loaded, same thing but a slightly different log :
"[exception]: ***** Exception while performing script event guiScreenChanged for <PlayerEntity 0x9719750>{"Werewolf (Civilian)"}: NSInvalidArgumentException : GSMutableArray(instance) does not recognize doEvent:withArguments:"

fraid i don't have the faintest about this, it's like its trying to run the switch script but it shouldn't be at that point :-/

edit, nope just realised : those messages are from when i press the F3 key, whatever the CTD is, it's not getting written to the log.

edit mark 2 : just noticed there's entries in my Event Viewer, mean nowt to me tho :

"The description for Event ID ( 0 ) in Source ( oolite ) cannot be found. The local computer may not have the necessary registry information or message DLL files to display messages from a remote computer. You may be able to use the /AUXSOURCE= flag to retrieve this description; see Help and Support for details. The following information is part of the event: 2010-06-08 18:56:45.078 oolite[3064] File NSUserDefaults.m: 626. In [NSUserDefaults +standardUserDefaults] Improper installation: No language locale found
."


edit mark 3, lol (sorry) : i /'d out the script entry in the shipdata and it works fine.
User avatar
Thargoid
Thargoid
Thargoid
Posts: 5525
Joined: Thu Jun 12, 2008 6:55 pm

Post by Thargoid »

Kaks wrote:
While we're on the subject, Thargoid, I think the TCAT equipment.plist has got this kind of problem too! ;)
The current version has a revised equipment.plist for missing ;'s (another job of Windows vs Mac) - that was pointed out to me by a certain Mac using Supreme Grand Admiral...
User avatar
Falconeer
Competent
Competent
Posts: 41
Joined: Tue Jun 01, 2010 5:07 pm
Location: UK

Post by Falconeer »

Hi Killer Wolf, sorry for being thick, but what did you do to the shipdata.plist that fixed the CTD on 1.73? :oops:
User avatar
Killer Wolf
---- E L I T E ----
---- E L I T E ----
Posts: 2269
Joined: Tue Jan 02, 2007 12:38 pm

Post by Killer Wolf »

just removed (commented out, you put a "/" at the start of the line) the "script" item - this assign a specific script to a specific ship.
User avatar
JensAyton
Grand Admiral Emeritus
Grand Admiral Emeritus
Posts: 6657
Joined: Sat Apr 02, 2005 2:43 pm
Location: Sweden
Contact:

Post by JensAyton »

Killer Wolf wrote:
"[exception]: ***** Exception while performing script event guiScreenChanged for <PlayerEntity 0x9719750>{"Werewolf (Civilian)"}: NSInvalidArgumentException : GSMutableArray(instance) does not recognize doEvent:withArguments:"
This is a memory management bug in Oolite. You say it was no problem in trunk but, to be extra sure, please try again to recreate it in a nightly (with exactly the same OXPs and so on).
User avatar
Killer Wolf
---- E L I T E ----
---- E L I T E ----
Posts: 2269
Joined: Tue Jan 02, 2007 12:38 pm

Post by Killer Wolf »

will do. before i start shifting everything around, do i have to take out any mismatched OXPs or can i just rename the folders to drop the extension so the game doesn't recognise them?
User avatar
Kaks
Quite Grand Sub-Admiral
Quite Grand Sub-Admiral
Posts: 3009
Joined: Mon Jan 21, 2008 11:41 pm
Location: The Big Smoke

Post by Kaks »

Renaming them so they don't end with .oxp will work fine, I've got a number of .ox-p folders on my pc! :)
Hey, free OXPs: farsun v1.05 & tty v0.5! :0)
User avatar
Killer Wolf
---- E L I T E ----
---- E L I T E ----
Posts: 2269
Joined: Tue Jan 02, 2007 12:38 pm

Post by Killer Wolf »

right then.
my machine w/ the knackered vid card. basic operation was to shift-load (even tho not really needed), load up a save and buy a WW from the shipyards. machine is a 3gig P4 w/ 2gig mem.

load, buy WW, F8, CtD - nothing in log
load, buy, F6 ok, F5 CtD log: "[exception]: ***** Exception while performing script event guiScreenChanged for <PlayerEntity 0x9588e30>{"Werewolf (Civilian)"}: NSInvalidArgumentException : OOColor(instance) does not recognize doEvent:withArguments:"
load, buy, F3 ok, F3 CtD, log "[exception]: ***** Exception while performing script event guiScreenChanged for <PlayerEntity 0x9788b60>{"Werewolf (Civilian)"}: NSInvalidArgumentException : GSMutableArray(instance) does not recognize doEvent:withArguments:"
load, buy, F1, CtD, nothing in log.

trunk, v3078, OXPs aligned w/ normal Oolite
load, buy, f8,f7,f3,f3, buy energy bomb, f1, no crashes at all.


fired up my new machine, Quadcore w/ 4gigRAM (only XP 32bit so i believe it doesn't address it all). different set of OXPs tothe other machine, but both sets (normal/trunk) aligned for the test.


load, buy, f7, f8 CtD. log : "[exception]: ***** Exception while performing script event guiScreenChanged for <PlayerEntity 0x64c6070>{"Werewolf"}: NSInvalidArgumentException : OOColor(instance) does not recognize doEvent:withArguments:
" also a typo re a HUD image png which is my fault.
load, buy, f6 CtD, nothing in log bar the HUD message.
load, buy, f3, tried to buy a couple ECM hardened missiles, tried to buy adv Nav arr, ctd. log : "[exception]: ***** Exception while performing script event guiScreenChanged for <PlayerEntity 0x5ff2870>{"Werewolf"}: NSInvalidArgumentException : GSMutableArray(instance) does not recognize doEvent:withArguments:
[exception]: ***** Exception checking controls: NSInvalidArgumentException : GSMutableArray(instance) does not recognize doEvent:withArguments:
[exception]: ***** Exception checking controls: NSInvalidArgumentException : GSMutableArray(instance) does not recognize doEvent:withArguments:
[exception]: ***** Exception checking controls: NSInvalidArgumentException : GSMutableArray(instance) does not recognize doEvent:withArguments:
[exception]: ***** Exception checking controls: NSInvalidArgumentException : GSMutableArray(instance) does not recognize doEvent:withArguments:
[exception]: ***** Exception checking controls: NSInvalidArgumentException : GSMutableArray(instance) does not recognize doEvent:withArguments:
[equip.buy.mounted.failed.full]: rejecting missile because already full"
load, buy, f8, bought textiles, f3, bought stuff, f1, goes to forward view w/out launching ship, log is effing mental (apologies in advance!) "[exception]: ***** Exception while performing script event guiScreenChanged for <PlayerEntity 0x6111598>{"Werewolf"}: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[exception]: ***** Exception while performing script event guiScreenChanged for <PlayerEntity 0x6111598>{"Werewolf"}: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[exception]: ***** Exception checking controls: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[exception]: ***** Exception checking controls: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[exception]: ***** Exception checking controls: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[exception]: ***** Exception checking controls: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[exception]: ***** Exception checking controls: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[exception]: ***** Exception checking controls: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[equip.buy.mounted.failed.full]: rejecting missile because already full
[exception]: ***** Exception checking controls: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[exception]: ***** Exception checking controls: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[exception]: ***** Exception checking controls: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[exception]: ***** Exception checking controls: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[exception]: ***** Exception checking controls: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[exception]: ***** Exception checking controls: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[exception]: ***** Exception checking controls: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[exception]: ***** Exception while performing script event guiScreenChanged for <PlayerEntity 0x6111598>{"Werewolf"}: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[exception]: ***** Exception checking controls: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[general.error.inconsistentState]: ***** ERROR: status is STATUS_LAUNCHING, not STATUS_DOCKED, but dockedStation is not nil; treating as docked. This is an internal error, please report it.
[exception]: ***** Exception during [update:entity[<PlayerEntity 0x6111598>{"Werewolf"}]] in [Universe update:] : NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments: *****
[gnustep]: 2010-06-09 19:32:37.328 oolite[4048] *** NSTimer ignoring exception 'NSInvalidArgumentException' (reason 'GSInlineArray(instance) does not recognize doEvent:withArguments:') raised during posting of timer with target 0x10c6c68 and selector 'performGameTick:'

[exception]: ***** Exception while performing script event alertConditionChanged for <PlayerEntity 0x6111598>{"Werewolf"}: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[general.error.inconsistentState]: ***** ERROR: status is STATUS_IN_FLIGHT, not STATUS_DOCKED, but dockedStation is not nil; treating as docked. This is an internal error, please report it.
[exception]: ***** Exception while performing script event alertConditionChanged for <PlayerEntity 0x6111598>{"Werewolf"}: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[exception]: ***** Exception checking controls: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[general.error.inconsistentState]: ***** ERROR: status is STATUS_LAUNCHING, not STATUS_DOCKED, but dockedStation is not nil; treating as docked. This is an internal error, please report it.
[exception]: ***** Exception during [update:entity[<PlayerEntity 0x6111598>{"Werewolf"}]] in [Universe update:] : NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments: *****
[gnustep]: 2010-06-09 19:33:10.640 oolite[4048] *** NSTimer ignoring exception 'NSInvalidArgumentException' (reason 'GSInlineArray(instance) does not recognize doEvent:withArguments:') raised during posting of timer with target 0x10c6c68 and selector 'performGameTick:'

[exception]: ***** Exception while performing script event alertConditionChanged for <PlayerEntity 0x6111598>{"Werewolf"}: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[general.error.inconsistentState]: ***** ERROR: status is STATUS_IN_FLIGHT, not STATUS_DOCKED, but dockedStation is not nil; treating as docked. This is an internal error, please report it.
[exception]: ***** Exception while performing script event alertConditionChanged for <PlayerEntity 0x6111598>{"Werewolf"}: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[exception]: ***** Exception while performing script event guiScreenChanged for <PlayerEntity 0x6111598>{"Werewolf"}: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[exception]: ***** Exception while performing script event guiScreenChanged for <PlayerEntity 0x6111598>{"Werewolf"}: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[exception]: ***** Exception while performing script event guiScreenChanged for <PlayerEntity 0x6111598>{"Werewolf"}: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[exception]: ***** Exception checking controls: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[general.error.inconsistentState]: ***** ERROR: status is STATUS_LAUNCHING, not STATUS_DOCKED, but dockedStation is not nil; treating as docked. This is an internal error, please report it.
[exception]: ***** Exception during [update:entity[<PlayerEntity 0x6111598>{"Werewolf"}]] in [Universe update:] : NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments: *****
[gnustep]: 2010-06-09 19:33:19.156 oolite[4048] *** NSTimer ignoring exception 'NSInvalidArgumentException' (reason 'GSInlineArray(instance) does not recognize doEvent:withArguments:') raised during posting of timer with target 0x10c6c68 and selector 'performGameTick:'

[exception]: ***** Exception while performing script event alertConditionChanged for <PlayerEntity 0x6111598>{"Werewolf"}: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[general.error.inconsistentState]: ***** ERROR: status is STATUS_IN_FLIGHT, not STATUS_DOCKED, but dockedStation is not nil; treating as docked. This is an internal error, please report it.
[exception]: ***** Exception while performing script event alertConditionChanged for <PlayerEntity 0x6111598>{"Werewolf"}: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[exception]: ***** Exception checking controls: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[general.error.inconsistentState]: ***** ERROR: status is STATUS_LAUNCHING, not STATUS_DOCKED, but dockedStation is not nil; treating as docked. This is an internal error, please report it.
[exception]: ***** Exception during [update:entity[<PlayerEntity 0x6111598>{"Werewolf"}]] in [Universe update:] : NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments: *****
[gnustep]: 2010-06-09 19:33:20.687 oolite[4048] *** NSTimer ignoring exception 'NSInvalidArgumentException' (reason 'GSInlineArray(instance) does not recognize doEvent:withArguments:') raised during posting of timer with target 0x10c6c68 and selector 'performGameTick:'

[exception]: ***** Exception while performing script event alertConditionChanged for <PlayerEntity 0x6111598>{"Werewolf"}: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[general.error.inconsistentState]: ***** ERROR: status is STATUS_IN_FLIGHT, not STATUS_DOCKED, but dockedStation is not nil; treating as docked. This is an internal error, please report it.
[exception]: ***** Exception while performing script event alertConditionChanged for <PlayerEntity 0x6111598>{"Werewolf"}: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[exception]: ***** Exception while performing script event guiScreenChanged for <PlayerEntity 0x6111598>{"Werewolf"}: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[exception]: ***** Exception checking controls: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[general.error.inconsistentState]: ***** ERROR: status is STATUS_LAUNCHING, not STATUS_DOCKED, but dockedStation is not nil; treating as docked. This is an internal error, please report it.
[exception]: ***** Exception during [update:entity[<PlayerEntity 0x6111598>{"Werewolf"}]] in [Universe update:] : NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments: *****
[gnustep]: 2010-06-09 19:33:47.359 oolite[4048] *** NSTimer ignoring exception 'NSInvalidArgumentException' (reason 'GSInlineArray(instance) does not recognize doEvent:withArguments:') raised during posting of timer with target 0x10c6c68 and selector 'performGameTick:'

[exception]: ***** Exception while performing script event alertConditionChanged for <PlayerEntity 0x6111598>{"Werewolf"}: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[general.error.inconsistentState]: ***** ERROR: status is STATUS_IN_FLIGHT, not STATUS_DOCKED, but dockedStation is not nil; treating as docked. This is an internal error, please report it.
[exception]: ***** Exception while performing script event alertConditionChanged for <PlayerEntity 0x6111598>{"Werewolf"}: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:"
this is probably overly dramatic due to me hitting the F-keys repeatedly thinking nowt was happening etc. anyway, after pasting this i F5, noticed i had 7 passenger berths (?!) so i loaded a save game, rebought a WW, checked i had no berths, F3, tried to buy a passenger cabin, crashed : "[exception]: ***** Exception while performing script event alertConditionChanged for <PlayerEntity 0x6111598>{"Werewolf"}: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[exception]: ***** Exception while performing script event guiScreenChanged for <PlayerEntity 0x6111598>{"Werewolf"}: NSInvalidArgumentException : GSInlineArray(instance) does not recognize doEvent:withArguments:
[files.notFound]: ----- WARNING: Could not find texture file "ww trading HUD.png". Used default no textures material instead.
[files.notFound]: ***** ERROR: HeadUpDisplay couldn't get an image texture name for ww trading HUD.png
[exception]: ***** Exception while performing script event guiScreenChanged for <PlayerEntity 0x6111598>{"Werewolf"}: NSInvalidArgumentException : GSMutableArray(instance) does not recognize doEvent:withArguments:"
corrected my HUD typo, reload, buy, f3, tried to buy a passenger cabin, CtD, "[exception]: ***** Exception while performing script event guiScreenChanged for <PlayerEntity 0x60fe8c0>{"Werewolf"}: NSInvalidArgumentException : NSArrayEnumerator(instance) does not recognize doEvent:withArguments:"

commented out the script entry on the shipdata, could navigate and buy w/out issue, nothing in the logs.


tried alsorts in 3424, no probs.
Post Reply