Amen Brick's Megaships.oxp (v1.2) UPDATED!!

Discussion and information relevant to creating special missions, new ships, skins etc.

Moderators: winston, another_commander

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 »

I’d like to point out that the -verify-oxp command-line option catches some of the issues Commander McLane mentioned (after the plist is fixed), and some he missed:

Code: Select all

Running OXP verifier for /Users/jayton/Downloads/Amen Bricks Megaships.oxp
Scanning files
  NOTE: skipping junk file Images/Thumbs.db.
  WARNING: apparent Read Me file ("Read Me.txt") inside OXP. This is the wrong place for a Read Me file, because it will not be read.
  NOTE: skipping junk file Textures/Thumbs.db.
Checking shipdata.plist
  Ship "abBattleship":
    WARNING: key "max_missiles" does not apply to this category of ship.
    WARNING: unknown key " has_energy_bomb ".
    ERROR: case mismatch: request for file "Models/abBattleship.dat" referenced in entry "abBattleship" of shipdata.plist resolved to "Models/abbattleship.dat".
  Ship "abBattleshipPirate":
    WARNING: key "max_missiles" does not apply to this category of ship.
    WARNING: unknown key " has_energy_bomb ".
    ERROR: case mismatch: request for file "Models/abBattleshipPirate.dat" referenced in entry "abBattleshipPirate" of shipdata.plist resolved to "Models/abbattleshippirate.dat".
  Ship "abBattleshipPolice":
    WARNING: key "max_missiles" does not apply to this category of ship.
    WARNING: unknown key " has_energy_bomb ".
    WARNING: unknown key "isCarrier".
    ERROR: case mismatch: request for file "Models/ABBattleshipPolice.dat" referenced in entry "abBattleshipPolice" of shipdata.plist resolved to "Models/abbattleshippolice.dat".
  Ship "abHospital":
    WARNING: key "max_missiles" does not apply to this category of ship.
    ERROR: case mismatch: request for file "Models/ABhospital.dat" referenced in entry "abHospital" of shipdata.plist resolved to "Models/abhospital.dat".
  Ship "abYacht":
    WARNING: key "max_missiles" does not apply to this category of ship.
    ERROR: case mismatch: request for file "Models/abYacht.dat" referenced in entry "abYacht" of shipdata.plist resolved to "Models/abyacht.dat".
  ERROR: case mismatch: request for file "Models/Biodome.dat" referenced in entry "Biodome" of shipdata.plist resolved to "Models/biodome.dat".
  Ship "Cruiseship":
    WARNING: key "max_missiles" does not apply to this category of ship.
    ERROR: case mismatch: request for file "Models/Cruiseship.dat" referenced in entry "Cruiseship" of shipdata.plist resolved to "Models/cruiseship.dat".
  Ship "Supercargo":
    WARNING: key "max_missiles" does not apply to this category of ship.
  Ship "Superlifter":
    WARNING: key "max_missiles" does not apply to this category of ship.
    ERROR: case mismatch: request for file "Models/Superlifter.dat" referenced in entry "Superlifter" of shipdata.plist resolved to "Models/superlifter.dat".
Testing models
  TODO: implement model verifier.
