X3: Albion Prelude - A Survival Guide

General discussions about the games by Egosoft including X-BTF, XT, X², X³: Reunion, X³: Terran Conflict and X³: Albion Prelude.

Moderator: Moderators for English X Forum

Posts: 51470
Joined: Tue, 29. Apr 03, 00:56

X3: Albion Prelude - A Survival Guide

Post by CBJ » Tue, 13. Dec 11, 15:59

This Survival Guide is also available in PDF format from our Downloads section.

X3: Albion Prelude - A Survival Guide

This Survival Guide tells you all you need to know about what is new and different in X3: Albion Prelude. It assumes that you are familiar with X3: Terran Conflict and its features, either through having played it or having read the manual.



Options and Settings

Graphics Settings

New graphics options to make space even more spectacular.
View Distance - New settings for higher-end systems, to show more detail at longer distances.
Windowed Mode - Wider selection of windowed mode resolutions, which can be customised.

Head Tracking

Head tracking support takes immersion to a whole new level.
TrackIR - Support for TrackIR hardware in two axes by default, with customisation available to use the third.
FaceTrackNoIR - Additional support for a web-cam using free FaceTrackNoIR software.




A selection of gamestarts to suit your style of play.
War - Two new gamestarts allow you to choose which side of the war you want to be on.
Other - Other gamestarts are available in which you do not participate directly in the war.


New sectors are an essential part of any new X game.
Albion - Introducing you to the Albion sectors, which will play a key role in X Rebirth.
Other - Other changes and additions to the map for explorers to discover.


Terrans fight it out with Commonwealth forces for control over space and resources.
War Missions - Get involved with the war effort for your chosen side and be rewarded for it.
War Reports - You will receive regular updates on the progress of the war.

Stock Exchange

A whole new way to play the game.
Stock Exchange - Will you make money or lose your shirt?


A new Graph display to present useful data in a format that is easy to understand.
Player Graphs - Graphs to show your progess through the game.
Object Graphs - Graphs to show how your stations have been doing.


A Fleet system to complement the Wing system.
Setup - Ships can be assigned to Fleets with a Fleet Commander.
Commands - Special Fleet Commands can be issued to the Fleet.
Supply - Automatic resupply of Fleet ships can be configured.

Race Response

Other races will no longer sit idly by while their assets are being attacked.
Race Response - Be careful who you annoy!

New Assets

No expansion would be complete without new ships and other objects for you to own and fly.
Ships - Several new ships for you to discover and fly.
Stations - New stations including special Stock Exchanges that are visibly different.
Jump Beacons - Place these carefully to allow you to jump to specific locations within a sector.
Recon Drones - Send these off to scout sectors before you commit expensive ships.

Equipping Ships

Equipping the ships in your fleet just became a whole lot easier.
Upgrading - Equip groups of identical ships at Shipyards any time you like.
Loadouts - Save and restore loadouts for specific ship types at the Player HQ.


New, more versatile, missile and anti-missile behaviour makes them an important strategic weapon.
Heavy - Really big, slow-moving missiles may now take several shots to stop.
Counter - Mosquito missiles are now real counter-missiles and will be used as such.
Missile Defence - Missile defence can and will be used by NPCs. You can also configure your turrets to defend you.


We have carefully rebalanced the game to provide a more interesting combat experience.
Hull - Larger ships now have much tougher hulls making them formidable adversaries.
OOS - Out of Sector (OOS) combat results in outcomes that are more similar to in-sector battles.
Ships - Several ships have been given some much-needed love and attention.
Lasertowers - Lasertowers, especially those belonging to the Terrans, should not be underestimated.

Player Credits

Who wants to be a billionaire?
Player - Your account can now hold 2,000,000,000,000,000,000 credits instead of a measly 2 billion.
Other - Station accounts and individual transactions are still limited to 2 billion.

User Interface

Several improvements make the user interface easier to use.
Sizing - On larger screens, maps and menus make better use of the available space.
Maps - Find the sector you are looking for in the Galaxy Map much more easily and quickly.
Menus - Various menus have been upgraded to use icons and colours for ship lists.



Scripts and Modding

We haven't forgotten how much you like to get under the hood and change how the game works.
Script Commands - Lots of new script commands for you to play with.
Mission Director - New conditions, actions, attributes and variables to give more options for your missions.
Graphs - You can create your own graphs and add them to the Graphs menu.

Bug Fixes

We have fixed lots of little things along the way, but there are a few you might be particularly interested in.
You no longer go back through a gate if you boost as you come out.
The docking computer no longer gets stuck just short of the docking clamps.
Various exploits involving the Trade menu have been eliminated.
Last edited by CBJ on Fri, 2. Mar 12, 16:29, edited 38 times in total.

Posts: 51470
Joined: Tue, 29. Apr 03, 00:56

Post by CBJ » Tue, 13. Dec 11, 16:57

Graphics Settings

Since the release of X3TC, graphics cards have become more powerful and a number of new screen formats have become popular, particularly on laptop systems. We have added some graphics settings to allow people to take better advantage of these developments.

View Distance

A new graphics option, View Distance, has been implemented and replaces the old AQC option. The View Distance has 4 settings, defined as follows:

• Low: View distance as in X3TC, equivalent to AQC on.
• Medium: View distance as in X3TC, equivalent to AQC off.
• High: View distance extended to 100km, with AQC off.
• Very High: View distance extended to 500km, with AQC off and higher model detail.

This setting can be set from the splash-screen graphics options, from the Graphics section of the main gamestart menu, and also in-game from the Graphics Options menu.

High and Very High settings should be viable on most medium- to high-end graphics cards, and increase the distance before objects start to fade out, especially in foggy sectors. The result should be fewer collisions with asteroids that appear from nowhere, and fewer stars visible through geometry! The Very High setting for uses higher LOD levels for improved graphics over longer distances.

Windowed Mode

Two popular sizes, 1280x720 and 1366x768, have been added to the default list of available windowed mode resolutions. However it is now also possible to modify this list. The new "res.dat" file in the game's root folder contains the standard list in the form of pairs of numbers representing the window width and height in pixels. This file can be amended using a standard text editor, to add to or otherwise modify the available windowed mode resolutions. The game will ignore resolutions with a width value of less than 1024 and/or a height of less than 600 (though note that a height of less than about 640 will result in some menus overlapping the info panels at the bottom of the screen). If the file is missing or corrupted then the game will revert to its built-in list of windowed mode resolutions.

Note: Valid resolutions for full screen mode are defined by the graphics driver and cannot be amended using this file. However, most drivers do provide a similar means to add or amend the available full screen resolutions.
Last edited by CBJ on Mon, 19. Dec 11, 12:44, edited 4 times in total.

Posts: 51470
Joined: Tue, 29. Apr 03, 00:56

Post by CBJ » Tue, 13. Dec 11, 17:05

Head Tracking

Support for head tracking has long been high on the shopping list in X Universe games for many TrackIR owners. However, not everyone has the necessary hardware, so we've also added support for a popular open-source API that uses nothing more than an ordinary WebCam to provide basic head tracking in games.


If you want to play the game with your TrackIR gear you first need to have the TrackIR software installed. Make sure that you have the latest version, and that you run the game list update from within the TrackIR application to ensure X3AP is in the list.

