Amnesia: The Bunker

Amnesia: The Bunker

Not enough ratings
Creating a Custom Story with the Dark Descent Enemies Addon
By Can't Afford a Name
A step by step guide on how to set up your custom story to use the Amnesia: Dark Descent Enemies addon.
   
Award
Favorite
Favorited
Unfavorite
Introduction
This guide will go over the process of setting up a custom story to use the Dark Descent enemies addon. It is highly recommended that you install the HPL3 Mod Manager [wiki.frictionalgames.com] to make it as easy as possible. While you can create a custom story without it, this guide will be using it to streamline the process.

Once you have it installed, open the Mod Manager and set the Game Directory to your Amnesia: The Bunker installation.

Creating the Custom Story
At the bottom of the Mod Manager, select "New Mod". Select "..." under the Mod Directory to choose the location for your mod. You'll need to put it inside its own folder within your mods folder.
Name your mod. Note that the name can differ from what you call the folder. It's good practice to name your folder something unique so that someone else doesn't accidentally come up with the same name.
Make sure your custom story is marked as StandAlone and that Hot Load is disabled.
If you want a Thumbnail, it needs a resolution of 616x353. You can get a temporary Thumbnail from (Amnesia The Bunker\graphics\startmenu\default_story_image.png). Copy/Paste it to your mod folder, then select it as the Thumbnail in the Mod Manager.

Alternatively, if you already have a custom story you want to use with the Dark Descent Enemies Addon, you can select "Load Mod" and import the custom story to the Mod Manager.
Setting up Dependencies
Navigate to your steam workshop folder for Amnesia: The Bunker and copy the folder containing the addon (Steam\steamapps\workshop\content\1944430\3357892319) to the mods folder (Steam\steamapps\common\Amnesia The Bunker\mods)

In the Mod Manager, select "Manage Dependencies", add cantaffordaname.amnesiatddenemies to the list, then save (Be sure to save the dependency; if something goes wrong, check to see if it still exists).

Select "Manage Resources" and add new Mod Resources called /config, /maps, and /script, then save.
Open the copied folder containing the addon. Inside, there are two zip files called _config and _script. You will need to extract them inside of your custom story for the addon to properly function without causing conflicts.
You can freely modify the config and script files to your liking, but they will work without further modification.
While you're there, create another folder called maps.
Syncing the Level Editor
In the Mod Manager, select your custom story and click "Sync Editor". After a moment, the level editor will be synced to your custom story. Open the level editor (Steam\steamapps\common\Amnesia The Bunker\LevelEditor.exe) and check the top of the window for (Working on Mod: <Your Mod>). Press '3' and browse the list of entities at the top right of the screen. There will be an option called tdd_enemies containing the enemies.

If the (Working on Mod: <Your Mod>) isn't there, check your documents folder for a folder called HPL3 containing a file called WIPMod.cfg.
If tdd_enemies doesn't appear in the list of entities, check the dependency.


Once the enemies are available in the level editor, make a large space to stand on. Place a PlayerStart and a light source so you don't end up in complete darkness. Place some path nodes, place one of the enemies, then set that enemy as inactive. Create a GhoulHole, then select it and change the name from GhoulHole_1 to the name of the enemy you want to use (For instance, GruntHole_1). The enemies use the hole network to determine safe places to retreat to when attacked by the player.

Save the map by navigating to the maps folder you created, then create a new folder with the same name (i.e. YourMod\maps\reallycoolmapname\reallycoolmapname.hpm).

Navigate to the folder where you saved the map and open a file called <Your Map Name>.hps. Search for void OnAction() and add this inside (Replacing grunt_1 with whatever enemy you placed):
if (alAction == eAction_Test0) { Entity_SetActive("grunt_1", !Entity_IsActive("grunt_1")); }
Next, search for void OnEnter and add this script inside:
PlayerBody_SetActive(true); PlayerBody_SetModel("player_bunker_TDD.ent");
Alternatively, if you want to use the uninjured version of the bunker player model, use player_bunker_clean_TDD.ent instead.

Before launching your custom story, go to the config folder in your mod and create a file called main_init.cfg. Paste the following inside and change "Your Mod/Map Name" to whatever you've called it.
<Directories MainSaveFolder = "<Your Mod Name>" GameLanguageFolder = "config/lang/" /> <Variables GameName = "<Your Mod Name>" /> <StartMap File = "<Your Map Name>.hpm" Folder = "maps/" Pos = "Start_Begin" />
Enabling Debug Mode
Let's set up Debug Mode to make it easier for you to troubleshoot while making your custom story.

If you've never launched Amnesia: The Bunker before on your computer, launch it now. Once the main menu loads, quit the game and navigate to Documents\My Games\Amnesia The Bunker\Main\<Your_Username_randomnumbers_user_settings.cfg>) Open the .cfg file and change the following settings:
DebugMode="true" ForceCacheLoadingAndSkipSaving="false"
Save, then close the file. Launch Amnesia: The Bunker again and press F1 on the main menu to make sure debug mode is on, then launch your custom story. When the custom story loads, it will copy your user_settings.cfg which includes the settings you just changed.