Checking demoships.plist
Testing textures and images
  Can't use /Users/jayton/Downloads/Amen Bricks Megaships.oxp/Images/Hospitalship.jpg as a texture - extension "jpg" does not identify a known type.
  ERROR: image Images/Hospitalship.jpg could not be read.
  Can't use /Users/jayton/Downloads/Amen Bricks Megaships.oxp/Images/Supercargo.jpg as a texture - extension "jpg" does not identify a known type.
  ERROR: image Images/Supercargo.jpg could not be read.
  Can't use /Users/jayton/Downloads/Amen Bricks Megaships.oxp/Images/Cruiseship.jpg as a texture - extension "jpg" does not identify a known type.
  ERROR: image Images/Cruiseship.jpg could not be read.
  Can't use /Users/jayton/Downloads/Amen Bricks Megaships.oxp/Images/Yacht.jpg as a texture - extension "jpg" does not identify a known type.
  ERROR: image Images/Yacht.jpg could not be read.
  Can't use /Users/jayton/Downloads/Amen Bricks Megaships.oxp/Images/Battleshippirate.jpg as a texture - extension "jpg" does not identify a known type.
  ERROR: image Images/Battleshippirate.jpg could not be read.
  Can't use /Users/jayton/Downloads/Amen Bricks Megaships.oxp/Images/Biodome.jpg as a texture - extension "jpg" does not identify a known type.
  ERROR: image Images/Biodome.jpg could not be read.
  Can't use /Users/jayton/Downloads/Amen Bricks Megaships.oxp/Images/Battleshipnavy.jpg as a texture - extension "jpg" does not identify a known type.
  ERROR: image Images/Battleshipnavy.jpg could not be read.
  Can't use /Users/jayton/Downloads/Amen Bricks Megaships.oxp/Images/Battleshippolice.jpg as a texture - extension "jpg" does not identify a known type.
  ERROR: image Images/Battleshippolice.jpg could not be read.
  Can't use /Users/jayton/Downloads/Amen Bricks Megaships.oxp/Images/Superlifter.jpg as a texture - extension "jpg" does not identify a known type.
  ERROR: image Images/Superlifter.jpg could not be read.
Checking for unused files
  TODO: implement unused files check.
OXP verification complete.
Some notes:
  • WARNING: key "max_missiles" does not apply to this category of ship.
    max_missiles is currently ignored for NPCs. I intend to change that at some point, though.
  • ERROR: case mismatch: request for file "Models/abBattleship.dat" referenced in entry "abBattleship" of shipdata.plist resolved to "Models/abbattleship.dat".
    This will break your OXP on Linux.
  • WARNING: unknown key "isCarrier".
    This is a bug in the verifier (now fixed).
  • Can't use /Users/jayton/Downloads/Amen Bricks Megaships.oxp/Images/Hospitalship.jpg as a texture
    As McLane said, the game uses the Images directory for images used in mission screens. All textures are required to be in PNG format. (Hmm, this message should use a relative path.)
User avatar
Thargoid
Thargoid
Thargoid
Posts: 5528
Joined: Thu Jun 12, 2008 6:55 pm

Post by Thargoid »

