Three different names#
The folder determines file paths; dependencies use content/@id; players see name. They need not match. The manifest describes the extension rather than listing its files.
Learning manifest#
<content id="wiki_demo" name="Wiki Demo" version="103"
author="Example Author" description="An XML learning example."
save="true">
<dependency version="900" />
<dependency id="ego_dlc_split" optional="true" />
<text language="7" name="Учебный пример" description="Пример XML." />
</content>This declares extension version 1.03 and minimum X4 9.00. The optional dependency orders loading when the DLC exists without requiring installation. Access to missing assets still needs handling.
Check it yourself#
Put this in a separate wiki_demo folder under extensions. Expect an Extensions menu entry, with the Russian name when using Russian; this example performs no gameplay actions.
Change only name and check again. Then change only the folder name: which paths in your extension need updating? Use this exercise to stop treating an ID as a path.
Do not interpret save="true" as proof that removing your mod is safe. Plan save/load verification for stateful code.
Next step#
First MD mod, compatibility, catalog loading. This example has not been run in game.