Difference between revisions of "OXPConfig"

From Elite Wiki
m (updated categorization)
(OXPConfig2.0)
Line 1: Line 1:
 
{{Infobox OXP| title = OXPConfig
 
{{Infobox OXP| title = OXPConfig
|image = [[Image:OXPConfig_compatible.png|150px]]
+
|image = [[Image:OXPConfig_logo.png|150px]]
 
|download = [[#Download|See Download]]
 
|download = [[#Download|See Download]]
|story = 2009-09-04
+
|story = 2010-12-09
 
|ships = No
 
|ships = No
 
|stations = No
 
|stations = No
Line 9: Line 9:
 
|alternativeHUD = No
 
|alternativeHUD = No
 
|soundSet = No
 
|soundSet = No
|version = 1.0.8
+
|version = 2.0
 
|category = Misc OXPs
 
|category = Misc OXPs
 
|author = Svengali
 
|author = Svengali
 
}}
 
}}
 
===Overview===
 
===Overview===
'''''Ouch, that is weird! Why doesn't it work? What the heck...!?!'''''
 
  +
This tool gives you the ability to configure several OXPs. It changes internal (local) settings to enable (or disable) logging or audio functions and special settings to reckognize errors or to avoid clashes.
   
Have you ever seen such comments about oxps? But not always it is an error in this particular oxp. Very often it happens that several oxps are trying to do their business at the same time (e.g. displaying a missionscreen or playing a music- or soundfile). Usually the last oxp overrides the other commands and everything is fine. But not always and then very strange things can happen.
 
  +
OXPConfig runs without the debug-console and is primarily meant for non-scripters (and lazy scripters), but if you really need debug-options it is highly recommended to install the Debug.oxp (written by Ahruman) and if necessary the console (written by Ahruman and ported to Windows by Kaks).
   
For a user the only chance to avoid it is to remove oxps from the AddOns folder, but this is not a very elegant way to handle this. And with more than 200 oxps out there it is a timeintensive task, sorting them, moving them in and out - every day. Again and again. And before [[User:Eric_Walch|Eric Walchs]] [[OXP_mission_offering|solution for the missionscreen-handling]] the potential for clashes was immense, but there are still a few oxps that need some tweaks to avoid this problem. And there are more possible clashes. Music- and soundfiles can collide, even complete missions can get broken and the user will never be able to finish them. That's why I wrote OXPConfig. A small tool to help scripters and users, because it gives everybody the ability to enable/disable special features of oxps (like the enhanced logging) that are supporting this.
 
  +
===Handling===
 
  +
* Dock at a station,
And with a detailed logfile it will be a lot easier to see what happened... ...and to fix it. The BulletinBoard is always the best place to report problems with oxps and there are a lot of helpful and experienced oxp'er (not to mention the development team) ready to stick their nose into your problem. So every bit of information can help to recognize the weak points and before you'll post it there, collect all necessary data (OS, OS-version, Oolite version, Latest.log, stderr.txt). A few oxps are already supporting enhanced logging features [[BuoyRepair]], [[Famous Planets OXP]], [[Fuel_Station_OXP|Fuel_Station]], [[Hyperradio_js_OXP|Hyperradio]], [[Lave_Academy_OXP|Lave Academy]], [[Localhero_OXP|Localhero]], [[OXPConfig]], [[ScriptTimer]], [[Vector_OXP|Vector]] and [[Welcome_Mat_OXP|Welcome Mat]] and I hope that more oxps will use this way in future releases to be included into the database.
 
  +
* open the Options-Menue (F2),
  +
* then step to the Gameoptions (where you can change Oolites options),
  +
* wait till you get a message that OXPConfig is activated,
  +
* and step directly to the SYSTEM_DATA_SCREEN (F7).
   
 
===Features===
 
===Features===
* Storing and loading of configurations
+
* Loading, storing and resetting to defaults of configurations.
* Automatic loading when Oolite is started (configurable)
+
* 4 booleans.
* Selective loading of changed oxps (configurable)
+
* 4 short unsigned integers (0xff).
* Default configuration is stored and can be reloaded
+
* 1 unsigned 24Bit integer (0xffffff) that is used as bitmask e.g. to en/disable appearance of entities.
* Internal logging (configurable)
+
* Minimum version checks.
  +
* Early calls of OXPs startUp function if flag is set.
  +
* Early settings if OXPConfig has collected the data and flag is set.
  +
* Notification for OXPs about changed settings if flag is set. Calls oxpcNotifyOnChange().
   
===Info===
+
===Configuration===
[[Image: OXPConfig_logo.png|100px|thumb|Alternative sign to show compatibility]]
+
OXPConfig can be configured like the other oxps:
This tool gives you the ability to configure several oxps. It changes internal (local) settings of the oxps to enable (or disable) logging or audio functions and special settings to recognize errors or to avoid clashes, but it is for sure no cheat-tool. The oxps have to support these functions too - to be implemented in the database - so not every oxp can be included.
+
* '''logging''': en/disables the extended logging in OXPConfig. This is quite verbose and slows down the whole processing and it's primary goal is to give developers insight in the internal ongoings and to locate problems.
This oxp runs without the debug-console and is primarily meant for non-scripters and lazy scripters, but if you really need debug-options it is highly recommended to install the [[Debug_OXP|Debug.oxp]] (written by [[User:Ahruman|Ahruman]]) and if necessary the console (written by [[User:Ahruman|Ahruman]] and ported to Windows by [[User:Kaks|Kaks]]). Compatible oxps can use this sign to show that they can be configured by OXPConfig.
+
* '''logEarly''': en/disables the logging of OXPs which have set the EarlyCall flag. If OXPConfig calls the startUp it will log this event. Additionally this switch is for measuring the time OXPConfig needs for it's own startUp, including collecting data from all OXPs, calling the startUp's, building it's search trees and applying settings. The time is quantised in units of maybe 50/60ms or 16 ms or 10ms or ..., depending on system.
  +
* '''displayAll''': en/disables collecting data from all OXPs which are declaring oxpcSettings. If false OXPConfig will only check OXPs which are in it's internal database and removes entries which are not declaring the necessary settings.
  +
* '''collectAll''': en/disables collecting of data from all worldScripts. This can be pretty slow if hundreds of OXPs are installed and in combination with logging enabled it can lead to aborting by Oolites timelimiter in trunk (though if I haven't seen it yet).
   
The handling is simple:
 
  +
Changes to OXPConfigs displayAll and collectAll require a restart to take effect. All switches are false by default. The integer settings are only there as examples and have no real function for OXPConfig itself.
* Dock at a main station
 
* Open the Options-Menue (F2)
 
* Step to the Gameoptions (where Oolites options resides). Wait till activation message comes
 
* Step directly to the SYSTEM_DATA_SCREEN (F7)
 
* Do your settings and store them if you've changed something (in OXPConfig and save your game in the usual way)
 
* To deactivate it - step to any other screen (you'll get a message)
 
   
 
===Requirements===
 
===Requirements===
* Oolite v1.73
+
* Oolite v1.74.2
* No dependencies
+
* [[Cabal_Common_Library|Cabal_Common_Library]]
   
 
===Download===
 
===Download===
{{OXPLevel|0}}[http://www.box.net/shared/t6z6mbsuzc OXPConfig1.08.zip] - (11KB) Updated 2009-09-04 - requires Oolite v1.73.
 
  +
{{OXPLevel|0}}
  +
* [http://www.box.net/shared/h8dz74u39m OXPConfig2.0.zip] - (36.8 KB)
  +
  +
For OXP-Developers:
  +
* [http://www.box.net/shared/6j9tef7y1r OXPConfig_QuickGuide.zip] - (754.9 KB)
  +
   
 
{{misc-OXP}} [[Category:Oolite utilities]][[Category:OXPConfig-compatible OXPs]]
 
{{misc-OXP}} [[Category:Oolite utilities]][[Category:OXPConfig-compatible OXPs]]

Revision as of 12:47, 9 December 2010

OXPConfig
OXPConfig logo.png
Download Link See Download
Version 2.0
History 2010-12-09
Stations No
Ships No
Missions No
Equipment No
Alternative HUD
Available
No
Sound Set
Available
No
Category Misc OXPs
Author Svengali

Overview

This tool gives you the ability to configure several OXPs. It changes internal (local) settings to enable (or disable) logging or audio functions and special settings to reckognize errors or to avoid clashes.

OXPConfig runs without the debug-console and is primarily meant for non-scripters (and lazy scripters), but if you really need debug-options it is highly recommended to install the Debug.oxp (written by Ahruman) and if necessary the console (written by Ahruman and ported to Windows by Kaks).

Handling

  • Dock at a station,
  • open the Options-Menue (F2),
  • then step to the Gameoptions (where you can change Oolites options),
  • wait till you get a message that OXPConfig is activated,
  • and step directly to the SYSTEM_DATA_SCREEN (F7).

Features

  • Loading, storing and resetting to defaults of configurations.
  • 4 booleans.
  • 4 short unsigned integers (0xff).
  • 1 unsigned 24Bit integer (0xffffff) that is used as bitmask e.g. to en/disable appearance of entities.
  • Minimum version checks.
  • Early calls of OXPs startUp function if flag is set.
  • Early settings if OXPConfig has collected the data and flag is set.
  • Notification for OXPs about changed settings if flag is set. Calls oxpcNotifyOnChange().

Configuration

OXPConfig can be configured like the other oxps:

  • logging: en/disables the extended logging in OXPConfig. This is quite verbose and slows down the whole processing and it's primary goal is to give developers insight in the internal ongoings and to locate problems.
  • logEarly: en/disables the logging of OXPs which have set the EarlyCall flag. If OXPConfig calls the startUp it will log this event. Additionally this switch is for measuring the time OXPConfig needs for it's own startUp, including collecting data from all OXPs, calling the startUp's, building it's search trees and applying settings. The time is quantised in units of maybe 50/60ms or 16 ms or 10ms or ..., depending on system.
  • displayAll: en/disables collecting data from all OXPs which are declaring oxpcSettings. If false OXPConfig will only check OXPs which are in it's internal database and removes entries which are not declaring the necessary settings.
  • collectAll: en/disables collecting of data from all worldScripts. This can be pretty slow if hundreds of OXPs are installed and in combination with logging enabled it can lead to aborting by Oolites timelimiter in trunk (though if I haven't seen it yet).

Changes to OXPConfigs displayAll and collectAll require a restart to take effect. All switches are false by default. The integer settings are only there as examples and have no real function for OXPConfig itself.

Requirements

Download

Levelindicator0.png
0-{{{2}}}

For OXP-Developers: