Difference between revisions of "Jaguar Company/Version History"

From Elite Wiki
m
 
(6 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 +
__FORCETOC__
 +
== Release versions ==
 +
'''v2.5r29 (2013-11-10)'''
 +
* '''This OXP now requires [[Cabal_Common_Library|Cabal Common Library]].'''
 +
* Proper integration for Oolite v1.77 and newer with the interface screen for base locations.
 +
* Added check for blackbox + software patch for base locations in the <code>$addInterface()</code> function.
 +
* Renamed the vertex and fragment shaders.
 +
* Rewritten <code>$listNames()</code> to use Cabal Common Library for truncating, padding and creating columns.
 +
** Oolite v1.76.1 and older use the original method of padding rows. ''Spaces.''
 +
** Oolite v1.77 and newer use Cabal Common Library v1.7 <code>[[Cabal_Common_Library_Doc_Functions#strAdd2Columns.28.29|strAdd2Columns()]]</code> and <code>[[Cabal_Common_Library_Doc_Functions#strAddIndentedText.28.29|strAddIndentedText()]]</code> to create the rows.
 +
* Removed some dead/unused code.
 +
* Fixed ghost messages appearing on the player's console. I forgot <code>[[Oolite JavaScript Reference: Player#consoleMessage|player.consoleMessage()]]</code> isn't distance dependant. It obviously isn't, however these minor bugettes happen from time to time. ;)
 +
* Multiple rescue news implementation.
 +
* Clean up of code in <code>[[Oolite JavaScript Reference: World script event handlers#guiScreenChanged|guiScreenChanged()]]</code>.
 +
* Changed key combination to show list of base locations to F7, F5.
 +
** Oolite v1.77 and newer use the interface API when docked.
 +
* Lowered max cargo space to 10TC to explain extra speed.
 +
* AI tweaks.
 +
* New ship to patrol the area around the base.
 +
* Allow auto dock with the base once you have the black box.
 +
* Only use one mission variable. Old mission variables will be converted.
 +
* Changed the operation of the black box tracker.
 +
** 'n' toggles the ASC tracker on or off.
 +
** 'b' toggles the holo tracker on or off.
 +
* <code>jaguar_company_attackers.js</code> now called <code>jaguar_company_ships.js</code>
 +
** Common code moved here and is hooked in to the ship script when a ship is spawned.
 +
* Check the Patrol ships, tug, buoy and miner within the code for the base.
 
'''v2.4 (2012-12-27)'''
 
'''v2.4 (2012-12-27)'''
 
* Bug fix for spawning Jaguar Company. Potential to spawn the base at all times if the [[Galactic_Navy|Galactic Navy]] wasn't present.
 
* Bug fix for spawning Jaguar Company. Potential to spawn the base at all times if the [[Galactic_Navy|Galactic Navy]] wasn't present.
Line 11: Line 38:
 
* Changed some of the player [[Oolite_JavaScript_Reference:_Player#consoleMessage|consoleMessage's]] back into [[Oolite_JavaScript_Reference:_Player#commsMessage|commsMessage]].
 
* Changed some of the player [[Oolite_JavaScript_Reference:_Player#consoleMessage|consoleMessage's]] back into [[Oolite_JavaScript_Reference:_Player#commsMessage|commsMessage]].
 
* Only insert news into Snoopers about battle help if more than 10 minutes has passed since the last news item was inserted.
 
* Only insert news into Snoopers about battle help if more than 10 minutes has passed since the last news item was inserted.
* If you set $alwaysSpawn to true with [[OXPConfig]] the base will be spawned if it doesn't exist.
+
* If you set <code>$alwaysSpawn</code> to '''true''' with [[OXPConfig]] the base will be spawned if it doesn't exist.
 
* Patrol ships follow the [[Galactic_Navy|Galactic Navy]].
 
* Patrol ships follow the [[Galactic_Navy|Galactic Navy]].
 
** If by some freak accident, all of the [[Galactic_Navy|Galactic Navy]] is destroyed, the patrol ships will go back to base if it exists. Otherwise they will patrol the witchpoint to planet lane.
 
** If by some freak accident, all of the [[Galactic_Navy|Galactic Navy]] is destroyed, the patrol ships will go back to base if it exists. Otherwise they will patrol the witchpoint to planet lane.
 
* New reputation level. Shows the location of Jaguar Company Bases in the current galaxy.
 
* New reputation level. Shows the location of Jaguar Company Bases in the current galaxy.
 
** Re-implementation of the game random number generators for <code>system.pseudoRandomNumber</code> and <code>system.scrambledPseudoRandomNumber</code>, to allow checking of all the systems in the current galaxy. The system versions only gives back a value for the current system.
 
** Re-implementation of the game random number generators for <code>system.pseudoRandomNumber</code> and <code>system.scrambledPseudoRandomNumber</code>, to allow checking of all the systems in the current galaxy. The system versions only gives back a value for the current system.
** Oolite v1.76.1 or older only show a list of system names. Go to the long range chart then select the status screen (F6, F6, F5). Borrowed some code from Spara's [[Trophy_Collector|Trophy Collector OXP]] for this.
+
** Oolite v1.76.1 and older only show a list of system names. Go to the long range chart then select the status screen (F6, F6, F5). Borrowed some code from Spara's [[Trophy_Collector|Trophy Collector OXP]] for this.
** Oolite v1.77 or newer display the locations on the long range chart. Uses the new object method of <code>mission.markSystem</code> so it won't intefere with other OXPs. (Hopefully)
+
** Oolite v1.77 and newer display the locations on the long range chart. Uses the new object method of <code>mission.markSystem</code> so it won't intefere with other OXPs. (Hopefully)
 
'''v2.3 (2012-12-08)'''
 
'''v2.3 (2012-12-08)'''
 
* Integration with [[Snoopers|Snoopers OXP]] if available.
 
* Integration with [[Snoopers|Snoopers OXP]] if available.
Line 48: Line 75:
 
** You can remove the hostile mark by going to a new galaxy. This will also remove your reputation.
 
** You can remove the hostile mark by going to a new galaxy. This will also remove your reputation.
 
* Welcome screen on docking.
 
* Welcome screen on docking.
* Check for player helping. Thanks to Wildeblood for pointing out the then invisible world script event 'shipAttackedOther'.
+
* Check for player helping. Thanks to Wildeblood for pointing out the then invisible world script event <code>shipAttackedOther</code>.
 
** There's a 10% chance of being seen in the heat of battle. A kill is always seen and rewarded highly.
 
** There's a 10% chance of being seen in the heat of battle. A kill is always seen and rewarded highly.
 
** If the player has enough reputation in combat then the communications buoy will transmit a beacon code of 'J' for the player to follow on the ASC. Wait a couple of minutes before checking, the tug pushing the communications buoy out has to reach the drop off point before the beacon activates.
 
** If the player has enough reputation in combat then the communications buoy will transmit a beacon code of 'J' for the player to follow on the ASC. Wait a couple of minutes before checking, the tug pushing the communications buoy out has to reach the drop off point before the beacon activates.
Line 57: Line 84:
 
** Tracker deactivates if the player is close to the patrol ships.
 
** Tracker deactivates if the player is close to the patrol ships.
 
* If Jaguar Company is forced out of interstellar space, they will all use 1 witchpoint exit even though they are all independent entities and not escorts or part of a group.
 
* If Jaguar Company is forced out of interstellar space, they will all use 1 witchpoint exit even though they are all independent entities and not escorts or part of a group.
* Position and name of the base is now fixed. Uses 'system.scrambledPseudoRandomNumber(salt)'.
+
* Position and name of the base is now fixed. Uses <code>system.scrambledPseudoRandomNumber(salt)</code>.
 
** Conjunction of the witchpoint, planet and sun is checked for so the base doesn't end up in the middle of the planet.
 
** Conjunction of the witchpoint, planet and sun is checked for so the base doesn't end up in the middle of the planet.
  
 
+
== WIP versions ==
'''WIP versions'''
 
 
 
 
'''v1.8 (2012-08-09)'''
 
'''v1.8 (2012-08-09)'''
 
* Use performFlyToRangeFromDestination rather than performFlee in the MOVE_AWAY state of patrol AI.
 
* Use performFlyToRangeFromDestination rather than performFlee in the MOVE_AWAY state of patrol AI.
Line 73: Line 98:
 
* Commodity pricing.
 
* Commodity pricing.
 
* withinStationAegis uniform binding is actually a boolean, not a float as the wiki stated.
 
* withinStationAegis uniform binding is actually a boolean, not a float as the wiki stated.
** gave this 'OpenGL error: "invalid operation" (0x502) ...' in the test log.
+
** gave this <code>OpenGL error: "invalid operation" (0x502) ...</code> in the test log.
 
'''v1.7 (2010-07-21)'''
 
'''v1.7 (2010-07-21)'''
 
* Simplified the intercept AI.
 
* Simplified the intercept AI.
Line 103: Line 128:
 
* Reduced accuracy to 7.5
 
* Reduced accuracy to 7.5
 
* Added in "randomshipnames" = no, into script_info of ship data.
 
* Added in "randomshipnames" = no, into script_info of ship data.
* Uses [[OXPConfig]] to change logging levels. Set 'displayAll' in [[OXPConfig]] to show this OXP.
+
* Uses [[OXPConfig]] to change logging levels. Set <code>displayAll</code> in [[OXPConfig]] to show this OXP.
 
'''v1.3 (2012-06-18)'''
 
'''v1.3 (2012-06-18)'''
 
* Fixed the decal rotation.
 
* Fixed the decal rotation.
Line 118: Line 143:
 
'''v1.0 (2012-06-07)'''
 
'''v1.0 (2012-06-07)'''
 
* Initial WIP release.
 
* Initial WIP release.
 +
 +
[[Category:Oolite expansion packs]]

Latest revision as of 19:57, 23 January 2016

Release versions

v2.5r29 (2013-11-10)

  • This OXP now requires Cabal Common Library.
  • Proper integration for Oolite v1.77 and newer with the interface screen for base locations.
  • Added check for blackbox + software patch for base locations in the $addInterface() function.
  • Renamed the vertex and fragment shaders.
  • Rewritten $listNames() to use Cabal Common Library for truncating, padding and creating columns.
    • Oolite v1.76.1 and older use the original method of padding rows. Spaces.
    • Oolite v1.77 and newer use Cabal Common Library v1.7 strAdd2Columns() and strAddIndentedText() to create the rows.
  • Removed some dead/unused code.
  • Fixed ghost messages appearing on the player's console. I forgot player.consoleMessage() isn't distance dependant. It obviously isn't, however these minor bugettes happen from time to time. ;)
  • Multiple rescue news implementation.
  • Clean up of code in guiScreenChanged().
  • Changed key combination to show list of base locations to F7, F5.
    • Oolite v1.77 and newer use the interface API when docked.
  • Lowered max cargo space to 10TC to explain extra speed.
  • AI tweaks.
  • New ship to patrol the area around the base.
  • Allow auto dock with the base once you have the black box.
  • Only use one mission variable. Old mission variables will be converted.
  • Changed the operation of the black box tracker.
    • 'n' toggles the ASC tracker on or off.
    • 'b' toggles the holo tracker on or off.
  • jaguar_company_attackers.js now called jaguar_company_ships.js
    • Common code moved here and is hooked in to the ship script when a ship is spawned.
  • Check the Patrol ships, tug, buoy and miner within the code for the base.

v2.4 (2012-12-27)

  • Bug fix for spawning Jaguar Company. Potential to spawn the base at all times if the Galactic Navy wasn't present.
  • Bug fix for checking the safe zone around the base. Wasn't checking to see if it actually existed.
  • Main world script saves the last system ID that was visited for interstellar space.
  • Timer on start up for the worldscripts has been added to allow each worldscript to be loaded in. Stops a potential dependency error happening.
  • Stray commas in the route list arrays removed.
  • Welcome code has been cleaned up.
  • missiontext.plist and descriptions.plist cleaned up.
  • Altered all player consoleMessage's to show messages for the default time limit.
  • Changed all player commsMessage's to consoleMessage.
  • Changed some of the player consoleMessage's back into commsMessage.
  • Only insert news into Snoopers about battle help if more than 10 minutes has passed since the last news item was inserted.
  • If you set $alwaysSpawn to true with OXPConfig the base will be spawned if it doesn't exist.
  • Patrol ships follow the Galactic Navy.
    • If by some freak accident, all of the Galactic Navy is destroyed, the patrol ships will go back to base if it exists. Otherwise they will patrol the witchpoint to planet lane.
  • New reputation level. Shows the location of Jaguar Company Bases in the current galaxy.
    • Re-implementation of the game random number generators for system.pseudoRandomNumber and system.scrambledPseudoRandomNumber, to allow checking of all the systems in the current galaxy. The system versions only gives back a value for the current system.
    • Oolite v1.76.1 and older only show a list of system names. Go to the long range chart then select the status screen (F6, F6, F5). Borrowed some code from Spara's Trophy Collector OXP for this.
    • Oolite v1.77 and newer display the locations on the long range chart. Uses the new object method of mission.markSystem so it won't intefere with other OXPs. (Hopefully)

v2.3 (2012-12-08)

  • Integration with Snoopers OXP if available.
  • Pilot name for patrol, tug and miner ships.
  • Pilot name transfered to escape pod and then used in rescue message on arrival at a station.
  • Use pilot's name if available in attack messages. Otherwise use the displayName.
  • Use pilot's name if available as the Snoopers news source. Otherwise use a random name.
  • Force Snoopers news to be shown at the base.
  • New const in the main script for Snoopers Error Codes.
  • Make sure thargoids/tharglets are ALWAYS seen as hostile.

v2.2 (2012-12-02)

  • Wrong variable in the buoy script.
  • Corrected a logic check in the asteroid script.
  • Optimized the cleanup code in jaguar_company_attackers.js
  • Fewer boulders.

v2.1 (2012-12-02)

  • Thargoids and tharglets always returns true in $isHostile check.
  • There is a safe zone of 30km around the base.
    • NB: The safe zone does not extend to known attackers.
  • Took out some ship script event handlers and AI sendScriptMessage functions from the base, buoy, miner and tug ship scripts that is inserted by $addFriendly.
  • Fixed colour bug with the tracker. Didn't start off red if the target was behind the player.
  • Fixed name error for $performJaguarCompanyAttackTarget in $addFriendly.
  • Fixed sun check error if no sun exists.

v2.0 (2012-11-30)

  • First release out of WIP.
  • Moved route code fully into the main worldscript.
  • New worldscript for attackers code. Remember attackers. Even players who jump system.
    • Friend or Foe checks all ships in scanner range.
    • The first few shots are ignored as "friendly fire". Reputation can be lost!
    • You can remove the hostile mark by going to a new galaxy. This will also remove your reputation.
  • Welcome screen on docking.
  • Check for player helping. Thanks to Wildeblood for pointing out the then invisible world script event shipAttackedOther.
    • There's a 10% chance of being seen in the heat of battle. A kill is always seen and rewarded highly.
    • If the player has enough reputation in combat then the communications buoy will transmit a beacon code of 'J' for the player to follow on the ASC. Wait a couple of minutes before checking, the tug pushing the communications buoy out has to reach the drop off point before the beacon activates.
    • The market for the base will change if the player has enough reputation.
  • The communications buoy will slowly rotate to point towards the patrol ships on release from the tug.
  • Black Box Tracker points to the nearest patrol ship.
    • Uses new visual effects code for Oolite v1.77 and newer, otherwise a simple invisible object hanging above the closest patrol ship that can be tracked with the Advanced Space Compass.
    • Tracker deactivates if the player is close to the patrol ships.
  • If Jaguar Company is forced out of interstellar space, they will all use 1 witchpoint exit even though they are all independent entities and not escorts or part of a group.
  • Position and name of the base is now fixed. Uses system.scrambledPseudoRandomNumber(salt).
    • Conjunction of the witchpoint, planet and sun is checked for so the base doesn't end up in the middle of the planet.

WIP versions

v1.8 (2012-08-09)

  • Use performFlyToRangeFromDestination rather than performFlee in the MOVE_AWAY state of patrol AI.
  • Patrol ships launch from base on startup.
  • Patrol ships dock after returning to base.
  • New AI and script for the base.
  • Added turrets to the base.
  • Stopped the rotation of the base.
    • Found out stations stop rotating when attacking and don't start rotating after.
  • Commodity pricing.
  • withinStationAegis uniform binding is actually a boolean, not a float as the wiki stated.
    • gave this OpenGL error: "invalid operation" (0x502) ... in the test log.

v1.7 (2010-07-21)

  • Simplified the intercept AI.
  • Heavily commented the scripts and AIs.
  • Stray comma in pirate-victim-roles.plist removed.
  • Used Obj2DatTexNorm.py on the models and preserved the material names.
  • Modified the shipdata to use the material names.
  • Relaxed distance code to cope with battalion sized groups. (64 ships tested)

v1.6.2 (2012-07-14)

  • Bug fix for the ship script.
  • Bug fix to the waypoint AI. Never exited the stock AI.
  • Cascade Weapon detection actually works for pre v1.77
  • Took the opportunity to clean up some files and re-do the textures.

v1.6 (2012-07-12)

  • There is now no concept of leaders and wingmen. All ships keep in a group.
  • Complete rewrite of the AI to reflect the above.

v1.5 (2012-07-08)

  • Vertex and fragment shaders for the base.
  • Docking bay looks like a rippling pool.

v1.4 (2012-07-04)

  • Flee for Q-Bombs.
  • Be more mercenary when in intercept mode.
  • Get back into formation after fighting.
  • Port and starboard flashers.
  • Moved the naming scheme into the ship script.
  • New proto base. Doesn't spawn yet.

v1.3.1 (2012-06-21)

  • Simplified the AI for the leader.
  • Reduced accuracy to 7.5
  • Added in "randomshipnames" = no, into script_info of ship data.
  • Uses OXPConfig to change logging levels. Set displayAll in OXPConfig to show this OXP.

v1.3 (2012-06-18)

  • Fixed the decal rotation.
  • Added lots of new ship names. Altered one for profanity reasons.
  • Tweaked all the AI's.

v1.2 (2012-06-13)

  • Cleaned up the scripts with JSLint.
  • navyPresent variable in jaguar_company.js fixed.
  • Tightened up the escort formation distances.

v1.1 (2012-06-10)

v1.0 (2012-06-07)

  • Initial WIP release.