<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.atomictorch.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Ixby</id>
	<title>AtomicTorchWiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.atomictorch.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Ixby"/>
	<link rel="alternate" type="text/html" href="https://wiki.atomictorch.com/Special:Contributions/Ixby"/>
	<updated>2026-05-30T11:39:58Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.41.0</generator>
	<entry>
		<id>https://wiki.atomictorch.com/index.php?title=VoidExpanse/scripting_api&amp;diff=187</id>
		<title>VoidExpanse/scripting api</title>
		<link rel="alternate" type="text/html" href="https://wiki.atomictorch.com/index.php?title=VoidExpanse/scripting_api&amp;diff=187"/>
		<updated>2014-05-21T12:28:42Z</updated>

		<summary type="html">&lt;p&gt;Ixby: /* Scripting overview */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Scripting overview =&lt;br /&gt;
&lt;br /&gt;
== Basic concepts ==&lt;br /&gt;
Scripting is done via actions that custom scripts can subscribe to. There are number of actions that are called by server automatically, plus users can create their own actions and call them when needed. This also makes possible for users to create scripting frameworks for others to use.&lt;br /&gt;
Each action has one argument (ΓÇ£argsΓÇ¥) that is a JavaScript object containing several variables inside depending on a particular action. In some actions this ΓÇ£argsΓÇ¥ object can be empty. But either way it allows for unified format for all actions within the scripting system.&lt;br /&gt;
&lt;br /&gt;
=== Scripting naming convention ===&lt;br /&gt;
* String IDΓÇÖs in mods can only contain alphanumeric characters and underscores. Any other characters are illegal.&lt;br /&gt;
* Using underscore for variables and properties.&lt;br /&gt;
* Using CamelCase for functions and methods.&lt;br /&gt;
* zxc_q - ΓÇ£qΓÇ¥ in the variable always represents ΓÇ£quantityΓÇ¥ or ΓÇ£number of ...ΓÇ¥.&lt;br /&gt;
* zxc_id - ΓÇ£idΓÇ¥ always means either string id from XML file if it is of the type of string, or if it is uint then it is entity (instance) id of some object.&lt;br /&gt;
* zxc_req - ΓÇ£reqΓÇ¥ always means ΓÇ£requirementsΓÇ¥.&lt;br /&gt;
* All mods should prefix their variables, functions, classes, storage keys and all the rest with a key for isolation from other mods, example of such prefix would be ΓÇ£prf_ΓÇ¥ -&amp;gt; ΓÇ£prf_some_variableΓÇ¥, ΓÇ£prf_SomeFunctionΓÇ¥.&lt;br /&gt;
&lt;br /&gt;
=== Internal scripts (Overridable) ===&lt;br /&gt;
{{Main|VoidExpanse/Internal_scripts|Internal scripts}}&lt;br /&gt;
These scripts are called usually once and only in a particular situation. Each of these script files must exist in only one instance. If a new script is added the previous one will be overridden. Each of the script files must implement only one script action. Usually players should not modify these scripts unless they want to completely re-implement some game feature.&lt;br /&gt;
&lt;br /&gt;
=== Global scripts (called in the world dynamically) ===&lt;br /&gt;
{{Main|VoidExpanse/Global_scripts|Global scripts}}&lt;br /&gt;
Global scripts are executed continuously during gameplay. For each event there could be many bound scripts. Also it is possible to create custom actions and subscribe to them.&lt;br /&gt;
&lt;br /&gt;
=== Object scripts ===&lt;br /&gt;
{{Main|VoidExpanse/Object_scripts|Object scripts}}&lt;br /&gt;
Object scripts are scripts attached to a particular game object. When that object starts an action, if script has an appropriate handler for this action it will be executed.&lt;br /&gt;
&lt;br /&gt;
=== Events ===&lt;br /&gt;
[[VoidExpanse/events|List of Events]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== VoidExpanse Scripting API ==&lt;br /&gt;
&lt;br /&gt;
=== Library inclusion and scopes usage ===&lt;br /&gt;
Preprocessor directive &amp;lt;code&amp;gt;include(libname.js);&amp;lt;/code&amp;gt; includes a library scripts into a current JS instance. Library scripts also can include each other (no echo effect will appear).&lt;br /&gt;
&lt;br /&gt;
Allows to use functions and objects of these libraries in this particular script instance.&lt;br /&gt;
* Inclusions of libraries directive must be the first lines in the script file (not necessarily, but preferably - to maintain order in scripts).&lt;br /&gt;
* All include directives must be before first function declaration.&lt;br /&gt;
&lt;br /&gt;
Preprocessor directive &amp;lt;code&amp;gt;using(scopename);&amp;lt;/code&amp;gt; allows to use specific scope in a specific script. Scope name must be an existing scope name (see scopes below). Except for some specific scopes (like topic or npc), which are available only in specific places, like topic scripts or AI behaviors.&lt;br /&gt;
&lt;br /&gt;
=== Scopes ===&lt;br /&gt;
Each scope contains a number of functions available from it.&lt;br /&gt;
&lt;br /&gt;
* [[VoidExpanse/scope-config]] (available: global)&lt;br /&gt;
* [[VoidExpanse/scope-script]] (available: global)&lt;br /&gt;
* [[VoidExpanse/scope-actions]] (available: global)&lt;br /&gt;
* [[VoidExpanse/scope-server]] (available: global)&lt;br /&gt;
* [[VoidExpanse/scope-generator]] (available: global)&lt;br /&gt;
* [[VoidExpanse/scope-spawn]] (available: global)&lt;br /&gt;
* [[VoidExpanse/scope-station]] (available: global)&lt;br /&gt;
* [[VoidExpanse/scope-chat]] (available: global)&lt;br /&gt;
* [[VoidExpanse/scope-console]] (available: global)&lt;br /&gt;
* [[VoidExpanse/scope-storage]] (available: global)&lt;br /&gt;
* [[VoidExpanse/scope-game]] (available: global)&lt;br /&gt;
* [[VoidExpanse/scope-ship]] (available: global)&lt;br /&gt;
* [[VoidExpanse/scope-visual]] (available: global)&lt;br /&gt;
* [[VoidExpanse/scope-player]] (available: global)&lt;br /&gt;
* [[VoidExpanse/scope-topic]] (available: only in topics)&lt;br /&gt;
* [[VoidExpanse/scope-topics]] (available: global)&lt;br /&gt;
* [[VoidExpanse/scope-relations]] (available: global)&lt;br /&gt;
* [[VoidExpanse/scope-npc]] (available: global)&lt;br /&gt;
* [[VoidExpanse/scope-timer]] (available: global)&lt;br /&gt;
* [[VoidExpanse/scope-debug]] (available: global)&lt;br /&gt;
&lt;br /&gt;
== Device scripts ==&lt;br /&gt;
{{Main|VoidExpanse/Device_scripts|Device scripts}}&lt;br /&gt;
Devices uses effect scripts, which is similar to any object scripts, but uses itΓÇÖs own special system of arguments. These scripts are shared between instances of the same device type, therefore global variables in this scripts are denied.&lt;br /&gt;
&lt;br /&gt;
There are four possible functions for device script.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Consumables scripting ==&lt;br /&gt;
{{Main|VoidExpanse/Consumable_scripting|Consumables scripting}}&lt;br /&gt;
Consumables can be programmed with standart xml-values, but, in order to implement something&lt;br /&gt;
special, one can use special techniques, described in this article.&lt;/div&gt;</summary>
		<author><name>Ixby</name></author>
	</entry>
	<entry>
		<id>https://wiki.atomictorch.com/index.php?title=VoidExpanse/Adding_Ships&amp;diff=186</id>
		<title>VoidExpanse/Adding Ships</title>
		<link rel="alternate" type="text/html" href="https://wiki.atomictorch.com/index.php?title=VoidExpanse/Adding_Ships&amp;diff=186"/>
		<updated>2014-05-21T05:19:29Z</updated>

		<summary type="html">&lt;p&gt;Ixby: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The easiest way to get a feel for modifying the available hulls within the game, is to look at the core game files and use them as examples/templates.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Core Game Mod ==&lt;br /&gt;
&lt;br /&gt;
The game is designed to incorporate mods easily, and the single-player/main game is designed as a standard mod that is loaded by default. &lt;br /&gt;
In the main VoidExpanse directory, there is a &#039;&#039;ModsConfig.xml&#039;&#039; file, which looks something like this...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot; standalone=&amp;quot;yes&amp;quot;?&amp;gt;&lt;br /&gt;
  &amp;lt;mods&amp;gt;&lt;br /&gt;
  &amp;lt;mod&amp;gt;core_0.1.0&amp;lt;/mod&amp;gt;&lt;br /&gt;
  &amp;lt;/mods&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You need to edit this file to include each mod you wish to add to your game, which I&#039;ll explain below. &lt;br /&gt;
&lt;br /&gt;
Notice the only mod it loads by default is &#039;&#039;core_0.1.0&#039;&#039;; You can find this mod in your VoidExpanse main folder under /Mods/core.cpk&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Core.cpk&#039;&#039; includes all of the basic game files, such as hulls, weapons, and devices, but also includes AI behavior and basic game scripts.&lt;br /&gt;
The game package also provides two example &#039;mods&#039; in the /Mods/ directory, but these are listed as .mpk files (&#039;&#039;devmod.mpk&#039;&#039; &amp;amp; &#039;&#039;masacre.mpk&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Both of these mod/pack files (.cpk and .mpk) are basically .zip files that contain the game information&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Open the Core.cpk file as you would a .zip file, and you&#039;ll see two folders, plus a &#039;&#039;headers.xml&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Your headers.xml file should look like this, straight out of core.cpk...&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
  &amp;lt;root&amp;gt;&lt;br /&gt;
  &amp;lt;id&amp;gt;core&amp;lt;/id&amp;gt;&lt;br /&gt;
  &amp;lt;title&amp;gt;Core Game Data&amp;lt;/title&amp;gt;&lt;br /&gt;
  &amp;lt;author&amp;gt;AtomicTorch Studio&amp;lt;/author&amp;gt;&lt;br /&gt;
  &amp;lt;description&amp;gt;Base mod for VoidExpanse. Contains all required game data to play the game.&amp;lt;/description&amp;gt;&lt;br /&gt;
  &amp;lt;version&amp;gt;0.1.0&amp;lt;/version&amp;gt;&lt;br /&gt;
  &amp;lt;updated&amp;gt;20.08.2013&amp;lt;/updated&amp;gt;&lt;br /&gt;
  &amp;lt;modtype&amp;gt;2&amp;lt;/modtype&amp;gt; &amp;lt;!-- 1 - server, 2 - client-server, 3 - client --&amp;gt;&lt;br /&gt;
  &amp;lt;/root&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Make a copy of that &#039;&#039;headers.xml&#039;&#039; file, but don&#039;t change the name.&lt;br /&gt;
Now make a basic compressed file, let&#039;s say called &#039;&#039;testmod.mpk&#039;&#039; and edit your copy of headers.xml...&lt;br /&gt;
The only important thing to change is the ID, which should match your .mpk filename. So, for this example it should look like this:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
  &amp;lt;root&amp;gt;&lt;br /&gt;
  &#039;&#039;&#039;&amp;lt;id&amp;gt;testmod&amp;lt;/id&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
  &amp;lt;title&amp;gt;Core Game Data&amp;lt;/title&amp;gt;&lt;br /&gt;
  &amp;lt;author&amp;gt;AtomicTorch Studio&amp;lt;/author&amp;gt;&lt;br /&gt;
  &amp;lt;description&amp;gt;Base mod for VoidExpanse. Contains all required game data to play the game.&amp;lt;/description&amp;gt;&lt;br /&gt;
  &amp;lt;version&amp;gt;0.1.0&amp;lt;/version&amp;gt;&lt;br /&gt;
  &amp;lt;updated&amp;gt;20.08.2013&amp;lt;/updated&amp;gt;&lt;br /&gt;
  &amp;lt;modtype&amp;gt;2&amp;lt;/modtype&amp;gt; &amp;lt;!-- 1 - server, 2 - client-server, 3 - client --&amp;gt;&lt;br /&gt;
  &amp;lt;/root&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now, when you place your &#039;&#039;testmod.mpk&#039;&#039; file into the /Mods directory with the rest of the game files (core.cpk and the other .mpk files), it will load when you begin the game.&lt;br /&gt;
Right now, though, there is nothing inside the mod file to load!&lt;br /&gt;
&lt;br /&gt;
The final step is making sure the mod gets loaded.&lt;br /&gt;
Open up the &#039;&#039;ModsConfig.xml&#039;&#039; from the main game directory. We need that ID and VERSION here...&lt;br /&gt;
If my mod file was &#039;&#039;testmod.mpk&#039;&#039; and I left the &amp;lt;version&amp;gt; at 0.1.0, my &#039;&#039;ModsConfig.xml&#039;&#039; should look like this:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot; standalone=&amp;quot;yes&amp;quot;?&amp;gt;&lt;br /&gt;
  &amp;lt;mods&amp;gt;&lt;br /&gt;
  &amp;lt;mod&amp;gt;core_0.1.0&amp;lt;/mod&amp;gt;&lt;br /&gt;
  &amp;lt;mod&amp;gt;testmod_0.1.0&amp;lt;/mod&amp;gt;&lt;br /&gt;
  &amp;lt;/mods&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Don&#039;t forget the underscore between the id/filename and the version info.&lt;br /&gt;
&lt;br /&gt;
Simple, right?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Actually Adding a Ship ==&lt;br /&gt;
&lt;br /&gt;
Now that you have an empty .mpk file (except for the &#039;&#039;headers.xml&#039;&#039;), you can start adding things like ships and weapons.&lt;br /&gt;
There are three basic requirements for adding a ship item to the game:&lt;br /&gt;
  1.Item Data&lt;br /&gt;
  2.Model Data&lt;br /&gt;
  3.Texture Data&lt;br /&gt;
If there was a 4th requirement, it might be the sound effects, but I&#039;m not sure. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The easiest way to begin is to make a copy of the starter shuttlecraft, since it costs nothing and is available immediately.&lt;br /&gt;
You can skip the last two(/three) requirements by just copying the basic Item Data file and making &#039;&#039;slight&#039;&#039; adjustments...&lt;br /&gt;
&lt;br /&gt;
Open up core.cpk and you&#039;ll see two directories: &#039;&#039;Data&#039;&#039; and &#039;&#039;Content&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
For now, you just want &#039;&#039;Data&#039;&#039;...Go further, into &#039;&#039;/items&#039;&#039;, and you&#039;ll see the files for each usable item/cargo in the game. In this case, we want to just copy the &#039;&#039;hull_shuttle.xml&#039;&#039; file.&lt;br /&gt;
Copy it somewhere, and rename it to something else...For these purposes, it will be renamed to &#039;&#039;hull_skiff.xml&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
After renaming it, open up the file and you&#039;ll see quite a bit of stuff in there. Ignore it all for now, and focus on the top bit...It should look something like this:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;root&amp;gt;&lt;br /&gt;
  &amp;lt;header&amp;gt;&lt;br /&gt;
  &amp;lt;game_version&amp;gt;1.0.0&amp;lt;/game_version&amp;gt;&lt;br /&gt;
  &amp;lt;id&amp;gt;hull_shuttle&amp;lt;/id&amp;gt;&lt;br /&gt;
  &amp;lt;title&amp;gt;Civilian shuttle hull&amp;lt;/title&amp;gt;&lt;br /&gt;
  &amp;lt;description&amp;gt;It would probably be a good idea to get rid of this as soon as you can...&amp;lt;/description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The important thing here is to rename the &#039;&#039;&amp;lt;id&amp;gt;&#039;&#039; like we did before, when creating the mod file. In this case, my &#039;&#039;&amp;lt;id&amp;gt;&#039;&#039; line would look like this:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;id&amp;gt;hull_skiff&amp;lt;/id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And change the &amp;lt;title&amp;gt; to something else, so you can verify that it works later on&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;title&amp;gt;Civilian Skiff&amp;lt;/title&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Save that .xml file (&#039;&#039;hull_skiff.xml&#039;&#039;), and open up your mod file .mpk...&lt;br /&gt;
The game looks through your .mpk file the same way it looks through the core .cpk game files, so your new &#039;&#039;hull_skiff.xml&#039;&#039; needs to be placed in &#039;&#039;/data/items&#039;&#039; inside your mod file (the same file path where we got the original &#039;&#039;hull_shuttle.xml&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
So finally, if you kept the same naming conventions as I did here, you should have:&lt;br /&gt;
&lt;br /&gt;
  1. A compressed/zip file named &#039;&#039;testmod.mpk&#039;&#039;&lt;br /&gt;
  2. A modified &#039;&#039;headers.xml&#039;&#039; file inside &#039;&#039;testmod.mpk&#039;&#039;&lt;br /&gt;
  3. A modified ModsConfig.xml file that includes your mod&lt;br /&gt;
  4. A /data/items/hull_skiff.xml file inside your mod .mpk&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This should be enough for the game to register and load your new Civilian Skiff, which is almost identical to the starter shuttle...except for the name. But hey, everything is in the brand, right?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[VoidExpanse/Items_(Hull)|Check out the breakdown of the hull .xml file here]]&lt;/div&gt;</summary>
		<author><name>Ixby</name></author>
	</entry>
	<entry>
		<id>https://wiki.atomictorch.com/index.php?title=VoidExpanse/Items_(Hull)&amp;diff=185</id>
		<title>VoidExpanse/Items (Hull)</title>
		<link rel="alternate" type="text/html" href="https://wiki.atomictorch.com/index.php?title=VoidExpanse/Items_(Hull)&amp;diff=185"/>
		<updated>2014-05-21T05:17:21Z</updated>

		<summary type="html">&lt;p&gt;Ixby: Created page with &amp;quot; == HULL/SHIP ITEM FILE BREAKDOWN ==   &amp;#039;&amp;#039;See Core Mod / Adding Ships for information about how to add a new ship/item into the game.&amp;#039;&amp;#039;   We&amp;#039;ll use...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== HULL/SHIP ITEM FILE BREAKDOWN ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;See [[VoidExpanse/Adding_Ships|Core Mod / Adding Ships]] for information about how to add a new ship/item into the game.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
We&#039;ll use the basic shuttle item file as a template, found in core.cpk/data/items/hull_shuttle.xml&lt;br /&gt;
&lt;br /&gt;
Opening the .xml file, it should have a whole bunch of nicely spaced lines of nonsense that I can&#039;t format easily to showcase as an example.&lt;br /&gt;
So we&#039;ll do it piece by piece...&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Header&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;root&amp;gt;&lt;br /&gt;
  &amp;lt;header&amp;gt;&lt;br /&gt;
  &amp;lt;game_version&amp;gt;1.0.0&amp;lt;/game_version&amp;gt;&lt;br /&gt;
  &amp;lt;id&amp;gt;hull_shuttle&amp;lt;/id&amp;gt;&lt;br /&gt;
  &amp;lt;title&amp;gt;Civilian shuttle hull&amp;lt;/title&amp;gt;&lt;br /&gt;
  &amp;lt;description&amp;gt;It would probably be a good idea to get rid of this as soon as you can...&amp;lt;/description&amp;gt;&lt;br /&gt;
  &amp;lt;enabled&amp;gt;1&amp;lt;/enabled&amp;gt;&lt;br /&gt;
  &amp;lt;/header&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;game_version&amp;gt;  Leave it alone.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;id&amp;gt; The filename, without extension&lt;br /&gt;
&lt;br /&gt;
&amp;lt;title&amp;gt; The item name as shown in-game (in store or inventory)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;description&amp;gt; The description as shown in-game...&lt;br /&gt;
&lt;br /&gt;
&amp;lt;enabled&amp;gt; I&#039;m guessing just a discrete way to control the item&#039;s availability, for debug?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Graphics&#039;&#039;&#039;&lt;br /&gt;
  &amp;lt;gfx&amp;gt;&lt;br /&gt;
  &amp;lt;icon&amp;gt;items/hull_shuttle.png&amp;lt;/icon&amp;gt;&lt;br /&gt;
  &amp;lt;/gfx&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The only thing here is the path to the in-game icon picture for the item. In this case, we are using the icon provided in the core game files. If you want to use your own icon, you need to add it to your mod (.mpk) file:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Item icons are placed into&#039;&#039; MOD.mpk/content/textures/items &#039;&#039;and must have the same name as called under the &amp;lt;gfx&amp;gt; section above.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;DATA&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Pretty much the remainder of the hull/item file is covered under the &amp;lt;data&amp;gt; header...&lt;br /&gt;
&lt;br /&gt;
&amp;lt;type&amp;gt; Unknown?&lt;br /&gt;
&lt;br /&gt;
&amp;lt;shops_level&amp;gt; The minimum level of shop that will carry the item; Level 1 items are carried by the starting station.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;price&amp;gt; The item&#039;s unmodified price&lt;br /&gt;
&lt;br /&gt;
&amp;lt;upgrades_max&amp;gt; Unknown?&lt;br /&gt;
&lt;br /&gt;
&amp;lt;upgrades&amp;gt; Unknown?&lt;br /&gt;
&lt;br /&gt;
&amp;lt;requirements&amp;gt; Skill (or other?) requirement for usage of the item/hull. (eg. Heavy Frigates)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;effects&amp;gt; The effects header defines the basic hull/item parameters such as health, inventory space, etc..See Effect Types later on for more info...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&amp;lt;item_data&amp;gt; This header section defines the actual model and textures to use for the item/hull.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;GFX&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
  &amp;lt;world_model&amp;gt; The name of the plain model file (.obj) located in MOD.mpk/content/hulls/&lt;br /&gt;
  &amp;lt;world_textures&amp;gt; The three required textures for the model. &#039;&#039;See the core.cpk/content/textures/hulls files for examples.&#039;&#039;&lt;br /&gt;
   &amp;lt;diffuse&amp;gt; Diffuse texture&lt;br /&gt;
   &amp;lt;specular&amp;gt; Specular texture&lt;br /&gt;
   &amp;lt;normal&amp;gt; Normal texture&lt;br /&gt;
  &amp;lt;inventory_model&amp;gt; The same reference as &amp;lt;world_model&amp;gt; above.&lt;br /&gt;
  &amp;lt;inventory_textures&amp;gt; Same textures referenced above; Change as required for your own file names.&lt;br /&gt;
  &amp;lt;world_scale&amp;gt; This seems to scale the 3D model in-game; Values higher than 1 will increase the ship&#039;s size.&lt;br /&gt;
  &amp;lt;inventory_scale&amp;gt; Unknown?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;SFX&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
  Sound effect references for the hull, primarily the sound of the engines and the ship exploding.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;PHYSICS&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
  &amp;lt;mass&amp;gt; The &#039;mass&#039; of the hull/item, play with it to see the effects.&lt;br /&gt;
  &amp;lt;shapes&amp;gt; Assuming that this defines the collision area for the ship. They seem to always have a defined mass of 1.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;EQUIPMENT_SLOTS&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
  &amp;lt;consumables&amp;gt; The number of consumable slots on the hull&lt;br /&gt;
  &amp;lt;devices&amp;gt; The number of device slots on the hull&lt;br /&gt;
  &amp;lt;boosters&amp;gt; The number of booster slots on the hull&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;WEAPON_SLOTS&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
  &amp;lt;id&amp;gt; ??&lt;br /&gt;
  &amp;lt;slot_type&amp;gt; Assuming type of weapon..Laser/Cannon/Missile&lt;br /&gt;
  &amp;lt;slot_size&amp;gt; Size of slot 1/2/3/?&lt;br /&gt;
  &amp;lt;display_type&amp;gt; ??&lt;br /&gt;
  &amp;lt;direction&amp;gt; 0; Base direction the weapon is facing, 0 being ahead?&lt;br /&gt;
  &amp;lt;rotation_angle&amp;gt; Turret degrees of freedom&lt;br /&gt;
  &amp;lt;rotation_speed&amp;gt; Turret rotation speed&lt;br /&gt;
  &amp;lt;position&amp;gt; Position of turret model on ship&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;TRAILS&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
  This section defines the engine and RCS trails left by the ship during movement. &lt;br /&gt;
  Color scheme is typically something like &amp;lt;color&amp;gt;R:G:B:Intensity&amp;lt;/color&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;BLINKS&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
  This defines the intermittent (if desired) lights on the ship model. You can define the colors, position, and intervals of the lights.&lt;/div&gt;</summary>
		<author><name>Ixby</name></author>
	</entry>
	<entry>
		<id>https://wiki.atomictorch.com/index.php?title=VoidExpanse/Adding_Ships&amp;diff=184</id>
		<title>VoidExpanse/Adding Ships</title>
		<link rel="alternate" type="text/html" href="https://wiki.atomictorch.com/index.php?title=VoidExpanse/Adding_Ships&amp;diff=184"/>
		<updated>2014-05-21T04:34:10Z</updated>

		<summary type="html">&lt;p&gt;Ixby: /* Actually Adding a Ship */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The easiest way to get a feel for modifying the available hulls within the game, is to look at the core game files and use them as examples/templates.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Core Game Mod ==&lt;br /&gt;
&lt;br /&gt;
The game is designed to incorporate mods easily, and the single-player/main game is designed as a standard mod that is loaded by default. &lt;br /&gt;
In the main VoidExpanse directory, there is a &#039;&#039;ModsConfig.xml&#039;&#039; file, which looks something like this...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot; standalone=&amp;quot;yes&amp;quot;?&amp;gt;&lt;br /&gt;
  &amp;lt;mods&amp;gt;&lt;br /&gt;
  &amp;lt;mod&amp;gt;core_0.1.0&amp;lt;/mod&amp;gt;&lt;br /&gt;
  &amp;lt;/mods&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You need to edit this file to include each mod you wish to add to your game, which I&#039;ll explain below. &lt;br /&gt;
&lt;br /&gt;
Notice the only mod it loads by default is &#039;&#039;core_0.1.0&#039;&#039;; You can find this mod in your VoidExpanse main folder under /Mods/core.cpk&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Core.cpk&#039;&#039; includes all of the basic game files, such as hulls, weapons, and devices, but also includes AI behavior and basic game scripts.&lt;br /&gt;
The game package also provides two example &#039;mods&#039; in the /Mods/ directory, but these are listed as .mpk files (&#039;&#039;devmod.mpk&#039;&#039; &amp;amp; &#039;&#039;masacre.mpk&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Both of these mod/pack files (.cpk and .mpk) are basically .zip files that contain the game information&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Open the Core.cpk file as you would a .zip file, and you&#039;ll see two folders, plus a &#039;&#039;headers.xml&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Your headers.xml file should look like this, straight out of core.cpk...&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
  &amp;lt;root&amp;gt;&lt;br /&gt;
  &amp;lt;id&amp;gt;core&amp;lt;/id&amp;gt;&lt;br /&gt;
  &amp;lt;title&amp;gt;Core Game Data&amp;lt;/title&amp;gt;&lt;br /&gt;
  &amp;lt;author&amp;gt;AtomicTorch Studio&amp;lt;/author&amp;gt;&lt;br /&gt;
  &amp;lt;description&amp;gt;Base mod for VoidExpanse. Contains all required game data to play the game.&amp;lt;/description&amp;gt;&lt;br /&gt;
  &amp;lt;version&amp;gt;0.1.0&amp;lt;/version&amp;gt;&lt;br /&gt;
  &amp;lt;updated&amp;gt;20.08.2013&amp;lt;/updated&amp;gt;&lt;br /&gt;
  &amp;lt;modtype&amp;gt;2&amp;lt;/modtype&amp;gt; &amp;lt;!-- 1 - server, 2 - client-server, 3 - client --&amp;gt;&lt;br /&gt;
  &amp;lt;/root&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Make a copy of that &#039;&#039;headers.xml&#039;&#039; file, but don&#039;t change the name.&lt;br /&gt;
Now make a basic compressed file, let&#039;s say called &#039;&#039;testmod.mpk&#039;&#039; and edit your copy of headers.xml...&lt;br /&gt;
The only important thing to change is the ID, which should match your .mpk filename. So, for this example it should look like this:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
  &amp;lt;root&amp;gt;&lt;br /&gt;
  &#039;&#039;&#039;&amp;lt;id&amp;gt;testmod&amp;lt;/id&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
  &amp;lt;title&amp;gt;Core Game Data&amp;lt;/title&amp;gt;&lt;br /&gt;
  &amp;lt;author&amp;gt;AtomicTorch Studio&amp;lt;/author&amp;gt;&lt;br /&gt;
  &amp;lt;description&amp;gt;Base mod for VoidExpanse. Contains all required game data to play the game.&amp;lt;/description&amp;gt;&lt;br /&gt;
  &amp;lt;version&amp;gt;0.1.0&amp;lt;/version&amp;gt;&lt;br /&gt;
  &amp;lt;updated&amp;gt;20.08.2013&amp;lt;/updated&amp;gt;&lt;br /&gt;
  &amp;lt;modtype&amp;gt;2&amp;lt;/modtype&amp;gt; &amp;lt;!-- 1 - server, 2 - client-server, 3 - client --&amp;gt;&lt;br /&gt;
  &amp;lt;/root&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now, when you place your &#039;&#039;testmod.mpk&#039;&#039; file into the /Mods directory with the rest of the game files (core.cpk and the other .mpk files), it will load when you begin the game.&lt;br /&gt;
Right now, though, there is nothing inside the mod file to load!&lt;br /&gt;
&lt;br /&gt;
The final step is making sure the mod gets loaded.&lt;br /&gt;
Open up the &#039;&#039;ModsConfig.xml&#039;&#039; from the main game directory. We need that ID and VERSION here...&lt;br /&gt;
If my mod file was &#039;&#039;testmod.mpk&#039;&#039; and I left the &amp;lt;version&amp;gt; at 0.1.0, my &#039;&#039;ModsConfig.xml&#039;&#039; should look like this:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot; standalone=&amp;quot;yes&amp;quot;?&amp;gt;&lt;br /&gt;
  &amp;lt;mods&amp;gt;&lt;br /&gt;
  &amp;lt;mod&amp;gt;core_0.1.0&amp;lt;/mod&amp;gt;&lt;br /&gt;
  &amp;lt;mod&amp;gt;testmod_0.1.0&amp;lt;/mod&amp;gt;&lt;br /&gt;
  &amp;lt;/mods&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Don&#039;t forget the underscore between the id/filename and the version info.&lt;br /&gt;
&lt;br /&gt;
Simple, right?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Actually Adding a Ship ==&lt;br /&gt;
&lt;br /&gt;
Now that you have an empty .mpk file (except for the &#039;&#039;headers.xml&#039;&#039;), you can start adding things like ships and weapons.&lt;br /&gt;
There are three basic requirements for adding a ship item to the game:&lt;br /&gt;
  1.Item Data&lt;br /&gt;
  2.Model Data&lt;br /&gt;
  3.Texture Data&lt;br /&gt;
If there was a 4th requirement, it might be the sound effects, but I&#039;m not sure. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The easiest way to begin is to make a copy of the starter shuttlecraft, since it costs nothing and is available immediately.&lt;br /&gt;
You can skip the last two(/three) requirements by just copying the basic Item Data file and making &#039;&#039;slight&#039;&#039; adjustments...&lt;br /&gt;
&lt;br /&gt;
Open up core.cpk and you&#039;ll see two directories: &#039;&#039;Data&#039;&#039; and &#039;&#039;Content&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
For now, you just want &#039;&#039;Data&#039;&#039;...Go further, into &#039;&#039;/items&#039;&#039;, and you&#039;ll see the files for each usable item/cargo in the game. In this case, we want to just copy the &#039;&#039;hull_shuttle.xml&#039;&#039; file.&lt;br /&gt;
Copy it somewhere, and rename it to something else...For these purposes, it will be renamed to &#039;&#039;hull_skiff.xml&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
After renaming it, open up the file and you&#039;ll see quite a bit of stuff in there. Ignore it all for now, and focus on the top bit...It should look something like this:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;root&amp;gt;&lt;br /&gt;
  &amp;lt;header&amp;gt;&lt;br /&gt;
  &amp;lt;game_version&amp;gt;1.0.0&amp;lt;/game_version&amp;gt;&lt;br /&gt;
  &amp;lt;id&amp;gt;hull_shuttle&amp;lt;/id&amp;gt;&lt;br /&gt;
  &amp;lt;title&amp;gt;Civilian shuttle hull&amp;lt;/title&amp;gt;&lt;br /&gt;
  &amp;lt;description&amp;gt;It would probably be a good idea to get rid of this as soon as you can...&amp;lt;/description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The important thing here is to rename the &#039;&#039;&amp;lt;id&amp;gt;&#039;&#039; like we did before, when creating the mod file. In this case, my &#039;&#039;&amp;lt;id&amp;gt;&#039;&#039; line would look like this:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;id&amp;gt;hull_skiff&amp;lt;/id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And change the &amp;lt;title&amp;gt; to something else, so you can verify that it works later on&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;title&amp;gt;Civilian Skiff&amp;lt;/title&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Save that .xml file (&#039;&#039;hull_skiff.xml&#039;&#039;), and open up your mod file .mpk...&lt;br /&gt;
The game looks through your .mpk file the same way it looks through the core .cpk game files, so your new &#039;&#039;hull_skiff.xml&#039;&#039; needs to be placed in &#039;&#039;/data/items&#039;&#039; inside your mod file (the same file path where we got the original &#039;&#039;hull_shuttle.xml&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
So finally, if you kept the same naming conventions as I did here, you should have:&lt;br /&gt;
&lt;br /&gt;
  1. A compressed/zip file named &#039;&#039;testmod.mpk&#039;&#039;&lt;br /&gt;
  2. A modified &#039;&#039;headers.xml&#039;&#039; file inside &#039;&#039;testmod.mpk&#039;&#039;&lt;br /&gt;
  3. A modified ModsConfig.xml file that includes your mod&lt;br /&gt;
  4. A /data/items/hull_skiff.xml file inside your mod .mpk&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This should be enough for the game to register and load your new Civilian Skiff, which is almost identical to the starter shuttle...except for the name. But hey, everything is in the brand, right?&lt;br /&gt;
&lt;br /&gt;
More details coming soon...&lt;/div&gt;</summary>
		<author><name>Ixby</name></author>
	</entry>
	<entry>
		<id>https://wiki.atomictorch.com/index.php?title=VoidExpanse/modding&amp;diff=183</id>
		<title>VoidExpanse/modding</title>
		<link rel="alternate" type="text/html" href="https://wiki.atomictorch.com/index.php?title=VoidExpanse/modding&amp;diff=183"/>
		<updated>2014-05-21T04:08:46Z</updated>

		<summary type="html">&lt;p&gt;Ixby: /* Assets modding */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;VoidExpanse was created to have an almost unlimited modding potential. Almost every aspect of game can be modified and extended.&lt;br /&gt;
There are no hardcoded scripts and in-game logics, everything you see in VoidExpanse now was created as root mod. This concept is similar to&lt;br /&gt;
early GameBryo versions.&lt;br /&gt;
&lt;br /&gt;
Modding consists of two essential parts:&lt;br /&gt;
* Assets modding&lt;br /&gt;
* Scripting&lt;br /&gt;
&lt;br /&gt;
== Assets modding ==&lt;br /&gt;
&lt;br /&gt;
All objects in game are assets. They are, basically, XML files, which are located in &amp;quot;[MOD]/data&amp;quot; folder.&lt;br /&gt;
For example, if you want to add a new item or a ship - it&#039;ll be Asset modding.&lt;br /&gt;
&lt;br /&gt;
For example, let&#039;s take a look at ship &amp;quot;shuttle&amp;quot;.&lt;br /&gt;
Hull of this ship is presented in &amp;quot;data/items/hull_shuttle.xml&amp;quot;. In this file, all basic info about hull contined:&lt;br /&gt;
weapons slots, model, textures, blinks, engine trails, physics etc.&lt;br /&gt;
&lt;br /&gt;
Basically, to add a new ship all that you need is to add one more hull item to &amp;quot;data/items&amp;quot; folder of your mod. And model with textures, of course.&lt;br /&gt;
To make ship adding easy, we&#039;ve created a special tool - VE Physics Adjuster, which is quite easy to use.&lt;br /&gt;
&lt;br /&gt;
[[VoidExpanse/Adding_Ships|Core Mod / Adding Ships]]&lt;br /&gt;
&lt;br /&gt;
== Scripting ==&lt;br /&gt;
&lt;br /&gt;
Scripting is the most important and essential part of the game. Everything - from galaxy creation to damage and prices calculations - are scripted and&lt;br /&gt;
moddable.&lt;br /&gt;
&lt;br /&gt;
More information on scripting is in [[VoidExpanse/scripting_api|Scripting section]] of this wiki.&lt;/div&gt;</summary>
		<author><name>Ixby</name></author>
	</entry>
	<entry>
		<id>https://wiki.atomictorch.com/index.php?title=VoidExpanse/modding&amp;diff=182</id>
		<title>VoidExpanse/modding</title>
		<link rel="alternate" type="text/html" href="https://wiki.atomictorch.com/index.php?title=VoidExpanse/modding&amp;diff=182"/>
		<updated>2014-05-21T04:07:54Z</updated>

		<summary type="html">&lt;p&gt;Ixby: /* Assets modding */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;VoidExpanse was created to have an almost unlimited modding potential. Almost every aspect of game can be modified and extended.&lt;br /&gt;
There are no hardcoded scripts and in-game logics, everything you see in VoidExpanse now was created as root mod. This concept is similar to&lt;br /&gt;
early GameBryo versions.&lt;br /&gt;
&lt;br /&gt;
Modding consists of two essential parts:&lt;br /&gt;
* Assets modding&lt;br /&gt;
* Scripting&lt;br /&gt;
&lt;br /&gt;
== Assets modding ==&lt;br /&gt;
&lt;br /&gt;
All objects in game are assets. They are, basically, XML files, which are located in &amp;quot;[MOD]/data&amp;quot; folder.&lt;br /&gt;
For example, if you want to add a new item or a ship - it&#039;ll be Asset modding.&lt;br /&gt;
&lt;br /&gt;
For example, let&#039;s take a look at ship &amp;quot;shuttle&amp;quot;.&lt;br /&gt;
Hull of this ship is presented in &amp;quot;data/items/hull_shuttle.xml&amp;quot;. In this file, all basic info about hull contined:&lt;br /&gt;
weapons slots, model, textures, blinks, engine trails, physics etc.&lt;br /&gt;
&lt;br /&gt;
Basically, to add a new ship all that you need is to add one more hull item to &amp;quot;data/items&amp;quot; folder of your mod. And model with textures, of course.&lt;br /&gt;
To make ship adding easy, we&#039;ve created a special tool - VE Physics Adjuster, which is quite easy to use.&lt;br /&gt;
&lt;br /&gt;
[[VoidExpanse/Adding_Ships]]&lt;br /&gt;
&lt;br /&gt;
== Scripting ==&lt;br /&gt;
&lt;br /&gt;
Scripting is the most important and essential part of the game. Everything - from galaxy creation to damage and prices calculations - are scripted and&lt;br /&gt;
moddable.&lt;br /&gt;
&lt;br /&gt;
More information on scripting is in [[VoidExpanse/scripting_api|Scripting section]] of this wiki.&lt;/div&gt;</summary>
		<author><name>Ixby</name></author>
	</entry>
	<entry>
		<id>https://wiki.atomictorch.com/index.php?title=VoidExpanse/Adding_Ships&amp;diff=181</id>
		<title>VoidExpanse/Adding Ships</title>
		<link rel="alternate" type="text/html" href="https://wiki.atomictorch.com/index.php?title=VoidExpanse/Adding_Ships&amp;diff=181"/>
		<updated>2014-05-21T04:06:06Z</updated>

		<summary type="html">&lt;p&gt;Ixby: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The easiest way to get a feel for modifying the available hulls within the game, is to look at the core game files and use them as examples/templates.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Core Game Mod ==&lt;br /&gt;
&lt;br /&gt;
The game is designed to incorporate mods easily, and the single-player/main game is designed as a standard mod that is loaded by default. &lt;br /&gt;
In the main VoidExpanse directory, there is a &#039;&#039;ModsConfig.xml&#039;&#039; file, which looks something like this...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot; standalone=&amp;quot;yes&amp;quot;?&amp;gt;&lt;br /&gt;
  &amp;lt;mods&amp;gt;&lt;br /&gt;
  &amp;lt;mod&amp;gt;core_0.1.0&amp;lt;/mod&amp;gt;&lt;br /&gt;
  &amp;lt;/mods&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You need to edit this file to include each mod you wish to add to your game, which I&#039;ll explain below. &lt;br /&gt;
&lt;br /&gt;
Notice the only mod it loads by default is &#039;&#039;core_0.1.0&#039;&#039;; You can find this mod in your VoidExpanse main folder under /Mods/core.cpk&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Core.cpk&#039;&#039; includes all of the basic game files, such as hulls, weapons, and devices, but also includes AI behavior and basic game scripts.&lt;br /&gt;
The game package also provides two example &#039;mods&#039; in the /Mods/ directory, but these are listed as .mpk files (&#039;&#039;devmod.mpk&#039;&#039; &amp;amp; &#039;&#039;masacre.mpk&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Both of these mod/pack files (.cpk and .mpk) are basically .zip files that contain the game information&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Open the Core.cpk file as you would a .zip file, and you&#039;ll see two folders, plus a &#039;&#039;headers.xml&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Your headers.xml file should look like this, straight out of core.cpk...&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
  &amp;lt;root&amp;gt;&lt;br /&gt;
  &amp;lt;id&amp;gt;core&amp;lt;/id&amp;gt;&lt;br /&gt;
  &amp;lt;title&amp;gt;Core Game Data&amp;lt;/title&amp;gt;&lt;br /&gt;
  &amp;lt;author&amp;gt;AtomicTorch Studio&amp;lt;/author&amp;gt;&lt;br /&gt;
  &amp;lt;description&amp;gt;Base mod for VoidExpanse. Contains all required game data to play the game.&amp;lt;/description&amp;gt;&lt;br /&gt;
  &amp;lt;version&amp;gt;0.1.0&amp;lt;/version&amp;gt;&lt;br /&gt;
  &amp;lt;updated&amp;gt;20.08.2013&amp;lt;/updated&amp;gt;&lt;br /&gt;
  &amp;lt;modtype&amp;gt;2&amp;lt;/modtype&amp;gt; &amp;lt;!-- 1 - server, 2 - client-server, 3 - client --&amp;gt;&lt;br /&gt;
  &amp;lt;/root&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Make a copy of that &#039;&#039;headers.xml&#039;&#039; file, but don&#039;t change the name.&lt;br /&gt;
Now make a basic compressed file, let&#039;s say called &#039;&#039;testmod.mpk&#039;&#039; and edit your copy of headers.xml...&lt;br /&gt;
The only important thing to change is the ID, which should match your .mpk filename. So, for this example it should look like this:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
  &amp;lt;root&amp;gt;&lt;br /&gt;
  &#039;&#039;&#039;&amp;lt;id&amp;gt;testmod&amp;lt;/id&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
  &amp;lt;title&amp;gt;Core Game Data&amp;lt;/title&amp;gt;&lt;br /&gt;
  &amp;lt;author&amp;gt;AtomicTorch Studio&amp;lt;/author&amp;gt;&lt;br /&gt;
  &amp;lt;description&amp;gt;Base mod for VoidExpanse. Contains all required game data to play the game.&amp;lt;/description&amp;gt;&lt;br /&gt;
  &amp;lt;version&amp;gt;0.1.0&amp;lt;/version&amp;gt;&lt;br /&gt;
  &amp;lt;updated&amp;gt;20.08.2013&amp;lt;/updated&amp;gt;&lt;br /&gt;
  &amp;lt;modtype&amp;gt;2&amp;lt;/modtype&amp;gt; &amp;lt;!-- 1 - server, 2 - client-server, 3 - client --&amp;gt;&lt;br /&gt;
  &amp;lt;/root&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now, when you place your &#039;&#039;testmod.mpk&#039;&#039; file into the /Mods directory with the rest of the game files (core.cpk and the other .mpk files), it will load when you begin the game.&lt;br /&gt;
Right now, though, there is nothing inside the mod file to load!&lt;br /&gt;
&lt;br /&gt;
The final step is making sure the mod gets loaded.&lt;br /&gt;
Open up the &#039;&#039;ModsConfig.xml&#039;&#039; from the main game directory. We need that ID and VERSION here...&lt;br /&gt;
If my mod file was &#039;&#039;testmod.mpk&#039;&#039; and I left the &amp;lt;version&amp;gt; at 0.1.0, my &#039;&#039;ModsConfig.xml&#039;&#039; should look like this:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot; standalone=&amp;quot;yes&amp;quot;?&amp;gt;&lt;br /&gt;
  &amp;lt;mods&amp;gt;&lt;br /&gt;
  &amp;lt;mod&amp;gt;core_0.1.0&amp;lt;/mod&amp;gt;&lt;br /&gt;
  &amp;lt;mod&amp;gt;testmod_0.1.0&amp;lt;/mod&amp;gt;&lt;br /&gt;
  &amp;lt;/mods&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Don&#039;t forget the underscore between the id/filename and the version info.&lt;br /&gt;
&lt;br /&gt;
Simple, right?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Actually Adding a Ship ==&lt;br /&gt;
&lt;br /&gt;
Now that you have an empty .mpk file (except for the &#039;&#039;headers.xml&#039;&#039;), you can start adding things like ships and weapons.&lt;br /&gt;
The easiest way to begin is to make a copy of the starter shuttlecraft, since it costs nothing and is available immediately...&lt;/div&gt;</summary>
		<author><name>Ixby</name></author>
	</entry>
	<entry>
		<id>https://wiki.atomictorch.com/index.php?title=VoidExpanse/Adding_Ships&amp;diff=180</id>
		<title>VoidExpanse/Adding Ships</title>
		<link rel="alternate" type="text/html" href="https://wiki.atomictorch.com/index.php?title=VoidExpanse/Adding_Ships&amp;diff=180"/>
		<updated>2014-05-21T01:49:11Z</updated>

		<summary type="html">&lt;p&gt;Ixby: Created page with &amp;quot;The easiest way to get a feel for modifying the available hulls within the game, is to look at the core game files and use them as examples/templates.&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The easiest way to get a feel for modifying the available hulls within the game, is to look at the core game files and use them as examples/templates.&lt;/div&gt;</summary>
		<author><name>Ixby</name></author>
	</entry>
</feed>