Difference between revisions of "HPL3/Amnesia: Rebirth/Modding/Setup Modding Environment"

From Frictional Wiki
Jump to navigation Jump to search
m (add DetailMeshes lookupdir category - leveleditor.log lists this as a valid category but this needs to be verified)
 
(5 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 
{{shortPageTitle}}
 
{{shortPageTitle}}
In order to have a smooth modding development experience, Amnesia: Rebirth is needed to be configured into proper development environment.
+
In order to have a smooth modding development experience, Amnesia: Rebirth should be configured to run in a proper development environment.<br />{{Tip|It is recommended to use the [https://wiki.frictionalgames.com/page/HPL3/Third_Party_Tools/HPL3_Mod_Manager HPL3 Mod Manager] to configure everything that is listed on this page.}}<br />
 +
==Setting up Custom Story Dev Mode==
 +
During development, it is extremely helpful to have access to the development options and [[HPL3/Amnesia:_Rebirth/Modding/Developer_Debug_Menu|debug mode]] of the game. To achieve that, you need to start the game with a few extra arguments. It is suggested that you set up a script file for your mod so you can more quickly launch it in development mode.
  
== Setting up Custom Story Dev Mode ==
+
#In the main folder of the game, create a script file with a recognizable name for your mod development. For example: <code>myMod_dev.bat</code> (.sh for Mac/Linux)
During development, it is necessary to have access to the development options and [[HPL3/Amnesia:_Rebirth/Modding/Developer_Debug_Menu|debug mode]] of the game. To achieve that, you need to set up a development mode file for the mod.
+
#Paste the following text into the file and save, changing <code>MyModName</code> so it fits your mod <u>folder name</u>.
#In the main folder of the game, create a <code>.bat</code> file with a recognizable name for your mod development. For example: <code>myMod_dev.bat</code>.
 
#Paste the following text into the file and save, change <code>MyModName</code> so it fits your mod folder name.
 
 
<pre>AmnesiaRebirth.exe -user Dev -cfg config/main_init_dev.cfg -mod local:MyModName</pre>
 
<pre>AmnesiaRebirth.exe -user Dev -cfg config/main_init_dev.cfg -mod local:MyModName</pre>
#You can now launch the dev .bat file throughout the development of your mod.
+
'''Non-Windows users''': Substitute <code>AmnesiaRebirth.exe</code> with your platform's executable, for example: <code>./Amnesia2.bin.x86_64</code>
  
== Setting up the Editors ==
+
You can now launch the script file throughout the development of your mod.
 +
 
 +
==Setting up the Editors==
 
Your mod might have custom assets. In order to make the editors (Level Editor, Model Editor, etc) to load your mod's assets, it needs to be configured into a special mode called "WIP Mod".  
 
Your mod might have custom assets. In order to make the editors (Level Editor, Model Editor, etc) to load your mod's assets, it needs to be configured into a special mode called "WIP Mod".  
 
{{tip|Even if your mod doesn't have any custom assets, it's a good practice to configure the Level Editor anyway, just so you won't have to deal with it in the future should you decide to add custom assets.}}  
 
{{tip|Even if your mod doesn't have any custom assets, it's a good practice to configure the Level Editor anyway, just so you won't have to deal with it in the future should you decide to add custom assets.}}  
  
=== WIP Mod - Manual Configuration ===
+
===WIP Mod - Manual Configuration===
 +
 
 
#Navigate to <code>My Documents/HPL3</code>. You need to open one of the editors at least once in order to see the HPL3 folder inside your document folder.
 
#Navigate to <code>My Documents/HPL3</code>. You need to open one of the editors at least once in order to see the HPL3 folder inside your document folder.
 
#Inside that folder, create a file called <code>WIPMod.cfg</code>.
 
#Inside that folder, create a file called <code>WIPMod.cfg</code>.
Line 22: Line 25:
 
(Of course, you will have to change the path in order to suit your own location of the mod).
 
(Of course, you will have to change the path in order to suit your own location of the mod).
  
=== Final Step ===
+
===Final Step===
  
 
If your mod indeed has custom assets, you need to make sure the editors can add them to their look up list.  
 
If your mod indeed has custom assets, you need to make sure the editors can add them to their look up list.  
 +
 
#In your mod's folder, create a new folder and name it <code>editor</code>.
 
#In your mod's folder, create a new folder and name it <code>editor</code>.
 
#Inside that folder, create a file called <code>lookupdirs.cfg</code>.
 
#Inside that folder, create a file called <code>lookupdirs.cfg</code>.
Line 34: Line 38:
 
#*<code>Particles</code>
 
#*<code>Particles</code>
 
#*<code>Sounds</code>
 
#*<code>Sounds</code>
 +
#*<code>DetailMeshes</code>
  
 
Example file:
 
Example file:
 
<syntaxhighlight lang="xml">
 
<syntaxhighlight lang="xml">
 
<Directories>
 
<Directories>
<Dir Category="StaticObjects" Path="assets/static_objects" />
+
<Dir Category="StaticObjects" Path="static_objects/" />
<Dir Category="Entities" Path="assets/entities" />
+
<Dir Category="Entities" Path="entities/" />
<Dir Category="Billboards" Path="assets/billboards" />
+
<Dir Category="Billboards" Path="billboards/" />
<Dir Category="Particles" Path="assets/particles" />
+
<Dir Category="Particles" Path="particles/" />
<Dir Category="Sounds" Path="assets/sounds" />
+
<Dir Category="Sounds" Path="sounds/" />
 
</Directories>
 
</Directories>
 
</syntaxhighlight>
 
</syntaxhighlight>

Latest revision as of 16:21, 8 May 2024

In order to have a smooth modding development experience, Amnesia: Rebirth should be configured to run in a proper development environment.

Icon tip.png Tip: It is recommended to use the HPL3 Mod Manager to configure everything that is listed on this page.


Setting up Custom Story Dev Mode

During development, it is extremely helpful to have access to the development options and debug mode of the game. To achieve that, you need to start the game with a few extra arguments. It is suggested that you set up a script file for your mod so you can more quickly launch it in development mode.

  1. In the main folder of the game, create a script file with a recognizable name for your mod development. For example: myMod_dev.bat (.sh for Mac/Linux)
  2. Paste the following text into the file and save, changing MyModName so it fits your mod folder name.
AmnesiaRebirth.exe -user Dev -cfg config/main_init_dev.cfg -mod local:MyModName

Non-Windows users: Substitute AmnesiaRebirth.exe with your platform's executable, for example: ./Amnesia2.bin.x86_64

You can now launch the script file throughout the development of your mod.

Setting up the Editors

Your mod might have custom assets. In order to make the editors (Level Editor, Model Editor, etc) to load your mod's assets, it needs to be configured into a special mode called "WIP Mod".

Icon tip.png Tip: Even if your mod doesn't have any custom assets, it's a good practice to configure the Level Editor anyway, just so you won't have to deal with it in the future should you decide to add custom assets.

WIP Mod - Manual Configuration

  1. Navigate to My Documents/HPL3. You need to open one of the editors at least once in order to see the HPL3 folder inside your document folder.
  2. Inside that folder, create a file called WIPMod.cfg.
  3. Paste the following into the file, and save:
<WIPmod Path="Full_Path_To_Mod/entry.hpc" />

(Of course, you will have to change the path in order to suit your own location of the mod).

Final Step

If your mod indeed has custom assets, you need to make sure the editors can add them to their look up list.

  1. In your mod's folder, create a new folder and name it editor.
  2. Inside that folder, create a file called lookupdirs.cfg.
  3. Create a new <Directories> xml tag inside the file.
  4. Add a list of directories which include your custom assets. The directory has to be associated with a category. The allowed categories are:
    • StaticObjects
    • Entities
    • Billboards
    • Particles
    • Sounds
    • DetailMeshes

Example file:

<Directories>
	<Dir Category="StaticObjects" Path="static_objects/" />
	<Dir Category="Entities" Path="entities/" />
	<Dir Category="Billboards" Path="billboards/" />
	<Dir Category="Particles" Path="particles/" />
	<Dir Category="Sounds" Path="sounds/" />
</Directories>

If all the above is done correctly, a (Working on mod) text should appear on the title bar of HPL3 editors when run.