Before playing the game the TrackIR program must be started; this should be in the Windows Start menu. The default key settings are F9 to enable/disable TrackIR and F12 to center the rotation. Running the game should then automatically enable TrackIR support. Look straight ahead and use the Center key (F12) to reset the view.


Anyone with a webcam supported by DirectShow should be able to use FaceTrackNoIR, although the quality of the control will depend on the quality of the webcam used with the face recognition system. Go to the FaceTrackNoIR website and download the full version 1.30 and the 1.50 update. Version 1.30 is a full installer and the version 1.50 update has to be copied over the installed version 1.30.

In order to use FaceTrackNoIR with the game:

• Copy the FreeTrackClient.dll from the FaceTrackNoIR folder to the game folder.
• Run the FaceTrackNoIR program which should be in the Windows Start menu.
• Select Face API as Tracker Source and Freetrack as Game protocol. Click Start to start the tracking.
• There should be a camera window which displays the image from the webcam; make sure your face is completely visible on it.
• After a few seconds there should be yellow lines in the image and values in the lower part of the window display the current tracking values.

Keys can be modified under Options/Keyboard Shortcuts; the default is F10 to center/reset the view. If you have problems with installing FaceTrackNoIR then their Known Issues page may help.
Last edited by CBJ on Sat, 4. Feb 12, 20:38, edited 6 times in total.

Posts: 51470
Joined: Tue, 29. Apr 03, 00:56

Post by CBJ » Tue, 13. Dec 11, 17:24


As always, there are a number of different starting scenarios that you can choose from. This time, however, there is a little more variation in what those scenarios mean in terms of your resources and your starting relations to the various races that inhabit the X Universe.


Two gamestarts, Argon Peacekeeper and Terran Commander, are available which plunge you straight into the War action. Rather than starting the game penniless and poorly equipped as in previous games, you have a certain amount of money and resources at your disposal to enable you to fulfil your role in the war. The main game plot story is available from the Argon Peacekeeper gamestart but not the Terran Commander one.

Aside from the plot, choosing one of these gamestarts does not limit your other options in the game. You will be free to take a break from fighting to explore, trade or build an empire, whenever and wherever you like. Do take care with empire-building in War sectors, though, as you may find yourself and your assets a target for enemy action.


The other gamestarts in X3: Albion Prelude will be more familiar. They place you in the X Universe with minimal resources, and with no particular affiliation with regard to the war. You can trade, fight, build, and of course think, as you choose in the ultimate sandbox environment. The plot is still available in these gamestarts should you wish to follow it.

For even more freedom you can also choose the Custom gamestart which doesn't even include the main plot. Note that, unless you also use a custom map, the War will still take place as a backdrop to your game even in a Custom start. Note also that the Custom gamestart will make your game appear as Modified.
Last edited by CBJ on Thu, 2. Feb 12, 11:08, edited 5 times in total.

Posts: 51470
Joined: Tue, 29. Apr 03, 00:56

Post by CBJ » Tue, 13. Dec 11, 17:44


Some parts of the universe map remain pretty much as they were in X3TC, but in other places there are the first signs of the massive changes that are to come.


Albion is a key area of space that will feature heavily in X Rebirth. You can get your first glimpses of Albion in X3: Albion Prelude, and see emerging signs of the momentous changes that new technology will bring to the X Universe. Look out for the corporations that are driving this new technology and vying for control of the new sectors and the valuable resources they contain.


The X Universe is a dynamic place, and even in the short time since X3: Terran Conflict some things have changed. New space has been discovered, control of some sectors has been lost by the people who once lived there, and in a few cases gates have mysteriously shut down cutting off routes that were once busy thoroughfares. We won't be spoiling the fun for explorers, however, by giving precise details about what has changed!
Last edited by CBJ on Mon, 19. Dec 11, 12:56, edited 1 time in total.

Posts: 51470
Joined: Tue, 29. Apr 03, 00:56

Post by CBJ » Tue, 13. Dec 11, 18:04


The X Universe has always been a pretty dangerous place to live, but now there is the added challenge of an ongoing war, making certain sectors very dangerous indeed.

War Missions

You can take part in War missions whether or not you start the game from one of the specific War gamestarts. All you need is sufficiently high reputation with one of the sides in the war, and stations in the War sectors will start offering you war-related missions.

Completion of these war missions, and also the the destruction of war-related assets belonging to one side or the other, will have a real effect on the progress of the war. Your actions can influence whether the Terrans or the Commonwealth, under the leadership of the Argon, gain ground or lose it.

War Reports

If you start with one of the two specific War gamestarts, Argon Peacekeeper or Terran Commander, then in addition to war missions you will also receive regular War Reports on the progress of the war from your superiors. These updates will tell you who has gained or lost ground, and let you know where the action is likely to be in the near future.

[2.0] If the War Reports get too much for you then you have the option to turn them off in the Advanced Game Settings section of the Gameplay menu.
Last edited by CBJ on Tue, 31. Jan 12, 15:18, edited 2 times in total.

Posts: 51470
Joined: Tue, 29. Apr 03, 00:56

Post by CBJ » Tue, 13. Dec 11, 18:18

Stock Exchanges

The Stock Exchange in X3: Albion Prelude is not just a single station. The Stock Exchange feature consists of a series of Stock Exchange stations, also known as local exchanges, that are spread across the X Universe.

Stock Exchange Stations

Stock Exchange Stations are usually located in "core" sectors and can be visually identified by the Stock Exchange signage outside. Each local exchange serves a group of surrounding sectors owned by the same race as the sector in which the Stock Exchange station is located. As an example, the Argon Prime exchange serves the surrounding Argon sectors.


Local exchanges will need to be "unlocked" before you can trade shares at them. Each race will have it's own unique requirements to unlock local exchanges owned by that race. You can see the requirements for unlocking a local exchange by opening the Stock Exchange station's standard Info menu. Some races require missions to be completed, others may involve a payment of some kind, while still others are based on a particular trade or fight ranking that must be achieved.

Your reputation with each race will also be a factor. You must maintain at least a neutral reputation with a race in order to be able to trade shares at their local exchanges, so any race that is hostile to you will not let you use their local exchanges at all. They won't, however, confiscate any shares you already hold at their local exchanges if your reputation drops at any time, so you can regain access to them later by improving your reputation.

You can trade shares at a given local exchange by physically docking there yourself. Alternatively you can trade shares remotely if you have at least one asset (it can be a ship, a satellite, or even a station) within scanner range of an unlocked Stock Exchange.

Local exchange share prices are calculated by getting the Products and Resources from the sectors served by the exchange and evaluating these to generate a share price and index value. The lower the index value the greater the demand, and hence the higher the share price.

The trading of shares costs a small transaction fee each time you buy or sell shares. This fee is 2% of the total transaction amount in credits. Each time you sell shares for a profit, you will gain a small increase in your trade ranking and possibly a reputation increase with the race that controls that Stock Exchange. Any such increases are based on the profit made, not the total value of the transaction.

Trade Information

Most Stock Exchange related activities are accessed from the Player menu on the sidebar. From here you can view the main Stock Exchange menu, as well as the Corporate and Company menus that deal with the Corporations and Companies that are found in the X Universe respectively. There are also a number of Broker Settings here that you can adjust to match your personal preferences.

