https://wiki.alioth.net/api.php?action=feedcontributions&user=Phkb&feedformat=atomElite Wiki - User contributions [en]2024-03-28T18:38:56ZUser contributionsMediaWiki 1.31.12https://wiki.alioth.net/index.php?title=File:Coyotes_Run_2.5.oxz&diff=83511File:Coyotes Run 2.5.oxz2024-03-20T20:40:52Z<p>Phkb: </p>
<hr />
<div></div>Phkbhttps://wiki.alioth.net/index.php?title=File:Coyotes_Run_2.4.oxz&diff=83508File:Coyotes Run 2.4.oxz2024-03-20T09:44:09Z<p>Phkb: </p>
<hr />
<div></div>Phkbhttps://wiki.alioth.net/index.php?title=File:Ships_Library_0.8.1.oxz&diff=83504File:Ships Library 0.8.1.oxz2024-03-18T22:12:41Z<p>Phkb: </p>
<hr />
<div></div>Phkbhttps://wiki.alioth.net/index.php?title=File:Ships_Library_0.9.oxz&diff=83503File:Ships Library 0.9.oxz2024-03-18T22:12:28Z<p>Phkb: Phkb uploaded a new version of File:Ships Library 0.9.oxz</p>
<hr />
<div></div>Phkbhttps://wiki.alioth.net/index.php?title=File:Ships_Library_0.9.oxz&diff=83502File:Ships Library 0.9.oxz2024-03-18T21:59:23Z<p>Phkb: </p>
<hr />
<div></div>Phkbhttps://wiki.alioth.net/index.php?title=File:Ships_Library_0.8.oxz&diff=83501File:Ships Library 0.8.oxz2024-03-18T21:58:42Z<p>Phkb: </p>
<hr />
<div></div>Phkbhttps://wiki.alioth.net/index.php?title=Z-ships&diff=83498Z-ships2024-03-18T14:30:39Z<p>Phkb: Updating BB links</p>
<hr />
<div>== Z-ships OXP ==<br />
<sup>by [[User:Zieman|Zieman]]</sup><br />
{{OXPLevel|1}}<br />
This OXP adds 4 ships (+ variants) to the Ooniverse. <br />
<br />
Released under the [http://creativecommons.org/licenses/by-nc-sa/3.0/ Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported] License.<br />
<br />
[[Image:Z-ships.png|400px]]<br />
<br />
== Download ==<br />
[https://www.box.com/s/zaf8qlpktqemtpqo5qvt Download Z-ships 2.0 from Box.com]<br />
<br />
== The Ships ==<br />
Note: the links below go to individual Ship Data pages.<br />
<br />
{| cellspacing="3" align="center" border="0" text-align="center" style="background-color: #000000;"<br />
|align="center" width="200" height="175"| [[Image:Z_Asp_Explorer.png |link= Z-ships Asp Explorer |100px|]]<br>[[Z-ships Asp Explorer|Asp Explorer]]<br />
|align="center" width="200" height="175"| [[Image:Z_Cobra_Commodore.png |link= Z-ships Cobra Commodore |100px|]]<br>[[Z-ships Cobra Commodore|Cobra Commodore]]<br />
|align="center" width="200" height="175"| [[Image:Z_Porcupine.png |link= Z-ships Porcupine |100px|]]<br>[[Z-ships Porcupine|Porcupine]]<br />
|align="center" width="200" height="175"| [[Image:Z_Python_Courier.png |link= Z-ships Python Courier |100px|]]<br>[[Z-ships Python Courier|Python Courier]]<br />
|}<br />
<br />
[[Z-ships_Asp_Explorer|Asp Explorer]] - Available to player.<br /><br />
Far Arm shipyards stationed in Deneb system (G7) redesigned the famous Asp mk. II to incorporate fuel scoops and some cargo/passenger carrying capacity. This resulted in a slightly larger hull, but the new Asp Explorer still retains the flight characteristics that made its predecessor so well known. GalCop authorities have adopted the new design to police and navy operations, and civilian versions are slowly spreading to every corner of GalCop controlled area - and beyond, exploring the unexplored. <br />
<br />
<br />
[[Z-ships_Cobra_Commodore|Cobra commodore]] - Available to player.<br /><br />
Cobra Commodore is designed as improvement of the Cobra mk. III - at least in fighting department. Increase in speed, extra energy bank and better energy recharge come at the inevitable expense of cargo space. <br />
<br />
<br />
[[Z-ships_Porcupine|Porcupine]] - Available to player.<br /><br />
Far Arm shipyard's answer to calls for cheap but sturdy cargo hauler. Costs no more than Cobra mk. III. What you lose in looks and speed, you gain in cargo capacity and endurance.<br />
<br />
<br />
[[Z-ships_Python_Courier|Python Courier]] - Available to player.<br /><br />
Redesign of the aging space trading corner stone, Python. Python Courier is faster, has more missile slots, comes with fuel scoops fitted and at the same time retains the shape and sturdiness of the original design. Fitting all that in identical-sized frame inevitably results in slightly decreased cargo space.<br />
<br />
== Version history ==<br />
2.0 - this version, added normal maps & illumination maps, utilizing Oolite materials. Shipyard.plist also correct.<br />
<br />
1.01 - fixed a typo in shipdata.plist that caused Navy/Police Asp Explorer to have wrong scan class.<br />
<br />
1.0 - initial release<br />
<br />
== Links ==<br />
*[https://www.box.com/s/zaf8qlpktqemtpqo5qvt Z-ships v. 2.0 from Box]<br />
*[http://koti.mbnet.fi/jouniku/Oolite/Z-ships%201.0.zip Download version 1.0 of the OXP direct from Zieman's website] and apply this [http://koti.mbnet.fi/jouniku/RTstuff/Z-ships2-shipyard.zip bug fix] afterwards by unpacking the .zip & replacing the shipyard.plist in the folder ..\Oolite\AddOns\Z-ships_v1.0.oxp\Config with its content<br />
*[http://koti.mbnet.fi/jouniku/Oolite/ZOoliteOPXs.html Zieman's Oolite OXPs Website]<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=7650 BB Thread] (2010)<br />
=== Other Zieman links ===<br />
*[[User:Zieman|Zieman]]<br />
*[[Baakili Far Trader]]<br />
*[[Far Arm ships]]<br />
*[[Tin of SPAM]]<br />
*[[Zieman's Habitat Orbital Station]]<br />
<br />
<br />
{{ship-OXP}}</div>Phkbhttps://wiki.alioth.net/index.php?title=Worker%27s_Commuter&diff=83497Worker's Commuter2024-03-18T14:30:10Z<p>Phkb: Updating BB links</p>
<hr />
<div>{{Semantic Infobox ShipStats Oolite| title=Worker's Commuter<br />
|image = [[Image:Worker's_Commuter.png|250px]]<br />
|dimensions = 100 x 60 x 409<br />
|width = 100m<br />
|height = 60m<br />
|length = 409m<br />
|capacity = 300 TC<br />
|gunmounts = None<br />
|maxspeed = 0.14 LM<br />
|maneuverability = Roll: 0.40<br />Pitch: 0.30<br />
|energybanks = 6<br />
|milshields = Not available<br />
|shieldboost = Not available<br />
|hyperspace = Yes<br />
|isoxp = OXP<br />
|isplayer = No<br />
}}<br />
== Carrier of the People ==<br />
Big, blocky, unlovely. These are all words used by observers who live outside the Communist States to describe the Worker's Commuters. Large, cost-effective, efficient. These are the words used by the '''Communist Commissars''' in response to the dissenters obviously commercialistically-corrupted arguments. The Worker's Commuters are immense transport ships designed to carry hundreds of Communist citizens between their home planets and the extra-planetary stations where they work for the greater glory of the People.<br />
<br />
As common in Communist Systems as they are unknown beyond them, these vessels are built around a massive open cargo bay with floor upon floor of metal benches for the citizens to sit on. The rudimentary drive section occupies a tiny part of the aft section, while the pilot and ancilliary crew control the ship from a tiny 'bubble' cockpit at the front of the transporter. There is nothing that could be considered as luxurious in these vessels, even the life support systems are the bare minimum required to maintain the lives of the passengers.<br />
<br />
However, it is this minimalistic approach that makes the Commuter attractive to Party officials. The cost to build a single Commuter is the same as a much smaller and less efficient [[Python_(Oolite)|Python Trader]]. With a tiny engine comes a tiny powerplant, so the Commuter is almost utterly defenseless, with no capacity to mount a laser, let alone any missiles or shield enhancements. But again the Commissariate reason that a Commuter has no need to defend itself with the ever-vigilant '''People's Police''' and '''Thought Police''' [[Ray_Mk.I|Rays]] protecting the spacelanes from the Enemies of Communism.<br />
<br />
It is not known who designed the Commuter, but its prevalence in the many hundreds of Communist-controlled systems is by virtue of the '''Comoonin''', a covert Galaxy-spanning intelligence agency who work to further the Communist cause by supporting Communist sentiments in other systems' Governments (especially Anarchies and Feudals) and sharing technology between technically advanced Commie States and those that are still considered low-tech.<br />
<br />
[[File:Laeninpropaganda.jpg]]<br />
<br />
== Fiction ==<br />
A Worker's Commuter is a like a brick, only a brick is slightly more aesthetically pleasing and much much faster. I've been inside one once. It's like riding the most depressing subway in history on the same day your wife died and your dog blew up.<br />
<br />
I'd been watching this thing drift towards the station for over ten minutes, like God had taken decided to be a postman for a day, was delivering His first letter, but took a moon-sized Valium beforehand.<br />
<br />
And boring as this was, I was amazed that I was able to notice the inherent problem that was before me.<br />
<br />
"Um... mission control, this is Mossfoots Burden. I think you have a problem with your current docking flight plan."<br />
<br />
"Mossfoots Burden, all procedures are being observed. Please be advised you will be contacted as soon as it is your turn to dock. Acknowledge."<br />
<br />
"Yeah, but--"<br />
<br />
"Acknowledge."<br />
<br />
"Mossfoots Burden, acknowledging. But--"<br />
<br />
My comm signal got cut and I had just about enough time to face palm before the fireworks started. The Worker's Commuter has a very specific design shape, meant to slide into the docking bay like it was the aforementioned mailslot. Only both the pilot and the mission control had failed to note that this one was approaching it on the side, like putting a piece of bread in a toaster sideways. Nobody had set up a course correction and now...<br />
<br />
Coriolis Stations are tough cookies. It takes more than a ship splashing off it to mess up its day. And from the looks of all the pods flying off in every direction, one could only assume casualties were kept to a minimum. But without missing a beat the guy at mission control contacts my ship.<br />
<br />
"Mossfoots Burden, you are cleared for landing. Acknowledge."<br />
<br />
Communist efficiency at its best, folks. No wonder they drink so much. [https://bb.oolite.space/viewtopic.php?p=222040#p222040 Mossfoot's Tales of Woe...] (2014)<br />
<br />
[[File:Orca Worker's Commuter (GearsNSuch).png|thumb|left|300px|GearsNSuch's Orca Worker's Commuter]]<br />
[[File:Worker's Commuter cross-section (GearsNSuch).png|thumb|right|350px|Orca Worker's Commuter cross-section]]<br />
== GearsNSuch's v.2.18 variant ==<br />
The 'Orca' Worker's Commuter is a massive, inexpensive craft capable of transporting hundreds of citizens to destinations in and out of the system without much in the way of defence or speed. Although originally made in the millions, production of new craft has largely declined; most commuters are in poor, but still operable, condition.<br />
<br />
The craft was designed around two angled-gravity passenger decks (poorly made cross-section below). Probably part of some unimplemented plan to have Communist main stations with docking rails to accommodate these craft, discouraging privately-owned transportation. It would be a simple matter to gut the rows and rows of stadium bleachers, add a little too much wood trim, and create a rather nice dining establishment. A quarter-kilometer long banquet or buffet table would be in order.<br />
<div style="clear:both"></div><br />
== Download page ==<br />
This ship is part of the [[Commies]] OXP.<br />
<br />
== Links ==<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=2497 Commies OXP] (2006-date)<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=9718 Workers Commuters] (2011 - "Has anyone actually seen a Workers' Commuter ship successfully dock with a main station?")</div>Phkbhttps://wiki.alioth.net/index.php?title=What_Spaceship%3F&diff=83496What Spaceship?2024-03-18T14:29:51Z<p>Phkb: Updating BB links</p>
<hr />
<div>[[Image:WhatSpaceship.jpg|right|300px]]<br />
== Overview ==<br />
<br />
''What Spaceship?'' is the galactic leader among consumer space craft magazines, and its buyer's guides are commonly considered the most reliable performance tests in the business. Few commanders will purchase a new ship without consulting this publication.<br />
<br />
<br />
<br />
''Pimp my Cobra'': To celebrate the 60th Anniversary of the release of the Cobra Mark III, [[Cowell & MgRath]] in concert with What Spaceship? magazine engineered a competition. The competitors were given a standard Cobra Mark III and were freely allowed to modify its engines, interior space and design, exterior design and equipment. The response was so great and the standard of entries so high, that a wave of ''pimped cobras'' hit the shipyards.<br />
<br />
<br />
== Sample Issue ==<br />
<br />
'''What Spaceship?'''<br />
<br />
Our sub-ether holo-facsimile machine chugged into life this morning, and rolled out a very interesting document from one of our more reputable anonymous sources.<br />
<br />
What Spaceship is proud to divulge yet another stellar scoop: a draft press release hot off the desk of the Cowell & MgRath Shipyards, Lave, Marketing Department. Whilst we can’t reproduce the exact text of the document (protecting our sources and all that), we summarise as follows:<br />
<br />
[drum roll] It's not particularly sleek or sexy, but it will plug a very profitable gap in Cowell & MgRath's Cobra line-up (we told our stockbrokers the same thing just this morning). Humanoids, Felines, Aquatics, Insectoids, Sentient Beings of No Identifiable Species, it is: [/drum roll]<br />
<br />
'''The Cobra Mk III 'Carrier''''<br />
<br />
'''Vital statistics:'''<br />
*Space: 45TC cargo bay, that's before you fit the 15TC expansion. Standard 5TC passenger berths can also be accommodated. WxHxL is not a million miles off the original CMk3 (or is that CMk2?) hull dimensions.<br />
*Handling: 3.35LM max flight speed. Same pitch and roll characteristics as the original CMk3, thrust being on a par with the ever-popular Cobra Mk III ‘Courier’.<br />
*Armament: 3 fully configurable pylons (will you miss a fourth?), fore and aft weapon mounts (military laser compatibility only - ouch!), all other standard - and not so standard - shipyard equipment can be fitted.<br />
*Price tag: 285,000 ₢<br />
*Provenance: your guess is as good as ours - something that got left on the cutting room floor after the Pimp My Cobra competition ended? Fall-out from the Thargoid-incursion-at-Diso / nanobot episode? Or maybe even that someone in the Design department at Cowell & MgRath has actually done some work?<br />
*In showrooms from: give them a chance, they haven't even announced it exists yet!<br />
<br />
'''Our verdict:'''<br />
If trading is your bag, and your pilot and combat skills will make up for the Carrier’s little less speed and little less heat, then welcome to your new ride.<br />
<br />
'''You may also like:'''<br />
Mosquito Trader (cheaper, faster, bigger dimensions); Pelamis (2 more missile pylons, leather seats, terrible acceleration); Josher (half the price, twice the missile pylons, no military shield option); SuperCobra (dream on).<br />
<br />
'''Which Spaceship!'''<br />
Only ₢ 2.99 for a year's subscription!<br />
*''Next issue:'' Witchspace Craft - our dedicated group of work experience interns hit interstellar space to test out the latest Thargoid-hardened luxury ‘Drifter’ escape pods! Full review available through a wormhole 12,000 years from now!<br />
<br />
== Links ==<br />
*[[Energy banks]] Special Issue<br />
*[[Cobra_Mk.3_(Oolite)#Pimp_my_Cobra|Pimp my cobra competition (Cobra Mk.III page)]]<br />
*[https://bb.oolite.space/viewtopic.php?t=2182 Pimp My Cobra competion opens] BB thread July 2006<br />
*[[Xarik]] Interview with [[Derik Roh'i]]<br />
*[[Tiger Mark I]] scoop<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=6842 Which Spaceship Stop Press] (2009)<br />
*[[Iron Ass OXP|Iron Ass scoop!]] (2022)<br />
<br />
<br />
*[[Other fictitious magazines]]<br />
<br />
[[Category:Oolite]]<br />
[[Category:Fiction| ]]</div>Phkbhttps://wiki.alioth.net/index.php?title=Vortex_OXP&diff=83495Vortex OXP2024-03-18T14:29:38Z<p>Phkb: Updating BB links</p>
<hr />
<div>This OXP contains two ships: the Vortex & the Maelstrom<br />
[[File:Vortex Thumbnail.png|left]]<br />
{{Semantic Infobox ShipStats Oolite<br />
|title=Vortex<br />
|image = [[Image:Vortex_4.PNG|250px]]<br />
|width = 130m<br />
|height = 60m<br />
|length = 90m<br />
|capacity = 150 TC<br />
|capacityext = N/A<br />
|missileslots = 25<br />
|gunmounts = Fore, Aft,<br />Port, Starboard<br />Twin fore and aft plasma turrets<br />
|maxspeed = 0.45 LM<br />
|maneuverability = Pitch: 1.30 <br/> Roll: 1.50 <br/> Yaw: 1.30<br />
|energybanks = 8<br />
|energyrecharge = 5.0<br />
|milshields = Yes<br />
|shieldboost = Yes<br />
|hyperspace = Yes<br />
|isoxp = OXP<br />
|isplayer = Yes<br />
|baseprice = 2,000,000₢<br />
}}<br />
<div style="clear:left"></div><br />
<br />
<br />
==Vortex==<br />
The [[Aquatics OXP|Aquarian Shipbuilding Corporation's]] Vortex is a rare but fearsome beast. Originally designed as a military blockade runner, it combines an excellent cargo carrying capacity with the speed and muscle to cope with most trouble it may encounter. With the cooling of the Sector Wars some of these ships have been demobilised and made available to the private market (with a few of their more lethal features removed, but many desirable ones still in place).<br />
<br />
Having a military heritage, they won't feature in any glossy ship brochures or magazines of beautiful craft, but they have a heart of titanium and an ass of finest iron. They are all about function over form, and they combine a powerful punch, a heavy hauling ability and many advanced features which cannot be found in any other ship available on the civilian market.<br />
<br />
===Notable Features===<br />
* AI control - integral to each Vortex is its '''Military AI Construct''', or MAC for short. This is the vessel's co-pilot, supervisor and assistant. It oversees the automated systems, plus deals with running the general ship systems.<br />
<br />
* '''Multibay cargo system''' - specifically designed for this ship (and the forerunner of the recent civilian [[HyperCargo]] System), the multibay essentially gives the ship five distinct cargo bays of 30TC each. Whilst only one is "physically" present at a time, they can be switched both in-flight and whilst docked allowing their content to be accessed and items loaded or unloaded. Due to the specialised nature of their workings, neither the civilian Hyper Cargo system nor passenger berths are compatible with the system.<br />
<br />
* '''Missile bays''' - the Vortex features five distinct missile bays, each with five pylons. These are switchable both in-flight and whilst docked, and the current one will be auto-switched to the next equipped bay by the MAC should all items in the current bay be expended.<br />
<br />
* '''Regeneration''' - making use of the military grade version of the well-known ASC repair nanobots, under the supervision of the MAC the Vortex can regenerate most damage that may result from combat.<br />
<br />
* Defence systems - from its military history, the Vortex features a '''missile defence screen''' in the form of a hull-mounted microwave cannon. Due to the difficulty in targeting and aiming this (especially whilst in combat), it is entirely controlled by the MAC. The system will also auto-link to the ship's ECM systems if fitted, as a further line of defense.<br />
<br />
* '''Reflective plating''' - designed as a counter-measure for target-locking systems, this can cause attacking vessels problems by disrupting their target lock onto the vessel.<br />
<br />
* '''Regenerative fuel injection''' - the fuel injection systems are designed to capture any unburned fuel and return it to the ships tanks. As a result the ship can run under injection for rather longer than similar craft.<br />
<br />
* '''Emergency micro-jumping''' - if energy is drained to a critical level during combat (without destroying the ship completely) and if there is even a little fuel available, the MAC will attempt an in-system witchspace micro-jump to remove the ship from the immediate danger area.<br />
<br />
====Controls====<br />
The multibay cargo system switching screen is accessed by going from the manifest screen to the marketplace screen (F5-F8 whilst docked, F5-F5-F8 whilst in flight). When docked the cargo bay screen is displayed by default, whilst in-flight the missile bay screen is instead (they can be reached from one another). To aid usability the time acceleration factor is used to slow things down whilst the screen is open in-flight.<br />
<br />
The missile bays can also be cycled through by using the "select next missile bay" item on the equipment screen (to aid in rapidly equipping the bays). And if the final pylon is used whilst in-flight, the MAC will automatically select the next bay with equipment in it so leave the pilot to concentrate on combat and flying.<br />
<br />
All other items are automatically handled by the MAC, and do not require any intervention from the Commander.<br />
<br />
<br />
===Scooped Escape Pods===<br />
<br />
It should be noted that if you fly either of these ships and scoop escape pods, cycling the cargo bays will of course load those pods into the system. As this will effectively take them out of normal space, the link between the pod and the system-wide communications network is broken. This has the net effect that the pod can no longer report its status back to the insurance company's net, and so the pod is deemed as lost.<br />
<br />
The overall effect of this is that bounties and insurance credits for passengers in such pods are lost (although they can of course still be sold as normal slaves). If you have a particular need to cash in on such a bounty or insurance (for example for a specific mission) then the cargo bays should not be rotated whilst the escape pod is aboard the ship.<br />
<br />
===Availability===<br />
These craft were not produced in large numbers, and many of those are either still in military service or have been lost to combat. But they do appear in civilian hands (as traders, bounty hunters or combinations of the two), plus they are sometimes used by [[GalCop]] security forces. It is not unknown for privateers to use these formidable vessels when they can lay their hands on them.<br />
<br />
Their normal price tag is around 2 million credits, and they usually only appear in the most high-tech (level 12+) systems.<br />
<br />
===Compatibility Notes===<br />
This OXP is not compatible with HyperCargo, Military Fuel Injectors, the APRIL system or the system part of Repair Bots. Due to how the cargo bay system works, any additional equipment which requires the use of cargo space also cannot be used.<br />
<br />
It also slightly redefines the trunk passenger berth equipment to allow them to be blocked-out from fitting to the ship. This should not cause an issue, but is included here for information and reference.<br />
<br />
Both ships are fully compatible with cim's [[New_Cargoes|New Cargoes OXP]] as of version 1.23.<br />
<br />
Requires Oolite v1.82 to run.<br />
<br />
----<br />
==Maelstrom==<br />
{{Infobox ShipStats Oolite<br />
|title=Maelstrom<br />
|image = [[Image:Maelstrom.png|250px]]<br />
|dimensions=141.5 x 54.25 x 182<br />
|width = 141.5m<br />
|height = 54.25m<br />
|length = 182m<br />
|capacity = 3x 100 TC<br />
|capacityext = N/A<br />
|missileslots = 3x 4 pylons<br />
|gunmounts = Fore, Aft<br />
|maxspeed = 0.25 LM<br />
|maneuverability = Pitch: 1.00 <br/> Roll: 1.20 <br/> Yaw: 1.00<br />
|energybanks = 10<br />
|energyrecharge = Excellent (5.0)<br />
|milshields = Available<br />
|shieldboost = Available<br />
|hyperspace = Yes<br />
|isoxp = OXP<br />
|isplayer = Yes<br />
|baseprice = 1,750,000₢<br />
}}<br />
<br />
Version 1.20 of the OXP introduces the Vortex's sister ship, the Maelstrom. Cut from much the same cloth, this ship focuses more on hauling capacity at the expense of some of the more offense-oriented aspects of the Vortex (see above for the details). The ship is larger and slower and has lost its turrets and some of the missile pylon mounts, but in exchange offers a 100TC cargo bay, expanded using the '''Multibay''' system to an overall capacity of 300TC split across its three switchable bays.<br />
<br />
They appear less often on the market than the Vortex, as the military is loathed to part with these tough, rugged and highly capable ships. But some have made it into the civilian market, where they make ideal high-capacity freighters that can hold their own in any star system.<br />
<br />
----<br />
== OXP Details ==<br />
===Download===<br />
<br />
*Downloadable through the in-game [[Expansions Manager]]<br />
*[[Media:Vortex-1.32.oxz|Vortex v1.32]] (downloaded {{#downloads:Vortex-1.32.oxz}} times).<br />
<br />
<br />
===Links===<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=8524 Vortex OXP (plus the Maelstrom)] (2010-date)<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=18085 Mounting Big Cannons] (2016+)<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=8476 Your ideal ship] (2010) Fons et origo of the Vortex<br />
*Author: [[User:Thargoid|Thargoid]]<br />
<br />
{{ship-OXP}}</div>Phkbhttps://wiki.alioth.net/index.php?title=UPS_Courier&diff=83494UPS Courier2024-03-18T14:28:34Z<p>Phkb: Updating BB links</p>
<hr />
<div>[[image:UPS_Cargo.png|right|330px]]<br />
==Intro==<br />
In the universe there is a lot of commercial traffic. Goods and documents are transported from one solar system to another. Like transportation on Earth, a small percentage of the jobs offered are on the open market. Almost anybody can accept such free contracts provided their ship has the right cargo capacity. However, most of the lucrative transport jobs aren't offered on the open market. You have to use connections to gain such contracts.<br />
<br />
UPS is only one of the many organisations in the universe that delivers goods between planetary systems. Normally they use their own ships and pilots. On rare occasions they ask strangers to do some deliveries for them. If they do it well, the chances increase of getting more offers. Only the very skilled pilots get the best offers. UPS is present in the whole universe with business points in every solar system with a political level of Multi-Government and higher. They don't have their own combat ships to protect their transport ships, but rely on police and occasionally on unbound fighters like yourself. <br />
<br />
Earning money is hard and competition is strong in the universe. For regular transport missions UPS pays very little. If you don't find the payment enough, go to the passenger / cargo contract market, maybe there is a better offer displayed there. But bear in mind: for their regular delivery pilots UPS sometimes has very well-paying jobs to offer.<br />
<br />
==Overview==<br />
This OXP adds several random mission that run simultaneously. There could be up to 5 missions simultaneously active. The first sets of missions that are offered are mainly various transport missions. After you run enough transport missions, a series of combat jobs is offered, but the main focus of the OXP stays at friendly transports. Consider the missions as a more advanced version of the passenger / cargo / parcel contracts that are offered if you press F4 (or F8-F8 on older Oolite versions). Unlike most mission OXPs that offer a story that is only run once, this OXP will continually offer random missions, but with a low probability of appearing. You will get an end message when the last type of regular combat mission has successfully ended and nothing new can be expected. Occasionally, however, some small variations on existing missions may appear. The OXP itself never ends as long as it stays in the AddOns folder of Oolite.<br />
<br />
Most missions only work as long one stays in the galaxy where the mission is accepted. On intergalactic jumps those missions are aborted when there is no solution in the new galaxy, but a new mission will be presented soon in the new galaxy. So intergalactic jumping in the middle of a mission should do no real harm.<br />
Because of the nature of this OXP you can leave it in place and forget about it. It should be compatible with most other mission OXP's.<br />
<br />
==Difficulty Rating==<br />
"Medium". The ships appearing in the OXP are within the power-range of the standard set of ships. No new type of ships are added, nonetheless, mission ships have more often than usual the maximum shielding and firepower for their type of ship. You wouldn't need a full Iron Ass to take them on, but you should have some basic upgrades fitted such as a beam laser, fuel injectors, an energy unit and perhaps a shield booster.<br />
<br />
==Download==<br />
===Current Version===<br />
* Download [[Media:UPS_Courier.oxz|UPS_Courier.oxz]] v2.1.2 Version for Oolite 1.82+ users. (downloaded {{#downloads:UPS_Courier.oxz}} times).<br />
===Previous Versions===<br />
* [https://app.box.com/shared/klth362ola ''Download UPS Courier v 1.8.4''] Version for Oolite 1.75+ users. (Will only work with 1.75 and upwards.)<br />
** Feedback/comments on v1.8.4 can be found at this [https://bb.oolite.space/viewtopic.php?t=3814 BB Link].<br />
* Older versions: [[Media:UPS-courier_v1.4.3.zip|''Download UPS Courier v 1.4.3'']] Version for Oolite 1.65 only.<br />
<br />
==Important Change for Oolite 1.77 users==<br />
Until Oolite 1.76, the courier reputation was the same as Oolites own reputation for Cargo contracts. Both increased the same counter. But, as Oolite 1.77 introduces Parcel contracts and a reputation counter for it, it seemed logic to use that counter because of the resemblance between parcel and UPS contracts. (Small deliveries that don't take cargo space.) As a result, any build up reputation is lost and the player has to start building a reputation again. Doing a lot of the native Oolite parcel missions will help in this.<br />
Also make sure you only use version 1.8.2 or higher. There is a bug in all previous versions making you loose important equipment during one of the mission when playing with Oolite 1.77 or newer.<br />
<br />
==Installing and Playing==<br />
===Version 2.x===<br />
To install the OXP, use the in-game download manager to install. Alternatively, you can manually download the OXZ file (linked above) and place it in your AddOns folder (no unzipping required).<br />
===Version 1.x===<br />
To play the OXP, unzip the download file. This will create a folder named "UPS-Courier V1.x.x". Open this folder and you will see a folder named "UPS-Courier.oxp" and a readme. Move the UPS-Courier.oxp folder to AddOns. As with all OXPs, it's the folder ending in .oxp that you need to put in Oolite's AddOns folder, otherwise Oolite will not read it.<br />
<br />
==Update Notes==<br />
*Version 2.1.2<br />
**Fixes for improved integration with the [[Bounty System]] OXP.<br />
**Made compatible with [[Market Script Interface]] oxp.<br />
*Version 2.1.1<br />
**Small correction to a comms message in the fuel leak AI.<br />
<div class="mw-collapsible mw-collapsed" data-expandtext="Show older" data-collapsetext="Hide older" style="overflow:auto;"><br />
*Version 2.1.0<br />
**Changed slave satellite radar to be a variant of Rorschachhamster's spy satellite.<br />
**Added missing dock to ground radar definition to fix communications between radars. <br />
**Made Snoopers optional, and made use of the new GNN OXP (if installed).<br />
**Mission text updates<br />
**Spelling/grammar corrections.<br />
*Version 2.0.8:<br />
**Fixed issue with Sun Stations not being recognised as dockable stations.<br />
*Version 2.0.7:<br />
**Added chart marker cleanup routine.<br />
*Version 2.0.6:<br />
**Changed ship naming convention used on Solar Shuttles.<br />
**Hopefully stopped issue of mission completion screens being displayed more than once.<br />
*Version 2.0.5:<br />
**Small changes to some beacon labels in shipdata.plist.<br />
**Added additional entries to save game data.<br />
*Version 2.0.4:<br />
**Added code to prevent missions to unreachable destinations.<br />
**Displaying a mission destination on a system map will no longer reset the current hyperspace destination.<br />
**Small adjustments to missiontext items.<br />
*Version 2.0.3:<br />
**Really fixed errors in slave market adjustment code.<br />
*Version 2.0.2:<br />
**Added new texture for Solar Researcher, provided by Keeper.<br />
**Added role-categories.plist file to replace the "pirate-victim-roles.plist" file.<br />
**Converted demoships.plist file to OpenStep format.<br />
*Version 2.0.1: Update by phkb<br />
**Removed legacy script that added AstroFactories after launching.<br />
**Removed code relating to pre-1.77 versions of Oolite. Minimum version now 1.82.<br />
**Fixed Javascript error in slaves market adjustment code.<br />
*Version 2.0: Update by phkb<br />
**Updates to ship/container models to better fit with the Griff models post-Oolite 1.80.<br />
**Switched Black Box to be the same as cim's Black box from Rescue Stations.<br />
**Added screenID's to all mission screens.<br />
**Update to UPS mission screen overlay image.<br />
**Spelling/grammar corrections in missiontext.plist and descriptions.plist.<br />
**Update of market data to work with newer system post-Oolite 1.82.<br />
**Converted readme.rtf to txt file.<br />
**Bug fixes.<br />
*Version 1.9: Update by spara<br />
**For compatibility with various shipsets, all references to core models have been removed and replaced with like_ships.<br />
**Ships<br />
***For compatibility, removed special exhausts<br />
***Replaced oxp specific boas and python with like_ships<br />
***Unified ship naming overall and updated to use randomshipnames oxp, if present.<br />
***Updated escorts to use escort formations oxp, if present<br />
**Asteroids<br />
***No more custom asteroids in missions. Uses any available asteroids now.<br />
***Special splinter models are now re-textured Griff models. Corrected to work with Ore Processor's scan function.<br />
**Stations<br />
***Solar research station is replaced with a turretless Kiota Solar station, if present.<br />
***Pirate bases are replaced with Griff's hermit, if present<br />
**Other<br />
***Fixed black box to work correctly with Griff's barrel<br />
***Metal plates normal mapped by Keeper<br />
***Ground radars enhanced with normal & emission maps<br />
***Fixed ground radars from being stations with docking possibilities<br />
* version 1.8.3: Fixed bug with python mission were you got no reward for captured pirates.<br />
* version 1.8.2: Fixed an equipment bug.<br />
* version 1.8.1: Fixed a bug in 1.8.0 were missions did not start or end correct.<br />
* version 1.8.0: Added oolite 1.77 support. Raised minimum Oolite version to 1.75.<br />
* version 1.7.12: Fixed some more string bugs that only will give problems after Oolite 1.76.x.<br><br />
* version 1.7.0: Changed minimum version to 1.74.<br /><br />
* version 1.6.0: Raised minimum Oolite version to 1.73.<br /><br />
* version 1.4.3: Last version for 1.71 and 1.65 users.<br /><br />
* version 1.4.0: First version adapted to Oolite 1.71<br /><br />
* version 1.3.8: Final version for 1.70 users<br /><br />
* version 1.3.4: Some ships now have a Java Script<br /><br />
* version 1.3.3: All mission series are translated to Java Script<br /><br />
</div><br />
<br />
== Links ==<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=3907 How to find stolen cargo in UPS mission?] (2007)<br />
<br />
==Quick Facts==<br />
{{OXPLevel|1|3}}<br />
[[Image:IconGNN.png|48px|right|link=GNN|alt=News items displayed through GNN]]<br />
{{Infobox OXPb| title = UPS Courier<br />
|image = [[image:UPS_Cargo.png|right]]<br />
|version = 2.1.2<br />
|release = 2023-10-12<br />
|features = Adds courier missions<br />
|license = (C)2007-2013<br />
|category = Missions OXPs<br />
|author = [[User:Eric Walch|Eric Walch]], [[User:spara|spara]], Keeper, [[User:phkb|phkb]]<br />
|download = [[#Overview & Download Link|See Download Link]]<br />
|feedback = [https://bb.oolite.space/viewtopic.php?f=4&t=18520 BB-Link]<br />
}}<br />
== Gameplay and Balance indicator ==<br />
[[File:Tag-colour-orange.png]]</div>Phkbhttps://wiki.alioth.net/index.php?title=Torus_Drive&diff=83493Torus Drive2024-03-18T14:28:02Z<p>Phkb: Updating BB links</p>
<hr />
<div>== Torus Jump Drive ==<br />
<br />
The so-called '''Torus Drive''', also known as a '''flux distortion drive''' or simply a '''Jump drive''', physically changes the inertial mass of an object by projecting a gravitic field around it. This means that any vessel fitted with one can achieve an insanely higher speed than normally achievable with the system drive - depending on proximity of other gravitatinal objects (see https://bb.oolite.space/viewtopic.php?p=275096#p275096). The downside of this is that the ship is vulnerable to collision with asteroidal bodies that penetrate the gravitic field. The field itself is disrupted by the passage of other system drives within the field, resulting in the vessel being 'dumped' back into normal space. [[Masslock]] interferes with the operation of this drive.<br />
<br />
The standard control for activating or deactivating this drive is marked <font color="Red">'''j'''</font> on the astrogation console.<br />
<br />
The Torus drive does not use any fuel (unlike the Witch fuel injectors if installed). It is the second of the three drives installed in the standard Cobra Mk III (with the slower Engine/Main Drive and the faster Witchspace drive/Hyperspace drive).<br />
<br />
=== Speed ===<br />
Speed changes whilst in Torus Drive, depending on proximity to large powered bodies such as stars, planetary bodies, other ships, and large stations. <br><br />
Note that only a handful of the newer HUDs indicate changes in speed whilst in Torus Drive. These include the [[Vimana HUD]] and the [[Deeper Space HUD]].<br />
<br />
=== Guide to the Perplexed: Inhibitions ===<br />
The Torus Drive and the Witchspace drive/Hyperspace drive work differently. The Torus drive is inhibited by [[Masslock]]: the disabling of the Torus Drive by the presence of '''mighty mass''' (not an asteroid or Rock Hermit, but rather a powered ship, or something "massier") in the vicinity. It is an inheritance from Classic Elite. Since this is the fastest method of travel ''within'' a star system, masslock can slow travel down greatly.<br />
<br />
This is not to be confused with the negation of witchjump/hyperspace jump due to proximity to a '''massive mass''' such as an orbital station, planet, star or a moon. The confusion is easy enough to fall prey to, because the massive masses inhibit both! <br />
<br />
== Links ==<br />
=== OXP's: Operation ===<br />
*[[Bullet Drive]] by Wildebloode causes one to only travel in a straight line and disallows manoeuvering<br />
*[[Shaky Drive]] by Astrobe causes one to wobble infuriatingly when the Torus Drive is employed<br />
*[[TorusToSun|Torus to Sun Drive]] by [[User:Norby|Norby]] vastly increases the speed of the drive (especially when weapons are disarmed)<br />
*[[Breakable 'Standard' Equipment OXPs|Breakable Torus Drive]] allows your Torus Drive to be disabled by a direct hit in combat<br />
<br />
*[[Synchronised Torus OXP]] by [[User:Fritz|Fritz]] for synchronising your Torus drive with those of others.<br />
<br />
*[[SOTL Altmap]] by [[User:Cim|Cim]]: an alternative game where the NPCs also have rather scenic Torus Drives!<br />
:And [https://bb.oolite.space/viewtopic.php?p=284247#p284247 Cim's musings] on the necessary changes to NPC AI resulting from this (2022)<br />
*[[FarPlanets]] by [[User:Norby|Norby]] introduces '''Micro-G Torus equipment''' & '''FTL Torus equipment''' to cope with the immense distances.<br />
<br />
=== OXP's: Masslocking ===<br />
*[[VariableMasslock|Variable Masslock]] by [[User:Norby|Norby]] reduces the masslock radius depending on the mass of the ship<br />
*[[Masslock Compensator]] by [[User:Redspear|Redspear]] passive (neutral) masslocks are less inhibitory than active (combative) masslocks.<br />
*[[Traffic Redistributer]] by [[User:Redspear|Redspear]] changing the speeds of different ships helps reduce mass-lock<br />
<br />
=== OXP's: Fuel ===<br />
*[[Hard Way]] by [[User:Stranger|Stranger]] causes the Torus to use up [[Quirium]] Fuel which can be replenished by scooping [[Solar Wind Flux]].<br />
:This oxp also clobbers yaw and pitch, reduces shield strength to 25%, requires [[maintenance]] and is part of the [[Strangers World]] suite of OXP's.<br />
<br />
=== Handwavium ===<br />
*[https://bb.oolite.space/viewtopic.php?p=274654#p274654 Discussion on why Torus drives (inter-alia) use no energy/fuel] (2021)<br />
*[https://bb.oolite.space/viewtopic.php?p=284142#p284142 Discussion on why NPC's never use Torus Drives] (2022 - runs for several pages)<br />
<br />
=== The Dark Side ===<br />
*[https://bb.oolite.space/viewtopic.php?p=284247#p284247 Cim's musings on giving NPC's the Torus drive] (2022)<br />
<br />
{{NavBox - Oolite Equipment}}[[Category:Equipment]]</div>Phkbhttps://wiki.alioth.net/index.php?title=Time&diff=83492Time2024-03-18T14:27:47Z<p>Phkb: Updating BB links</p>
<hr />
<div>[[File:Date 3.png|right]]<br />
== Oolite game time ==<br />
The ship's clock is started at a defined value (PLAYER_SHIP_CLOCK_START) plus the current time of day. It is stored as a double precision number.<br />
<br />
PLAYER_SHIP_CLOCK_START is defined as 2084004 * 86400<br />
<br />
86400 is the number of seconds in a day, so the clock itself stores seconds since a (presumably arbitrary) epoch. 2084004 is the number of days since this epoch. This means the epoch starts 5705 (Earth) years before Oolite starts. ''Winston''<br />
<br />
'''2084004 is 1st Jan 3015'''<br />
<br />
So.. 0000000 is sometime around 2690BC<br />
<br />
2690BC Standout moments:-<br />
<br />
Chinese begin silk manufacture.<br />
Egyptians construct the great pyramid of Cheops.<br />
Ibusaki volcano erupts in Japan creating enormous caldera (VEI 5).<br />
<br />
But I think I'll plump for the great Pyramid. ''Aegidian''<br />
<br />
The above quotes are from [https://bb.oolite.space/viewtopic.php?f=2&t=1252 The Clock] (2006)<br />
<br />
=== First view ===<br />
[[User:Aegidian|Aegidian]]'s above: the date indicated by your ship's clock (2084004 * 86400) is '''1st Jan 3015'''<br />
<br />
=== Second view ===<br />
[[User:Selezen|Selezen]]'s: the date is '''21st March 3142''' (based on dates given in [[The Space Traders Flight Training Manual]]) and others culled from [[Frontier]] etc. One major determinant is Commander Jameson from [[Classic Elite]] gifting a ship to his grandson in Frontier (which is dated at 3200).<br />
3015 is too early though - the Cobra Mk 3 doesn't enter service until 3100. ''Selezen's critique of Aegidian'' - see "The Clock" link above.<br />
<br />
=== Third view ===<br />
[[User:Cim|Cim]]'s: the date is '''5709 years''' after the Birds & Frogs of Galaxy 6 first communicated with each other! Based on his reasoning in [https://bb.oolite.space/viewtopic.php?f=11&t=17671 "Not in the manual" - setting and canon in the eight charts].<br />
<br />
=== Fourth view ===<br />
Disembodied's: Time is relative to the ''system'' you are in:<br />
{{QuoteText|Text=You could put the every year/every four years thing down to an inevitable confusion about what "year" means to a Tiaredi. Common parlance in the Co-operative defines "year" as being one orbit of a planet around its star; however, to the average Tiaredi, a "year" actually means four orbits, due to the synodic cycle of the planet Tiared and the system's major gas giant. To avoid confusion, a four-orbit period should be called a Year, with a capital Y, or (better) a Great Year. Naturally, this does not actually avoid confusion.|Source=([https://bb.oolite.space/viewtopic.php?p=274875#p274875 Disembodied on the 4-yearly or annual Zero-G hockey Galactic Cup])}}<br />
<br />
<br />
== Time in Hyperspace/Witchspace Tunnels ==<br />
Since the ship's energy banks & shields do not recharge in the tunnel - and neither do the laser or cabin temperatures change, it has been argued that this proves that time does not pass there - even though it may take a couple of days to journey 7ly from an external perspective (and hence the ship clock has to re-adjust). There are arguments against this, that time passes normally and one thus avails oneself of the ship facilities in this time. See the links to the Oolite BB below for more details.<br />
<br />
== Time in Stations ==<br />
*It would seem that docking and launching are instantaneous. Whilst docking is, launching silently adds 10 minutes to your clock! And using the waltzless setting on the Docking Computer adds yet another 20 minutes... <br />
*Work in the [[F3 page (ship outfitting)|ship's chandlery]] also adds time, as displayed there.<br />
*Loading/unloading cargo does not do so in the [[Vanilla game]], but the Cargo_Handling.oxp takes care of that.<br />
*Various of the activities offered by [[Life in the Frontier]] also take time.<br />
<br />
----<br />
== OXPs ==<br />
*[[Useful MFDs]] shows the time in the more usual format, but starting from 21st March 3142 (to fit in with Selezen's timelines!). It ''can'' be tweaked.<br />
*[[Diplomancy]] by Commander Day - buy time-limited visas for visiting system stations<br />
<br />
*[https://app.box.com/s/9rz2f16e3ohulnke0mk42d9lbylyq791 Cargo_Handling.oxp] by [[User:Phkb|Phkb]] (2018): Loading/unloading cargo now takes time<br />
<br />
=== Meta-gaming OXP's===<br />
*[https://bb.oolite.space/viewtopic.php?p=280118#p280118 Scriptable Pause] by [[User:Astrobe|Astrobe]] (2017): Pauses your game while you take a break if your ship encounters a "Red Alert" situation<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=12439 Penalize Death.oxp] Making death hurt (2012). By Spara.<br />
<br />
== Links ==<br />
*[[HUD]] - to see where the ship's clock is on the viewscreen!<br />
<br />
*[https://bb.oolite.space/viewtopic.php?t=1336 Witchspace Time Expansion] - includes Aegidian's comments on the creation of the clock (2006)<br />
<br />
*[[History]] for Cim's history.<br />
*[[Lore]] for the conceptual differences between Selezen's & Cim's approaches.<br />
*[[Oolite timeline]] for Selezen's and Cim's histories.<br />
*[[Time scales in Oolite]] for programming notes.<br />
<br />
*[https://bb.oolite.space/viewtopic.php?p=275195#p275195 Debate] on time passing in witchspace tunnels (2021).<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=9993 Debate] on time passing in witchspace tunnels (2011).<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=21094 Stranger's Essay] on Economics & Trade contains some notes on the time needed for docking and loading cargo (see the Volume of Trade section).<br />
<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=5577 Poll: How long (game-time) have you played Oolite?] (2009)<br />
<br />
*[[Distance (Oolite)]]<br />
*[[Light Mach]]<br />
<br />
=== The Dark Side ===<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=3333 Changing the clock using an OXP] (2007)<br />
*[https://bb.oolite.space/viewtopic.php?f=6&t=18056 Disabling the "adjusting" comment] when one comes out a jump, for example (2016)<br />
*[[Oolite JavaScript Reference: Clock]]<br />
<br />
[[Category: Lore]] [[Category:Help pages]] [[Category:Concepts]]</div>Phkbhttps://wiki.alioth.net/index.php?title=The_Eight&diff=83491The Eight2024-03-18T14:27:26Z<p>Phkb: Updating BB links</p>
<hr />
<div>The '''Eight Charts''', the '''Eight Galaxies''', the '''Eight Systems''', the '''Eight Sectors''', the '''Eight Octants''', the '''Octagon'''.<br />
<br />
For the issues related to moving between the Eight (where in the next chart do you actually end up?) see [[Galactic Hyperdrive]].<br />
<br />
[[File:Galaxy01O1.png|800px|thumb|right|Santaari: the first chart/galaxy/system/sector/octant]]<br />
[[File:Legend-O.png|thumb|right|Map Legend]]<br />
== Names of the Eight ==<br />
*[[Sector1/Index|G1]] Santaari<br />
*[[Sector2/Index|G2]] Colesque<br />
*[[Sector3/Index|G3]] Lara’tan<br />
*[[Sector4/Index|G4]] Angiana<br />
*[[Sector5/Index|G5]] Proximus<br />
*[[Sector6/Index|G6]] Sol / Solans<br />
*[[Sector7/Index|G7]] Jaftra<br />
*[[Sector8/Index|G8]] Xrata<br />
:(taken from the [[Archimedes Elite|Archimedes]] version of [[Classic Elite]]).<br />
<br />
=== OXPs ===<br />
*[[Galaxy Names OXP]] by [[User:Wildeblood|Wildeblood]] - also downloadable through the in-game [[Expansions Manager]] (an Ambience .oxp): puts the galaxy names onto the F6 screen.<br />
*[[Distant Realms]] by [[User:Wildeblood|Wildeblood]] puts regional names (Old Worlds, Pulsar Worlds, Xexedi Cluster ''etc'') on the F6 screen<br />
*[[The Galactic Almanac OXZ]] by [[User:LittleBear|LittleBear]] also names the galaxies.<br />
<br><br />
*[[Galactic Misjump OXP]] - what happens if you misjump between galaxies? By [[User:Cim|Cim]].<br />
<br><br />
*[[The Traders Almanach]] - see bottom of that page: trading tips for Galaxy 1. Another book for the [[Ship's Library OXP]].<br />
<br />
* [https://bb.oolite.space/viewtopic.php?f=4&t=20670 Dangerous Galaxies] (Erick Costa 2020) changes politics in galaxies so that Galaxy 1 is more Corporate, and as one moves to Galaxy 8 they become more Anarchic.<br />
<br />
*See [[Maps]] for links to more OXPs<br />
*See [[Geography]] for geographical differences between the eight, and oxp's which enhance the differences<br />
<br />
==== List of OXP's relevant to specific Galaxies ====<br />
:'''Galaxy 2'''<br />
*[[BlackjacksBullion OXP]] mission<br />
*[[Ionics]] mission - flavours the northeast corner<br />
:'''Galaxy 3'''<br />
*[[Aquatics OXP]] - flavours [[Sector3/Ribiara|Ribiara]], adds ships, but also adds in one of the Wonders of the Ooniverse!<br />
*[[Curse of the Black Sunspot]] mission<br />
*[[Skrounk All-Stars Limited]] - ships<br />
*[[TCAT OXP|To Catch A Thargoid (TCAT)]] mission<br />
:'''Galaxy 4'''<br />
*[[Deposed]] mission<br />
*[[Love Cats]] mission - flavours [[Sector4/Teance|Teance]]<br />
*[[Trident Down]] flavours the galaxy<br />
:'''Galaxy 5'''<br />
*[[Coyote's Run]] mission - flavours the north-east corner<br />
*[[Koneko Industries]] - ships<br />
*[[Resistance Commander]] mission - flavours the southern edge<br />
:'''Galaxy 6'''<br />
*[[Draven OXP]] - ships & station<br />
:'''Galaxy 7'''<br />
*[[The Assassins Guild OXP]] - flavours the entire galaxy: missions, but also adds in prisons, courts, changes systems, '''etc'''.<br />
:'''Galaxy 8'''<br />
*[[Iron Raven]]<br />
:'''Galaxies 2-8''' - flavours the entire galaxy<br />
*[[Thargoid Wars]]<br />
*[[Xeptatl's Sword]] starts in G5, space opera mission<br />
<br />
Note that there are enough [[:Category:Retextures OXPs|Retexture OXPs]] to have different-looking vanilla game ships in each of the Eight<br />
<br />
----<br />
<br />
== The problem: Are they really galaxies? ==<br />
<br />
*What ''are'' they? Are they ''really'' galaxies? Or just charts? Or ...<br />
<br />
*Why do we need a special contraption (Galactic Hyperdrive - one way only, one use only) to bounce between them?<br />
<br />
*How do they relate to Sol/Earth which nowhere appears in them?<br />
<br />
== Solutions ==<br />
<br />
=== [[Lore|Syncretist]]: [[User:Selezen|Selezen]] (2007) ===<br />
The 8 galaxies are all small clusters of planets spaced pretty far apart around the galaxy.<br />
<br />
The [[Galactic Hyperdrive]] is a device that creates a hypertunnel branch to existing 'wormholes' in the hyperspace realm that lead directly to these sectors, which is why you have to go through them in order. These wormholes have a sort of 'current', meaning that a ship can only travel through them one way. A lot of time and effort was put into making sure that there was a way to get back to Galaxy 1 before making it a common occurrence.<br />
<br />
The reason they are colloquially known as Galaxies is that when the first wormhole was discovered, the chappie that went through reported back that all the constellations and worlds were different. His first hypothesis was that the wormhole led to another galaxy, and so they were labelled Galaxies. It would be another hundred or so years until anyone worked out that these areas were actually star clusters in the same galaxy, but by then the name had kind of stuck.<br />
<br />
=== [[Lore|Purist]]: [[User:Cim|Cim]] (2014) ===<br />
<br />
Within the Eight, the birds and frogs first communicated at the speed of light at the later assigned date of 0KD. (( kilodays: one cimian kiloday is around 10% shorter than 3 modern years - assuming that the Oolite day is similar to the modern day) .<br />
<br />
It is likely that the Human Colonials were the first to discover the witchspace drive from their home far outside the Eight around 500KD, with the other species doing so between then and 900KD. The birds and frogs finally met in 814KD.<br />
<br />
Other than the birds and frogs all the species evolved in different charts, and found no evidence of other species in nearby systems.<br />
<br />
The Human Colonials entered Chart 2 around 830KD from the north of the Tezaeded system from hundreds of light years away. They settled Tezaeded and Onatbeza. They already had some hundred or so colonies outside the Eight (in an area much larger than that of the Eight). Around 920KD the system linking Tezaeded to Colonial Space drifted outside the 7LY limit, cutting off the Colonials in the Eight from their homeworld and their other colonies.<br />
<br />
Around 930KD researchers in Inera discovered the Octagon and managed to send a probe around it in 1020KD. Crewed scouts followed soon after from both Tionisla and Inera.<br />
<br />
Co-operation between species enabled settlement of worlds uninhabitable by the galaxial residents but settleable by other species. In 1117KD the Felines and Insects declared war on each other leading to tens of millions of deaths with the bombardment of the Ataneris colony. The conflict escalated until 1118KD when the frogs and the birds imposed a blockade and prevented the Felines crossing Chart 6 to get rescue Ataneris. They simultaneously forced the attacking insect armada to retreat.<br />
<br />
The United Species Treaty was signed in 1134KD establishing the joint Interspecies Assembly. A Little later, the Colonials in Gerebeid declared independence from the Colonial government, protesting at the waste of resources in trying to reconnect with the Colonial homeworld, and changed its species description to humanoid. It was not until 1389KD that they and numerous others were given representation on the Assembly.<br />
<br />
One of the conditions of the Treaty was the establishment of joint colonies to encourage co-operation, and hundreds were founded between then and the end of the Interspecies Assembly. It was also at this time the modern Calendar was agreed using the Colonial standard day as the “Day”, and 0KD agreed as its start. <br />
<br />
::Abstracted from Cim's history in [[History]].<br />
<br />
=== On one-way travel between The Eight ===<br />
<br />
[[User:Cody|Cody]]'s Theory:<br />
<br />
{{QuoteText|Text= Eight small globular clusters co-orbiting a dormant Super Massive Black Hole (SMBH), the proximity of which dictates how one can travel between octants.|Source=([https://bb.oolite.space/viewtopic.php?p=272868#p272868 Cody (2020)])}}<br />
<br />
[[User:Stranger|Stranger]]'s Codicil to Cody's Theory<br />
{{QuoteText|Text= It is hard to imagine such an arrangement in common space - a SMBH must be extremely huge to prevent ripping stellar clusters with tidal forces. But if we assume a fast-spinning SMBH with a passable wormhole in witchspace, connecting eight distant regions... hmm, it can explain the one-way Galactic Hyperdrive route!|Source=([https://bb.oolite.space/viewtopic.php?p=272878#p272878 Stranger (2020)])}}<br />
i.e The direction of spin determines the direction of travel within The Eight.<br />
<br />
A_C in the significance for the game:<br />
<br />
Need to be careful here with reverse galactic jumping. We have had a similar discussion on the internal devs googlewave some time ago and although we had code ready to commit for it, we decided to not go ahead. Jumping to a new galaxy is supposed to be quite an event and making it possible to backtrack takes away the event's importance. Additionally, the main reason for clearing one's criminal record disappears the moment you enable backwards galactic jumps, because in that case, if I want a quick way to clean legal status without changing my present situation, I can jump backwards then forwards and return to my original system without the criminal tag. So, although this might be an idea for moving efficiently through 40 or so galaxies and is exciting at first glance, it does have its side effects on gameplay. [https://bb.oolite.space/viewtopic.php?p=105356#p105356 another_commander] (2010)<br />
----<br />
<br />
== The Problem of our missing planet Earth ==<br />
Some proposed solutions:<br />
*Earth (Sol) is the seat of the (FFE/FE2) Federation. As such, GalCop would have 'blanked' it from the GalCp-controlled Witchspace Beacon network. If there isn't a beacon, there isn't anything for your navigation computer to 'lock-on' to, as happened with Achenar (seat of the Duvalian Empire) and it's aligned systems.<br />
*Earth is subject to a 'preservation order', since it was being trampled so badly by extraterrestrial tourists wanting to see the 'Birthplace of Humanity' that some part of [[GalCop]] shut down the Beacon and declared Earth off-limits to non-official business.<br />
*Earth is a dead world. After effectively wiping each other out in an almighty 'War to End All, Well, Everything' there wasn't anything left. No cities, no forests, no oceans, no life. Since there was nothing of economic value, it was left and the Witchspace Beacon was removed and a footnote left in the annals of history, ''this is what happens when people stop talking to one another''. Captain Hesperus (2007)<br />
<br />
=== [[Lore|Syncretist]]: Selezen (2010: from [https://web.archive.org/web/20101008045456/http://elite.hughesd.co.uk/ Wayback Machine]) ===<br />
<br />
SO WHAT ACTUALLY HAPPENED THEN? – CONCLUSIONS<br />
Now comes the whole point of this discussion – try to formulate a completely accurate theory as to why Earth was not in Elite without compromising any of the data available.<br />
<br />
In order to do this, we have to use several assumptions gleaned from the empirical evidence above. These are:<br />
<br />
*Political reasons prevented GCW from listing Federal or Imperial planets on galactic maps.<br />
*The 8 galaxies are 8 separate areas of our galaxy linked by stable wormholes.<br />
*Planet names were replaced by system names when GalCop ceased to exist.<br />
*The Old Worlds are already noted on the galactic maps by their system names<br />
<br />
Note the date mentioned as the in-service date for the MC15 Transporter. It is listed as prior to 2500, but an exact date is unknown. The prototype is known to have originated from Sol, but it is now manufactured by a company called Lakon Spaceways. So it is not made by the Federation, but it was designed by them.<br />
<br />
We can then assume that the worlds of GalCop split away from Federation control around 2500. However, according to information from the novella Imprint, the Galactic Co-operative of Worlds was not ratified until 2696.<br />
<br />
As to the matter discussed above of GalCop being unaware of the existence of the Feds and Imperials, this simply cannot be the case. Earth is only 20 light years away from the upper edge of GalCop space, and there is not enough space there for there to be anything of major consequence blocking them off. A war zone would not be likely due to the fact that Feds and GalCop would both be involved in the conflict, with the area being so close to Earth. Add to this the fact that Achenar falls within the GalCop map for Gal1. There is no way of twisting or turning the map enough to get Achenar out of the way. Hence, Achenar is there – like it or not.<br />
[[File:Phantorgorth's musings (species vs galaxies).png|640px|thumb|right|Phantorgorth's musings on species vis-a-vis galaxies (Nothing to do with Selezen!)]]<br />
The Galactic Federation (or GalFederation) is mentioned a few times in the manual, so we know from this that GalCop is aware of the Federation and vice-versa, since 2845 saw the publication of a treatise on the Federation itself – so GalCop are obviously watching and commenting on their neighbouring organisation. This raises the original question again – where is Earth in Elite? It can be surmised that Earth is still around, it is just impossible to travel to it. The knowledge that both Federation and Empire require payment of a huge fine to allow pilots starting at Lave in Frontier to dock at any of their stations would point to some sort of conflict – possibly a political upheaval or cataclysmic event that resulted in those affiliated with GalCop being banished or exiled from Federation / Empire space.<br />
<br />
With all this in mind, it can be said that the worlds that would one day become GalCop have voluntarily seceded from Federation or Imperial influence as of 2500 or so and may instigate a policy of non-contact. Their technology would in this case diverge from that of the Federation. The 11 worlds included in Frontier from Elite are referred to in Frontier’s Gazeteer as the Far Colonies. That may be the identity the seceding worlds chose for themselves. The absence of Sol and Achenar systems from the Gal1 map can be explained by the fact that these worlds would not be included on the Gal1 map due to the policy that non-GCW worlds are not listed on the standard star-charts (reference The Dark Wheel for proof of this).<br />
<br />
In conclusion, we can assume that 2500 to 2505 saw the secession, under extreme prejudice, of the Far Colonies from the Galactic Federation. Open hostilities and conflict soon result in a blockading of the area. The Far Colonies, during their expansion, enlist the aid of several alien species local to the area in defending against Federation incursions. This ends with the Federation imposing an exile order, based on irrefutable charges and evidence of high treason against the Federation and Mankind, on any citizen or inhabitant of the Far Colony Expansion zone.<br />
<br />
Sometime early on between 2505 and 2696, the other seven galaxies were discovered, and the inhabitants of the Far Colonies expanded onto these areas. At the time of first discovery, these areas of space were thought to be separate galaxies, but it was soon discovered that the seven other zones were far-off areas of our own galaxy. By then the moniker ‘galaxy’ had become commonplace, so it remained in use.<br />
<br />
In 2696 the Far Colony expansion programme reached the stage where a more diverse administrative body was required to maintain order within the area. The Galactic Go-operative of Worlds charter was passed.<br />
<br />
The date of Commander Jameson’s death is taken from the manual of Frontier, and from this we can work out the approximate time that Elite is set, since Jameson is obviously intended to be the Jameson from Elite save-game fame. Since Jameson probably devoted a few years to the pursuit of Elite status, we can assume that he started a family relatively late in life, say around 25-30 years old (assuming that he started his space career at about 20 years old). Given that he is presenting a ship to his grandchildren, we can assume that space flight is a family tradition, so we can assume the same about his children – they started families at around 25-30 years of age. Assume the grandchild represented in Frontier is about 20. That gives us about 70-80 years passing between the start of Elite and the start of Frontier. Using this logic, we can say that Elite is set around 3125.<br />
<br />
As a side note, several things were changed when versions of Elite were ported to more advanced computer systems such as the Archimedes, Amiga and Atari ST. These could be thought of as representing the changing technology (such as the more advanced docking computer, improved sensor resolution etc.) and thus the advance of time. Dodo stations also make more regular appearances, hereby signifying that time has gone on as space stations are a little more time-consuming to replace (think about relocating six square kilometres worth of people and equipment for a start…)<br />
<br />
For these reasons, I think of the 16 bit versions of Elite as representing a further 8-10 years of technological evolution. Hence, Amiga Elite (which was the particular version I owned) could be set around 3134.<br />
<br />
We can also extrapolate the approximate time frame of the Dark Wheel novella from this (using logic that is a little more fuzzy, but grounded in the available evidence). The Faraway system mentioned in TDW is not represented in the game. The Faraway system involved a lot of careful positioning of ships to ensure correct hyperspace transit. This does not happen in the game, so we can say that a superior system has superseded the Faraway system. Hence TDW takes place a little before the game.<br />
<br />
TDW mentions Mamba fighters, so it is obviously set after 3110 (the in-service date for the Mamba). The universe of Elite is quite advanced technologically, so I have surmised that some sort of computer control system was developed to take care of the hyperspace navigation problems and misjump issues. Upgrades of this sort could be carried out on each ship that docks at a station probably within a couple of days (including waiting time), so there really is not much to add. I would say five to ten years before the Faraway system was phased out. Hence, Dark Wheel is set between 3115 and 3125 – I tend to favour the earlier time. My preferred year for the start of TDW (the destruction of the Ophidian vessel and the death of Jason Ryder) is 3115.<br />
<br />
Moving on, we have to start wondering when the transition from GalCop to Federation / Empire began. By the time of Frontier everything has changed. Shields are a different technology. Energy cells are no longer used for power, laser technology has radically altered, vessels are now a modular design, navigation systems are different (reflecting the change in the games’ flight engines) and space is blue! Not to mention the fact that the only planet / system names to remain the same are the 11 systems around Lave.<br />
<br />
Obviously a larger time frame is needed for these changes to take effect. Given that players of Elite would have played it a lot since its release, I’ve decided to use a little real-world time in this decision. Elite came out in 1984. It is now 2002. 18 years have passed in real-time. So, we will use 18 years as the amount of time from the start of the game (worked out above to be 3125) until the point where things start to change. That does not leave a lot of time for those who only discovered Elite on the 16 bit versions, so we will add it to the start of the 16 bit generation, 3133.<br />
<br />
Hence, the chain of events bringing the worlds of GalCop back to the body of the Galactic Federation occurs around 3153.<br />
<br />
And that pretty much sums it all up! From the information above a mostly complete picture of the Elite Universe from the earliest mentioned date to the start of Frontier can be put together. All of the unanswered questions about the changes between Elite and Frontier are dealt with, and we finally have a completely integrated universe.<br />
<br />
To finish the main body of this treatise then, here is the addition to the timeline above, incorporating all of the information discussed above. The next page to view is the combined, complete timeline, which includes the timeline information at the start of the text.<br />
<br />
Thank you for listening, and I hope this is of some use to someone.<br />
<br />
==== Notable Dates ====<br />
<br />
Circa 2500-2505 – The '''Far Colonies''' become an independent state. Ties with the '''Galactic Federation''' and the '''Duval Empire''' are officially severed. Colonial ships and personnel are declared persona non-grata and open hostilities greet any trespassers. Colonial navigation systems are set not to show any worlds of either Federation of Empire on star charts, and all relevant locations are locked out of hyperdrive guidance systems<br />
2545 – discovery of stable wormhole leading to what is thought to be another galaxy. The next five years see the discovery of a network of stable wormholes joining a total of eight galaxies together.<br />
2573 – the first colonisation fleets are dispatched to survey and populate the newly found galaxies<br />
2581 – astronomical study reveals that the galaxies are, in fact, located in our own galaxy, spread across three different spiral arms, including the Perseus Arm. The name ‘galaxies’ sticks, however.<br />
2627 – first manufacture of '''IGH unit''', allowing creation of a hyperspace branch to the stable wormhole from any area of the currently occupied galaxy. The IGH unit is too large to fit to small vessels, and is only fitted to larger colonisation and exploration vessels.<br />
2663 – '''Xexor Industries''' successfully test the first IGH unit small enough to fit on any hyperspace capable vessel. Despite the extortionate cost and mediocre safety margin of the unit, Xexor Industries receive over a hundred thousand advance orders in the week following the announcement of the test’s success.<br />
2696 – '''GCW Charter''' passed. The Far Colonies become the [[GalCop|Galactic Co-operative of Worlds]].<br />
2715 – standardised trading systems are ratified at a GCW council summit. The programme is initiated immediately.<br />
2849 – first contact with [[Thargoid]] vessels. Intermittent contact with lone vessels becomes common through the following year. GalCop Federal Law Centres record a great many attacks on these strange octagonal ships – on occasion with no provocation from the Thargoid party. Victories against the alien vessels are few.<br />
2851 – first recorded Thargoid invasion of a system. War is declared, and the [[Galactic Navy]] is mobilised.<br />
2870-75 – Thargoid war settles into a collection of war zones and frontiers. This situation would remain more or less unchanged in GalCop space for the next 300 years.<br />
3115 – Elite combateer '''Jason Ryder''' killed by pirate attack.<br />
3122 – Upgrades to hyperspace systems and shipboard computer controls are completed – '''Faraway jump system''' is no longer required, and the systems are retired.<br />
3125 – '''Commander Peter Jameson''' begins career as space trader.<br />
3132 – GalCop begins a programme of retrofitting some out of date spacefaring equipment to older vessels. At the same time, satellite and comms buoys are upgraded.<br />
3133 – By the start of this year, records show that nearly all active space vessels have been upgraded. Modifications include higher resolution viewscreens and console displays, more efficient shield generators and energy units and enhanced comms systems, including '''HoloFac''' upgrades.<br />
3149 – GalCop suffers massive losses in Thargoid attacks. Negotiations are opened with the Galactic Federation and the Duval Empire for aid in the wars. The Federation and Empire are having increasing trouble with Thargoid incursions, but not with full-scale war zones such as GalCop has seen. Aid is initially refused. GalCop petition for aid at the start of every year until 3150.<br />
3150 – the Federation agree to aid GalCop and offer technology exchanges as a means to achieve the defeat of the Thargoids. Later the same year, the Empire extends a similar offer to the Federation deal. GalCop accept.<br />
3151 – The Thargoid threat is halted within the year. Bioweapons are suspected to have been used.<br />
3162 – GalCop’s economy begins to collapse.<br />
3164 – During this year, the stable wormhole connecting Galaxy 1 to Galaxy 2 and thence to the rest of the seven Galaxies collapses. It is thought highly likely that the collapsing was engineered. Galaxy 1 stands alone. GalCop is reduced from over 2040 worlds to less than 200. GalCop is a shadow of its former self and no longer a threat to either Federation or Empire. The '''Exile''' remains in force.<br />
3165 – It is discovered that the alien races once indigenous to the Far Colonies region of space have gone. Those worlds that had human colony areas become human worlds as the colonies spread out. Those that did not now stand abandoned. It is surmised that they departed for Galaxy 2, somehow managing to find a method of travelling there. Humanity stands alone once more.<br />
3169 – By now, GalCop has been further reduced by internal problems, political issues and pressures from the larger and more ruthless Federation and Empire. Many worlds leave GalCop and ally themselves with one of the other organisations. Some world governments decide to become independent. Some colonies leave their worlds and make for new homes within Federation or Imperial space. The Galactic Co-operative of Worlds president officially rescinds the GCW charter on the 19th August 3174. The resources of the organisation (such as the Navy and Police forces) are auctioned to the Federation.<br />
3170 – Since GalCop as a political entity no longer exists, both Federation and Empire lift the exile on GalCop worlds. A fine of 75,000 credits remains to be paid by any native of the 11 ‘Old Worlds’ centred on Lave who wishes to dock at a spaceport in either organisation. These eleven systems maintain tight relations, forming an unofficial trade and protection alliance – much like the original alliance that grew into GalCop.<br />
<br />
=== [[Lore|Purist]]: Cim ===<br />
<br />
As stated in the abstract from Cim's [[History]] above, the human worlds were to the north of chart 2. When the bridging solar system north of the chart moved too far away from that chart, communications with the Human Colonial home was lost.<br />
<br />
----<br />
<br />
== Fiction ==<br />
*[[Alien Items|Nine]] by [[Drew Wagar]]: - About an attempt to reach the ninth chart<br />
<br />
<br />
== Links ==<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=6905 Do Galaxies get harder as you go up?] (2009) - ''do you really want to know this, or would you rather find out''?<br />
*[[Lore]] for discussion of '''Purism''' & '''Syncretism'''.<br />
*[[History]] for Purist & Syncretist histories of The Eight<br />
*[https://bb.oolite.space/viewtopic.php?p=28930#p28930 (2007) thread] with Captain Hesperus & Selezen above. See Daddyhoggy's teenage solution!<br />
*[https://bb.oolite.space/viewtopic.php?p=28466#p28466 (2007) thread] - treating the eight as part of the milky way and as the 8 faces of a cube inside it.<br />
<br><br />
*[[Maps]] for a selection of different ones - including OXPs<br />
*[[Galaxy Seeds]] for notes on transcending/changing The Eight.<br />
*[[Geography]]<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=5166 Galaxy 2 - places to go- must see...] (2008)<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=21440 Galaxy 4 (Angiana)] (2023) Discussion of the political peculiarities of this galaxy<br />
<br><br />
=== Galaxy Guide ===<br />
The wiki's ''Galaxy Guide'' has individual pages on each solar system as well as details of each sector (maps, regions, trade routes ''etc''):<br />
::*[[Sector1/Index]]<br />
::*[[Sector2/Index]]<br />
::*[[Sector3/Index]]<br />
::*[[Sector4/Index]]<br />
::*[[Sector5/Index]]<br />
::*[[Sector6/Index]]<br />
::*[[Sector7/Index]]<br />
::*[[Sector8/Index]]<br />
<br />
=== Planet List ===<br />
The wiki's ''Planet List'' has pages listing all solar systems in each galaxy with a brief analysis of types.<br />
::*[[:Category:Oolite planet list]]<br />
<br />
=== Duplicated System Names ===<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=11818 Duplicated System Names] (2012)<br />
<br />
[[Category:Concepts]]</div>Phkbhttps://wiki.alioth.net/index.php?title=The_Dark_Side&diff=83490The Dark Side2024-03-18T14:27:21Z<p>Phkb: Updating BB links</p>
<hr />
<div>[[File:2560px-Two women operating ENIAC (full resolution).jpg|800px]]<br />
<br><br />
"Modding" or tweaking and writing OXPs - and eventually maybe even tampering with the [[Vanilla game]] code if you get to be good enough!<br />
<br><br><br><br><br><br><br><br><br />
<br />
== Overview ==<br />
Sneak a peek at [[How to tweak OXZ's]] ... and see where it leads you! One of [[Giles Williams|Aegidian/Giles]]'s desires was to use Oolite to teach people how to code.<br />
<br />
Just for shock effect, the older OXPs are written in '''legacy scripting''' - either XML or OpenStep. '''Javascript''' was slowly introduced after 2006 as an option, and then as the best way of writing OXPs (one can do so much more with it).<br />
<br />
Oolite itself (the Vanilla game code, not the oxp's) is currently written in Objective-C (72.5%), C (19%), and JavaScript (7%) with fragments in other stuff.<br />
<br />
== The Perils of the Dark Side ==<br />
<br />
From the [https://bb.oolite.space/viewtopic.php?p=219408#p219408 Tales from the spacelanes...] thread (2014):<br />
<br />
Bugger this game is taking over my life!! The funny thing is that between wings3d, photoshop, reading 500 wiki pages about the JS commands for plists and now thoughts of a cockpit console.. well I realised that its been almost a week since i actually played the game as a game instead of test flying the model I'm trying to get working.. lol '''spud42'''<br />
<br />
<chuckles> '''[[User:Smivs|Smivs]]'''<br />
<br />
Beware the attraction of the darkside - it will consume you! '''[[User:Cody|Cody]]'''<br />
<br />
And now you know why we call it "The Dark Side".. :twisted: :lol: :mrgreen: '''[[User:Diziet Sma|Diziet Sma/Dizzy]]'''<br />
<br />
“Inquisitiveness is the path to the dark side. Inquisitiveness leads to tweaking. Tweaking leads to modelling. Modelling leads to publishing and updating the OXP list...” - Commander Yoda<br />
"Can not run out of time, there is infinite time. You are finite. Oolite is finite. This... is wrong tool. No. No. Not good. No. No. Never use this." - Commander Zathras<br />
:D '''[[User:Ranthe|Commander Ranthe]]'''<br />
<br />
<br />
== Understanding what ''really'' goes on ==<br />
<br />
So I'm on my way to Erlaza, I decide to fly in along the main route and see what I can pick up along the way and the first thing I meet is a Boa with four escorts. Now it strikes me that if I join them I might see a bit more action but at the same time I wouldn't have to deal with it entirely on my own. Sure enough, within minutes there's a Fer-de-Lance shooting at us.<br />
<br />
Erm... did I say us?<br />
<br />
I'm a Python in formation with a Boa and four escourts and he's completely ignoring the others and has locked on to me. What's more, when I turn to deal with him, what to the others do? They go on their own sweet way leaving me to deal with him on my own. B*****ds!<br />
<br />
<br />
The Fer-de-Lance suffered the consequences and having picked up the ton of luxuries that he left me in his will, I'm following the Boa back to the space station. I'm wondering whether to rejoin them and give them an energy bomb as a token of thanks for their assistance when one of the escorts breaks formation and heads off at 11 o'clock. The others soon follow and I realise that they are under attack from a Python and a couple of smaller ships.<br />
<br />
The next thing I know, the Boa is on the radio asking for help!<br />
<br />
Yeah. Right. Count the fingers mate. ("AndySlater", 2006)<br />
<br />
<br />
<br />
Spoiler (why what happened made sense and how the game programmes it)----> <br />
<div class="mw-collapsible mw-collapsed" data-expandtext="Show spoiler" data-collapsetext="Hide details" style="overflow:auto;"><br />
Pirates use a "scanForNearestMerchantmen" (traders, miners and the player), they then use a "Oddsgood" / "Oddseven" / "Oddsbad" to decide if they attack and who. The pirates are "smart" enough to "know" that a ship with the role "escort" will defend its mother. To put it in plain English:- That fer-de-lance considered attacking all the ships it saw, but it knew that if it attacked the convoy it would have to deal with the the Traders escorts as well as the Trader if it attacked him. When it scanned you, it knew you were without escorts and so chose to attack the easier prey (''ie'' you!).<br />
<br />
If he had a few wing-men, he might have decided that his side was well enough equipped to make attacking the convoy (bigger risk but better rewards) worth it! (done with random numbers against an Odds risk)<br />
<br />
If he had missed his intended target (you!) and hit the Trader, then the trader would have responded. He consults his own AI to decide how to respond, but having cowardly TraderAI he might have decided to run for the planet rather than returning fire or he might have returned fire on the fer-de-lance. The Escorts would probably have attacked the fer-de-lance (as their AI is pretty brave - Someone attacking our mothership - Get Him, even if Mum runs away!). Had there been some cargo pods lying about the Fer-de-lance would probably not have attacked at all and scooped the free cargo, rather than risk a fight (as his AI also includes a scanForLoot, found = setstate to scooploot). Equally had his hold been full, he would have gone to the Station to sell his ill-gotten gains, as he "knows" that there is no point blowing up a trader if you can't scoop his stuff! (done in code by a simple HOLD_FULL = switchAI to route1traderAI)<br />
<br />
Obviously it's Giles's code that does all this, but us players can write AIs that the code will follow. You then assign this to a new ship you have built to make it behave as you want. If you want your ship to be a typical pirate / policeship / miner / escort ''etc'', then you just give it one of the native AIs. Fiddling with Oolite is almost as much fun as playing it!<br />
<br />
By [[User:LittleBear|LittleBear]] in [https://bb.oolite.space/viewtopic.php?f=2&t=2619 Any benefits in flying near/with other ships?] (2006) Note that this is all in "[[Legacy Scripting]]".<br />
</div><br />
<br />
== Links ==<br />
*See '''The Embrace of the Dark Side''' in the ''Applied Theology'' section on the page for the [[Church of Giles the Creator]]<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=17487 Forgot to play?] Programming vs Playing (2015)<br />
*[https://bb.oolite.space/viewtopic.php?f=7&t=18416 How many of you OXP authors are programmers?] (2016+)<br />
<br />
=== Finding things ===<br />
Am I the only person who finds the js sections almost impossible to navigate? Is there an index page or something I've missed? (Smivs, 2011)<br />
<br />
*[[:Category:Oolite JavaScript Reference]]<br />
*[[:Category:Oolite scripting]]<br />
*And Commander McLane's post (taken from [https://bb.oolite.space/viewtopic.php?p=133164#p133164 here] (2011))<br />
Smivs was asking for help:<br />
For an OXP idea I'm working on, I have an asteroid as a sub-entity of a ship - the idea is it's a space wreck and the asteroid has hit the ship at low speed and the ship is now 'crunched' onto the asteroid. So far so good. However I want to be able to salvage stuff from the ship by destroying it. Again so far so good. The problem is that sometimes the asteroid breaks into boulders during this and sometimes it doesn't. I would like to guarantee that the asteroid breaks into about 4-5 boulders every time.<br />
The weird thing is, I tried increasing the 'likely cargo' to 100 to generate boulders on the destruction of the asteroid, and this works very well... except the 100 boulders appear about 10 000Km from the original asteroid.<br />
<br />
McLane posted this response:<br />
Try [[:Category:Oolite JavaScript Reference]]<br />
<br />
And for all .plist stuff see [[:Category:Oolite scripting]] (the JS_reference is the first subcategory of this page). The scripting index page itself is among the subcategories of [[:Category:Oolite]].<br />
<br />
If you have a look at the first page, the only thing you need to know is which JS object you want to manipulate.<br />
<br />
For a boulder it would be a '''ship''', because it is a ship which spawns the boulder. Therefore the reference page you need is [[Oolite JavaScript Reference: Ship]], and indeed that is where you find the "<tt>spawn()</tt>" method. The hint is in the word you type at the beginning of your command (in this case it is "<tt>this.ship.</tt>").<br />
<br />
If you follow [https://bb.oolite.space/viewtopic.php?p=133150#p133150 Thargoid's advice], you may consult two pages. As indicated by the word "<tt>system.</tt>" at the beginning of the command, it manipulates the '''system''' object. The reference page for that is [[Oolite JavaScript Reference: System]]. That is where you find everything about the "<tt>addShips()</tt>" method. Later you see the word "<tt>ship.</tt>" again, which indicates that "<tt>position</tt>" is again a property of the '''ship''', so you would search for it on [[Oolite JavaScript Reference: Ship]] again. Only that this time you would not find it there. It happens that '''ship''' is one of the sub-classes of '''entity''' (other sub-classes are for instance '''sun''' or '''planet'''), and ''all'' entities have a position. Therefore you find the "<tt>position</tt>" property in [[Oolite_JavaScript_Reference:_Entity]].<br />
<br />
If you would want to manipulate the '''player ship''', your starting point would be [[Oolite JavaScript Reference: PlayerShip]]. However, this covers only all things which are "<tt>unique</tt>" to a player ship. For all other aspects a '''player ship''' is only a sub-class of '''ship''', which is only a sub-class of '''entity'''. Therefore you would have to consult one of those pages if you want to manipulate for instance the player ship's "<tt>speed</tt>" (shared by all '''ships''') or "<tt>position</tt>" (shared by all '''entities''').<br />
<br />
=== Useful Links ===<br />
*[https://bb.oolite.space/viewtopic.php?f=8&t=7861 What "can" be changed without re-compiling?] (2010-date) - for what oxp's ''cannot do'' see the 2021-2 posts<br />
*[https://www.shamusyoung.com/twentysidedtale/?p=3519 Getting Started with Programming] by Shamus Young (died June 2022) - a broad introduction to the issues. <br />
<br />
=== Javascript ===<br />
:[[Legacy Scripting|OpenStep]] is more manageable for beginners. Javascript less so.<br />
*[[Oolite Javascript basics]] - an introductory essay by [[User:Massively Locked|Massively Locked]]<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=13235 if (player.ship.dockedStation.isMainStation)] - major discussion on a single line of code (2012)<br />
*[[Scripting Oolite with JavaScript]] - contains a note about what your computer does with the JavaScript, followed by a long essay about Oolite's version of Javascript<br />
*Phkb has a helpful intro to mission.oxp javascript [https://bb.oolite.space/viewtopic.php?p=277713#p277713 here] with a commentary [https://bb.oolite.space/viewtopic.php?p=278061#p278061 here] (2021)<br />
<br />
== Reference ==<br />
*[[:Category:Oolite scripting]]<br />
*[[Property list]] - a good place to start - try tweaking the description.plist in [[Famous Planets]] and see if it works when you look at the F7 screen!<br />
<br />
[[Category:Developers| ]]<br />
[[Category:Factual]]<br />
[[Category:Concepts]]</div>Phkbhttps://wiki.alioth.net/index.php?title=Tech_Shuffle&diff=83489Tech Shuffle2024-03-18T14:26:52Z<p>Phkb: Updating BB links</p>
<hr />
<div>Shuffles the TL at which equipment is available<br />
<br />
== Overview ==<br />
By changing the Tech Level at which equipment/fuel is available, the nature of the game is changed. <br />
<br />
Fuel in (very) low tech systems might not be available. Cargo bay extensions and ECM meanwhile both require high tech levels for both installation and repair. Therefore fuel scoops are more useful/interesting, missile combat is sometimes more dangerous and the gravy-train that is the large cargo bay is (slightly) discouraged.<br />
<br />
Technology Classic Elite Oolite (added)<br />
Level Equipment Equipment<br />
<br />
1 Missile ''advanced navigation array'' (ANA)<br />
2 pulse laser ''external heat shielding''<br />
3 fuel scoops ''advanced space compass'' (ASC)<br />
4 beam laser ''multi-targeting system'' (MTS)<br />
5 ''fuel'' ''system memory expansion'' (SME)<br />
6 ''escape pod'' passenger berth<br />
7 energy bomb maintenance overhaul<br />
8 extra energy unit (EEU) ''targeting enhancement'' (STE) <br />
9 docking computers ''witchdrive fuel injectors'' <br />
10 mining laser wormhole scanner<br />
11 ''large cargo bay'' shield boosters<br />
12 ''ECM system'' integrated targeting system (ITS)<br />
13 ''military laser'' ''hardened missile''<br />
14 ''galactic hyperdrive'' military shield enhancement <br />
15 n/a n/a<br />
<br />
changes from the [[Vanilla game]] shown in ''italics'' (for details of Equipment see [[Oolite Equipment]])<br />
<br />
=== Logic ===<br />
Some thoughts on the elite equipment...<br />
<br />
'''Fuel''' - was TL1, here TL5<br />
<br />
Sun-skimming is actually pretty cool it just isn't very rewarding, this would make it an important gameplay element.<br />
TL 5 might seem a bit high but it's not purely about installing something but also having the infrastructure to supply it - maybe it's not that easy.<br />
<br />
<br />
'''Large Cargo Bay''' - was TL1, here TL11<br />
<br />
Getting another 15TC out of the Cobra MkIII would appear to be no small feat. Even if were only optimisation of internal layout that would likely be specialist work. I think it may have been so low as it represented a smart early purchase to really pay off in the long term but I actually think the early game would have been better off without it.<br />
<br />
<br />
'''ECM System''' - was TL2, here TL12<br />
<br />
Based on captured Thargoid tech but available at TL2. Hmmm...<br />
Missiles were more deadly in Elite if I remember correctly, and in Oolite they're much less so. Having the player be without it a little more often is no bad thing in my honest opinion and would help balance reducing it amongst pirates.<br />
<br />
<br />
'''Military Laser''' - was TL10, here TL13<br />
<br />
Not a big change, just using up more of the tech levels.<br />
It's supposed to be top of the range, the latest new fangled what-not, so why not?<br />
<br />
<br />
'''Galactic Hyperdrive''' - was TL10, here TL14<br />
<br />
This one just feels right to me.<br />
However far the player is jumping with one of these, it would appear to be a substantial old hop.<br />
<br />
== License ==<br />
*Author: [[User:Redspear|Redspear]]<br />
*License: a matter of mystery!<br />
<br />
== Links ==<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=21180 BB Thread] (2022)<br />
*[[Technology level]]<br />
<br />
== Gameplay and Balance Indicator ==<br />
[[File:Tag-colour-orange.png|right]]<br />
Fuel not available at low TL's and military lasers less available too. The inability to buy fuel below TL5 will make long trips to such systems (if isolated) almost suicidal until fuel scoops are fitted. Or one is willing to follow anybody jumping anywhere!<br><br />
Tips: Try [[Station Dock Control]]!<br />
<br />
{{Equipment-OXP}}{{mechanics-OXP}}</div>Phkbhttps://wiki.alioth.net/index.php?title=Taranis_OXP&diff=83488Taranis OXP2024-03-18T14:26:39Z<p>Phkb: Updating BB links</p>
<hr />
<div>[[File:Taranis2.png|thumb|right|300px|Taranis Corporation HQ]]<br />
==Intro==<br />
Based in the [[Sector1/Lerelace|Lerelace]] system (28 light years from Lave), shipbuilder Taranis Corp originally had its main offices on the planet's surface, but strong sales of the Outrider escort vessel enabled the firm to relocate to a new orbital HQ, while retaining a few facilities "planetside". The cost of the HQ is unknown, but is estimated at around half a billion credits, a colossal sum even by the standards of big business. Noted Ineran architect Philippe K Lizzard reportedly had a hand in its design.<br />
<br />
[[File:Lerelace_new.png|thumb|right|300px|Lerelace, home of the Taranis Corporation]]<br />
----<br />
==Notable features==<br />
In addition to being the company's managerial and administrative centre, Taranis's HQ houses extensive R&D facilities and accommodation for its staff, many of whom rarely leave the premises. The most opulent interiors are to be found on the executive levels in the rotating central sphere; the outer ring uses artificial gravity, except in certain zero-G test areas. The ring has a diameter of over 4.6km, while "The Ball", as it is known, has a diameter of around 2.3km.<br />
<br />
The HQ is extremely well defended, thanks largely to Taranis's military connections. Anyone attempting an assault would have to contend with military-grade shields far more powerful than those of even a Torus station, 41 turrets and a squadron of five Outriders, reportedly equipped with military lasers and enhanced shields.<br />
<br />
Less suicidal visitors will be able to take advantage of tech-level-16 ship-outfitting facilities and a shop selling a range of luxury items bearing the Taranis logo.<br />
<br />
----<br />
[[File:Outriderexternal.gif|thumb|right|300px|Taranis's Outrider, showing the ship's unique HUD]]<br />
[[File:Fg2.png|thumb|right|300px|Taranis's Navy Frigate]]<br />
<br />
== Credits ==<br />
*[[User:Roberto|Roberto]] (author)<br />
*[[User:Maik|Maik]] (Fixed wrong definition at the Taranis station commodities.plist)<br />
*[[User:Eric Walch|Eric Walch]] (anti mission clash code, Converted to JS)<br />
<br />
*Thanks to all those who have assisted me - especially [[User:Aegidian|Giles]], [[User:Murgh|Murgh]] and [[User:Arexack|Arexack_Heretic]] (who helped me through my darkest hours with the AIs!). <br />
*Thanks again to Murgh for the use of his [[Wolf Mk.2 (Oolite)|Wolf Mark II]] as the mission ship.<br />
<br />
----<br />
<br />
==Version history==<br />
Version 2.1<br />
* Added new planet texture for Lerelace with city lights.<br />
* Updated planet description with fuller version from FPO.<br />
* Ensured new planet texture is applied.<br />
<br />
Version 2.0.5<br />
* Added a visual effect after spawn to mask the issue with the dock walls disappearing when docking.<br />
<br />
Version 2.0.4<br />
* Swapped normals in Taranis station models to correct position (with thanks to Commander_X)<br />
* Reverted to dock object so ILS will function with station.<br />
* Tweaks to shipdata.plist.<br />
* Removed unused files.<br />
<br />
Version 2.0.3<br />
* Actually saved the file before building OXZ, to fix missing ";" in shipdata.plist.<br />
<br />
Version 2.0.2<br />
* Fixed missing ";" in shipdata.plist.<br />
<br />
Version 2.0.1<br />
* Fixed version number in manifest file.<br />
<br />
Version 2.0: Updated by phkb<br />
* Converted XML plist files to OpenStep.<br />
* Updated station textures and market script.<br />
* Updated subentities to use new definitions.<br />
* Updated Wolf Mark II to use Griff's models and textures.<br />
* Updated station spawning code so that it is possible to save the game at the Taranis HQ.<br />
* Added New Cargoes station functionality.<br />
* Fixed issue with docking port, where you would seem to pass through the back of the docking port and view the large blue globe in the middle of the station before the docking animation started.<br />
<br />
Version 1.3: Translation to JS.<br><br />
Version 1.2: Bugfix with commodities on the Taranis station. ([http://capnhack.com/hosting/oolite/dropbox/Taranis_1_2.zip Still available here for older oolites])<br><br />
Version 1.1: Added anti mission-clash code.<br><br />
Version 1.0: Original release.<br><br />
<br />
----<br />
<br />
==Difficulty Rating==<br />
"Easy". The ships appearing in the OXP are within the power-range of the standard set of ships. You wouldn't need a full [[Iron Ass]] to take them on, but you should have some basic upgrades fitted such as a [[Beam Laser]], [[Fuel Injectors]], an [[EEU|energy unit]] and perhaps [[Shield Boosters]].<br />
<br />
----<br />
==Installing and Playing==<br />
*Downloadable through the in-game [[Expansions Manager]]<br />
*Download [[Media:Taranis_2.1.oxz|Taranis_2.1.oxz]].<br />
<br />
===Previous Versions===<br />
*Download [[Media:Taranis_1.3.oxz|Taranis_1.3.oxz]] v1.3 (downloaded {{#downloads:Taranis_1.3.oxz}} times).<br />
*Download [http://app.box.net/shared/9cuunqfvyq Taranis Corporation HQ OXP]. version 1.3, Updated 20 May 2012.<br />
*Needs Oolite 1.74 or newer.<br />
<br />
If you downloaded the older [[OXP]], unzip the download file. This will create a folder named "Taranis xxx". Open this folder and you will see a folder named "Taranis xxx.oxp" and a readme. Move the Taranis xxx.oxp folder to AddOns. As with all older OXPs, it is the folder ending .oxp that you need to put in Oolite's AddOns folder, otherwise Oolite will not read it.<br />
<br />
*<u>Note:</u> The [[Taranis Corporation HQ (Oolite)|Taranis Corporation HQ]] is the starting point for these missions, so the package for both is now the same.<br />
<br />
----<br />
== License ==<br />
*Author: Roberto<br />
<br />
*This work is licensed under Creative Commons Attribution Non-Commercial Share Alike 3.0 (CC BY-NC-SA 3.0).<br />
*To view a copy of this license visit [http://creativecommons.org/licenses/by-nc-sa/3.0/ http://creativecommons.org/licenses/by-nc-sa/3.0].<br />
----<br />
== Links ==<br />
*Author: [[User:Roberto|Roberto]] (also an author)<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=21480 Taranis 2.0 BB thread] (2023)<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=2359 Original BB Thread] (2006)<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=4069 Later BB Thread] (2007-8)<br />
*[https://bb.oolite.space/viewtopic.php?f=3&t=21567 Issue with Taranis dock] (2024) - trying to prevent the view of the central orb during docking<br />
*[[Taranis Corporation (Oolite)]]<br />
*[[Taranis Corporation HQ (Oolite)]]<br />
*[[Outrider (Oolite)]]<br />
*[[Navy Frigate]]<br />
<br />
{{mission-OXP}}</div>Phkbhttps://wiki.alioth.net/index.php?title=Synchronised_Torus_OXP&diff=83487Synchronised Torus OXP2024-03-18T14:26:18Z<p>Phkb: Updating BB links</p>
<hr />
<div>[[File:Synchronised Torus 1.jpg|thumb|300px|Following a Cobra Mk III to Maonle.]]<br />
[[File:Synchronised Torus 3.jpg|thumb|300px|You can use synchronisation with escort groups too.]]<br />
[[File:Synchronised Torus 2.jpg|thumb|300px|Even following [[Aliens|Aliens]] is possible!]]<br />
This OXP allows you to synchronise torus (jump) drives with NPC ships you are following to save time.<br />
<br />
=== Dependencies ===<br />
Oolite version 1.81 or later.<br />
<br />
=== Instructions ===<br />
Download .oxz file and move into the AddOns folder of your Oolite installation. <br />
<br />
Activate (prime) the torus synchronisation controller by using "shift-n". Target the ship you want to follow. If it's an escort group, you must target the leader. Than match heading, and keep a distance between 500 and 2500 meters. Then you can start torus synchronisation by pressing the "n" key. Pressing "n" again will stop it. <br />
<br />
Torus synchronisation will only start and be continued if there is no mass lock and if the next waypoint of the targeted ship is outside scanner range. Starting normal torus drive by pressing "j", using fuel injectors, or a change of direction by either ship will also interrupt synchronisation. <br />
<br />
Other than with normal torus drive, the synchronisation controller will not change your speed to maximum. So if you match your speed with that of your synchronisation partner, you won't run into him when synchronisation is interrupted unexpectedly. You can even adjust your speed during torus synchronisation.<br />
<br />
Torus speed and direction is determined by the NPC ship. You can use torus synchronisation with any ship or escort group that isn't bothered by your presence and continues to fly to a distant waypoint on a straight course.<br />
<br />
You can use the "b" key to show the distance to the target's next waypoint. This works independently from torus synchronisation, so it can be used on any ship and during normal or synchronised torus flight.<br />
<br />
=== Game balance ===<br />
This OXP doesn't make the game easier or more difficult. It just saves time if you like to follow ships and watch what they are doing. But it can change the game, because you can let NPCs run into other ships that they wouldn't have met going at normal speeds. <br />
<br />
=== License ===<br />
This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License version 4.0.<br />
<br />
=== Credits ===<br />
This OXP uses the same basic technique that has been included in [[Escort Contracts OXP]] by [[User:Capt. Murphy|Capt. Murphy]].<br />
<br />
=== Changelog ===<br />
* 2015-12-14: Version 1.0, check escort alignment, show distance to waypoint continuously in scanner targeting description<br />
* 2015-12-13: Version 0.92, now works with escort groups, "b" key shows distance to waypoint, fixed planet and sun mass-locking<br />
* 2015-12-11: Version 0.91, first beta release<br />
<br />
=== Download ===<br />
[[Media:Synchronised_Torus_1.0.oxz|Synchronised_Torus_1.0.oxz]] (downloaded {{#downloads:Synchronised_Torus_1.0.oxz}} times).<br />
<br />
===Quick Facts===<br />
{{OXPLevel|0}}{{Infobox OXPb| title = Synchronised Torus<br />
|version = 1.0<br />
|release = 2015-12-14<br />
|features = Torus drive synchronisation with NPC ships<br />
|license = CC BY-NC-SA 4<br />
|category = Equipment OXPs<br />
|author = [[User:Fritz|Fritz]]<br />
|feedback = [https://bb.oolite.space/viewtopic.php?f=4&t=17939 BB-Link]<br />
}}</div>Phkbhttps://wiki.alioth.net/index.php?title=SuperCobra&diff=83486SuperCobra2024-03-18T14:26:08Z<p>Phkb: Updating BB links</p>
<hr />
<div>__NOTOC__<br />
{{Semantic Infobox ShipStats Oolite| title=SuperCobra<br />
|image = [[Image:SuperCobra.png|250px]]<br />
|width = 131m<br />
|height = 25.6m<br />
|length = 59.4m<br />
|capacity = 40 TC<br />
|capacityext = 15 TC<br />
|gunmounts = Fore, Aft, Starboard, Port<br />
|maxspeed = 0.45 LM<br />
|maneuverability = Roll: 2.2<br />Pitch: 1.2<br />
|missileslots = 4<br />
|energybanks = 7<br />
|energyrecharge = 7<br />
|milshields = Yes<br />
|shieldboost = Yes<br />
|hyperspace = Yes<br />
|isoxp =OXP<br />
|isplayer = Yes<br />
|baseprice = 1,622,000 ₢<br />
}}<br />
== Overview ==<br />
[[Image:SuperCobra-Thargoid.png|thumb|left|200px|A SuperCobra attacks a [[Thargoid Warship (Oolite)|Thargoid warship]]]]<br />
The SuperCobra is the newest in the range of Cobra ships from [[Cowell & MgRath|Cowell & MgRath Shipyards]] of [[Lave]]. Intended as a follow-up to the enormously successful [[Cobra Mk.3 (Oolite)|Cobra Mk.3]], the ship is larger and faster with a stronger hull, with the ability to carry military shield enhancements and shield energy boosters. It exemplifies the latest generation of small multi-role ships that can be used for trading, military purposes, bounty hunting (and to the dismay of the [[GalCop|Police]], [[Piracy|piracy]]).<br />
<br />
== Notable features ==<br />
The ship is most notable for being the Cobra Mk.3 replacement - and basically looks like a Cobra Mk.3, the differences only becoming obvious when the two ships are together, or when the SuperCobra lights up its engines trailing four bright plumes instead of two. Although its predecessor is still popular, most ship afficionados considered the Cobra range to be getting long in the tooth, and even becoming outclassed in most respects by newer designs such as the [[Python Class Cruiser]]. With 'What Spaceship' recommending the somewhat large and unweildy PCC over the Cobra Mk.3 in a recent issue, CMR shipyards decided to expedite bringing the SuperCobra design to market.<br />
<br />
Few of the ships have been seen in trader's hands; the increases in size and speed have made this a very expensive ship to buy. However, the ability to fit military shield enhancements and at the same time, fit shield boosters, have made this craft extremely attractive to well-heeled bounty hunters and pirates alike. Pirates in particular like the cavernous cargo area - extendable to 55 TC - and lone marauding SuperCobras have been spotted in the more dangerous systems. Bounty hunters have also discovered the advantages of a large cargo area as pirates will often spill copious quantities of loot - and bounty hunters returning with the cargo the pirate stole is no longer an uncommon sight (blurring even more the difference between a pirate and a bounty hunter). The ship is also used quite often by traders with not so legitimate cargo like firearms or narcotics. <br />
<br />
The ship is universally liked by those who have flown one - it is one of the most manoeuvrable ships in its size class, as well as having a good turn of speed. The addition of witch space fuel injectors make the ship a courier's dream.<br />
<br />
== Notable Pilots ==<br />
The first prototype SuperCobra was flown in 3138, in an abortive coup to attack the capital of the Duval Empire at Achenar. The identities of the crew are restricted under the Galactic Cooperative Official Secrets Act. While destroyed, it proved itself in battle against an [[Imperial Courier]], as told in [[Status Quo]]. It is not known if the crew perished with the ship's destruction.<br />
<br />
== Download ==<br />
[https://app.box.com/shared/xsc8dq6z0x Download version 1.4.2] Updated on 12/10/2010.<br />
<br />
This ship is currently found inside the [[Random Hits]] oxp.<br />
<br />
== Version History ==<br />
* Version 1.4.2 Fixed casing error that affected Linux systems.<br><br />
* Version 1.4.1 Fixed some old spelling errors in messages.<br><br />
* Version 1.4 Prepared for Oolite 1.73. Now also reacts on attacks during docking. <br />
<br />
== Links ==<br />
Any original threads will have been lost in the [[Great Deletion]] - but see here: [https://bb.oolite.space/viewtopic.php?f=2&t=2069 Info request.... SuperCobra] (2006)<br />
*Original [http://capnhack.com/hosting/oolite/Oolite/OoSat.html OoSat] version (2006)<br />
*Author: 8bitapocalypse (see also his [[Ixian Ships]])<br />
<br />
{{ship-OXP}}</div>Phkbhttps://wiki.alioth.net/index.php?title=Running_Oolite-Windows&diff=83485Running Oolite-Windows2024-03-18T13:57:18Z<p>Phkb: Updating BB links</p>
<hr />
<div>[[File:Windows1.0.png|right]]<br />
==Overview==<br />
The Windows port of Oolite is built from the same source as the [[Running Oolite-Mac|Mac OS X]] and [[Running Oolite-Linux|Linux]] versions, and has all the features of those versions.<br />
<br />
All OXPs should be compatible with the Windows port.<br />
<br />
==Building==<br />
<br />
Note that this page is referenced as 'Building' from https://github.com/OoliteProject/oolite however this page does not contain any build information.<br />
<br />
Check out https://wiki.alioth.net/index.php/Developing_Oolite#On_Windows_2 instead.<br />
<br />
==Getting and installing the compiled game==<br />
<br />
The latest recommended release, 1.90 can be downloaded from [https://www.oolite.space/download/ Oolite.space].<br />
<br />
To install, run the installer that you have just downloaded.<br />
<br />
The game has been tested on Windows Vista SP2, 7, 8, 8.1 and 10. This game uses OpenGL, and you are advised to run the latest 3D graphics drivers from your 3D card manufacturer.<br />
<br />
'''It will not run on the DOS-extender versions of Windows''' such as Windows 95, 98 or ME.<br />
<br />
'''For Windows XP, the last version compatible with the OS is 1.84.'''<br />
<br />
===Important note for Vista users!===<br />
<h5>Summary:</h5><br />
DATA LOSS and OXP MALFUNCTION can appear if you install an early version of Oolite (1.65 - 1.72.x) on Vista. '''Oolite 1.73 and later releases have corrected this issue''' by using a different default installation directory, instead of one inside program files, as before.<br />
<br />
<h5>Do This</h5><br />
When asked by the installer, change the Oolite install directory to a different location, one outside C:\Program Files\, like<br />
* C:\Oolite\ <br />
* C:\Games\Oolite\<br />
etc.<br />
<br />
<h5>Don't Do This</h5><br />
It is STRONGLY recommended NOT to use the folder C:\Program Files\Oolite\ or any path including the following:<br />
* %ProgramFiles%<br />
* %ProgramData%<br />
* %SystemRoot%<br />
<br />
<h5>Why?</h5><br />
Vista rearranges some files outside the Oolite folder structure without visible alias/redirects, which completely hides all saved games and causes some OXP add-ons to malfunction. This is because Vista virtualizes files in those locations for legacy processes. You can read more about this problem on [https://bb.oolite.space/viewtopic.php?t=5610 this Oolite forum thread]. The Microsoft explanation is here: [http://technet.microsoft.com/en-us/magazine/2007.06.uac.aspx].<br />
<br />
<h5>Recovering Your Commanders Saved Under Vista</h5><br />
If you have already installed Oolite on a Vista machine and wish to move your saved games to a new and safer file location:<br />
* Examine location C:\Users\[username]\AppData\Local\VirtualStore\Program Files\Oolite\oolite.app\oolite-saves\<br />
or<br />
* Use Windows Explorer to search for the string " *.oolite-save " with the Windows search option "''include system and hidden files''" checked (turned on).<br />
<br />
<br />
For example, the default commander, if saved, might be found in this path:<br />
C:\Users\[username]\AppData\Local\VirtualStore\Program Files\Oolite\oolite.app\oolite-saves\Jameson.oolite-save<br />
<br />
==Running the game==<br />
Find the Oolite icon in the Start -> Programs menu and click on it. Alternatively double click the Oolite program icon on the desktop. Note that the following key combination will get you out of 'graphics related trouble':<br />
<br />
Shift-Escape: Quit Oolite immediately<br />
<br />
If your game seems to have unreasonably low fps performance (check this in-game by hitting SHIFT-F) it is strongly recommended you visit your graphic cards' suppliers website and download and install the latest drivers.<br />
<br />
===Installing OXPs===<br />
You will need to find where the oolite.app folder is placed: versions 1.65 to 1.72.x should default to C:\Program Files\Oolite, later versions default install is C:\Oolite, to avoid clashes with Vista's virtual folders feature(see above). Create an AddOns folder beside the oolite.app folder. Put OXPs in here. '''NB:''' most OXPs zip files contain a folder with a README file and the actual OXP directory (somename.oxp) as a sub-folder - in this case, it's best to unzip the OXP somewhere else and then copy the unpacked .oxp folder into AddOns.<br />
<br />
===Filming your game===<br />
{{QuoteText|Text=You can record video of the game with the Windows Gamebar shortcut keys. <Windows>+<Alt>+R starts the recording, the same combination stops it. The video gets saved in C:\Users\<YourUserName>\Videos\Captures, with a filename like 'Oolite v1.89 - Jul 23 2020 2020-07-29 19-35-26.mp4'.|Source=([https://bb.oolite.space/viewtopic.php?p=275049#p275049 another_commander])}}<br />
<br />
===Notes for amd64 users===<br />
64-bit builds of Oolite for Windows are available and the development environment used defaults to 64-bit executables generation. They are the recommended ones for 64-bit OSes. However, the 32-bit version should run on 64-bit Windows without issues as well.<br />
<br />
==Building from Source==<br />
[[Developing_Oolite#On_Windows]]<br />
<br />
==Links==<br />
*[https://bb.oolite.space/viewtopic.php?f=8&t=17502 Deployment to Test Release updater] (2015)<br />
*[https://bb.oolite.space/viewtopic.php?f=8&t=5943 Building Oolite Windows from source - The Easier Way] (2009 - to date)<br />
*[https://bb.oolite.space/viewtopic.php?p=292289#p292289 a_c's overview of developing Oolite-Windows] (2023)<br />
<br />
*[https://bb.oolite.space/viewtopic.php?f=8&t=21546 Windows 11: Forcing Auto HDR on any version of Oolite] (2023)<br />
[[Category:Oolite]] [[Category:Help pages]]<br />
[[Category:Factual]]</div>Phkbhttps://wiki.alioth.net/index.php?title=Running_Oolite-Linux&diff=83484Running Oolite-Linux2024-03-18T13:57:14Z<p>Phkb: Updating BB links</p>
<hr />
<div>[[File:LinuxWasch3.jpg|right|500px]]<br />
== Overview ==<br />
<br />
The Linux port of the game follows the Mac OS X version and is released at the same time. Both source and binary downloads are available. There are some minor differences between Oolite for Linux and Oolite on Mac OS X: the Linux version does not support iTunes integration, or Growl.<br />
<br />
It is simple to install. Simply download and run the Autopackage, and then you can play the game.<br />
<br />
== Getting and installing the game ==<br />
<br />
=== Ubuntu and Debian users ===<br />
<br />
Oolite is available in the software repositories for both recent versions of Debian and Ubuntu (7.10, Gutsy Gibbon). Under Ubuntu, just go to Applications -> Add software, and search for Oolite in all packages. The game's icon appears in the Applications -> Games menu. Currently the version in Debian stable is the extremely old 1.65 (unstable does have 1.76), and the version in Ubuntu is 1.75.3. Until the repositories are updated we recommend you install 1.76 following the instructions below.<br />
<br />
=== Other distributions ===<br />
The latest current stable release, 1.90, can be downloaded at [http://oolite.space/download Oolite.space]. <!-- Test releases can be downloaded from [http://developer.berlios.de/project/showfiles.php?group_id=3577 the BerliOS project]. --> New releases are announced on [https://bb.oolite.space/viewforum.php?f=9 the Oolite forum].<br />
<br />
If you just want to play the game it is strongly recommended you download the Autopackage. This contains everything needed to play the game on any recent Linux distribution. It has been tested on several distributions, including Gentoo, Fedora Core, CentOS, Debian and Ubuntu.<br />
<br />
An autopackage is somewhat similar to the installers you might find on Windows. If you have never installed an autopackage before, once you have downloaded the game, you will need to do the following steps:<br />
<br />
* 1. Navigate to where you downloaded the game with your file manager (by default, Firefox will download things to the desktop).<br />
* 2. Right click on the file's icon, and select Properties.<br />
* 3. Select the 'Permissions' tab.<br />
* 4. Click on the check box 'Owner: Executable' to make it checked, and click Close.<br />
* 5. Double click the file's icon to run the installer. Follow any instructions.<br />
<br />
Once you have installed at least one Autopackage, any further autopackages you download will be recognised by your system so the first four steps will not need to be done again.<br />
<br />
== Running the game ==<br />
<br />
'''Important''' - Fedora Core >=5 users should read [[Running Oolite-Fedora Core 5]]<br />
<br />
Once the game is installed, it should appear in your Applications -> Games menu. Just click its icon. Alternatively, typing 'oolite' in a Terminal will start the game.<br />
<br />
=== Installing OXPs (AddOns) ===<br />
<br />
[[OXP|OXPs]] are expansion packs for Oolite. If you installed the game by entering your root password, and therefore installing the game system-wide, you will need to put OXPs in /usr/lib/Oolite/AddOns. If you installed it in your home directory, you will need to put OXPs in ~/.local/lib/Oolite/AddOns.<br />
<br />
=== Updating the game ===<br />
<br />
The fastest way to update the game when a new version is out is to run 'oolite-update'. Run this as the user that installed the game (so run it as root if you installed the game system-wide). To run it, either use 'Run Command' from GNOME or KDE and enter 'oolite-update', or open a Terminal and run 'oolite-update'.<br />
<br />
== The bleeding edge ==<br />
<br />
A nightly build is provided for those who want to live on the bleeding edge - it is built from the latest source in the Subversion source repository for Oolite. [http://terrastorage.no-ip.info/oolite/status.html 32-bit Nightly] or [http://terrastorage.no-ip.info/oolite/status_AMD64.html 64-bit Nightly]. Remember that the nightly builds are under constant development and may at any time include serious bugs not present in the released versions. While the developers welcome feedback on test versions, we recommend that if you just want to play Oolite you use the stable released versions.<br />
<br />
== Building Oolite-Linux from source ==<br />
<br />
You will need the following components:<br />
* The GNU Objective-C compiler (gcc-objc). Your distribution should have this available.<br />
* [http://www.gnustep.org GNUstep Startup]. Your distro may provide the appropriate GNUstep development libraries.<br />
* SDL development libraries including SDL_mixer and SDL_image. All Linux distros seem to have the main SDL library, but some do not seem to have SDL_image. This can be downloaded from [http://www.libsdl.org the SDL Library Development website].<br />
* OpenGL development libraries - your distribution will have these.<br />
* To build Autopackages, you will also need the Autopackage development kit, which is available at [http://autopackage.org Autopackage.org]<br />
<br />
The source code for these dependencies is also available at [ftp://ftp.alioth.net]<br />
<br />
You may also want the following optional component:<br />
* espeak, if you want speech (1.73 & later). Your distribution should have this; otherwise, see [http://espeak.sourceforge.net espeak.sourceforge.net].<br />
<br />
It is recommended you use git to download the source tree. First do<br />
git clone https://github.com/OoliteProject/oolite.git<br />
to get the main repository. Then, in the directory this creates, do<br />
git submodule update --init<br />
to pull in various other components such as dependencies, binary resources, and so on. The old SVN repository is no longer being updated.<br />
<br />
Once you have a source tree, you can build it by just typing 'make'. To run the newly-built code, then type 'openapp oolite'. If you want to build the Autopackage .package file, type 'makeinstaller'. This will leave a .package file in the build directory. You can then run this file to install the game.<br />
<br />
=== Notes about the build process ===<br />
<br />
* The makefile is called GNUmakefile rather than 'Makefile'; this seems to be the convention for GNUstep applications. If you are not using GNUmake, then you will probably need to 'make -f GNUmakefile'. However, it is recommended that you install gmake if you are using a platform (BSD) that doesn't include GNU make (it's a dependency for GNUstep anyway). The build process first builds all the Objective-C source (source code files end in '.m' which is the standard file extension for Objective-C) into the executable oolite.app/oolite and then copies the data into oolite.app/Contents.<br />
<br />
* A new dependency on the SpiderMonkey JavaScript v1.70 library was introduced on SVN revision 1157. This requires some attention regarding the Linux build process. The full instructions on building the game successfully with JavaScript 1.70 on Debian can be found in the following forum post:<br />https://bb.oolite.space/viewtopic.php?p=42188&highlight=#42188<br />
<br />
* As of 1.73, a new 'Makefile' has been added to the project to simplify building Oolite. Assuming your system has all required build dependencies installed (as outlined above), you can build debug and optimised copies of Oolite with the following commands. The included Spidermonkey dependency is automatically built as well. For a full list of targets, use 'make -f Makefile help'.<br />
** make -f Makefile debug<br />
** make -f Makefile release<br />
<br />
=== Notes about GNUstep ===<br />
<br />
Several bugs have been found with gnustep-base1.19.3 which affect Oolite to a greater or lesser extent. As older versions of several popular Linux Distributions ship with this version of GNUstep, it is highly recommended that you compile and install a known good version of GNUstep for development. gnustep-base1.18 is known to be good. The current trunk (gnustep-base1.21.1) appears to also be ok.<br />
<br />
This [https://bb.oolite.space/viewtopic.php?t=8008&highlight= forum post] details how to build and install gnustep for developing Oolite.<br />
<br />
=== General Comment on Linux ===<br />
{{QuoteText|Text=Oolite depends on some very specific versions of several libraries, and in some cases, special custom modified versions of those libraries, all of which are compiled and bundled with the Oolite tar package supplied at Oolite.org. Distros which supply Oolite via their package managers generally link to the standard installations of those same libraries, and when those libraries get updated, it tends to break things, so far as Oolite is concerned.<br />
<br />
The Oolite.org version is linked to its own bundle of libraries, which are packaged in such a way that they do not interfere with the libraries as used by the rest of the OS. The only executable which will ever access them is Oolite. That way, we can make sure Oolite runs on the widest possible variety of Linux distros, without having to spend all our time tracking library version changes across dozens of distros, and also avoid having to deal with the creators of the libraries concerned, who have shown little interest in implementing our required customisations into their standard package.|Source=([https://bb.oolite.space/viewtopic.php?p=256411#p256411 Diziet Sma (2017)])}}<br />
<br />
==Links==<br />
* [[Running Oolite-Unix|Running Oolite on Unix]]<br />
* [[Running Oolite-Fedora Core 5|Running Oolite on Fedora 5]]<br />
<br />
* [https://bb.oolite.space/viewtopic.php?f=2&t=18577 (Linux) Assign more RAM to Oolite?] (2017)<br />
<br />
[[Category:Oolite]][[Category:Help pages]]<br />
[[Category:Factual]]</div>Phkbhttps://wiki.alioth.net/index.php?title=Random_number_generator&diff=83483Random number generator2024-03-18T13:56:21Z<p>Phkb: Updating BB links</p>
<hr />
<div>==Overview==<br />
The list of [[Oolite planet list|planets]] used by both Elite and Oolite are generated using (pseudo) random number generators. For the constrained 8-bit architectures that the original Elite game operated under there was not enough memory to store all the planetary information the games uses. Instead random number generators starting from a small set of seed numbers generate the ''Universe in a bottle'' as needed. <br />
<br />
[[Christian Pinder]] the author of Elite TNK gives a good overview of [http://www.christianpinder.com/articles/pseudo-random-number-generation/ pseudo random number generators]. The random number generators used in Elite (and the core of Oolite) are more limited with various non-random patterns sometimes becoming noticeable to the player.<br />
<br />
==Fibonnaci sequence==<br />
The random number generator used by Elite for (most of) the planetary properties is based upon a [http://en.wikipedia.org/wiki/Generalizations_of_Fibonacci_numbers generalized Fibonnaci sequence]. As the numerical sequence cannot be allowed to extend to infinity the sequence is used modulo 65536, a generalized <br />
[http://en.wikipedia.org/wiki/Pisano_period Pisano sequence]. Elite, for 8-bit architecture machines, was coded to perform valid 16-bit arithmetic here. Labelling these three words as ''w0'' ''w1'' ''w2'', the operation performed (''the twist'') to generate the next three words has the old value of ''w1'' copied to ''w0'', the old value of ''w2'' is copied to ''w1'' and the three old values ''w0'' ''w1'' ''w2'' are added together (modulo 65536) to give a new value for ''w2''.<br />
<br />
The Pisano-like sequence repeats perfectly after 131,072 ''twists'', or 32,768 planets per galaxy - well in excess of the 256 planets per galaxy used in the game. However subsets of the bit-patterns used to generate the planetary information repeat considerably more often. For example the system name '''Cetiisqu''' in both Galaxy 1 and Galaxy 5.<br />
<br />
==Initial seed values for each Galaxy==<br />
The starting seed values for the sequence are (in hexadecimal) ''w0'' = 5A4A , ''w1'' = 0248 , ''w2'' = B753, and define some of the properties of planet number 0 in [[Oolite planet list/Galaxy_1|Galaxy 1]], '''Tibedied'''. Apparently several trials were needed by Braben and Bell to find values that did not give rude names for planets nor leave galaxies looking too clustered, uneven.<br />
<br />
Note that the Oolite save file contains the byte-reversed values for ''w0'', ''w1'', ''w2'' : 74 90 , 72 2 , 83 183 as the seed values for Galaxy 1. In Elite, an 8-bit [http://www.atarimax.com/jindroush.atari.org/aopc.html#ROL roll-left operation] was performed on each of the six bytes to cycle the seed values through the 8 galaxies. For example the starting seed value for the planets in Galaxy 2 are (in hexadecimal) ''w0'' = B494 , ''w1'' = 0490 , ''w2'' = 6FA6.<br />
<br />
Note that the eighth role-left would return the seeds (and you) from Galaxy 8 back to Galaxy 1.<br />
<br />
==Planet properties==<br />
Due to the rather bad behavior of the lower 8-bits of each word, the highest-significant-byte (hsb) of each word is usually used. The galactic x-coordinate is the hsb of ''w1''. The y-coordinate is hsb of ''w0'' divided by two, i.e. the upper-most 7 bits of ''w0''. The lower-most 3 bits of the hsb of ''w0'' set the economy type. This overlap between the galactic y-coordinate and economy type is only a partial overlap and hence not noticeable. <br />
<br />
The government type is determined by the lower-most 3 bits of the lowest-significant-byte (lsb) of ''w1'', which is rather badly behaved and leaves Galaxy 4 with missing government types. The hsb of ''w2'' is used to calculate both the planet's radius and determine the first two letters, [http://en.wikipedia.org/wiki/Bigram digram], of the planet's name. To determine the following letters of the planet's name ''the twist'' is performed to generate new values for ''w2''. For each planet the twist is performed 3 times. The fourth twist loads up ''w0'' ''w1'' ''w2'' with the starting values required for the next planet. For instance in Galaxy 1, '''Qube''' follows after '''Tibedied'''.<br />
<br />
[[Image:Fibo3.png|none|thumb|800px|Sequence of systems generated by ''twist'' performed on six-byte seed for each galaxy.]]<br />
<br />
==Planet description string==<br />
<br />
Four of the six bytes for each planet (''w1'' & ''w2'') are also used as the seed for a sub-random-number generator that is used for the planet description text string. The generator used is related to the multiply-by-two [http://en.wikipedia.org/wiki/Multiply-with-carry with carry MWC] technique. The construction of the string uses tokenization, noting that ascii codes end at byte value 127, higher byte values can thus serve as tokens representing grammar rules or whole words. The starting string for each planet's description string is the byte sequence {143 32 105 115 32 151 46}. Using '\x' to proceed tokens (with values shown in hexadecimal) then this string can be written as "\x8F is \x97.". The token \x8F is expanded into 1 of 5 choices, based on the sub-random-number generator, to the phrase 'This planet' etc. The rules governing the expansion of \x97 are quite complicated,[http://www.iancgbell.clara.net/elite/design/index.htm] but basically each planet is usually fabled for something, usually followed by a caveat warning of a dangerous animal. The construction for the planet Lave is as follows:<br />
<br />
<code><br />
<br />
\x8F is \x97.<br />
\xB0 is \x97.<br />
Lave is \x97.<br />
Lave is \x82 \x81 for \x8A and \x8A.<br />
Lave is most \x81 for \x8A and \x8A.<br />
Lave is most famous for \x8A and \x8A.<br />
Lave is most famous for its \x83 \x84 and \x8A.<br />
Lave is most famous for its vast \x84 and \x8A.<br />
Lave is most famous for its vast \x94 forests and \x8A.<br />
Lave is most famous for its vast rain forests and \x8A.<br />
Lave is most famous for its vast rain forests and the \xB1 \x98 \x99.<br />
Lave is most famous for its vast rain forests and the Laveian \x98 \x99.<br />
Lave is most famous for its vast rain forests and the Laveian tree \x99.<br />
Lave is most famous for its vast rain forests and the Laveian tree \x92.<br />
Lave is most famous for its vast rain forests and the Laveian tree grub.<br />
<br />
</code><br />
<br />
Slight differences exist between the <br />
[[Classic Elite planet descriptions|BBC model B classic Elite]] planet description strings and those of [[Oolite planet list|Oolite]].<br />
<br />
One issue is the appendage of ''ian'' to form adjectives from random names. In classic a name ending with a vowel has that vowel dropped, e.g. ''Lavian''. Although this should only be done for the vowels ''E'' and ''I'' this was also done for the other vowels, resulting in ''Cetiisqian evil Stoid'' etc. In Oolite no vowels are dropped, hence '''Laveian'''.<br />
<br />
Another difference is the treatment for the digram ''A*'' where the ''*'' is dropped in forming planet names (hence allowing planet names with an odd number of letters, one of which has to be the letter ''a'' in both classic and Oolite) but in the planet description string becomes ''a?'' in classic, ''.. Beenrian mountain Esseina?oid but scourged by .. '', and ''a' '' in Oolite: '''.. Beenriian mountain A'oid but plagued by ..'''.<br />
<br />
This example also indicates a third issue that sometimes occurs. Some strings require the generation of a random name, which uses the same sub-random number generator as the one constructing the planet description string itself. In Oolite such random names are generated after the rest of the description string, whereas in classic it was calculated as needed, thus the output stream of the generator gets redirected to different uses at different points during the construction. The classic and Oolite planet description strings start identically but can then contain different random names, and end with different phrases. For example in classic, ''This planet is most notable for Tibediedian Arnu brandy but ravaged by unpredictable solar activity.'', whereas in Oolite: ''This planet is most notable for Tibediedian '''Arma''' brandy but '''scourged''' by '''deadly edible grubs'''''.<br />
<br />
The differences are summarized in these [[Planet_description_tables|description tables]].<br />
<br />
<br />
== Links ==<br />
*[[Classic Elite planet descriptions]]<br />
*[[Galaxy Seeds]]<br />
<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=3860 seed = "1 2 3 4 5 6";]: Psuedo-random number generation & planet descriptions (2007)<br />
*[https://bb.oolite.space/viewtopic.php?f=10&t=6837 Question on Universe.m] (2009)<br />
*[https://bb.oolite.space/viewtopic.php?f=3&t=15871 How random is random] (2013)<br />
<br />
[[Category:Oolite]]<br />
[[Category:Classic]]</div>Phkbhttps://wiki.alioth.net/index.php?title=Property_list&diff=83482Property list2024-03-18T13:55:40Z<p>Phkb: Updating BB links</p>
<hr />
<div>[[Image:plist-XML-ASCII-ill.png|thumb|right|300px|the plist formats, XML and OpenStep]]<br />
A '''property list''', or '''plist''' for short, is data structured in a standardized way, used by Oolite for a wide variety of configuration files. The concept originates with [http://en.wikipedia.org/wiki/OpenStep OpenStep], the specification on which the Cocoa and GNUstep programming libraries Oolite uses are based.<br />
<br />
== Formats ==<br />
A property list is an abstract structure which can be represented files using at least five different formats. Since Oolite uses two different implementations of property list support, one on Mac&nbsp;OS&nbsp;X and another on other platforms, it can’t consistently read all these formats.<br />
<br />
Two formats are recommended for Oolite: the traditional [http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/PropertyLists/Introduction/Introduction.htmll OpenStep format], which is easy to read, and the [http://developer.apple.com/documentation/Cocoa/Conceptual/PropertyLists/Articles/XMLPListsConcept.html XML format], which is more flexible. The other formats are Apple binary format (which can be read by both implementations, but is not human-readable), and the GNUstep text and binary formats, which are not supported under Mac&nbsp;OS&nbsp;X.<br />
<br />
While the OpenStep format does not support all the data types used by Oolite – specifically, it does not support [[#integer|integers]], [[#real|reals]] or [[#boolean|booleans]] – Oolite can in most cases automatically convert [[#string|strings]] to these types starting with Oolite 1.69. (If you find an exception, please report it.) As such, the types can be used interchangeably. In prior versions of Oolite, some types, especially booleans, could not be converted automatically, so XML format was required for some property lists.<br />
<br />
<br />
== Data types ==<br />
The rest of this page describes the types of property list element used by Oolite, and how they are represented in OpenStep and XML format property lists. It does not cover all property list content types or file formats and is not a general-purpose reference to property lists.<br />
<br />
<br />
=== string ===<br />
A string is a block of text. In OpenStep format plists, this is surrounded by straight double quotation marks, with “<code>\</code>” being used to escape quotation marks within the string: <code>"a string with a \"quotation\" and a &lt;tag&gt;"</code>. OpenStep format plists also allow single-word strings to be used without quotation marks when this is unambiguous. However, the definition of “unambiguous” differs between Mac&nbsp;OS&nbsp;X and GNUstep, so this usage is not recommended except for numbers. In XML format, it is surrounded by <code>&lt;string&gt;</code> tags, escaping contents with XML entities: <code>&lt;string&gt;a string with a &amp;quot;quotation&amp;quot; and a &amp;lt;tag&amp;gt;&lt;/string&gt;</code>. <br />
<br />
<br />
=== integer ===<br />
An integer is a whole number. In OpenStep format plists, an integer is a string whose contents happen to be digits (and optionally a minus sign), and may be unquoted: <code>-12345</code>. In XML format, it is surrounded by <code>&lt;integer&gt;</code> tags: <code>&lt;integer&gt;-12345&lt;/integer&gt;</code>. <br />
<br />
<br />
=== real ===<br />
A real is a number with a fractional part. In OpenStep format plists, reals are again written as unquoted strings: <code>42.123</code>. In XML format, reals are surrounded by &lt;real&gt; tags: <code>&lt;real&gt;42.123&lt;/real&gt;</code>. Large reals can be expressed in scientific notation: <code>1.35e+20</code> means 1.35 × 10<small><sup>20</sup></small>. Integers and reals are mostly interchangeable in Oolite. <br />
<br />
<br />
=== boolean ===<br />
A boolean is either of the values ''true'' or ''false''. In XML format, the tags <code>&lt;true/&gt;</code> and <code>&lt;false/&gt;</code> can be used. OpenStep format does not support booleans. However, as of Oolite 1.69, a number of different methods can be used to represent them: any of the strings <code>"true"</code>, <code>"yes"</code> or <code>"on"</code> may be used to represent ''true'', and any of the strings <code>"false"</code>, <code>"no"</code> or <code>"off"</code> may be used to represent ''false''. Also the uppercase variants of these keywords can be used as casing is ignored for these booleans. Additionally, the number 0 is interpreted as ''false'' and any other number as ''true'' (but see [[#fuzzy boolean|fuzzy boolean]] below). The recommended form is to use <code>"yes"</code> and <code>"no"</code> to keep a consistent syntax that is not confusing.<br />
<br />
Previous versions of this page indicated that numbers could be used as booleans in OpenStep-format property lists in any version of Oolite. This is incorrect and such usage will not work with versions prior to 1.69.<br />
<br />
=== fuzzy boolean ===<br />
A fuzzy boolean isn't really a property list type; rather, it's a special usage defined by Oolite. If a fuzzy boolean is expected, and a number is encountered, it is treated as a probability between 0 and 1. For instance, if a value of 0.5 is used, it will be treated as ''true'' half the time, and ''false'' the other half. Values other than numbers are treated like [[#boolean|booleans]].<br />
<br />
<br />
=== array ===<br />
An array is an ordered list of objects. <br />
<br />
In '''OpenStep format''', an array is contained in parentheses, with items separated by commas: <code>(0, two, "three and a half", yes)</code>.<br />
You can have several values without name, and they are grouped using round brackets:<br />
<br />
(<br />
value1,<br />
value2,<br />
value3<br />
)<br />
<br />
''Note that between two values there is a comma.''<br />
<br />
<br />
In '''XML format''', it is contained in <code>&lt;array&gt;</code> tags: <code>&lt;array&gt;&lt;integer&gt;0&lt;/integer&gt; &lt;string&gt;two&lt;/string&gt; &lt;string&gt;three and a half&lt;/string&gt; &lt;true/&gt;&lt;/array&gt;</code>.<br />
<br />
Later the values are just accessed by numbers: The first, the second, the next, the last, ...<br />
<br />
Now the part that can make plist files really complex: Wherever you place a value, it can be a primitive one (a number, a string, a boolean value like true/false) or a complex value such as an array or a dictionary. And with this you can create all the complex structures you perceive when looking at Oolite's plist files.<br />
<br />
=== dictionary ===<br />
Dictionaries are the most complex type. They consist of key/value pairs – each pair consists of a key, which is always a string, and a value, which can be any type, including other dictionaries. Each key must be unique, and the order of pairs is not significant. Again, every value has a name or a key.<br />
<br />
In '''OpenStep format''', dictionaries are contained in braces, with key and value separated by <code>=</code> signs and each pair followed by a semicolon: <br />
<br />
{<br />
"name1" = "value1";<br />
"name2" = "value2";<br />
}<br />
<br />
Not all names have to go into quotes, and not all values require them. But you need to watch out where you place them and where not.<br />
<br />
{<br />
length = 42;<br />
width = 36.5;<br />
"long name" = "this is a thing with a really quite long name"; // ''note: quotes for a key with spaces are required''<br />
attributes = ("hairy", "muscular"); // ''note: this is actually an '''array''' of string values following the key''<br />
}<br />
<br />
<br />
<!-- <br />
Use <code> tag if you need to mark elements of code/markup within plain text, such as function or variable names, types, literals, tags etc.<br />
and <pre> tag or space at the beginning of the line (which also results in an implicit <pre> tag) if you need to mark block of code/markup - <br />
several or even one line of code that "do something" beside "exist": declare some object (equipment, function, missiontext entry), specify some value for the property, call js function etc.<br />
<br />
Note: This, of course, is a general recommendation, not a rule - if you know that in this particular case is better to do differently - go for it.<br />
Also, it would probably be better to put it somewhere else, but I'm not sure where it would fit.<br />
--><br />
In '''XML format''', dictionaries are contained in <br />
<code>&lt;dict&gt;</code> tags,</br><br />
with keys specified by <code>&lt;key&gt;</code> tags </br><br />
and immediately followed by values with whatever tag is appropriate for the value type: <br />
&lt;dict&gt;<br />
&lt;key&gt;length&lt;/key&gt;<br />
&lt;integer&gt;42&lt;/integer&gt; <br />
&lt;key&gt;width&lt;/key&gt;<br />
&lt;real&gt;36.5&lt;/real&gt;<br />
&lt;key&gt;long name&lt;/key&gt;<br />
&lt;string&gt;this is a thing with a really quite long name&lt;/string&gt; <br />
&lt;key&gt;attributes&lt;/key&gt;<br />
&lt;array&gt;<br />
&lt;string&gt;hairy&lt;/string&gt;<br />
&lt;string&gt;muscular&lt;/string&gt;<br />
&lt;/array&gt; <br />
&lt;/dict&gt;<br />
<br />
== Root element ==<br />
Every property list has a single value as its root. Typically this is a dictionary. In XML format, the root value must be surrounded by <code>&lt;plist&gt;</code> tags in addition to its normal type tag: <code>&lt;plist&gt; &lt;dictionary&gt; &lt;key&gt;green&lt;/key&gt; &lt;array&gt; &lt;integer&gt;0&lt;/integer&gt; &lt;integer&gt;1&lt;/integer&gt; &lt;integer&gt;0&lt;/integer&gt; &lt;/array&gt; &lt;/dictionary&gt; &lt;/plist&gt;</code> (OpenStep equivalent: <code>{ green = (0, 1, 0); }</code>).<br />
<br />
Under Mac&nbsp;OS&nbsp;X, if the root element of an OpenStep-format property list is a dictionary, it does not have to be surrounded by braces. However, ''this does not work under GNUstep'', so those creating property lists on Macs must be careful. In particular, OpenStep-format property lists exported by Property List Editor may not work under GNUstep.<br />
<br />
== Comments ==<br />
Both formats can also contain comments, which are ignored by the program but are useful to human readers. In OpenStep format, these can either start with “<code>//</code>” and continue to the end of the line, or start with “<code>/*</code>” and end with “<code>*/</code>”. In XML, they start with “<code>&lt;!--</code>” and end with “<code>--&gt;</code>” (and must not contain “<code>--</code>” anywhere else in the comment). <br />
<br />
Examples:<br />
/* this line is a comment in OpenStep format */<br />
// this line is also a comment in OpenStep format<br />
<br />
<nowiki>&lt;!-- this line is a comment in XML --&gt;</nowiki><br />
<br />
<br />
== XML Preamble ==<br />
XML plists also need a standard header, which looks like this:<br />
&lt;?xml version="1.0" encoding="UTF-8"?&gt; <br />
&lt;!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "<nowiki>http://www.apple.com/DTDs/PropertyList-1.0.dtd</nowiki>"&gt;<br />
<br />
<br />
== Real-world Example ==<br />
The following is a shortened version of Oolite’s built-in ''[[equipment.plist]]'', in both OpenStep and XML formats.<br />
<br />
=== OpenStep ===<br />
(<br />
(<br />
1, 300, "Missile", "EQ_MISSILE",<br />
"Faulcon de Lacy HM3 homing missile, fast and accurate when used in conjunction with standard targetting scanners.",<br />
{<br />
available_to_all = "yes";<br />
}<br />
),<br />
(<br />
7, 9000, "Energy Bomb", "EQ_ENERGY_BOMB",<br />
"A one-shot super-weapon capable of destroying all small craft within range."<br />
)<br />
)<br />
<br />
The round brackets are arrays in OpenStep, and are used to group information for a given key. Examples are the exhaust (if one has multiple ones for a given ship), the individual custom views and sub-entities...<br />
<br />
The curly brackets make up dictionaries, which tie together different keys on the same subject. The two main examples there are the overall entries themselves (each ship is made up of a dictionary of keys describing it) and the external views (a dictionary of individual views, each of which is defined as an array of keys describing that given view).<br />
<br />
One would recommend using a programmer-friendly editor like notepad++ or an equivalent. On N++ if you select an open or closing bracket (of whichever flavour) it will automatically highlight the other part of the pair and link them. It's useful for quickly checking that you have your pairs correct - a good habit to get into. And in many cases the kind of log error one sees is indicative of missing brackets. Those and missing quotes and semi-colons are arguably the three most common errors in openStep plists if one excludes typo's. [https://bb.oolite.space/viewtopic.php?p=153556#p153556 Thargoid] (2011)<br />
<br />
=== XML ===<br />
&lt;?xml version="1.0" encoding="UTF-8"?&gt;<br />
&lt;!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" <nowiki>"http://www.apple.com/DTDs/PropertyList-1.0.dtd"</nowiki>&gt;<br />
&lt;plist version="1.0"&gt;<br />
&lt;array&gt;<br />
&lt;array&gt;<br />
&lt;integer&gt;1&lt;/integer&gt;<br />
&lt;integer&gt;300&lt;/integer&gt;<br />
&lt;string&gt;Missile&lt;/string&gt;<br />
&lt;string&gt;EQ_MISSILE&lt;/string&gt;<br />
&lt;string&gt;Faulcon de Lacy HM3 homing missile, fast and accurate when used in conjunction with<br />
standard targetting scanners.&lt;/string&gt;<br />
&lt;dict&gt;<br />
&lt;key&gt;available_to_all&lt;/key&gt;<br />
&lt;true/&gt;<br />
&lt;/dict&gt;<br />
&lt;/array&gt;<br />
&lt;array&gt;<br />
&lt;integer&gt;7&lt;/integer&gt;<br />
&lt;integer&gt;9000&lt;/integer&gt;<br />
&lt;string&gt;Energy Bomb&lt;/string&gt;<br />
&lt;string&gt;EQ_ENERGY_BOMB&lt;/string&gt;<br />
&lt;string&gt;A one-shot super-weapon capable of destroying all small craft within range.&lt;/string&gt;<br />
&lt;/array&gt;<br />
&lt;/array&gt;<br />
&lt;/plist&gt;<br />
<br />
<br />
== Conversion ==<br />
Technically the XML plists are the best, but they are only fully supported on Mac systems. Without a plist editor, the plists are not as easy to read or write as OpenStep plists. However, those editors are only easily available for the Mac. Windows and Linux users will have to rely on text editors to edit those plists. Therefore it is advised to write everything in open step format.<br />
<br />
Converting xml to open step can be done by a python script, written by Cdr. Jettison: [http://www.box.net/shared/g79rnfx4jcp1do35liin download python conversion script] ('' xml plist must be free of comment for the script to work'')<br />
<br />
Note that this conversion script contains CR/LF (carriage return/linefeed) end-of-lines, as used on Windows computers. This will cause ''"bad interpreter: No such file or directory"'' errors if run on Linux. You can strip out the CR characters yourself, or download this [https://www.box.com/s/n06cixgjxsxmph2drucz copy of the script which has already had the CRs removed]. (you will also need to make the script executable)<br />
<br />
==Links==<br />
* [https://bb.oolite.space/viewtopic.php?f=2&t=10039 BB discussion] about converting plists (2011-21)<br />
* [https://bb.oolite.space/viewtopic.php?f=2&t=6836 earlier conversion discussion] (2009)<br />
* [[OXP howto]]<br />
* [[OXP howto plist]] has a section on finding and fixing errors<br />
* [https://bb.oolite.space/viewtopic.php?f=2&t=10949 Property List problems] (2011) - mostly XML, some OpenStep<br />
* [https://bb.oolite.space/viewtopic.php?f=4&t=13442 Clobbering order for AddOns .plist keys] (2013: Is there a defined or predictable order in which plists ''eg'' planetinfo.plist are applied and hence can be clobbered by another plist?)<br />
<br />
[[Category:Oolite]]<br />
[[Category:Legacy scripting]]<br />
[[Category:Oolite scripting]]</div>Phkbhttps://wiki.alioth.net/index.php?title=Planettool&diff=83481Planettool2024-03-18T13:55:26Z<p>Phkb: Updating BB links</p>
<hr />
<div>'''planettool''' is a tool for working with textures for planets. Its main purpose is to convert {{wp2|Equirectangular_projection|equirectangular projection}} textures to {{wp2|Cube_mapping|cube map}} textures. It was developed for Oolite, but should work anywhere you need planet textures or cube maps. It is available from [https://github.com/OoliteProject/planettool the GitHub]. It comes in two forms: a cross-platform command line tool, and a graphical application for Mac OS X only.<br />
[[File:Planettool.png|right]]. There are also a test suite with separate Reference Renderings <br />
<br />
== Overview ==<br />
The basic function of planettool is to read a texture map for a sphere in one coordinate system, and write it out in a different coordinate system (or the same one, if you really want to). It does this using high-resolution sphere domain {{wp|supersampling}} and floating-point, linear-space colour blending for high quality output.<br />
<br />
While doing this, planettool can also mirror and rotate the texture in 3-space.<br />
<br />
== Usage (command line) ==<br />
planettool --input &lt;inType&gt; &lt;inFile&gt; --output &lt;outType&gt; &lt;outputFile&gt; [options]<br />
planettool --generator grid1 --output &lt;outType&gt; &lt;outputFile&gt; [options]<br />
planettool --help<br />
'''planettool''' takes either an input file and type or a generator, and produces and output file of the specified type. In this context, “type” refers to the [[#projections|projections]] listed below.<br />
<br />
The additional options are:<br />
* <code>--size (-S)</code>: The size of the output file, in pixels. For <code>cube</code> and <code>cubex</code> types, this is the size of each edge. For the <code>latlong</code> type, it’s the height of the output file. For the Mercator and Gall-Peters projections, it is the width of the output file. Broadly speaking, a given size value for a cube type provides twice as much overall detail as for the latlong type. Note that textures should always have power-of-two sizes.<br />
* <code>--fast (-F)</code>: Use faster, lower-quality rendering. Useful for previewing options.<br />
* <code>--jitter (-J)</code>: Use stochastic supersampling. This makes rendering much slower, but can eliminate certain types of aliasing artefacts (at the cost of added noise). Try this if you see noticeable artefacts caused by repeating patterns in the input file.<br />
* <code>--flip (-L)</code>: Mirror the texture through the YZ plane of the projection sphere. This corresponds to mirroring a latlong texture horizontally:<br />[[Image:planettool-flip.png]]<br />Oolite requires cube map textures to be flipped.<br />
* <code>--rotate <rx> <ry> <rz> (-R)</code>: Rotate the texture around the projection sphere. Rotations are applied in the following order: first around the X axis, then around the Z axis, and last around the Y axis. If this is inconvenient, you can supply any number of --rotate (and --flip) options, which will be chained together. The axes are assigned as follows:<br />
** The X axis corresponds to a line from 0° latitude 90° W longitude to 0° latitude 90° E longitude – on Earth, [http://maps.google.com/maps?ll=0,-90&q=0,-90&z=4 the Gálapagos Islands] to [http://maps.google.com/maps?ll=0,90&q=0,90&z=4 the Indian Ocean west of Indonesia].<br />
** The Y axis corresponds to a line from 90° S latitude to 90° N latitude – that is, the planet’s axis of rotation.<br />
** The Z axis corresponds to a line from 0° latitude 180° longitude to 0° latitude 0° longitude – [http://maps.google.com/maps?ll=0,180&q=0,180&z=4 a rather boring bit of the Pacific] to [http://maps.google.com/maps?ll=0,0&q=0,0&z=4 the Gulf of Guinea].<br />
* <code>--sixteen-bit</code>: The output image is saved as a sixteen-bit-per-channel picture (that is, 64 bits per pixel).<br />
<br />
== Usage (Mac OS X) ==<br />
[[Image:planettool-mac-gui-0.4.2.png|thumb|alt=Screen shot of Planet Tool 0.4.2 for Mac OS X, showing a Mercator projection of the Earth taken at a 45° angle.|Planet Tool 0.4.2 for Mac OS X]]For Mac OS X 10.5 and later, the command line tool may be used as above, but a normal graphical application named Planet Tool is also included. The rendering functionality is identical to the command line tool, but it has an interactive user interface with a live preview. The Mac version does not work on the newer Macs (because it is for 32-bit Macs?).<br />
<br />
To use, open a PNG image in the normal fashion, or select “New Grid Generator” from the File menu. Planet Tool will guess at appropriate settings based on the size and shape of the input file, but you can change these settings as you wish.<br />
* Input Format and Output Format: select source and target [[#projections|projections]].<br />
* Output Size: select the desired size of the output image. The meaning of this value depends on the output projection, and is explained in the caption. The stepper control changes the size in power-of-two increments – note that textures should always have power-of-two sizes.<br />
* Flip: select to mirror the texture through the YZ plane of the projection sphere. This corresponds to mirroring a latlong texture horizontally:<br />[[Image:planettool-flip.png]]<br />Oolite requires cube map textures to be flipped.<br />
* Rotate: specify rotation of the texture around the projection sphere. Rotations are applied in the following order: first around the X axis, then around the Z axis, and last around the Y axis. The axes are assigned as follows:<br />
** The X axis corresponds to a line from 0° latitude 90° W longitude to 0° latitude 90° E longitude – on Earth, [http://maps.google.com/maps?ll=0,-90&q=0,-90&z=4 the Gálapagos Islands] to [http://maps.google.com/maps?ll=0,90&q=0,90&z=4 the Indian Ocean west of Indonesia].<br />
** The Y axis corresponds to a line from 90° S latitude to 90° N latitude – that is, the planet’s axis of rotation.<br />
** The Z axis corresponds to a line from 0° latitude 180° longitude to 0° latitude 0° longitude – [http://maps.google.com/maps?ll=0,180&q=0,180&z=4 a rather boring bit of the Pacific] to [http://maps.google.com/maps?ll=0,0&q=0,0&z=4 the Gulf of Guinea].<br />
* Fast: select to use faster, lower-quality rendering. Useful for previewing options.<br />
* Jitter: select to use stochastic supersampling. This makes rendering much slower, but can eliminate certain types of aliasing artefacts (at the cost of added noise). Try this if you see noticeable artefacts caused by repeating patterns in the input file.<br />
* Preview pane: shows a fast rendering of the current options.<br />
<br />
Once the appropriate options are selected, press the “Render…” button (or select “Render…” from the File menu) to render the image.<br />
<br />
== Projections ==<br />
Each projection is shown with the grid generator (a grid with lines at ten-degree intervals of latitude and longitude, each 0.5 degrees wide), an image of the Earth, and labels identifying the cardinal directions, with no rotation or flip options selected.<br />
<br />
=== Equirectangular (Latitude/Longitude) ===<br />
[[Image:planettool-grid-latlong.png|128x64px]] [[Image:planettool-world-latlong.jpg|128x64px]] [[Image:planettool-xyz-latlong.png|128x64px]]<br />
<br />
Command line name: <code>latlong</code><br />
<br />
In the {{wp2|Equirectangular_projection|equirectangular projection}}, the intervals between pixels are constant steps of latitude and longitude. This is conceptually simple, but inefficent; lots of pixels are crammed together tightly near the poles.<br />
<br />
=== Cube ===<br />
[[Image:planettool-grid-cube.png|32x192px]] [[Image:planettool-world-cube.jpg|32x192px]] [[Image:planettool-xyz-cube.png|32x192px]]<br />
<br />
Command line name: <code>cube</code><br />
<br />
The surface is divided into six equal areas, which are projected onto squares. These are then stacked vertically, in the following order: +x, -x, +y, -y, +z, -z. This is the format Oolite requires for cube maps.<br />
<br />
'''Note:''' cube maps can be used as input, but support is currently incomplete. Artefacts will appear at the seams between cube faces.<br />
<br />
=== Cube (Cross) ===<br />
[[Image:planettool-grid-cubex.png|128x96px]] [[Image:planettool-world-cubex.jpg|128x96px]] [[Image:planettool-xyz-cubex.png|128x96px]]<br />
<br />
Command line name: <code>cubex</code><br />
<br />
The same projection as cube, but the squares are rearranged into a more human-friendly layout (which can be printed and folded into a cube if you're bored).<br />
<br />
'''Note:''' cross cube maps can be used as input, but support is currently incomplete. Artefacts will appear at the seams between cube faces.<br />
<br />
=== Mercator ===<br />
[[Image:planettool-grid-mercator.png|128x128px]] [[Image:planettool-world-mercator.jpg|128x128px]] [[Image:planettool-xyz-mercator.png|128x128px]]<br />
<br />
Command line name: <code>mercator</code><br />
<br />
The main feature of the {{wp2|Mercator_projection|Mercator projection}} is that it preserves angles, making it the traditional projection for sailors and people who can't be bothered to choose a more appropriate projection for whatever they're doing. Since it wastes even more pixels near the poles than the equirectangular projection and doesn’t actually reach the poles at all, it’s entirely unsuitable for texturing, but could be useful if you want a wall map.<br />
<br />
'''Note:''' the Mercator projection can only be used for output.<br />
<br />
=== Gall–Peters ===<br />
[[Image:planettool-grid-gall-peters.png|128x81px]] [[Image:planettool-world-gall-peters.jpg| 128x81px]] [[Image:planettool-xyz-gall-peters.png| 128x81px]]<br />
<br />
Command line name: <code>gall-peters</code><br />
<br />
Another real-word map projection, the {{wp2|Gall–Peters_projection|Gall–Peters projection}} is a variety of cylindric equal-area projection, in which the proportions between different areas are preserved. This is a somewhat popular projection among people who want to make political points about the sizes of different countries, but not so much among cartographers, who prefer maps that give some idea of the shapes of things and can be used for navigation.<br />
<br />
'''Note:''' the Gall–Peters projection can only be used for output.<br />
<br />
== Links ==<br />
* [https://bb.oolite.space/viewtopic.php?t=7843 Planettool announcement thread] on Oolite forum.<br />
* The world map image used for examples (warning: 2.2 MiB, 5400 × 2700 pixels): [http://veimages.gsfc.nasa.gov/7109/world.topo.bathy.200410.3x5400x2700.jpg world.topo.bathy.200410.3x5400x2700.jpg] from NASA:s [http://visibleearth.nasa.gov/view_set.php?categoryID=2363 Visible Earth: Blue Marble] collection.<br />
* [[Planetinfo.plist]] - custom data for systems in Oolite.<br />
* [[Materials_in_Oolite]] - further infos about textures in Oolite.<br />
* [[Media:Planettool_1.0.1.zip.oxz]] - planettool v1.0.1 binary for Windows 64-bit. Once downloaded, remove the oxz extension and unzip normally.<br />
=== Discussions ===<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=21259 Planet illumination user defined colors] ([[User:Another_commander|Another_commander]] 2022)<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=8222 Planettool Question] (2010): "LatLong" sizes vs Cube Sizes<br />
[[Category:Oolite]] [[Category:Oolite_utilities]]</div>Phkbhttps://wiki.alioth.net/index.php?title=Personalities_OXP&diff=83480Personalities OXP2024-03-18T13:54:59Z<p>Phkb: Updating BB links</p>
<hr />
<div>Adds Oolite community personalities to your game<br />
[[File:Lestradae.png|right|400px]]<br />
== Overview ==<br />
This [[OXP]] adds characters we all know and love from the [https://bb.oolite.space Oolite Bulletin Boards] to the Ooniverse. Each personality has some specific behaviour and communication patterns.<br />
<br />
== Notable Features ==<br />
There is a 65% chance that you will meet one well-known personality when you either jump into a new system or launch from a main station. Some of them are traders or engage in asteroid mining, some of them are bounty hunters and will protect you in case a pirate attacks you—or attack you in case you are the pirate. Some will only engage Thargoids. And some greet you friendly first, but may try to make you one more step on their ELITE ladder if nobody else is looking. Their behaviour in combat varies, but expect all of them to be a little tougher than your average adversary.<br />
<br />
A list of the personalities contained in the basic OXP can be found at the very bottom of its ReadMe, separated by enough whitespace. If you like to be surprised, don't scroll down.<br />
<br />
== Notes on Alnivel's update version 0.91 (2022) ==<br />
Update of the original 10 personalities to work with newer versions of Oolite. Adds more options. <br />
<br />
== Notes on original version 0.9 (2009)==<br />
=== DISCLAIMER ===<br />
Personalities.oxp is a '''work in progress''', and this version 0.9 is meant as a sneak preview, to give you a feeling what it looks like. It works as it is, but the final release may be different. Please help improving it by reporting bugs and strange or unexpected behaviour in [https://bb.oolite.space/viewtopic.php?t=6806 its thread on the Oolite Bulletin Boards]. Thanks very much!<br />
<br />
----<br />
== Tales from the spacelanes... ==<br />
<br />
I'd stopped off at a [[Space Bar]] for a quick beverage and perhaps news of a tempting contract in the vicinity and was rather pleased to find a valuable bounty target en route to my next destination. A few jumps later and I was sharing a system with potentially 8000 buckshee credits.<br />
<br />
As the system was an Anarchy I had to splash a couple of pirate groups as I torused towards the station and just as I'd finished off the second group I received word that my target had been liquidated by someone else. Foul language may have been employed at this point.<br />
<br />
Making the best of the situation I headed for the station to refuel and offload cargo. I dropped out of Torus a few seconds later when I encountered of all things [[User:Wyvern|Commander Wyvern]] in his Caddy Omega heading towards the witchpoint. Suddenly I had my suspicions of exactly who had snaffled my 8000Cr.<br />
<br />
These suspicions were confirmed when shortly after passing Wyvern I encountered the remnants of my targets escorts. Clearly the meagre bounties on these peons had been beneath the notice of the mighty Caddy.<br />
<br />
The moral of the story? No matter your combat rating or how high you might stand in the [[Bounty Hunter Guild|bounty hunters' guild]], there's always someone in the eight charts with a sharper killer instinct than you. Travel safely friends and watch your six. [https://bb.oolite.space/viewtopic.php?p=127521#p127521 Loxley (2011)]<br />
<br />
----<br />
== Instructions ==<br />
<br />
=== How do I add myself as a character? ===<br />
<span id="Adding_yourself_as_a_character"></span> <!-- To keep old links to this section working --><br />
<!--TODO: <br />
* hide it under spoiler - DONE<br />
* add note that this is rather docs / an instruction in case if they want to do it completely by themself - DONE<br />
* move instructions how remove / add in new section - DONE<br />
* make tables with behavior options have same width<br />
* add example of using behavior options<br />
* add list oxp to list of other oxp's that can be used<br />
--><br />
'''Note:''' Take this instruction not as a “do it all yourself”, but rather as a reference in case you want to tweak something for yourself (or, well, do everything all yourself). You can always ask for help in the [https://bb.oolite.space/viewtopic.php?f=4&t=6806 BB thread] or even just leave a request there to be added.<br />
<br />
You can do this either by modifying this OXP or by creating a separate one, but in any case, you will need at least basic knowledge of how to work on them. It is still preferable to be separate, but still choose as you like or can! A good starting point and reference would be [[OXP_howto|OXP howto]].<br />
<br />
<br />
<div class="mw-collapsible mw-collapsed custom-collapsible-left-toggle" data-expandtext="Expand Instruction" data-collapsetext="Collapse Instruction" style="overflow:auto;"><br />
'''Make an entry about your ship in [[shipdata.plist|shipdata.plist]]'''<br />
#As a base you can take a entry from the game files or OXP or, if your ship is from OXP, from its files.<br />
#Adjust the parameters so that they correspond to the specs of your ship in the game. Pay special attention to:<br />
#* [[shipdata.plist#max_flight_speed|max_flight_speed]], <br />
#* [[shipdata.plist#max_flight_pitch|max_flight_pitch]], <br />
#* [[shipdata.plist#max_flight_roll|max_flight_roll]], <br />
#* [[shipdata.plist#thrust|thrust]], <br />
#* [[shipdata.plist#max_energy|max_energy]], <br />
#* [[shipdata.plist#energy_recharge_rate|energy_recharge_rate]], <br />
#* laser types (only [[shipdata.plist#forward_weapon_type|forward]] and [[shipdata.plist#aft_weapon_type|aft]] laser available), <br />
#* [[shipdata.plist#laser_color|laser_color]],<br />
#* the number of [[shipdata.plist#missiles|missiles]] you carry and their [[shipdata.plist#missile_role|main type]], <br />
#* [[shipdata.plist#frangible|frangibility]] of your ship (if applicable),<br />
#* installed equipment extras:<br />
#** [[shipdata.plist#has_ecm|ECM]],<br />
#** [[shipdata.plist#has_escape_pod|Escape Capsule]],<br />
#** [[shipdata.plist#has_fuel_injection|Fuel Injectors]],<br />
#** [[shipdata.plist#has_scoop|Fuel Scoops]],<br />
#** [[shipdata.plist#has_shield_booster|Shield Boosters]],<br />
#** [[shipdata.plist#has_shield_enhancer|Shield Enhancers]],<br />
#** an Extra Energy Unit or Naval Energy Unit (will influence the [[shipdata.plist#max_energy|max_energy]]),<br />
#** [[shipdata.plist#heat_insulation|Heat Shields]],<br />
#** [[shipdata.plist#has_cloaking_device|Cloaking Device]],<br />
#** [[shipdata.plist#has_energy_bomb|Q-bomb]]<br />
<br />
'''Make sure that models, textures and shaders used be ship will be available not only for you''' <br />
<br />
# Copy them to the appropriate folder of OXP. <br />
# (Optional) It would be great if you change resource names, both filenames and references inside the models (.dat) and shipdata.plist, as this will help avoid conflicts. <br />
::Model files are just regular text files, same as shipdata.plist, so they can be opened in a any decent text editor. It might be a good idea to use search and replace - one Griff's Cobra model has more than 800 lines with the name of the texture.<br />
<br />
'''(Optional) Add a character entry in [[characters.plist|characters.plist]]'''<br />
<br />
If you're carrying an escape capsule with you, you should create this entry, or one day a complete stranger will escape the ship instead of you!<br />
<br />
Example of such a entry:<br />
<pre><br />
"personalities-hesperus" = {<br />
bounty = 150; <br />
name = "Captain Jack Hesperus"; <br />
"random_seed" = "0 0 0 0 0 0"; <br />
"short_description" = "a notorious, feline trumble dealer from Orrira"; <br />
}; <br />
</pre><br />
<br />
'''Give your ship a personality (shipdata.plist)'''<br />
:*'''[[shipdata.plist#name|name]]''' - <code>shipname: charactername</code>.<br />
:*'''[[shipdata.plist#pilot|pilot]]''' - key of entry in characters.plist, for example,<code>personalities-hesperus</code>.<br />
:*'''[[shipdata.plist#roles|roles]]''':<br />
::: general role: <code>personalities</code><br />
::: occupation: <code>personalities_cruiser</code> (trader), <code>personalities_privateer</code> (pirate) or <code>personalities_hunter</code> (bounty hunter)<br />
::: spawn options (several or even none may be specified): <br />
::::<code>personalities_galaxy_any</code> - can appear in space or near main station in any galaxy<br />
::::<code>personalities_launcher_galaxy_any</code> - can apear launching from main station in any galaxy (some ships are too big for that)<br />
::::<code>personalities_galaxy_0</code>, <code>personalities_launcher_galaxy_0</code> - similar to 'any' variant but limited only to the Galaxy '''One'''.<br />
::::<code>personalities_yourCharacterName</code> - opional but useful for testing<br />
::::'''Examples:'''<br />
::::# <code>personalities personalities_privateer personalities_galaxy_any personalities_launcher_galaxy_any personalities_aodhan</code> - pirate by name "Aodhan" that can appear in any galaxy both in space and via launch from main station,<br />
::::# <code>personalities personalities_hunter personalities_galaxy_7 personalities_launcher_galaxy_7 personalities_cwydion</code> - bounty hunter by name "Gwydion" that can appear only in Galaxy Eight both in space and via launch from main station,<br />
::::# <code>personalities personalities_cruiser personalities_galaxy_0 ppersonalities_galaxy_1 personalities_galaxy_2 personalities_jameson</code> - trader by name "Jameson" that can appear only in Galaxy One, Two and Three and only in space<br />
<br />
:*'''[[shipdata.plist#ai_type|ai_type]]''' and '''[[shipdata.plist#script|script]]''' - there are two options here: plist AI or priority AI<br />
::''Plist AI'' - relatively obsolete, but more straightforward for making your own tweaks:<br />
::: '''ai_type''' - <code>personalitiesCruiserAI.plist</code>, <code>personalitiesHunterAI.plist</code> or <code>personalitiesPrivateerAI.plist</code> <br />
::: '''script''' - <code>personalities-ship-script.js</code><br />
::''Priority AI'' - available more communications and slightly better interaction with the environment:<br />
::: '''ai_type''' - <code>personalities-cruiserAI.js</code>, <code>personalities-hunterAI.js</code> or <code>personalities-privateerAI.js</code> <br />
::: '''script''' - <code>personalities-priorityai-ship-script.js</code><br />
::''You can also put in your own AI scripts, but then OXP will only decide when to add your personality, and you have to implement everything else yourself.''<br />
<br />
'''Customize behavior via [[shipdata.plist#Format|script_info]] (shipdata.plist)''' <!--NOTE: I link to Format section, because in script_info almost nothing--><br />
<br />
{| class="wikitable" style="vertical-align:middle;"<br />
|+ Plist AI<br />
|- <br />
! Key<br />
! Key meaning / commentary<br />
! Value<br />
! Value meaning / commentary<br />
|- <br />
| name<br />
| internal identifier, required<br />
| <br />
| <br />
|- <br />
| displayName<br />
| the character's human readable name<br />
| <br />
| <br />
|- <br />
| attacked<br />
| what to do when attacked<br />
| "flee"<br />
| lets the ship flee with injectors immediatly if attacked<br />
|- <br />
| attackProbability<br />
| chance of finding the ship's prey (see below) with each scan<br />
| number in range [0; 1]<br />
| <br />
|- <br />
| cargoType<br />
| special cargo carried by the ship (e.g. "missilepod")<br />
| role<br />
| <br />
|- <br />
| rowspan="3" | energyDown<br />
| what to do in combat when energy is less than 1/2 (shield down)<br />
| "flee"<br />
| lets the ship flee with injectors<br />
|- <br />
| <br />
| "jump"<br />
| lets the ship jump out<br />
|- <br />
| <br />
| "cloak"<br />
| lets the ship only use its cloak if its shields depleted<br />
|- <br />
| rowspan="2" | energyLow<br />
| rowspan="2" | what to do in combat when energy is less than 1/4<br />
| "flee"<br />
| lets the ship flee with injectors<br />
|- <br />
| "jump"<br />
| lets the ship jump out<br />
|- <br />
| rowspan="2" | launch<br />
| rowspan="2" | what to do after launch from the main station<br />
| "jump"<br />
| jump to another system<br />
|- <br />
| "stay"<br />
| keep in this system<br />
|- <br />
| maxCargo<br />
| the maximum number of cargopods spawned if the ship dies<br />
| integer<br />
| <br />
|- <br />
| miningProbability<br />
| chance of finding asteroids with each scan (only if no prey found) and mining them<br />
| rowspan="3" | number in range [0; 1]<br />
| <br />
|- <br />
| fuelstationProbability<br />
| chance of using the fuel station (if any), if spawned at witchpoint<br />
|<br />
|- <br />
| sunskimProbability<br />
| chance of going to the sun first, if spawned at witchpoint<br />
|<br />
|- <br />
| rowspan="4" | prey<br />
| rowspan="4" | who to hunt<br />
| "traders"<br />
| (privateers only) will only attack ships which are victims<br />
|- <br />
| "everybody"<br />
| (privateers only) will attack any ship<br />
|- <br />
| "offenders"<br />
| (hunters only) will attack any ship with a bounty above a certain treshold<br />
|- <br />
| "thargoids"<br />
| (hunters only) will only attack Thargoids, not pirates<br />
|- <br />
| preyLimit<br />
| (hunters only) bounty treshold for offenders (or fugitives) to be attacked<br />
| integer<br />
|<br />
|}<br />
<br />
{| class="wikitable" style="vertical-align:middle;"<br />
|+Priority AI<br />
|-<br />
! Key<br />
! Key meaning / commentary<br />
! Value<br />
! Value meaning / commentary<br />
|-<br />
| name<br />
| internal identifier, required<br />
| <br />
| <br />
|-<br />
| displayName<br />
| the character's human readable name, required<br />
| <br />
| <br />
|-<br />
| rowspan="3" | attacked<br />
| rowspan="3" | what to do when attacked<br />
| "flee"<br />
| flee away from the fight<br />
|-<br />
| "destroy"<br />
| destroy the attacker, even if they no longer wants to fight<br />
|-<br />
| "repel"<br />
| repel the attacker<br />
|-<br />
| rowspan="3" | energyDown<br />
| rowspan="3" | what to do in combat when energy is less than 1/2 (shield down)<br />
| "flee"<br />
| flee away from the fight<br />
|-<br />
| "jump"<br />
| try to witchspace out from the combat<br />
|-<br />
| "continue"<br />
| keep fighting (default)<br />
|-<br />
| rowspan="3" | energyLow<br />
| rowspan="3" | what to do in combat when energy is less than 1/4<br />
| "flee"<br />
| flee away from the fight (default)<br />
|-<br />
| "jump"<br />
| try to witchspace out from the combat<br />
|-<br />
| "continue"<br />
| keep fighting (default)<br />
|-<br />
| rowspan="3" | launch<br />
| rowspan="3" | what to do after launch from the main station<br />
| "jump"<br />
| jump to another system<br />
|-<br />
| "stay"<br />
| keep in this system<br />
|-<br />
| "random"<br />
| 50 / 50 (default)<br />
|-<br />
| rowspan="6" | prey<br />
| rowspan="6" | who to hunt<br />
| "everybody"<br />
| (privateer only) any clean or not ship (but not police)<br />
|-<br />
| "loneVictim"<br />
| (privateer only) lone pirate victims<br />
|-<br />
| "traders"<br />
| (privateer only) pirate victim ships<br />
|-<br />
| "offenders"<br />
| (hunter only) any offender with sufficient bounty<br />
|-<br />
| "thargoids"<br />
| (hunter only) only thargoids<br />
|-<br />
| "nobody"<br />
| (default) but logicale suitable only for cruisers<br />
|-<br />
| preyLimit<br />
| the minimum bounty that is worth attacking prey<br />
| positive number<br />
| if not specified, the standard fine threshold / 2 is used<br />
|-<br />
| rowspan="6" | preyCombatOdds<br />
| rowspan="6" | what combat odds are sufficient to attack, "good" is default<br />
| "none"<br />
| rowspan="6" | Note that the standard oolite hunters are happy with the (not) bad outcome: <br \>"if we require bounty hunters to have actual *good* odds they'll never shoot anything" <br \>(from oolite-bountyHunterAI.js)<br />
|-<br />
| "excelent"<br />
|-<br />
| "good"<br />
|-<br />
| "bad"<br />
|-<br />
| "terrible"<br />
|-<br />
| "any"<br />
|-<br />
| rowspan="3" | distressCallReaction<br />
| rowspan="3" | what to do if you hear a distress call if combat odds good enough<br />
| "ignore"<br />
| (default) do distressCallInsufficientOddsReaction<br />
|-<br />
| "help"<br />
| intervene on the side of the victim (this is not necessarily who sent the call)<br />
|-<br />
| "finishOff"<br />
| attack the sender of the call<br />
|-<br />
| distressCallCombatOdds<br />
| what combat odds are sufficient to intervene<br />
| <br />
| same as for preyCombatOdds<br />
|-<br />
| rowspan="3" | distressCallInsufficientOddsReaction<br />
| rowspan="3" | what to do if it's too dangerous to intervene<br />
| "ignore"<br />
| (default) do nothing, just fly by<br />
|-<br />
| "leaveVicinity"<br />
| leave vicinity of the sender of distress call<br />
|-<br />
| "jumpOut"<br />
| preventively try to witchspace out<br />
|-<br />
| miningProbability<br />
| chance to start mining if nothing to do more and it posible<br />
| rowspan="3" | number in range [0; 1]<br />
| <br />
|-<br />
| fuelstationProbability<br />
| chance to to refuel at fuelstation after witchspace jump if posible and need<br />
| <br />
|-<br />
| sunskimProbability<br />
| chance to sunskim after witchspace jump if posible and need<br />
| <br />
|}<br />
<br />
<br />
'''Add communication messages into [[Misc_plists#descriptions.plist|description.plist]]'''<br />
<div style="display: flex; flex-flow: row wrap; max-width: fit-content;"> <!-- The table is on the side if there is room, otherwise it below and centered --><br />
<div><br />
# Add entry of what types of messages are used, ''name'' below must be same as in '''script_info''':<br />
::<code>"personalities-''name''-messageTypes" = "attack attacked captured chatter dead flee jump kill launch witchspace"</code><br />
# Add the comms themselves:<br />
::<code>"personalities-''name''-attack" = ("Phrase to be sent when attack");</code><br />
::<code>"personalities-''name''-attacked" = ("Either this phrase will be sent..", "or this one when ship attacked");</code><br />
::<code>"personalities-''name''-chatter" = ("Also you can add...{pause: 5} some dramatic pauses!");</code><br />
</div><br />
<div style="flex-grow: 1; margin-left: 20px"><br />
{| class="wikitable" style="vertical-align:middle; margin: auto"<br />
|+ List of available message types<br />
|-<br />
! Comms key<br />
! Full form (PriorityAI scripts)<br />
! Notes<br />
|-<br />
| attack<br />
| oolite_beginningAttack<br />
| Commencing an attack, repetitive<br />
|-<br />
| flee<br />
| oolite_startFleeing<br />
| Ship begins fleeing combat<br />
|-<br />
| jump<br />
| oolite_engageWitchspaceDriveFlee<br />
| Ship to escape from a fight via witchspace jump<br />
|-<br />
| kill<br />
| oolite_killedTarget<br />
| Current fight target destroyed<br />
|-<br />
| witchspace<br />
| oolite_engageWitchspaceDrive<br />
| Preparing to witchspace jump<br />
|-<br />
| greet<br />
| personalitiesOXP_greet<br />
| (Only with PriorityAI) First chatter<br />
|-<br />
| chatter<br />
| personalitiesOXP_chatter<br />
| Player nearby, repetitive<br />
|-<br />
| launch<br />
| personalitiesOXP_launch<br />
| Launched from a main station<br />
|-<br />
| attacked<br />
| personalitiesOXP_attacked<br />
| Someone hits the ship, repetitive<br />
|-<br />
| dead<br />
| personalitiesOXP_dead<br />
| Killed or ejected escape pod<br />
|-<br />
| captured<br />
| personalitiesOXP_captured<br />
| Escape pod unloaded at station<br />
|}<br />
</div><br />
</div><br />
<br />
'''Note:''' With PriorityAI scripts you can also use any [[Oolite_Javascript_Reference:_PriorityAI_Documentation#Standard_Communications_Keys PriorityAI|standart comms key]] with or without <code>oolite_</code> prefix:<br />
"personalities-''name''-messageTypes" = "dockingWait oolite_selectedStation"; // In messageTypes entry types must be writen same as in descriptions key!<br />
"personalities-''name''-[[Oolite_Javascript_Reference:_PriorityAI_Documentation#oolite_dockingWait|dockingWait]]" = ("Complaints about tedious waiting for docking");<br />
"personalities-''name''-[[Oolite_Javascript_Reference:_PriorityAI_Documentation#oolite_selectedStation|oolite_selectedStation]]" = ("Phrase about going to check local ConStore");<br />
<br />
If you have any questions or suggestions, don't hesitate to ask them in [https://bb.oolite.space/viewtopic.php?f=4&t=6806 BB thread] or send a PM to Alnivel.<br />
</div><br />
---------------<br />
<br />
*[https://bb.oolite.space/viewtopic.php?p=286858#p286858 Alnivel's 2022 instructions & comments]<br />
<br />
*[https://bb.oolite.space/viewtopic.php?p=287046#p287046 Post to Lestradae] with some suggestions for updating his character<br />
<br />
<br />
=== How do I remove my own character? ===<br />
# Open the shipdata.plist inside the "Config" folder.<br />
# Look for the entry "personalities-<yourname>".<br />
# Remove it completely '''OR''' Go to its "roles" key, and delete the roles with "personalities" and "personalities_launcher".<br />
<br />
== Minimum Requirements ==<br />
Personalities 0.95 was updated for Oolite 1.90. The AI's are still in .plist form, but can now be located in a specific system/galaxy.<br />
Personalities 0.9 was written and tested on [[Oolite]] 1.73.4. It should run on Oolite 1.73 and above. Some of its features will only be available and enabled from Oolite 1.74 onwards.<br />
<br />
== Download Location ==<br />
[[Media:PersonalitiesOXP.zip|Personalities.oxp v 0.9.2]] (2022) <!-- (downloaded {{#downloads:PersonalitiesOXP.zip}} times) --><br />
<br />
[http://app.box.com/shared/4h1n4j1dvy Personalities.oxp v 0.9] (2009) is available for download via Box.com.<br />
<br />
== Installation ==<br />
Move or copy the file Personalities.oxp from the main download folder into your AddOns folder. Where this resides, depends on your OS and your personal preferences. Restart Oolite.<br />
<br />
[[File:IconLib.png|right]]<br />
== Tweaking ==<br />
This oxp is customisable through [[Library OXP]] - via the '''Config for AddOns''' option on the docked F4 screen<br />
<br />
== Version History ==<br />
*version 0.9.2 (October, 2022)<br />
:new AI scripts, most personalities now use them<br />
:with new scripts [[Oolite_Javascript_Reference:_PriorityAI_Documentation#Standard_Communications_Keys|standard communications keys]] can be used (however, it makes sense to use only those that are used by AI), old comms keys still works <br />
:fixed a bug in plistAI scripts that caused the ships themselves to never attack<br />
:pauses can be added to comms messages: "The message will be split{pause: 12}and the second half will be sent with specified delay"<br />
:appearance can be limited through the list of roles:<br />
::1) "personalities personalities_privateer personalities_galaxy_any personalities_launcher_galaxy_any personalities_aodhan" - <br />
:::pirate by name "Aodhan" that can appear in any galaxy both in space and via launch from main station<br />
::2) "personalities personalities_cruiser personalities_galaxy_0 ppersonalities_galaxy_1 personalities_galaxy_2 personalities_jameson" - <br />
:::trader by name "Jameson" that can appear only in Galaxy One, Two and Three and only in space<br />
:added methods for setting callbacks at escape pod scooping and unloading<br />
:added method to adjust spawn weight (for galaxies) in case if someone suddenly decides to use 100 ship variants with a weight of (0.01) each<br />
<br />
*version 0.9.1 (September, 2022) by Alnivel<br />
:requires Oolite 1.90 (probably can work even on versions 1.82+, but not tested)<br />
:fixed several broken function calls<br />
:changed names of internal variables and resources to avoid conflicts<br />
:changed comms message using method, it now requires a description.plist entry to be defined in this format:<br />
::"personalities-<personality name>-messageTypes" = "<list of space separated message types>";<br />
:rewritten methods for the spawn of special ships, changing a probability of this spawns now easier<br />
:added method for adding role to appear on a specified condition, such as system id, after some event ''etc''<br />
<br />
*version 0.9 (November 5th, 2009) by Commander McLane<br />
:functional version for testing and feedback purposes<br />
:script may still get worked over<br />
:requires Oolite 1.73<br />
<br />
== Links ==<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=6806 Personalities.oxp] (2009 - date)<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=6736 Forum Denizen OXPs] This seems to be the fons et origo of this oxp (2009)<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=569 How would you like to appear as a Cameo in OOLite?] (2005)<br />
<br />
[[Category:Oolite]]<br />
{{ambience-OXP}}</div>Phkbhttps://wiki.alioth.net/index.php?title=Oolite_JavaScript_Reference:_System&diff=83479Oolite JavaScript Reference: System2024-03-18T13:51:01Z<p>Phkb: Updating BB links</p>
<hr />
<div><small>'''Prototype:''' <code>Object</code></small><br /><br />
<small>'''Subtypes:''' none</small><br />
<br />
The '''<code>System</code>''' class represents the current star system. There is always one <code>System</code> object, available through the global property <code>system</code>.<br />
<br />
Attempts to change system properties are ignored in interstellar space (i.e., the place you end up in after a witchspace malfunction).<br />
<br />
== Properties ==<br />
=== <code>allShips</code> ===<br />
'''allShips''' : Array (read-only)<br />
A list of the ships in the system.<br />
<br />
'''See Also:''' <code>[[#entitiesWithScanClass|entitiesWithScanClass]]()</code>, <code>[[#filteredEntities|filteredEntities]]()</code>, <code>[[#shipsWithPrimaryRole|shipsWithPrimaryRole]]()</code>, <code>[[#shipsWithRole|shipsWithRole]]()</code><br />
<br />
=== <code>allVisualEffects</code> ===<br />
{{oolite-prop-added|1.77}}<br />
'''allVisualEffects''' : Array (read-only)<br />
A list of the [[Oolite_JavaScript_Reference:_VisualEffect|visual effects]] in the system.<br />
<br />
=== <code>ambientLevel</code> ===<br />
{{oolite-prop-added|1.81}}<br />
'''ambientLevel''' : float (read/write)<br />
Adjusts the level of ambient light in the current system. Values should typically be between 0.0 and 1.0 (1.0 is the default) but can be higher for a flat lit, cartoon-like effect. This is will override the "ambient_level" setting defined in [[Planetinfo.plist]]. The change is not permanent and will be reset when the system is reloaded.<br />
<br />
=== <code>breakPattern</code> ===<br />
{{oolite-prop-added|1.77}}<br />
'''breakPattern''' : Boolean (read/write)<br />
If <code>true</code> (the default state set on entry to a new system), the break pattern will be shown to the player as they exit witchspace. While this property may be set from places other than the <code>shipWillExitWitchspace</code> world script event, it is pointless to do so.<br />
<br />
Unlike all other system properties, this one may be changed on entry to interstellar space.<br />
<br />
=== <code>description</code> ===<br />
'''description''' : String (read/write)<br />
The description of the current system, as seen on the planet info screen.<br />
<br />
=== <code>economy</code> ===<br />
'''economy''' : Number (integer, read/write)<br />
The type of economy in the current system, ranging from 0 (Rich Industrial) to 7 (Poor Agricultural).<br />
<br />
'''See Also:''' [[Planetinfo.plist#Economy|Planetinfo.plist]], <code>[[#economyDescription|economyDescription]]</code><br />
<br />
=== <code>economyDescription</code> ===<br />
'''economyDescription''' : String (read-only)<br />
A localized description of the economy type, for example, <code>"Mostly Industrial"</code>. Since this string is localized, it should only be used for display purposes.<br />
<br />
'''See Also:''' <code>[[#economy|economy]]</code><br />
<br />
=== <code>government</code> ===<br />
'''government''' : Number (read/write, integer)<br />
The type of government in the current system, ranging from 0 (Anarchy) to 7 (Corporate State).<br />
<br />
'''See Also:''' [[Planetinfo.plist#Government|Planetinfo.plist]], <code>[[#governmentDescription|governmentDescription]]</code><br />
<br />
=== <code>governmentDescription</code> ===<br />
'''governmentDescription''' : String (read-only)<br />
A localized description of the government type, for example, <code>"Democracy"</code>. Since this string is localized, it should only be used for display purposes.<br />
<br />
'''See Also:''' <code>[[#government|government]]</code><br />
<br />
=== <code>ID</code> ===<br />
'''ID''' : Number (integer, read-only)<br />
A number identifying the system. 0 to 255, or -1 for interstellar space.<br />
<br />
=== <code>info</code> ===<br />
'''info''' : [[Oolite JavaScript Reference: SystemInfo|SystemInfo]] (read/write)<br />
Allows access to system properties, using the same keys as [[planetinfo.plist]].<br />
<br />
'''Example:'''<br />
system.info.description = "This is a dull planet.";<br />
<br />
=== <code>inhabitantsDescription</code> ===<br />
'''inhabitantsDescription''' : String (read/write)<br />
The description of the inhabitants of the current system, such as <code>"Slimy Blue Frogs"</code>.<br />
<br />
=== <code>isInterstellarSpace</code> ===<br />
'''isInterstellarSpace''' : Boolean (read-only)<br />
<code>true</code> if the current system is in interstellar space, <code>false</code> otherwise.<br />
<br />
=== <code>mainPlanet</code> ===<br />
'''mainPlanet''' : {{oojsclass|Planet}} (read-only)<br />
The system’s main planet, or <code>null</code> if there is none.<br />
<br />
'''See also''': <code>[[Oolite JavaScript Reference: Planet#isMainPlanet|planet.isMainPlanet]]</code><br />
<br />
=== <code>mainStation</code> ===<br />
'''mainStation''' : [[Oolite JavaScript Reference: Station|Station]] (read-only)<br />
The system’s main station or <code>null</code> if there is none.<br />
<br />
'''See also''': <code>[[Oolite JavaScript Reference: Station#isMainStation|station.isMainStation]]</code><br />
<br />
=== <code>name</code> ===<br />
'''name''' : String (read/write)<br />
The name of the system.<br />
<br />
=== <code>planets</code> ===<br />
'''planets''' : Array (read-only)<br />
A list of the planets in the system.<br />
<br />
=== <code>population</code> ===<br />
'''population''' : Number (integer, read/write)<br />
The population of the current system.<br />
<br />
=== <code>populatorSettings</code> ===<br />
{{oolite-prop-added|1.79}}<br />
'''populatorSettings''' : Dictionary (read-only)<br />
The current [[Oolite_System_Populator|populator settings]]. This is only useful to read while the system population is being prepared. After that point, further changes are meaningless.<br />
<br />
'''See Also:''' <code>[[#setPopulator|setPopulator]]</code><br />
<br />
=== <code>productivity</code> ===<br />
'''productivity''' : Number (integer, read/write)<br />
The productivity of the current system.<br />
<br />
=== <code>pseudoRandom100</code> ===<br />
'''pseudoRandom100''' : Number (integer, read-only)<br />
A random number between 0 and 99 that is always the same for a given system. '''Important:''' this method has the undesirable side effect of resetting the system random number generator. It should only be used for backwards-compatibility. For new development, use <code>[[#scrambledPseudoRandomNumber|scrambledPseudoRandomNumber]]()</code> or <code>[[#pseudoRandomNumber|pseudoRandomNumber]]</code>.<br />
<br />
=== <code>pseudoRandom256</code> ===<br />
'''pseudoRandom256''' : Number (integer, read-only)<br />
A random number between 0 and 255 that is always the same for a given system. '''Important:''' this method has the undesirable side effect of resetting the system random number generator. It should only be used for backwards-compatibility. For new development, use <code>[[#scrambledPseudoRandomNumber|scrambledPseudoRandomNumber]]()</code> or <code>[[#pseudoRandomNumber|pseudoRandomNumber]]</code>.<br />
<br />
=== <code>pseudoRandomNumber</code> ===<br />
'''pseudoRandomNumber''' : Number (read-only)<br />
A random number between 0 and 1 that is always the same for a given system. In general, you should avoid using this number directly and call <code>[[#scrambledPseudoRandomNumber|scrambledPseudoRandomNumber]]()</code> instead.<br />
<br />
=== <code>stations</code> ===<br />
{{oolite-prop-added|1.79}}<br />
'''stations''' : Array (read-only)<br />
A list of the stations in the system.<br />
<br />
=== <code>sun</code> ===<br />
'''sun''' : [[Oolite JavaScript Reference: Sun|Sun]] (read-only)<br />
The system’s sun, or <code>null</code> if there is none.<br />
<br />
=== <code>techLevel</code> ===<br />
'''techLevel''' : Number (integer, read/write)<br />
The technology level of the current system, ranging from 0 to 15.<br />
<br />
=== <code>wormholes</code> ===<br />
{{oolite-prop-added|1.79}}<br />
'''wormholes''' : Array (read-only)<br />
A list of the [[Oolite_JavaScript_Reference:_Wormhole|wormholes]] in the system.<br />
<br />
=== <code>waypoints</code> ===<br />
{{oolite-prop-added|1.79}}<br />
'''waypoints''' : Array (read-only)<br />
A dictionary of the [[Oolite_JavaScript_Reference:_Waypoint|waypoints]] in the system by key and value.<br />
<br />
'''See Also:''' <code>[[#setWaypoint|setWaypoint()]]</code><br />
<br />
== Methods ==<br />
=== <code>addGroup</code> ===<br />
function '''addGroup'''(role : String, count : Number [, position: {{oojsvecexpr}}] [, radius: Number]) : {{oojsclass|ShipGroup}}<br />
Like <code>[[#addShips|addShips()]]</code>, but puts the ships in a group and returns the group.<br />
<br />
'''See Also:''' <code>[[#addGroupToRoute|addGroupToRoute()]]</code>, <code>[[#addShips|addShips()]]</code><br />
<br />
=== <code>addGroupToRoute</code> ===<br />
function '''addGroupToRoute'''(role : String, count : Number [, fraction: Number] [, route: String]) : {{oojsclass|ShipGroup}}<br />
Like <code>[[#addShipsToRoute|addShipsToRoute()]]</code>, but puts the ships in a group and returns the group.<br />
<br />
'''See Also:''' <code>[[#addGroup|addGroup()]]</code>, <code>[[#addShipsToRoute|addShipsToRoute()]]</code><br />
<br />
=== <code>addMoon</code> ===<br />
function '''addMoon'''(planetInfoKey : String) : {{oojsclass|Planet}}<br />
Adds a moon to the system, using the specified entry in ''[[planetinfo.plist]]''. A moon is the same as a planet, except that it has no atmosphere.<br />
<br />
'''See Also:''' <code>[[#addPlanet|addPlanet()]]</code><br />
<br />
=== <code>addPlanet</code> ===<br />
function '''addPlanet'''(planetInfoKey : String) : {{oojsclass|Planet}}<br />
Adds a planet to the system, using the specified entry in ''[[planetinfo.plist]]''.<br />
<br />
'''See Also:''' <code>[[#addMoon|addMoon()]]</code><br />
<br />
=== <code>addShips</code> ===<br />
function '''addShips'''(role : String, count : Number [, position: {{oojsvecexpr}}] [, radius: Number]) : Array<br />
Adds ships to the system and returns the added ships in an array. Position is in absolute coordinates. When no position is given, the witchpoint is assumed. When no radius is given, the maximum scanner range is used. Ships added in range of the witchpoint automatically create a witchpoint entry cloud.<br />
<br />
When you want to use coordinates from the legacy "pwp" system, you can use the [[Oolite_JavaScript_Reference:_Vector3D#fromCoordinateSystem|fromCoordinateSystem]] method to convert legacy type coordinates to absolute coordinates.<br />
<br />
If you wish to add ships of a specific shipdata key, pass the key as the "role" parameter, enclosed in square brackets.<br />
<br />
'''See Also:''' <code>[[#addGroup|addGroup()]]</code>, <code>[[#addShipsToRoute|addShipsToRoute()]]</code><br />
<br />
=== <code>addShipsToRoute</code> ===<br />
function '''addShipsToRoute'''(role : String, count : Number [, fraction: Number] [, route: String]) : Array<br />
Adds ships to the system on certain common routes and returns the added ships as an array. The routes are the two character codes <code>"wp"</code>, <code>"pw"</code>, <code>"ws"</code>, <code>"sw"</code>, <code>"sp"</code>, and <code>"ps"</code>, where <code>"w"</code> stands for the witchpoint, <code>"p"</code> for the planet and <code>"s"</code> for the sun.<br />
<br />
When no route is defined, the route witchpoint → main station is assumed.<br />
<br />
The position is a fraction of the route and must be between 0 and 1. Unlike the legacy commands the fraction takes planetary radii in account, so it does not start counting in the centre of sun/planet but from its surface. When no fraction is defined, a random fraction is chosen. Ships are added within scanner range of this position. Ships added in range of the witchpoint automatically create a witchpoint entry cloud.<br />
<br />
'''Example''':<br />
var ships = system.addShipsToRoute("myShips", 2, 0.7, "sw")<br />
var pirates = system.addShipsToRoute("pirate", 3, Math.random(), "sp")<br />
The first line adds 2 ships near each-other on the route from sun to witchpoint and puts the added ship in the array <code>ships</code>, and the second line adds a group of 3 pirates at a random position along the sun to planet route and returns the array <code>pirates</code>.<br />
<br />
'''Note:''' this method will fail and return <code>null</code> if either of the route end points doesn’t exist. No valid routes exist in interstellar space.<br />
<br />
'''See Also:''' <code>[[#addGroupToRoute|addGroupToRoute()]]</code>, <code>[[#addShips|addShips()]]</code><br />
<br />
=== <code>addVisualEffect</code> ===<br />
{{oolite-method-added|1.77}}<br />
function '''addVisualEffect'''(effectKey : String, position: {{oojsvecexpr}}) : VisualEffect<br />
Adds a new visual effect with the effectKey in effectdata to the system, at the specified position, and returns the added effect. If the effectKey does not exist, or creation was otherwise impossible, this method will fail and return <code>null</code>.<br />
<br />
Note that unlike the methods for adding ships, <code>addVisualEffect</code> returns a single entity, not an array.<br />
<br />
=== <code>countEntitiesWithScanClass</code> ===<br />
function '''countEntitiesWithScanClass'''(scanClass : String [, relativeTo : {{oojsclass|Entity}} [, range : Number]]) : Number (integer)<br />
Returns the number of ships with the specified ScanClass in the system.<br />
<br />
=== <code>countShipsWithPrimaryRole</code> ===<br />
function '''countShipsWithPrimaryRole'''(role : String [, relativeTo : {{oojsclass|Entity}} [, range : Number]]) : Number (integer)<br />
Returns the number of ships with the specified primary role in the system.<br />
<br />
=== <code>countShipsWithRole</code> ===<br />
function '''countShipsWithRole'''(role : String [, relativeTo : {{oojsclass|Entity}} [, range : Number]]) : Number (integer)<br />
Returns the number of ships with the specified role in the system. Counts not only the primary role the ship is added with but all roles a ship can have.<br />
<br />
=== <code>entitiesWithScanClass</code> ===<br />
function '''entitiesWithScanClass'''(scanClass : String [, relativeTo : {{oojsclass|Entity}} [, range : Number]]) : Array<br />
A list of the entities in the system whose scan class is <code>scanClass</code>. If <code>relativeTo</code> is specified, the list will be sorted in order of proximity to <code>relativeTo</code> (i.e., the first element of the list is closest). If <code>range</code> is also specified, entities further than <code>range</code> metres from <code>relativeTo</code> will be excluded. If no matching entities are found, an empty array is returned.<br />
<br />
'''See Also:''' <code>[[#shipsWithPrimaryRole|shipsWithPrimaryRole]]()</code>, <code>[[#shipsWithRole|shipsWithRole]]()</code>, <code>[[#filteredEntities|filteredEntities]]()</code>.<br />
<br />
=== <code>filteredEntities</code> ===<br />
function '''filteredEntities'''(this : Object, predicate : Function [, relativeTo : {{oojsclass|Entity}} [, range : Number]]) : Array<br />
A list of the entities for which <code>predicate</code> returns <code>true</code>. If <code>relativeTo</code> is specified, the list will be sorted in order of proximity to <code>relativeTo</code> (i.e., the first element of the list is closest). If <code>range</code> is also specified, entities further than <code>range</code> metres from <code>relativeTo</code> will be excluded. If no matching entities are found, an empty array is returned.<br />
<br />
'''Example:'''<br />
this.findIdlePoliceInScannerRange = function()<br />
{<br />
function $isIdlePolice(entity)<br />
{<br />
return entity.isShip && entity.isPolice && !entity.target<br />
}<br />
<br />
return system.filteredEntities(this, $isIdlePolice, player.ship, 25600);<br />
}<br />
<br />
'''See Also:''' <code>[[#shipsWithPrimaryRole|shipsWithPrimaryRole]]()</code>, <code>[[#shipsWithRole|shipsWithRole]]()</code>, <code>[[#entitiesWithScanClass|entitiesWithScanClass]]()</code>.<br />
<br />
=== <code>legacy_addShips etc.</code> ===<br />
function '''legacy_addShips'''(role : String, count : Number)<br />
function '''legacy_addSystemShips'''(role : String, count : Number, position : Number)<br />
function '''legacy_addShipsAt'''(role : String, count : Number, coordscheme : String, where : {{oojsvecexpr}})<br />
function '''legacy_addShipsAtPrecisely'''(role : String, count : Number, coordscheme : String, where : {{oojsclass|Planet}})<br />
function '''legacy_addShipsWithinRadius'''(role : String, count : Number, coordScheme : String, where : {{oojsclass|Planet}}, radius : Number)<br />
function '''legacy_spawnShip'''(shipDataKey : String)<br />
Various ways of causing ships to appear. Each of these corresponds to a legacy scripting method. For more info about the <code>coordScheme</code>, look at [[Oolite coordinate systems]]. These methods are kept for backwards-compatibility; for new development, <code>[[#addShips|addShips()]]</code> is preferred.<br />
<br />
'''Important:''' <code>legacy_spawn</code>, previously listed here, never worked as intended and has been replaced with <code>Ship.[[Oolite JavaScript Reference: Ship#spawn|spawn]]()</code>.<br />
<br />
=== <code>locationFromCode</code> ===<br />
{{oolite-method-added|1.79}}<br />
function '''locationFromCode'''(code) : Vector<br />
Returns a random location in the region specified by the code string. The code strings are the same as used by the [[Oolite_System_Populator|Oolite populator]]<br />
<br />
=== <code>scrambledPseudoRandomNumber</code>===<br />
function '''scrambledPseudoRandomNumber'''(salt : Number (integer)) : Number<br />
Returns a number that’s greater than or equal to zero and less than one. It will always return the same value for a given <code>salt</code> value and system. Crucially, the relationship between systems and numbers is effectively completely different for each salt value, so scripts making similar decisions based on <code>scrambledPseudoRandomNumber()</code> but using different salts will get uncorrelated results. For example, if two different OXPs add a certain type of station to 25% of systems using <code>if (system.pseudoRandomNumber < 0.25)</code>, the two station types will always be found in the same system; using <code>scrambledPseudoRandomNumber()</code> with different salts avoids this.<br />
<br />
{{QuoteText|Text=scrambledPseudoRandomNumber, was invented to generate 'random' numbers that are always the same for a given system. Useful to only add stations in certain systems and consistently over time. The salt was added to prevent all oxp's selecting the same 'random' choice for a given system. |Source=([https://bb.oolite.space/viewtopic.php?p=193483#p193483 Eric Walch])}}<br />
<br />
'''See also''': <code>[https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/random math.random]</code><br />
<br />
=== <code>sendAllShipsAway</code> ===<br />
function '''sendAllShipsAway'''()<br />
Makes all ships hyperspace out of the system.<br />
<br />
=== <code>setPopulator</code> ===<br />
{{oolite-method-added|1.79}}<br />
function '''setPopulator'''(key : String, definition : Object)<br />
Sets the [[Oolite_System_Populator|populator settings]] for the specified key to the given definition, or deletes them if the definition is <code>null</code>. Calling this outside of the system population set up is possible but useless. See the populator settings page for more information on the format of the <code>definition</code> object.<br />
<br />
'''See Also:''' <code>[[#populatorSettings|populatorSettings]]</code><br />
<br />
=== <code>setWaypoint</code> ===<br />
{{oolite-method-added|1.79}}<br />
function '''setWaypoint'''(key : String, position : VectorExpression, orientation : QuaternionExpression, parameters : Object)<br />
Adds a [[Oolite_JavaScript_Reference:_Waypoint|waypoint]] to the system with the given <code>key</code>, placed at the specified <code>position</code> and <code>orientation</code>. <code>parameter</code> is an object with the following optional keys:<br />
* '''size''': the radius of the waypoint in metres<br />
* '''beaconCode''': the beacon code (default "W")<br />
* '''beaconLabel''': the beacon label (default "Waypoint")<br />
Waypoints will be visible only when the player has a working Advanced Space Compass.<br />
<br />
'''setWaypoint'''(key : String)<br />
Removes the waypoint with the specified <code>key</code>, if it exists.<br />
<br />
In Oolite 1.81, waypoints can either be oriented (the 1.80 default) or unoriented. Unoriented waypoints do not display the directional arrows. To create an unoriented waypoint, set its orientation to the zero quaternion (0,0,0,0) either on creation or later.<br />
<br />
'''See Also:''' <code>[[#waypoints|waypoints]]</code><br />
<br />
=== <code>shipsWithPrimaryRole</code> ===<br />
function '''shipsWithPrimaryRole'''(role : String [, relativeTo : {{oojsclass|Entity}} [, range : Number]]) : Array<br />
A list of the entities in the system whose [[Oolite JavaScript Reference: Ship#primaryRole|primary role]] is <code>role</code>. If <code>relativeTo</code> is specified, the list will be sorted in order of proximity to <code>relativeTo</code> (i.e., the first element of the list is closest). If <code>range</code> is also specified, entities further than <code>range</code> metres from <code>relativeTo</code> will be excluded. If no matching entities are found, an empty array is returned.<br />
<br />
'''See Also:''' <code>[[#shipsWithRole|shipsWithRole]]()</code>, <code>[[#entitiesWithScanClass|entitiesWithScanClass]]()</code>, <code>[[#filteredEntities|filteredEntities]]()</code>.<br />
<br />
=== <code>shipsWithRole</code> ===<br />
function '''shipsWithRole'''(role : String [, relativeTo : {{oojsclass|Entity}} [, range : Number]]) : Array<br />
A list of the entities in the system whose [[Oolite JavaScript Reference: Ship#roles|role set]] contains <code>role</code>. If <code>relativeTo</code> is specified, the list will be sorted in order of proximity to <code>relativeTo</code> (i.e., the first element of the list is closest). If <code>range</code> is also specified, entities further than <code>range</code> metres from <code>relativeTo</code> will be excluded. If no matching entities are found, an empty array is returned.<br />
<br />
'''See Also:''' <code>[[#shipsWithPrimaryRole|shipsWithPrimaryRole()]]</code>, <code>[[#entitiesWithScanClass|entitiesWithScanClass]]()</code>, <code>[[#filteredEntities|filteredEntities]]()</code>.<br />
<br />
== Static Methods ==<br />
=== <code>infoForSystem</code> ===<br />
function '''infoForSystem'''(galaxyNumber: Integer, systemID : Integer) (write-only)<br />
Overwrites existing info of the given system. As properties it uses the [[planetinfo.plist]] keys. e.g.<br />
System.infoForSystem(0, 55).description = "This is a dull planet."<br />
sets the description of planet nr 55 in galaxy 0 to <code>"This is a dull planet."</code><br />
<br />
Starting from Oolite 1.73, all system Info for the present galaxy is also readable. Even though any galaxy system info property is fully settable, due to engine limitations other galaxies' data is not accessible. In other words<br />
System.infoForSystem(0, 55).description<br />
would return <code>"This is a dull planet."</code> if called from galaxy 0, and throw an exception if called from the other galaxies.<br />
<br />
Of particular note the spelling of the '''techlevel''' property when using the infoForSystem method to extract it. While the property of <code>system.'''techLevel'''</code> is spelt using camelCase, <code>System.infoForSystem(0, 55).'''techlevel'''</code> is all lowercase. This is because planetinfo.plist has always had the techlevel key spelt this way.<br />
<br />
=== <code>systemIDForName</code> ===<br />
function '''systemIDForName'''(systemName : String) : Integer<br />
Returns the ID number of a system in the current galaxy based on the system name.<br />
<br />
'''Note:''' in galaxy 8, there are two systems named <code>"Inzaan"</code>. <code>systemIDForName()</code> will return the lower ID, which is 22.<br />
<br />
=== <code>systemNameForID</code> ===<br />
function '''systemNameForID'''(systemID : Integer) : String<br />
Returns the name of a system in the current galaxy based on the given ID number.<br />
<br />
<br />
[[Category:Oolite JavaScript Reference]]</div>Phkbhttps://wiki.alioth.net/index.php?title=OXP_howto_texture&diff=83478OXP howto texture2024-03-18T13:50:16Z<p>Phkb: Updating BB links</p>
<hr />
<div>[[File:Untextured Odyssey.png|thumb|right|200px|Maaarcooose's finished model of the Odyssey, prior to texturing]]<br />
[[File:U31 odyssey.png|thumb|right|200px|Textured Odyssey]]<br />
Note that possibilities have increased immensely since this was written in 2006. See [https://bb.oolite.space/viewtopic.php?f=2&t=19881 A Description of the Improved Lighting and Materials System] (2018-21) for details.<br />
__TOC__<br />
<br />
<div style="clear:both"></div><br />
{{OXPNote|This page was last properly edited in 2006, before the introduction of shaders and well before [[User:Another commander|Another commander]]'s work on Oolite introducing specular & gloss maps, the new Oren-Nayar diffuse light model, high-definition graphic resolution ''etc''. The links are more up-to-date.}}<br />
<br />
<br />
== Simple introduction ==<br />
A simpler way into this might be experimenting with the [[Ship Respray OXP]] - or just adding a [[Decal]] to your ship.<br />
<br />
<br />
== Terminology ==<br />
A '''normal texture''' specifies a single property of the model’s material at each point – specifically, its diffuse colour, or albedo. '''Specular maps''', '''glow maps''' (''eg'' for the engine exhaust glows) and other effect maps are auxiliary textures specifying additional material properties. Extra detail can be added into the '''alpha layer/channel''' (eg for the city night lights for planets in Oolite v.1.90: the illumination map should get embedded in the alpha channel of the planet's diffuse map).<br />
<br />
See [[Shaders in Oolite]] for explanations of vertex shaders, fragment shaders and uniforms.<br />
<br />
<br />
== Step 1 ==<br />
<br />
Open a good [[List of software|graphic editing application]], something a bit more elaborate than MS-paint.<br />
<br />
Tip: [https://bb.oolite.space/viewtopic.php?p=258574#p258574 Gsagostinho (2017)]: I think I am addicted to Wings3D, learned how to use it in just a few days after banging my head against Blender's wall for years.<br />
<br />
=== Custom texture native models ===<br />
<br />
You can create custom textures for any Oolite native entities, the steps to follow are:<br />
*Edit the chosen native texture to your own liking.<br />
*Duplicate the chosen ''Xnative_ship''.dat model, and alter the file name. Open the copy in a text editor, and change all referances from ''Xnative_ship''.png to the name of your ''custom_texture''.png.<br />
*Create a custom [[shipdata.plist]], with a [[like_ship shipdata.plist example|like_ship]] entry which refers to the original, and place your components into the appropriate folders, making a complete, [[OXP_howto|funcional OXP]]. <br />
<br />
<br />
=== Textures from a wings3D model ===<br />
<br />
After you have created a model, you need to apply an [http://en.wikipedia.org/wiki/UV_mapping UV-Map], this defines the way your future texture-file will be stretched accross your model.<br />
Use hard edges to mark where to 'cut' the textures. <br />
<br />
There are two ways Wings-3D will extract an UV-Map: <br />
<br />
(1) Fold: like a papermodel, the model is folded out to the flat plane of the texture. Can be usefull for small details, but may be difficult to line up correctly. <br />
<br />
(2) Projection: the less complicated approach, will project (average normal) the sections unto the texture canvas.<br />
<br />
Move around the sections untill you are satisfied. Then create a texturemap from the UV-Map, do not forget to set 'draw all lines' in the options.<br />
Repeat this for all UV's the model uses. Close the UV-window and rename the texture file in the 'outliner'. Export the file. <br />
(note: win-wings does not support PNG-format, use BMP)<br />
<br />
You may want to look at Daniel Walker's [[F_C_Textures|texture guide]].<br />
<br />
Beginners and non-2D-artists may prefer to begin [[Modelling_103:_Texturing_for_the_2D_Challenged|here]], instead.<br />
<br />
== Step 2 ==<br />
<br />
Now edit the file in your graphic software.<br />
<br />
When you are satisfied with your results, save and go back to wings3D.<br />
Most probably you have saved under a new filename, so 'import-image' it.<br />
Now drag the edited texture to it's corresponding UV-Map. <br />
Your texture should now appear on the model (place some light sources first). <br />
Check if all the various parts line up correctly.<br />
<br />
Edit the texture some more if you are not impressed with your results, save under the same name and in wings3D select 'refresh' image in the outliner.<br />
<br />
== Export model ==<br />
<br />
Before you export, make sure the texture images are 'internal'. <br />
Export in *.dat-format. <br />
<br />
win-wings users:<br />
* Export in *.obj + *.mtl. <br />
* Rename the texture references in the mtl-file from *.bmp to *.png)<br />
* Open texturefiles and save as *.png.<br />
* [[Oolite converters|Convert]] the obj+mtl files to *.dat format via Obj2DatTexNorm.py.<br />
<br />
== Important comment from a_c ==<br />
[[File:Gal-Tech-Arachnid-Mark1.png|thumb|right|320px|Arachnid Mark 1 (custom shaders disabled, used Oolite shaders)]]<br />
[[File:Serpent Class Cruiser 2.png|thumb|right|320px|Serpent Class Cruiser]]<br />
Some lighting and material tips here:<br />
<br />
1. Decide what your ship should look like early on. Decide on the type of materials you need for each single part of it. Don't just go with it thinking that you just need to "dress it up" with a texture. If you do, it will most likely end up looking like the texture is a piece of color paper wrapped around a model.<br />
<br />
2. Materials are divided into two major categories: metals and dielectrics (i.e. non-metals). Here are some basic guidelines for each:<br />
<br />
'''Metals''':<br />
- Specular: Usually white or some shade of gray, values usually in the range of 0.65 - 0.75. Metals can have tinted specular too, e.g. gold, copper. You define this tint in the specular map or with specular_color.<br />
- Gloss: Up to the artist. Experiment until you see something you like.<br />
- Diffuse: Pure metals always have black diffuse color.<br />
<br />
'''Dielectrics''':<br />
- Specular: Very low. Usually around (0.04, 0.04, 0.04). Dielectrics never have tinted specular, unless you are trying to create impossible materials. Things like water have even less specular. For example, the specular value used for the ocean specular reflections in the Lave is Earth OXP is 0.02. Some materials may have slightly different specular values, but normally they are low and materials with specular at around 0.4-0.5 are extremely rare to non-existent. If you are unsure what value to use for your material and you know it is a dielectric, use 0.04.<br />
- Gloss: Depends. Normally on the artist and the appearance they want to achieve. Plastic for example usually has high gloss values but it is not a rule, just a guideline.<br />
- Diffuse: Whatever color your material is. Important - DO NOT include lighting information in a diffuse map - it will look totally off when viewed from the wrong angles. Just put the color of the material there and let the shaders decide on how the lighting will look.<br />
<br />
3. The type of material you want to use is not what your object of interest is made of, but what it is on the surface that will reflect the light. Practical example: If your ship is made of titanium and has a coat of paint all over it, the material you want to try to reproduce is paint (which is dielectric) and not titanium.<br />
<br />
4. Re normal maps - Try to make details that have a purpose on them. The Arachnid above has a normal map with lots of details, but they are just fluff without purpose. Griff's ships have details on the normal map that seem to outline objects that "do something". The Serpent class above also.<br />
<br />
5. Generally speaking, you will get much better results if you use spec and gloss maps rather than numeric values for spec and gloss in the material definition. The reason is that you can describe much better the variations of materials over your surface. You can also describe variations within the same material (e.g. a shiny ship that has a part of a wing that's rusty or dusty - this can be achieved only by texture).<br />
<br />
6. Gloss is where an artist has completely free reign. While the other properties are more or less governed by physics, gloss is whatever you want it to be. That is your chance to be truly creative.<br />
<br />
*[https://bb.oolite.space/viewtopic.php?p=271594#p271594 Some lighting and material tips] ([[User:Another_commander|Another_commander]] 2020)<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=21259 Planet illumination user defined colors] ([[User:Another_commander|Another_commander]] 2022)<br />
<br />
== Internal Links ==<br />
*[[OXP]]<br />
*[[OXP howto]]<br />
*[[OXP howto model]]<br />
<br />
=== Texture/Shaders related ===<br />
*[[Shaders in Oolite]] (2010)<br />
*[[Shaders in Oolite: uniforms]] (2007, updated in 2012 & 2016)<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=19881 A Description of the Improved Lighting and Materials System] (2018)<br />
*[https://bb.oolite.space/viewtopic.php?p=265300#p265300 Filmic Tonemapping] (2018)<br />
*[[Materials in Oolite]] (2013)<br />
<br />
=== Other texture tutorials ===<br />
*[[Smivs'_texture_tutorial]] (2010)<br />
*[[Texturing tips and tricks by Theta Seven]] (2017 - a follow-up to Smivs' tutorial)<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=11627 Understanding visual effects] (Smiv's cut and paste of tips, 2012) - achieving Griffification without shaders (See [[Dertien]]'s OXPs for other examples)<br />
*[http://zgroovy.blogspot.com/p/notes.html Dertien's tutorial] (2012) includes tips on how to use the .dat converters.<br />
*Shipbuilder's 2013 tutorial using his [[Arachnid Mark 1]] as a model:<br />
:: His tutorial document can be downloaded in pdf format here https://app.box.com/s/adl2gw654juwlkamyeol<br />
::The accompanying resource packs can be downloaded here https://app.box.com/s/njsbp935aseegsegh18l<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=6054 SimonB's Tutorial] (2009) UV map, diffuse map, effects map, normal map.<br />
*[[F C Textures]]: howto texture by Flying Circus (2006: pre-shaders; mirror planing a texture using Wings3D & Gimp)<br />
<br />
*[https://bb.oolite.space/viewtopic.php?p=257563#p257563 Query & answer ''re'' the use of transparent texture files] (2017)<br />
<br />
=== Planet textures ===<br />
*Planets can now (v.1.90) have differently coloured atmospheres & city nightlights! See [https://bb.oolite.space/viewtopic.php?f=2&t=21259 here].<br />
*[[Blender Planet Textures]] (2016 but with more recent links)<br />
*[https://drive.google.com/drive/folders/0B_OS-FIJTVDXY1BUZjkxSndDZUU?resourcekey=0-HSmNsvehVEmx-D9wELbH2Q Lave Texture Creation] (2014 how-to essay in Russian by Stranger)<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=18638&start=15 Libnoise] (2017) A portable, open-source, coherent noise-generating library for C++ (Windows, Gentoo Linux)<br />
*[https://bb.oolite.space/viewtopic.php?p=95355#p95355 Griff's Planet shader example] (2009) - based on planet Earth.<br />
*[https://forum.kerbalspaceprogram.com/index.php?/topic/165285-planetary-texturing-guide-repository/#comment-3167423 Planet texturing guide repository (KSP)] (2023)<br />
<br />
[[File:Trade-Factor-Animation.gif |thumb|right|Ideas: Griff's SpecGloss Sidewinder showing deterioration due to lack of maintenance]]<br />
[[File:Smivs'-cobra3-alternate-damaged.png|thumb|right|Ideas: Smiv's "damaged Cobra" texture]]<br />
=== Ideas ===<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=21170 Griff's SpecGloss Sidewinder] shows the effects of changing [[Maintenance]] levels (2022)<br />
*Smivs created a [[Smivs' ShipSet|damaged ship set]] which worked with the older versions of his [[BattleDamage|Battle Damage OXP]]. (2012)<br />
*Griff's [https://bb.oolite.space/viewtopic.php?p=206321#p206321 experimental damaged textures] (2013)<br />
<br />
=== Other help ===<br />
*[[Oolite converters]] (links to helper scripts ''etc'')<br />
<br />
== External Links ==<br />
=== Wings 3D ===<br />
*[http://www.wings3d.com/ Wings3D official home]<br />
*[http://www.wings3d.com/paulthepuzzles/aardvarks.html Tuts and tips Wings3D (2008), by Aardvark]<br />
*[https://www.youtube.com/user/MrDertien/videos YouTube classes in Wings3D] (2013-4) by [[Dertien]]<br />
<br />
=== Blender ===<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=10041 Blender 3d Modeling Tutorials] (2011-22), originally by [[User:Staer9|Staer9]], includes texturing<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=13144 XYZ coordinates Blender to Oolite] (2012)<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=18159 Textures in .dat-files / blender] (2016)<br />
<br />
=== GIMP ===<br />
*[https://bb.oolite.space/viewtopic.php?p=69600#69600 Textures in GIMP] (2009) by SimonB<br />
<br />
=== General ===<br />
*[[Modifying a Texture]] from 2009<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=11627 Understanding visual effects] a 2012 compilation including a discussion on specular mapping<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=5580 Skinner's Den] 11 pages of texturing tips (2009-date)<br />
*[https://bb.oolite.space/viewtopic.php?p=264830#p264830 Putting it all together] (2018) by [[User:Phkb|Phkb]]<br />
*[https://bb.oolite.space/viewtopic.php?p=271594#p271594 Lighting & Materials tips] for the newer versions of Oolite (2020) by [[User:Another_commander|Another_commander]]<br />
<br />
=== Free textures ===<br />
Eric Mayas has thousands of free textures here: https://soundimage.org/images-home-page/ (SciFi, metal, stone, vegetation ''etc''.)<br />
<br />
=== Models needing texturing ===<br />
There are a number of half finished models which just need texturing which can be found here: [[Brilliant but broken...]] - see specifically Gsagostinho's station experiments, but there are also a number of ships.<br />
<br />
There are also many untextured models here: https://www.solcommand.com/ including stations, ships, greebles, floating gas giant cities ''etc''.<br />
<br />
The other thing which would be great would be more moons (there are rather few of them) and more planets (ideally with city lights added in - note that currently on the AppleMac that phkb's [[Tianve]] city lights don't work but a_c's [[Lave is Earth 8k]] do.)!<br />
<br />
[[Category:Oolite]] [[Category:Factual]] [[Category:Oolite scripting]]</div>Phkbhttps://wiki.alioth.net/index.php?title=OXP_howto_model&diff=83477OXP howto model2024-03-18T13:50:12Z<p>Phkb: Updating BB links</p>
<hr />
<div>[[File:Untextured Odyssey.png|thumb|right|400px|Maaarcooose's finished model of the Odyssey, prior to texturing]]<br />
[[File:U31 odyssey.png|thumb|right|200px|Textured Odyssey]]<br />
<br />
== Introduction ==<br />
Oolite draws its ships from models in the '''.dat''' format, but this is an Oolite-only format. The models made in modelling programs are most commonly in '''.obj''' files. Therefore, to see a home-made model appear in the game, one needs to convert the .obj file to a .dat, which can usually be done successfully with a python script (Obj2DatTex.py : see below).<br />
<br />
Therefore, to tweak someone else's game model, one takes the .dat from an OXP, and converts it back to an .obj with a different python script (Dat2ObjTex.py). This is not as reliable, [[User:Murgh|Murgh]] currently has a 60-70% success rate. Usually old models are no problem, but newer models often don't work. For instance, he's failed to convert the modern buoy. But has succeeded with all of his old models, and almost all of Aegidian's old models.<br />
<br />
But some of the old Aegidians can come with a twist. When you open them, the texture can be mirror-backwards, or even weirder, project itself from the inside out. Like taking a picture and stuffing it inside a goldfishbowl, you see it, but it's very wrong when you expect it to be on the outside. It turned out to be fixable in Wings. [https://bb.oolite.space/viewtopic.php?p=283166#p283166 Source (2022)]<br />
<br />
== Which programme? ==<br />
'''Wings3D''' was probably the most popular programme for creating the early models. In recent years [[User:Gsagostinho|Gsagostinho]] moved to it from '''Blender''' in [https://bb.oolite.space/viewtopic.php?p=258574#p258574 2017]. On the other hand, [[Killer Wolf]] moved in [https://bb.oolite.space/viewtopic.php?p=285531#p285531 the opposite direction].<br />
<br />
If you have a windows computer, the old Truespace 4.3 is supposed to be very easy to learn to use. See discussion [https://bb.oolite.space/viewtopic.php?f=7&t=21327 here] and download [https://united3dartists.com/forum/viewtopic.php?t=6271 here].<br />
<br />
== Create your model ==<br />
in [http://www.wings3d.com/ Wings3D] or a similar program.<br />
<br />
*For Blender specifically see [https://bb.oolite.space/viewtopic.php?f=4&t=10041 Blender 3d Modeling Tutorials] (2011) - and see also [https://cgcookie.com/learn-blender cgcookie.com], and JackieBean on the [https://bb.oolite.space/viewtopic.php?p=255223#p255223 joys of Blender] (2017).<br />
<br />
How you do this is up to your creativity, but [[User:Aegidian|Aegidian]] has created the following tutorial for Wings3D.<br />
<br />
{| align="center" valign="top" style="border-spacing:5pt;"<br />
|- valign="top"<br />
| [[Image:Sv_wings_mode_object.png|128px]]<br />
| Launch Wings3D and select the object mode.<br />
|- valign="top"<br />
| [[Image:Sv_wings_menue_object_cube.png|128px]]<br />
| Right-click in the workspace to pop up the '''object menu'''. Select the options for the cube.<br />
|- valign="top"<br />
| [[Image:Sv_wings_options_cube.png|128px]]<br />
| Cubes created by Wings3D measure one unit on a side. In Oolite these units are meters and a 1m x 1m x 1m spaceship is a bit small, so we're going to scale it to 30m wide, 10m tall, and 30m long.<br><br> You'll need to dolly the camera away from your object a bit to be able to see it all in the view now. I use the scroll-wheel to do this, but ctrl-alt-[left mouse button] and up or down will also work.<br><br>Another approach is to create the standard sized cube and Right-click and choose '''.Scale Axis'''. Choose the '''.X'''. axis then press tab to allow numeric input, this is a percentage, so enter 3000 to scale the objects x-axis dimension to 30m. Do the same scaling on the '''.Y''' axis, scaling by 1000%. and on the '''.Z'''. axis scaling by 3000%.<br />
|- valign="top"<br />
| [[Image:Sv_wings_workspace_cube.png|128px]]<br />
| This gives us our basic shape, 30m wide by 30m long by 10m high.<br>Now some details, we'll add a bevel for the front viewscreen and some fins.<br />
|- valign="top"<br />
| [[Image:Sv_wings_mode_edge.png|128px]]<br />
| First the bevel, select the '''edges''' mode and press space to clear the current selection.<br />
|- valign="top"<br />
| [[Image:Sv_wings_workspace_cube_edge.png|128px]]<br />
| Select the upper front edge, Right-click to pop up the menu and choose '''Bevel'''.<br><br>Move the mouse until you've got the right look, then left-click to set the bevel. You can also press tab to allow numeric entry of the bevel amount again.<br />
|- valign="top"<br />
| [[Image:Sv_wings_workspace_cube_bevel.png|128px]]<br />
| Voila. The first step is done. Next the fins. These will be a bit trickier.<br />
|- valign="top"<br />
| [[Image:Sv_wings_workspace_cube_edgeB.png|128px]]<br />
| Select '''edges''' mode again and press space to clear the selection.<br><br>Then choose one of the two upper edges going from front to back.<br />
|- valign="top"<br />
| [[Image:Sv_wings_options_cut.png|128px]]<br />
| Right-click for the menu and then choose '''.Cut''' and choose '''2 2''' to cut the line into two pieces.<br><br>Do the same for the line on the other side. You'll find yourself in '''points''' mode, with the indicated point selected.<br />
|- valign="top"<br />
| [[Image:Sv_wings_mode_face.png|128px]]<br />
| Now we need a quick trick to make life easier - choose '''faces''' mode and press '''command-a''' to select all faces.<br />
|- valign="top"<br />
| [[Image:Sv_wings_workspace_allfaces_tesselate.png|128px]]<br />
| Right-click and choose '''Tesselate''' and then '''Triangulate''', which will make turn all the flat faces into bunches of triangles.<br />
|- valign="top"<br />
| [[Image:Sv_wings_workspace_tesselated.png|128px]]<br />
|<br />
|- valign="top"<br />
| [[Image:Sv_wings_workspace_cube_edgeC.png|128px]]<br />
| Return to '''edges''' modes and select the two edges to become fins.<br />
|- valign="top"<br />
| [[Image:Sv_wings_options_extrude_normal.png|128px]]<br />
| Right-click and choose '''.Extrude''' and '''Normal''' and move the mouse until you are pleased.<br />
|- valign="top"<br />
| [[Image:Sv_wings_workspace_flying_brick.png|128px]]<br />
| Tadaa&#33; A flying brick.<br />
|}<br />
<br />
<br />
[[File:Sv_textut_part_1_01.png|thumb|right|100px|pic 1]]<br />
[[File:Sv_textut_part_1_02.png|thumb|right|100px|pic 2]]<br />
[[File:Sv_textut_part_1_03.png|thumb|right|100px|pic 3]]<br />
[[File:Sv_textut_part_1_04.png|thumb|right|100px|pic 4]]<br />
[[File:Sv_textut_part_1_05.png|thumb|right|100px|pic 5]]<br />
[[File:Sv_textut_part_1_06.png|thumb|right|100px|pic 6]]<br />
[[File:Sv_textut_part_1_07.png|thumb|right|100px|pic 7]]<br />
If you've read the tutorial above it's time to think about a few more things.<br />
<br />
== Optimize ==<br />
Optimizing models and textures for a game is no fun, specially if it's a model with lots of greebles and funny details.<br />
<br />
=== Simple example ===<br />
So let's stick with a simple example - a simple cone combined with a cube. When creating the UV-Map in Wings3D this map is really in no way optimized. Doing optimizations as postprocess is a real pain, believe me .-)<br />
<br />
Let's say you have created a model in Wings3D ('''pic 1''') and created the UV-Map ('''pic 2'''). You can see that Wings3D does some preparations for you, e.g. the UV information is taking place in the maps area and the polygons are separated (in chunks), based on the method you've used to create the UV-Map. It's a good starting point but far away from a optimum for a game.<br />
<br />
=== Wasted texture informations ===<br />
You can see in a few OXPs background images in the UV-Maps ('''pic 3'''). This is just wasted texture information, results in bigger filesizes and and makes optimization tools pretty senseless. These tools are using Deflate, LZ77, RLE (Run-length_encoding) and other algorithms to optimize the texture information streams in the maps. Better use a solid color (black, grey or white).<br />
<br />
=== Wasted faces ===<br />
Wings3D is a box-modeller and creating objects in Wings3D always results in closed objects. Result is that quite a few faces are just wasted ('''pic 4'''), because they are not visible at all, but still eating memory and processing time. This can easily go in a few thousands of faces when a lot of models are used in installed OXPs. Luckily there's a way as Wings3D provides a hole material. This is a special feature to reduce the amount of data when exporting the model as .obj as the faces won't appear in the exported model and UV-Map.<br />
<br />
=== Resort the map ===<br />
The next step is to resort (and sometimes scale) the polys in the UV-Mapper. Best practice is to leave a little bit space between polys ('''pic 5'''). This is a lesson I had to learn with my models. I was always wondering why some artifacts appeard at the edges and why the mipmapping doesn't work properly.<br />
<br />
=== Mipmapping ===<br />
To get it working properly expand the areas with real texture information by a few pixels ('''pic 6'''). Oolite will do the mipmapping (if its available) automagically. Mipmapping or Level of Detail (LOD) is a antialiasing technique to improve the quality when textures are minified / magnified. See [http://en.wikipedia.org/wiki/Mipmap Mipmap] for more infos.<br />
<br />
===Tesselation is evil ===<br />
And last but not least tesselation (or subdivision) is evil if its used to smooth objects appearance. We can see it in a growing number of released OXPs, and it is really the worst case. Tesselation ('''pic 7''') is a time eater for a game as it increases vertex and face counts a lot and often enough results in higher texture sizes. Both are adding time to the setup of entities whenever they are spawned in the game. Oolite handles smooth groups and hard/soft edges so in most cases there is absolutely no need to raise v/f counts. A really simple example how to use the smoothing option in combination with materials entries in Oolite can be found in the [[RVandGS|RVandGS.oxp]].<br />
<br />
===Details and Greebles===<br />
Another point to consider is if a detail has to be done in the model itself or if this can be placed in a [[Materials_in_Oolite#Important_concepts|normal map]].<br />
<br />
<br />
== Export the model ==<br />
to obj( mtl texture) and convert to *.dat format.<br />
[[Image:Obj2dattex.png|none|left|400px|3 steps]]<br />
<br />
The picture above shows 3 simple steps to export the model and use one of the converter scripts to get the .dat file.<br />
<br />
* If you have the Wings stuff ready for export (means a model with UV-Map), simply use the Wavefront (obj) exporter ('''Step 1+2'''). You'll need to configure it as shown in '''Step 2'''. Once exported you have three files (.obj, .mtl and .png).<br />
* Copy the <code>Obj2DatTexNorm.py</code> from [https://github.com/OoliteProject/oolite-mesh-converters/blob/master/Obj2DatTexNorm.py Github] to your folder where the model has been saved to.<br />
* Open a shell and switch to the folder with the model (and script) and type in: <code>Obj2DatTexNorm.py mymodel.obj</code> ('''Step 3''').<br />
<br />
===Python 2.5===<br />
<code>Obj2DatTex.py</code> still needs this version.<br />
<br />
===Python 2.7===<br />
Please note that the converter script [[Oolite_converters|Obj2DatTexNorm.py]] needs Python 2.7 or higher (but doesn't work out of the box with 3.x!!). There is still <code>Obj2DatTex.py</code> available which will work with Python 2.5, but the recommended tool is <code>Obj2DatTexNorm.py</code>.<br />
<br />
===Python 3===<br />
There is a branch python3 that should contain the necessary changes.<br />
<br />
== Add model to OXP ==<br />
Supply the in-game values relevant to your model into [[shipdata.plist]].<br />
<br />
:TODO: What values from the shipdata.plist reference are really required? What are recommended minimum values?<br />
:TODO: What needs to be done to make a ship/station/... appear in the game?<br />
:TODO: What needs to be done to make a ship player-flyable?<br />
<br />
Here are some good instructions to get started: https://bb.oolite.space/viewtopic.php?p=205930#p205930<br />
Essentially, they are:<br />
<br />
:- locate the AddOns directory,<br />
:- make a subdir named YourShip_0.1.oxp,<br />
:- step into and make at least these subdirs: Config, Models and Textures,<br />
:- copy a working [wiki]shipdata.plist[/wiki] and [wiki]shipyard.plist[/wiki] file into the Config folder from any playable ship OXP,<br />
:- change at least the dataKey of the ship which is usually "shipname-player" in these files to "yourshipname-player".<br />
<br />
You can use the original model and textures: copy the contents of this directories also, or you can build your own model into the Models/yourship.dat file: [wiki]OXP_howto_model[/wiki].<br />
<br />
If you want to start the game in your ship then install [wiki]Start_Choices[/wiki] OXP and replace the dataKey of a ship, for example the "cobramk1-player" to "yourshipname-player" in AddOns/start_choices_1.4.oxp/Config/script.js (105. line) .<br />
<br />
Then start the game with holding down the Shift key and choose the replaced ship.<br />
<br />
=== Example ===<br />
Possibly the simplest OXP ship is the [[Strut]] - part of the older versions of the [[Illicit Unlock OXP]] (an old OXP introducing player versions of NPC ships, such as Vipers).<br />
<br />
It can be downloaded from [https://app.box.com/s/56729mc36t Box] or from [http://capnhack.com/hosting/oolite/Oolite/OoSat.html Oosat]<br />
<br />
=== Ideas ===<br />
There a range of subentities which can be added to your ship/station - <br />
<br />
*[[Weeviloid Hunter]] (Aegidian's demonstration OXP)<br />
*[[Imperial Courier (Oolite)]] with revolving nacelles<br />
*[[Ramon's Anaconda]] with docking bay doors<br />
*[[Deep Space Dredger]] with docking bay door<br />
<br />
*[[Z GrOovy HPC pack]] (Dertien - retractable landing gear & other goodies)<br />
*Thargoid's writhing [[Stellar Serpents OXP]] & [[Animated Ships]] with flapping wings<br />
<br />
*[[Transhab station]] (revolving rotor)<br />
*Zieman's [https://bb.oolite.space/viewtopic.php?p=214260#p214260 ZSuperIco station] - revolving shells within shells<br />
*[[Wildships]] (lifts moving inside the arms of some of the various stations)<br />
<br />
<br />
You can also add personality!<br />
*[[Missionaries OXP]] - 3 different OXP versions<br />
*[[Hotrods OXP]] - gangs<br />
*[[Refugee Adder]] - 3 different OXP versions<br />
*[[BoyRacer]] - Bored, filthy-rich youths and their small fast luxury racers. <br />
*[[Alien Systems OXZ]] - stations for non-human systems<br />
*[[Solos Alt Stations]] - the newer 2022 versions have been re-imagined by Redspear<br />
<br />
== [[Shipdata.plist#subentities|Subentities]] ==<br />
Entities can have sub-entities, which are defined by quaternions.<br />
There are several types of SE:<br />
*Model Entities: can be any model, with any properties.<br />
*Turrets: are a specialised model entity.<br />
*Flashers: blinking lights<br />
*Exhausts: although they are defined seperate from subentities, they can be regarded as subentities.<br />
<br />
One important thing to remember is that [[Shipdata.plist#frangible|frangibility]] is defined for the main entity, not seperately for every SE.<br />
<br />
[[File:Lib MatFinder Pos01.png|right|320px]]<br />
[[File:Lib MatFinder Pos02.png|right|320px]]<br />
[[File:Lib MatFinder.png|right|320px]]<br />
== Tool: Library MatFinder ==<br />
Svengali wrote a special add-on for Library - "a helper to set and test materials entries" - which inter-alia enables locating the exhaust and weapons on your ship model.<br />
<br />
You need [[Library OXP|Library]] loaded as well. A new '''development''' sub-heading will appear on your docked F4 screen which will allow you to choose any ship model loaded and to analyse it.<br />
<br />
'''Warning''': this was cut and pasted here by an ignoramus who recognised its importance, but does not understand any of it!<br />
<br />
=== Version 1.0 ===<br />
"It only works with the plain materials thing at the moment, because I wrote it to migrate from custom shaders to the default shader (as much as possible). Reason is that shader swapping is a 1st class performance killer and getting rid of a few custom shaders is surely a good thing. The tool also disables shaders in use to force use of Oolite's default shader, when the model gets shown on the main screens. It shows the shadered versions though when you can enter values. This is simply to show the difference between both version to give users a chance to get your material as close as possible to the 'original' version."<br />
<br />
Multiple weapons are already supported, positions and orientations of subentities is on the to-do list.<br />
<br />
=== Version 1.1 ===<br />
:- Added note by a_c about gloss+specular<br />
:- Choices left aligned<br />
:- Handling for disallowed models via conditions<br />
:- Added Mode: Positions. Handling and logging for aft_eject_position, exhaust, missile_launch_position, scoop_position, view_position_aft, view_position_forward, view_position_port, view_position_starboard, weapon_position_aft, weapon_position_forward, weapon_position_port, weapon_position_starboard. The Positions mode requires shader support to visualize them.<br />
:- Testmode for view_positions<br />
:- Search for entity<br />
<br />
For details & download link see the BB thread for his Library.oxp [https://bb.oolite.space/viewtopic.php?p=265554#p265554 here] or try [[MatFinder]]<br />
<br />
== Important comment from a_c ==<br />
Decide what your ship should look like early on. Decide on the type of materials you need for each single part of it. Don't just go with it thinking that you just need to "dress it up" with a texture. If you do, it will most likely end up looking like the texture is a piece of coloured paper wrapped around a model. [https://bb.oolite.space/viewtopic.php?p=271594#p271594 Some lighting and material tips] ([[User:Another_commander|Another_commander]] 2020)<br />
<br />
== Links ==<br />
* [[List_of_software|List of software]] - useful tools.<br />
* [[RELOP and PROHIP]]: Retro Low Poly and Progressive High Poly<br />
* The number of Polygons used to be an issue in the old days. See [https://bb.oolite.space/viewtopic.php?p=38459#p38459 here] for 2007.<br />
:For current advice see [https://bb.oolite.space/viewtopic.php?f=2&t=21377 here] (2023).<br />
* [[Oolite_converters|Converter scripts]] - helpers for models and plists.<br />
:[https://bb.oolite.space/viewtopic.php?f=4&t=6865 Cannot convert OBJ to DAT in both Win and Linux] (2009)<br />
:[https://bb.oolite.space/viewtopic.php?f=4&t=11589 Converting to .dat] (2012)<br />
* [[Materials_in_Oolite]] - further information about textures in Oolite.<br />
* [[Quaternion]]<br />
* [https://bb.oolite.space/viewtopic.php?f=4&t=9305 Change Ship Size (Dimensions)] (2011)<br />
*[[Modifying a Model]] from 2009<br />
<br />
=== Resources ===<br />
* [https://www.youtube.com/watch?v=2UJ5yO_vhTc Top 5 Free Sci fi Kit Bashing Libraries] (YouTube: 2018)<br />
* [https://www.solcommand.com/ SolCommand]: Free download sci fi 3D models of spaceships, stations, weapons and other designs<br />
<br />
=== Tutorials ===<br />
* [[Modelling 101: Spreading the Wings of your Mind]] (2006) by [[User:Draco Caeles|Draco Caeles]]<br />
* [https://bb.oolite.space/viewtopic.php?f=4&t=12353 Indepth guide of ship concept creation for total idiots] by Commander Xairon (of [[RXSoftware]], 2012) with lively debate!<br />
* [https://bb.oolite.space/viewtopic.php?f=4&t=15156 noob: my own ship] (2013+) - getting started!<br />
* [https://bb.oolite.space/viewtopic.php?p=30982#p30982 Some tips] (2007) by [[User:Arexack|Arexack]]<br />
* [https://bb.oolite.space/viewtopic.php?f=4&t=9331 Create New Model] (2011) - see especially Dertien's post.<br />
* [https://www.youtube.com/user/MrDertien/videos YouTube classes in Wings3D] (2013-4) by [[Dertien]]<br />
* [https://bb.oolite.space/viewtopic.php?f=2&t=16926 Newcomer and Possible New Ships] (2014-15) by Jona - avoiding probable pitfalls<br />
* [https://bb.oolite.space/viewtopic.php?p=264830#p264830 Putting it all together] (2018) by [[User:Phkb|Phkb]]<br />
<br />
=== Subentities (more advanced) ===<br />
There are a number of oxp's featuring these:<br />
*[[Z GrOovy HPC pack]] (2014) equipment appears on outside of ship when bought, and can be damaged in combat impairing its efficiency<br />
*[[Refugee Adder]] (2006, XML) features a rotating rear-end<br />
*[[Animated Ships]] (2010) has flapping wings<br />
*[[Oolite Stations|stations]] - the docking bay for one thing - and some of the Kiota stations have moving escalators<br />
:Also, the original versions of Smiv's [[BattleDamage]] merged with [[Smivs' ShipSet]] to show hull damage on the ships. <br />
<br />
=== Texturing ===<br />
* [[OXP howto texture]] - texturing your new model<br />
<br />
[[Category:Oolite]] [[Category:Factual]] [[Category:Oolite scripting]]</div>Phkbhttps://wiki.alioth.net/index.php?title=OXP&diff=83476OXP2024-03-18T13:49:36Z<p>Phkb: Updating BB links</p>
<hr />
<div>[[Image:oolite-oxp-icon.png|128px|right|OXP icon]]<br />
An '''OXP''' ('''O'''olite e'''X'''pansion '''P'''ack) is an enhancement to the game [[Oolite]]. An OXP could be a new game object (such as a ship, space station or a moon), a mission, or a combination of several elements. OXPs can use all of the facilities of Oolite, including some that are not used in the standard, unexpanded game. Please note that if you run Oolite in 'Strict Play' mode (set via pressing F2 when docked or paused and then selecting 'Reset to Strict play'), OXPs are not loaded.<br />
<br />
An '''OXZ''' is an OXP in a particular '''Z'''ipped format to make it easier for Oolite to process and for players to install - to find out what's inside one, use your unzipping tool of choice on it.<br />
<br />
== Finding OXPs ==<br />
=== OXP's ===<br />
*The '''[[OXP List]]''' provides the most comprehensive list of Oolite OXP expansion packs.<br />
*[[Guide to Unlisted OXPs]] has 100 or so (which are not listed elsewhere).<br />
=== OXZ's ===<br />
*The [http://www.oolite.space/oxps/#oxp '''OXZ List'''] provides the most comprehensive list of Oolite OXZ expansion packs (but only those uploaded to the in-game Expansions Manager).<br />
*Just for fun, the [[Index of artefacts]] provides the most comprehensive analysis of these Oolite OXZ expansion packs...<br />
*there are just a handful of oxz's (mostly experimental, but including some excellent ones by phkb) not listed on the Expansions Manager/OXZ List. They are mostly in the [[Guide to Unlisted OXPs]] mixed in with everything else.<br />
*Check out the [[Oolite Starter]] which makes management of the expansions in your Ooniverse refeshing like a sip of properly chilled gin and tonic.<br />
<br />
=== Old versions ===<br />
For purely historical purposes (or a touch of nostalgia if you've been around Oolite for a long time) you might want to look at [http://oosat.alioth.net The Oolite Satellite Resource Site] ('''Oosat2''', quite broken but still accessible, 2006-11-04 until 2007-03-03) or the even older [http://capnhack.com/hosting/oolite/Oolite/OoSat.html Captain Hack OoSat Site] ('''Oosat1''', beginning until 2006-10-14). Oosat may have originally been hosted here on Alioth.net, as was '''Oldsat'''. They had a tendency to go off-line or to crash, losing all information. Search on the BB if you are curious!<br />
<br />
For your curiosity and maybe one or the other odd find there is also the [[OXP Attic]] which houses derelict OXPs from times long past. Also see [https://bb.oolite.space/viewtopic.php?f=2&t=20721 Recovering Lost Oxp's].<br />
<br />
== OXPs suitable for new players ==<br />
<!--<br />
It is suggested that players new to the game should be careful when choosing OXPs. The basic game is extremely well-balanced and has stood the test of time, but many OXPs change the balance and dynamics of the game.<br />
<br />
To make an informed choice as to what OXPs you might want, you do need to understand the way the standard game works first, so it is recommended that new players should consider playing Oolite without game-changing OXPs for a while.<br />
<br />
However, many OXPs will just enhance eye-candy and ambience - they make the game look better, or add features which make the Oolite experience more enjoyable without affecting the way the game plays.<br />
<br />
To help, a [[OXP_List_for_New_Players| list of suitable OXPs for newcomers]] has been compiled. These are OXPs that will not affect gameplay but are worthwhile additions for the new player who wants a diverse and visually exciting Ooniverse. <br />
--><br />
<br />
Everyone has their own idea of what OXPs should be in a starter pack, or which are just best. There are several threads on the Forum on this topic, perhaps the best-balanced and most useful for newcomers being [https://bb.oolite.space/viewtopic.php?f=2&t=11885 this one]. <br />
<br />
== Suitability for simpler or for more difficult/advanced gaming ==<br />
There exists a way of marking an OXP's difficulty level according to the author's belief. You can find the [[OXP_Levelindicators|level indicators]] on the wiki.<br />
<br />
Another system in progress is [[Template:IconOXP]].<br />
<br />
==Player recommendations==<br />
These commanders have put together lists of their personal favourites:<br />
*[[User:Cpt|Cpt]] (2013)<br />
*[[User:JazHaz|JazHaz]] (2013)<br />
*[[User:Zireael|Zireael]] (2014)<br />
*[[User:Norby#Recommended_OXPs|Norby]] (2015-7): includes packages of recommended OXPs for new players, the more experienced ''etc''.<br />
*[[User:CaptSolo|CaptSolo]] (2020)<br />
<br />
== Help with OXPs ==<br />
<br />
Information on OXPs can also be found on the [https://bb.oolite.space/viewforum.php?f=4 Expansion Pack Forum], the Friendliest Board This Side of Riedquat. The helpful people there will be happy to assist you with any questions you have about OXPs.<br />
<br />
== Tweaking your OXPs ==<br />
Do you prefer a louder ''beep'' for audible docking clearance? Would you rather your Commander's Log also recorded purchases & repairs? Do you want your Laser Booster to activate automatically upon launch? <br />
<br />
You will find recipes for modifying some of the OXPs [https://bb.oolite.space/viewtopic.php?p=216177#p216177 here].<br />
<br />
== Installing an OXP ==<br />
<br />
OXPs are installed to the folder or directory ('folder' and 'directory' are synonyms) named '''AddOns'''. Read on, we will also tell you where to find that folder.<br />
<br />
=== In OXZ format ===<br />
Download the OXZ file, and save it to your AddOns folder. <br />
<br />
Many OXZ format expansion packs can also be downloaded and installed for you from the [[Expansions Manager]] in Oolite. These will be placed in a separate folder which Oolite manages ('''ManagedAddOns''') - any you download yourself should go in the '''AddOns''' folder so that Oolite doesn't accidentally overwrite them.<br />
<br />
If you want to inspect an OXZ you've downloaded with the expansion pack manager, copy it out of the '''ManagedAddOns''' folder first, then open it with your unzipping program. Some versions of the Expansions Manager can do this for you when you press the ''x'' key.<br />
<br />
=== In OXP format ===<br />
Typically, an OXP is downloaded as a ZIP file though occasionally other compression tools such as 7z or rar have been used. Unzip it to find a folder with a name ending .oxp<br />
<br />
After unzipping the file, make sure that it is ''only'' the OXP folder that put into the AddOns directory - some zipped OXPs can contain a top level folder with a readMe file, and the actual OXP folder is a level further down. If this is the case, move the folder with the '''.oxp''' extension into the AddOns folder.<br />
<br />
Sometimes the zipped files contain several folders, make sure you only copy the folder -or file for Macintoshes- ending with '''.oxp''' into the AddOns folder. This folder is found in different locations, depending on the platform.<br />
<br />
If you have followed these instructions and OXPs are not being recognised by the game make sure that your commander is a normal game. If you started your commander using the "Strict Mode" starting option, no OXPs will ever be used.<br />
<br />
== Locating your AddOns folder ==<br />
<br />
=== Mac OS X ===<br />
Found in the folder that contains the Oolite application.<br><br />
<br />
Alternatively you can also have the '''AddOns''' folder in your user area at '''~/Library/Application&nbsp;Support/Oolite/AddOns/'''. When both places contain an '''AddOns''' folder, both contents are read with the content in the user libraries loading last.<br />
<br />
'''Troubleshooting:''' If you get an error saying "The item could not be moved because "AddOns" cannot be modified", that can happen if you weren't the user that installed Oolite.<br />
The solution is to put the OXPs of your choice in '''~/Library/Application&nbsp;Support/Oolite/AddOns/''' instead (you may need to create this folder).<br />
The error could also be triggered because you’re running from the disk image, you’ll need to copy the game somewhere else. Having done so, if you still get the error, use the Get Info command on the AddOns folder, open the Ownership & Permissions pane and check that it says You Can: Read & Write.<br />
<br />
=== Linux ===<br />
The location of the AddOns folder will depend on whether you chose to install Oolite to 'Home' or 'System'.<br />
<br />
If you chose the 'Home' installation, the AddOns directory is located in '''~/GNUstep/Applications/Oolite/AddOns'''. The AddOns folder should be in the top level of the Oolite install directory (at the same level as the oolite.app folder) You may have to create it.<br />
<br />
If you chose the 'System' installation, the AddOns directory will be '''~/.Oolite/Add-ons'''. You may have to create it. Note that this is a 'hidden' directory, and so you may have to turn on 'Show hidden files' in your file manager before you can see it.<br />
<br />
An alternative location for a 'System' installation is the '''/opt/Oolite/AddOns''' directory, but most users find this less convenient than '''~/.Oolite/Add-ons'''.<br />
<br />
=== Windows ===<br />
The AddOns folder should be in the top level of the Oolite install directory (at the same level as the oolite.app folder). Historical: if you are using the GNUStep dedicated versions (pre-Jan 2006), then the AddOns folder must be created inside the oolite.app folder.<br />
<br />
== Caveats ==<br />
If you purchase a ship that is an OXP ship and save the game, you will only be able to load that commander as long as this OXP is installed in AddOns. If it's not, Oolite will give you an error instead of trying to load the commander.<br />
<br />
== Managing a stable of OXPs ==<br />
Nowadays we download OXZs through the in-game Expansions Manager - and it manages them for us. But if we tweak one, it usually becomes an OXP and must then be kept in the AddOns folder. Some older oxps have yet to be turned into OXZs and some experimental OXPs are in a similar position.<br />
<br />
So, if you have large numbers of these oxps, see the following threads from the BB.<br />
*Issues with [https://bb.oolite.space/viewtopic.php?p=273473#p273473 single OXPs]<br />
*Issues with [https://bb.oolite.space/viewtopic.php?p=273490#p273490 multiple OXPs]<br />
*Issues with different copies of the game on the [https://bb.oolite.space/viewtopic.php?p=272073#p272073 same hard drive]<br />
*If you found a nice set of expansions and want to share that with others, consider using the [[Oolite Starter]]. It allows you to export and send expansion sets to other players, who then can activate it on their side.<br />
<br />
== Diagnostics ==<br />
With some OXPs installed, the directory structure will look something like this:<br><br />
:'''...\AddOns\Basic-debug.oxp'''<br><br />
:'''...\AddOns\Cabal_Common_Library1.5.1.oxp'''<br><br />
:'''...\AddOns\Explorers'_Club_1.3.1_2012-01-21.oxp'''<br><br />
:'''...\AddOns\halsis.oxp'''<br><br />
:'''...\AddOns\Material Test Suite v1.2.oxp'''<br><br />
with other directories and files under each of the .oxp directories. You should only find .oxp directories immediately under a \AddOns directory.<br />
<br />
If none of your OXPs are working, are you playing in Strict Mode? Try starting a new commander from the Normal Start and see if the OXPs work then.<br />
<br />
If you edit the contents of one of your OXPs and cannot see the change, restart Oolite holding down <Shift> to force Oolite to re-read all the OXP files.<br />
<br />
If an OXP you installed is not working or is misbehaving, check the [[Latest.log]] file - you should see a list of the OXPs you have installed. You should see a trend in the names which will tell you if you have installed an OXP within another OXP (move it) or two versions of an OXP (remove the older one) or it is absent suggesting you put it in the wrong place or did not get the .oxp directory extension correct (did you unzip the OXP?).<br />
<br />
If you know how, a system-wide search for any directory ending in ".oxp" should pull up the OXPs you have installed and they should only appear immediately beneath a '''\AddOns''' directory and never inside another .oxp directory (this is an easily-done error when extracting a zip file).<br />
<br />
Note that an OXP in the AddOns folder ''trumps'' an 'identical' OXZ in the ManagedAddOns folder. So if the OXP is an older version, it will [https://bb.oolite.space/viewtopic.php?p=218632#p218632 disable] the newer OXZ.<br />
<br />
=== AppleMacs ===<br />
... Strict semicolon parsing is a Mac thing. Windows and Linux use GNUstep to parse plists and that apparently is more relaxed syntax-wise than whatever it is that the Mac uses. <br />
::[[User:Another_commander|Another_commander]] from [https://bb.oolite.space/viewtopic.php?p=262814#p262814 A possible solution?] (2018).<br />
<br />
... the libraries in the Mac seems to be less tolerant of some things than the GNUStep libraries on Linux:<br />
:*lists are enclosed in '<font color="Red">'''('''</font>' '<font color="Red">''')'''</font>' with items separated by '<font color="Red">''','''</font>' and there must ''not'' be a comma after the last item in the list.<br />
:*objects are enclosed in '<font color="Red">'''{'''</font>' '<font color="Red">'''}'''</font>' and consist of pairs: <key> = <value>.<br />
:*Each key/value pair must have a '<font color="Red">''';'''</font>' at the end, even the last pair in the object<br />
:*''if'' the object is a value in a key/value pair in another object, it's closing '<font color="Red">'''}'''</font>' must be followed by a '<font color="Red">''';'''</font>'.<br />
::lifted from a PM from [[User:Dybal|Dybal]] (2020)<br />
<br />
== Creating an OXP ==<br />
It is intended to be easy to create expansion packs. Take a look at the [[OXP howto|How to make OXPs]] page for more information.<br />
<br />
'''Context''': [https://bb.oolite.space/viewtopic.php?p=275434#p275434 What can OXP's ''not'' change?] (2021)<br />
<br />
Older OXPs (from [[User:Aegidian|Aegidian]]'s day were written in [[Legacy Scripting]]. Modern OXPs are written in JavaScript. Specifically oolite.jsVersion 185, an Oolite specific variant of '''ECMAv5'''. It is the same Spidermonkey version (1.8.5 - March 2011) that Firefox 4 shipped with many years ago, but it is a special build for Oolite. This is the version that we have almost always had and it has not changed between versions of the game. It is unlikely to change in the future (due to the [https://bb.oolite.space/viewtopic.php?p=256623#p256623 immense amount of work] involved in tampering with it!).<br />
<br />
[[File:Plist-XML-ASCII-ill.png|thumb|right|702px|XML (left) & OpenStep (right)]]<br />
Legacy script comes in two versions: XML & OpenStep. <br />
<br />
=== OXP resources ===<br />
*Here is an [[index of artefacts]] already created in OXPs.<br />
*[[Documenting your artefacts]] (OXP, ships and equipment)<br />
*[[OXP howto]]<br />
*[[Publishing your OXP]]<br />
<br />
*[https://github.com/cim--/oxp-build-scripts OXP Packaging Scripts] Cim's collection for Linux (2015)<br />
<br />
== Loading Order of OXPs ==<br />
OXPs loaded after other OXPs will "trump" the earlier OXPs in terms of their effects on the game. It is a similar situation with the vanilla game code, where the OXPs trump or overwrite the relevant sections of the basic oolite game. <br><br />
The loading order under Macs and Windows is alphabetical, while Linux is unpredictable. There is no solution for Linux load ordering as yet ([https://bb.oolite.space/viewtopic.php?p=261821#p261821 Svengali 2018]).<br />
<br />
*[[Handling OXP Dependencies with JavaScript]] - how to determine the loading order<br />
*[https://bb.oolite.space/viewtopic.php?p=189416#p189416 Nested OXP's in AddOns folder] (2012)<br />
*[https://bb.oolite.space/viewtopic.php?p=231750#p231750 Cim on the subject] (2015)<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=8928 OXP loading order] discussion, including Ahruman on the subject (2011)<br />
<br />
== AddOns and Managed AddOns folders ==<br />
All versions of Oolite have an AddOns folder. Only versions 1.79 (2013) and onwards have the Managed AddOns folder.<br />
<br />
The contents of the '''AddOns folder''' must ''not'' be zipped if they are to be recognised by Oolite - so OXZs will not work if they are in there.<br />
<br />
The contents of the '''Managed AddOns''' folder must contain a [[Manifest.plist]] if they are to be recognised by your [[Expansions Manager]] (or by [[Oolite Starter]]). The Expansions Manager only checks ''this'' folder, not the AddOns folder.<br />
<br />
== OXP Lists ==<br />
*[http://www.oolite.org/oxps/ Expansion Manager OXZ list] - orderable<br />
*[[OXP List]] - orderable<br />
*[[Guide to Unlisted OXPs]] - with links at the bottom to older lists<br />
<br />
*[[Brilliant but broken...]] great oxp's that need updating/fixing... (do you have the skills?)<br />
<br />
[[Category:Oolite expansion packs]]<br />
[[Category:Factual]]</div>Phkbhttps://wiki.alioth.net/index.php?title=Navigation_Flashers_OXP&diff=83475Navigation Flashers OXP2024-03-18T13:49:01Z<p>Phkb: Updating BB links</p>
<hr />
<div>[[File:Navigation Flashers.png|thumb|300px|The Quusdi Navigation buoy would be hard to see without flashers.]]<br />
This OXP adds red flashing lights to the docking navigation buoys to increase visibility under difficult lighting conditions. This is especially useful if you have reduced ambient lighting.<br />
<br />
=== Dependencies ===<br />
Oolite version 1.79 or later.<br />
<br />
=== Instructions ===<br />
Use the OXZ manager, or download .oxz file and move into the AddOns folder of your Oolite installation. <br />
<br />
=== License ===<br />
No rights reserved (CC0)<br />
<br />
=== Similar OXP ===<br />
* [[BetterBuoys]] also adds flashers, and it replaces the buoy textures. It's useless to install both OXPs together.<br />
<br />
=== Changelog ===<br />
* 2015-12-20: Version 1.0, first release<br />
<br />
=== Download ===<br />
[[Media:Navigation_Flashers_1.0.oxz|Navigation_Flashers_1.0.oxz]] (downloaded {{#downloads:Navigation_Flashers_1.0.oxz}} times).<br />
<br />
===Quick Facts===<br />
{{OXPLevel|0}}{{Infobox OXPb| title = Navigation Flashers<br />
|version = 1.0<br />
|release = 2015-12-20<br />
|features = adds flashers to docking navigation buoys <br />
|license = CC0<br />
|category = Ambience OXPs<br />
|author = [[User:Fritz|Fritz]]<br />
|feedback = [https://bb.oolite.space/viewtopic.php?f=4&t=17950 BB-Link]<br />
}}</div>Phkbhttps://wiki.alioth.net/index.php?title=NPC&diff=83474NPC2024-03-18T13:48:53Z<p>Phkb: Updating BB links</p>
<hr />
<div>[[File:Lib PAD01.png|thumb|right|320px|Library OXP's database showing entry for an NPC <br>([[Mission One - FAQ|Captain Curruthers]] from the Vanilla game)]]<br />
'''N'''on-'''P'''layer '''C'''haracter<br />
<br />
== Overview ==<br />
In Oolite, all characters other than you are NPC's. Unless you manage to connect with somebody else using Hiram's [[Nexus]].<br />
<br />
How do personalities exist within Oolite? Well, one '''either''' interacts with them when docked '''or''' as ships (in which case the [[AI]] of the ship is the relevant part - note that the AI's were rewritten for Oolite back in 2014 (v.1.80), breaking many AI's in older oxp's).<br />
<br />
== How NPC's react to you ==<br />
The majority of randomness - with the JS AIs, anyway - is provided by the player role list. The player gets various roles (reputations, in intent) assigned to this list as they do stuff in the game, which then decay away again back to "player-unknown" (which is responded to roughly like the old "player" role was - pirates attack, everyone else ignores if Clean).<br />
<br />
There is thus a local player reputation - which relates to local activities - and this is affected by one's elite rating.<br />
<br />
The higher the player's [[Elite Rating]], the slower their reputation decay is - some newish Mostly Harmless pilot you've never seen before could be anyone; some Deadly pilot you've never seen before you probably have at least vaguely heard the name and know what side they're on. Things which clear bounties - escape pods, galactic hyperspace - also clear out a good chunk of rep (though not all of it, especially not at Elite rank) ... normal jumping between systems clears down rep much faster if you're doing a cross-chart run than if you're hopping around the same A-B trade route for weeks.<br />
<br />
Each AI then picks a random role from the list - so a player who does both trading and bounty hunting, some AIs will treat them as a trader, and some as a hunter, in rough proportion to how much they've done each activity lately. AIs in groups will take their lead from the group leader.<br />
<br />
So, for example, a player who has been clobbering local pirates will gain a reputation for doing this, and other pirates will try and avoid that player. A player with a reputation as a pirate will on the other hand just be ignored.<br />
<br />
This is also used by the police AIs if they stumble across a fight between two Clean ships: does the player have a better rep than the ship they're fighting? If so, it was probably the other one that started it, so they'll then start allocating bounties on that basis. (OXPs have a fair bit of flexibility to poke this so that the assassin pre-emptively attacking the player is the locally highly respected Earl of Tree Grubs, so clearly the scruffy outsider started it when the cops show up). Various other things like friendly fire forgiveness work in a similar way; traders are likely to run away from a "pirate" role player even if the player hasn't got anywhere near being hostile today; etc.<br />
<br />
In general the idea is that your actions give you a reputation, AIs respond to that reputation, and escaping an established reputation can be done but takes some effort. ([https://bb.oolite.space/viewtopic.php?p=285903#p285903 Cim 2022])<br />
<br />
== OXP's ==<br />
:''These OXP's introduce ships with NPC personalities into your game.''<br />
:Many of these were crafted by [[User:Murgh|Murgh]]<br />
:Note that some of these have been repackaged several times over the years - Missionaries, Boy Racer, Refugee Adder/Adder Xpat<br />
<br />
*[[Iron Ass OXP]] - some of these ships have strong personalities (Boy Racer, Adder Xpat, [[Scrub]])<br />
*'''Missionaries''' - three flavours: Iron Ass Missionaries (2022) - see Iron Ass OXP above, [[Hognose Missionaries]] (2016), [[Missionaries OXP]] (2006)<br />
*[[Refugee Adder]] - three flavours: in the Iron Ass OXP above (2022), the PROHIP Xpat b1 (2022), and the original from 2005<br />
*[[Hognose Tugship]] - two flavours: Griff's version (2022), and Murgh's (2005) original<br />
*[[Personalities OXP]] - introduces some of the older personalities from the Oolite bulletin boards into your game! (2022 - [[User:Alnivel|Alnivel]]'s update; 2009 original - possibly broken with newer Oolite versions)<br />
*These other old OXP's: [[Hotrods OXP]], [[Frog Space Rickshaw]] (all from circa 2006).<br />
<br />
<br />
:''These OXP's introduce (paid) allies into your game.''<br />
*[[EscortDeck]]<br />
*[[Hermitage]]<br />
*[[Hired Guns OXP]]<br />
<br />
<br />
:''Docked NPC's''<br />
*[[The Collector]] - mission<br />
*[[The Galactic Almanac OXZ]] - see the [[Easter Eggs]] mission!<br />
*[[Hints]] (overhearing NPC's at the bar)<br />
*[[Life in the Frontier]] (adventures in the station)<br />
<br />
<br />
:''One of the issues is the Torus Drive which is not shared with NPC ships, and limits some interractions with them. See [[Torus Drive]] for workarounds''<br />
<br />
=== Missions ===<br />
Many missions involve ships with personality. See [[Oolite Missions]] for a sortable list (you might wish to select your galaxy, for example).<br />
*See especially [[Resistance Commander]] where you lead a group of NPC guerillas<br />
<br />
=== Tools ===<br />
*[[Library OXP]] introduces the [[Lib PAD]] which contains a database for in-game NPC's with extensive resources. This has sadly not been implemented by other OXP's.<br />
<br />
== Links ==<br />
*[[Crew]]<br />
<br />
*[[Communication]] - has list of OXPs which facilitate communication with NPC's<br />
*[[Cheating]] - for OXPs which even out the game inbalances between players & NPC's<br />
<br />
=== Individual NPC's ===<br />
See [[:Category:Fictional people]] for a longer list<br />
*[[Admiral Matthews]]<br />
*[[Mission One - FAQ|Captain Curruthers]] - from the [[Vanilla game]]<br />
*[[Commander Jameson|Jameson]]<br />
*[[Rebecca Weston]]<br />
*[[Udian Shulth]]<br />
<br />
Some of the Oolite players developed very characterful player versions:<br />
See [[:Category:Profiles]] for an incomplete listing<br />
*[[User:Captain Hesperus|Captain Hesperus]]<br />
*[[User:Daddyhoggy|Daddyhoggy]]<br />
*[[User:Disembodied|Disembodied]]<br />
*[[User:Fatleaf|Fatleaf]]<br />
*[[User:Reval|Reval]]<br />
*[[User:Wyvern|Wyvern]]<br />
<br />
=== Discussions ===<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=10543 Your Oolite Identity] (2011-12)<br />
<br />
*[https://bb.oolite.space/viewtopic.php?p=205073#p205073 General Overview] from the Elite: Dangerous - Design Decision Forum (2013)<br />
<br />
*See, for example, the discussion at [https://bb.oolite.space/viewtopic.php?f=6&t=9279 Hire Traders] (2011)<br />
*[https://bb.oolite.space/viewtopic.php?f=6&t=18018 System Populator Memory] (2016) - a number of these posts are very relevant to our topic<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=18609 Do NPCs use primable equipment?] (2017)<br />
*[https://bb.oolite.space/viewtopic.php?p=276445#p276445 You can't directly reference and/or assign a script to a character] (2022) - and see the next 5 posts<br />
<br />
[[Category:Factual]] [[Category:Concepts]]</div>Phkbhttps://wiki.alioth.net/index.php?title=Music&diff=83473Music2024-03-18T13:48:47Z<p>Phkb: Updating BB links</p>
<hr />
<div>[[File:Hyperradio.png|thumb|right|Hyperradio logo]]<br />
There is ''Music'' - and then there are ''Sound-sets'' (docking sounds, comms sounds within the [[Aegis|aegis]], [[F3 page (ship outfitting)|F3 shipyard]] sounds, ''etc'').<br />
== OXP's ==<br />
The following OXP's add music to your game:<br />
<br />
=== Music for playing the game to ===<br />
''(these all need [[Library]] to function)''<br />
*[[Lib Music Orchestral Demo]]: [[User:Svengali|Svengali]]'s original demonstration .oxp (2016: 22Mb)<br />
*[[Contextual Jukebox OXP]] by Arquebus of [https://bb.oolite.space/viewtopic.php?f=2&t=21111 YouTube fame] (2021: 115Mb)<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=21127 Dangerous Background Music OXP]: Tsoj's DIY kit! (2021)<br />
*[[Hyperradio Musicpacks]] - the tracks are now played using [[Library OXP]] (2008-14)<br />
<br />
=== Alternative Docking music ===<br />
*[[Delightful Docking]] (2012-14) - [[User:Smivs|Smivs]]'s improved Blue Danube<br />
*[[Random Docking Music OXP]] (2010, 6.3Mb: Blue Danube & Angel's Tear, instructions for adding more)<br />
*[https://bb.oolite.space/viewtopic.php?f=7&t=8335 Replacement title themes for Oolite] (2010)<br />
*[https://bb.oolite.space/viewtopic.php?f=9&t=21089 Random music for random-docking-music] ([[User:Slartibartfast|Slartibartfast]], Linux, 2021)<br />
<br />
=== Alternative Game Start Music ===<br />
*[[XenonUI]] adds different music for the game start (2015-date)<br />
<br />
=== Missions ===<br />
*A number of the missions & dockables OXP's also introduce music (''eg'' [[Military Fiasco]], [[Localhero OXP]], [[Vector OXP]], [[hOopy Casino]], [[Taranis OXP]], ''etc''.)<br />
<br />
=== Noise/Sound-sets ===<br />
This is a list of the more modern sound-sets. See [[:Category:Sound Sets OXPs]] for the complete list of a couple of dozen.<br />
*[[BGS]] adds relevant noises - and has optional add-ons adding more (2010-date)<br />
:[[BGS Soundset by P.A. Groove]]<br />
:[[BGS Soundset/Images by Keeper]]<br />
:[https://bb.oolite.space/viewtopic.php?f=4&t=16654 BGS female comms chatter patch] (2014, by Diziet Sma) - since combined into BGS<br />
*[[Engine Sound]]: engine sound that follows the speed of your ship (2014-15)<br />
*[[Engine Sound FG]]: engine sound that follows the speed of your ship, thruster sounds when maneuvering, and some additional sounds (2015).<br />
*There are a number of old sound .oxp's importing sounds from older versions of Elite, ''etc''. See here: [[All OXPs by Category]] (an old 2010-13 OXP list)<br />
*[[Dangerous HUD]] contains a new sound-set (2018 - 3 HUD styles for each of 6 colours - white, purple, pink, green, blue & orange).<br />
<br><br />
*The original 2009 version of [[Famous Planets OXP]] had music for visiting specific systems (Diso, Isinor, Lave, Leesti, Lerelace, Reorte, Teraed, Tianve, Tionisla & Zaonce). This was removed in the later versions. This version is now [[List of Lost OXP's|lost]].<br />
<br />
=== Other Sound-related ===<br />
*[[Oolite Voice Control]] - For Windows only (uses glovePIE)<br />
<br />
----<br />
<br />
== Lore ==<br />
*[[Zaonce (Rough Guide)]] - see stadium description<br />
*[[Reinen (Rough Guide)]] (local folk music)<br />
*[[Sector1/Retila]]<br />
<br><br />
*[[Jjagged Bbanner]] - originally from [[Frontier]], but also appears in the [[Hotrods OXP]]<br />
----<br />
<br />
== Oolite Community musicians (partial list) ==<br />
Our Oolite community has been blessed by the talents of our musicians, who have contributed widely to our game. ''Not'' just music!<br />
*[[NoSleep]] - first Oolite playtester, chum of [[User:Aegidian|Aegidian]], wrote the music for game opening & docking<br />
*[[Jonny Cuba]] - second playtester, chum of NoSleep & [[User:Murgh|Murgh]], wrote the music for hOopy Casino<br />
*[[User:P.A. Groove|P.A. Groove]] wrote [[BGS Soundset by P.A. Groove]] and the original [[Famous Planets]] which then included his music!<br />
*[[User:Svengali|Svengali]] wrote [[BGS]] which has 130 sounds & [[Lib Music Orchestral Demo]]<br />
*[[Keeper]] wrote [[BGS Soundset/Images by Keeper]]<br />
*[[User:Gsagostinho|GS Agostinho]] created a sound-set for his [[Dangerous HUD]]<br />
<br />
[[Category:Concepts]]<br />
[[Category:Ambience OXPs| ]]<br />
[[Category:Sound Sets OXPs| ]]</div>Phkbhttps://wiki.alioth.net/index.php?title=List_of_Oolite_stories&diff=83472List of Oolite stories2024-03-18T13:46:42Z<p>Phkb: Updating BB links</p>
<hr />
<div>[[File:Oolite ad1 .jpg|right]]<br />
A list of all [[Oolite]] stories by author. <br />
<br />
== Musings ==<br />
[[File:FE2 small.jpg|thumb|right|150px]]<br />
The relationship between the game and associated literature began with [[Classic Elite]] and [[The Dark Wheel]]. [[Frontier]] continued the pattern. With Oolite, some interesting variations on the theme have occurred.<br />
<br />
The early players and developers of Oolite had played Frontier, and many had tried to synthesise it with the earlier game of Elite (it was, after all, labelled as ''Elite II'' on the box cover). Thus much of the earlier Oolite fiction draws on the Frontier canon as well as the Elite canon. Accordingly, Drew Wagar, Commander Wyvern & Blaze O'Glory do exactly that.<br />
<br />
But this then fed back into the game! For example, [[User:Spara|Spara]], having read Drew's Oolite saga, then dedicated himself to updating the [[Galactic Navy]] oxp's so that they fitted better into the newer versions of the game which now enjoyed shaders and better AI (back around 2014). On the other hand, the originators of [[HIMSN]], appalled at the domineering nature of the Galactic Navy (which had been all but invisible in Classic Elite), dedicated themselves to producing a smaller, more focused navy, which they felt fitted in better with the scant references found in the canon of Classic Elite (and ignoring Frontier)! See [[Lore]] & [[History]] for more of this sort of analysis.<br />
<br />
For fictional Oolite non-Fiction see [[Oolite Literature]]<br />
<br />
<br />
== Alien Items, the Oolite Anthology ==<br />
<br />
[[Image:AlienItems.jpg|thumb|right|150px|The Cover of Alien Items]]<br />
<br />
* [[Alien Items]] is a collection of short stories set in the Ooniverse, written between 2006 and 2012. Various authors are represented including Dylan Smith, Blaze O' Glory, Cody (El Viejo), DaddyHoggy, Commander Wyvern, Ganelon and Drew Wagar. This is the ''official Oolite anthology''.<br />
<br />
:* The Virtuous Misfortune (Dylan Smith) - What happens when the captain and crew of a Python Class Cruiser recover some cargo that they didn't quite intend<br />
:* Carver's Anarchy (Ganelon) - Stand-alone Chapter 1 of the saga below<br />
:* Nine (Drew Wagar) - About an attempt to reach the ninth chart and its tragic consequences<br />
:* Calliope (Blaze O' Glory) - What can happen when the deal to ship some machinery is just too good to be true<br />
:* Coyote (Cody)<br />
:* Ascension (Drew Wagar) - What happens when a spaceship crashes on a pre-spacefaring world<br />
:* Local Midnight at the Vacuum Bar (Blaze O' Glory)<br />
:* Snake Charming (DaddyHoggy)<br />
:* Schism (Drew Wagar) - About an anachronistic incident on a generation ship<br />
:* Vakume Danserz (Ganelon)<br />
:* Negotiations of Failure (Commander Wyvern)<br />
:* Lazarus (DaddyHoggy)<br />
:* Replay (Drew Wagar) - About Thargoid mind experiments on humans<br />
<br />
<br />
* It can now be found [https://www.yumpu.com/en/document/view/6917513/alien-items-drew-wagar here].<br />
<br />
<br />
{{Clear}}<br />
----<br />
== List by Author ==<br />
<br />
=== Allikat ===<br />
<br />
* [https://bb.oolite.space/viewtopic.php?f=11&t=7434 The voyages of Montezuma's revenge...] (2010) Problems in a Python.<br />
<br />
<br />
=== Benguela ===<br />
<br />
* [https://bb.oolite.space/viewtopic.php?f=11&t=12821 Short Vignettes] (2012) Vignettes of 3 pilots.<br />
* [https://bb.oolite.space/viewtopic.php?f=11&t=17564 I am a Jameson] (2015) Starting at Lave.<br />
<br />
<br />
=== Bryonarn ===<br />
<br />
* [https://bb.oolite.space/viewtopic.php?f=11&t=18885 Tales of a Pacifist Pilot] (2017) Two short snippets.<br />
<br />
<br />
[[File:Hesperus mugshot.png|150px|right|]]<br />
=== [[User:Disembodied|Blaze O'Glory]] ===<br />
<br />
* [[Calliope]] (2009) - An episode from the unorthodox life of [[User:Captain_Hesperus|Captain Hesperus]]. Money is short, the engines are failing, and there's soup on the ceiling ...<br />
* [[Stranglehold]] (2012) – A further episode from [[User:Captain_Hesperus|Captain Hesperus's]] unorthodox life. A stirring tale of dash, daring and foul mutiny!<br />
* [https://app.box.com/s/3dob2hvj9a Local Midnight in the Vacuum Bar] (2010) - A short story.<br />
<br />
<br />
=== [[User:Captain_Hesperus|Captain Hesperus]] ===<br />
Whilst most of the Captain Hesperus oeuvre comes from the pen of Disembodied/Blaze O'Glory, there are one of two snippets from the cat himself...<br />
<br />
* [https://bb.oolite.space/viewtopic.php?f=11&t=6809 The Return of the Cap] (2007) - Arrival at Riedqaut<br />
<br />
<br />
=== [[User:CaptSolo|CaptSolo]] ===<br />
<br />
* [https://bb.oolite.space/viewtopic.php?f=11&t=9295 Captain Solo - Introduction] (2011) - Proceeds from a game of poker<br />
* [https://bb.oolite.space/viewtopic.php?f=11&t=9471 The Sotieraian Conspiracy] (2011) - Trade deals and a young pilot<br />
<br />
<br />
=== [[User:ClymAngus|Clym Angus]] ===<br />
* Also see ''Wyvern & Clym Angus'' below<br />
<br />
*[https://bb.oolite.space/viewtopic.php?f=11&t=17247 The chronicles of Shulth - Apocrypha] - How did the world of Elite/Oolite change into that of FE2/FFE/ED? Read this and find out!<br />
<br />
<br />
[[File:Cody.png|150px|right]]<br />
===[[User:Cody|Cody]]===<br />
<br />
* ''Coyote'' - a ripping yarn set in the fifth octant.<br />
* ''Inside Straight'' - the unlikely sequel to ''Coyote''.<br />
* ''Sombrero Fallout'' - the even more unlikely sequel to ''Inside Straight'' (as yet, unfinished/unpublished).<br />
* [https://bb.oolite.space/viewtopic.php?f=11&t=13049 An Ideal Victim!] Short story<br />
<br />
Cody's fiction may be downloaded [https://app.box.com/s/7ykrang6xmqausxp989e here].<br />
<br />
<br />
=== [[User:Daddyhoggy|Daddyhoggy]] ===<br />
<br />
* [https://bb.oolite.space/viewtopic.php?t=6103 Lazarus I] (2009) Flying a second-hand Cobra Mk. III<br />
* [https://bb.oolite.space/viewtopic.php?f=11&t=6460 Lazarus II] (2009)<br />
* Snake Charming - in the Alien Items anthology above or [https://bb.oolite.space/viewtopic.php?f=11&t=7538 here]. (2010)<br />
<br />
<br />
[[File:DavidTQ interior.png|thumb|right|200px|DavidTQ's bridge - inspiration for his story]]<br />
<br />
=== DavidTQ ===<br />
<br />
* [https://bb.oolite.space/viewtopic.php?f=11&t=6307 Deadly Designs] (2012) 8-part story in two posts: Building up to iron-ass a Cobra Mk. III<br />
<br />
<br />
=== Dragonfire ===<br />
<br />
* [https://bb.oolite.space/viewtopic.php?f=11&t=10451 Here's To Your Demise] (2011)<br />
<br />
<br />
=== DredgerMan ===<br />
<br />
* [https://bb.oolite.space/viewtopic.php?f=11&t=12268 Old Ships Are Best] (2012) on the Oolite BB. A story about a Commander of an old and battered Python Special ET. A work in progress.<br />
<br />
<br />
=== [[Drew Wagar]] === <br />
<br />
[[Image:Status_Quo_Edition_2_Cover_Small.jpg|thumb|right|150px|Status Quo. <br> Cover by Neil Badman]]<br />
[[Image:Mutabilisneilbadman.png|thumb|right|150px|Mutabilis. <br> Cover by Neil Badman]]<br />
<br />
* [[Status_Quo|Status Quo]] (2006) - The first story in the [[Oolite Saga]]. “A brilliant scientist uncovers a terrifying plot to begin a galactic war. Aided by a talented, but reluctant and embittered combateer, he must stop the deployment of a super weapon he invented. A weapon so powerful it threatens to destroy entire worlds.” Elite came with a Novella called ''The Dark Wheel'', which set the scene for the game. ''Status Quo'' aims to do the same thing for Oolite, introducing Commander Jamesons to the Ooniverse...<br />
* [[Mutabilis]] (2008) - The second story in the [[Oolite Saga]]. “When a series of linked murders forces GalCop to outlaw the shadow organisation known as ‘The Dark Wheel’, a mysterious top secret document must be found in order to stave off a galactic conflict. The document contains a devastating secret; the key to domination, power and control. A secret as old as space itself, the location of the legendary planet ‘Raxxla’”. ''Mutabilis'' is the sequel to 'Status Quo' and also introduces readers to the adventures of [[User:Captain_Hesperus|Captain Hesperus]]. Further accounts of this roguish character can be found in the [[Calliope]] story below...''<br />
* [[Incursio]] (2011) - The third story and final part of the [[Oolite Saga]]. “When a deadly alien attack is launched across the galaxy, humankind finds itself under-prepared and overwhelmed. As star systems begin to fall, privateers take up the battle alongside the military forces and a desperate plan is hatched to stop the invaders once and for all, before humanity is eradicated.” ''Incursio'' picks up the story eleven years later and also feature avatars from the Oolite forum: Daddyhoggy, Hesperus, Udian, Coyote, Derik, Cheyd and Maik.''<br />
* [[Finis]] (2011) - The fourth and final final part of the [[Oolite Saga]]. "With the alien menace poised to overthrow the galaxy a lone group of combateers is all that that stands between them and total annihilation. When one of their number is kidnapped by the aliens and their plans thwarted, the group must decide whether to mount a rescue and risk losing the war, or sacrifice her for the greater good of humankind…"<br />
* [[Altera]] (2016) - The fifth and final final final part of the [[Oolite Saga]].<br />
<br />
The first two of the series have been transmogrified into [[Ship's Library OXP|Ship's Library]] books for reading while docked or in-flight on an MDF.<br />
<br />
The Oolite Saga had its own [http://www.facebook.com/drewwagarwriter fan page on Facebook].''<br />
<br />
Drew has also written a number of short stories for the Oolite Universe… (the first four are in Alien Items, above)<br />
<br />
* [[Schism]] (2007) - ”Lumbering through the deeps of space are the Generation Ships; huge self contained transports driving between the stars at sublight speeds in the midst of thousand year journeys to populate new planets. After 30 generations, a staggering and devastating truth is revealed to the occupants of one such ship…”<br />
* [[Nine]] (2009) - “The story of an attempt to reach the ‘ninth’ chart. As players familiar with Elite and Oolite will doubtless know there are only eight charts reachable by Galactic Hyperspace. Does the ninth chart exist? Can it be reached? If so, what’s there? This is a slightly chilling tale of the ‘Ooniverse’…”<br />
* [[Ascension]] (2009) - ”A tale of what might happen when an example of sophisticated technology is suddenly thrust upon a backward culture steeped in religion.”<br />
* [[Replay]] (2009) - “Difficult to describe even in summary without giving away the plot. It’s only three and a half pages long, so won’t take you long! Enjoy!”<br />
* [[Family]] (2009) - “an excellent battle and nice interaction between Kemi and the Princess.”<br />
<br />
Visit [http://www.drewwagar.com Drew Wagar's website].<br />
<br />
<br />
=== DruidDave ===<br />
<br />
* [https://bb.oolite.space/viewtopic.php?f=11&t=15276 Dark Temple] (2013-4) on the Oolite BB. Disparate chapters of a projected book.<br />
<br />
<br />
=== [[Dylan Smith]] ===<br />
<br />
* [http://www.alioth.net/Fiction/oolitestory.pdf The Virtuous Misfortune] (2006) - Dylan wrote the first short story for Oolite. A salutary warning in terms of who and how to fight, and what cargoes are safe to carry...<br />
<br />
<br />
=== Ganelon ===<br />
<br />
* [https://bb.oolite.space/viewtopic.php?t=8609 Vakume Danserz] (2010) on the Oolite BB. Not quite a story, in my opinion. A vignette, perhaps. Included in [[Alien Items]].<br />
* [https://bb.oolite.space/viewtopic.php?t=8641 Carver's Anarchy] (2010) on the Oolite BB. This might be the first installment, or it might be the only story about Carver and his crew that I actually get around to finishing. [Comment: This a now an 8 chapter short story giving imaginative insight into an Anarchy]<br />
* [https://bb.oolite.space/viewtopic.php?f=11&t=9649 Derelict] 2011 on the Oolite BB. Marooned in witchspace!<br />
<br />
<br />
{{Clear}}<br />
<br />
=== Hoqllnq ===<br />
* [https://bb.oolite.space/viewtopic.php?f=11&t=18678 Vicious Brew] (2017) on the Oolite BB. Becoming Elite.<br />
<br />
<br />
=== Huntress ===<br />
* [https://bb.oolite.space/viewtopic.php?f=11&t=17786 The Adventures Of The Three Idioteers] (2015) 3 chapters set in G7 [[Sector7/Cerianon|Cerianon]]<br />
<br />
<br />
[[Image:Heralds_End.jpg|thumb|right|150px|Herald's End by K Thomas]]<br />
=== K Thomas (OneOfTheLost) ===<br />
<br />
* [https://bb.oolite.space/viewtopic.php?f=11&t=11565 Knight's Oath] (2012). Unfinished. A bar-room brawl over Ensoreus & a space fight over Ararus.<br />
<br />
* [https://bb.oolite.space/viewtopic.php?t=7160 Herald's End] (2009-2010) on the Oolite BB. An Oolite short story, a work in progress.<br />
<br />
<Blockquote><br />
My god, the stars...<br />
<br />
Hundreds of the blinking lights shone through the infinite blackness of the abyss. The three viewscreens in front of him where filled with them. Slowly the pilot leaned back in his chair. Eyeing the left viewscreen with a hint of concern, he pushed the steering yoke forward, pushing the ships' nose downward, and hopefully out of the 'lane' of traffic going into, and leaving the station.<br />
<br />
At its pilot's bidding, the Python class freighter sunk downward. The pilot pressed a button on his console, and the center viewscreen's view suddenly changed. Now it showed a perspective from the rear of the ship, allowing the pilot to see a spinning dodecahedron shaped mass. The engines where at 'full-burn' and a trail of yellow and blue partially obscured the Coriolis space station. Just behind it, a massive green blob filled part of the screen.<br />
<br />
Lave<br />
<br />
The planet was infamous. Or more accurately, the system where it made its residence. Many a spacer had started his or her career here. The Lave Academy qualified those with the credits for space flight. Licenses where issued by a rather surly frog aboard the orbiting space station.<br />
<br />
Having just left a rather heated encounter with just such a dockmaster, the young pilot gave a scowl. This promised to be an interesting trip. Putting the ship onto a course aiming directly at the sun, Orin Minea'r leaned back into the pilot's chair and observed the deck around him.</Blockquote><br />
<br />
{{Clear}}<br />
<br />
<br />
=== [[User:LittleBear|LittleBear]] ===<br />
<br />
* It's a story. But ''not'' appearing in the usual format. Download Littlebear's [https://bb.oolite.space/viewtopic.php?f=4&t=21053 Galactic Almanac OXP] and pop it into your AddOns folder. Add [[GNN]] from the in-game [[Expansions Manager]] if you do not already have it. Shake, stir, and then mix yourself a decent drink, and watch the plot unfold as you mooch around the galaxy!<br />
<br />
:If you have not already encountered Captain Hesperus, then you might care to browse one or two short stories about him first, just to give some context, and relish LittleBear's drama a little more: sneak a peek at Blaze O'Glory's fiction, above.<br />
<br />
<br />
=== Malacandra ===<br />
<br />
* [https://bb.oolite.space/viewtopic.php?f=11&t=13691 Do It For Thysen] (2013) on the Oolite BB. A young man learns some words to live by.<br />
* [https://bb.oolite.space/viewtopic.php?f=11&t=14008 Ships That Pass In The Night] (2013) ditto. An Asp pilot in a communist utopia.<br />
* [https://bb.oolite.space/viewtopic.php?f=11&t=14036 Interlude: Steel Thunder] (2013) - just after Ships That Pass In The Night<br />
* [https://bb.oolite.space/viewtopic.php?f=11&t=14043 Dangerous Moonlight] (2013) - just after Interlude: Steel Thunder<br />
* [https://bb.oolite.space/viewtopic.php?f=11&t=16710 Flying Dutchman] (2014) - just after Dangerous Moonlight<br />
* [https://bb.oolite.space/viewtopic.php?f=11&t=16729&start=15 Sidewinder Precision Pro] (2014) ditto. Adventures of a Sidewinder pilot. The full version is on Amazon<br />
<br />
=== Marc Beaumont ([[User:Maaarcooose|Maaarcooose]]) ===<br />
<br />
* [http://www.theramist.co.uk/blog/?p=121 Mostly Deadly] (2012) on theramist.co.uk. The story of a hedonistic woman, running from her past, until it catches up with her and changes everything.<br />
* [https://bb.oolite.space/viewtopic.php?f=11&t=14894 The Curse Of The Crimson Koala] (2013) on the Oolite BBS. First part of a three parter. Theme music also available on [https://soundcloud.com/theramist/searching Soundcloud].<br />
<br />
<br />
[[File:Griff adder.jpg|right|150px]]<br />
=== Mossfoot ===<br />
<br />
* [https://bb.oolite.space/viewtopic.php?f=11&t=16586 Mossfoot Tales of Woe] (2014-2015) on the Oolite BB. Ending up in an Adder, no ID, no money, no fuel. And no joystick. <br />
:Follow the link to find the first stories in the series (buried deep in another thread)<br />
* [http://captainmorganandspitfire.blogspot.com/2014/08/some-days-it-doesnt-pay-to-chew-through.html Captain Morgan & Spitfire] (2014-2015) on Blogspot. ...I need something to do while I am lying here in this medbed, looking like a mutated octopus with tubes and wires sticking out of nearly every part of my anatomy.<br />
<br />
<br />
=== My ammo crate ===<br />
<br />
* [https://bb.oolite.space/viewtopic.php?f=11&t=17843 The Systems Three] (2015) on the Oolite BB. High politics in the eastern end of Galaxy 1.<br />
* [https://bb.oolite.space/viewtopic.php?f=11&t=18060 The Rebellious Three] (2016) on the Oolite BB. Because this is a sequel, reading The Systems Three is recommended, but not required.<br />
<br />
<br />
=== One of the Lost ===<br />
<br />
See ''K Thomas'' above<br />
<br />
<br />
[[File:Isence (Animation).gif|thumb|right|150px|Isence]]<br />
=== [[User:P.A. Groove|P.A. Groove]] ===<br />
<br />
* [https://bb.oolite.space/viewtopic.php?t=8354 The Ipsiolon Treat] (2010) on the Oolite BB. A work in progress. Starts down-planet in Isence.<br />
<br />
<br />
=== Paladin Tux ===<br />
<br />
*[https://bb.oolite.space/viewtopic.php?f=11&t=17986 Tail of the Lost Wonderworm] (2016) 3 parts. PT was c.15 years old when he wrote this.<br />
<br />
<br />
=== Pansen ===<br />
<br />
* [https://bb.oolite.space/viewtopic.php?f=11&t=9514 Petra] (2011) on the Oolite BB. A 7-part story about mining prospectors. The final parts are at the end of the thread.<br />
<br />
<br />
=== [[User:Paradox|Paradox]] ===<br />
<br />
*[https://bb.oolite.space/viewtopic.php?f=11&t=16677 "The Adventures of Captain Morgan" Or "Damn That Mossfoot"] (2014)<br />
*[https://bb.oolite.space/viewtopic.php?f=11&t=18319 The Sledge Hammer and the Mouse.] (2016)<br />
<br />
<br />
=== Rese249er ===<br />
<br />
* [https://bb.oolite.space/viewtopic.php?f=11&t=12393 Breaker Breaker] (2012) on the Oolite BB. A story about some wet behind the ears new pilots fresh out of the Academy. A work in progress.<br />
<br />
<br />
[[File:Komodo.png|right|150px]]<br />
=== [[User:RyanHoots|RyanHoots]] ===<br />
<br />
* [[Anguis Primus (book) | Anguis Primus]]: What happens when an uber ship falls into the hands of a girl...<br />
* [https://www.dropbox.com/s/0gw1sz72x7xjpyz/Komodo.pdf Komodo]: Short story about an uber ship<br />
* The Shadowed Hand: Work in Progress.<br />
<br />
<br />
=== Sarin ===<br />
<br />
* [https://bb.oolite.space/viewtopic.php?f=11&t=7607 Commander's Log] (2010) Musings of a pilot in Galaxy 1<br />
<br />
<br />
=== Spooky ===<br />
<br />
* [http://int13h.com/downloads/static.pdf Static] (2012) PDF download. Whilst clearing out some old kit I found some partially completed ooliterature that I was working on 3 or 4 years ago. Normally I just bin this stuff but this time I though I'd have a bash at finishing it and letting you poor people "enjoy" it. So, I suppose I'm proud to present Static.<br />
<br />
<br />
=== Staggerlee ===<br />
<br />
* [https://bb.oolite.space/viewtopic.php?f=11&t=16562 Lost in Transit] (2014) PDF download linked to Oolite BB. Life of a dockworker on a Coriolis station.<br />
<br />
<br />
[[File:Griff Rock Hermit.jpg|right|150px]]<br />
=== [[User:Stranger|Stranger]] ===<br />
<br />
* [https://bb.oolite.space/viewtopic.php?f=11&t=21097 Hermit] (2012, 2015, 2021) PDF download linked to the Oolite BB. Translated by Stranger into English from the Russian. War in the [[Sector1/The Iron Stars (Region)|Iron Stars]] region, and a mining space hermit.<br />
*[[Inflexible (fiction)]]. Murky misdeeds in the [[Sector1/The Devil's Triangle (Region)|Devil's Triangle]] (2014, 2020) Imperfect & unfinished translation<br />
<br />
<br />
=== The Old Gamer ===<br />
<br />
* [https://bb.oolite.space/viewtopic.php?f=11&t=18175 In Service to the Margravine] (2016) on the Oolite BB. A young chap from Lave makes his way up to Aronar ...<br />
<br />
<br />
[[File:ROTK.jpg|right|150px]]<br />
=== [[User:Wyvern|Wyvern]] & [[User:ClymAngus|Clym Angus]]===<br />
<br />
* [[Rise_of_the_Kirin|Rise of the Kirin]] (2009) by [[user:Wyvern|Wyvern]] & [[user:ClymAngus|ClymAngus]]. The famous Tibecean incident.<br />
* [https://bb.oolite.space/viewtopic.php?t=8309 Negotiations of failure] (2010) on the Oolite BB by [[user:Wyvern|Wyvern]]. An Oolite short story.<br />
<br />
<br />
=== Yah-Ta-Hey ===<br />
* [https://bb.oolite.space/viewtopic.php?p=151528#p151528 Amerindians in Space] (2011) on the Oolite BB. Fleeing Earth... Features Captain Hesperus & El Viejo.<br />
<br />
<br />
=== [[User:Zireael|Zireael]] ===<br />
<br />
* [https://bb.oolite.space/viewtopic.php?f=11&t=16182 Commander Mara's Ship Log (provisional title)] (2013) on the Oolite BB. Log of Oolite kills.<br />
* [https://bb.oolite.space/viewtopic.php?f=11&t=16182 Commander Mara's Ship Log] (2014) on the Oolite BB. Log of playing Oolite and trying out some oxp's<br />
<br />
----<br />
<br />
== Other Languages ==<br />
=== Russian ===<br />
* [https://drive.google.com/drive/folders/0B_OS-FIJTVDXU2lhN0V2anNmY1U?resourcekey=0-GKHfU7qls_FRq_AiJj-AUQ Oofiction] by [[User:Stranger|Stranger]]<br />
: Hermit (2015) - War in the [[Sector1/The Iron Stars (Region)|Iron Stars]] region, and a mining space hermit.<br />
: Inflexible (2020)<br />
<br />
----<br />
== Treasure Troves ==<br />
*[https://bb.oolite.space/viewtopic.php?f=11&t=4156 Commander Munchausen] is a hoot!<br />
*The [[Classic Elite]] "official" stories are [[The Dark Wheel]] & [[Imprint]].<br />
*Please note that there are separate pages with a [[:Category:Elite stories | List of Elite story authors]] (links to their stories) and also a [[List of Frontier stories]].<br />
*Feel free to dig around in the [https://bb.oolite.space/viewforum.php?f=11 Fiction] threads of our BB to see what you can unearth!<br />
*And see [https://bb.oolite.space/viewtopic.php?f=11&t=4145 Travellers' Tales] (2008)<br />
*[https://bb.oolite.space/viewtopic.php?f=11&t=6133 A community story] (2009 - by PAGroove, Overmage, Drew Wagar & Captain Hesperus)<br />
*[https://bb.oolite.space/viewtopic.php?f=11&t=8088 wot are all you writers up to?] (2010-11 - a rather amazing collection of red herrings on a literary theme: murders, disquisitions on grammar, quantifications of nastiness, "RP" (received pronounciation) ''etc''.)<br />
<br />
=== Notes on Writing Oofiction ===<br />
*[https://bb.oolite.space/viewtopic.php?f=11&t=16525 Oocyclopedia] (2014) Is there a guide to the ooniverse for new writers who wish to contribute fiction?<br />
<br />
[[Category:Oolite stories| ]]<br />
[[Category:Lore]]</div>Phkbhttps://wiki.alioth.net/index.php?title=Legacy_Scripting&diff=83471Legacy Scripting2024-03-18T13:46:21Z<p>Phkb: Updating BB links</p>
<hr />
<div>[[File:Plist-XML-ASCII-ill.png|thumb|right|702px|XML (left) & OpenStep (right)]]<br />
Older OXPs (from [[User:Aegidian|Aegidian]]'s day) were written ''entirely'' in Legacy Script. So if you look, for example, at the innards of [[Benulobiweed Inc.|Charlie's Benulobiweed oxp's]] from 2006-7 you will find that everything is written in the legacy scripts. When Aegidian started writing Oolite it was purely for the AppleMac, hence the ability to overwrite portions of the vanilla game code in OpenStep (the Windows and Linux ports were written later by [[David Taylor]] & [[Dylan Smith]]). XML was also included as a valid OXP language.<br />
<br />
'''Nowadays Legacy scripting is still used in [[Property list]] or .plist files.'''<br />
<br />
'''Legacy script thus comes in two versions: XML & OpenStep.'''<br />
<br />
*See [[Methods]] for more technical information on legacy scripting<br />
<br />
*'''Converters''': Commander Jettison wrote 2 small programmes for translating the more opaque XML into OpenStep which you can find [https://bb.oolite.space/viewtopic.php?f=2&t=10039 here] (2011-17). The older version is on the first page, the newer on the third page of the thread.<br />
<br />
*'''Commodities''': The commodities coding in the older OXPs is particularly obscure. See [[Commodity Calculator]] for a helpful download for interpreting it.<br />
<br />
*'''String Variables''': Legacy scripting mechanism only supports string variables (although they can do arithmetic on strings containing numerical values). For JavaScript, mission variables with a purely numeric values are converted to numbers when retrieved, and setting a mission variable to a number converts it to a string behind the scenes; in other words, mission variables can be numbers or strings in the JavaScript programming interface but are always strings internally and in saved games. [https://bb.oolite.space/viewtopic.php?p=97266#p97266 JensAyton (2010)].<br />
<br />
== Javascript ==<br />
[[User:Ahruman|Ahruman]] (2006-13) started introducing Javascript for OXPs when he took over from Aegidian as Lead Designer. But it took 4 years to create a stable new game with Javascript, shaders and his other modernizations. [[User:Cim|Cim]] (2013-15) then started changing some of the coding - for example for commodities & AI's.<br />
<br />
Modern OXPs are written in JavaScript. Specifically oolite.jsVersion 185, an Oolite specific variant of '''ECMAv5'''. It is the same Spidermonkey version (1.8.5 - March 2011) that Firefox 4 shipped with many years ago, but it is a special build for Oolite. This is the version that we have almost always had and it has not changed between versions of the game since Ahruman's day. It is unlikely to change in the future (due to the immense amount of work involved in tampering with it!).<br />
<br />
*See [[OXP howto]] for an introduction to current scripting with Javascript<br />
<br />
== Updating old OXPs ==<br />
Rather than delve into the intricacies of legacy scripting, it might be easier to write an over-ride OXP in javascript. See Sothis & [[SothisTC]] for an example. KillerWolf wrote Sothis in a mix of XML legacy script & javascript in 2010. Spara wrote a javascript override (improving the markets) which is currently (May 2021) being updated (reintroducing dockability ''etc'', which were all lost as Oolite changed). <br />
*See [https://bb.oolite.space/viewtopic.php?f=4&t=20937 MasterClass: How to OXP (updating SoThisTC)] (2021)<br />
<br />
== Links ==<br />
*See [[Oolite#A_little_History_.26_some_important_early_Versions]] for more detail on the History of the development of Oolite<br />
*[[Commodities.plist]]<br />
*[[OXP howto plist]]<br />
*[[Script.oos]] - already deprecated (2007 or so)?<br />
*[[Script.plist]]<br />
*[[Scripts within shipdata]]<br />
*[[Stacked AI]]<br />
*[[Structured Legacy Scripts]]<br />
*[[TwostateXML]]<br />
<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=18284 The bare minimum for a game-recognizable ship OXP using OpenStep] (2016)<br />
*[https://bb.oolite.space/viewtopic.php?p=171074#p171074 Adding suns, moons & ships to system using legacy script] (2007)<br />
*[https://bb.oolite.space/viewtopic.php?f=6&t=2784 Anyone want to write scripts using JavaScript?] (2007): [[David Taylor]]/DAJT's first introduction of SpiderMonkey into Oolite.<br />
<br />
<br />
If you need more information, you can navigate to a relevant page and then inspect the original 2006 version (if there was one) by clicking on the ''history'' tab at the top of the page and comparing the early version with the current one. Ahruman started introducing Javascript after he took over from Aegidian which was in early/mid 2007. Since then, the relevant pages have been edited, replacing the legacy script with the newer Javascript. ''History'' restores the originals. Note that in a few cases (eg: Commodities.plist) the original legacy script no longer works.<br />
<br />
[[Category:Oolite scripting]] [[Category:Legacy scripting]]<br />
[[Category:Factual]]</div>Phkbhttps://wiki.alioth.net/index.php?title=Latest.log&diff=83470Latest.log2024-03-18T13:46:10Z<p>Phkb: Updating BB links</p>
<hr />
<div>[[File:Latest.log example.png|thumb|right|800px|Selections from a Latest.log]]<br />
While Oolite runs, various diagnostic information is written to a file called Latest.log. <br />
<br />
== Overview ==<br />
The moment you start up your game a '''latest.log''' is created (or overwritten) with current information about it (''eg''. list of OXP's loaded).<br />
<br />
At any one time you will have just the one '''latest.log''' (your current game or that most recently finished), one '''previous.log''' (the previous game) and '''no information''' about older games.<br />
<br />
If something goes wrong with your game you will often be asked to submit information from your latest.log (which can be incredibly long!).<br />
<br />
== Location of Latest.log ==<br />
Where it is depends on your operating system:<br />
* '''Mac OS X''': Restart Oolite, and select “Show Previous Log” from the “'''Oolite'''” menu in the menu bar. Alternatively, in the Finder, select “Go to Folder…” from the Go menu, and enter “~/Library/Logs/Oolite/”, and find Latest.log.<br />
* '''Windows''': in Oolite’s folder (typically in C:\''Oolite''), there is a folder called ''oolite.app'', which contains a folder called ''Logs''. A shortcut to this folder is created at Oolite's Start Menu entries during installation. If you have installed the game in a folder subject to file virtualization like C:\Program Files\Oolite and encounter difficulty in locating the log files, then please refer to the Known Issues section of this FAQ for information on how to access them.<br />
* '''Linux and other Unix-like systems''': ~/.Oolite/Logs (that is, in the hidden folder ''.Oolite'' in your home folder). If you’re using Nautilus or Konqueror — if you’ve never heard of them, you probably are — select Show Hidden Files from the View menu.<br />
<br />
== More information ==<br />
*[[LogEvents]] adds ''much'' more information about your game (such as details of battles) to your latest.log (highly recommended!)<br />
<br />
*If you are developing an oxp you may find the second of the [[Oolite#Varieties_of_Oolite|three varieties]] of Oolite more useful - the Developer Version - which supports the [[Debug OXP]] <br />
<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=18607 Monitor attacks more detailed than "shipTakingDamage"/"shipBeingAttacked"]: ''ie'' which ship attacked and which shield was impacted. (2017)<br />
<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=12140 "reportAIMessages" and pretty circles and lines] (2012) - note that this predates cim's revamp of the AIs<br />
<br />
=== badWeaponRange ===<br />
See [https://bb.oolite.space/viewtopic.php?f=4&t=18701 Strange message in the log file] (2017)<br />
<br />
== Less information ==<br />
See [https://bb.oolite.space/viewtopic.php?p=283232#p283232 these posts] or [https://bb.oolite.space/viewtopic.php?f=4&t=18897 here] for removing "oxp-standards.deprecated" messages (.GNUstepDefaults)<br />
<br />
There is no effect on gameplay with these.<br />
:Examples include "Old style sub-entity declarations are deprecated in ...", "does not use strict", "has no manifest" ... ''etc''.<br />
<br />
== Fixing things! ==<br />
*The AppleMac is less forgiving of syntax errors than the Windows operating system. See [https://bb.oolite.space/viewtopic.php?f=4&t=19525 here] for some possible fixes (2018). See a_c's note on using the [[Expansions Manager]] to unzip the OXZ's.<br />
*[[How to tweak OXZ's]]<br />
<br />
[[Category:Oolite utilities]] [[Category:Oolite scripting]] [[Category:Help pages]]</div>Phkbhttps://wiki.alioth.net/index.php?title=King_Cobra_MkII&diff=83469King Cobra MkII2024-03-18T13:45:42Z<p>Phkb: Updating BB links</p>
<hr />
<div>[[Image:King Cobra Mk 2 Commercial.jpg|thumb|right|Commercial variant]]<br />
[[Image:King Cobra Mk 2 Military.jpg|thumb|right|Military variant]]<br />
[[Image:King Cobra Mk 2 Missiles.jpg|thumb|right|Military variant:<br>External Missiles]]<br />
[[Image:King Cobra Mk 2 HUD.jpg|thumb|right|custom designed HUD]]<br />
Update of [[King Cobra|King Cobra (Cobra Mk.VI)]]<br />
<br />
<br />
{{OXPNote|This wiki page is a WIP}}<br />
<br />
<br />
== Overview ==<br />
Update of Isis Interstellar's [[King Cobra]], itself an update of the [[Cobra Mk.3 (Oolite)|Cobra Mk.III]]<br />
== Download ==<br />
[https://app.box.com/file/978740442624?s=awrv2ur07pwji8i6wi5twdyrvdjcsjfz Box.com]<br />
<br />
== Links ==<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=21255 BB Thread] (2022)<br />
*Author: [[Killer Wolf]]<br />
*[[Isis Interstellar]]<br />
*[[King Cobra]] Precursor<br />
<br />
{{Ship-OXP}}</div>Phkbhttps://wiki.alioth.net/index.php?title=Joysticks:_Guide_to_Setting_Up&diff=83468Joysticks: Guide to Setting Up2024-03-18T13:45:23Z<p>Phkb: Updating BB links</p>
<hr />
<div>[[File:TFlight HOTAS 4.png|200px|thumb|right|'''Thrustmaster''' TFlight Hotas 4: Throttle & joystick detachable-ish]]<br />
'''Cholly's guide to Setting up Joystick Configurations in Oolite 1.90'''<br />
<br />
== Introduction ==<br />
<br />
This guide deals '''only''' with assigning in-game functions (such as steering or firing a missile) to the axes and buttons on a joystick/throttle.<br />
<br />
For setting up an '''axis profile''' (to correct a drunken bias - or to achieve more precision in flight) - read [[Dizzy's guide to Setting up Joystick Axis Profiles in Oolite 1.80|Dizzy's guide to Setting up Joystick Axis Profiles]]<br />
<br />
For correcting jitter (''eg'' in a faulty joystick) try out the [[BGS]] OXP with [[Library OXP]]'s F4 screen Config for AddOns.<br />
<br />
=== Important Points ===<br />
'''*Be careful''' of what you assign to buttons/axes on the base of the joystick/throttle. You will need to let go of the joystick/throttle to get to the buttons on the base. If this is in the middle of a combat, you could find yourself well and truly stuffed, as you can no longer steer/change speed. So avoid assigning functions such as witchspace fuel injectors (i) or firing missiles (m) to the base of your unit!<br />
<br />
----<br />
<br />
== Joysticks: Some definitions ==<br />
''For more details on Throttles, see Thrustmaster TM4 & CH Throttle Pro below''<br />
{| cellspacing="30" align="center" border="0" text-align="center"<br />
| align="center" width="172" height="20"|[[File:Joystick Definitions.png|300px|thumb|<br>|1. stick, 2. base, 3. trigger, 4. extra buttons, 5. 2-way switch, 6. thumbwheel axis, 7. hat switch (4-way), 8. suction cup]]<br />
| align="center" width="172" height="20"|[[File:Joystick Directions.png|300px|thumb|<br>|Hat switch in green at top, Thumbwheel axis in yellow at bottom]]<br />
|}<br />
<br />
*'''Axis'''<br />
:An analogue-style input where your movements select the ''amount'' of change (not available for purely keyboard inputs)<br />
:''There are at least 4 types of axis:''<br />
::The usual two axes of a joystick (forwards ↔ backwards & left ↔ right) - '''x''' & '''y''' ''above right''<br />
::Some joysticks have twist as well (clockwise ↔ anti-clockwise) - '''z''' ''above right''<br />
::A '''thumbwheel''' - '''6''' ''above left'' (often used for speed in the absence of a separate throttle unit)<br />
::A '''mini-joystick''' - ''not shown above'' - can look identical to the hat switch, but with very different operation - will add two more '''x''' & '''y''' axes<br />
<br />
*'''Button'''<br />
:A more digital On/Off input: Either (i) press once (F2 rear view), (ii) keep pressed (Fire laser)<br />
:''There are at least 6 types of button:'' <br />
::A '''button''' that looks like a button! - '''4''' ''above left''<br />
::A '''switch''' (operates like 2 buttons) - '''7''' ''above left''<br />
::A '''trigger''' (operates like a button) - '''3''' ''above left''<br />
::A '''hat switch''' (operates like 4 buttons) - '''6''' ''above left''<br />
::A button incorporated into a mini-joystick - ''not shown here - but see the CH Pro Throttle below''<br />
::A '''rotary switch''' where one turns the knob to select one of a number of options - ''not shown here - but see the black left hand knobs on the Saitek radio panel [[Buttonboxes#Saitek|here]]''<br />
<br />
*'''Hat switch''' (used to be called a coolie hat switch) - ''see buttons''<br />
*'''POV switch''' ('''P'''oint '''O'''f '''V'''iew switch – same as hat switch) - ''see buttons''<br />
<br />
----<br />
<br />
== Joysticks ==<br />
<br />
=== CH Combat Stick & Throttle Pro ===<br />
[[File:CH Combat Stick with Pro Throttle.png|450px|thumb|right|Throttle Pro with Combat Stick - the mid-range of CH's 3 joysticks]]<br />
CH's stuff is rugged and was expected to last for decades. It is less so since the company changed changed hands, but many feel it is still the best in this respect. It is also light-weight and looks clunky! And big for the hands. <br><br />
The '''CH Combat Stick''' has a two-axis joystick only (no twist) with fine-tuning thumbwheels which can eliminate drunkenness. There is the trigger, a pinky button (Joy_4) and 4 other buttons (Joy_5 is on the far side of the joystick, reached by the index finger). There are two hat-switches. There is a 3rd thumbwheel which can act as a throttle. <br><br />
'''The Pro Throttle''' has ''all'' the controls on the throttle itself - none on the base (''ie'' you need never take your hand off the throttle). There are 3 buttons behind the throttle handle and 5 hat-switches! The rightmost of these on the 'lozenge' on the side of the throttle is actually a mini-joystick which can be pressed and acts as a fourth button. <br><br />
'''The CH Control Manager Software''' only works on Windows computers. It is supposedly top notch in terms of capability - and also highly complex to master!<br />
<br />
----<br />
<br />
'''Cranky's''' settings: Cranky is new to Oolite, and favours the [[Roll vs Yaw crusades|yaw]] take on astrogation.<br />
*Joy Y axis - pitch<br />
*Joy X axis - yaw<br />
*Throttle - speed<br />
*Mini-joystick - only x-axis - for roll only (y-axis and button not used)<br />
*Top right hat-switch on Joystick - F1-F4 POV settings<br />
*Bottom left hat switch on Joystick - ''combat settings'': UP (ECM: '''e'''); DOWN (Activate 1st fast equipment ''defensive'' '''Tab'''); RIGHT (Activate *2nd fast equipment offensive '''0'''); LEFT unset. <br />
*Left-hand hat switch on throttle side - unset (''too often fiddled with by accident'').<br />
*Top hat switch on throttle side - ''Special .oxp equipment'': UP (Prime: '''shift-n'''); DOWN (Activate: '''n'''); LEFT (Modify: '''b''')<br />
*Bottom hat switch on throttle side - ''Docking'': UP (Fast docking: '''shift-c'''); DOWN (Blue Danube docking: '''c'''); LEFT (request docking clearance: '''shift-l''')<br />
*Hat switch on back side of throttle - ''Scanner/Compass'': UP (Scanner Zoom: '''z'''); DOWN (Unzoom: '''shift-z'''); LEFT ([[ASC]] next target: '''\''')<br />
*The right side settings of the throttle hat switches not used (waiting for reverse prime '''ctrl-shift-n''' & ASC last target '''|''' options to be added to the configuration pages).<br />
*Joy_1 - (trigger) - fire laser ('''a''')<br />
*Joy_2 - toggle ID ('''r''')<br />
*Joy_3 - precison flying toggle ('''ctrl''')<br />
*Joy_4 - fire missile ('''m''')<br />
*Joy_5 - toggle weapons on/off ('''shift-hyphen''' or '''_''')<br />
*Joy_6 - unset missile ('''u''') ''to neuter the ILS and the Automatic Targetting when they select an unwanted target''<br />
*3 buttons on the back side of the throttle: ''drives!'': Witchfuel injectors ('''i'''); Torus drive ('''j''') & Witchspace drive ('''h''')<br />
<br />
----<br />
[[File:Logitech joystick.jpg|300px|thumb|right|note right fore-finger on black ''trigger'', right thumb on white ''button 2'' & left thumb on ''throttle'']]<br />
[[File:Logitech Stick Map.jpg|400px|thumb|right|Joystick Map]]<br />
=== Logitech Extreme 3D Pro ===<br />
:Note: as with a number of these items, this joystick has been "produced" by a number of different companies over the past decade and under a range of different names!<br />
<br />
*The Logitech joystick has a 3-way axis for the stick (including the 3rd twist axis) and another throttle axis on the base.<br />
*There are twelve buttons: 6 on the stick (including the trigger and button 2 on the left of the stick where the thumb rests) and 6 on the base.<br />
*The hat switch on the stick is actually an 8-way switch which ''can'' function as a mini-joystick giving another 2 axes if desired.<br />
*The software for the Logitech joystick allows the buttons to be programmed to operate macros if so desired.<br />
<br />
----<br />
<br />
[[User:Cody|Cody]]'s settings for the Logitech Extreme 3D Pro: ''Cody uses this joystick with a keyboard. The precision toggle is '''not''' used because the axis profiles were set so as to no longer need it''. Cody is an old timer who mastered Classic Elite before joining the Oolite boards over a decade ago. <br />
*Axis 1 - roll ('''left'''/'''right''' arrows)<br />
*Axis 2 - pitch ('''up'''/'''down''' arrows)<br />
*Axis 3 - not used (twist): ''Cody favours the Rollers in the [[Roll vs Yaw crusades]]''<br />
*Axis 4 - not used (throttle)<br />
*Axis 5 - (hatswitch) used instead as buttons - for views - left & right ('''F3''' & '''F4''')<br />
*Axis 6 - (hatswitch) used instead as buttons - for views - up & down ('''F1''' & '''F2''')<br />
*Button 1 - (trigger) - fire laser ('''a''')<br />
*Button 2 - ''docking'' - request docking clearance ('''shift-l''')<br />
*Button 3 - ''missile'' - arm missile ('''t''')<br />
*Button 4 - ''missile'' - fire missile ('''m''')<br />
*Button 5 - take snapshot ('''*''')<br />
*Button 6 - ''missile'' - cycle missile ('''y''')<br />
*Button 7 - next [[ASC]] compass target ('''\''')<br />
*Button 8 - not yet used<br />
*Button 9 - ''docking'' - Blue Danube docking computer ('''c''')<br />
*Button 10 - ''docking'' - fast docking computer ('''shift-c''')<br />
*Button 11 - Activate .oxp equipment ('''n''')<br />
*Button 12 - Prime .oxp equipment ('''shift-n''')<br />
:And see [https://app.box.com/s/gythr56ev88f1uvoijevfqncwmmjtlat Cody's 2017] key-bindings, before axis bindings. Not all buttons used.<br />
----<br />
[https://bb.oolite.space/viewtopic.php?p=261310#p261310 Nite Owl's] settings for the Logitech Extreme 3D Pro. Another veteran, like Cody, but with a more combat oriented set of joystick bindings.<br />
<br />
*Axis 1 - Joystick left and right axis as Left and Right Roll. (Editorial note: like Cody, a veteran elitist in the [[Roll vs Yaw crusades]])<br />
*Axis 2 - Joystick forward and back axis as Pitch Up and Down.<br />
*Axis 3 - Joystick left and right twist axis as Pitch Left and Right.<br />
*Axis 4 - The throttle axis for the ship's Throttle.<br />
*The hat switch for changing views in the obvious manner.<br />
*Button 1 Fire main weapon (Laser) ('''a''')<br />
*Button 2 Fire secondary weapon (Pylon) ('''m''')<br />
*Button 3 Targeting I.D. On/Off ('''r''')<br />
*Button 4 Weapons On/Off (shift-hyphen: '''_''')<br />
*Button 5 Torus Drive On/Off ('''j''')<br />
*Button 6 Fuel Injectors (Hold to Use) ('''i''')<br />
*Button 7 Set Equipment Mode ('''b''')<br />
*Button 8 Prime Equipment ('''shift-n''')<br />
*Button 9 Target Incoming Missile ('''shift-t''')<br />
*Button 10 Fast Target Selector (OXZ set up as Fast Activate 1, key = zero, and then the zero key is mapped to the Joystick)<br />
*Button 11 Scanner Zoom ('''z''')<br />
*Button 12 Activate E.C.M. ('''e''')<br />
<br />
"''Axes 2 & 3 may seem counter intuitive - but they work for me. My guess is that most Commanders would have these two reversed. Also have some very nice spline curves set up as per Dizzy's Guide mentioned at the top and bottom of this page. Everything else is accessed via the keyboard controls. The Advanced Navigation Computer (OXZ) is mapped to Fast Activate 2, key = Tab. Docking Clearance (mandatory at all but Rock Hermits in my Ooniverse) is accessed via the Communications M.F.D. (OXZ). With the Communications M.F.D. active, use the '''n''' key to select the "Request Docking Clearance" option and then press '''b'''. All other keyboard commands are at their default settings.''" (Nite Owl)<br />
<br />
----<br />
[[File:Logitech X56.png|right|320px]]<br />
=== Logitech X52 Pro HOTAS ===<br />
See Darkened Room's partial set up [https://drive.google.com/drive/folders/1dM9k9Cl9TFGU-S0cBOkPd39LB7RVyJOm?usp=sharing here] (2023: layout pdf & config file).<br />
<br />
=== Logitech G X56 HOTAS ===<br />
Note that Logitech bought out MadCatz in 2016 (who had bought out Saitek in 2007).<br />
X-56 H.O.T.A.S. System (2018)<br />
X-55 Rhino H.O.T.A.S. System (2014)<br />
X-65F Flight Combat Control System (2008)<br />
X52 Pro Flight Control System (2007)<br />
X52 Flight Control System (2004)<br />
X45 Digital Joystick and Throttle (2001)<br />
X36 Flight Control System (1999), consisting of the X36F Control stick and X35T throttle<br />
<br />
There may be issues with playing Oolite in Windows with this HOTAS - the throttle may not connect.<br />
<br />
:If so, you may need to (re)-install the Logitech X56 software from [https://support.logi.com/hc/en-us/articles/360024844133--Downloads-X56-Space-Flight-H-O-T-A-S- here]<br />
<br />
:Once that's installed you can go into the X56 "HUD" program and go to Programming. From there, select the Throttle.<br />
<br />
:You then need to create a new profile and start adding your controls to it. The Logitech manual is a little obtuse on the subject but it gets the job done. In order for Oolite to effectively recognize the throttle axis you need to set it to Band mode, which lets you assign W to the lower third of the band, S to the upper third (yes, these are reversed from expectation) and nothing to the central band.<br />
<br />
:After that the rest of the controls are pretty easy to set up.<br />
<br />
:Then you need to save and activate the profile - there's a button on the same programming screen, or you use the background program in the carat ( ^ ) menu on the Taskbar. If you're using the background program, right click on the program icon and select your saved profile.<br />
<br />
:Once activated, the software will override your default settings and Oolite will accept those commands instead of the throttle's "real" inputs. You can then "clear" the profile if you want to play a different game. (Details from [https://bb.oolite.space/viewtopic.php?p=281448#p281448 Arquebus 2021]).<br />
<br />
Arquebus also has a [https://www.youtube.com/watch?v=llQk_J0Ty38&list=PLsYaAtYv_5eUpD3FBWQk7XQuKQQsrVhNV&index=10 youtube video] explaining his set up (it includes Touch Portal)<br />
<br />
----<br />
<br />
=== Thrustmaster TM4 ===<br />
[[File:TFlight HOTAS 4.png|250px|thumb|right|note that joystick and throttle units have not been separated]]<br />
There are some 3 very similar Thrustmaster entry-level HOTAS ('''H'''ands '''o'''n '''T'''hrottle '''a'''nd '''S'''tick) sets: T.Flight 3, 4 & X. They seem mostly designed for those using gaming consoles as the buttons on each are quite limited in number.<br />
<br />
They are very nicely designed - nice curves, screw holes at the bottom for attaching to something heavy like a desk (if so desired), an Allen key (living in a base recess) to separate the two halves of the throttle and joystick, a simple knob to stiffen up the joystick ''etc''. Another point is that since the joystick and throttle are wired together, they only occupy one USB slot on the dreaded computer.<br />
<br />
*The TM4 joystick has a 3-way axis for the stick (including the 3rd twist axis - disable-able with a screwdriver), a throttle axis on the left, and a fifth axis (rudder) on the back of the throttle stick.<br />
*There are 13 buttons: 4 on the stick (including the trigger) and 6 on the throttle and 3 on the base of the throttle.<br />
*The hat switch on the stick is a regular 4-way switch.<br />
*The software for the TM3/4/X hotas is needed. It allows the PS button on the base of the throttle to toggle between vanilla PlayStation mode (where the twist joystick z-axis and the throttle's rudder axis are disabled) and Joystick mode where everything works.<br />
<br />
==== Use with AppleMac ==== <!-- Apple AppleMac Thrustmaster TFlight HOTAS_4 TM4 --><br />
It seems that this is not compatible with the AppleMac, with the twist, throttle and axis on the back of the throttle not seeming functional.<br />
What neither Thrustmaster nor Apple can be bothered to tell you is that you need to keep the '''PS''', '''SHARE''' & '''OPTIONS''' buttons held down while you plug it into your AppleMac. The green light should then come on under your PS button, and you should find the HOTAS fully functional. This is without the Thrustmaster software being loaded. This worked for Cholmondely but not for Murgh.<br />
<br />
----<br />
[[User:Cholmondely|Cholly]]'s settings: Cholly uses this HOTAS with an Elgato [[Buttonboxes|Streamdeck]], so the confusing missile controls are ''there'' where they can be clearly labelled and understood. Cholly is quite new to Oolite, and has no other real experience of space sims.<br />
<br />
*Axis 1 - (Joystick left/right): roll (left/right arrows) - Cholly read too many of Cody's old BB posts and got converted to rolling!<br />
*Axis 2 - (Joystick left/right): pitch (up/down arrows)<br />
*Axis 3 - (throttle): speed ('''w''' and '''s''')<br />
*Axis 4 - (twist on joystick): not used ''Cholly finds 3 axes on the same stick too confusing for words''<br />
*Axis 5 - ''possibly refers to optional pedals?''<br />
*Axis 6 - (rudder on throttle): yaw - (''',''' & '''.''')<br />
*Button 1 - (trigger on joystick): fire laser ('''a''')<br />
*Button 2 - (L1 button): witchfuel injectors ('''i''')<br />
*Button 3 - (R3 button): roll/pitch Precision toggle (sort of '''ctrl''' but as a toggle: Cholly has yet to master the art of splining - see Dizzy's Guide) <br />
*Button 4 - (L3 button): Toggle ID ('''r''')<br />
*Button 5 - (square on button): ECM ('''e''')<br />
*Button 6 - (x on button): Activate first fast equipment (defensive) ('''Tab''')<br />
*Button 7 - (circle on button): Activate second fast equipment (offensive) ('''0''')<br />
*Button 8 - (triangle on button): toggle weapons (shift-hyphen: '''_''')<br />
*Button 9 - (R2 button): zoom scanner ('''z''')<br />
*Button 10 - (L2 button): reset scanner ('''shift-z''')<br />
*Button 11 - (Share button): ''hyperspeed'' - Torus jump drive ('''j''') <br />
*Button 12 - (Options button): ''hyperdrive'' - Witchspace drive ('''h''')<br />
*Button 13 - (PS red/green LED button): not used (as it disables rudder yawing)<br />
*Hat Switch - (on joystick): used as 4 buttons - for the 4 views - ('''F1 - F4''')<br />
<br />
----<br />
----<br />
== Controllers ==<br />
<br />
=== Sony PlayStation ===<br />
[[File:Controller- Sony PlayStation.png]]<br><br />
This mapping is from 2015/6 at which stage it did not function when the ship was docked.<br />
From [https://bb.oolite.space/viewtopic.php?f=2&t=17985&p=246778#p246778 this] BB thread.<br />
<br />
=== Logitech dual-action Profiler ===<br />
[[File:Controller- Logitech dual-action Profiler.gif]]<br><br />
This mapping is from 2013. A ''shift key'' doubles the mapping potentialities.<br />
From [https://bb.oolite.space/viewtopic.php?p=202759#p202759 this] BB thread.<br />
<br />
=== Logitech F310 ===<br />
<br />
Left stick up/down: pitch up/down<br />
Left stick left/right: yaw left/right (I know, I know...)<br />
Left stick push: Request docking clearance (Shift-L)<br />
<br />
Right stick up/down: speed increase/decrease (W/S)<br />
Right stick left/right: roll left/right<br />
Right stick push: ECM (E)<br />
<br />
4 way hat: views (F1/2/3/4)<br />
<br />
A Button: Fire laser (A)<br />
B Button: Fire missile (M)<br />
X Button: Space compass next target (\)<br />
Y Button: Missile target seek (T) <br />
<br />
View Button (Back button on the F310): Fast activate second equipment (ie Tab key)<br />
Menu Button (Start button on the F310): Begin hyperspace countdown (H)<br />
<br />
LB: Engage torus (J)<br />
RB: Injectors (I)<br />
LT: Fast activate first equipment (ie 0 key)<br />
RT: Activate ID recognition (R)<br />
<br />
[https://bb.oolite.space/viewtopic.php?p=257091#p257091 Phkb, 2017]<br />
<br />
== Problem Solving ==<br />
*Is your joystick compatible with your computer?<br />
*Do you have too many joysticks/controllers/USB gadgets [https://bb.oolite.space/viewtopic.php?f=2&t=20894 plugged in]?<br />
*Does your joystick make your craft swerve to the side (See Dizzy's Guide below)?<br />
<br />
== History ==<br />
The code for all this was published by Kanthoney back in February 2014. Dizzy's guide was crucial in explaining it all to people (July '14). In the years since, it has been expanded.<br />
<br />
== Links ==<br />
* [[Dizzy's guide to Setting up Joystick Axis Profiles]] (splines and stuff!)<br />
* [[Joysticks and Gamepads]] (contains instructions for eliminating jitter from your joystick. Some throttles jitter when "off", causing "engine-revving" sounds with BGS)<br />
* [https://bb.oolite.space/viewtopic.php?f=2&t=20841 Joysticks]: how to configure (BB thread basis for this page).<br />
* [https://bb.oolite.space/viewtopic.php?f=2&t=17315 Ship Tuning 2015]: how to dampen the agility of your ship - and has notes on altering the joystick precision setting<br />
<br />
<br />
* [https://bb.oolite.space/viewtopic.php?f=6&t=15770 2013] thread about coding Oolite for Joysticks (Macs vs Windows/Linux).<br />
* [[AppleMac]] - see section on HOTAS for some background.<br />
* [https://bb.oolite.space/viewtopic.php?f=8&t=17857 2015] thread about problems with setting up several Windows joysticks (with Linux mentions)<br />
* [https://bb.oolite.space/viewtopic.php?f=2&t=17985 2016] thread about T.FlightHotas4, Logitech Extreme 3D Pro, controllers & yaw issues. <br />
* [https://bb.oolite.space/viewtopic.php?f=8&t=11987 2012-13] thread about the PS3 controller<br />
<br />
<br />
* [https://bb.oolite.space/viewtopic.php?f=2&t=19309 2018] Is it possible to control OOlite entirely with Joystick/Gamepad? <br />
<br />
<br />
*[https://bb.oolite.space/viewtopic.php?f=8&t=6958 2009] Old thread about yaw and throttle problems (now fixed in Oolite code). Links to older threads.<br />
<br />
*[https://bb.oolite.space/viewtopic.php?f=6&t=5428 Force-Feedback Joystick Support?] (2008-17: see Getafix's last posts for Linux)<br />
<br />
=== Other advice pages ===<br />
*[[How do I ...]] dock / succeed in trading / win a fight / configure my controller/joystick ''etc''<br />
<br />
[[Category:Oolite]][[Category:Factual]][[Category:Help pages]]</div>Phkbhttps://wiki.alioth.net/index.php?title=Immersion&diff=83467Immersion2024-03-18T13:44:21Z<p>Phkb: Updating BB links</p>
<hr />
<div>{{OXPNote|This Page is under construction!}}<br />
<br><br><br />
[[File:Immersion.png|right|320px]]<br />
{{QuoteText|Text=Immersion occurs when the gamer’s point of view is shifted to be within the game world.|Source=<br />
([http://www.gmsmagazine.com/inmersion-in-games/ Brad Talton Jr.])}}<br />
<br />
<br />
== Overview ==<br />
A lot of work has been done in this area.<br />
<br />
As videogaming becomes more and more significant, economically speaking, more and more resources are invested in finding out why the popular games are so popular and how to make more immersive games. This leads to new approaches (as the development of technology permits) which in turn engenders new analyses! Just look at how the philosophy of art has changed since Plato, as developments in art and in its philosophy feed off each other! So what is written here will inevitably become dated.<br />
<br />
== Flow ==<br />
Early analyses back in the 1990's focused on ''flow'': a mental state when one deeply concentrates on a particular task ''and'' enjoys it, thus losing oneself in the activity.<br />
<br />
== Gameplay and Narrative ==<br />
Other early analyses focused either on immersion related to a ''ludological approach'': '''gameplay''' (getting absorbed in meeting the game's challenges - such as in Space Invaders or PacMan) or a ''narratological approach'': looking at '''narrative''' (the building up of the story of one's avatar); and the relationship between these two factors.<br />
<br />
== Links ==<br />
*[http://www.designersnotebook.com/Lectures/Roots/roots.htm The Philosophical Roots of Computer Game Design] by Ernest W. Adams (2004), Game Developers' Conference, San Jose, California.<br />
:'''Abstract''': This lecture is a theoretical discussion of the historical, social and technological forces that produced the contemporary culture of computer game design and development. Although game design might seem to be primarily about making successful commercial products, in fact the subjects we choose to explore in our games are not necessarily dictated by the market, but are the product of our own peculiar philosophical origins. As digital technologists we work with the ''classical'' tools of logic and order; as creative people we strive for the expression of ''romantic'' ideals. This tension between the classic and the romantic sides of our medium is the source of some of our more intractable creative problems. This lecture is not intended to offer specific solutions, but to enlighten and entertain.<br />
:[http://www.designersnotebook.com/Lectures/lectures.htm Other lectures by Ernest W Adams] (1998-2014)<br />
<br />
*[https://core.ac.uk/download/pdf/41537975.pdf In The Game : An Exploration of the Concept of Immersion in Video-Games and its Usage in Game Design] by CMS Ojeda (2007)<br />
:'''Abstract''': This thesis outlines a research project whose aim was to develop a design taxonomy for the creation of immersion in video-games. These guidelines can then be used in-sync with different stages in video-game design and development to ensure an immersive experience. Integral to this is the 'suspension of disbelief' the end user experiences when fully immersed in a video-game (Holland, 2002; Mediacollage.com, 2006).<br />
<br />
*[https://www.youtube.com/@sora_sakurai_en Masahiro Sakurai on Creating Games] (2022-date) - short lectures on improving various aspects of games.<br />
<br />
==== More simplistic ====<br />
*[https://www.gamedesigning.org/learn/game-immersion/ www.gamedesigning.org] (for video games).<br />
*[http://www.gmsmagazine.com/inmersion-in-games/ gms.magazine.com] (for role-playing games).<br />
:Tangential but fun!<br />
*[https://mud.co.uk/richard/hcds.htm HEARTS, CLUBS, DIAMONDS, SPADES] (1996): different types of players: achievers, explorers, socialisers and killers<br />
<br />
==== Our own ====<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=10427 Why is Oolite so addictive?] (2011)<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=16153 Help us make Oolite more immersive!] (2013-14) - stuff to do during mass-lock, giving NPC's personalities, communications,...<br />
<br />
==== Oolite Issues ====<br />
*[[Distance (Oolite)]]<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=11476 Artificial Gravity and Space Stations] (2012)<br />
*[https://bb.oolite.space/viewtopic.php?p=279708#p279708 Issues with realistic responses] (2021)<br />
<br />
==== Thoughts ====<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=4392 Eye Candy vs. Imagination] (2008: For more information on the arguments over Sung's textures see [[License]] - Sung Affair)<br />
*[https://bb.oolite.space/viewtopic.php?f=6&t=8585 Restaurants, bars, sightseeing] (2010)<br />
*[https://bb.oolite.space/viewtopic.php?f=6&t=10368 Lifestyles of the rich and elite] (2011)<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=8724 More interactive adventures/missions] (2010)<br />
*See the discussion [https://bb.oolite.space/viewtopic.php?p=274564#p274564 here] (uses for a second monitor) and [https://bb.oolite.space/viewtopic.php?p=275198#p275198 here] (things to do en-route from Witchpoint to Station).<br />
*[https://bb.oolite.space/viewtopic.php?p=248873#p248873 More on things to do en-route from Witchpoint to Station] (Several posts, 2016).<br />
----<br />
<br />
== Improving Immersion in Oolite ==<br />
There are at least three different areas where things can be improved: <br />
:1) '''External stuff'''. Your computer screen. Too slow a processor to cope with your version of the game (which oxp's you want to load...). Using a controller or a joystick. Using a button box or an external screen. The chair you sit in. Etc., etc.<br />
:2) '''Context'''. Adding context by reading some of the OoFiction, for example.<br />
:3) '''OXP's'''. With over 1000 of these, you can easily choose those important to you: go for better graphics, or more realistic physics or economics, or accentuate differences between political systems, or add more equipment which you would expect, etc.<br />
<br />
=== External Stuff ===<br />
[[Joysticks and Gamepads]] can make a massive difference to immersion - if you can find one with works with Oolite, your computer, fits the size of your hands, and feels right to you. [[Buttonboxes]] can also help (and make things easier by not having to remember that "b" changes mode for a primed equipment).<br />
<br />
=== Context ===<br />
*The Elite classic literature consists of [[The Space Traders Flight Training Manual]], [[The Dark Wheel]] & [[Imprint]]<br />
*Look at the [[List of Oolite stories]] (there is an essay on the different conceptual approaches in [[Lore]]).<br />
<br />
=== OXP's ===<br />
Different things work for different people. Some which have been found to impact massively are:<br />
==== The player environment ====<br />
*[[BGS]] (either version) & XenonUI: more believable surrounds for the GUI screens, and BGS adds better launch/docking/witchspace sequences, and sounds<br />
*HUDs: [[Deeper Space HUD]], [[Trek HUD]], [[Vimana HUD]], [[Z-GrOovY MiLHUD]]<br />
<br />
==== The galaxies ====<br />
*The [[Strangers World]] suite - for more realism<br />
*[[Home System]], [[Smugglers]] & [[Diplomancy]] - for making solar systems more individual<br />
*The [[:Category:Systems OXPs|Systems OXPs]] (Anarchies, Feudal States, Commies etc.) - as above<br />
*The individual world OXPs ([[Lave OXP]] & [[Lave Academy]], the 4 [[Sector1/Tionisla|Tionisla]] .oxp's, [[Riredi OXP]], [[Tianve OXP]] ''etc'') - as above<br />
*A Navy OXP: Either [[Galactic Navy]] or [[HIMSN]]<br />
==== Others in space ====<br />
*The various [[Communication]] .oxp's.<br />
==== Better mechanics ====<br />
*Mechanics changes which make things more believable: [https://bb.oolite.space/viewtopic.php?f=6&t=20189 MaintenanceTuneUp.oxp], [[Remove Individual Pylon]], and either [[Manual Witchspace Alignment]] (manual) or [[Deep Horizon Advanced Navigation Computer]] (automatic)<br />
*[[Telescope]] & [[Station Options]]<br />
==== More realistic trade ====<br />
*[[Market Observer]] and the various [[Economics]] oxp's. Also [[Smugglers]] & [[Illegal Goods Tweak OXP]].<br />
==== Missions ====<br />
See [[:Category:Missions OXPs]] for a list of what is available<br />
<br />
=== Musings ===<br />
There are various related musings sprinkled about hither and yon<br />
*[[Exploration]] - how to emphasise exploration within Oolite<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=21096 Oolite essay: game lore, features and mechanics] with added comments [https://bb.oolite.space/viewtopic.php?p=279615#p279615 here]<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=10857 New Idea : "House Rools"] (2011) - OXPs and House rools for various in-game personae: the smuggler, flawless victory, freestyle oolite (Yah-Ta-Hey Variant), Commander Smivs, the regulator, the gentleman, ''etc''.<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=21055 Pre-flight checks] - would these add or detract?<br />
<br />
<br />
[[Category:Factual]][[Category:Concepts]]</div>Phkbhttps://wiki.alioth.net/index.php?title=Hyperspace&diff=83466Hyperspace2024-03-18T13:44:07Z<p>Phkb: Updating BB links</p>
<hr />
<div>[[File:Vanilla hyper effect.png|600px|thumb|right|Jumping through Hyperspace/WitchSpace: [[Vanilla game]]]]<br />
[[File:BGS Jump.jpg|600px|thumb|right|Jumping through Hyperspace/WitchSpace: newer [[BGS]] (v.2.5.1)]]<br />
[[Image:Bgs hyper effect.jpg|600px|thumb|right|Jumping through Hyperspace/WitchSpace: older [[BGS]] (v.1.10.9) <br><font color="Red"> STOP PRESS! </font> [[User:Tsoj|Tsoj]] has modified the newer BGS to allow use of this spiderweb witch-space tunnel as well (2022). Click [https://bb.oolite.space/viewtopic.php?f=4&t=21187 here] for download: this effect is chosen using [[Library OXP]]'s "Config for AddOns" on the docked [[F4 page (ship and system interfaces)|F4 screen]].]]<br />
Hyperspace, also called '''witchspace''', is a dimension through which hyperdrive/witch-space drive equipped ships can travel instantaneously from one star system to the other. There are limits to the maximum distance that can be traversed in one jump.<br />
<br />
In the Oolite fanfiction, a hyperspace jump leaves behind a temporary blue hypercloud, which can be used to track the target system, and through which additional ships can jump to the same system, not using their own [[Quirium]] fuel.<br />
<br />
Entry and exit of hyperspace are indicated by an unpleasant feeling, which experienced hyperspace travellers become used to.<br />
<br />
Hyperspace travel looks like travelling through a tunnel with characteristic white rings around it, in the [[Vanilla game]]. [[BGS]] changes this to something more exciting.<br />
<br />
One arrives at a ''witchpoint beacon'' at the far end (a variety of [[Buoy (Oolite)|buoy]]).<br />
<br />
== Legends ==<br />
<br />
It is rumoured that [[Thargoids]] are able to navigate inside hyperspace.<br />
<br />
Legend has it that the results of a '''misjump''' can be disastrous, varying from ending up somewhere in the middle of a sun or interstellar space, to travelling through time, or even returning to normal space turned inside out! A forced misjump is the last resort of the hopeless.<br />
<br />
== History of Discovery ==<br />
There are at least 3 different schools with views on Oolite in-game [[History]]. The '''Syncretists''' and the '''Purists''' have quite different accounts of how it was discovered (see [[History]] for a purist history and [[GalCop]] for a syncretist account of how Witchspace was discovered). The '''Pragmatics''' don't want to be tied down with a backstory - and just play the game! See [[Lore]] for an exposition of the various philosophies.<br />
<br />
== A Theory ==<br />
A witchspace connection consists of a fifth-dimensional pseudocylindrical passage, or '''intertube''', connecting a blue hole created by a witchspace drive to an invisible virtual white hole in the destination system. Fuel expenditure is proportional to the realspace length of the intertube.<br />
<br />
The term witchspace refers specifically to the strange, magical and somewhat unlikely visual artefacts encountered while travelling the virtual length of the intertube. This virtual length is at once constant and proportional to the square of the realspace length, which makes perfect sense in five-dimensional bogometrics.<br />
<br />
A witchspace malfunction occurs when the metric of the intertube is not perfectly balanced, which can happen due to hardware failure (slightly bent wire, build-ups of dust, or uneven load due to centrifugal force) in the witchspace drive’s field generator coils. This causes an “unravelling” of the field which dumps the traveller somewhere along the realspace path of the intertube; it is more likely to do so in the presence of large quantities of radioactive isotopes, incidentally of the very type used by the thargoids in their unrelated and badly-understood interstellar drives. Unfortunately, the only way to detect an unravelling condition is to enter the blue hole and see whether you end up where you expected to. This explains the importance of regular [[Maintenance]].<br />
<br />
Witchdrive fuel is used to create the entire intertube immediately before entering it, rather than for actual travel; for this reason, none is recovered in the case of “falling out” of the intertube [https://bb.oolite.space/viewtopic.php?p=35219#p35219 Jens Ayton (2007)].<br />
<br />
=== Coda to the Theory ===<br />
The complex mathematics and physics of witchspace intertube generation (which I do not have the time or space to relate here) do not allow for witchspace jumps to arbitrary locations. The target of a jump must be near a sufficiently large mass – such as a star – and must be marked by a large and complex network of equipment arranged quite some distance from said large mass. The witchspace beacon, incidentally, is not part of this equipment, it merely marks the “termination focus” produced by their arrangement.<br />
<br />
Ending up in interstellar space is only possible by means of an “unravelled” intertube between two planetary systems [https://bb.oolite.space/viewtopic.php?p=35670#p35670 Jens Ayton (2007)].<br />
<br />
== Other theories of what Witchspace is ==<br />
*[https://bb.oolite.space/viewtopic.php?p=35219#35219 Witchspace: possible to exit?]<br />
*[https://bb.oolite.space/viewtopic.php?p=35670#35670 Witchspace Wake]<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=7148 Explanations Wanted]<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=17877 Canon question about the Witchdrive].<br />
<br />
== Hyperspace or Witchspace? ==<br />
{{QuoteText|Text=The confusion about the hyperspace/witchspace terminology comes from the original Acorn version manual and novella. [[Ian Bell]] & [[David Braben]] used ''hyperspace'' as their term of choice in the [[The Space Traders Flight Training Manual|Manual]]. [[Robert Holdstock]] used ''witchspace'' by habit in his [[The Dark Wheel|novella]]: it's found in many of his other SF novels, if my memory serves me correctly. Subsequent versions of the game's in-game text and documents have mixed both. It's now reached the point that Mr Braben's later versions of the game mix both terms pretty randomly.<br />
|Source=([https://bb.oolite.space/viewtopic.php?p=73284#p73284 KZ9999 (2009)])}}<br />
<br />
Whilst some individuals have rigidly stuck with the use of either one term or the other - and some have used one for the tunnel and the other for the region where one is stranded in a misjump - overall the use of the two terms is utterly confused, which will undoubtedly reflect their use amongst the billions of people in the thousands of systems of the 8 galaxies!<br />
<br />
Terminological Exactitude is further challenged by the use of the term "Interstellar Space" for the region where one is stranded in a misjump. Admittedly, one can see stars even if they seem to be unreachable. But the appearance of the space seems unlike what one would expect a [[Generation ship]] to encounter as it made its way from one star system to another.<br />
<br />
== Fiction ==<br />
*[https://bb.oolite.space/viewtopic.php?f=11&t=9649 Derelict] by Ganelon<br />
<br />
== Links ==<br />
*[[Hyperspace Drive]]<br />
*[[Witchpoint]]<br />
*[[Spacelane]]<br />
*[[Misjump]]<br />
<div style="clear:both"></div><br />
[[File:Sotl-hyperspace.png|400px|thumb|right|Jumping through Hyperspace/WitchSpace: [[SOTL Exploration]] <br>You need to steer your ship during the jump with this one!<br> SOTL is an Oolite scenario, incompatible with normal Oolite]]<br />
=== SOTL Exploration variant ===<br />
*[[SOTL Exploration]] is an Oolite Scenario oxp - you are genuinely exploring a new galaxy! The witchspace jump is very different, and can easily wreck your ship if you are not careful!<br />
Hyperspace travel is dangerous - especially in a ship as improvised as the SOTL Exploration ''Shaula-class''. When you activate the hyperdrive, an additional instrument display will be projected on to your HUD (see right!).<br />
<br />
'''Above''': progress to destination. This starts with you leaving the gravitational influence of your current system, then travelling through hyperspace, then entering your destination system. If you need to drop out mid-jump, this will determine where you end up.<br />
'''Right''': current energy reserves. Hyperspace travel is energy-intensive. If you run out of energy mid-jump, your ship will be destroyed as it fails to maintain hyperspatial integrity. You can press 'h' again to abort the jump and drop out away from your destination, which will damage your ship due to the rough exit, but you should at least survive.<br />
'''Centre''': jump status. If this is yellow or green the jump is going well. If orange, you are losing energy fast but should have sufficient reserves to finish the jump. If red, you do not have sufficient reserves at the current rate of energy loss to complete the jump (this will start flashing red/black if you have fewer than 5 seconds available)<br />
'''Left, bottom''': jump alignment. You need to handle a lot of the jump yourself. Keep the yellow marks aligned with the green ones using your pitch and roll controls - the closer the alignment, the less energy you will need to maintain hyperspatial integrity.<br />
<br />
The pattern you need to align to is a property of the particular jump you are making, so with practice you can use less energy. Additionally, the more times you complete a jump the more computer assistance you receive with future jumps on the same route, which reduces the precision needed to maintain energy levels. (This means you need to carry fewer energy banks and can carry more survey equipment instead)<br />
<br />
Jumps are non-linear: - time aligning in hyperspace needed to complete the jump is proportional to distance - real time taken is proportional to distance squared - fuel usage is proportional to the square root of the distance<br />
<br />
As large masses travel through normal space, they leave ripples behind them in the hyperspace medium, and semi-stable calm points. The larger the mass, the better the calm point. For this reason, a successful jump will place you in the calm point for the system's star. <br />
<br />
=== BB discussions ===<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=21345 How to cross VOIDS in Oolite!] (2022) Analysis of the Thargoid presence in Witchspace/Interstellar Space<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=21312 Stuck in Interstellar Space] (2022)<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=19289 Ideally Imperfect OOniverse: Calibrated Hyperspace jumps]. BB Thread (2017-8): ''why'' do traders/convoys make their way out to the Witchpoint beacon and jump from there?<br />
*[https://bb.oolite.space/viewtopic.php?f=6&t=12528 Status of shields, energy and laser temp after a jump] (2012) - more rooted in the [[Dark Side]] than the 2010 debate just beneath.<br />
*[https://bb.oolite.space/viewtopic.php?f=6&t=8232 Why do temperatures, energy banks & shields not reset in the witchspace tunnel?] (2010)<br />
*[https://bb.oolite.space/viewtopic.php?p=89513#p89513 Captain Hesperus on Witchspace] (2009)<br />
<br />
:'''Language'''<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=20993 Terminological Exactitude: Hyperspace, Witchspace & Interstellar Space] (2021)<br />
*[https://bb.oolite.space/viewtopic.php?f=6&t=17299 Inconsistent Language] - Witchspace or Hyperspace? (2015)<br />
*[https://bb.oolite.space/viewtopic.php?p=34866#p34866 Inconsistent Language] - Witchspace or Hyperspace? (2007)<br />
<br />
:'''Proposal'''<br />
*[https://bb.oolite.space/viewtopic.php?p=258390#p258390 Alderson Drive physics] (2017) - jumps either way can only be made at the Witchpoint Beacon - this would have severe consequences for misjumps</div>Phkbhttps://wiki.alioth.net/index.php?title=Gold&diff=83465Gold2024-03-18T13:42:59Z<p>Phkb: Updating BB links</p>
<hr />
<div>[[File:Commodities gold.PNG|thumb|right|240px|From [[Montanas Resource Pack 01]]]]<br />
A commodity found on the F8 markets screen.<br />
<br />
Traded in kilogrammes (like [[Platinum]]), and hence kept in the ship's safe - and thus salvageable when you blast off in your [[Escape Pod]]! <br />
<br />
Often much cheaper if bought at [[Rock Hermit (Oolite)|Rock Hermits]], often more expensive at luxurious systems (''eg'' high TL corporate states).<br />
<br />
If have added OXPs with luxury dockables such as [[Liners]], the markets there are often even better - especially if they are visiting a luxurious system - but their markets tend to be limited, and can be suicidal to dock at!<br />
<br />
== Links ==<br />
*[[Economics]]<br />
*[[Oolite Trading]]<br />
*[[Commodities]]<br />
<br />
*[https://bb.oolite.space/viewtopic.php?f=3&t=16321 Bug when picking up gold cargo] (2014) - has some amusing [[Handwavium]].<br />
<br />
=== Using the price of Gold to work out what 1₢ is worth ===<br />
*[https://bb.oolite.space/viewtopic.php?f=7&t=13387 Yes, but how many credits is that?] (2013) - Australian gold nugget - 1₢ = A$1,466.28 or £879.77 (includes critique)<br />
*[https://bb.oolite.space/viewtopic.php?p=118840#p118840 Calculation] (2010) 1₢ = US$1,114<br />
<br />
[[Category:Commodities]]</div>Phkbhttps://wiki.alioth.net/index.php?title=First_Finance_OXP&diff=83464First Finance OXP2024-03-18T13:41:45Z<p>Phkb: Updating BB links</p>
<hr />
<div>First Finance lends you the money to buy your ship - and manages the loan<br />
[[File:First Finance F5F5 Notice.png|thumb|right|320px|F5F5 (ship's manifest page)<br>Loan Synopsis]] <br />
<br />
== Overview ==<br />
So, you've got yourself a ship, but how exactly did you get it? Maybe you took a loan to buy it before the game started. This OXP will create a loan debt you have to pay off, when you start a new game. Yupp. This OXP will make the game a bit harder, nothing else.<br />
<br />
While in the [[Vanilla game]] & [[Classic Elite]] your Cobra Mk.3 is a free graduation gift worth 150,000₢ (and in [[Frontier]] it was a gift from your grandfather), real life does not always work like that!<br />
<br />
This oxp creates the '''Lave First Finance Corp''', which lent you the money to buy your ship. You have a choice of repayment terms (based on either time or dockings), and this oxp takes it from there. You can repay more, there are issues with late payments, ''etc., etc''.<br />
[[File:First Finance (Initial choice).png|thumb|right|500px|Initial Terms]]<br />
[[File:First Finance Loan Management.png|thumb|right|500px|Loan Management Screen]]<br />
<br />
== Operation ==<br />
*The Initial Terms come up once you select New Commander at game start.<br />
*The next repayment is shown on your F5F5 Ship's Manifest screen<br />
*The Loan Management screen can be found when docked through the F4 screen (ship and system interfaces)<br />
::- select Loans Menu (under the Loans category).<br />
*You can also check the small print on the loan contract!<br />
<br />
=== Argument ===<br />
I have been giving this whole "get rich quick" idea a little think.<br />
<br />
Specifically, the idea that when you graduate from Lave Academy you get your ship for free.<br />
<br />
'''1)''' Everything in this game costs money: equipment, new ships, fuel ''etc''. Why would Lave Academy be free?<br />
<br />
'''2)''' If Lave Academy is giving you a ship upon graduation, how is the Academy paying for the 150,000 credits for the ship? Unless that price of the ship is included in the tuition?<br />
<br />
'''3)''' Unless you have a relative die and leave you a ship (like in [[Frontier]]), most people can't afford a ship. Most people can't even afford to borrow this much money.<br />
<br />
For example, let's say the Academy costs 30,000 credits per year. Four years of study (like a naval academy) equals 120,000 credits PLUS 150,000 credits for a ship PLUS 100.00 credits for buying cargo. That's 270,100.00 credits.<br />
<br />
That doesn't sound free to me...<br />
<br />
Just because you don't see it, doesn't mean it doesn't have to be paid. (After all, you graduated, didn't you?)<br />
<br />
'''4)''' What if someone can't afford that much? Then what can they do? What if they are just some blue-collar worker trying to make a living in space?<br />
<br />
In the real world, people who drive large trucks (18 wheelers) have to pay for training, then buy a 120,000 dollar truck before they even start. Who is going to loan someone money to buy a ship to trade in space when they might get killed?<br />
<br />
<br />
<br />
It doesn't sound like Lave Academy would be free. When was the last time someone gave you a free car, or house?<br />
How would the average person trade in space?<br />
<br />
As Dennis Miller used to say on his show "That's just my opinion. I could be wrong." [https://bb.oolite.space/viewtopic.php?p=153304#p153304 Danam22315] (2011)<br />
<br />
<br />
== License ==<br />
*License: CC BY-NC-SA 4.0<br />
*Author: [[User:Ocz|Ocz]]<br />
*Version: 0.3.0 (but 0.2.0 in the Manifest.plist!)<br />
*Oolite version: v.1.81<br />
<br />
== Version History ==<br />
*Version 0.3.0 1/8/2016<br />
: Renamed form "Loan Repayment" to "First Finance"<br />
: Declared beta status<br />
: Added backgrounds to loan menus<br />
: Added a warning text to arrival report, if payment cycle ends soon.<br />
: Added info text to the manifest screen (F5F5). <br />
: Minor bugfixes<br />
<br />
*Version 0.2.0 1/3/2016 ([[Media:Loan Repayment 0.2.0 alpha.oxz |Loan Repayment]] downloaded {{#downloads:Loan Repayment 0.2.0 alpha.oxz}} times)<br />
: Revised texts<br />
: Revised loan engagement menus<br />
: Some bugfixes<br />
: New save and load methods using JSON<br />
: Galactic Drive disabled.<br />
<br />
*Version 0.1.0 12/31/2015 ("Loan Repayment")<br />
: Initial alpha release<br />
<br />
== Notes ==<br />
*Honourable mentions:<br />
:My thanks go to:<br />
:: [[User:phkb|phkb]]. His $padTextRight in "StationDockControl_Interface" from "Station Dock Control" OXP was a big help in improving the menu. I used a few very important lines of code in _formatLineToList.<br />
:: [[User:Disembodied|Disembodied]] for proof-reading most texts.<br />
:: [[User:Norby|Norby]] and [[User:Cody|Cody]] for pitching their name ideas, that led to the name of this OXP.<br />
<br />
*Sidenote:<br />
:If it breaks and isn't repaired by me within quite some time, feel free the recreate a repaired version. (Please check beforehand, if somebody else already did this and his/her version isn't working at this point either. Give them credit too, when due!)<br />
<br />
== Download ==<br />
*[[Media:First Finance 0.3.0 beta.oxz | First Finance]] (downloaded {{#downloads:First Finance 0.3.0 beta.oxz}} times)<br />
*[[Media:Loan Repayment 0.2.0 alpha.oxz | Loan Repayment]] (downloaded {{#downloads:Loan Repayment 0.2.0 alpha.oxz}} times) ''not too sure about this one'' by Ocz as above<br />
<br />
== Links ==<br />
*BB Thread: [https://bb.oolite.space/viewtopic.php?f=6&t=17937 Beginning the game with a loan to pay off] (2014)<br />
*Author: [[User:Ocz|Ocz]]<br />
*[[Economics]]<br />
*[[Black Monk Monastery]] - for taking out other loans<br />
<br />
== Gameplay and Balance Indicator ==<br />
[[File:Tag-colour-red.png|right]]<br />
Start your game with a ''massive'' loan!<br />
<br />
{{Activity-OXP}}</div>Phkbhttps://wiki.alioth.net/index.php?title=Fighter_HUD_(Oolite)&diff=83463Fighter HUD (Oolite)2024-03-18T13:41:31Z<p>Phkb: Updating BB links</p>
<hr />
<div>A HUD with instrument panel and polarized glass laser sight. 4 MFDs.<br />
<br />
[[Image:fighterHUD_screenshot.png|right]]<br />
<br />
== Overview ==<br />
* 4 [[MFD]]s<br />
* Waypoint display<br />
* Joystick [[Joysticks and Gamepads|Precision]] (sensitivity) Indicator<br />
* Primed equipment indicator<br />
* Beacon indicator<br />
* Weapons offline indicator<br />
* Updated core ship models shown in the hud (ship model in hud automatically selected by script)<br />
* [[HUDSelector]] compatible<br />
* All-in-one turn coordinator.<br />
* Combined instrument panel for speed, fuel, cabin temperature, laser temperature, altitude.<br />
* Polarized glass laser sight.<br />
<br />
==Download==<br />
* Through the in-game [[Expansions Manager]]<br />
::''or''<br />
* [https://app.box.com/s/wvrm4lus7tquzkeodob0 Fighter HUD Mk II]<br />
<!--* [http://msdownload.co.uk/Oolite/FighterHud.zip Fighter HUD Mk II]--><br />
* [http://msdownload.co.uk/Oolite/FighterHud_Mk1.zip Fighter HUD Mk I] *defunct link*"<br />
<br />
==Included features==<br />
Ships available for right-hand monitor ([[OXP]] and Oolites).<br />
<br />
[[Image:ships_available.png]]<br />
<br />
== License ==<br />
*Author: [[User:CaptKev|CaptKev]] (updated by [[User:Spara|Spara]] in 2014)<br />
*License: CC-BY-NC-SA 2.0<br />
*Version: 1.4.1<br />
*Requires: Oolite version 1.81 or newer<br />
<br />
== Links ==<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=2882 Newbie - Replacement hud] (2007)<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=3122 Fighter Hud] (2007)<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=5086 Fighter Hud Help] (2008)<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=6826 Non-standard aspect ratio - now solved for Fighter HUD] (2009)<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=17049 New Arrival in search for Fighter HUD] (2014)<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=17052 Fighter HUD MK II] (2014+)<br />
<br />
{{HUD-OXP}}</div>Phkbhttps://wiki.alioth.net/index.php?title=Escort_Contracts_OXP&diff=83462Escort Contracts OXP2024-03-18T13:40:28Z<p>Phkb: Updating BB links</p>
<hr />
<div>[[File:Escort_Contracts6.jpg|200px|thumb|right|F4 screen with escort contracts offered]]<br />
[[File:Escort_Contracts7.jpg|200px|thumb|right|Contract selection screen]]<br />
[[File:Escort_Contracts8.jpg|200px|thumb|right|Contract selection map screen]]<br />
[[File:Escort_Contracts10.jpg|200px|thumb|right|Let's go!]]<br />
[[File:Escort_Contracts4.png|200px|thumb|right|Torus drive synchronisation]]<br />
[[File:Escort_Contracts5.png|200px|thumb|right|]]<br />
[[File:Makara_escortjump.jpg|200px|thumb|right|Screenshot by Makara]]<br />
<br />
== Overview ==<br />
Allow players to enter into short-term escort contracts with NPC lone wolf traders.<br />
<br />
== Description ==<br />
<br />
The '''Independent Traders and Hauliers Association''' have reacted to demand from lone wolf NPC Traders and introduced a system to allow them to enter into short-term escort contracts with vetted and rated freelance escort pilots.<br />
<br />
Players who wish to access these contracts must purchase an '''I.T.H.A Independent Escort License''' available to players with a Clean legal status at systems with a Tech Level of 3 or above which and not Anarchies, Feudal States or Multi-Governments.<br />
<br />
Once purchased, players whose legal rating is still Clean may be offered short term escort contracts on docking at a system’s main station. The chance of being offered contracts is based on the player’s reputation as an escort. The fees offered are also affected by the player’s reputation as an escort and government type of the target system. Target systems are always within 1 jump of the starting system. Reputation is increased when a contract is successfully fulfilled and reduced when a contract is failed or aborted.<br />
<br />
Once a contract is agreed the player has 3 game hours to launch from the station or the contract is failed (be careful about buying equipment – it takes up time). The NPC trader (or '''mother''') will be waiting in the station aegis and will prompt the player to approach as they prepare to jump to the target system. The player can follow them through their wormhole or alternatively jump themselves to the target system. Failure to arrive at the target system by the point the wormhole expires ends the contract.<br />
<br />
Once in the target system the player’s task is to escort the mother to the system's main station. Mothers will issue various prompts to players in flight, will request assistance if attacked, and will assist the player if the player is attacked. The contract is fulfilled once the mother has entered the aegis of the target system's main station - unless there are hostile craft in the vicinity - in which case the player must stand by to protect the mother until it has safely docked.<br />
<br />
If you have an [[Advanced Space Compass]] installed the mother will be marked with an ‘M’ beacon code.<br />
<br />
=== Game Balance and Playability ===<br />
<br />
In order to avoid these contracts being long and rather dull in between hostile encounters, this [[OXP]] gives the mother the ability to 'synchronise jump drives' with the player. The mother has been given scan_class CLASS_ROCK (but with custom scanner colours) so it will not mass-lock the player. In flight if there is nothing else to mass-lock the player the mother will prompt the player to approach to between 500m - 2500m and to match heading. If the player does so the mother will synchronise jump drives with the player and both mother and player will travel on the mother’s heading at torus speeds, until the player or mother is mass-locked again.<br />
<br />
If the player is mass-locked (but with no hostile contacts in the vicinity) the mother may after a short delay decide to try and use injectors to get out of the mass-locked situation so that the player and mother can take advantage of the mother’s synchronised jump drive capability. This feature will only operate if the player also has working injectors and at least 1 LY of fuel.<br />
<br />
Mothers will normally be an Anaconda, Boa, Boa Cruiser or Python and will come equipped with ECM, injectors, and fore & aft beam lasers as standard.<br />
<br />
== Technical notes ==<br />
Escort Contracts By Capt Murphy 2011,2012 until version 1.5.6 (07/05/12).<br />
Requires Oolite 1.76.<br />
<br />
Updated to work with Oolite V1.77's interfaces screen (and other updates) by Keeper,<br />
new background images by ZygoUgo and fixes by Norby in version 1.6.1 (01/27/15).<br />
Requires Oolite 1.77.<br />
<br />
Licence of all versions: CC BY-NC-SA 3.0 : Please visit http://creativecommons.org/licenses/by-nc-sa/3.0/ for more info.<br />
<br />
<br />
The shipdata.plist is set up to 'like_ship' to the core versions of these ships (or a retextured version if the core versions have been replaced by a retexture OXP), and if installed any of the versions from retexture OXPs that add variants in addition to core ships. Currently supported are Griff's, DeepSpace, Shady Sungs, Smiv's and Neolite Core.<br />
<br />
If you have a retexture pack installed that does not replace the core models and want to suppress usage of the core models in this OXP you can edit the shipdata.plist to reduce the roleweighting of the core ships. Instructions are included in the shipdata.plist as comments.<br />
<br />
The shipdata.plist is also set up to use these OXP ships as potential mothers if installed: <br />
From Neolite Companion : Monitor, Python Cruiser, Python ET Special; <br />
From Old Ships 2010 : Monitor, Monitor2;<br />
From Far Arm Ships : Tanker;<br />
From Clippers: Python Clipper, Boa Clipper;<br />
From Staer9's Shipset: Monitor, Python Cruiser, Python ET Special.<br />
<br />
You can use these entries as a template to use ships from your favorite OXP. However be wary of doing this with any OXP ship that normally requires its own shipscript, or is too large to dock at a normal station as the results may be unpredictable.<br />
<br />
== Changes in v1.5.9 ==<br />
<br />
No longer will new contracts be shown when you dock at a station<br />
(though results of an existing mission ''will'' be, as usual). Instead,<br />
if a contract is available, you will find an "ITHA Escort Contracts"<br />
entry on the interfaces screen (F4 or 4 while docked at a main station)<br />
showing you how many are available.<br />
<br />
When you view the contracts, you still have the option of viewing the<br />
Short Range Chart, but instead of actually going to the real Short<br />
Range Chart GUI, it loads the chart as an overlay, so you have an<br />
immediate ability to accept or decline the contract while looking<br />
at the chart (thanks to cim for the heads-up about this new feature).<br />
<br />
That Short Range Chart view also will give you the key information<br />
(trader name, destination, pay, and risk) in a terse form at the top<br />
of the screen, so you won't have to memorize what the contract entailed.<br />
It also will display the economy type, government type, and tech level<br />
of both the current and the destination system, to help you decide<br />
which contract to accept if you're carrying cargo yourself.<br />
<br />
All the menu selections have been aligned to the right of the screen,<br />
so that when viewing the chart, the text is out of the way of the<br />
planets and your fuel range. Also, all the menu selection positions<br />
will be maintained. For example, when you "View next contract", the<br />
next page will have "View next contract" pre-selected, so you can page<br />
through offers more easily. Also, the "Agree" option will never be<br />
pre-selected, so you can't accept an offer by mistake. When you<br />
have toggled the chart view on, it will remain on when you view the<br />
next or previous offer.<br />
<br />
If you decline the contracts, the offers will stay available up to<br />
a point. The timer that the OXP had before while you were looking<br />
at the chart is still running.<br />
<br />
When the timer expires (a random time but usually a few hours),<br />
the contract offers will disappear and no new offers will be made.<br />
That's different than the original OXP. Fact is I never got it to<br />
work right when having it create new offers. Either all the variables<br />
were empty or it accumulated a huge number of new offers. I'm sure<br />
it's possible to get it right, but in most cases you're not going<br />
to be at the station long enough (even doing ship maintenance)<br />
for the offers to go away, so it's not a big deal.<br />
<br />
Of course, you also can launch from the station, turn around and re-dock,<br />
hoping to see new offers turn up... It is left to people who actually are<br />
programmers to work out a more robust system of preventing such a "cheat"<br />
way of fishing for better contracts.<br />
<br />
You may find offers available when you load a saved game, so you<br />
may not actually have to go somewhere else to continue your escort work.<br />
(I say "continue" because it still will check to make sure that you have<br />
purchased an ITHA licence and that you have a Clean legal status.)<br />
<br />
There are now three different success screens, so that it won't mention<br />
getting a bonus if you made no kills during the trip, and it will use<br />
the singular "kill" if you got only one.<br />
<br />
The Griff Prototype Boa has been added as a potential mothership.<br />
I only used the one that gets decals from the texture's alpha channel,<br />
as that "alpha" version is the only one whose role normally always is<br />
a trader (the others are or can be pirates), so it looks best that way.<br />
<br />
Spelling was corrected, but don't be worried about me being American;<br />
I left in the UK spelling of things like "hauliers", "initialising", etc.<br />
I simply corrected misspellings of "its", "independent" (adjective),<br />
"en route" etc., and added commas where needed and replaced commas<br />
with full-stops where needed.<br />
<br />
With the initial screen now eliminated, that meant losing one of<br />
ZygoUgo's new background images... or at least it would have if<br />
I hadn't moved it to the "contract accepted" screen!<br />
<br />
There is a harmless quirk you may encounter when loading a saved game.<br />
Sometimes, you'll see the IHTA Escort Contracts menu item on the<br />
interfaces screen with "0 available". Most of the time, the menu item<br />
will not appear when there are no contracts available, but I guess it is<br />
possible for you to go to the F4 screen before the menu removal code<br />
has run. It doesn't cause any problems, and the line goes away when you<br />
go to another screen and then back to the F4 screen.<br />
<br />
== Change Log ==<br />
<br />
'''Version 0.9 (24/4/11)''' - Initial Release.<br />
<br />
'''Version 0.9.1 (29/4/11)'''<br />
<br />
Fixed a bug in detecting player kills (the mother should pay a bonus for hostile kills made during the contract - was broken in version 0.9).<br />
<br />
Added code for mother to use injectors to try and escape from mass lock situations after a few minutes.<br />
<br />
Made criteria for contract success arrival in target system's station aegis rather than mother safely docked to save player time. <br />
<br />
Replaced shield enhancers with shield boosters as standard equipment for mothers as they were a little too uber. <br />
<br />
Added code to stop the I.T.H.A. Independent Escort License being damaged in combat. <br />
<br />
Added an additional world script which displays the players escort reputation on the manifest screen.<br />
<br />
'''Version 0.9.2 (29/4/11)'''<br />
<br />
Fixed a small bug in calculation and display of contract prices.<br />
<br />
'''Version 1.0 (8/5/11)'''<br />
<br />
Added a cap to escort reputation.<br />
<br />
Removed shield boosters as standard equipment for mothers and gave them fore beam lasers instead of military lasers. Mothers now really do need your help to survive an encounter with multiple hostiles.<br />
<br />
Many improvements to the AI for the mother using injectors feature.<br />
<br />
Fixed a cosmetic bug in the mission screen timing.<br />
<br />
Fixed a bug where the mother could still be found waiting to dock after the player had docked, met the mother’s pilot in the bar, got their reward and re-launched.<br />
<br />
Improvements and bug fixes to the combat AI, mainly relating to mother - player communication.<br />
<br />
Removed player auto targeting mother’s primary aggressor (potential for confusion if other auto target-locking OXP’s are installed).<br />
<br />
Adjusted criteria for contract success. If no hostiles in vicinity the contract is fulfilled once the mother is in the station aegis. If there are hostiles in the vicinity when the mother arrives in the aegis the player must not dock until the mother is safely docked to fulfill the contract. The mother will explicitly tell the player this on arrival at the station aegis.<br />
<br />
Added code so that if repeatedly attacked by the player, the mother will eventually ‘turn’ and attack the player. The contract is immediately failed at this point.<br />
<br />
Added code so the timer that checks to see if the player has followed the mother through it’s wormhole kicks as the wormhole closes. Uses same calculation as oolite engine to work out wormhole expiry time depending on the mother ship mass.<br />
<br />
'''Version 1.1 (15/6/11)'''<br />
<br />
Various improvements to AI following tester reports of occasional anomalous docking and route finding behaviour.<br />
<br />
Added a pilot and cargo to the mother (thanks to Eric Walch for the tip).<br />
<br />
Added code to gradually reduce a positive or negative escort reputation over time.<br />
<br />
Added code so that any fire from a players ‘Hired Guns’ from the OXP of the same same are treated as Friendly Fire.<br />
<br />
'''Version 1.2 (13/7/11)'''<br />
<br />
Fixed dockingAI that would not parse correctly on Mac systems.<br />
<br />
Tweaked and tidied the synchronised jump code. Player must be between 500m-2500m and on approximately same heading as mother before synchronised jump will happen. The minimum distance has been introduced to avoid mother making course changes whilst hopping due to avoiding ‘collision’ with the player.<br />
<br />
Added an additional check to avoid anomalous communication from the mother when docked.<br />
<br />
'''Version 1.3 (7/8/11)'''<br />
<br />
Added code to Mission Screen handling to allow access to Short Range Chart whilst perusing contracts.<br />
<br />
Added check to avoid contract being offered to post-Nova system.<br />
<br />
'''Version 1.3.1 (7/8/11)'''<br />
<br />
Fixed missiontext.plist that would not parse correctly on Mac systems.<br />
<br />
'''Version 1.4 (19/9/11)'''<br />
<br />
Changed synchronised jump mechanism to use ship.velocity and a frame callback to simulate synchronised jump behaviour rather than a ‘teleport/hop’. Change prompted by reports of original method causing a crash to desktop on some systems (seemingly caused by changing the mother’s ship.position by script), and retained as the effect is more pleasing. Thanks to FleurdeMal for reporting the crash and testing the revised version.<br />
<br />
If player leaves mission screen to access short range chart and does not return within a fairly short time period there is a chance that the contracts on offer will have changed.<br />
<br />
Tweaked AI for initial hyperspace jump to reduce incidence of mother trying to jump when jumps are blocked by the station’s mass.<br />
<br />
'''Version 1.4.1 (24/9/11)'''<br />
<br />
Minor tweaks. Can now access both short range and long range charts and return to mission screens.<br />
<br />
Tweaked the AI, so mother more likely to use injectors if mass-locked repeatedly by same NPC.<br />
<br />
'''Version 1.4.2 (20/11/11)'''<br />
<br />
Some tweaks to the mother ship-script to reduce processing overhead.<br />
<br />
Fixed small bug where player was rewarded extra for a ‘hostile’ kill even if the kill was an asteroid or boulder.<br />
<br />
'''Version 1.5 (28/1/12)'''<br />
<br />
Made JS strict mode compatible.<br />
<br />
Made Save Anywhere OXP compatible.<br />
<br />
Reduced use of missionVariables.<br />
<br />
Tweaked calculation of contract rewards - average is 25% lower than previous versions but with significant random variation.<br />
<br />
Kills are only counted by the mother if the player is within 3 x her scanner range.<br />
<br />
If mother is 'abandoned' by the player for any length of time there is a chance she will be ambushed by pirates - frequency is higher in more dangerous government types.<br />
<br />
Added a little randomness to some of the comms messages from the mother.<br />
<br />
Eliminated unneccesary and irritating repeat comms messages, particulary the 'Jump Drive Synchronised' message.<br />
<br />
Added a background image to mission screens.<br />
<br />
Made the code to remove mother ship from ooniverse on contract failure more robust.<br />
<br />
Found and fixed a few potential bugs if the player does something 'weird' such as not dock to collect the reward at the end of a contract.<br />
<br />
'''Version 1.5.1 (05/02/12)'''<br />
<br />
Fixed small bug in display of reputation introduced in last release.<br />
<br />
Reduced frequency of some other comms messages in response to user feedback.<br />
<br />
Expanded shipdata.plist to use ship variants as mothers from the 5 main retexture shipsets if available, and several other OXP ships if available.<br />
<br />
'''Version 1.5.2 (05/03/12)'''<br />
<br />
Tweaked AI to stop mother injecting indefinately in fleeing from attack in starting system.<br />
<br />
Reduced max speed of escort contracts variant of Boa Clipper.<br />
<br />
Enabled entries for the addition version of Smiv's v4 shipset.<br />
<br />
'''Version 1.5.3 (05/03/12)'''<br />
<br />
Fixed small bug where player was rewarded extra for a ‘hostile’ kill even if the kill isCargo.<br />
<br />
'''Version 1.5.4 (21/04/12)'''<br />
<br />
Tweak to the chances of contracts being offered. Was in a range of 25% to 100% depending on escort reputation, now a range of 20% to 80%.<br />
<br />
Set specific spawn position for mother of 19km directly behind main station to avoid issues with bigger stations (e.g the Torus) (thanks to cim for bug report and suggestion for appropriate fix).<br />
<br />
'''Version 1.5.5 (05/05/12)'''<br />
<br />
Added Staer9 shipset versions of the Monitor, Python Cruiser, & Python ET Special as potential mother variants if the OXP is installed.<br />
<br />
Made the Escort License transferable equipment when buying a new ship.<br />
<br />
'''Version 1.5.6 (07/05/12)'''<br />
<br />
Mother spawn position set to sphere radius 4km centred on a spot 14km directly behind main station.<br />
<br />
Mother will hold this position until player approaches and then start moving directly away from station/planet rather than towards witchpoint, whilst preparing to jump.<br />
<br />
If mother's maxSpeed is greater than 95% of player.ship.maxSpeed she will limit her cruising speed and injector speed to 95% of equivalent player.ship.maxSpeeds (apart from in combat).<br />
<br />
Fixed logic bug with behaviour controlling when to start/stop injecting. Starting was based on player's mass lock status, ending on the mothers. Ending now checks both.<br />
<br />
Increased frequency of check to stop injecting to every second - previously every 3 seconds.<br />
<br />
Thanks to Lone_wolf and cim for highlighting the issues leading to these tweaks.<br />
<br />
'''Version 1.5.9 (2013-05-05)'''<br />
<br />
Unofficial update to work with Oolite V1.77's interfaces screen (and other updates) by Keeper<br />
and new background images by ZygoUgo.<br />
<br />
'''Version 1.6.1 (2015-01-27)'''<br />
<br />
Fixes by Norby.<br />
<br />
'''Version 1.6.2 (2015-06-09)'''<br />
<br />
Fixes by Chimrod.<br />
<br />
'''Version 1.6.3 (2015-08-25)'''<br />
<br />
Fixes by phkb.<br />
<br />
'''Version 1.7.1 (2015-12-04)'''<br />
<br />
Several fixes and other changes by Fritz. Most non-bugfix changes apply to the comms messages which are now randomly variable and won't be repeated too often anymore. <br />
<br />
<br />
== Download Links ==<br />
Version 1.7.1: [[Media:Escort Contracts 1.7.1.oxz|Escort_Contracts_1.7.1.oxz]] (downloaded {{#downloads:Escort_Contracts_1.7.1.oxz}} times)<br />
<br />
Older versions:<br />
<br />
Version 1.6.3: [http://app.box.com/s/e6iog5p0295at7vbvlll2tfyvls8hn23 box.com] (a fix for the mission screen by [[user:phkb|phkb]], only for use with [[Xenon HUD]])<br />
<br />
Version 1.6.2: [[Media:Escort_Contracts_1.6.2.oxz|Escort_Contracts_1.6.2.oxz]] (downloaded {{#downloads:Escort_Contracts_1.6.2.oxz}} times).<br />
<br />
Version 1.6.1: [[Media:Escort_Contracts_1.6.1.oxz|Escort_Contracts_1.6.1.oxz]] (downloaded {{#downloads:Escort_Contracts_1.6.1.oxz}} times).<br />
<br />
Version 1.5.9 OXZ: [[Media:Escort_Contracts_1.5.9.oxz|here]] for Oolite 1.79 or later (downloaded {{#downloads:Escort_Contracts_1.5.9.oxz}} times).<br />
<br />
Version 1.5.9 OXP: [http://www.mediafire.com/download.php?zbzk5wvpzw8i8aj Zy&K Escort Contracts] for Oolite 1.77.<br />
<br />
Version 1.5.6: [http://www.box.com/s/fqux5e4dpq3s5asp3euq box.com] for Oolite 1.76. Also mirrored on [https://app.box.com/s/5axsr83uf4g39ugsgo6h JazHaz's Box].<br />
<br />
<br />
Feedback can be left on the OXPs discussion topic at [https://bb.oolite.space/viewtopic.php?f=4&t=17921 Oolite BB].<br />
<br />
{{mission-OXP}}<br />
<br />
== Quick Facts ==<br />
{{OXPLevel|0|2}}{{Infobox OXPb| title = Escort Contracts<br />
|version = 1.7.1<br />
|release = 2015-12-04<br />
|features = Contracts for escorting and protecting NPC traders<br />
|license = CC BY-NC-SA 3.0<br />
|category = Missions OXPs<br />
|author = [[User:Capt. Murphy|Capt. Murphy]] and others<br />
|feedback = [https://bb.oolite.space/viewtopic.php?f=4&t=17921 BB-Link]<br />
}}</div>Phkbhttps://wiki.alioth.net/index.php?title=Equipment_Storage_OXP&diff=83461Equipment Storage OXP2024-03-18T13:40:18Z<p>Phkb: Updating BB links</p>
<hr />
<div>Stores equipment - and also (legal) cargo<br />
==Overview==<br />
Sometimes, when you purchase a new ship, you want to include equipment you have already purchased. In the core game there is no way around this. If you sell your ship, you have to repurchase everything. <br />
<br />
The Equipment Storage OXP provides an alternative. Every main station now has a self-storage facility into which your excess equipment can be transferred. An F4 interface screen, "Storage facility management", will be available that will show you all the equipment you have stored at this station or any other station, and allow you to transfer most installed equipment items into storage. Equipment stored in the current station can be either sold or reinstalled. Equipment stored in other stations can be sold or transferred to the current station, after paying a transfer fee, but depending on the length of the trip and the number of dangerous systems the transfer ship must take to reach the current system, you may end up losing the equipment.<br />
<br />
Most cargo can also be stored in the facilities, and transferred between them. After selecting "Storage facility management", you will have an option to move cargo from your hold into the facility.<br />
<br />
The cost of storage for most equipment items 1cr per equipment item per day. Some equipment items are categorised as software or having a negligible space or weight, and the cost for these items is 0.1cr per item per day.<br />
<br />
Cargo storage costs are calculated at 1cr per ton per day.<br />
<br />
Note: Storage facilities are only available at the main station in each system. If you dock at any other station the F4 interface screen will instead read "Storage facility information" and will provide details of what equipment and cargo you have in storage at the main station.<br />
<br />
Note: Slaves, firearms and narcotics cannot be stored in any facility, by GalCop law. <br />
<br />
==Ship Configuration Integration==<br />
When the [[Ship Configuration OXP]] is installed, the interface through which equipment items are transferred to storage is moved into the Ship Configuration equipment item on the F3 Equip Ship screen. The F4 interface screen will still be available for viewing stored equipment, and for re-installation and transfer.<br />
<br />
Note: Because Ship Configuration implements an equipment space/weight factor, the costs of storage could increase for some equipment items. The rate is 1cr per ton per day. See the Ship Configuration documentation for more information on the space/weight factor of individual items.<br />
<br />
==Installation==<br />
Place the 'EquipmentStorage.oxz' into your 'AddOns' folder and when you start the game, hold down 'Shift' until you see the spinning Cobra.<br />
<br/>Alternatively, you can download the expansion using the expansion pack manager in the game itself.<br />
<br />
==Download==<br />
Download [[Media:EquipmentStorage_1.8.oxz|EquipmentStorage_1.8.oxz]].<br />
<br />
==Licence==<br />
This work is licensed under the Creative Commons Attribution-Noncommercial-Share Alike 4.0 Unported License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/<br />
<br />
Storage icon made by Freepik (http://www.freepik.com) from http://www.flaticon.com is licensed by Creative Commons BY 3.0 (http://creativecommons.org/licenses/by/3.0/)<br />
<br />
==Version History==<br />
1.8<br />
* Made compatible with New Cargoes 2.0.<br />
<br />
1.7<br />
* Added extra parameter in call to Hermitage OXP.<br />
* Fixed some potential referencing errors on mission screens.<br />
<br />
1.6<br />
* Added missing entry in descriptions.plist.<br />
<br />
1.5<br />
* Added Trail Detector item to override list, allowing it to be stored.<br />
* Added Mining IFF Scanner Upgrade item to override list, allowing it to be stored.<br />
* Added Rescue Stations equipment items to override list, allowing them to be stored.<br />
* Fixed issue with Ship Configuration items (Fuel Scoops, Heat Shields and Fuel Injectors) that were not being assessed correctly in determining when an item was in use.<br />
* Bug fixes.<br />
<br />
1.4<br />
* Added IronHide armour to the exclusion list.<br />
<br />
1.3<br />
* Added ShipVersion's placeholder equipment items to the list of items that can't be stored.<br />
* Code refactoring.<br />
* Bug fixes.<br />
<br />
1.2<br />
* Added overlay to transfer cargo screen.<br />
* Cleaned up some instances where the core commodity name (eg "gem_stones") was being displayed, instead of the display name (eg "gem-stones").<br />
* Added interfaces to another OXP in development.<br />
<br />
1.1<br />
* Corrected OXP name in manifest file.<br />
<br />
1.0 <br />
* Initial release.<br />
<br />
==Links==<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=20215 Oolite BB thread]<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=13373 Storage space rentals] (2013 thread)<br />
:Not to be confused with<br />
*[[Ship Storage Helper]] for storing your ship<br />
*[[HyperCargo OXP]] magical storage enhancer (on-board ship)<br />
<br />
==Quick Facts==<br />
{{OXPLevel|0}}{{IconOXP|ooVersion="1.82"|oxpCPU="Low"|oxpMEM="Low"|oxpGPU="Low"}}<br />
{|class="floatright" style="alignment:right;margin: 0 auto;"<br />
|[[Image:IconLib.png|48px|right|link=Library OXP|alt=Config options available through 'Library']]<br />
|}<br />
{{Infobox OXPb| title = EquipmentStorage.oxz<br />
|version = 1.8<br />
|release = 2023-10-21<br />
|license = CC BY-NC-SA 4.0<br />
|features = Equipment and cargo storage<br />
|category = Mechanics OXPs<br />
|author = [[User:phkb|phkb]]<br />
|feedback = [https://bb.oolite.space/viewtopic.php?f=4&t=20215 Oolite BB]<br />
}}<br />
<br />
==Gameplay and Balance indicator==<br />
[[Image:tag-colour-blue.png]]</div>Phkbhttps://wiki.alioth.net/index.php?title=Engine_Sound_FG&diff=83460Engine Sound FG2024-03-18T13:40:06Z<p>Phkb: Updating BB links</p>
<hr />
<div>This OXP creates an engine sound that follows the speed of the your ship, thruster sounds when maneuvering, and some additional sounds.<br />
<br />
=== Dependencies ===<br />
Oolite version 1.79 or later.<br />
<br />
=== Instructions ===<br />
Download .oxz file and move into the AddOns folder of your Oolite installation. <br />
<br />
If you want to change the volume or other settings, rename the download file to .zip and move its contents (3 folders and 2 plist files) to a sub folder (e.g. "Engine Sound FG.oxp") in your AddOns folder. The settings can be found in the file engine_sound_fg.js in the "Scripts" subfolder. You can modify the volume levels of engines, standby sound and maneuvering sound separately, you can disable torus, maneuvering and/or cooling fan sound if you want, and you can control the behaviour if you have [[BGS|BGS OXP]] installed as well (see below).<br />
<br />
=== License ===<br />
This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License version 4.0.<br />
<br />
=== Credits ===<br />
This OXP is based on ideas developed in [https://bb.oolite.space/viewtopic.php?f=2&t=17920 the Oolite forum] and on a demonstration OXP by [[User:Norby|Norby]]. An updated version of Norby's OXP is available under [[Engine Sound]]. <br />
<br />
Most sound files were taken from [[BGS|BGS OXP]] by Pagroove, PhantorGorth, Thargoid, Tricky & Svengali, and modified by Norby. The fan sound files were made from a file from freesound.org where it was uploaded by suzzy457 and licensed under CC BY 3.0 ([https://freesound.org/people/suzzy457/sounds/268146]).<br />
<br />
=== Differences to Engine Sound OXP by Norby (apart from the additional sounds) === <br />
This OXP uses the same 25 sound files as Engine Sound but choses them in relation speed/maxSpeed. Norby's OXP uses the absolute value for speed for file selection, so slower ships will sound differently at top speed than faster ships. With this OXP, all ships sound the same but can use the full "spectrum" of the available sound files.<br />
<br />
Obviously you shouldn't install both OXPs at the same time.<br />
<br />
[[File:IconBGS.png|right]]<br />
=== BGS OXP compatibility ===<br />
BGS uses a constant ambient engine sound when speed > 0 (using the sound file that is played at 25 different speeds in this and Norby's OXP). So in BGS you can't hear speed differences, and this actually started the forum discussion mentioned above. BGS uses two additional sound files to create accelerating and deceleration noises - the files are used in this OXP for the torus drive.<br />
<br />
BGS and this OXP can be used together, but if the BGS ambient sounds are left on, not only the crowd noise and the radio chatter will be played but also a (constant) engine sound. The "double engine" doesn't sound bad but is of course a little bit louder, so it could be a good idea to increase the maneuvering and perhaps the standby sound volume (BGS turns off its engine sound completely on standstill). <br />
<br />
There is a switch in engine_sound_fg.js to turn of the BGS ambient sounds. If both chatter and crowd noise have been disabled in BGS, the BGS engine sound will be turned off in any case.<br />
<br />
=== Changelog ===<br />
* 2015-12-09: Version 1.2, added cooling fan sound and system shutdown sound when docking, BGS ambient sound left on by default <br />
* 2015-12-06: Version 1.1, added maneuvering sound, reduced volume levels, stop sound while game is paused<br />
* 2015-12-05: Version 1.0, first release<br />
<br />
=== Download ===<br />
[[Media:Engine_Sound_FG_1.2.oxz|Engine_Sound_FG_1.2.oxz]] (downloaded {{#downloads:Engine_Sound_FG_1.2.oxz}} times).<br />
<br />
=== Links ===<br />
*[[BGS]] - unvarying Engine Sound<br />
*[[Engine Sound]] - by Norby<br />
*[https://bb.oolite.space/viewtopic.php?p=239019#p239019 Streb2001's version]<br />
<br />
===Quick Facts===<br />
{{OXPLevel|0}}{{Infobox OXPb| title = Engine Sound FG<br />
|version = 1.2<br />
|release = 2015-12-09<br />
|features = Engine Sound<br />
|license = CC BY-NC-SA 4<br />
|category = Ambience OXPs<br />
|author = [[User:Fritz|Fritz]]<br />
|feedback = [https://bb.oolite.space/viewtopic.php?f=2&t=17920 BB-Link]<br />
}}<br />
<br />
[[Category:Sound Sets OXPs]]</div>Phkbhttps://wiki.alioth.net/index.php?title=Elite_Rating&diff=83459Elite Rating2024-03-18T13:39:52Z<p>Phkb: Updating BB links</p>
<hr />
<div>[[File:Elite adverts.jpg|right|320px]]<br />
A central aspect of both the various Elite games and the Elite universe is the Elite ranking system.<br />
<br />
==Background==<br />
The Elite Federation, an independent body linked to most of the major organisations in Galactic space, introduced the Combat Rating in a drive to spur pilots towards self-defence. The Galactic Co-operative, at the time stretched to the limits of the police force by pirate activity, fully supported this move, even introducing combat training into their flight training programme.<br />
<br />
Over the years, the Combat rating, now more commonly referred to as the Elite Rating, has become an integral part of any pilot's spacefaring life. Various organisations and departments have offered perks to pilots who attain the top rank that has given the system its name. Elite combateers are considered to be honoured veterans amongst pilots and non-pilots alike.<br />
<br />
==Overview==<br />
Simply put, the Elite Rating is a ranking system based on how many kills a pilot has accrued. Recording devices in all weapons systems transmit a signal to the Elite Foundation containing visual images and transponder codes confirming each kill.<br />
<br />
The Elite Federation has come under fire from human rights protesters in recent years due to their policy of not questioning what sort of kills are made. They will award kills to pirates and lawful pilots alike without issue. This has opened up many claims that they support piracy and terrorism. The EF answer these charges with the same defence every time: "...it is not our job to protect against lawlessness or to assign blame for actions beyond our control. Our job is to assign ratings. A pirate is still a pirate no matter what his Elite Rating - it is up to the police and the Navy to deal with their crimes."<br />
<br />
== Ratings ==<br />
<br />
The lists describe the available ranks and the kills required to reach them. All new pilots start out as ''Harmless''.<br />
{{Infobox elite ratings<br />
|title = [[Classic Elite|Elite]]<br />&<br />[[Oolite]]<br />
|float=left<br />
|Harmless = 0 kills<br />
|Mostly Harmless = 8 kills<br />
|Poor = 16 kills<br />
|Average = 32 kills<br />
|Above Average = 64 kills<br />
|Competent = 128 kills<br />
|Dangerous = 512 kills<br />
|Deadly = 2560 kills<br />
|Elite = 6400+ kills<br />
}}<br />
{{Infobox elite ratings<br />
|title = [[Frontier|Frontier: Elite II]]<br />&<br />[[First Encounters|Frontier: First Encounters]]<br />
|float=left<br />
|Harmless = 0 kills<br />
|Mostly Harmless = 8 kills<br />
|Poor = 16 kills<br />
|Average = 32 kills<br />
|Above Average = 64 kills<br />
|Competent = 128 kills<br />
|Dangerous = 1000 kills<br />
|Deadly = 3000 kills<br />
|Elite = 6000+ kills<br />
}}<br />
{{Infobox elite ratings<br />
|title = <br />[[MSX Elite]]<br /><br /><br />
|float=left<br />
|Harmless = 0 points<br />
|Mostly Harmless = 2000 points<br />
|Poor = 4000 points<br />
|Average = 8200 points<br />
|Above Average = 16350 points<br />
|Competent = 32800 points<br />
|Dangerous = 131168 points<br />
|Deadly = 655384 points<br />
|Elite = 1310768 points (unconfirmed)<br />
}}<br />
{{Clear}}<br />
<br />
When attaining a new rank, you will receive the message "Well Done Commander".<br />
<br />
For every 256 destroyed ships you will get the message "Right On Commander".<br />
<br />
See [[MSX Elite]] for an explanation of ''points'': but depending on the ship you destroy, you get between 3 (Orbit shuttle) and 150 (Thargoid, Wolf Mk III) points.<br />
<br />
== Explanation ==<br />
<br />
Most traders could achieve a rank of '''Dangerous''' within about five years in space. Arguably, if a trader wanted the big profits, he wouldn’t last long unless he achieved a rating of that level. A great many pilots were Dangerous; it implied they were a seasoned space dog, ready for anything, though virtually all their kills would have been in self-defence.<br />
<br />
Reaching the giddy height of '''Deadly''' required a lot more dedication. It meant a pilot had deliberately sought out danger, witchspacing into difficult systems and facing down fierce opponents; perhaps even taking on covert military missions. Deadly implied a pilot was not just a trader, but a fighter as well; going on the offensive, taking big risks. Deadly was a rank associated with advanced skills, a rank that indicated you were cut out for bigger things, that you might be ‘Elite’ material. It indicated a single minded fixation on killing for killing’s sake, a hunter, someone apart from normal society.<br />
<br />
'''Elite''', of course, is something else altogether.<br />
<br />
<small>''[[Mutabilis]]'' by [[Drew Wagar]], pg. 49</small><br />
<br />
== In-game significance ==<br />
The higher your Elite rating, the more famous you are - and the more NPC's will remember if for example you were a pirate at an earlier stage... (See [[NPC]] for more on this).<br />
<br />
== Real-World Life ==<br />
It can easily take 1-2 months of serious play to work one's way up to elite. More if one is not focused on it.<br />
<br />
It takes 6400 kills, which is a lot.<br />
Just to get a feel for the number, that is 100 kills a day for 2 months.<br />
To make 100 kills a day, each and every day, you have to be very active.<br />
Also, you'd have to do pretty much nothing but kill. ([https://bb.oolite.space/viewtopic.php?p=255023#p255023 Hoqlinq (2017)]<br />
<br />
== Lore ==<br />
[[Imprint]] features description of the ceremony where Elite status was awarded to a pilot. This is set 20 years before Oolite debuts, and is set in the context of a battle against organised pirates.<br />
<br />
== Links ==<br />
* [[Elite Federation]]<br />
* [[AFE FAQ9#99.1) How do the rankings go?|AFE FAQ9: why 6400 kills?]]<br />
* [https://bb.oolite.space/viewtopic.php?f=2&t=18641 How long until one reaches Elite rank?] (2017)<br />
* [https://bb.oolite.space/viewtopic.php?f=4&t=16174 Data gathering - kill rates] (2013)<br />
* [https://bb.oolite.space/viewtopic.php?f=2&t=12094 Kill points - what a can of worms!] (2012)<br />
* [https://bb.oolite.space/viewtopic.php?f=2&t=1068&start=135 What's your combat rating?] (2011 - with poll!)<br />
* [https://bb.oolite.space/viewtopic.php?f=2&t=7700 Who is the best Oolite player?] (2010 - with ranking)<br />
* [https://bb.oolite.space/viewtopic.php?f=2&t=4673 right on commmander? yeeehawww!] (2008)<br />
<br />
=== Changing things ===<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=16255 Source Code and Ideas question] (2014)<br />
<br />
[[Category:Classic]]<br />
[[Category:Oolite]][[Category:Help pages]]<br />
[[Category:FFE]]<br />
[[Category:FE2]]<br />
[[Category:Concepts]]</div>Phkbhttps://wiki.alioth.net/index.php?title=Economics&diff=83458Economics2024-03-18T13:39:20Z<p>Phkb: Updating BB links</p>
<hr />
<div>{{QuoteText|Text=The two thousand star systems of the Cooperative once enjoyed a golden age of peace and prosperity, and perhaps the wealthiest of them can still pretend to. The trade ships that once safely travelled between planets now have to be well armed and escorted to fend off pirate attacks, from small-time criminals desperate for their next meal, to powerful robber barons extracting tithes from everyone who passes through their space.<br />
<br />
The Cooperative's police force, concentrated near a few influential planets, can no longer maintain order. The mercenaries they hire for a few credits a kill are too few, too unreliable to do so either. And in the darkness between the stars, an old enemy lurks, fearless, perhaps waiting for order to collapse entirely.|Source=([http://www.oolite.org/ Oolite website], Introduction)}}<br />
<br />
Trade and economics, yes ... but greatly affected by piracy and by the decline of the Galactic Cooperative.<br />
<br />
This page focuses on the wider issues of economics in the Ooniverse. For a discussion of how to succeed as a trader, see [[Oolite Trading]].<br />
<br />
[[image:Logo64_Anarchy.png|thumb|right|Anarchy]] [[image:Logo64_Feudal.png|thumb|right|Feudal]]<br />
[[image:Logo64_MultiGovernment.png|thumb|right|MultiGovernment]] [[image:Logo64_Dictatorship.png|thumb|right|Dictatorship]]<br />
[[image:Logo64_Communism.png|thumb|right|Communist]] [[image:Logo64_Confederacy.png|thumb|right|Confederacy]]<br />
[[image:Logo64_Democracy.png|thumb|right|Democracy]] [[image:Logo64_CorporateState.png|thumb|right|Corporate]]<br />
<br />
[[image:Logo64_PoorAgricultural.png]] [[image:Logo64_AverageAgricultural.png]]<br />
[[image:Logo64_RichAgricultural.png]] [[image:Logo64_MainlyAgricultural.png]]<br />
[[image:Logo64_MainlyIndustrial.png]] [[image:Logo64_PoorIndustrial.png]]<br />
[[image:Logo64_AverageIndustrial.png]] [[image:Logo64_RichIndustrial.png]]<br />
<br />
== The impact of Piracy ==<br />
The second Elite novel, [[Imprint]], starts off with the continual fighting off of pirates (the so-called "Knights Templars"). This is set some 20 or so years before Oolite - and things have only gotten worse since then.<br />
<br />
[[User:Cim|Cim]] created a ''Space-sim simulator'' for analysing the relationship between pirates, traders & bounty-hunters in Oolite which you can find [https://cim.sotl.org.uk/games/ here]: (Discussion is [https://bb.oolite.space/viewtopic.php?f=2&t=15061 here]).<br />
<br />
== Trading Commodities ==<br />
<br />
[[Classic Elite]] - and thus the Oolite [[Vanilla game]] - has a grand total of 17 tradeable [[Commodities]]. There is a spectrum of 8 types of world to trade them between - ranging from Rich Industrial to Poor Agricultural.<br />
<br />
The Oolite Reference Sheets which came with the game download (search for '''OoliteRS''' - stashed away in the entrails of your computer!) tabulates it all quite nicely. The [[Trading Goods Profit Table]] is worth looking at for a more comprehensive summary.<br />
<br />
There are a number of OXPS which add individual commodities (see Links below), and also others which quite turn aspects of the vanilla game economy on their head.<br />
<br />
[[File:Britnoth's Trade diagram.png|thumb|right|320px|[https://bb.oolite.space/viewtopic.php?p=250792#p250792 Possible Oolite trade model by Britnoth] ]]<br />
[[File:Redspear's Trade Diagramme.png|thumb|right|320px|[https://bb.oolite.space/viewtopic.php?p=256342#p256342 Another trade model by Redspear] ]]<br />
[[File:Redspear's Trade-Species Diagramme.png|thumb|right|320px|[https://bb.oolite.space/viewtopic.php?p=256342#p256342 Yet another trade model by Redspear] <br> ''Click to expand'' ]]<br />
== Critiques of Oolite's economics ==<br />
=== 1) Cim ===<br />
* '''Cim''': Let's assume a 1Tc barrel of Food contains 1000kg of food, or approx 500 person-days of food. A Boa will bring 125Tc, and lets say 2 or 3 arrive each day carrying food rather than other goods. So they're only importing enough food to feed a couple of hundred thousand people at most. We can probably pretty safely assume then that the Food cargo is generally luxury food, interstellar delicacies, and the like, and all planets are usually self-sufficient for basic food needs. The NPC bulk haulers (''eg'' [[HammerHead]]) could raise it to a couple of million people, perhaps, which is still negligible. <br />
:::[https://bb.oolite.space/viewtopic.php?p=161441#p161441 Cim] (2012). ''Note that arguments exist over the definition of a TC: weight or volume?''<br />
<br />
Cim wrote 2 OXPs affecting Oolite's Economics. These do not radically re-invent it, but tweak it in certain areas.<br />
:*[[New Cargoes]] - emulates the Classic Elite lore, with trade in specialist items: Vargorn mind-silk & thrumpberry juice. Introduces 100 sub-variants of the regular commodities: mud hockey sticks! zero-gravity hockey sticks! Excellent profits only at one or two planets - but get your hockey variety right! Uses the lore and culture to generate new markets. Subscribe to a trade magazine with tips! Go on the [[New Cargoes Trading Advice|Advanced Trading course]] at your alma mater, the [[Lave Academy]]! <br />
:*[[Risk Based Economy OXP]] - makes trade in dangerous systems more profitable, trade in safe systems less so. So less money initially.<br />
==== Consideration of cim's critique ====<br />
*Accepting cim's analysis thus leads to implications for population size. The population will be limited by the food supply. In a high [[TL]] system, there will be equipment allowing production of food on an otherwise barren planet. But in a low TL system...?<br />
*The impact of a player's action on market prices will of course depend on the size of the market. Oolite markets seem very small, and one would expect player's actions to have a major impact. If the size of contract trade is factored in, the market size grows considerably, reducing this impact. If the markets on the planet surface are factored in too, then the market size grows immensely, and player's actions become irrelevant.<br />
<br />
=== 2) Redspear ===<br />
Redspear dislikes the way that the most profitable items are almost always Furs & Computers. With [[Demand Driven Economy]] he prefers to make different commodities profitable in different economies, and thus creates a reliable profitable demand for luxuries in Rich Agriculturals, computers in Average Agriculturals & alloys in Poor Agriculturals. His oxp includes tweaks for population, economy size & tech level. Redspear prefers an enjoyable game to something which rigorously attempts to replicate reality too closely (and fails!).<br />
==== Consideration of Redspear's critique ====<br />
We are all after different things in our game. Redspear's approach certainly adds to the variety and the playability, and will enhance the [[immersion]] for many. But why are radioactives the main profit making import for Mainly Industrials while alloys make the profit in poor agriculturals? It may seem haphazard and illogical and for some players this will break the immersion.<br />
<br />
=== 3) Stranger ===<br />
* '''Stranger''': The [[Vanilla game]] descriptions seem controversial. Why does a Poor Agricultural system market have more food and soft goods at a lower price than a Rich Agricultural? We have no such controversy at the opposite end of the scale: a Rich Industrial market has more electronics and machinery at a lower price than a Poor Industrial market. It seems that "Poor Agriculture" is a logically flawed definition: it reflects the system's economic specialization, not the productivity level, nor the richness/poverty level!<br />
: ...<br />
:Oolite's economical model was inherited from the good old 8-bit 42 KB Elite. Compared with later space sims which feature hundreds of items in their goods lists, Oolite seems modest. You have only 17 goods – and only 14 goods for legal trade. Moreover, even this humble list is mostly useless. In reality you have an extremely limited subset of the most profitable items for your milk runs. Buy computers in industrial systems, sell in agricultural, buy alcohol & and/or furs, sell in industrial, repeat. Sometimes furs more profitable, sometimes alcohol, that’s all. Well, having 100 credits for start you’ll buy cheap food and sell it with good profit, but it is a very short period. Oolite is definitely NOT about economics. You have no reason to buy textiles if you have more cheap and more profitable food. Similarly, you have no reason to buy machinery if there is enough stock of the more profitable computers. And you have no reason to trade minerals, radioactives and alloys – of course, you can collect these items as bounty (if you have fuel scoops and enough free space in the cargo bay).<br />
<br />
:There are at least three basic types of economy in other space sims, not just the Elite industrial/agricultural dichotomy. And, there are actually at least three groups of goods in Oolite, matching these basic types of economy.<br />
:''Agricultural goods'' (food, wine, textile, furs) – here production is not limited by TL, but is strongly affected by environment. It will be good to assume dramatic fluctuations of quantity and price for such items due to weather effects and other unpredictable events, affecting harvest.<br />
:''Raw materials'' (minerals, radioactives, gold, platinum, gems) – mining is affected by an unpredictable environment too, but to a lesser degree. In any case, industry needs buffer stocks of raw materials to allow uninterrupted production.<br />
:''Industrial goods'' (computers, machinery, alloys, luxury, firearms) – industry is a business with long-term planning, so it is the most stable sector of an economy: don’t expect significant fluctuations of quantity and prices. And high-tech goods will require a high enough TL.<br />
:Slave and narcotics (and partly firearms of course) are a special case. This is illegal business, criminal, affected by random events, so quantities and prices for such items will be highly variable. <br />
:::(Stranger's introduction to [[SW Economy]] - but see also his essay, [https://bb.oolite.space/viewtopic.php?f=2&t=21094 here])<br />
==== Critique of oxp ====<br />
The creation of mining economies in agricultural worlds unable to support agriculture is incomplete. The mining worlds bear misleading agricultural icons. Their markets are agricultural with very low prices for the food that they cannot grow and must import. One suspects that the vanilla game code inhibits full implementation of this oxp.<br />
<br />
=== 4) Phasted ===<br />
* '''Phasted''' does a similar thing to Stranger, but rather than introduce a tri-polar model and three new essential commodities, he focuses on the Vanilla game's bipolar model and makes it work more realistically.<br />
:*Proximity of neighbouring systems now affects prices as well as piracy! So one single industrial economy surrounded by a sea of agriculturals will have prices more similar to theirs.<br />
:*Prices fluctuate all the time as one watches, and buying and selling enhances this. Mistakes start to become expensive.<br />
:* Furthermore, "rich" and "poor" agriculturals now impact on their markets as rich and poor agriculturals (Stranger relabels them as Common, Strong & Extreme, treating their wealth as a separate quality). Rich agriculturals have more money to pay for computers than poor ones do (all other factors being equal). Poor agriculturals sell their produce for less.<br />
:*Markets may now stock 800TC or more of a commodity!<br />
:Economies are given a comparative rating on the [[F7 page (data on "system")]] showing how the neighbourhood affects the local economy. The new rating is on the scale between poor agricultural (Agri 4) and rich industrial (Ind 4).<br />
==== Critique of oxp ====<br />
Faulty. After a while (often quite a while) the commodity prices tend towards 0. Also, there are no changes in quantities, just in prices.<br />
<br />
=== A sixth radical OXP ===<br />
You will see that there are three approaches. Cim looks at the game code and tries to explain the game model in an economic fashion (trade is mostly irrelevant - most planets fend for themselves (economic autarky) trading maybe just a few luxury goods. The trade which goes on may be too small to really matter. Redspear is concerned with playability, and wishes to make more commodities reliably profitable. Stranger & Phasted take another approach, looking at the way economics works and tweaking the game to fit.<br />
<br />
These three authors thus wrote OXPs which enhance the economics of Oolite in quite different ways. There is a sixth OXP which works along lines similar to Cim's, [[Risky Business]] by [[User:Phkb|Phkb]], who sadly offers us no learned disquisition on economics! Risky Business aims to make Multi-Gov, Feudal and Anarchy systems more rewarding for traders, by tweaking prices on a ''few'' goods. Goods that are already over the average could be increased. Goods that are below the average could be reduced. Not all goods will be impacted at all locations. Phkb's newest version includes Cim's Risk Based Economy and allows you to choose between one, the other or both (you will need [[Library OXP]] to do so).<br />
<br />
=== Ideas for a seventh OXP ===<br />
I believe I've come up with a system that reduces the traditional milk runs and encourages commanders to trade with a bigger variety of commodities and in more systems. I've also come up with a reasonable explanation for the various price levels that fit into the ooniverse.<br />
<br />
Unfortunately, I have 0 ability when it comes to writing any sort of script (I was so proud when I changed my keyconfig file so that the space bar fired my lasers).<br />
<br />
==== Overview ====<br />
<br />
The aim is to rebalance the trading system in order to encourage pilots to visit a wider range of systems and utilise a wider range of goods. This will need to reduce the profitability of poor agricultural – rich corporate “milk runs”.<br />
<br />
There are two ways of manipulating what items are sold – price and availability. A low price will discourage pilots from selling goods at a specific system, while low or 0 availability will prevent these goods being purchased for a quick profit.<br />
<br />
The basic type of item imported and exported by each system is based on the economy type and wealth level, with modifiers for government type. There is also a random element in list prices that may reduce / increase the profits from any trading run.<br />
<br />
==== Economy types ====<br />
<br />
Poor Agricultural<br />
Poor Agricultural systems are a small step away from operating on a subsistence level and the population concentrate almost exclusively on growing food crops. Those few crops that aren’t used to fend off starvation are either sold for export or converted into potent fermented concoctions, very little of this brew makes it off-planet however. The average farmer has little need for the finer things in life and as such there is little demand for luxuries and computers. Machinery is highly sought after however, particularly tractors and harvesters which allow the farmer to make better use of his land. The more adventurous among the population head off into the wilderness on hunting expeditions to collect the pelts of the local wildlife and it is these furs that bring in the majority of the planet’s off-world credits.<br />
<br />
Rich Agricultural<br />
Factory farming is the order of business on these worlds. Crops are plentiful and this allows the farmer a relatively easy life and they can even indulge in the occasional luxury. A significant amount of the crops are converted into liquor and fine wines – which brings these systems the nickname of galactic vineyards. The most pressing need amongst the population is for computers which are used not only to manage the sprawling farmlands but also much-needed entertainment.<br />
<br />
Poor Industrial<br />
Picture a landscape of row upon un-ending row of grey factories, smoke belching towards the skies and you have a pretty good idea of what life is like on a poor industrial planet. These factories churn out large quantities of low-grade mechanical goods, alongside the radioactives that are the inevitable side-effect of the manufacturing process. There is a high level of alcohol dependency and drug abuse amongst the population as they attempt to escape the drudgery of their dull, uneventful lives<br />
<br />
Rich Industrial<br />
On rich industrial planets you will find a more skilled workforce, specialising in producing all the marvels of the modern age – everything from top spec computer systems to the latest in robot butlers. This climate has bred something of a “nouveau riche” culture, with the well dressed constantly in search of the latest exotic furs to stay one step ahead of the fashion police. With this culture comes a distinct lack of enthusiasm for the more “common” pastimes of drink and drugs, however a commander may find a willing market for the more unusual luxury items.<br />
<br />
What this means:<br />
<br />
Poor Agricultural systems sell furs and buy machinery<br />
Rich Agricultural systems sell liquor and buy computers<br />
Poor Industrial systems sell machinery and buy liquor<br />
Rich Industrial systems sell computers and buy furs<br />
<br />
A sample trading route would therefore be: Rich Agricultural, buy liquor – Poor Industrial, sell liquor and buy machinery – Poor Agricultural, sell machinery and buy furs – Rich Industrial, sell furs and buy computers – Rich Agricultural, sell computers and buy liquor.<br />
<br />
Smaller profits would be available through cross-trading other items between the systems. Alloys and minerals are cheaper on agricultural worlds and can be sold to industrial worlds. Radioactives are easily available on industrial worlds and will be wanted as power sources on Agricultural worlds. Poor worlds produce luxury goods which are in demand on Rich worlds, while narcotics are wanted by poor worlds to alleviate the daily grind and can be purchased from the rich.<br />
<br />
Average worlds have prices in between those of rich and poor, so provide a smaller profit margin than these systems.<br />
<br />
==== Government types ====<br />
<br />
Anarchy<br />
Slaves, narcotics and firearms have a lower price in anarchies compared to more stable systems. All prices tend to be slightly lower to encourage the player to take the risk of visiting these systems for a quick reward when they visit another system to offload their cargo.<br />
<br />
Communist<br />
A good price can be found on mass-produced items (machinery/textiles depending on economy type) Liquor (in the form of vodka) tends to have a lower price while there is very little demand for luxuries and it is rare to find these available on the stock market.<br />
<br />
Corporate<br />
The corporate systems will have a slightly increased difference in their import / export prices, which reflects the cut throat nature of business dealings on these systems.<br />
<br />
Democracy<br />
As this is a fairly stable form of government I've used this as the basis for the price fluctuations that appear under the other systems.<br />
<br />
Dictatorship<br />
Although prices remain fairly consistent with the norm, stock availability tends to fluctuate wildly in response to the erratic whims of the current ruler. Occasionally these whims only change when the glorious leader is deposed but given the frequency with which this happens the average trader can expect a completely different look to the market on their next visit. This level of variation can lead to healthy profits for the intrepid trader – along with a few wasted journeys<br />
<br />
Others<br />
Special attention will need to be paid to the ConMart stations implemented by the Your Ad Here OXP and Rock Hermits OXP to ensure that prices stay in balance with the rest of the game and don’t drastically skew trading values. There may also be conflicts with the Bloomberg Markets OXP which would need to be addressed.<br />
<br />
==== Profit Levels ====<br />
<br />
Following the trade route suggested above, the commander could expect to make a profit of around 20C/t on the primary imports/exports and around 10 C/t on secondary imports/exports, although fluctuations and government types would influence this. There would also be a limited number of trade items at bargain prices (e.g. computers in a poor agricultural system) which were either left there by a poor trader or sold on by pirates after being scooped.<br />
<br />
[https://bb.oolite.space/viewtopic.php?p=102772#p102772 Commander Trigg (2010)]<br />
<br />
=== Notes ===<br />
[https://archive.org/details/oeconomica01arisuoft/page/n7/mode/2up?ref=ol&view=theater Economics] was a book written by Aristotle in Classical Greece. He started analysing household accounts (Oikos Nomos - laws of the household) and moved on to look at the accounts of a Greek city state. Hence the term.<br />
<br />
Note that of these 6 OXP's only New Cargoes, Demand Driven Economy & Stranger's SW Economy are available through the in-game [[Expansions Manager]].<br />
<br />
== Taxation ==<br />
*'''Import and export tariffs''' - which are high on some worlds - are automatically added or deducted and this is reflected in prices shown (on the F8 screens) ''quote from [[The Space Traders Flight Training Manual|Elite's Instruction Manual]]''.<br />
*'''Fines for illegality''' (piracy ''etc'') are paid at the orbital stations.<br />
*Other fines and taxes are added by OXPs. <br />
:::Income Tax ([[Diplomancy OXP]] by Commander Day) - also fines for visiting system stations without a visa.<br />
:::Fines for traffic offences ([[Safe Docking]] by Phantor Gorth).<br />
:::Fines for importing illegal goods ([[Smugglers]] by Phkb).<br />
<br />
== Investment ==<br />
This is possible through OXPs<br />
*[[Home System]] ([[User:Phkb|Phkb]]) allows you to invest in your home system with corresponding benefits as you pump more money in<br />
*[[User:Phkb|Hermitage]] (Phkb) allows you to buy a [[Rock hermit]]<br />
<br />
== Ship pricing ==<br />
[https://bb.oolite.space/viewtopic.php?f=6&t=4323 BB Post] by Lestradae (2009):<br />
*I invested some thought in this lately and came up with the not completely new idea of letting the game calculate the prices based on the ship stats. That would have a lot of good consequences. For example, Uber ships would no longer be so Uber if you had to work really long to acquire them. And the quality of a ship would directly reflect into how difficult or easy it was to acquire.<br />
<br />
*I have devised a suggestion how such a calculation could look like. It even produces rather fitting prices. Example results would be, for example:<br />
<br />
:A flying strut: 276₢<br />
:Adder: 29,500₢<br />
:Gecko: 70,760₢<br />
:Asp MkII: 120,960₢<br />
:Cobra MkIII: 150,000₢<br />
:Python: 177,650₢<br />
:Tesoura: 432,000₢<br />
:Fer-de-Lance (0.6 LS): 606,500₢<br />
:Anaconda: 714,150₢<br />
:Imperial Courier: 972,000₢<br />
:Benulobiweed Firefly: 1,110,400₢<br />
:Super Cobra: 1,622,000₢<br />
:The Ultimate Uber Ship*: 345,610,000₢<br />
<br />
* The Ultimate Uber Ship has all the highest stats that I found for any ship - but combined in one ship<br />
<br />
The calculation would take a Cobra MkIII with a base value of 150.000₢ and then modify the price according to the stat differences in combination.<br />
<div class="mw-collapsible mw-collapsed" data-expandtext="Show more on ship pricing" data-collapsetext="Show less" style="overflow:auto;"><br />
'''Basic Ship:'''<br />
<br />
Cobra MkIII:<br />
* Extended Cargo Capacity: 35 tons<br />
* Speed: 0.35 LS<br />
* Energy Banks: 4<br />
* Missile Slots: 4<br />
* Possible Equipment: All<br />
* Manoeuvrability (Pitch/Roll): 1.5<br />
* Gun Mounts: All 4<br />
* Energy recharge rate: 4<br />
* Price without Equipment: 150.000₢<br />
<br />
'''Suggestion for price calculation:'''<br />
<br />
* Cobra MkIII as standard with Standard Price: 150.000₢<br />
* Extended Cargo Capacity: Price is raised/lowered 20%/10% per 20 additional/smaller Cargo Bay<br />
* Speed: Price is doubled (each time)/lowered 20% per 0.1 LS jump up/down<br />
* Energy Banks: Price is raised/lowered 20%/10% per additional/fewer Energy Bank<br />
* Missile Slots: Price is raised/lowered 20%/10% per additional/fewer Missile Slots<br />
* Possible Equipment: Price is taken down 10% per essential equipment piece not available<br />
* Manoeuvrability (Pitch/Roll): Price is raised/lowered 20% per 0.5 additional/lower Pitch/Roll<br />
* Gun Mounts: Price is lowered 10% per unavailable, 5% per reduced capacity Gun Mount<br />
* Energy recharge rate: Price is raised/lowered 20%/10% per 1 additional/lower Energy recharge rate<br />
* Price without Equipment is result of 150.000₢ multiplied by all multipliers!<br />
<br />
Three example calculations might look like this:<br />
<br />
Gecko:<br />
:Extended Cargo Capacity: 3 tons (Price lowered 20% for non-existing cargo space) M=0.8<br />
:Speed: 0.30 LS (0.05 LS down, price lowered 10% as slower) M=0.9<br />
:Energy Banks: 3 (1 Energy Bank less, price lowered 10%) M=0.9<br />
:Missile Slots: 4 (Price stays as is) M=1.0<br />
:Possible Equipment: No MilSh, No ECC (Price lowered 20% as 2 essential EQ N/A) M=0.8<br />
:Manoeuvrability (Pitch/Roll): 2.25 (Price raised 30% as 0.75 additional Pitch/Roll) M=1.3<br />
:Gun Mounts: 1 (Price lowered 30% for 3 unavailable Gun Mounts) M=0.7<br />
:Energy recharge rate: 4 (Price stays as is) M=1.0<br />
:Price without Equipment: 150.000₢ * 0.7 * 0.8"2 * 0.9"2 * 1.3 ~ 47.2% ~ 70.760₢<br />
<br />
Tesoura:<br />
:Extended Cargo Capacity: 135 tons (Price raised 100% due to big cargo space) M=2.0<br />
:Speed: 0.30 LS (0.05 LS down, price lowered 10% as slower) M=0.9<br />
:Energy Banks: 7 (3 Energy Banks more, price raised 60%) M=1.6<br />
:Missile Slots: 4 (Price stays as is) M=1.0<br />
:Possible Equipment: All (Price stays as is) M=1.0<br />
:Manoeuvrability (Pitch/Roll): 1.5 (Price stays as is) M=1.0<br />
:Gun Mounts: 4 (Price stays as is) M=1.0<br />
:Energy recharge rate: 4 (Price stays as is) M=1.0<br />
:Price without Equipment: 150.000₢ * 0.9 * 1.6 * 2 ~ 288% ~ 432.000₢<br />
<br />
Imperial Courier:<br />
:Extended Cargo Capacity: 135 tons (Price raised 100% due to big cargo space) M=2.0<br />
:Speed: 0.35 LS (Price stays as is) M=1.0<br />
:Energy Banks: 8 (4 Energy Banks more, price raised 80%) M=1.8<br />
:Missile Slots: 8 (4 Missile Slots more, price raised 80%) M=1.8<br />
:Possible Equipment: All (Price stays as is) M=1.0<br />
:Manoeuvrability (Pitch/Roll): 1.5 (Price stays as is) M=1.0<br />
:Gun Mounts: 4 (Price stays as is) M=1.0<br />
:Energy recharge rate: 4 (Price stays as is) M=1.0<br />
:Price without Equipment: 150.000₢ * 1.8"2 * 2 ~ 648% ~ 972.000₢<br />
</div><br />
* [https://bb.oolite.space/viewtopic.php?f=2&t=8489 Oolite's default ship prices...nuts?] (2010)<br />
* Disembodied: "There's no sense risking damage or destruction to a very expensive ship"<br />
* Cim (2013): With the current ship prices in Oolite, any pirate other than the entirely non-pragmatic would realise that the average act of piracy nets them a few hundred credits, selling a ship gets tens or often hundreds of thousands of credits, and the odds of surviving each fight are less than 99%. They therefore all sell their ships and retire in luxury. <br />
:...I personally just assume that the player is the subject of a giant practical joke and all the shipyard owners stick three extra zeroes onto the price tags when they see you coming... [https://bb.oolite.space/viewtopic.php?p=205539#p205539 Cim (2013)] - and see Cim's [https://bb.oolite.space/viewtopic.php?p=199912#p199912 idea] for a ship-price/maintenance oxp.<br />
* Cim (2014): ''Basically the idea of piracy for profit is fundamentally broken because the value of any ship's cargo is insignificant next to the capital cost of the ship. (Malacandra)'' My guideline for this is to divide the in-game cost of the ship by 100 (or more). A decent ship will pay for itself in a few good trips, and then you'll be rich (but more likely dead); meanwhile light fighters and third-hand scraps/salvage can probably be picked up for a few hundred (most of which is the pulse laser).<br />
:It also explains things like:<br />
:- why you get pirate groups of three light fighters with pulse lasers, as opposed to two light fighters with military shields and lasers; also, why hardly anyone carries hardheads.<br />
:- why the escape pod only costs 1000: it's mostly premium, not equipment; they expect a fair number of successful claims; it costs most of the price of an unequipped ship. Equipment insured for free is actually a fairly shrewd deal: anyone who can actually afford that equipment probably won't need to use the pod very often. (Cargo not insured is the same idea: for most of the people using the pods the cargo costs more than the ship)<br />
:- why most of the combat potential of a ship is in its equipment [https://bb.oolite.space/viewtopic.php?p=226356#p226356 Cim (2014)]<br />
* But now see Tsoj's [https://bb.oolite.space/viewtopic.php?f=4&t=20900 recent post] (2021).<br />
<br />
----<br />
[[File:New Cargoes.png|thumb|right|400px|Cim's New Cargoes: Specialist Market found on the F4 menu]]<br />
[[File:SOTL Altmap F8.png|thumb|right|400px|Cim's SOTL Altmap: 1st of 3 pages of F8 screen commodities!]]<br />
[[File:Real Life Economics 1.png|thumb|right|400px|SW Economy (& others) introduce new commodities: Quirium fuel, medicine, fresh water, oxygen ''etc'']]<br />
[[File:Real Life Economics 2.png|thumb|right|400px|20 seconds later: check the new ''prices'' of luxuries, narcotics, alloys & firearms, check the ''quantity'' of food above (Real Life Economics)]]<br />
<br />
== Links ==<br />
=== OXPs introducing new commodities ===<br />
*[[Darkside Moonshine Distillery]] - [[Witchfire Whisky]]: Distilleries are only found in a few systems in each chart, often clustered in poor agricultural regions such as the Tortuga Expanse in chart 1. The price for Witchfire grows with distance from the distilleries making cross chart runs very profitable.<br />
*[[Montanas Resource Pack 01]] - [[Quirium Crystal]]s - a luxury like gold, platinum & gemstones<br />
*[[Fuel Tweaks]] - [[Quirium Fuel]]<br />
*[[SW Economy]] - [[Fresh water]], [[Oxygen]] & [[Medicine]] - note this OXP does ''a lot more'' than just introduce 3 new commodities!<br />
<br />
=== Loans ===<br />
* [[Bank of the Black Monks]] - the Order of the Black Monks of Saint Herod<br />
* [[Media:First Finance 0.3.0 beta.oxz | First Finance]] (downloaded {{#downloads:First Finance 0.3.0 beta.oxz}} times) by Ocz: [https://bb.oolite.space/viewtopic.php?f=6&t=17937 Beginning the game with a loan to pay off] - the loan! (2014)<br />
* [[Media:Loan Repayment 0.2.0 alpha.oxz | Loan Repayment]] (downloaded {{#downloads:Loan Repayment 0.2.0 alpha.oxz}} times) - the lenders! by Ocz as above (2014)<br />
<br />
=== OXPs with a broader economic scope ===<br />
*[[Risk Based Economy OXP]] - by [[User:Cim|Cim]]. Makes trade prices depend on government as well as economy (1.77).<br />
*[[Risky Business]] - by [[User:Phkb|Phkb]]. As above. See BB discussion and comparison with Cim's above [https://bb.oolite.space/viewtopic.php?f=4&t=20705 here]. Note that Phkb has been working on combining the two ([https://app.box.com/s/5srbgd1y1i3x7lrhtkfwcwvpdiwecw2i here - 2021]).<br />
<br><br />
*[[Demand Driven Economy]] - by [[User:Redspear|Redspear]]. Gives each of the 8 system economies one profitable import, with tweaks for population, economy size & tech level, thus breaking away from the Computers-Furs profit model.<br />
<br><br />
*[[SW Economy]] - by [[User:Stranger|Stranger]] (2012-21). Introduces trade in medicine, water & oxygen. Totally alters trade & prices to bring in some realism. Planet size & economy size are now also relevant to a planet's production, affecting quantities on offer. Attempts to introduce a 3-polar economy (agricultural / mining / industrial).<br />
<br><br />
*[[Real-Life Economics]] - by Phasted (2012-4). Fluctuating markets which react to your actions. Local solar systems also affect prices. Slightly buggy.<br />
<br><br />
*[[New Cargoes]] - by [[User:Cim|Cim]] 2014. Introduces 100 sub-variants of the regular commodities.<br />
*[[New Cargoes Trading Advice]] - transcript of the Advanced Trading course at [[Lave Academy]]<br />
<br><br />
*[[BlOomberg Markets]] - by Ramirez & [[User:Svengali|Svengali]] 2010-19. News flashes and market changes. Needs [[GNN]] (for news flashes).<br />
<br><br />
*[[Hermitage]] - by [[User:Phkb|Phkb]]. A totally different take. You run a rock hermit and try to make a profit by mining, trading & attracting customers with black markets & bars...<br />
<br />
=== OXPs doing other things but impacting on Economics ===<br />
*[[Diplomancy OXP]] - '''Taxes!''' wars! citizenship! the need for Visas ''etc''. by Commander Day (2017+)<br />
*[[Smugglers]] - black markets, bribes & smuggling compartments (2015+)<br />
<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=2625 Recession.oxp] by JohnSmith (2006) - an escort mission, but set against an economic Recession. This oxp is Broken.<br />
<br />
*[[SOTL Altmap]]: 40 new commodities, new economies, new governments. A new game using the Oolite engine by [[User:Cim|Cim]]. (2017)<br />
<br />
[[File:Vincentz's Icons.png|right|320px|thumb|New Deal's 8 Economies]]<br />
=== Interesting but broken/unfinished OXPs ===<br />
Note that all relevant oxp's would have been broken when Oolite v.1.81 replaced the old unwieldy [[commodities.plist]] & [[illegal_goods.plist]] with the new [[Trade-goods.plist]] (2014). If they have not been updated, they may still be broken.<br />
*[[New Deal]] - by Vincentz (2015). Unfinished. 4 new economies (Agricultural, Industrial, Mining & Financial) each divided into ''developed'' and ''primitive'' versions (with snazzy icons!).<br />
*[https://bb.oolite.space/viewtopic.php?t=8212 Switeck's Shipping v0.5 OXP] (2010) - AI, Economy, and Ship changes. Again, probably broken now.<br />
<br />
=== BB Discussions ===<br />
* Cim's seminal [https://bb.oolite.space/viewtopic.php?f=2&t=16828 discussion] on economics for v.1.82 (2014-5)<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=15061 Another] Cim inspired discussion (2013): Piracy, trade, AI roles, Market prices (Sat Aug 03, 2013 9:29 pm for a bit; Sun Sep 01, 2013 2:57 pm for a bit)<br />
*[https://bb.oolite.space/viewtopic.php?f=6&t=13342 galcop's] BB Thread (2013) - why the laws are the way they are, Governments, Economics & GalCop<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=1848 The 127 Limit] (2006-9)<br />
*[https://bb.oolite.space/viewtopic.php?f=6&t=17366 Commodity sub-types] (2015+): note [[User:Redspear|Redspear]]'s powerful defence of the Oolite trade model.<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=21094 Strangers Roolite Essay on Economics & the Oolite trade model] (2014, posted 2021)<br />
*[https://bb.oolite.space/viewtopic.php?f=7&t=13387 Yes, but how many credits is that?] (2013) - Develops into discussion of ₢:$:£:€ exchange rates<br />
*[https://bb.oolite.space/viewtopic.php?p=161534#p161534 Speculation] on the economics of Biodomes/Orbital stations<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=3073 BB Thread] comparing '''[[Sector1/Maesin|Maesin]]''' (Poor Agricultural Anarchy, TL: 1, 0.8 Billion Small Harmless Furry Rodents with a Productivity of 768 M₢) with '''[[Sector1/Ceesxe|Ceesxe]]''' (Rich Industrial Corporate, TL: 15, 6.4 Billion Fierce Bony Birds with a Productivity of 56,320 M₢): population 8x as big but GNP only 73x bigger! (2007-18)<br />
*[https://bb.oolite.space/viewtopic.php?f=6&t=17269 Thinking about Planet Income classification] (2015): introducing an information/service economy<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=16834 Should Oolite have a financial system?] (2014)<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=5681 More competition in the banking sector] (2009)<br />
*One idea, appearing constantly in the threads above is that the regular non-contracted trading makes little sense. An opposing view will be found here: [https://bb.oolite.space/viewtopic.php?p=250843#p250843 Spara (2016)]<br />
<br />
==== Role of different species ====<br />
* [https://bb.oolite.space/viewtopic.php?p=201020#p201020 BB thread] on the possible relevance of species (2013)<br />
* [[User:Redspear|Redspear]]'s [https://bb.oolite.space/viewtopic.php?p=255750#p255750 analysis] culminating with an alternative [https://bb.oolite.space/viewtopic.php?p=256342#p256342 economic model] based on trade between species (2017)<br />
<br />
==== Game issues ====<br />
* [https://bb.oolite.space/viewtopic.php?f=2&t=2235 Should running costs be much more expensive and frequent?] (2006)<br />
* [https://bb.oolite.space/viewtopic.php?f=6&t=11904 Tax OXP?] thread (2012)<br />
* [https://bb.oolite.space/viewtopic.php?p=233333#p233333 Problems] of having too much money (2015)<br />
<br />
=== Other Discussions ===<br />
*[https://pioneerwiki.com/wiki/Commodity_Prices Pioneer game's ''ideas page'' on economics] - has some useful links such as:<br />
:*[https://robertsspaceindustries.com/comm-link/engineering/13128-The-Star-Citizen-Economy Star Citizen Economy] Economics as a generator for gameplay missions (2013)<br />
::This video clip is good, but lacks context (see how cim's analysis of context in Oolite above can totally change one's understanding of oolite trade). Is the piracy affecting missile production focused on disrupting it - or is it just general piracy, which in this case impacts adversly on the company? This will surely affect the company's response. And, if piracy is bad, will not production move to where the resources are, to prevent disruption of supply chains?<br />
:*[http://www.rocketpunk-observatory.com/startrade.htm Interstellar Trade: A Primer] Costs of trade, costs of a navy. (2001)<br />
:*[https://fermatslibrary.com/s/the-theory-of-interstellar-trade The theory of interstellar trade] Academic economics paper (Prof Paul Krugman, 1978).<br />
<br />
<div style="clear:both"></div><br />
{{:Guide to Economics OXPs}}<br />
<br />
=== Reference ===<br />
* [[Oolite Trading]] for information and strategies<br />
:::and also: [[Trade (classic Elite)]] & [[Trade (FE2/FFE)]]<br />
* [[Career_Options#Trader|Career Options - Trader]] for more detail and useful OXPs<br />
* [[Trading Goods Profit Table]] - a useful summary of [[Vanilla game]] commodity profits<br />
* [[Commodity Calculator]] for calculating commodity prices for OXP markets (uses legacy script from Oolite v.1.0 - v.1.79)<br />
* [https://bb.oolite.space/viewtopic.php?f=4&t=3777 BB thread] on commodities.plist for programmers (2007-11)<br />
* [https://bb.oolite.space/viewtopic.php?f=2&t=18996 Deterministic Oolite] - randomness & markets - vaguely related musings (2017).<br />
<br />
*[[Powers and Organisations]] - analysis of government types<br />
*[[Law]]<br />
*[[TL]] (Technology Level)<br />
<br />
[[Category:Oolite]] [[Category:Factual]] [[Category:Concepts]]</div>Phkbhttps://wiki.alioth.net/index.php?title=Distance_(Oolite)&diff=83457Distance (Oolite)2024-03-18T13:38:39Z<p>Phkb: Updating BB links</p>
<hr />
<div>[[File:Oolite-341.png|thumb|right|Planet, station, ship. Sizes a problem!]]<br />
[[File:Cobrafootball.png|thumb|right|Cobras & Football Fields]]<br />
'''Distances in Oolite can be problematic.'''<br><br />
The two short rules of thumb are: (1) ships are very much oversized, and everything else is very much undersized; and (2) none of the sizes makes sense in relation to human size.<br />
<br><br><br><br />
<br />
*If you work out the size of your Cobra Mk.III (130m×30m×65m), it is as big as a football field (105mx68m)!<br />
*According to the lore, ''thousands'' of ships can fit into an Orbital Station (1km&sup3;).<br />
*This station hovers some 40-60 km over the surface of the planet (while in reality, the International Space Station hovers some 400km over the earth).<br />
*The planet is a mere 1,000 km from the star (while the sun is 150 ''million'' km from the earth).<br><br><br><br />
<br />
'''Why?'''<br />
<br />
Playability trumps realism in the Vanilla game:<br />
<br />
[[User:Ahruman|Ahruman]]: All the ships in Oolite are ridiculously large, even when you don’t take the tiny planets into account. Weren’t they at some stage converted from N ft to N m instead of 0.3048N m? If so, the sizes on feet were merely surprising, not silly. :-p<br />
<br />
[[User:Aegidian|Aegidian]]: Agreeing here!<br />
<br />
The adjustment from feet to meters was necessitated by the increase in scale of the space station to it's full 1km diameter glory. If the ships had stayed scaled by feet then they'd almost all fit in the docking slit sideways - and docking is such an important part of the ''(original [[Classic Elite]])'' experience that it was necessary to scale ships to match.<br />
<br />
The Cobra 3 is particularly huge! ([https://bb.oolite.space/viewtopic.php?p=13236#p13236 Aegidian, Feb 2006])<br />
<br><br><br><br />
<br />
'''There are five possible solutions.'''<br><br><br />
<br />
'''1) Ignore the discrepancies and focus on enjoying the game.'''<br />
{{QuoteText|Text=First of all, remember that Oolite is a game, not a space simulation. This is because it wants to be a game, not a sim. So yes, sizes and distances are all messed up. Ships and stations are too big, planets and suns are too small, and too close to each other. But this is deliberately so, and we are not going to change it.<br><br />
The reason is simple: Realistic sizes and distances don't make a good game. In reality space is so huge that you never would meet anybody else on your journey. Imagine the dozen or so ships you meet in the 500 or so kilometers between witchpoint and planet spread over the realistic 150 million kilometers between Sun and Earth. Even if your direction is only one degree off the perfect line, you would miss them all. And how interesting would that be for the gameplay? And finally, if you had a realistically sized station in front of a realistically sized planet, how would you ever even notice it? A grain of sand in front of a, well, planet. The result would be players in complete loneliness and virtually no interaction with NPCs. An utterly, utterly boring game. Therefore it was the right decision to screw realism in the layout of the planetary systems in Elite and Oolite.|Source=([[Oolite FAQ]])}} <br />
<br />
[[File:Market inquirer2.png|thumb|right|[[Market Inquirer]] uses OU's rather than km's]]<br />
[[File:GalacticAlmanacLave3.png|thumb|right|[[The Galactic Almanac OXZ]] allows a choice of km's, miles, cavezzi, Torans & OU's]]<br />
'''2) Abandon the kilometre.''' <br />
Use [[Astronomical Unit]]s (OU's) instead (some OXPs facilitate this: [[Strangers World]], [[Navigation MFD]], ''etc''). Or adopt Byzantine plethrons or Venetian cavezzi! [[The Galactic Almanac OXZ]] allows a choice of units in both its F4 screen database and its MFD <br><br><br />
<br />
'''3) Redefine the kilometre.'''<br />
{{QuoteText|Text=Ah, the km, pronounced koom (kuː ʊm) of course! An ancient unit the origins of which are long since lost. Legends tell of prehistoric origins, early scientists trying to express distance in terms of wavelengths of light and indeed some planets, most notably Teceinre, have a celebration to honour the legend which consists of pacing up and down in period costume, holding glass balls (representing ancient light sources) and using a so called "foot rule" and eyeglass to admire the wavelengths whilst reciting poetry. Claims that this was started by Teceinre marketeers as a way of selling more of their poetry have consistently been denied.<br><br />
The ludicrous fractions and ratios needed to shoehorn this theory into accepted history or science are however simply not credible and most leading historians hold that it was once defined as a multiple of the average step length of aristos in Old Paris. Sadly through various reformations, rationalisations and standardisation efforts it no longer bears any meaningful relation to its origins and now used mostly by spacers as an indicator of distance generally taken to be the distance a ship would travel in one second when travelling at 0.001 LM or, less formally, half the distance a typical spacer can throw an Ou fruit at standard Isqueder gravity after a few glasses of Tibediedian Arma brandy.|Source=([https://bb.oolite.space/viewtopic.php?p=273439#p273439 Commander James 2020])}}<br />
<br />
'''4) OXPs'''<br />
There are a number of OXPs which move the sun further away from the planet. See [[Guide to Ambience OXPs]].<br><br><br />
<br />
'''5) Join the [[Rescaling experiment]] which is trying to solve this issue.'''<br><br><br />
<br />
''You will notice that all the solutions are partial. The Rescaling experiment is probably the best bet to sort it all out (or at least most of it!).''<br />
<br />
<br />
== Links (a small selection) ==<br />
*BB Discussion thread [https://bb.oolite.space/viewtopic.php?f=2&t=20762 2020] - general<br />
*BB Discussion thread [https://bb.oolite.space/viewtopic.php?f=6&t=18303 2016] - see Norby's concluding post<br />
*BB Discussion thread [https://bb.oolite.space/viewtopic.php?f=2&t=15242 2013] - general<br />
*BB Discussion thread [https://bb.oolite.space/viewtopic.php?p=197457#p197457 2013] - fitting cargo in ships<br />
*BB Pithy Post [https://bb.oolite.space/viewtopic.php?p=163759#p163759 2012] - Commander McLane<br />
*BB Discussion thread [https://bb.oolite.space/viewtopic.php?f=2&t=11102 2011] - what is 1TC of cargo?<br />
*BB Discussion thread [https://bb.oolite.space/viewtopic.php?f=2&t=7503 2010] - ship dimensions<br />
*BB Discussion thread [https://bb.oolite.space/viewtopic.php?f=4&t=5613 2009] - fitting pilots in ships<br />
*BB Discussion thread [https://bb.oolite.space/viewtopic.php?f=2&t=4917 2008] - general<br />
*BB Discussion thread [https://bb.oolite.space/viewtopic.php?f=6&t=5443 2008/9] A step towards solving the f*&%§d-up distances conunundrum<br />
<br />
*Co-ordinates gotten from shift-F [https://bb.oolite.space/viewtopic.php?t=1760 2006]<br />
<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=6777 Going the long way] (2009) See Daddyhoggy's overnight exploits on C64 Elite<br />
<br />
*BB Rescaling Discussion thread [https://bb.oolite.space/viewtopic.php?f=2&t=16159 2013-date]<br />
<br />
[[File:Adder plan to scale (by Selezen).png|thumb|right|Selezen's spacecraft scales (scale plan of an Adder)]]<br />
*[[Guide to Ambience OXPs]] - compares the OXPs which tweak the sun-planet distances<br />
*[[Rescaling experiment]]<br />
*[[Jane's Galactic Shipset]] - rescales the [[Shipset]] of the [[Vanilla game]], based on [[Classic Elite]] sources<br />
*[https://daftworks.co.uk/elite/index.php/Spacecraft_Scales Selezen on spacecraft scales] with links to a discussion thread (2011)<br />
<br />
*[[Newtonian modelling]]<br />
*[[Relative Gravity]]<br />
<br />
*[[Light Mach]] - this unit has similar issues!<br />
*[[Time]] - and there are issues here too!<br />
<br />
<br />
[[Category:Oolite]]<br />
[[Category:Factual]]<br />
[[Category:Concepts]]</div>Phkbhttps://wiki.alioth.net/index.php?title=Deep_Space_Dredger&diff=83456Deep Space Dredger2024-03-18T13:38:20Z<p>Phkb: Updating BB links</p>
<hr />
<div>{{Semantic Infobox ShipStats Oolite| title=Deep Space Dredger<br />
|image = [[Image:SpaceDredger.png|250px]]<br />
|dimensions = 690 × 180 × 880<br />
|width = 690m<br />
|height = 180m<br />
|length = 880m<br />
|capacity = 500 TC<br />
|capacityext = N/A<br />
|maxspeed = 0.10 LM<br />
|maneuverability = Roll: 0.1<br />Pitch: 0.1<br />
|energybanks = 31<br />
|energyrecharge = 20.0<br />
|gunmounts = 2 ball turrets<br />
|missileslots = 0<br />
|shieldboost = No<br />
|milshields = No<br />
|hyperspace = No<br />
|isoxp = OXP<br />
|isplayer = No<br />
|baseprice = N/A<br />
}}<br />
<br />
Author: Sabre<br />
== Overview ==<br />
Space Dredgers operate mainly in deep space, scooping up wreckage, hydrogen and space dust for later processing. Space Dredgers are occasionally encountered in the border of the space lanes. Commanders choosing to dock with a Dredger can take advantage of its well equipped shipyard or the chance to trade.<br />
Attacking a Dredger is unwise, as it is well defended by a squadron of [[Sabre]] fighters. The Dredger is not available to the player, although second hand Sabre fighters are occasionally available on the open market.<br />
<br />
== How to dock ==<br />
Docking problems are similar to the ones encountered with the [[Behemoth]]: you are trying to dock with a non-stationary object. Don't forget that the Dredger will occasionally execute a 180 degrees somersault to avoid collisions, during which docking seems quite impossible. For docking force it to a halt with the docking computer. After this you can cancel the automatic docking and do it manually.<br><br />
Starting with Oolite 1.74 most carriers will react on a docking request by pressing shift-L.<br />
<br />
== Trading ==<br />
Space Dredgers sell their salvaged goods (alloys, and sometimes other commodities similar to those sold by Rock Hermits) at good prices. They are always in the market for food and drink (wines & liquers) and will pay over the odds!<br />
<br />
[[File:Missile, ECM hardened missile, Quirium Cascade Mine, Repair Bots, Salvage Missile.png|thumb|right|279px|Missile bay icons: Missile, ECM-hardened missile, Quirium cascade bomb, Repair nanobots (oxp), '''Salvage missile''' (''this'' oxp)]]<br />
== Salvaging (Salvage missile) ==<br />
With version 2.0 the dredgers have stepped into the salvage business. In level 9 and higher systems, special '''salvage missiles''' are offered to a clean player (185₢). These "missiles" are actually drones. When fired at a derelict ship, a salvage drone will try to penetrate the outer hull and connect to the main computer. In 90% of cases, an abandoned ship is still sufficiently intact to be controlled; the drone will then try to contact a nearby dredger. When a dredger is found, the drone will instruct the auto-pilot to fly to the dredger and dock with it. Pay-out is based on the ship's mass and cargo. Small ships are probably not worth salvaging but big ships give a high pay-out. Just be aware that the drone can only handle ships that fit through the docking slid of a dredger. It can't control a really big ship, but an anaconda is salvageable. ('''Dredger Droid Missiles''' are only used by NPCs).<br />
<br />
<br />
The derelict may find pirates on his way that try to destroy the ship to obtain its cargo. A ship flying on autopilot can't defend itself, so it is up to the salvager to protect the derelict's voyage. When the derelict ship docks save with a dredger an amount of money is transferred to the salvager, based on the ship's mass and the cargo load. <br />
<br />
This oxp interfaces with the [[Towbar]] oxp to create a new in-game [[Career Options|career opportunity]]: salvage operator<br />
<br />
<br />
<br />
== Download ==<br />
*[[Media:DeepSpaceDredger.oxz|DeepSpaceDredger.oxz]] 2.4.10 (downloaded {{#downloads:DeepSpaceDredger.oxz}} times).<br />
[[File:Dsd samples.png|thumb|200px|right|Deep Space Dredger facelift samples]]<br />
There is a facelift for Deepspace Dredgers, which can be downloaded via the Download Manager, or here: [[Media:DeepSpaceDredgers_Facelift_1.1.oxz|DeepSpaceDredgers_Facelift_1.1.oxz]]<br />
<br />
Old versions:<br />
<br />
* Download [https://app.box.com/shared/kh12vlazdi ''Deep Space Dredger 2.4.6''] OXP (size 19.8 MB, for Oolite 1.73+. It needs a computer with shaders capability)<br />
* Download [https://app.box.com/shared/j99czklv3y ''Deep Space Dredger 2.3.1''] OXP (size 11.1 MB, for Oolite 1.73+. Has much more detailed texture than v 2.2.7)<br />
* Download [https://app.box.com/shared/yi4ly8lmu0 ''Deep Space Dredger 2.2.8''] OXP (size 2.1 MB, for Oolite 1.72+)<br />
* Download [[Media:Dredger_1.2.zip | ''Deep Space Dredger 1.2'']] OXP (for Oolite 1.65+)<br />
<br />
== Version requirement ==<br />
* Deep Space Dredger 1.2 needs minimum Oolite 1.65. For additions in deep space it needs Oolite 1.71+<br />
* Version 2.0 or higher has three additional dredger models and some extra functions.<br />
<br />
== Tweaks ==<br />
<br />
*Tweak to allow fast docking by Docking Computer. One needs to do this for each of the four variants of the dredger. See code [https://bb.oolite.space/viewtopic.php?p=271929#p271929 here]. By '''niteowl''' (2020)<br />
*[[How to tweak OXZ's]]<br />
<br />
== History ==<br />
* Version 2.4.10 Fixed semicolon problems in Mac by hoqllnq.<br />
* Version 2.4.9 Subentity definitions converted to the new format by phkb.<br />
* Version 2.4.8 A fix in dredgersDockingAI reported by Welle242.<br />
* Version 2.4.7 SuperDredger get market_capacity = 255 to match to Superhub. Market definitions converted to js for Oolite 1.82 by spara. OXZ version packaged by Norby.<br />
* Version 2.4.6 Introduced frame-callback for the dredger doors for a smoother movement than with timers when used with 1.75.1+.<br />
* Version 2.4.5 Raised minimum Oolite to 1.74<br />
* Version 2.4.4 Added custom escort positions that will start working with Oolite 1.75 upwards.<br />
* version 2.4.3: Fixed a casing bug in the JS system that will generate bugs after Oolite 1.74.2 (Also fixed this bug in the smaller packages v 2.2.8 and v 2.3.1)<br />
* version 2.4.0: All ships have now have normal maps (By Captain Berf). Normal maps simulate a surface relief on textures. You need a computer with shader capability or you will see no difference with v 2.3<br />
* version 2.3.0: All ships have new textures (By Captain Berf). The two biggest ships now also have bigger docking bays. Raised minimum Oolite version to 1.73.<br />
* version 2.2.7: Bugfix of 2.2.7.<br />
* version 2.2.6: Added more variation in the chosen derelicts. (Contains a serious bug, please update immediately)<br />
* version 2.2.5: In previous versions the "special" price-list for commodities was never used. <br />
* Version 2.2.4 Fixed the commodity definition for gold/platinum/gems. Was always defined in Tons. (This bug can leads to crashing while docking at a dredger since 1.73)<br />
* Version 2.2.3 Raised maximum salvageble weight from 500 000 to 1 000 000 (Hamadryad = 985 000). Made it work for Oolite 1.74.<br />
* Version 2.2.2 Recognises now bigShips.oxp. When present, that oxp will control part of the ship additions in the spacelane.<br />
* Version 2.2 Added Oolite 1.72 compatibility.<br />
* Version 2.0 Added 3 new Dredger ships from the hand of Sabre with new scripting by Eric Walch and Little Bear.<br />
* Version 1.2 Bug fix in the docking routine.<br />
* Version 1.1 Addition by Eric Walch: Added a JavaScript for Oolite 1.71+ that generates encounters with these Dredgers in deep space. For debugging purposes there is always one added in the first system after a restart. When flying far enough in deep space there is a guaranteed encounter in that system.<br />
* Version 1.0 Original by Sabre<br />
<br />
== Links ==<br />
*[https://bb.oolite.space/viewtopic.php?f=4&t=2129 Deep Space Dredger] topic (2006-date).<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=1804 Space Dredgers ??!!! What is that...] (2006-9)<br />
*Author: [[User:Draco Caeles|Draco Caeles]]<br />
*[[Sabre]]<br />
<br />
{{ship-OXP}}<br />
{{activity-OXP}}<br />
{{dockables-OXP}}<br />
[[Category:Oolite carriers]]</div>Phkbhttps://wiki.alioth.net/index.php?title=DeepSpacePirates&diff=83455DeepSpacePirates2024-03-18T13:38:15Z<p>Phkb: Updating BB links</p>
<hr />
<div>==Overview==<br />
<br />
This is just a basic oxp that increases the chance of an encounter with pirates outside the space lanes and in deep space. This is the area were the pirates start their career and do their combat practice. Some of these pirates still have a clean status as they never have been caught in the action by an official copper or never let a victim escape to report the crime. <br />
<br />
Minimum version requirement Oolite 1.74 (version 1.3)<br />
<br />
===Little Bear's famous words:===<br />
"Even pirates need to sleep / rest / make repairs ''etc''. As they're offenders or fugitives, it make sense for them to park up outside the space lanes once they've filled their holds. The Captain of a pirate Python may perhaps have a fixed 'meeting point' way outside the space lanes. He may meet up with fellow criminals who have Clean records. The booty is transferred and the 'fence' takes it to the station in return for a cut of the profits. Naturally you don't want to do this sort of thing in the Space Lanes were a passing Cop might notice and give the 'fence' an offender tag (ruining his usefulness). A pirate might also have to shut down his main reactor to fix battle damage. It would be suicide to do that the space lanes where any passing Cop or Hunter might blast your helpless craft apart. I'd vote for quite a few pirates outside the space lanes.<br />
<br />
This explains why traders tend to stick to the space lanes. At least they are patrolled by Cops. Even in an Anarchy there at least a chance that a bounty hunter might help you out or a fellow trader hear your distress call and come to your hail. But outside the space lanes, if you do run into a band of ruffians, there's nobody about to hear your screams..."<br />
<br />
===Background of this oxp===<br />
The original Elite was written for slow computers that could not cope with too much action. So ships were only added near the player's location. When the player left them behind they were removed from the system. (Player-centred game.) <br />
<br />
Oolite was developed for much faster computers. Initially the system is populated. Then the player is put in the middle of it. A lot of action happens in places the player cannot see. <br />
<br />
But more ships mean more calculations, so a choice was made to place ships along the routes a player is likely to travel (i.e., the space lanes: from the witch point beacon to the planet, and, to a lesser extent, from the planet to the sun.) Outside the lanes space is normally quite empty. (Ships spotted outside the lanes were probably added by some other OXP.) <br />
<br />
DeepSpacePirates.OXP (DSP) was designed to add ships outside the space lanes--based on the player's location, direction and speed. Random ships can be encountered anywhere in the universe, bringing a realism to the player's experience. <br />
<br />
Without this OXP the area outside the space lanes is free of piracy. Players often make a small detour and leave the lanes to avoid lurking pirates within. <br />
<br />
This OXP makes travel within the lanes a better option by increasing the player's chance of getting assistance from [[GalCop (Police)]] and/or from bounty hunters who are only too willing to make a kill. Leaving the lanes is more like a short-cut through a dark alley: no more guarantees of a risk-free flight.<br />
<br />
===Encounters===<br />
Currently it adds pirates and asteroids. Frequency of adding depends on government type and distance to the spacelane. The chance of adding is much higher just outside the lanes than in deep space.<br />
<br />
==Download==<br />
Latest version available on the Expansion Manager and here: [[Media:DeepSpacePirates-1.9.oxz|Deep Space Pirates v1.9]]<br />
<br />
Older versions:<br />
<br />
[https://app.box.com/shared/4bi9ngqr72 ''Deep Space Pirates 1.3''] For use with Oolite 1.74 until 1.78.<br />
<br />
==Version History==<br />
<br />
*Version 1.9 <br />
:Changes Library Config for AddOns settings from integer to boolean. ([[User:Dybal|Dybal]])<br />
*Version 1.8 <br />
:Fixes bug when adding pirates. (Dybal)<br />
*Version 1.7 <br />
:Removal of derelicts and asteroids created by the OXP can be controlled by Library OXP Interfaces Screen (F4). (Dybal)<br />
*Version 1.6 <br />
:Don't remove created ships that were turned into derelicts. (Dybal)<br />
*Version 1.5 <br />
:Raised minimum Oolite version to 1.80.<br />
*Version 1.4 <br />
:Raised minimum Oolite version to 1.77.<br />
*Version 1.3 <br />
:Adapted to Oolite 1.74.<br />
*Version 1.2 <br />
:Adapted to Oolite 1.73.<br />
*Version 1.1 <br />
:More pirates in bad systems. pirates now can have cargo.<br />
*Version 1.0 <br />
:First version for oolite 1.72.<br />
<br />
== Links ==<br />
*[[Space Crowds]] - a less player-centric version of Deep Space Pirates - and with a couple of amplifying oxp's<br />
<br />
*[[Spacelane]]<br />
<br />
*[https://bb.oolite.space/viewtopic.php?f=3&t=6932 Updating the OSE deep space pirates script] (2009)<br />
*[https://bb.oolite.space/viewtopic.php?f=2&t=18919 How Does Avoiding the Spacelanes Break Gameplay?] (2017) includes various ideas for tweaking DSP to persuade players to stay in the space lanes just as the NPC's do! To spawn Thargoids, to spawn boulders/splinters/debris. Or to spawn convoys which are copying the player's technique.<br />
<br />
==Quick Facts==<br />
{{OXPLevel|3|4}}<br />
{{IconOXP|ooVersion="1.80"|oxpCPU="Average"|oxpMEM="Average"|oxpGPU="Average"}}<br />
{{Infobox OXPb| title = Deep Space Pirates<br />
|version = 1.9<br />
|release = 2020-11-27<br />
|features = Adds pirates in deep space<br />
|license = (C)2009-2014<br />
|category = Ambience OXPs<br />
|author = [[User:Eric Walch|Eric Walch]]<br />
|download = [[#Download|See Download]]<br />
|feedback = [https://bb.oolite.space/viewtopic.php?p=64406 BB-Link]<br />
}}<br />
{{mechanics-OXP}}<br />
<br />
==Gameplay and Balance indicator==<br />
[[Image:tag-colour-red.png]]</div>Phkb