| Branch | Owner | Purpose |
|---|---|---|
main |
— | Stable releases only. No direct commits. |
dev-1 |
tison | Core systems: engine, events, futures, serializer |
dev-2 |
LeGrizzly | GUI systems: MarketScreen, HUD, FuturesDialog |
Both branches PR into main. All PRs require at least one review before merging.
- Clone the repo into your FS25 mods workspace
- Build:
bash build.sh - Deploy for testing:
bash build.sh --deploy - Check
log.txtfor[MDM]prefixed lines after deploying
- Lua 5.1 only (FS25 constraint) — no
goto, nocontinue, noos.time() - No slider widgets — use
MultiTextOptionor quick buttons - All log output via
MDMLog.info()/MDMLog.warn()/MDMLog.error() - Max file size: 1500 lines — split into submodules if exceeded
- No
math.sqrtinupdate()— use distance-squared checks - Images from ZIP: always set dynamically via
setImageFilename(), never in XML
- Coordinate system: bottom-left origin, Y=0 at bottom, increases upward
- Dialog Y values are negative going down from the top of the dialog
- Copy
TakeLoanDialog.xmlstructure for new dialogs - Use 3-layer button pattern: Bitmap bg + Button hit area + Text label
- Set mod image paths in
onCreate()viasetImageFilename(g_currentModDirectory .. "path")
- Tested in-game with
bash build.sh --deploy - No
[MDM] ERRORlines in log.txt - No Lua 5.1 incompatible syntax
- File stays under 1500 lines
- PR description explains what changed and why