Finally, no Stock Exchange would be complete without graphs! A series of Graphs have been made available so you can view your current commodity shares at a glance. These allow you to view just information relating to one local exchange, or from all of the local exchanges at which you currently hold shares.


There are a number of requirements that must be fulfilled before you can start using the Stock Exhange feature, and individual local exchanges within it:

• The ship you are flying needs a Trading System Extension installed, even if you are docked at a Stock Exchange station.
• A Stock Exchange station has to be known to you before it will become available for trading.
• A local stock exchange must be unlocked in order to use it (see Stock Exchange station Info menu for details of requirements).
• You need at least one asset within scanner range of a Stock Exchange station in order to trade shares there.
• You have to maintain at least a neutral reputation with a race if you want to trade shares at their local stock exchanges.


The Stock Exchange allows the trading in shares of four different types.

Commodity shares are the shares that are available from the local exchanges. These are shares in the products and resources that can be found throughout the X-Universe. Each exchange will only list shares for products or resources that can be found in its area.

Also part of Commodity Shares are "Naturals", wares that are not normally used in the game. These are shares in items you won't find at stations, but they are the kinds of things you might expect to find in shops or specialty outlets located on stations. The share prices for these items are also based on the supply and demand for them; the more visitors a station gets, the more demand there is.

As you discover each Corporation HQ, shares in that Corporation will become available from the Corporation / Company Index menu. The current value of a Corporation's assets will determine its share price.

As the X-Universe is a rather large place, the inhabitants need businesses to supply them with goods and services. Businesses that become big enough may become Companies, and some of these Companies may apply for listing on the Stock Exchange. Company share prices can fluctuate quite quickly as consumer confidence in their daily activities changes.

Local Stock Exchange

The Local Stock Exchange menu is accessed from the Player menu on the sidebar. After choosing a local exchange from the list of those that are currently available to you (the one associated with the sector you are currently in will be listed with three asterisks next to its name, and those at which you currently hold shares will be shown in green) you will be presented with a large and possibly rather daunting-looking menu!

The first section of the menu shows you how much money you have and details of the local exchange that you selected from the list. Selecting the entry with the local exchange sector name in the menu will display a list of the sectors that are served by that exchange. Note that it will only show sectors that are known to you, so further exploration may result in that list growing.

The second section gives you access to a graph showing the shares that you currently own at this local exchange, and also provides some simple options for expanding and collapsing the other parts of the menu.

The final section is a large and colourful table full of numbers, which may seem daunting at first, but which you will become very familiar with if you decide to trade seriously on the Stock Exchange. The lines in this section represent the types of shares you can trade in at this local section, and are grouped into categories. If you are not interested in a particular category then you can collapse that section of the menu by selecting the group heading menu line for that category. Similarly if you are only interested in one category then you can collapse all the others.

For each individual share, selecting that share will take you directly to a menu where you can buy or sell that share. However, you probably won't want to do that until you have at least some idea what the numbers across the page next to it mean, so here is a quick explanation of what all those columns of numbers mean:

• Supply: total available amount of this item in this exchanges area.
• Demand: total required amount of this item in this exchanges area.
• Min Cr: minimum number of Credits this item's shares will trade for.
• Max Cr: maximum number of Credits this item's shares will trade for.
• Index: the most important entry to watch in this menu (see below)!
• Trend Line: the "^" and "v" symbols next to the Index tell you what movement there has been.
• Trading At: price at which the shares for this item are currently trading.
• Bought At: if you own shares in this item at this exchange, the average you paid for those shares.
• Owned Shares: the number of shares you own for this item at this exchange.
• Shares Avail: the total number of shares currently available for this item at this exchange.
• Net Profit: the net profit, after fees, that you would make if you sold all your shares in this item right now.

As mentioned in the list above, the Index value is very important. It tells you whether the shares are high or low in value in relative terms. An Index value of between 0 and 49 is likely to be a good time to sell, while an Index value of between 50 and 100 will probably be a good time to buy. An index value of 100 is considered the optimum for buying, with any number greater than that representing over-supply.

Right at the bottom of the menu are totals for the columns showing the number of shares you own and the net profit.

Corporation and Company Indexes

In addition to the ware-based shares in the Local Stock Exchange menu, you can also trade in Corporation and Company shares using the Corporation and Company Indexes menu. The structure of this menu is very similar, as are the meanings of the columns displayed.

The two most obvious differences are the ability to switch the menu between Buying and Selling modes, and the fact that there are no columns for Supply and Demand since the shares do not correspond to individual wares.

Detailed Summary of Shares Owned

If you want to review your share portfolio across all the local stock exchanges at which you have traded, the Detailed Summary of Shares Owned provides you with a breakdown. Again, this menu follows the same structure, with the same data columns, but this time it focusses entirely on the shares that you own and does not show any data for other shares that you might be interested in buying.

The shares in this menu are grouped according to the local exchange at which they are held, and since it is possible to hold shares in the same item at different local exchanges, it is also possible that you may see the same items listed in more than one group. As with the Local Stock Exchange menu, groups can be collapsed and expanded to allow you to focus on those you are currently interested in.

There are totals at the bottom of each group, and also a grand total at the bottom of the menu as a whole, which tells you the total number of shares that you hold in your portfolio across all local exchanges, and the total net profit that you would make if you were to sell them all immediately.

Buying and Selling

From any of the above menus, selecting a menu line showing shares for a particular item will take you to a menu where you can buy and/or sell shares. This is where you get to part with all your hard earned credits or cash in on your last investment, or of course make a terrible loss!

The top part of the menu provides you with information to help you decide how many shares to buy or sell. At the bottom of the menu are the options to actually initiate a transaction. The text of those options will tell you whether you can buy, sell or both. Buying and selling involves using the "trade bar" that you will be familiar with from the standard station Trade menu, including all the usual functionality such as the ability to type in the quantity you want.

Transaction Reports

Several transaction reports are available to help you keep track of your investment history. Each report features sorting options, the ability to output data to a logfile for further analysis outside the game, and a means to delete entries from the transaction history, either individually or as a whole.

The report data itself is fairly self-explanatory, with columns for information such as where and when each transaction took place, what was bought or sold, and all the relevant numbers involved.

If all this is just too much information, you can always turn off the reports individually using the Broker Settings menu!


Several graphs relating to your Stock Exchange activities are available from the Graphs menu, which can be found under the Advanced option in the Player sidebar menu. The graphs that will be available here depend on your trading history.

The Local Stock Exchange graph is the same one that you can view from the Local Stock Exchange menu, and offers a list of local exchanges for you to choose from. The Commodity Shares Owned graph displays the numbers of shares that you currently own at all local exchanges, grouped by exchange and share category. The Current Shares Owned graph displays all shares you own at all exchanges as a single bar graph, grouped by share category.
Last edited by CBJ on Tue, 7. Feb 12, 16:13, edited 20 times in total.

Posts: 51470
Joined: Tue, 29. Apr 03, 00:56

Post by CBJ » Tue, 13. Dec 11, 18:28


