AMFP Asset pack installation and usage

From Frictional Wiki
Jump to navigation Jump to search

Welcome to my page and modding instructions for my asset pack.

Thank you for taking interest, and I will format and update this as we go based on feedback.

I will be taking into account that you have modded TDD before, so you know how to work with custom assets and how to put a basic Full Conversion mod together. If that is not the case I suggest you delve into some youtube tutorials first, before attempting to use this pack.

By using this pack, you seemlessly integrate it as an existing outside source/dependency into your own project.

NOTE: The asset pack dependency setup ONLY works for:

- Total Conversion / Full Conversion mods being able to browse outside resources (no regular custom stories sadly, but check the bottom of the page)
- You need to own a Steam version of the game that is automatically updated to 1.5 patch, and you download the assets from the Workshop. This is advised, but not the only one supported!
- For 1.4 version and earlier means you create mods for retail / other online stores. Download and use the MODDB version instead!

Asset Pack contents:

Let's break down what the asset pack itself entails:

"Billboards, Entities, Graphics, Lights, Misc, Music, Particles, Sounds, Statics and Textures" are all included from the source game.
- They contain no duplicates with the base game of Dark Descent. Unloading these folders straight into your modding installation will produce no overwrites!
- Mostly they work identical to their AMFP counterparts, with some more interactions and expansions added.
"Scripts" folder contains some customly recreated script functions of AMFP. It's currently very makeshift and brief, but you can either:
- Copy these into your level scripts to ease creating AMFP-esque gameplay.
- Include the whole hps (only works with 1.5 update) by adding the #include "amfp_common_functions.hps" somewhere in your level hps, and call any of its functions as they were part of the same script file
- In the moddb version it also contains an example bat file on how to make the pack required for your mod to launch. Simply replace "your_mod" with the name of your mod's folder

Showcase mod contents (Non Omnis Moriar demo):

There is a Showcase mod that contains more files for a FC/TC mod that would want to be even more authentic to AMFP gameplay.

