Viewing a ship/texture in Oolite Summary

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

Moderators: winston, another_commander

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 »

Eh, I did a few snafus on a wiki myself.
It took me a while to figure it out too: now, whenever I make a change I look at the revision history just to double check on myself! :P
Hey, free OXPs: farsun v1.05 & tty v0.5! :0)
another_commander
Quite Grand Sub-Admiral
Quite Grand Sub-Admiral
Posts: 6682
Joined: Wed Feb 28, 2007 7:54 am

Post by another_commander »

Captain Berf wrote:
Is there a simple & clean way to word the caveat for choosing a role that will work in all or most cases (to bring up the required ship) e.g. only select a defined role with the shipname in it. Or is this wrong.
It is almost right. Whenever you use the :spawn macro, you must use a role. If the ship you intend to spawn has a generic role like hunter, trader etc., then you must add an identifying role in its roleset yourself, then use that role to spawn it. If the ship contains an identifying role in its roleset already, then you can use that.

Example: The Griff Python has roles "trader pirate". In order to spawn a Griff Python using the console, I have to add the role "griffPython" in the set by editing shipdata.plist, then execute :spawn griffPython in the console. As you have already seen, doing a :spawn trader does not guarantee that a Griff Python will be spawned, because there are many other ships that also have the role "trader" in their roleset and the game will pick one from the available options. But griffPython is a role that exists (because I added it myself) solely for the ship I want to generate.
User avatar
Captain Berf
Competent
Competent
Posts: 55
Joined: Mon Nov 09, 2009 1:19 am
Location: USA, 1.5 Miles Up

Post by Captain Berf »

So if you want to spawn shipX and shipX has only generic roles defined:

Code: Select all

<key>shipX</key>
<dict>
...
<key>role</role>
<string>trader escort hunter</string>
...
</dict>
modifying it to

Code: Select all

<key>shipX</key>
<dict>
...
<key>role</key>
<string>shipX-trader trader escort hunter</string>
...
</dict>
is sufficient (and correct)? Or does it require further definition.
__________
______
Captain Berf
another_commander
Quite Grand Sub-Admiral
Quite Grand Sub-Admiral
Posts: 6682
Joined: Wed Feb 28, 2007 7:54 am

Post by another_commander »

It's sufficient and correct. Note though that the key is roles, not role.
User avatar
Captain Berf
Competent
Competent
Posts: 55
Joined: Mon Nov 09, 2009 1:19 am
Location: USA, 1.5 Miles Up

Post by Captain Berf »

The first post has been edited and is up for review.

That is one *&!@ complicated answer to

"I made a texture, how do I view it?"

No one expects the JavaScript Inquisition.
__________
______
Captain Berf
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 »

Captain Berf wrote:
So if you want to spawn shipX and shipX has only generic roles defined:

Code: Select all

<key>shipX</key>
<dict>
...
<key>role</role>
<string>trader escort hunter</string>
...
</dict>
modifying it to

Code: Select all

<key>shipX</key>
<dict>
...
<key>role</key>
<string>shipX-trader trader escort hunter</string>
...
</dict>
is sufficient (and correct)? Or does it require further definition.
By the way: I'd suggest to all ship designers to always give their creations one unique role (preferably preceded by their own name or the OXP's name), in order to make the ship "spawnable". It doesn't to any harm, and whoever would like to see that specific ship can profit from it.

Example: All ships contained in Personalities.oxp follow the same role convention. Here's my own character as an example:

Code: Select all

		<key>roles</key>
		<string>personalities personalities_launcher personalities_privateer personalities_mclane</string>
"personalities" is the general role for all ships contained. It is used to create one of them randomly when the player arrives in a system.

"personalities_launcher" is used to make one of the ships launch from the main station (or to make it dock with the main station). Ships too big to dock don't get this role, so nothing can go wrong.

"personalities_privateer" is one of currently three choices describing the basic behaviour of the ship. Only one of those three is given to any one ship (the other two being "personalities_hunter" and "personalities_cruiser"). So if you want to create any random personality with a pirate-like behaviour pattern, you can spawn a "personalities_privateer".

"personalities_mclane" finally is a unique role. No other ship will ever get this role again. So if you spawn it, you will get me, and me only.
User avatar
Captain Berf
Competent
Competent
Posts: 55
Joined: Mon Nov 09, 2009 1:19 am
Location: USA, 1.5 Miles Up

Post by Captain Berf »

It was a real kick to spawn a Generation Ship as I had always wanted to see one. :)

What happens if you've been assimilated into personalities and spawn a doppelganger? Will the Commander have a goatee? [rhetorical question]
__________
______
Captain Berf
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 »

Captain Berf wrote:
It was a real kick to spawn a Generation Ship as I had always wanted to see one. :)
Well, you could always do a misjump and see them in their natural environment, y'know! :wink:

Oh, and I would strongly advise you to do so, because they actually look different. The greenish interstellar space background glow alters their colour quite a lot.
User avatar
Captain Berf
Competent
Competent
Posts: 55
Joined: Mon Nov 09, 2009 1:19 am
Location: USA, 1.5 Miles Up

Post by Captain Berf »

Can you force a misjump?

Never had one in Oolite / happened way too often in the big old E. [Thargon H*ll] I figured it was just deserts since I found a way [a bug] to cross the galaxy on one tank. :)

Re: the Generation Ship -- that they appeared to be totally sealed up in it was disturbing, like driving by an insular cult compound.
__________
______
Captain Berf
another_commander
Quite Grand Sub-Admiral
Quite Grand Sub-Admiral
Posts: 6682
Joined: Wed Feb 28, 2007 7:54 am

Post by another_commander »

Captain Berf wrote:
Can you force a misjump?
Affirmative. Start a hyperspace countdown and about two seconds before zero do a full pitch up and maintain it so that on T-zero you have full pitch. Just make sure to have enough fuel for the jump back to civilization.
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 »

Back to the original topic: as an alternative to launching from the station, etc,etc, after some very recent changes in trunk (rev2772), you can type

Code: Select all

mission.runScreen({model:'shipUniqueRole'})
in the js debug console when you're docked at a station, and you'll see the ship in question spinning happily on the mission screen...

In 1.73.4 you can still type the slightly-less-catchy

Code: Select all

mission.runMissionScreen(null,null,null,'shipUniqueRole');
to get the same result! ;)

Of course, you won't be able to judge the scale of the ship from the mission screen, but since the original idea was just to check the texture, it shouldn't be too much of a problem.
Hey, free OXPs: farsun v1.05 & tty v0.5! :0)
User avatar
Captain Berf
Competent
Competent
Posts: 55
Joined: Mon Nov 09, 2009 1:19 am
Location: USA, 1.5 Miles Up

Post by Captain Berf »

That is very snazzy [which is good in the event it doesn't translate].

Added to the wiki page:

http://wiki.alioth.net/index.php/Viewin ... e_or_Model
__________
______
Captain Berf
Post Reply