For a long time now, people have been looking for ways to visualise how they are doing in the game. The new graph system provides just that. Various different graphs are available, showing summary data about your assets. These range from the money you have in your personal account to the ships you own, and even a summary of which stations in your empire are the most profitable.

Player Graphs

A number of general player graphs are available and are accessible from the Advanced section of the Player menu on the sidebar:

• Money in player account.
• Ships owned by class.
• Ships owned by maker race.
• Stations owned by ware category produced.
• Station profit "top 20" (available after owning at least one station for one hour).
• Total shares currently owned at all Stock Exchanges.
• Total shares currently owned at all Stock Exchanges displayed by exchange.
• Current shares owned at any single Stock Exchange (only exchanges at which you own shares are selectable).
[2.0] • Player kills by shiptype.
[2.0] • Player ship Kill/Loss ratio.
[2.0] • Captured/Boarded ships by maker race.
[2.0] • Ship/Fleet/Wing counts.
[2.0] • Player ship usage.
[2.0] • Property over time.
[2.0] • Property owned by sector race.

Object Graphs

Other graphs focus on individual objects and can be accessed from the the Advanced section of the context menu for the object:

• Station resource/product stock levels over time.
• Station profitability over time (also shows account transfers).
[2.0] • NPC Trades to station by hour (value/volume).
[2.0] • NPC Trades to station by day (value/volume).
• Currently owned shares at local Stock Exchange by ware category (also available from local exchange menu).
Last edited by CBJ on Sat, 4. Feb 12, 20:39, edited 3 times in total.

Posts: 51470
Joined: Tue, 29. Apr 03, 00:56

Post by CBJ » Mon, 19. Dec 11, 18:42


The Wing system provided a means to group ships together for the purposes of giving orders, but setting them up could be time-consuming and it wasn't always an efficient use of resources to have ships permanently grouped together. The new Fleet system adds a new dimension to controlling your ships in a coordinated way, providing you with a means to create larger, looser groupings of ships under the control of a Fleet Commander.


To start a Fleet you first need to assign one of your ships to be a Fleet Commander. You can then assign other ships to the Fleet. Those ships will not immediately stop what they are doing; instead they will carry on with their existing tasks until you issue a Fleet command them to join their Fleet Commander, and will return to those tasks once any Fleet action is over. Although any ship can act as Fleet Commander, best results will be achieved if you assign this role to a carrier (M1) ship.

For ships that are assigned to a Fleet, the Property Owned menu now shows an additional line of information indicating to the Fleet Commander and the ship's current Fleet status. For the Fleet Commander itself, the additional line shows the total number of ships in the Fleet as well as the number who are currently active within it.


Fleet commands and actions are all accessed via the Command Console for the ships involved. From there you can create and disband, manage Fleet leadership and membership, and tell individual ships to join up with their Fleet. Only ships which have joined up with their Fleet will be affected by subsequent Fleet orders.

From the Command Console of the ship assigned as Fleet Commander you can also issue Fleet commands to instruct the ships assigned to that fleet:

• Call To Arms: equivalent to ordering all ships in a Fleet individually to join up with their Fleet.
• Attack: attack the specified target.
• Attack All Enemies: Attack all enemies found in a sector.
• Invade Sector: Attack a whole sector, destroying both ships and stations.
• Defend Station: Protect a given station.
• Defend Sector: Protect a whole sector.
• Patrol Sectors: Patrol a series of sectors, attacking any enemies found.

In all cases the Fleet Commander will attempt to use the most appropriate ship(s) for the task, from those assigned to the fleet and currently active within it. For example, M5s will be used as scouts when defending a sector, M4s and M5s will be used as interceptors to destroy enemy bombers, bombers and missile frigates will be used to attack larger targets, and so on. If the Fleet Commander is a carrier (M1) then Fleet ships will only be launched as and when they are needed.


Fleets can resupply themselves with needed energy, missiles and ammunition. To do this, resupply and supply ships need to be assigned to the Fleet. Resupply ships (TS and TP) are used to collect goods from nearby stations to resupply other ships in the Fleet, while supply ships (TL) are used to store supplies so that they don't need to be bought locally.

Fleet commands such as Defend Sector and Invade Sector will automatically make use of the resupply facility provided that appropriate ships are active in the fleet. There is also a separate Resupply and Refuel Fleet Ships command available in the Command Console for the Fleet Commander, which will perform a complete resupply of all ships in the Fleet. To use the resupply command, the Fleet Commander must have a Transporter Device installed and you must have at least one resupply ship (TS or TP) available. Supply ships (TL) also need the Transporter Device to operate properly.

Posts: 51470
Joined: Tue, 29. Apr 03, 00:56

Post by CBJ » Tue, 20. Dec 11, 16:38

Race Response

Until now it has been much too easy to attack capital ships and stations belonging to one of the X Universe races, without risk of retaliation on anything but a small scale. No more! Now, if there's a capital ship in the area when you start attacking a station, you can expect them to come to the aid of your victim. Of course the finer details of Race Response operations and tactics are top secret!

Posts: 51470
Joined: Tue, 29. Apr 03, 00:56

Post by CBJ » Tue, 20. Dec 11, 18:07

New Assets

A total of over 30 new assets have been added to the game.


A selection new ships have been added, which fulfil a variety of roles.

There are two new M2 destroyers:

• Megalodon
• Kyoto

[2.0] Also new are the first examples of a new class of fast and light escort carriers:

• Guppy
• Ariadne
• Cormorant
• Maccana

Several of the main races now have new TS small transport ships:

• Drake
• Hayabusa
• Snotra
• Sturgeon
• Tern

And there are also new TP personnel transports:

• Geochen
• Ocelot
• Mani
• Phantom

And a new TM:

• Toukon

[2.0] A new and unusually large Xenon capital ship has been sighted but there are no coherent reports (or survivors) at this time. And the Yaki Navy has a surprise or two in store for uninvited visitors, which we wouldn't dare spoil!

Finally, you will also be introduced to a ship with an important role to play in the future.


Various stations have been added, mostly of them representing the new Stock Exchanges for each race which have replaced normal Trading Stations in many sectors. In addition, each of the main races now also has its own, different, Equipment Dock design. Finally, two of the powerful new corporations have also introduced their own Research Station designs.

Jump Beacons

Jump Beacons have been in the game since X3TC, but until now they were not really usable. If you are lucky enough to get hold of one then you can place it and use it as the destination for a jump. Be careful where you put it though!

Recon Drones

Similarly, Recon Drones were previously just a ware that you could trade in. Now they are real drones that can be sent off to explore or check out what is going on in a sector without risking a more valuable ship.
Last edited by CBJ on Wed, 22. Feb 12, 17:59, edited 9 times in total.

Posts: 51470
Joined: Tue, 29. Apr 03, 00:56

Post by CBJ » Tue, 20. Dec 11, 18:42

Equipping Ships

Equipping a single ship requires some effort, but equipping a whole fleet can be a major operation. Ensuring there are adequate supplies of the necessary equipment is best achieved by stimulating the local economy, or even by producing and shipping the items to Equipment Docks yourself, but a frequent request has always been to make it easier to equip several ships at once. We have responded to this with not one, but two, ways to achieve this.


When buying ships at a Shipyard, you have always been able to buy and install upgrades for those ships from the equipment available at the local Equipment Dock. When buying several ships at a time this was particularly useful as it meant that each ship could be equipped in exactly the same way.