- Ported, playable levels from my older AMFP project, that make use of the 1.5 update functions, compiled script libraries (such as: "amfp_common_functions" from the base asset pack's "scripts" folder) and the provided assets in general.
- For the moddb version, these same scripts exist, but had to be manually copied into each level hps. The one specific 1.5 update function used is recreated with custom logic

Files that overwrite base game variants when used in a TC environment:

- Config folder has unique entries, see "baselang_amfp/base_english.lang", "game_amfp.cfg", "menu_amfp.cfg" files for exact changes. They contain authentic language entries, mechanics altered to AMFP such as no sanity vision, lantern consuming no oil and so on
- Fonts and Gui contain the AMFP variants so the same authentic menu can be created.
- Graphics folder contain UI elements for Hud, Inventory, Journal and so on to replace the base game's look (and some custom ones)
- Lang folder lets you find the AMFP menu logo, ready to be used
- Misc folder contains a custom sanity event to recreate the ShowScreenImage function from AMFP and the TDD 1.5 update, see the moddb version for its usage in the first level hps.
- Models contain the Mandus hand and lantern models to be used instead of Daniel's
- Particles feature the "blood smoke" effect to be used when enemy hallucinations disappear (and a few custom ones)
- Shaders are from AMFP as well, for a more authentic look on entity highlights and such
- Sounds contain the overwritten footsteps, joints and player sounds (alonside custom ones)
- The rest of the folders only contain custom content for the showcase mod itself

Version differences:

- Steam Version of the mod contains new functionalities such as built in dependency for the asset pack itself that the workshop can then auto-download for the player. It uses unique new functionalities from 1.5 patch, such as custom story config browsing, script outsourcing (ex: "amfp_common_functions.hps") and ShowScreenImage function.
 - The Moddb version of the downloads are based on 1.3 or 1.4 patch. Which means if you want your mod to be available outside of the Steam Workshop you should set it up with this version as well. 1.5 script functions are removed, and outside scripts are integrated into each level's script file.

IT DOESN'T MATTER which version of the assets you put into your modding installation and make your levels with. What matters is which version do you release your mod for, and how you set it up. See below!

Releasing a Mod:

Let's say you got the assets working, and you have a working mod, ready to be released or tested. So how do you release it?

If you want to release on Steam Workshop:

I recommend browsing through this page to understand the update and how to set up a TC mod with it beforehand: https://wiki.frictionalgames.com/page/HPL2/1.5_Update

This gets a bit tricky here, bear with me.

- First, your resources must contain this line on top: 

 <Directory Path="../3123410893" AddSubDirs="true" />
 
 This is the relative path to the workshop downloads folder, and the online ID of the AMFP asset pack itself. This is ALWAYS THE SAME.
 
 - Second, you need to add a dependency to your own mod's assets:
 
 Before you can do this my way, you need to upload your mod through the WorkshopUploader exe. This nets you an online ID for your mod itself. It should look something like this: https://steamcommunity.com/sharedfiles/filedetails/?id=3123452472
 That id part "?id=3123452472" is what you need. The mod's ID in this case is: "3123452472".
 
 Put this ID with a relative path the same way you did with the asset pack's, on the very top above it.
 So with our example it looks like this:
   <Directory Path="../3123452472" AddSubDirs="true" />
   
 So if you have both of these relative paths on top of resources, and you upload this small update to your mod, the assets and the mod should now work perfectly, and ready to be set to Public. IMPORTANT, that the Workshop always resets your mod's description on each update, make sure to BACK IT UP before you reupload!
 
 There might be easier ways to this, but this is a foolproof method I found that worked perfectly for my own release.
 
 - Third and final step, on the Workshop release add the Asset pack (easiest from your Subscribed Items) in the "Add/Remove Required Items" section, so the player is aware of its necessity!
 
 - Check the "resources_amfp.cfg" in the Steam Workshop version of Non Omnis Moriar once again for reference.

If you want to release on Moddb for retail/other online store versions:

Once again, if you haven't been actively creating FC mods before, this tutorial helps setting up a full conversion mod: https://www.youtube.com/watch?v=t1d6NyWruTY&t=1190s&ab_channel=Mudbill

- You need to have these 2 lines on top of your resources.cfg: 

<Directory Path="/NonOmnisMoriar_TDD" AddSubDirs="true" />
<Directory Path="/amfp_assets" AddSubDirs="true" /> 

- Additionally, you should use the example bat file to launch your "main_init.cfg" that contains a reference to this resource file.
If the player have both the asset pack and your mod downloaded, the bat file will let them play instantly, otherwise warning them to download the assets as well

 - Check the "resources_amfp.cfg" in the Moddb version of Non Omnis Moriar for reference.

If you only want to create a simple custom story, this pack might still help you!

- You should ignore most of the jargon above, and just take what you need from the pack, and include them in your own mod's files like you would do originally. I still recommend using this pack over grabbing the assets yourself from AMFP, as it's more organized here. But be sure TO COPY EVERY NEEDED FILE MANUALLY in this case!

A custom asset usually needs these files to work, so be sure to check if you have all for every singular asset you copy:

- .ent - the entity itself if the asset has any, this includes any in game interaction
- .dae / .fbx - the static model file. Animated models usually have an "animations" folder with more files inside that you might wanna grab for it to work well.
- .msh - is a generated file by the engine, you can grab it but not necessary
- .mat - the material file (you can open with notepad to check for all the texture files needed)
- "example.dds", "example_nrm.dds", "example_spec.dds" are the texture "layers" usually included in a model's material, each have unique filenames, but this is usually the format baseline. You might want to check the .mat if there is more or some are not needed.

Note that some models use multiple materials (and assigned textures). You can try opening the .dae file with notepad/notepad++ and search for a section called
"<init_from>" to see which material/materials to look for. For FBX files, I recommend using a Hex editor (search for "material") or a modelling program such as Blender or Maya to find this reference.

Links:

No matter where you came from to this page, I will link you all the downloads down here:

- AMFP Asset pack (Steam Workshop release): https://steamcommunity.com/sharedfiles/filedetails/?id=3123410893

- Showcase mod with FC overwrites (Steam Workshop release): https://steamcommunity.com/sharedfiles/filedetails/?id=3123452472

- AMFP Asset pack and Showcase level (Moddb version): https://www.moddb.com/mods/machine-for-pigs-asset-pack-for-tdd

More asset packs on the workshop:

- Amadeus assets (Reminiscity): https://steamcommunity.com/sharedfiles/filedetails/?id=3124494981

- In Lucy's eyes assets (Redline Games): https://steamcommunity.com/sharedfiles/filedetails/?id=3126000385


That should be it, cheers and happy modding!