Back to Index Page generated: May 8, 2024, 6:16:03 AM

Expansion Contractor MkII

Content

Manifest

from Expansion Manager's OXP list from Expansion Manifest
Description Adds a lethal bounty-hunter/hit-man ship. Player buyable and NPC Adds a lethal bounty-hunter/hit-man ship. Player buyable and NPC
Identifier oolite.oxp.smivs.contractor oolite.oxp.smivs.contractor
Title Contractor MkII Contractor MkII
Category Ships Ships
Author Smivs Smivs
Version 1.6 1.6
Tags
Required Oolite Version
Maximum Oolite Version
Required Expansions
Optional Expansions
Conflict Expansions
Information URL http://wiki.alioth.net/index.php/Contractor_ZZ1 n/a
Download URL https://wiki.alioth.net/img_auth.php/4/47/ContractorMkII_v1.6.oxz n/a
License CC-BY-NC-SA 3.0 CC-BY-NC-SA 3.0
File Size n/a
Upload date 1610873289

Documentation

Also read http://wiki.alioth.net/index.php/Contractor%20MkII

readme.rtf

{\rtf1\ansi\deff3\adeflang1025
{\fonttbl{\f0\froman\fprq2\fcharset0 Times New Roman;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\fswiss\fprq2\fcharset0 Arial;}{\f3\froman\fprq2\fcharset0 Liberation Serif{\*\falt Times New Roman};}{\f4\froman\fprq0\fcharset1 Ubuntu;}{\f5\fmodern\fprq0\fcharset1 Ubuntu;}{\f6\froman\fprq0\fcharset1 Liberation Serif{\*\falt Times New Roman};}{\f7\fswiss\fprq0\fcharset1 Liberation Sans{\*\falt Arial};}{\f8\fmodern\fprq0\fcharset1 DejaVu Sans Mono;}{\f9\fnil\fprq2\fcharset0 DejaVu Sans;}{\f10\fnil\fprq2\fcharset0 Arial;}{\f11\fmodern\fprq1\fcharset0 DejaVu Sans Mono;}{\f12\fnil\fprq0\fcharset1 Lohit Hindi;}{\f13\fmodern\fprq0\fcharset1 Lohit Hindi;}}
{\colortbl;\red0\green0\blue0;\red128\green128\blue128;}
{\stylesheet{\s0\snext0\ql\nowidctlpar\ltrpar{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\kerning1\dbch\af10\langfe2052\dbch\af12\afs24\alang1081\cf0\loch\f6\fs24\lang2057 Normal;}
{\s15\sbasedon0\snext16\ql\nowidctlpar\sb240\sa120\keepn\ltrpar\kerning1\dbch\af9\langfe2052\dbch\af12\afs28\alang1081\loch\f7\fs28\lang2057 Heading;}
{\s16\sbasedon0\snext16\ql\nowidctlpar\sb0\sa120\ltrpar\kerning1\dbch\af10\langfe2052\dbch\af12\afs24\alang1081\loch\f6\fs24\lang2057 Text Body;}
{\s17\sbasedon16\snext17\ql\nowidctlpar\sb0\sa120\ltrpar\kerning1\dbch\af10\langfe2052\dbch\af12\afs24\alang1081\loch\f6\fs24\lang2057 List;}
{\s18\sbasedon0\snext18\ql\nowidctlpar\sb120\sa120\noline\ltrpar\i\kerning1\dbch\af10\langfe2052\dbch\af12\afs24\alang1081\ai\loch\f6\fs24\lang2057 Caption;}
{\s19\sbasedon0\snext19\ql\nowidctlpar\noline\ltrpar\kerning1\dbch\af10\langfe2052\dbch\af12\afs24\alang1081\loch\f6\fs24\lang2057 Index;}
{\s20\sbasedon0\snext20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057 Preformatted Text;}
}{\info{\creatim\yr0\mo0\dy0\hr0\min0}{\revtim\yr0\mo0\dy0\hr0\min0}{\printim\yr0\mo0\dy0\hr0\min0}{\comment LibreOffice}{\vern67175170}}\deftab709
\viewscale100
{\*\pgdsctbl
{\pgdsc0\pgdscuse451\pgwsxn11906\pghsxn16838\marglsxn1134\margrsxn1134\margtsxn1134\margbsxn1134\pgdscnxt0 Default Style;}}
\formshade{\*\pgdscno0}\paperh16838\paperw11906\margl1134\margr1134\margt1134\margb1134\sectd\sbknone\sectunlocked1\pgndec\pgwsxn11906\pghsxn16838\marglsxn1134\margrsxn1134\margtsxn1134\margbsxn1134\ftnbj\ftnstart1\ftnrstcont\ftnnar\aenddoc\aftnrstcont\aftnstart1\aftnnrlc
\pgndec\pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057{\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f4
Contractor MK II v1.}{\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f4
6}
\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f5

\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057{\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f4
The Contractor is an extreme example of niche-marketing, specifically targeted at Bounty Hunters, Hit-Men and Assassins, and it is without doubt one of the most lethal ships ever conceived. Inevitably a few have also found their way into Pirate hands.}
\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057{\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f4
The Contractor is shrouded in mystery, and little is known about the ship, its armaments or its capabilities. They are thought to originate on a moon orbiting a planet in the anarchic Retila System in Galaxy 2, where it is believed an un-holy alliance of Mafia, Triad and Pirate groups have established a covert shipyard where the Contractor is built to special order, drawing together stolen technologies from across the Ooniverse.}
\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057{\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f4
Even less is known about the origins of the design, although the story goes that it was reverse engineered from a stolen Military prototype. Although the incident was hushed up at the time, it is common knowledge that a Top Secret prototype was stolen from a Naval Base in Galaxy 1 and soon after was taken to Galaxy 2. It then disappeared for a}
\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057{\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f4
few weeks during which time it is thought it was stripped down and examined in detail. What happened next is unclear but the prototype was eventually tracked down and destroyed by a keen young Jameson, out to make a name for himself.}
\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057{\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f4
"What Spaceship" magazine recently published an interview with an anonymous owner (thought by many to be the notorious Bounty Hunter BOoba Fett) which gave some details of the Contractor and it's specification. }
\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f5

\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057{\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f4
If true, the details are as follows:-}
\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057{\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f4
Size: 54x10x60m}
\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057{\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f4
Cargo capacity: 2T}
\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057{\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f4
Cargo Bay extension: None}
\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057{\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f4
Top speed: 0.45LM}
\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057{\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f4
Roll: 1.25}
\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057{\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f4
Pitch: 1.5}
\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057{\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f4
Energy banks: 5}
\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057{\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f4
Recharge rate: 5 (very High)}
\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057{\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f4
Gun mounts: 2}
\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057{\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f4
Missiles: 5}
\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057{\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f4
Shield Boosters: Available}
\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057{\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f4
Military Shield Enhancement: Available}
\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057{\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f4
Hyperspace capable: Yes}
\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057{\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f4
Base Price: 1,250,000Cr}
\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f5

\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057{\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f4
Standard equipment is rumoured to include Front-mounted Military laser, ECM, and Fuel Injectors, and all options are available, although the 2 TC cargo capacity cannot be expanded.  The Contractor features a unique HUD with a clear, combat-biased layout.}
\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057{\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f4
Unable to reproduce the Naval drive unit fitted to the stolen prototype, the builders instead opted for three Muon Schism drives from the MitsOobishi Motor Company based at Xevera in Galaxy five. These compact yet powerful engines give the Contractor a very respectable top speed of 0.45LM.}
\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057{\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f4
The Contractor is believed to have some limited stealth capability thanks to organic hull plating developed by the Marine Trench Company making it almost invisible to the naked eye, although most scanners will detect it. Bounty Hunter ships will often be fitted with Cloaks and Scanner Jammers.}
\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057{\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f4
The Mk II has been refined even more into a combat vessel sacrificing all but two TC of cargo space to add two missiles over the original ZZ1 model. Following feedback from users the handling has been improved and the notoriously 'twitchy' controls have been smoothed out for the Mk II.}
\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057{\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f4
Although extremely rare, any Contractor that you might encounter is well worth avoiding, particularly if you are an Offender or Fugitive...remember, this is the ship-of-choice for some of the most ruthless and dangerous men in the Ooniverse, the Bounty Hunters.}
\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057{\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f4
Contractors have awesome firepower, most will have Military shields and energy units, and they are amongst the fastest ships available. If you can afford it, you can own a Contractor, and occassionally one will be found for sale at ship-dealers on higher tech-level worlds.}
\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f5

\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057{\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f4
Licence/Author}
\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057{\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f4
This work is licensed under the Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License. To view a copy of this license, visit }
\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057{\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f4
http://creativecommons.org/licenses/by-nc-sa/3.0/ }
\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057{\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f4
or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.}
\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f5

\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057{\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f4
The OXP was developed by Smivs. Special thanks go to Commander McLane for writing the BountyHunter JS and AI, and to Thargoid and Zbond-Zbond for help, advice and inspiration.}
\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f5

\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057\afs24\alang1025\rtlch \ltrch\loch\fs24\loch\f5

\par \pard\plain \s20\ql\nowidctlpar\sb0\sa0\ltrpar\kerning1\dbch\af11\langfe2052\dbch\af13\afs20\alang1081\loch\f8\fs20\lang2057\rtlch \ltrch\loch

\par }

Equipment

This expansion declares no equipment.

Ships

Name
contractor-bountyhunter
contractor-bountyhunter-lonewolf
contractor-pirate
Contractor
Contractor
contractor_engine
contractor_gun

Models

This expansion declares no models.

Scripts

Path
Scripts/cbh-ship-script.js
/*

cbh-ship-script.js

Ship script for the Contractor Bounty Hunter.


Oolite
Copyright © 2004-2010 Giles C Williams and contributors

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
MA 02110-1301, USA.


cbh.oxp
Copyright � 2010 "Smivs"

This work is licensed under the Creative Commons
Attribution-Noncommercial-Share Alike 3.0 Unported License.

To view a copy of this license, visit
http://creativecommons.org/licenses/by-nc-sa/3.0/ or send a letter
to Creative Commons, 171 Second Street, Suite 300, San Francisco,
California, 94105, USA.

*/

"use strict";

this.name		= "cbh-ship-script";
this.author		= "Commander McLane";
this.copyright		= "� 2009 Commander McLane";
this.license		= "CC-by-nc-sa 3.0";
this.description	= "Scan script for the Contractor Bounty Hunter";
this.version		= "1.2";


this.$scanForPrey = function()
{
	// you can activate the logging by deleting the leading "//" in the next line
	// log("cbh-ship-script", "Contractor scanning for prey.");
	// one scan for anything with a bounty should actually be enough, but just to be safe we also include the primary role of "pirate" as a criterion; note that ships like the renegade pirates (primary role "hardpirate") will not be found through their role
	// we use the JS function "system.filteredEntities", because there is no direct function for finding ships by bounty, like "system.shipsWithPrimaryRole" for primary role
	// "system.filteredEntities" calls a self-defined function, in this case "isOffender(entity)", which returns all entities that match the criteria specified behind the "return" command
	// the filtered (= found) entities are returned in an array, sorted by proximity; the closest is the first in the array
	function isOffender(entity)
	{
		// the entity must be a ship, have either a bounty or primary role "pirate",     must not be cloaked,      must not be a derelict           and must not be an asteroid (because
		//                                                                              (normal AI scans don't                                      asteroids have small bounties)
		//                                                                              find anything cloaked)
		return entity.isShip && (entity.bounty > 0 || entity.primaryRole == "pirate") && !entity.isCloaked && entity.scanClass !== "CLASS_CARGO" && entity.scanClass !== "CLASS_ROCK"
	}
	// the self-defined function is called and the result put in the variable "nextTarget"
	// the function has to filter and find all entities matching its criteria in a radius of 25600 meters around the calling ship, which equals the scanner range
	var nextTarget = system.filteredEntities(this, isOffender, this.ship, 25600);
	// if something was found, and the first element of the array is therefore not undefined..
	if(nextTarget[0])
	{
		// the found entity is made the current target...
		this.ship.target = nextTarget[0];
		// again the logging can be activated by deleting the leading "//" in the next line
		// log("cbh-ship-script", "Contractor found some scum. Attacking a " + this.ship.target.displayName + " with a bounty of " + this.ship.target.bounty + ".");
		// and the message "TARGET_FOUND" is sent to the Contractor's AI, which causes the methods connected with that message in the current AI state to be executed
		this.ship.reactToAIMessage("TARGET_FOUND");
	}
	// and this is the end of the scan
	// note that, if there is more than one pirate in the vicinity, the Contractor will always go after the closest ship
	// a more sophisticated algorithm for choosing among many targets could be devised, for instance attacking the one with the biggest bounty first
	// if nothing is found, the next scan will be performed in the next "UPDATE" of the AI
}