Unfortunately there were a couple of things which limited the usefulness of this feature, and could make it rather frustrating. The first was that once you had closed the Upgrade Ships menu you could never get back to it, so if you closed it by accident or simply forgot an upgrade, you would have no option but to fly all the ships to the Equipment Dock and upgrade them one by one there. The second was that if some or all of the upgrades you needed were not available at the local Equipment Dock then there was, again, no option but to fly the ships elsewhere and upgrade them one by one on arrival.

In X3AP both of these limitations have been eased. You can now access the Upgrade Ships menu whenever you have ships docked at a Shipyard, whether it is the Shipyard you bought those ships at or not. So, if you accidentally close the menu, or remember something just after you close it, then you can go straight back into it and carry on upgrading. Similarly, if you need to fly your ships to a different sector to finish upgrading them then you can do that too.

The options to upgrade ships appear in the Shipyard's Trade menu, in the Upgrade Ships section which is below the Repair and Sell Ships sections. All ships docked at the shipyard will be listed, with groups of identical ships first followed by any unique ships. Identical ships are defined as those which are of the same exact type (so Nova and Nova Raider will not appear in the same group) and having the exact same equipment and other wares on board. Selecting an individual ship will allow you to upgrade that ship on its own, while selecting a group heading will allow you to upgrade the identical ships listed below that heading as a group.

Oh, and one other thing: the storage space at Equipment Docks has been doubled to increase the chances of there being sufficient space for the required upgrades to be stored there, at least for less expensive items.

[2.0] Loadouts

The second method of equipping ships involves the Player Headquarters (PHQ). If you've been playing for some time then you may well have come up with standard loadouts for certain types of ships in your fleet. For example, fighters on patrol might all be Novas, fitted with a particular combination of shields and lasers, while ships used to supply Energy Cells to a production complex might all be fully shielded Mercury Super Freighters. In the past, equipping ships according to those standard loadouts could be time-consuming and error-prone, even if you had the required wares in stock in your PHQ.

With the PHQ in X3AP you now have the option to save a Loadout from one ship and use it to equip other ships of the same type; as with the Upgrade Ships option, the type must be exactly the same. All Loadout-related functionality can be found in the PHQ's Adjust Station Parameters menu, below the Spray Shop.

The Save Loadouts section, unsurprisingly, gives you options to save the loadouts of ships docked at the PHQ. Simply select the ship whose loadout you want to save, choose which elements of the ship's Loadout to save, and then select the option to save the Loadout. You will be asked for a name for the loadout. The name you provide will need to be unique among the loadouts for the chosen ship type, but you can have loadouts with the same name for different ship types.

To apply a Loadout to a ship you need use the Saved Loadouts section of the menu. Saved loadouts are listed by ship type; selecting a ship type and then a Loadout will open up the options for that Loadout. You can choose which elements of the Loadout to apply and which ship or ships to apply it to. You can also delete a Loadout from here.

When applying Loadouts, all of the wares required are taken from the PHQ storage, so you will only be able to apply a Loadout if those wares are available. Any existing wares matching the element types selected in the Loadout options, that are on board the ship or ships to which the Loadout is being applied, are removed and placed in the PHQ storage. A handy side effect of this is that it is possible to create an empty loadout and use that to strip ships of their current Loadout without adding anything new.
Last edited by CBJ on Thu, 9. Feb 12, 12:19, edited 5 times in total.

Posts: 51470
Joined: Tue, 29. Apr 03, 00:56

Post by CBJ » Thu, 22. Dec 11, 18:17


Missiles have always been a useful addition to the armoury of any X Universe fleet, but we wanted to give people more reasons to use them in the light of the fact that they demand more time and effort when keeping a fleet supplied. These changes also make specialist missile ships much more potent.

Heavy Missiles

When firing a huge and expensive torpedo at a slow-moving target, it can be extremely frustrating to see it eliminated by a single stray laser shot. Well, those big missiles are not quite so fragile any more. Larger missiles now have hull values, just like ships and stations, and will frequently take several shots to destroy. This is good news for your bombing raids, but of course these things work both ways. Your heavy missiles are more effective but so are any incoming ones heading for your ships, so keep an eye out for them.

Note that Boarding Pods are technically classed as missiles, so this change will also increase, slightly, the survivability of boarding operations!


Mosquito missiles have long been described as counter-missiles, but their effectiveness in practice has been somewhat limited. They now fulfil that role much better. The first change is that any ship with missile capabilities can now carry them, making them an important defensive feature for any ship. The second is that they now have on-board electromagnetic burst technology that triggers the detonators of other missiles on impact. The practical upshot of this is that they can immediately destroy any other missile they hit, regardless of the new hull values.

Of course, putting the above changes together leads to some important tactical implications. As well as making sure that you equip your fleet with counter-missiles, you will also need to take into account that enemy ships may well be carrying them. Firing off a huge and expensive torpedo will still be a futile gesture if your victim can simply pick it off with a single well-aimed Mosquito, so you will need to deplete or distract their missile defences before you go in for the kill.

Missile Defence

The combat tactics used by ships not directly under your control have been improved to take into account the changes described above. Ships will make better use of their own missiles, but they will also defend themselves better against incoming ones. For ships that are under your control, you now have a wider range of options for defending yourself against missiles. In particular, the commands that you can issue to Turrets have been expanded and at the same time made configurable.

The Turret Command Configuration tools is available under the Advanced Game Settings section of the Gameplay menu, which is accessed from the Options entry on the sidebar. The menu lists the available turret commands, including three new custom ones. Selecting any one of these allows you to modify the target selection priorities and laser switching behaviour of that command. Each command can be configured individually, giving you a much greater degree of control over how your turrets behave. For example, by choosing different commands, some turrets on a large ship can be configured to perform automatic laser switching while others have this feature disabled.

Certain ships (M8 and M7M) are the missile specialists in your fleet. If their turret commands include a missile defence priority then they not only use Mosquito missiles to protect themselves from incoming missiles, but also to protect every nearby ship in their formation or wing. These ships will now also make more intelligent choices about which targets to attack, which missiles to use and how many missiles to fire at a given target.

Posts: 51470
Joined: Tue, 29. Apr 03, 00:56

Post by CBJ » Fri, 23. Dec 11, 18:08


We try to fine-tune the balancing of the game with every new release. With X3AP the focus is very much on the war, so we wanted to make sure that all the ships involved in that war were suitably equipped, and that the resulting battles were as exciting as possible.


With the onset of war, all the races in the X Universe were quick to equip their fleets, and their stations, with stronger hull plating. With small ships there was a limit to how much could be done without affecting the ship's maneuverability, but capital ships and stations were fitted with up to ten times as much hull plating as before.

In practice, of course, this means that fewer dogfights end after only one or two shots, while major assaults on an enemy's largest and toughest assets can take considerably longer than before.


Most people who have played games set in the X Universe are aware that the outcome of a battle can depend heavily on whether that battle takes place in the sector you are currently in (in-sector or IS) or elsewhere (out-of-sector, or OOS).

