Role

From Elite Wiki
Revision as of 10:55, 24 May 2008 by Lestradae (talk | contribs)

Currently most common roles encountered in Oolite:

trader, scavenger, hunter, miner, pirate, thargoid, police, wingman, interceptor, escort, shuttle, station, astroid, missile, cargopod, etc


Disclaimer: The text below is an impromptu explanation from LittleBear, and he makes a point of noting that he will want to "tidy up" this article in the not-so-far future. As this is as yet the only exhaustive article about this topic on the wiki, however, it might be added that perhaps he is being overly critical about himself here :)

The explanations about scan class and its relation to the roles of police, wingman and interceptor are from Ahruman, "What the roles do" from Commander McLane.


What the roles do:

The purpose of roles is - simply said - to call an entity into being, with a specific role, like the role some actor plays in a movie or theater. The actor with the role Hero is - in most cases at least - different from the actor with the role Villain, and again different from the actor with the role Gentle Maid. That means that the set of properties attached to each of them is different. Hero: good, Villain: bad, Gentle Maid: helpless and in love with the hero. This set of properties is in Oolite defined in shipdata. So the only logical and convenient way is to have a different shipdata-entry for each role. And a play or movie in which the hero, the villain and the gentle maid are just the same character usually makes not much sense.


How the roles work:

The Role given will determine the ships behaviour and when the game adds it. Oolite will give a ship called as an escort the correct bounty if the bounty key is left out, but will over-ride if one is added. In an entry for a ship with a role “escort” don’t put in any bounty key at all. If the ship is called as a pirate escort then it will be an offender. If called as a clean trader’s escort it will be clean, provided it has no bounty key set in ship data. If you give it a bounty it always has this one. So if you gave a Longshot bounty zero then it will still be clean when escorting a pirate. Escorts really therefore need a separate entry with no bounty key set and only the role escort set for that entry. This is why you really need a separate entry for each type of ship. Just adding roles to the same ship data entry means you get Clean pirates and Offender police ships if the bounty key is included. This is a summary of what the various in-built roles do:


TRADER: The game adds traders to the system space lanes. They also witch into systems and then fly to the station. Space Stations (including OXP ones) also launch traders every so often. The ships get either exiting trader or entering trader AI. Exiting traders launch from the station and witch-out (once out of the stations mass-locking effect). About 10% of the exiting traders will not witch-out but go for the sun instead. Entering traders fly to the station. Traders are basically cowards however. Dice are rolled when a ship is attacked. But basically traders are likely to run away from a single shot and will flee (not using weapons – just deploying escorts) if hurt. They also plead for their lives and send distress calls at the drop of a hat. This is so however well armed or powerful the ship. If its called as a trader it has a trader’s personality. Although not a bug in terms of crashing the game, it causes strange behaviour to give powerful ships the role trader. Although simply adding the role “trader” to the Imperial Courier, Tiger does not crash the game, it introduces strange behaviour. A Condor with the role trader attacked by a single pirate Adder is quite likely to flee and plead for its life rather than swat the irritating ship with its multiple plasma cannons! I would suggest not giving any decent ships the role trader. Better to use these as hunters or pirates. You also shouldn't give big ships this role. They’ll hit the station and the station is sent whizzing off into deep space by the impact. They’re also too big to be launched and can get stuck.


SCAVENGER: Scavengers are only ever launched by Stations (including rock hermits, Space Bars and the like) when cargo is detected nearby. Scavengers never appear in the space lanes generally. If you are going to make a ship a scavenger it must have a separate entry with only the role scavenger. It must have fuel scoops and must also be a ship with cargo capacity. Its AI will tell to scoop up the loot (remember it will not have appeared unless loot is about) and then go back to the station which launched it. If the ship does not have both scoops a cargo bay, nasty AI bugs happen. The ship is being ordered to do something that it just cannot do. It’s AI will hang, causing the ship to freeze and chew up a lot of run time slowing the game down. Scavengers are also cowards. Because they appear near a safe haven, they always run away from attack. Again giving powerful ships this role causes wired behaviour. If Commander Jameson with his pulse laser takes a pot shot at a Tiger Scavenger the Tiger is very likely to flee! Personally I wouldn’t give any powerful ship the role Scavenger and big ships given this role are likely to crash on launch.


