HPL2/TDD/Change Custom Story into Full Conversion Mod

From Frictional Wiki
< HPL2‎ | TDD
Revision as of 09:25, 27 July 2023 by Mudbill (talk | contribs) (Add note about relative paths)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
Wip icon.png This page is still being written and is currently incomplete


Since version 1.5 of Amnesia The Dark Descent (release in July 2023), a new field has been added to the custom_story_settings.cfg file. This field allows you to specify a main_init.cfg file, which is the main file that full conversion mods use to launch. This means you can now create full conversion mods from a custom story, and they will still show up in the main game menu. This unlocks all the power of full conversion mods, while maintaining most of the simplicity of a custom story.


If you have a custom story that you want to transform into a full conversion mod, start by adding the new field to your custom_story_settings.cfg:

<Main
  Name = "My story"
  Author = "Me"

  ...

  InitCfgFile = "config/main_init.cfg"
/>

Specifying this field will disable MapsFolder, StartMap and StartPos, as these fields will instead be read from the main_init.cfg file. It will also disable ExtraLangFilePrefix and DefaultExtraLangFile, as the game will instead use the primary lang files specified in main_init.cfg.


From this point on, you can follow tutorials for full conversion mods. Your mod folder will remain custom_stories/<your story>. For example, if your story folder is named "Ascent", your main init file should exist at custom_stories/Ascent/config/main_init.cfg (reflecting what you put in the InitCfgFile above). Create the "config" folder and the "main_init.cfg" file. The contents of your main_init.cfg file can start as such (Remember to change the references to "Ascent" to reflect your own mod, such as MainSaveFolder and GameName):

<ConfigFiles
	Resources = "resources.cfg"
	Materials = "materials.cfg"

	Game	= "config/game.cfg"
	Menu	= "config/menu.cfg"
	PreMenu	= "config/pre_menu.cfg"
	Demo	= "config/demo.cfg"
	
	DefaultMainSettings	= "config/default_main_settings.cfg"
	DefaultMainSettingsSDL2	= "config/default_main_settings_sdl2.cfg"

	DefaultMainSettingsLow		= "launcher/default_main_settings_low.cfg"
	DefaultMainSettingsMedium	= "launcher/default_main_settings_medium.cfg"
	DefaultMainSettingsHigh		= "launcher/default_main_settings_high.cfg"

	DefaultUserSettings	= "config/default_user_settings.cfg"
	DefaultUserKeys		= "config/default_user_keys.cfg"
	DefaultUserKeysSDL2	= "config/default_user_keys_sdl2.cfg"
	
	DefaultBaseLanguage	= "base_english.lang"
	DefaultGameLanguage	= "english.lang"
/>

<Directories
	MainSaveFolder 	 	 = "Ascent"
	
	BaseLanguageFolder 	 = "config/"
	GameLanguageFolder 	 = "config/lang_main/"
	
	CustomStoryPath 	 = "custom_stories"
/>

<Variables
	GameName = "Ascent, an Amnesia mod"
/>

<StartMap
	File	= "level_01.map"
	Folder	= "maps/"
	Pos	= "PlayerStartArea_1"
/>

Note: Paths specified in this file are relative paths starting from the custom story's main folder, eg: "custom_stories/Ascent". Leaving Resources as "resources.cfg" means it should exist at "custom_stories/Ascent/resources.cfg". If a file is not found here, it will fall back to using the game root folder as the starting point (needs confirmation).