Open the debug menu, select the Game & Script tab, then enable Reload script at task switch and Reload script constantly. Now if you make any changes to scripts, they will update when you reload the game with F5. Next, under the Debug tab, enable Entity Info and make sure that Hide Debug Output is not enabled. Now when an enemy is active, the path it's trying to take will be shown. It also provides additional information about the enemy's behavior at the top left of the screen while they're active.
Testing the Addon
Now that you've launched your custom story, select New Game from the main menu and look at the difficulty settings. You should see options for the Dark Descent Enemies at the bottom of the list.
If you do not see customization options for the grunt, brute, and suitor, you need to make sure you extracted the _config and _script files from the addon.
If you don't have access to New Game+, press and hold the Left Mouse button for 10 seconds to unlock it.

Once you can see the difficulty settings, start a new game (or load your map with the debug menu). The enemy should be inactive and you should see your player model when looking down. Press numpad 0 to enable the enemy. It'll wander around the path nodes and chase after you when you're seen. You can add weapons (revolver, grenades, etc.) to your map and reload the map with F5 to test attacking the enemy. Hurting the enemy will cause it to retreat to a hole where it will then begin to wander again.
If you do not see the path nodes, open the debug menu, go back to the Entity Info option under the Debug tab, and disable/re-enable it. Debug settings can switch on and off without warning, but often occurs when launching a custom story/changing settings in the pause menu.

If you enable the enemy and the game freezes, something went wrong while setting up path nodes. Make sure they are close enough to the ground, are no more than 2m apart, and that they cover the playable area.

If you attack the enemy and it doesn't retreat, you don't have a GhoulHole placed somewhere accessible for the enemy OR you don't have a hole with the correct name. Make sure that it is placed so that the bottom of the hole area is aligned with the floor and check the name to make sure it matches the enemy (Grunts use GruntHole_*, Brutes use BruteHole_*, etc.).

If you attack an enemy and it loses interest in you while it sees you, you don't have enough GhoulHole areas for the enemy to retreat to. Place at least a minimum of 2 holes per enemy type (GruntHole_1, GruntHole_2, etc.) and spread them around the map.

If an enemy kills you and the screen instantly fades to black, you're using the incorrect player body OR you don't have a playerbody set at all. You need to use either player_bunker_TDD.ent or player_bunker_clean_TDD.ent for the correct animations to play. You could also create your own player models based off the TDD variants with the Model Editor.
Ready to Roll
From here, you are all set up to create your custom story. Don't forget to remind your players they need to install the addon to play it!

If you need help, you can visit the Frictional Games Discord [discord.com] and the HPL3 Developer Wiki [wiki.frictionalgames.com] for more details.

Have fun making a custom story!
You are now bound to HPL3, doomed to wander in confusion forever... at least until HPL4 comes out
7 Comments
Vossler_XIII 28 Nov, 2024 @ 11:32am 
Is it possible to chat with via discord and something? I got stuck pretty badly on step "In the Mod Manager, select "Manage Dependencies", add cantaffordaname.amnesiatddenemies to the list, then save (Be sure to save the dependency; if something goes wrong, check to see if it still exists)."

its not popping up or anything, and I uploaded your mod to different folders and stuff. Would appreciate if you can give guide me through, thank you
Can't Afford a Name  [author] 28 Nov, 2024 @ 1:30am 
As for changing levels (I'm assuming you mean modifying levels from the base game), you can copy/paste map folders to your mod's map folder to change them. Files in your mod with the same file path & name will take priority over base game files. You could copy the main_menu map to your mod to have a custom background, or copy other maps and modify them.
Can't Afford a Name  [author] 28 Nov, 2024 @ 1:30am 
To change textures, you'll need to create an identical file path in your mod folder for the texture you want to replace, then add your texture + a .mat file created with the Material Editor with the same name. For example, if you wanted to change the player's textures, you'd look at the file path for the clothing texture:
(Amnesia The Bunker\entities\character\player\player_body\player_body_soldier_body.dds)
Then you'd create folders in your mod and place your texture in it:
(Amnesia The Bunker\mods\YourMod\entities\character\player\player_body\player_body_soldier_body.dds)
And finally you use the Material Editor to create a modified .mat file that uses your custom texture and save it in that folder. Depending on the texture you're replacing, you'll also want to add entities or static_objects to your Mod Resources in the manager with the Manage Resources button.
Can't Afford a Name  [author] 28 Nov, 2024 @ 1:29am 
@Vossler_XIII Depending on where you installed the mod manager, you can try searching for Hpl3ModManager.exe . The manager itself doesn't require CodeLite to function, but it is useful for making scripts.
Vossler_XIII 27 Nov, 2024 @ 8:06pm 
I would really appreciate if its possible to chat with you and see if you can help me. Thank you again
Vossler_XIII 27 Nov, 2024 @ 3:56pm 
And do you know by any chance how to launch that HPL3 Mod Manager ? Cause I downloaded and it got installed by itself somewhere in disc C, and when I located it, there is no executable file or anything to open it. Do I have to download CodeLite as well maybe? Thank you!
Vossler_XIII 27 Nov, 2024 @ 2:27pm 
Thank you for the guide. Is it possible to change levels and textures in this Mod Manager ( HPL3 Mod Manager)?