Announcement: In the near future FTLWiki will be moving to a new server, to be again reunited with PCGamingWiki. We will try to make the transition as smooth and swift as possible.

Modding guide

Brought to you by PCGamingWiki
From FTL Wiki
Jump to: navigation, search
Modding
Modding guide
Events file structure
Ships
Continue.sav
Mod manager
Mods

FTL: Faster Than Light has spawned an active modding community. Modders are largely congregated to:

More information Official FTL Forum thread.
More information CaptainShooby's thread.

Many new mod threads have spawned on the official FTL Forum. However, it should be noted that Subset games have yet to officially endorse modding in any way.

Contents

[edit] Editing The Data Files

The data files for FTL are packaged into .dat files containing the various functions and resources of the game. Once unpacked, each DAT file contains some part of the game's content, such as music, art, and configuration files.

Here's the location of the .dat files on various systems:

  • Steam: \Steam\steamapps\common\FTL Faster Than Light\resources\
  • GOG.com: C:\Program Files\GOG.com\Faster Than Light\resources\
  • Mac: /Applications/FTL.app/Contents/Resources
  • Steam for Linux: ~/.local/share/Steam/SteamApps/common/FTL Faster Than Light/data/resources/

[edit] bas FTLDat

checking bas' thread has developed a tool for unpacking the FTL data files. It's available on:

[edit] FTL UnPacker

There is also a GUI written in Java, based on the ftldat code, available from this thread.

[edit] Structure of the Events files

The structure of the events files is documented here in detail.

[edit] marinepower

marinepower did a remarkable job enumerating the contents of the data.dat file. His/her very thorough work can be seen here.

[edit] Save Game Editing

ComaToes and Vhati wrote the Profile/SavedGame Editor.

It'll also unlock ships and achievements, and unpack resources.
Its commented source code documents the structure of profile.sav and continue.sav.

[edit] Ship Configuration

Modding Ships

Information on the ship configuration file syntax can be found here. Here's detailed information on custom weaponry.

[edit] Rebel Fleet Pursuit

Rebel Fleet pursuit is handled by trigger events in the events.xml file inside the data.dat file. Edits to data.dat are still unstable, and reliable editors are in active development (see the thread on packing and repacking FTL files for more information).

DisposableNinja figured out how to disable fleet pursuit altogether:

You can change this via events.xml:
Find the event START_GAME and/or START_BEACON
Add <modifyPursuit amount="-100000"/>
When these events trigger, it will set the pursuit value to whatever you wish. -100000 is a bit overkill, but it works. START_GAME is triggered when you start a new game and START_BEACON is the default event for new sectors.

AirRevenant on reddit has also posted a downloadable .dat file for FTL AE 1.5.10 that employs DisposableNinja's method to end Fleet Pursuit


BlackAlpha on the FTL Forums implemented a more nuanced hack, one which slows the fleet down.

On the topic of how he implemented the changes, BlackAlpha said:

In data.dat, there are files that are called "events". They contain events, which are basically triggers. One of the things they can do is set how far away the Rebel fleet is. This is done by the command "modifyPursuit amount".
If you really want to know how it works. The fleet is always there. There's just a delay before the fleet appears. The events can modify the delay, either making it longer or shorter. You can also delay or speed up the fleet after it appears. It's all done by that command I told you about earlier. That's basically how the fleet's speed is handled.

[edit] CaptainShooby's Tutorial

Here is my very first modding tutorial. I tried to cover the following:

  • Preparation for modding
  • Custom events
  • Custom sectors

Google Docs: https://docs.google.com/document/pub?id=18DgjbF054eNRNNRwg_cuDT2DatdRpnW16mzX32GB-Dw

Personal tools
Namespaces

Variants
Actions
Navigation
Ship
Game
Guides
Modding
Technical help
Community
Toolbox