There are good reasons why these two scenarios will never be exactly the same, but we believe we have improved the "accuracy" of the OOS case considerably in X3AP. With the help of an expert on the subject, some complicated formulae, and a large amount of empirical testing, we have adjusted, tweaked and generally improved all of the elements involved to achieve results in the OOS case that are more similar to those you would see if you were there, watching the situation unfold.


In X3TC, one or two corvette-class lasers would quickly drain the laser generators of an M6 ship. This has been corrected; all M6 corvettes can now use appropriate lasers much more effectively.

Other ships that have been adjusted include:

• Python - shielding has been improved to bring the ship's overall power in line with other ships of its class.
• Boreas - shielding has been reduced to bring the ship's overall power line with other ships of its class.
• Panther - docking slots and the power of the laser generator have been downgraded.
• Cerberus - several improvements have been made to bring it closer to the standard of others of its class.

A number of weapons, especially missiles, have also been rebalanced and tweaked.


These fixed defences are very efficient against capital ships and, thanks to the new OOS combat code, are also effective when you are not around. [2.0] Unlike ships they require some time to set up after deployment.
Last edited by CBJ on Thu, 9. Feb 12, 12:19, edited 9 times in total.

Posts: 51470
Joined: Tue, 29. Apr 03, 00:56

Post by CBJ » Mon, 30. Jan 12, 17:15

Player Credits

One of the longest-standing and best-known restrictions in the X-Universe is the 2 billion credit limit on the player account. While the average player may well never run into this limit, for budding tycoons it has been a significant irritation for some time.


For the player account we have raised the limit to a number that even the most acquisitive empire-builder should find adequate. The new limit for this account is a billion times greater than before; that's 2,000,000,000,000,000,000 credits, also known as 2x10^18 or 2 quintillion!

If you do eventually become a multi-billionnaire, the main locations in the game that show your player account balance will show the full extent of your riches. Some may be truncated to the number of millions you have if your balance gets really big, but hopefully by that stage you won't be too worried about the small change!

On a few other menus, though, particularly those involving trade and station management, the displayed value will still be shown as the old limit of 2 billion. This is done for practical reasons such as the amount of space available in the menu, as well as technical reasons involving the transfer of money to or from accounts that still have the 2 billion credit limit. Don't worry; your credits are safe!


The new limit only applies to the player account; your stations still have accounts that are limited to 2 billion credits, and you can only transfer up to 2 billion credits in any one transaction.
Last edited by CBJ on Thu, 2. Feb 12, 12:08, edited 1 time in total.

Posts: 51470
Joined: Tue, 29. Apr 03, 00:56

Post by CBJ » Mon, 30. Jan 12, 19:50

User Interface

More and more of you are using large, high-resolution screens to play X-Universe games, but until now the in-game menus have remained resolutely small, often taking up only a tiny proportion of the available space. While we were sorting this out, we also took the opportunity to make a few other little changes to make those menus easier to read and use.


All the in-game menus were checked to see which ones could benefit from being bigger. As a result of these checks, many menus remain the same size as before, one or two are fixed in height but are taller than they were before, some will expand to use as much of the available screen height as possible but remain the same width, and a special few expand both height- and width-wise to really take full advantage of your screen.


The menus that have changed the most are the maps. These now expand to fill as much of the screen as possible while still retaining their overall shape.

The Galaxy Map now fills as much of the screen as possible so that you can get a broader overview of where you are in the galaxy. The information panel to its right doesn't have all that much on it, so this doesn't expand. The other big change on the Galaxy Map is that navigation to a sector whose name you know is a lot easier than before. Just start typing the name of the sector you want to find and you will be taken there! If there are several sectors matching the letters you've typed then they will be listed in the information panel; you can either keep typing, or select on one of the names in the list using the normal mouse or keyboard menu controls. Pressing Escape or simply waiting a few seconds will clear the typed text and the list. One final, smaller change in the Galaxy Map is that sectors that are in a state of war are shown in orange.

The Sector Map also now fills as much of the screen as it can. Since the list of objects in a sector can be quite long, the panel to the right of the map itself expands to fill as much of the screen height as possible; it won't, however, overlap your radar, so it may sometimes be a little shorter than the map. Other than that the Sector Map hasn't changed significantly.

If you find that the new large maps sometime block your view too much then you can use the new Resize button (F5 by default) to switch between the old and new sizes. There's also a little resize icon in the bottom right corner of the map that you can click on with the mouse if you prefer.


Familiar menus that now make much more use of of the available screen height include:

• Property
• Trade
• Adjust Station Parameters
• Stock Exchange
• Best Buy/Sell
• Message Log
• Wings
• Controls
• AL Options
• Script Editor
• Mission Director

Like the maps, graphs are also displayed using as much of the available screen space as possible, but the side panel containing the description and key for the graph doesn't expand. You also can't resize graphs down to a smaller size, as this would make most of them pretty much unreadable!

Several menus have also had the same treatment applied to them that was given to the information panel to the right of the Sector Map. In other words, ships are listed next to their icons and more information is shown to help you identify them at a glance. Menus that have had this treatment include:

• Trade (for shipyards)
• Adjust Station Parameters (for the Player HQ)
• Landed Ships
• Owned Ships

[2.0] Oh, and the long-standing frustration of trying to type repeated characters in names and numbers has finally been laid to rest! No more "Thereshal*pause*lbewings".
Last edited by CBJ on Wed, 22. Feb 12, 12:59, edited 3 times in total.

Posts: 51470
Joined: Tue, 29. Apr 03, 00:56

Post by CBJ » Tue, 31. Jan 12, 11:24

Script Commands

With the player account now able to hold a lot more money, new script commands are required to allow scripts to interact with that account. Note that the old script commands to access the player account will still work, but that when reading the player account value using the old script command, any amount over 2 billion credits will be reported as exactly 2 billion credits. Use the new script commands to get the real value.

Code: Select all

• %0get billions of credits in player account
• %0get amount of credits under a billion in player account
• %0get full amount of credits in player account formatted as string: include separators %1, use millions suffix for very large numbers %2
• %0format large number pair as string: billions %1, units %2, include separators %3, use millions suffix for very large numbers %4
The custom menu system has been extended to give scripts even more control over the appearance and behaviour of custom menus.

Code: Select all

• add info line section to menu: %0
• add info line heading to menu: %0, heading=%1
• %0create menu return value: open menu, menu script=%1, script args=%2
• %0create menu return value: run script %1, script args=%2
• add trade bar to menu: %0, text=%1, min=%2, max=%3, current=%4, return value=%5, left text=%6, right text=%7
• add new grouping to menu: %0, text=%1, open=%2
• add end grouping to menu: %0
• set menu option: %0, maximum infolines=%1
• set menu option: %0, page up/down keys for info=%1
• %0create menu return value: command 'Open All Groups'
• %0create menu return value: command 'Close All Groups'
• add non selectable menu item: %0, text=%1
• set menu option: %0, use hover line=%1
• set menu option: %0, maximum menu height=%1 lines
The Script Editor has full access to the graph system. Graphs can be added to, and removed from, the list of available graphs for a given object or type of object, and the entries in that list call further scripts to display the actual graphs. Using the custom menu system, it is also possible for those scripts to present options screens prior to displaying the final data.

Code: Select all