MINER: When the game adds asteroids there is a random chance that it will also add some miners nearby to the cluster. The Ship will scan for asteroids, shoot them, scan for rocks then scoop the rocks. It must therefore have a separate entry with a Forward Mining Laser (NPCs cannot use left or right guns and rarely use a rear gun) and fuel scoops. Without this its AI will hang as it cannot do what its been told to. It also must be a ship that has a cargo bay. Because a mining laser is total pants as a weapon, miners will always flee attack (they are effectively unarmed). Again giving powerful ships this role will cause unrealistic results. Better to save it for the medium and low level ships.


PIRATE: A pirate ship needs a separate entry if you are going to set the bounty. It must have fuel scoops and a cargo bay, as its AI will tell it to scoop cargo lying around. Don’t give the role pirate to Police or Navy Ships obviously! Also don’t give a ship with no cargo bay the role pirate (as it will never do any pirating). The pirate AI checks its hold. If full it switches AI stops hunting and heads for the station. In this mode it won’t attack unless attacked and usually runs for the station. This makes sense as from a pirates point of view there’s no point fighting if he cannot grab the goodies. If you give a ship with no cargo bay the pirate role, its hold is always full so it doesn’t really behave properly. If its hold it not full, it looks for any cargo pod lying about and grabs them. (Again no scoops will cause an AI hang). If no cargo is about it lurks in the space lanes and attacks the nearest ship it spots with the role trader, the player or ships that are on a special pirate-victim-roles list).


ESCORT: Escorts always fly on the wing of ships with escorts and follow mum about. They will defend mum against attack and will attack any ship that Mum decides to attack. If mum is a pirate they’ll act as pirates, but only attacking when mum decides to attack. Really only fighters (including powerful ships like ICs and Tigers) should be escorts. Don’t give slow ships like Pythons Escort roles. It doesn’t really make sense for fighters to be escorts. AI problems will also happen with cruisers (Condors etc) being given Escort roles. The Escorts form up with Mum and try to fly on her wing. But if you give a slow ship Escort role, it is likely not to be able to keep up with Mum and you get the escort hanging its AI or just wandering around as its lost its mother ship. In terms of realism, I’d also make powerful escorts rare. The pilot of a Tiger is one rich commander to have bought the ship. Once in a while a trader might be able hire one, but it should be a rare event. Also it will act as a wingman to a pirate. If an Imperial Courier is a pirate it makes more sense for him to be leading the attack than hanging on the wing of a python.


SHUTTLE: Shuttles are launched by stations and fly to the planet. They also take off from the planet and dock with stations. Big ships will crash into the station or get stuck in the docking bay. They are also total cowards and NEVER fight back if attacked. This makes sense in the native game as only Worms, Shuttles and Transporters have this role. As these ships are all unarmed, they cannot fight back so it makes sense for the AI to tell them to always run. If you give another ship this role (however powerful it is) it will always run. Condors fleeing Adders doesn’t really look good.


HUNTER: These ships cruse the space lanes and attack offenders and ships with bounties (including the player of cause). They are pretty brave in combat only fleeing if really badly hurt and sometimes fight to the death. I’d use powerful ships here.


WINGMAN: ONLY police ships should be given this role. A wingman forms up on the wing of a ship with the role POLICE. Its random whether a police ship has Wingmen (and how many), but this is how the game creates the little squadrons of cops that you sometimes see flying in formation. Really only small police ships should have this role. A Viper flying lead to a Condor doesn’t look that good (the Condor is also likely to get an AI failer as a wingman – as it cannot keep up with the Viper). Its better really not to use powerful ships as wingmen. Use them as police instead. That way a cop Super Cobra or Condor will be the lead ship with a few small ships on his wings.


INTERCEPTOR: Only ever launched by a station to defend itself or to attack criminals in the area. It has a police AI and will say thinks like “Laveian Police order you to lower your shields”. Should only be used for police really.


Carriers should be given a customAI. But really its not a good idea to call carriers by a standard game role (they’ll get launched and get stuck). You’d need to give them a custom AI and it would be better really to place them by script.


How the police roles (police, wingman, interceptor) & police scan class (police) work:

The only supported configuration for police is scan class police, bounty 0 and one of the roles police, interceptor or wingman. Interceptors are generated in addition to police in high-tech systems, while wingman is used instead of escort for police ships with an escorts property. The primary distinction between wingmen and escorts is that wingmen turn into police with route1patrolAI if their owner dies.



This article is a stub. You can help EliteWiki by expanding it.