1. Fallout2.exe
  2. File formats
  3. Artwork
  4. Animation
  5. Scripting
  6. Watcom
  7. ASM
  8. Reversing tools
  9. IDA
  10. Fallout tools
  11. sfall
  12. Projects
  13. Misc
  14. Buy

Fallout 1 & 2 reversing and modding resource

You can find additional information and code at github.com/rotators

Fallout2.exe

Structures
Sfall references
Fallout 2 RE references
Function and variable offsets
Call structure
x64dbg database
Fallout_1_and_2_IDA68.rar - IDA database

f2_res.dll (High resolution patch)

Symbols

Modding

Comprehensive Fallout 2 Modding Guide - source
Quantum's Fallout Modding 'How To' Videos

File formats

FormatTools
AI.TXT - Description of combat parameters for the player and all NPC classes in the game Fallout 2 - Proto Manager
ACM - Compressed audio format by Interplay Use libacm, acm2wav or Game Audio Player for playback.
AAF - The AAF Font File Format is used to store fonts. Fallout Service Box: Font Editor
BIO - Story for premade characters (GCD). Texteditor
DAT - DAT files are archive files in which most of the files used in Fallout and Fallout 2 are stored. Dat Explorer 1.43, many others
FON - Fonts used for text on the world map FON editor
FRM - FRM files are unpaletted 256-color image files containing either one or several images in one file Titanium FRM browser, Graphics viewer 1.36 and many others.
INT - Compiled script file use int2ssl.exe included in sfall modderspack to decompile or source repo.
GCD File Format - Premade characters. CGCD
GAM - GAM files are indexed text files. They contain global variables for each core Fallout game and its maps Texteditor
LIP File Format - Used for talking heads. LIP editor, wav2lip
LST - LST files are simple text files, each line is terminated with CRLF ("\r\n"). Texteditor
MAP - Maps used for locations. Patched BIS mapper
MSK - Masks for the worldmap which mark the territory that is impassible for the player. MSK tools, msk2bmp
PAL - Palette file, used for rendering FRM data with the correct colors. Fallout default color sheet
PRO - Prototype, every item, critter, wall, tile, and piece of scenery has its own corresponding PRO file. Fallout 2 - Proto Manager
RIX - Format for splashscreen, located in master.dat/ART/SPLASH Graphics viewer 1.36 to load/save
MVE - Movie files, used for intro/outros, cutscenes. Various
SVE File Format - Subtitles for MVE movies. Texteditor
Worldmap.dat

Artwork

The Complete Fallout 1 & 2 Artwork

Animation

Animation names
Animation viewer - TypeScript source

Scripting

Fallout 2 opcodes - does not include sfall opcodes.

Official Fallout 2 scripts source code

Worldmap

Fallout2 worldmap.txt interactive browser and parser

Watcom

Watcom is the compiler that was used to compile both Fallout 1 and 2.

Watcom does not support the __fastcall keyword except to alias it to null. The register calling convention may be selected by command line switch. (However, IDA uses __fastcall anyway for uniformity.)

Up to 4 registers are assigned to arguments in the order eax, edx, ebx, ecx. Arguments are assigned to registers from left to right.

If any argument cannot be assigned to a register (say it is too large) it, and all subsequent arguments, are assigned to the stack. Arguments assigned to the stack are pushed from right to left. Names are mangled by adding a suffixed underscore.

eax->func(edx, ebx, ecx, push...)
func(eax, edx, ebx, ecx, push...)

Read more

ASM

x86 reference
x86 and amd64 instruction reference
x86 opcode table
Online x86 / x64 Assembler and Disassembler

Reversing tools

OllyDBG - debugger
x64dbg - debugger
IDA 7 freeware - disassembler/debugger
IDA 5 - Old version of IDA, suitable for DOS reversing
PE explorer
HxD - Freeware Hex Editor and Disk Editor (alternatives)
DLL Export Viewer v1.66
Scylla - Imports viewer
idbutil - Tool for dumping data from IDA pro databases
Additional stuff


IDA database

Fallout_1_and_2_IDA68.rar

idbtool.exe

idbtool.exe --enums Fallout2.idb > enums.txt
idbtool.exe --names Fallout2.idb > names.txt

Fallout tools

List of tools
Fallout 2 @ NMA
Team-X Utilities
ToolAuthorDescription
Sfall Script Editor Sfall team Allows to edit and compile SSL scripts in a convenient way.
Dat Explorer 1.43 Dims DAT file packer / unpacker. With a graphical interface.

Sfall

A set of engine modifications that greatly enhances the engine. Includes fixes for bugs in the original engine, allows fallout to run correctly on modern operating systems, and adds additional features for modders.

Binary distros

Sourceforge

Source code

Check out the code from the main repo or rotators sfall branch.

git clone https://github.com/phobos2077/sfall.git src

DirectX

Main SDK needed is DirectX june 2010. dinput.lib from DirectX august 2007 also needed.

Mirror: DirectX SDK Collection

sfall dev

Projects

ProjectDescription
Reverse engineered Fallout 2 Fallout 2 RE project by Alexander Batalov. Announcement post
Fallout 2 Javascript port Inactive engine implementation
DarkFO, a post-nuclear RPG remake (of Fallout 2) Inactive engine implementation in TypeScript and Python
falltergeist Opensource crossplatform Fallout 2™ game engine written in C++ and SDL.
Fallout 2 tweaks A collection of convenience tweaks, common sense changes, and cheats for Fallout 2. It is highly configurable, any component can be used with or without others. Some components also allow fine tuning.
Fallout 2 map editor Fallout 2 map editor by Jan Simek
Klamath C++ utilities for working with Fallout 1/2 assets

Misc

Buy