• add player graph: script=%0 pageid=%1 textid=%2 group pageid=%3 group textid=%4 subgroup=%5 \(0-7\)
• remove player graph: script=%0 group pageid=%1 group textid=%2
• add class graph: class=%0 script=%1 pageid=%2 textid=%3 group pageid=%4 group textid=%5 subgroup=%6 \(0-7\)
• remove class graph: class=%0 script=%1 group pageid=%2 group textid=%3
• %0 add object graph: script=%1 pageid=%2 textid=%3 group pageid=%4 group textid=%5 subgroup=%6 \(0-7\)
• %0 remove object graph: script=%1 group pageid=%2 group textid=%3
• show graph using graph data array %0
Script commands can also interact, to a limited extent, with the Stock Exchange.

Code: Select all

• %0 set stock exchange unlock state: %1
• %1%0 get stock exchange unlock state
• %0 get all unlocked stock exchanges
• %1%0 get owned share count
• %0 set owned share count: %1
• set stock exchange corporate reports menu item: Enabled=%0
• set stock exchange company reports menu item: Enabled=%0
• set stock exchange commodity reports menu item: Enabled=%0
• %1%0 is stock exchange accessible
Some handy statistics used by the graph system and the Stock Exchange have been wrapped up into script commands to make the calculations quicker and easier. As a result, your scripts can also access this data.

Code: Select all

• %0get trade stats for sectors: %1, only include these wares: %2, treat docks as producers: %3, include player docks: %4
• %0get trade stats for sector: %1, only include these wares: %2, treat docks as producers: %3, include player docks: %4
[2.0] • %0get player ship usage time: %1
[2.0] • %0get player object killed count: %1
• %1%0 get player object count in sector: class=%2
Fleet control functionality is available through another series of script commands, giving you the option to customise and extend the behaviour of your fleets.

Code: Select all

• %1%0 get fleet ships: only currently with fleet: %2
• %0 set fleet leader: %1
• %0 remove from fleet
• %0 switch fleet leader to: %1
• %1%0 is in fleet
• %1%0 get fleet leader
• %1%0 is fleet leader
• %1%0 is currently with fleet
• %0 set with fleet: %1
The ongoing war between the Terrans and the Commonwealth races includes a certain amount of war state data. You can get information about the current state of the war, and identify ships and stations involved in the war, using a series of script commands. You cannot, however, influence the progress of the war this way.

Code: Select all

• %1%0 get WarObject ID
• %0get name of current War State
• %0get name of next expected War State \(final choice may differ!\)
• %0is player currently observing War State
• %0get progress of current War State
• %0get start time of current War State
• %0get end time of current War State \(may change!\)
• %0did player observe currently active War State
• %0get duration of War State %1
Some script commands have been added which relate to the script system itself. You can now set up custom options menus for your scripts and have them accessible from the main in-game options menu. You can also check for the existence of scripts, and have further options for assigning hotkeys to scripts.

Code: Select all

• add script options: script=%0 pageid=%1 textid=%2
• remove script options: script=%0
• %0does script exist: %1
• %0does script name exist: %1
• %0register hotkey: page=%1 id=%2, to call script %3
• %0get hotkey index, script: %1
• %0register hotkey: page=%1 id=%2, to call script name %3
• %0get hotkey index, script name: %1
There are now well over 150 different game parameters that can be adjusted through the globals.txt file. A new script command gives you access to those values. Note that there is a limitation to this script command, namely that it cannot tell you the internal default value used by the game if there is no corresponding entry in the file.

Code: Select all

• %0get global parameter value: parameter=%1 default=%2
Some script commands just don't fit neatly into any category. These mostly extend your ability to get information about the galaxy and the objects in it.

Code: Select all

• %0get ship class from subtype: %1
• %0get race id for race: %1
• %1%0 mine is armed
• %0set mine armed state to %1
[2.0] • %1%0get complex hangar
• %0find gate: flags=%1, refobj=%2, max dist=%3, refpos=%4 object check=%5
• %1%0 is gate/beacon: %2 jumpable
• %0get minimum, %1, %2, %3, %4, %5
• %1%0 fire all turrets on target: %2, next target filter=%3
• add trade rank based on profit: race=%0 profit=%1
• %1%0 is sector visible
• %0 set job override name: %1
• %0get bullet flags of laser %1 
• %0get colour code: red=%1 green=%2 blue=%3 transparency=%4
• %0get cluster sectors for race %1, startsector: %2, threshold: %3, only include known: %4
Last edited by CBJ on Tue, 31. Jan 12, 15:24, edited 3 times in total.

Posts: 51470
Joined: Tue, 29. Apr 03, 00:56

Post by CBJ » Tue, 31. Jan 12, 12:58

Mission Director

Like the Script Editor, the Mission Director too has been extended to cover relevant in-game functionality. At the same time we have also decided to give you access to our Mission Director debugging tools, to help you to develop your own missions more quickly and efficiently.

New actions that we have added are:

Code: Select all

[2.0] • <set_notoriety> - set the notoriety between non-player races
• <activate_job> - activate a job that is defined in the jobs file as dormant
• <set_war_reports> - enable or disable war reports (the player can override this and disable them completely)
• <set_override_name_flags> - set which parts of an object's standard name will be displayed and/or spoken
• <set_group_override_name_flags> - set which parts of the standard name will be displayed and/or spoken for all objects in a group
Actions that have been extended are:

Code: Select all

• <reward_player> - added a <war> node to adjust the player's "war score", i.e. their contribution to the war effort
• <create_ship> - added "safety" attribute to set whether ship should be moved to a "safe spot" or not on creation
• <find_object> - added "silent" attribute to supress errors when no object is found (applies to all similar actions)
• <find_object> - added "war" attribute to find only war/non-war objects (applies to all similar actions)
• <count_object> - added "silent" attribute to supress errors when no object is found (applies to all similar actions)
• <count_object> - added "war" attribute to count only war/non-war objects (applies to all similar actions)
• <set_objective> - added "active" attribute to make the objective the active one
• <set_state> - can also now be used to lock/unlock Stock Exchange stations
• <warp_object> - added "warp" attribute to determine whether warp effect should be shown
New conditions are:

Code: Select all

• <war_score_changed> - event raised when the player influences a change in the current "war score"
New variables that are available are:

Code: Select all

• {player.money.billions} - billions of credits in the player's main account
• {player.money.billions.formatted} - billions of credits in the player's main account, formatted using digit separators
• {player.money.units} - amount of credits under a billion in the player's main account
• {player.money.units.formatted} - amount of credits under a billion in the player's main account, formatted using digit separators
• {player.money.large} - full amount of credits in the player's main account, formatted without digit separators
• {player.money.large.formatted} - full amount of credits in the player's main account, formatted with digit separators
• {player.menu.speech} - whether speech is currently being played
• {player.menu.speech.priority} - priority of currently active speech
• {object.subtype@object} - internal subtype code for object
• {object.warobjectid@object} - WarObject ID for object
• {object.locked@stockexchange} - for Stock Exchange stations, whether it is currently locked
• {object.locked.north@hub} - for the HUB, whether the specified gate is currently locked
[2.0] • {object.realigntime@hub} - earliest time of next gate realignment
• {lookup.type.subtype@typecode} - internal subtype code for typecode
• {lookup.subtype@subtype} - internal subtype code for specified subtype value
• {war.state@statename} - id of specified war state
• {war.state.name@statename} - name of specified war state
• {war.state.duration@statename} - duration of specified war state
• {war.currentstate} - current war state
• {war.currentstate.starttime} - time current war state started
• {war.currentstate.endtime} - time current war state is expected to end
• {war.currentstate.duration} - total expected duration of current war state
• {war.currentstate.observed} - whether the current war state has been observed by the player (directly or via the map)
• {war.currentstate.progress} - percentage progress of current war state
• {war.nextstate.name} - name of next expected war state
• {war.nextstate.duration} - total duration of next expected war state
One other change that we've made is to allow Mission Director variables to be used in fields that take boolean values. Examples of how this can be useful can be seen in the various standard and plot missions that are supplied with the game.
Last edited by CBJ on Tue, 31. Jan 12, 15:24, edited 2 times in total.

