-
Notifications
You must be signed in to change notification settings - Fork 1
Home
SiegeFX is an open-source reimplementation of Dungeon Siege (Gas Powered Games, 2002), written in C# / .NET 11. It loads the original game's data files and runs them on a modern engine — no copyrighted assets are redistributed, you bring your own DS1 install.
This wiki is the project's developer journal. It exists for two reasons:
-
So the next contributor doesn't relearn what we already learned the hard way. Reverse-engineering a 2002 engine without source means most days are spent finding out a file format does the opposite of what its header says, or that a constant lives in a
.gasfile no one has read in twenty years. Those discoveries belong somewhere durable. - So readers who want to do the same thing for another old game can copy the workflow. SiegeFX is one example of "how do you bring a vintage engine forward?" — the pattern of how we got here is more useful than the specific code.
- Status — current release, what works, what's queued.
- SiegeSmith — the modding studio and world builder that ships in this repository alongside the engine. Its manual: How do I…? (quick answers), Making a Game from Scratch (empty viewport → distributable map), the World Builder Guide, Effects Lab and Studio Guide (full references), and the Modder's Guide (editing the original game).
- Engine Quirks and Stumbles — the running list of DS1 / .NET / engine gotchas we've hit and how we resolved them. Read this before you start touching a new subsystem.
- Architecture — solution layout, the projects, where each subsystem lives.
-
Building and Running — dev setup, where to point DS1 data, how to use
test-all.bat. -
Diagnostic CLI Tools — the
siegefxCLI: every subcommand explained, with notes for modders, expansion authors, and people building new games on DS file formats. - Auditing the Spell Catalog — the tool we built to make recreating DS1's ~70 spells in our engine tractable instead of a one-by-one grind. Includes a small piece of game-development history we surfaced in the process.
-
Release Archive — notes from the retired pre-reset milestone tags (
v0.7.0–v0.9.0) and why versioning restarted at0.0.1. - Phase 20 and v1.0 Polish Plan — historical planning page from the milestone era.
You need a legitimate copy of Dungeon Siege (GOG, Steam, or original discs). Configure the engine to point at its Resources directory; SiegeFX reads .dsres / .dsmap tank files directly and never modifies them.
Issues and PRs live on the main repo. When you fix something subtle, write the fix up on Engine Quirks and Stumbles before you close the issue — the next person to brush up against that area should not have to find your commit message.