Personalities.oxp

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

Moderators: winston, another_commander

Post Reply
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 »

In order to help future contributors, here's a short overview of the internal workings:

All personalities have one basic AI, "personalitiesAI.plist", and a common ship script, "personalities-ship-script.js", which modifies their behaviour, starting from three basic behaviours:
  1. cruiser: like a trader, just flies from witchpoint to planet, not looking for fights;
  2. hunter: like a bounty hunter, also cruising between witchpoint and planet, but scanning for and attacking criminals within certain parameters;
  3. privateer: like a pirate, also cruising between witchpoint and planet, but scanning for and attacking other ships within certain parameters, if there is no police nearby.
The modifications are triggered by certain keys, which are set in each personality's shipdata.plist entry, specifically in the "script_info" dictionary.

Here is a complete list of the available keys, their possible values and meaning:

Code: Select all

Key                     value         meaning

attacked                "flee"        lets the ship flee with injectors immediatly if attacked
attackProbability       0 -- 1        chance of finding the ship's prey (see below) with each scan
cargoType               role          special cargo carried by the ship (e.g. "missilepod")
displayName                           the character's human readable name
energyDown              "flee"        lets the ship flee with injectors, if its energy is down to 1/2
                                      (= shields depleted)
                        "jump"        lets the ship jump out, if its energy is down to 1/2 (=
                                      shields depleted)
                        "cloak"       lets the ship only use its cloak if its energy is down to 1/2
                                      (= shields depleted) (will only work starting from Oolite 1.74)
energyLow               "flee"        lets the ship flee with injectors, if its energy is down to
                                      1/4
                        "jump"        lets the ship jump out, if its energy is down to 1/4
fuelstationProbability  0 -- 1        chance of using the fuel station (if any), if spawned at
                                      witchpoint
launch                  "jump"        lets the ship jump out of the system, after launching from
                                      the main station
                        "stay"        lets the ship set course to the witchpoint, after launching
                                      from the main station
                                      (if undefined, the behaviour is randomized)
maxCargo                integer       the maximum number of cargopods spawned if the ship dies
miningProbability       0 -- 1        chance of finding asteroids with each scan (only if no prey
                                      found) and mining them
name                                  internal identifier for the character's chatter
prey                    "traders"     (privateers only) will only attack ships which are pirate
                                                        victims
                        "everybody"   (privateers only) will attack any ship
                        "offenders"   (hunters only) will attack any ship with a bounty above a
                                                     certain treshold
                        "thargoids"   (hunters only) will only attack Thargoids, not pirates
preyLimit               integer       (hunters only) bounty treshold for offenders (or fugitives)
                                                     to be attacked
sunskimProbability      0 -- 1        chance of going to the sun first, if spawned at witchpoint
More keys may be added, if more triggers and behaviours are requested.

EDIT: added another value which I originally forgot ("cloak" for energyDown)
Last edited by Commander McLane on Fri Nov 27, 2009 6:47 am, edited 2 times in total.
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 modifications are triggered by certain keys, which are set in each personality's shipdata.plist entry, specifically in the "script_info" dictionary.
Woohoo! I love it when features get used. :-)
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:
Commander McLane wrote:
The modifications are triggered by certain keys, which are set in each personality's shipdata.plist entry, specifically in the "script_info" dictionary.
Woohoo! I love it when features get used. :-)
Do you think I request new features just for fun? :wink: (Although this one was not a request of mine. I just wanted to put it to some use. :) )

Oh, and by the way: When may I expect your use of this feature (Read: your personality)? :D
User avatar
pagroove
---- E L I T E ----
---- E L I T E ----
Posts: 3035
Joined: Wed Feb 21, 2007 11:52 pm
Location: On a famous planet

Post by pagroove »

So Commander McLane. How dare you shoot a poor Strelka shuttle out of the sky in an Imperial Courier. I'm no match for your hardhead without any witchspace fuel :D

LoL this OXP is fun. I was awaited by You.
For P.A. Groove's music check
https://soundcloud.com/p-a-groove
Famous Planets v 2.7. (for Povray)
Image
https://bb.oolite.space/viewtopic.php?f=4&t=13709
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 »

Yesterday I blew Frame out of the sky (sorry, Frame :oops: ), and later Svengali came for his revenge. (Blew him out of the sky, too. :oops: )

