Alliance Francophone Sudden Strike

Fusion modding · UNITS / AVIA / LAND/DOM

Français

Configure a building

This guide changes the health of an existing building. Its index and graphics stay the same. The example files and resources were inspected. APS packaging and the Fusion or Mapeditor procedure were not run here.

Find the active archive

  1. Record the theme and scheme number of the map.
  2. Record the game archive chain from sudtest.ini.
  3. Record the editor archive chain from maped.ini.
  4. Identify the dom.res container used by this scheme.
  5. Identify the loaded LAND/dom file and its includes.
  6. Work on copies of the affected archives.

Directory names give candidates. They do not establish which archive has priority in your installation. The game and editor can use different chains. An unloaded descdom file has no effect.

Two source examples

These examples use sommer_s1/dom.res and sommer_unit_s1/LAND/descdom. The source association was checked for these indices. Their use in your installation still needs a check.

Objectobj indexResource classCreated sheetSource line
House, named “Batiment”00housesommer_unit_s1/LAND/descdom:1
Casemate, with bunker selection262housesommer_unit_s1/LAND/descdom:651

House preview, sommer_s1 index 0

Casemate preview, sommer_s1 index 26

The previews show the A1 layers of state 0. They omit some shadows and secondary layers. The portal inventory stores hashes of the records and previews.

To make the previews locally, run this command from the Fusion sources:

python3 tools/extract_sprites.py sommer_s1/dom.res -o /tmp/sommer-s1-buildings

The script creates sprite_0000.png and sprite_0026.png. It needs Pillow. This extraction creates images. It does not package archives.

Change the house

The original block starts with:

Name obj 0 "Batiment"
HP obj 0 1000 1000 1000 1000

For a health trial, replace only the HP line:

HP obj 0 1100 1100 1100 1100

The code predicts initial health of 4400 instead of 4000 for a placement in state 0. The value 1100 makes the change measurable. It is not a balance recommendation.

  1. Keep the ARMOR and PROTECTION lines in the block.
  2. Keep index 0.
  3. Keep the original encoding and CRLF line endings.
  4. Find other HP obj 0 lines in the included files.
  5. Check for a later obj line that replaces your value.
  6. Package the complete archive with your usual APS tool.
  7. Replace the test copy of that archive in the intended chain.

The reference sources provide readers and text repair tools. They do not provide a verified APS command here. Do not add an arbitrary archive containing only descdom. Fusion tools report a failure with that arrangement for some realigned schemes.

Test the change

  1. Open a test map in the editor.
  2. Place the house graphic type in state 0.
  3. Check its name and preview.
  4. Start the map with the recorded DLL and archives.
  5. Measure the initial health.
  6. Put an infantry unit into the building.
  7. Move that unit out of the building.
  8. Apply controlled damage through each state change.
  9. Check the ruin image and effects.
  10. Save the game.
  11. Load the saved game.
  12. Repeat the checks with casemate index 26.

For a second environment, find the index in its own dom.res. Do not automatically copy obj 0 or obj 26. Another theme can use a different building at that index.

Record the trial with this table:

ItemRecord
InstallationFusion version, DLL hash, mod options.
MapScheme, graphic container, game and editor archive chains.
ChangeFile, index, old and new line, archive hash.
ResultHealth, occupation, firing, state changes, save and reload.

Tunnels and new graphics

europe2_unit/LAND/descdom:1476 names index 64 “Tunnel”. europe2/dom.res gives that index class 11. Loading therefore selects __testportal. This observation does not confirm transport, links, or capacity.

Test entry, exit, travel, and saving separately with an existing working tunnel. The resource page identifies the remaining steps for new graphics.