FXB Viewer

May 6, 2026 · View on GitHub

The FXB Viewer page lets you browse the contents of .fxb (FX Bank) files binary packages that define visual effects used throughout the game, such as particle systems, weather effects, and environmental FX.


What is an .fxb file?

An .fxb file is a compiled FX Bank (FxBk format). It is a self-contained binary package built by the game's internal FX authoring tool (FX Studio). Each bank contains a collection of named effects, where each effect is composed of phases, and each phase is made up of components with their own properties.

The binary format carries a header (FxBk magic word), followed by a series of offset tables pointing to the string table, vector tables, channel data, effect definitions, component definitions, and more. All data is stored in a single flat binary buffer with internal offsets.

Notable game files that use this format include:

  • game:\media\FXParticles\ParticlesLibrary.fxb the main particle effects library
  • game:\media\Weather\WeatherManager.fxb weather system effects

Opening a File

  • Drag and drop an .fxb file onto the page.
  • Use the Open button in the toolbar.

Page Layout

The page is divided into four linked panels, reflecting the nested hierarchy of the FX Bank format:

Bank
Effects  (top-level named effects)
    Phases  (execution phases within an effect)
        Components  (individual FX modules: emitters, forces, etc.)
            Properties  (per-component parameters and values)

Selecting an item in any panel populates the next panel to the right with its children, and displays the item's own properties in the detail area at the bottom.


Effects

The Effects tree shows all top-level effect entries in the bank. Each effect has:

  • A Name the string identifier used to play/reference the effect in game code.
  • A list of Phases that execute in sequence or in parallel when the effect plays.

Phases

Phases are logical execution stages within an effect. Each phase controls timing (when it runs relative to other phases) and contains a set of Components.


Components

Components are the individual functional modules inside a phase � things like a particle emitter, a force field, a sprite renderer, or a mesh emitter. Each component has a type identifier and a list of Properties that control its behaviour.


Properties

Each component property has:

FieldDescription
NameHuman-readable property name from the bank's string table
TypeData type of the property value (see table below)
ValueThe stored value, shown in a type-appropriate display format

Property Types

TypeDescription
IntegerA single signed integer
IntegerRangeA min/max integer pair defining a random range
IntegerArrayArray of integer values
FloatA single float
FloatRangeA min/max float pair
FloatArrayArray of float values
FloatKeyFrameAnimated float curve with linear or cubic interpolation
ColorARGBKeyFrameAnimated ARGB colour curve
StringA text string (referenced by offset in the string table)
StringArrayArray of strings
Vector3A 3-component float vector (XYZ)
Vector3RangeA min/max Vector3 pair
Vector3ArrayArray of Vector3 values
Vector4A 4-component float vector (XYZW)
FixedFunctionA procedural curve defined as quadratic or sinusoidal

Viewing Property Values

Click a property in the Properties list to expand its full detail in the bottom panel. For range types, both the minimum and maximum values are shown. For key-frame types, the curve data is listed.


Limitations

The FXB Viewer is still early development and bugs are likely to occure.