Here's an example of how "nearly everything" is nearly everything in regards to modding.
You can mod the intro screen scene. Here's how you'd do it: you'd go into the battle editor (in game tool for creating fast battles/scenarios), create a scene, and then save that scene and instead of playing that scene you'd put it into the "MainMenu" folder (in the Data folder) and voila! You just modded the intro screen scene hehe
Basicallly almost everything I can think of is read (or is going to be read) into the game via the .xml (use notepad, or notepad++ to open these, basically any text editor).
Here's what the contents of that file look like for a ship object:
<?xml version="1.0" encoding="utf-8"?>
<objectType attr1="ship"/>
<name attr1="Voytek"/>
<objectID attr1="voytek"/>
<faction attr1="1"/>
<shipClass attr1="fighter"/>
<meshName attr1="Voytek.mesh"/>
<wireframeMaterial attr1="WF/Voytek"/>
<descriptionText attr1="A unmanned drone fighter with two light cannons."/>
<cruiseSpeed attr1="24.0"/>
<timeTillCruise attr1="3.0"/>
<yaw attr1="50.0"/>
<pitch attr1="50.0"/>
<roll attr1="50.0"/>
<bGravityDrive attr1="0"/>
<bBaseShipyardOk attr1="1"/>
<cockpitInitPos x="0" y="1.48" z="3.85"/>
<cockpitTransLimit x="0.12" y="0.12" z="0.12"/>
<chaseInitPos x="0" y="5.25" z="21.04"/>
<chaseTransLimit x="1.5" y="0.6" z="1"/>
<health attr1="100.0"/>
<autoRepairTime attr1="240.0"/>
<weapon>
<weaponType attr1="projectile"/>
<hardpointID attr1="lightPG"/>
<weaponPosition x="0.37" y="0.07" z="-2.38"/>
<weaponPosition x="-0.38" y="0.07" z="-2.41"/>
<barrelDelay attr1="0.1"/>
</weapon>
<turret>
<turretID attr1="voytekMT"/>
<position x="0.0" y="0.0" z="0.0"/>
<turretRole attr1="defense"/>
<weaponFire attr1="secondary"/>
</turret>
<buildTime attr1="25.0"/>
<crew attr1="0.0"/>
<energy attr1="25.0"/>
<ore attr1="100.0"/>
<damage>
<pitch attr1="0.0"/>
<roll attr1="-90.0"/>
<yaw attr1="0.0"/>
<position x="0.5" y="0.25" z="-0.49"/>
</damage>
<deathTimer attr1="1.5"/>
<deathSpin x="1.0" y="1.0" z="1.0"/>
<explosionID attr1="1"/>
<tacticalExplosionID attr1="tacExp"/>
<propulsion>
<sysName attr1="propulsion"/>
<position x="-0.01" y="0.01" z="1.85"/>
<_propulsionSound attr1="engine.wav"/>
</propulsion>
<propulsion>
<sysName attr1="propulsion_fighter_lat"/>
<position x="-0" y="0.69" z="-0.12"/>
<_propulsionSound attr1="engine.wav"/>
<direction attr1="up"/>
</propulsion>
<propulsion>
<sysName attr1="propulsion_fighter_lat"/>
<position x="0.85" y="-0.17" z="0.58"/>
<_propulsionSound attr1="engine.wav"/>
<direction attr1="port"/>
</propulsion>
<propulsion>
<sysName attr1="propulsion_fighter_lat"/>
<position x="-0.85" y="-0.17" z="0.58"/>
<_propulsionSound attr1="engine.wav"/>
<direction attr1="starboard"/>
</propulsion>
<propulsion>
<sysName attr1="propulsion_fighter_lat"/>
<position x="0.02" y="-0.68" z="0.59"/>
<_propulsionSound attr1="engine.wav"/>
<direction attr1="down"/>
</propulsion>
<afterburner>
<afterburnerSound attr1="engine.wav"/>
<multiplier attr1="1.5"/>
<capacity attr1="1.0"/>
<recharge attr1="5.0"/>
</afterburner>
<targetPriorityList>
<targetClass attr1="fighter"/>
<targetClass attr1="corvette"/>
<targetClass attr1="frigate"/>
<targetClass attr1="destroyer"/>
<targetClass attr1="carrier"/>
<targetClass attr1="cruiser"/>
<targetClass attr1="dreadnaught"/>
<targetClass attr1="attack_station"/>
</targetPriorityList>
<collisionShape attr1="simple_convex"/>
<isMassInfinite attr1="0"/>
So you can easily mod an existing ship, or create a new one by supplying a different model. You can do the same to stations/platforms, bases, turrets, guns, missiles, asteroids, gates, and other up coming objects. You can mod the "main world file" that specifies the research file (also xml) and objectives file (ditto on xml).
The main challenges are this: the model itself (3d object, texturing,etc) - accomplished via 3rd party modeling/texturing software - then exported into the game engine's .mesh format (there are common exporters for Blender, obj, etc). The 2nd main challenge is positions on the model where the weapons/engines/damage particle/cockpit/chase cam position are. That's accomplished via a lil tool that lets you add the ship (or station, etc) model and then find the 3d position co-ordinates of spots - by moving placeholder objects or the camera itself (wasd to move, left click to select, drag to move, etc) This tool is fairly basic, but will be improved to be able to import the xml files and then export them, saving a bit of copy and paste hassle. That tool is called (zModel_Position.exe) and is located in the main game directory.
You can also create "scenarios" via the battle editor and then you can share them via emailing the world file (generated via the editor and saved as xml). You basically click and drag stuff onto the screen and rotate etc.
So to sum up you can mod:
ships, stations, ammo, bases, turrets, guns, missiles,asteroids, research, objectives, tutorials, rewards, triggers, and the intro scenes - am I forgetting some stuff? oh yeah you can mod the hud, the backgrounds, the sounds, etc as well
Its really a no brainer adding this in because - my artist ofcourse wants to tweak stuff and test (both his art, and his game ideas) and this only helps development to not have to re-compile code for this. And ofcourse the added bonus of allowing everyone else to mod. Really a win win.