Posts: 51470
Joined: Tue, 29. Apr 03, 00:56

Post by CBJ » Tue, 31. Jan 12, 13:35


Those of you who want to create your own graphs will need a little more information about how to do so.

Warning: this description is not for the faint-hearted!

The script command to create a graph accepts a single parameter, which is an array containing all the data required to display the graph. The format of the array is as follows:

Code: Select all

graph = { graph-data [, labels [, x-axis [, y-axis [, series-labels [, series-colours ] ] ] ] ] }

graph-data = series-data | { series-data [, series-data [, series-data ... ] ] }
labels = { [ title [, x-axis-label [, y-axis-label [, descriptive-text ] ] ] ] }
x-axis, y-axis = item-labels | axis-range
series-labels { [ series-label [, series-label [, series-label ... ] ] ] }
series-colours { [ series-colour [, series-colour [, series-colour ... ] ] ] }

series-data = { x0, y0 , x1, y1 [, x2, y2 [, x3, y3 ... ] ]  }
xN, yN = number | item-label

item-labels = { [ item-label [, item-label [, item-label ... ] ] ] }
axis-range = { [ min [, max [, step [, factor [, divisor [, format]]]] ] ] }

format = sprintf-format | @strftime-format

series-colour = RGB-colour
x-axis-label, y-axis-label, descriptive-text, series-label, item-label, sprintf-format, strftime-format = text | "{pageid,textid}" | { pageid, textid }
pageid, textid, min, max, step, factor, divisor = number
An example graph data array, which produces a vertical bar graph:

Code: Select all

  // graph data
    // series 1 data
    { "a", 3, "b", 2, "c", 8},
    // series 2 data
    { "a", 7, "b", 3, "c", 5}
  // labels
  { "Title", "X-Axis", "Y-Axis", "This is a sample graph" }
  // x axis (named items)
  { "a", "b", "c" }
  // y axis (numbered with defined start/end but automatic step)
  { 0, 10 }
  // series names
  { "Series 1", "Series 2" }
  // series colours (red and yellow)
  { 0xffd20101, 0xffd2d201 }
The graph display is designed to do as much as possible automatically, so there are very few optional settings. Three basic graph styles are provided; bar graphs, line graphs and plots, with a number of sub-styles. The graph chooses between them automatically depending on the data provided in the array.

A bar graph will be displayed if one (and only one) of the axis datasets contains item labels (text) rather than axis range values (numbers). If it's the x-axis dataset that contains item labels then a vertical bar graph will be displayed; if it's the y-axis then you'll get a horizontal bar graph. With small datasets the bars for different series will be displayed alongside one another, but if they get too narrow then the display will automatically switch to an overlapping format. If there are simply too many bars then they may overflow into the next column and start getting mixed up; there is nothing you can do about this other than reduce the amount of data you are trying to display.

A line graph will be displayed if both of the axis datasets contain axis range values rather than labels and the values on the x-axis of the graph's main point data are in ascending order, i.e. no x value is lower than the previous x value in the same series. If the graph ends up such that several points on a line graph would be very close together then the "x" marks for all points on the graph will be omitted, and just lines drawn.

A simple plot of points will be displayed if both of the axis data arrays contain axis range values rather than labels, but the values on the x-axis of the graph's main point data are not in ascending order. In this case all points are plotted in their exact location, so points in one series can hide points in another. A plot of points will also be displayed if both of the axis data arrays contain item labels (text). In this case point positions are offset slightly between series, within their rows and columns, since the exact position is less important. If there are too many series then they will start to overlap and cease to be easily distinguished again.

For axes defined by item labels, you will need to make sure that all the items you want to be displayed are listed. Points in the graph which do not match any of the item labels will not be displayed, and rows or columns which do not have any corresponding points will remain empty.

If no axis data is provided, or if only a partial set of axis range values is supplied, then the graph display will attempt to calculate sensible axis range values and step size using graph data points provided. If no axis data is provided and the graph data for a given axis contains only names then the graph will use those names and generate a bar graph, or a plot if the graph data for both axes just contains names. If there are any numbers then it will instead work out minimum and maximum values, and try to work a sensible scale of value labels between those. Named values on axes otherwise containing numbers will give strange results!

Note that minimum and maximum axis values will use the full available space, so minimum and maximum values will be at the axis and the side of the graph respectively. For bar graphs this will result in bars whose value is equal to the minimum being invisible, so you will normally want to provide at least a minimum value, lower than any data value, in this case. If you do provide a minimum then values which are less than that minimum will not be visible in either bar graphs or plots. If you provide a maximum axis range value then points on a plot or line graph which are beyond that maximum will not be drawn, while bars on a bar graph will be shown with a few stripes at the end to show that they exceed the maximum value. Lines on a line graph will be drawn even if they go out of range, either below the minimum or above the maximum, and even if that means drawing over the menu title and border!

For numeric axes, in addition to the minimum, maximum and step size, you can also specify a factor and divisor to scale the axis labels up or down. For example, the x axis could use data to an accuracy of 1 minute but the axis labels could display hours by supplying a factor of 1 and a divisor of 60. You can also specify a formatting string indicating how the number should be displayed. As with labels, the format string can be supplied as raw text, a text entry format string in the form "{pageid, textid}" or an array of two elements containing the pageid and textid as integers. If not supplied, the graph uses the standard sprintf "%d" format string to format the number, but this can be replaced with any sprintf format string. If the format string starts with an "@" symbol, then the rest of the format string is instead interpreted as a strftime format string, allowing the axis label to display a variety of date formats. If the "@" symbol has no format string following it then the standard in-game date format for the game's current language is used.

The graph will try to adjust its size to accommodate labels, but space is limited so you need to avoid using long labels in most places. Labels associated with the y axis, both the main axis label and the item labels, have some flexibility but will cause the graph to get narrower. There is plenty of room for the main x axis label, but the item labels for this axis are particularly limited. To reduce the impact of this, the graph will automatically use two lines of text and alternate between them if the labels are too wide to fit in the available space. If this is still insufficient then item labels will simply overlap. Series labels must fit on one line in the information panel, but the descriptive text will flow across as many lines as required.

Note that when choosing series colours, you may find the new script command to get a colour code from red, green and blue components useful.

If you've read this far and are still conscious then congratulations, and good luck with creating your own graphs!


Return to “X Trilogy Universe”