Is there a list anywhere of such debugging tools? This one and the AI messaging one you mentioned in my Drones thread for two examples? Are there any other command line options? (as the wiki doesn't seem to have any info, nor does the readme file).

Also am I right in presuming by command line option you add this into the runoolite.bat file (in the case of the PC version) or at least kick that bat file off from a DOS prompt rather than a windows click, with those options being picked up by the %1-4 in the bat file itself?
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 »

Thargoid wrote:
Is there a list anywhere of such debugging tools? This one and the AI messaging one you mentioned in my Drones thread for two examples?
Not that I’m aware of. The OXP verifier has been mentioned in release notes and a number of times on the forum. Are there any other command line options? (as the wiki doesn't seem to have any info, nor does the readme file). reportAIMessages is documented, er, in logcontrol.plist. Oh yeah, and in the Javascript reference.

Better documentation is one of those things that I’d like to focus on after the Mythical Next Stable Release, but a wiki page on debugging and testing OXPs would be a good project for someone else. ;-)
Thargoid wrote:
Also am I right in presuming by command line option you add this into the runoolite.bat file (in the case of the PC version) or at least kick that bat file off from a DOS prompt rather than a windows click, with those options being picked up by the %1-4 in the bat file itself?
Yes, I believe that should work. I’m not big on the Windowsy stuff, though.

In Mac OS X, it’s:

Code: Select all

<path to Oolite>/Contents/MacOS/Oolite -verify-oxp <path to OXP>
e.g.:
/Applications/Oolite.app/Contents/MacOS/Oolite -verify-oxp ~/Library/Application\ Support/Oolite/AddOns/MyOXP.oxp
In Linux, it’s:

Code: Select all

openapp <path to oolite.app> -verify-oxp <path to OXP>
e.g.
openapp ~/Projects/Oolite/oolite.app -verify-oxp ~/.Oolite/AddOns/MyOXP.oxp
User avatar
Commander McLane
---- E L I T E ----
---- E L I T E ----
Posts: 9520
Joined: Thu Dec 14, 2006 9:08 am
Location: a Hacker Outpost in a moderately remote area
Contact:

Post by Commander McLane »

Ahruman wrote:
I’d like to point out that the -verify-oxp command-line option catches some of the issues Commander McLane mentioned (after the plist is fixed), and some he missed:
Hmmm, actually I don't see any I missed (and I do hope that in general my eyes and brain are just as good an OXP-verifying tool as every other :wink: ).
  • WARNING: key "max_missiles" does not apply to this category of ship.
    max_missiles is currently ignored for NPCs. I intend to change that at some point, though.
Okay, I didn't know for sure (although I had a vague feeling about it) that it is ignored altogether. The wiki isn't clear on that, for instance it fails to mention that it is meant as a player-only property. Anyway, I mentioned the problem.
  • Can't use /Users/jayton/Downloads/Amen Bricks Megaships.oxp/Images/Hospitalship.jpg as a texture
    As McLane said, the game uses the Images directory for images used in mission screens. All textures are required to be in PNG format. (Hmm, this message should use a relative path.)
Just to clarify again: All textures are in the correct .png-format. The files in the Images-folder are not meant to be textures--nor to be used in any other way by the OXP itself. Therefore my suggestion was to delete the folder altogether and save some 800K of disk-space.

The only thing I didn't mention was the presence of "Thumbs.db". I didn't because Windows will always continue to produce and re-produce this file whenever a user re-opens the folder concerned. And the user won't even know. Only we non-Windows people will ever see the file as a file. So I've given up caring about it.
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 »

Commander McLane wrote:
Hmmm, actually I don't see any I missed
Somehow I failed to see the bit where you mentioned case-sensitivity. So much for my scanning skills.
User avatar
Svengali
Commander
Commander
Posts: 2370
Joined: Sat Oct 20, 2007 2:52 pm

Post by Svengali »

Ahruman wrote:
In Mac OS X, it’s:

Code: Select all

<path to Oolite>/Contents/MacOS/Oolite -verify-oxp <path to OXP>
e.g.:
/Applications/Oolite.app/Contents/MacOS/Oolite -verify-oxp ~/Library/Application\ Support/Oolite/AddOns/MyOXP.oxp
In Linux, it’s:

Code: Select all

openapp <path to oolite.app> -verify-oxp <path to OXP>
e.g.
openapp ~/Projects/Oolite/oolite.app -verify-oxp ~/.Oolite/AddOns/MyOXP.oxp
In Windows:

Code: Select all

<path to oolite>RunOolite -verify-oxp AddOns/oxpname.oxp
e.g.
RunOolite -verify-oxp AddOns/MyOxp.oxp
Open the console and step to the folder where Oolite is installed (e.g. cd D:\Oolite) and use the command above.
More infos about cmd.exe: http://en.wikipedia.org/wiki/Command_Prompt_(Windows).
PS: The link does not show correctly because of the brackets.
Commander McLane wrote:
The only thing I didn't mention was the presence of "Thumbs.db". I didn't because Windows will always continue to produce and re-produce this file whenever a user re-opens the folder concerned. And the user won't even know. Only we non-Windows people will ever see the file as a file. So I've given up caring about it.
As most things in Windoof it is possible to configure it. This and a lot of other useful things can be found in WINFAQ (www.winfaq.de) and the Registry Settings Wizard (on the same page) - sorry only german version. I've used it to setup my system, because MS tries to hide a lot of useful features.

But be aware that fiddling around with the Registry can mixup your whole system. So you better do it carefully and if you don't know what a entry will cause or change - don't do it.
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 »

Svengali wrote:
More infos about cmd.exe: http://en.wikipedia.org/wiki/Command_Prompt_(Windows).
PS: The link does not show correctly because of the brackets.
http://en.wikipedia.org/wiki/Command_Prompt_(Windows)

My working-around-stupid-limitations-fu is the greatest.
User avatar
Svengali
Commander
Commander
Posts: 2370
Joined: Sat Oct 20, 2007 2:52 pm

Post by Svengali »

Ahruman wrote:
Svengali wrote:
More infos about cmd.exe: http://en.wikipedia.org/wiki/Command_Prompt_(Windows).
PS: The link does not show correctly because of the brackets.
http://en.wikipedia.org/wiki/Command_Prompt_(Windows)

My working-around-stupid-limitations-fu is the greatest.
Thanks for that, Ahruman. Still have to learn a lot :-)
User avatar
_ds_
Deadly
Deadly
Posts: 180
Joined: Thu Jan 22, 2009 5:34 pm
Location: In a cloaked ship behind you