I don't like to slap myself on the shoulder, but yes, this OXP is fun. :lol: :lol: :lol:
User avatar
Frame
---- E L I T E ----
---- E L I T E ----
Posts: 1477
Joined: Fri Mar 30, 2007 8:32 am
Location: Witchspace

Post by Frame »

Commander McLane wrote:
Yesterday I blew Frame out of the sky (sorry, Frame :oops: ), and later Svengali came for his revenge. (Blew him out of the sky, too. :oops: )

I don't like to slap myself on the shoulder, but yes, this OXP is fun. :lol: :lol: :lol:
I hope My end ended with a citation ;-).
Bounty Scanner
Number 935
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 »

More fun: I just took on a large group of pirate in a collaborative effort with Disembodied to protect a Boa and its escorts:

Image

The battle was heroic. However, his last broadcast indicates that the pirates finally got him. But not before he had sent a couple of them into the dark zone! And I am now going to finish off the survivors. :twisted:
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 »

:lol: :lol: 8)
Selezen wrote:
Apparently I was having a DaddyHoggy moment.
Oolite Life is now revealed here
User avatar
drew
---- E L I T E ----
---- E L I T E ----
Posts: 2190
Joined: Fri May 19, 2006 9:29 am
Location: In front of a laptop writing a book.
Contact:

Post by drew »

When is a v1.0 coming out? 8)

Cheers,

Drew.
Drew is an author of SF and Fantasy Novels
WebsiteFacebookTwitter
User avatar
OneoftheLost
Deadly
Deadly
Posts: 216
Joined: Sat Oct 24, 2009 2:30 pm

Post by OneoftheLost »

Oh man, when I get back I really need to try this out. Sounds fun. Be good to see some other commanders out there.
User avatar
pagroove
---- E L I T E ----
---- E L I T E ----
Posts: 3035
Joined: Wed Feb 21, 2007 11:52 pm
Location: On a famous planet

Post by pagroove »

Could this be extended with non-forum NPC's. So just random NPC's only a little chattier. Now the chance that you meet a forum member is fairly high.
For P.A. Groove's music check
https://soundcloud.com/p-a-groove
Famous Planets v 2.7. (for Povray)
Image
https://bb.oolite.space/viewtopic.php?f=4&t=13709
User avatar
CptnEcho
---- E L I T E ----
---- E L I T E ----
Posts: 536
Joined: Sun Oct 26, 2008 4:14 pm

Post by CptnEcho »

pagroove wrote:
Could this be extended with non-forum NPC's. So just random NPC's only a little chattier. Now the chance that you meet a forum member is fairly high.
"Personalities Extended"? Oh gawsh no I hope not! :roll:

Wouldn't it be easier to reduce the chances of encountering a Personalities-OXP ship versus the ratio of ships populated by the game engine and other OXP's?
Also, the Personalities-OXP (as I understand it) is going to have updates and additional personality 'packages' to increase the variety of characters encountered.

Perhaps these approaches will satisfy you?
"I shouldn't have taken off in this crate without more ammo..." Sergeant Knox - Star Blazers
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 »

Selezen's original suggestion was that there should be a personality in practically each system. Of course, as long as there are only a good dozen in the mix, that may get fairly repetetive.

I am still experimenting with the random chances, though. In the preview version there is a 65% chance that a personality is spawned in each system (which still doesn't necessarily mean that you actually meet the guy). I have already thought about lowering that value.

Another way is, of course, to increase the number of personalities, so that the probability of meeting the same guy over and over again decreases. Basically that depends on the forum members submitting their entries. So: just do it! :wink:

Another idea is to throw non-forum members into the mix. Drew has already asked whether he could also include some of his fictional characters, and I think there is no reason why we shouldn't meet some of them as well. So, as far as I am concerned, if you want one of your fictional characters included, just make something up for him (this goes mainly to our writers; I think they should have the first say about the characters in their stories).
User avatar
Selezen
---- E L I T E ----
---- E L I T E ----
Posts: 2530
Joined: Tue Mar 29, 2005 9:14 am
Location: Tionisla
Contact:

Post by Selezen »

How about putting a few real people in there? Or people from canon sources?

Examples:
David Braben
Ian Bell
Robert Holdstock (RIP) :cry:
Alex Ryder

...and so on.
Post Reply