shipdata.plist is broken (case-sensitive filesystem)

Post by _ds_ »

This OXP is broken on Linux and other OSes with case-sensitive filesystems due to mismatches between the model filenames in shipdata.plist and what's actually in the Models directory: all of the files' names are lower case, but some of the filenames given in shipdata.plist contain upper-case letters.

(I've fixed this locally by editing shipdata.plist.)
User avatar
wackyman465
---- E L I T E ----
---- E L I T E ----
Posts: 831
Joined: Thu Nov 06, 2008 10:15 pm
Location: Currently hunting you down in an Imperial Courier

Post by wackyman465 »

Welcome to the forums, _ds_!
I shot him back first. That is to say, I read his mind and fired before he would have fired on me. No, sir, he wasn't a fugitive.
User avatar
Commander McLane
---- E L I T E ----
---- E L I T E ----
Posts: 9520
Joined: Thu Dec 14, 2006 9:08 am
Location: a Hacker Outpost in a moderately remote area
Contact:

Post by Commander McLane »

Hi, _ds_, and first of all welcome to the boards, and of course to this great game! :D

The OXP has some other problems as well, and its author is working on it. However, it would be very helpful to post a list of the filenames concerned. Thanks!
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 »

Commander McLane wrote:
The OXP has some other problems as well, and its author is working on it. However, it would be very helpful to post a list of the filenames concerned. Thanks!
See above re: OXP verifier. ;-)
User avatar
Commander McLane
---- E L I T E ----
---- E L I T E ----
Posts: 9520
Joined: Thu Dec 14, 2006 9:08 am
Location: a Hacker Outpost in a moderately remote area
Contact:

Post by Commander McLane »

Ahruman wrote:
See above re: OXP verifier. ;-)
Kumbe! 8)
itoffshore
Poor
Poor
Posts: 6
Joined: Mon Dec 13, 2010 10:31 pm

Error in ADCK Behemoths affecting Megaships (solved)

Post by itoffshore »

Correcting the capitalisation of adck_Ballturret.dat to:

adck_ballturret.dat

in /Addons/adcks_behemoths_v1.2.oxp/Config/shipdata.plist

Fixed the following error in Amen Brick Megaships:

Code: Select all

[shipData.load.begin]: Loading ship data.
  [plist.parse.failed]: Failed to parse /home/.Oolite/AddOns/Amen Bricks Megaships.oxp/Config/shipdata.plist as a property list.
failed to parse as XML property list
  [shipData.load.error]: ***** ERROR: the shipdata.plist entry "frame_itsatrap" specifies non-existent model "Wreck1.dat".
  [shipData.load.error]: ***** ERROR: the shipdata.plist entry "adck_bhmBallturret" specifies non-existent model "adck_Ballturret.dat".
  [shipData.load.error]: ***** ERROR: the shipdata.plist entry "Spiv-Player" specifies non-existent model "Spiv2.dat".
  [shipData.load.shipyard.unknown]: ----- WARNING: the shipyard.plist entry "Spiv-Player" does not have a corresponding shipdata.plist entry, ignoring.
  [shipData.load.shipyard.unknown]: ----- WARNING: the shipyard.plist entry "abYacht-Player" does not have a corresponding shipdata.plist entry, ignoring.
It was noticed in the "[Release] ADCK's Behemoths" thread in October but hasn't been corrected yet:
User avatar
DaddyHoggy
Intergalactic Spam Assassin
Intergalactic Spam Assassin
Posts: 8515
Joined: Tue Dec 05, 2006 9:43 pm
Location: Newbury, UK
Contact:

Post by DaddyHoggy »

Nice resurrection of a long dead thread itoffshore.

Welcome to the Forums - although I confess your name had my spambot trigger finger all twitchy... :wink:
Selezen wrote:
Apparently I was having a DaddyHoggy moment.
Oolite Life is now revealed here
Post Reply