Skip to content

Commit

Permalink
moar stuf
Browse files Browse the repository at this point in the history
  • Loading branch information
bananaturtlesandwich committed Aug 27, 2023
1 parent d08c3ff commit dcd4831
Show file tree
Hide file tree
Showing 25 changed files with 76 additions and 89 deletions.
6 changes: 3 additions & 3 deletions src/404.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
![](images/Umbypet.gif)![](images/Umbypet.gif)![](images/Umbypet.gif)![](images/Umbypet.gif)![](images/Umbypet.gif)![](images/Umbypet.gif)
## Whoops looks like you got a 404 error :p! Try refreshing the page or check that your url is correct or click a page on the sidebar and load back into the one you wanted
![](images/Umbypet.gif)![](images/Umbypet.gif)![](images/Umbypet.gif)![](images/Umbypet.gif)![](images/Umbypet.gif)![](images/Umbypet.gif)
![](Umbypet.gif)![](Umbypet.gif)![](Umbypet.gif)![](Umbypet.gif)![](Umbypet.gif)![](Umbypet.gif)
## Whoops looks like you got a 404 error :p! Try refreshing the page, checking that your url is correct or clicking a page on the sidebar and loading back into the one you wanted
![](Umbypet.gif)![](Umbypet.gif)![](Umbypet.gif)![](Umbypet.gif)![](Umbypet.gif)![](Umbypet.gif)
3 changes: 0 additions & 3 deletions src/Concepts/Concepts.md

This file was deleted.

6 changes: 4 additions & 2 deletions src/Concepts/Cooking.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Cooking
- Before being put in a pak file, assets undergo a process called cooking where the data used by the engine is erased so only the data needed for the game is in the final pak
- Cooked assets are not able to be edited in the engine however they can be edited through the use of programs such as [UAssetGUI](https://github.com/atenfyr/UAssetGUI) or [Asset Editor](https://github.com/kaiheilos/Utilities)
- Before being put in a pak file, assets undergo a process called cooking where the data used by the engine is stripped so only the data the game requires to run is in the final pak
- You cannot 'decook' content just as you cannot 'decook' a steak once grilled
- Cooked assets are not able to be edited in the engine as that data has been stripped however they can be edited through the use of [Asset Editors](../Tools/Asset-Editors.md)
- After editing they can still be put in a mod as these editors should handle binary equality for you
16 changes: 9 additions & 7 deletions src/Concepts/Dummying.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,16 @@
- There is a trick called dummying that can be utilised in many situations
- How it works is that you create an empty asset that is the same name and type as an asset in the original pak file
- Another asset will reference this and will contain references after cooking
- In final mod packaging, you omit the dummy asset but nothing else
- This means that in game instead of the dummy asset the other asset will use the asset in the pak
- In final mod packaging, you leave out the dummy asset
- This means that in game the asset that was dummied is used instead

- The most notable example of this is in mesh modding
- If you want the mesh to continue to use the materials it uses then you would dummy the materials and material instances that it uses
## Examples
**Mesh modding**
- If you want the mesh to continue to use the materials it uses normally then you would dummy the materials/material instances that it uses
- In packaging these are removed and the mesh uses the original materials in game

- Another interesting example is dummying an actor or function library to use a function
**Blueprint modding**
- You can dummy an actor or function library to use a function from it
- The dummy asset is created and a function is added with the same name, parameters and output as the original one
- Another actor calls this function as normal
- The dummy is removed and the function is used as normal in-game
- Another actor (loaded via some means) calls this function from the dummy
- The dummy is removed and the function is called from the original blueprint in game
4 changes: 2 additions & 2 deletions src/Resources/Other-Guides.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
# Other Guides
- My [steam guide](https://steamcommunity.com/sharedfiles/filedetails/?id=2564366174) on Blue Fire modding which some sections were copied from (formatting is horrible)
- My original [steam guide](https://steamcommunity.com/sharedfiles/filedetails/?id=2564366174) on Blue Fire modding (nothing there that isn't here)
- [Dmgvol's](https://github.com/Dmgvol) [GRGuides](https://github.com/Dmgvol/GR_Guides) which covers a lot of what is covered here (this guide was based on this)
- [atenfyr's](https://github.com/atenfyr) [astroneer modder's guide](https://docs.google.com/document/d/193p6thlTOWffF-JIeTGrLUHg9Um5i6gwMJaK4kzy9Ik) which is relevant ignoring the astroneer specific parts
- [Buckminsterfullerene's](https://github.com/Buckminsterfullerene02) BP tutorials for DRG - relevant from 3 onwards
- [DRG modding](https://github.com/Buckminsterfullerene02/DRG-Modding/) is a collection of DRG guides and tools by [Buckminsterfullerene](https://github.com/Buckminsterfullerene02)
- [DRG modding](https://github.com/DRG-Modding/Guides) is a collection of guides by the DRG modding community
- [GHFear's](https://www.youtube.com/channel/UCRg7RCAoE_3jjibix9Ggwaw/featured) BP guides - specific to RusselJ's modloader
- [Spyro Reignited](https://franklygd.github.io/Spyro-Reignited-Trilogy-Asset-Replacement/) modding guide
- [Satisfactory modding guide](https://docs.ficsit.app/satisfactory-modding/latest/index.html) is specific, but a lot can be learnt from it
Expand Down
8 changes: 4 additions & 4 deletions src/SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
- [Cooking](The-Basics/Paking/Cooking.md)
- [Final Packaging](The-Basics/Paking/Final-Paking.md)

- [Core UE4 Modding Concepts](Concepts/Concepts.md)
- [Core UE4 Modding Concepts]()
- [Pak files](Concepts/Paks.md)
- [Mod Loading](Concepts/Loading.md)
- [Cooking](Concepts/Cooking.md)
Expand All @@ -36,11 +36,11 @@
- [Level Editing](Specific-Guides/Levels.md)
- [Using UAssetGUI](Specific-Guides/UAssetGUI.md)
- [Using UAssetAPI](Specific-Guides/UAssetAPI.md)
- [Blueprint modding](Logic-Mods/Blueprint.md)
- [Blueprint modding](Specific-Guides/Logic-Mods/Blueprint.md)

---
# Misc.
- [Tools](Tools/Tools.md)
# Tools and Resources
- [Tools]()
- [Pakers/Unpakers](Tools/Pakers.md)
- [Pak Explorers](Tools/Pak-Explorers.md)
- [UAsset Editors](Tools/Asset-Editors.md)
Expand Down
6 changes: 3 additions & 3 deletions src/Specific-Guides/Dialogue.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,10 @@

This guide will cover using the [.locres text tool](https://cdn.discordapp.com/attachments/775093920915914794/836699867920859207/unreal_locres_texttool.exe)

***These mods have major compatibility issues but replacement mods in general do anyway***
If the text you want to modify is not contained in these you will have to use the [.locres text tool](https://cdn.discordapp.com/attachments/775093920915914794/836699867920859207/unreal_locres_texttool.exe)
**These mods have major compatibility issues but replacement mods in general do**

- Run the executable and select the .locres file located in localisation
- Run the executable and select a .locres file extracted from the `Localization` folder
- This is a raw asset so no need to specifically use umodel or fmodel
- This will generate a .txt containing all of the dialogue in the game
- Make any changes you wish
- Once you are done convert the .txt back to .locres using the executable
Expand Down
13 changes: 6 additions & 7 deletions src/Specific-Guides/Disabling.md
Original file line number Diff line number Diff line change
@@ -1,21 +1,20 @@
**Credits to Dmgvol I basically just rewrote their guide**

*If file extensions aren't showing in file explorer enable them in the view settings*
**If file extensions aren't showing in file explorer enable them in the view settings**

# Disabling Objects

This is a useful way to disable actors in game - can be used for stuff like removing annoying enemies and effects among other things

- Open umodel and find the content you would like to disable (In my case the main menu castle)

![](../images/Reference.png)
![](Reference.png)

- Recreate the observed folder structure like you would in final paking (because we are dealing with cooked uassets)

*A useful shortcut for creating new folders is ctrl+shift+n and you can enter the name and press enter to go inside the folder*
*A useful shortcut for creating new folders is ctrl+shift+n and you can enter the name and double-press enter to go inside the folder*

- Create a blank text document with the same name as the uasset you want to disable and change the file extension to .uasset
![](../images/Structure.png)
![](Structure.png)

- Package the folder, place in mod folder and run the game
![](../images/NoCastle.png)
![](NoCastle.png)
- The content should not appear if done correctly
File renamed without changes.
47 changes: 15 additions & 32 deletions src/Specific-Guides/Materials.md
Original file line number Diff line number Diff line change
@@ -1,42 +1,25 @@
# Materials

**Credits to atenfyr for [UassetGUI](https://github.com/atenfyr/UAssetGUI/releases) and FatihG_ for the last method**
To create a child of an existing material use the [in engine method](./Materials.md#in-engine-method)

For pretty much everything, you can hex edit a material

If you wish to enable parameters from the parent material then the [in engine method](./Materials.md#in-engine-method) must be used

**Methods**

[Convenient Method](./Materials.md#convenient-method)

[Manual Method](./Materials.md#manual-method)

[In Engine Method](./Materials.md#in-engine-method)

### Convenient Method
This has no downsides to the other methods. The other methods are here if others wish to know them.
### Asset Editing
- Download [UassetGUI](https://github.com/atenfyr/UAssetGUI/releases) by atenfyr
- Set the version to whatever version of UE your game uses(For Blue Fire it's 4.25)
- Open the target material and search the exports for parameter values(names can be found in ParameterInfo)
- Set the version to the version of UE4 your game uses
- Open the target material and search the exports for parameter values
- These can be changed in any way you wish
![](../images/UassetGUI.png)
- File<Save as and recreate the file structure like normal
![](UassetGUI.png)
- File < Save as and recreate the file structure like normal
- Delete the .bak files (and the .uasset because you only changed values) and package

### In engine method
- There is also an alternate method for editing material instances in engine that I will put here for the sake of documentation

- First export the material instance you wish to modify normally using umodel
- Create a blank UE4 project (remember to untick use pak file) and create the appropriate folders for the material
- Create a new material and create parameters inside the material for each of the parameters in the props.txt
### In Engine
- Export the material instance you wish to modify normally using umodel
- Create a new dummy material in your project and create parameters inside the material for each of the parameters in the props.txt
- Set them with their default values and names
- Connect all the parameters to the main node using math nodes (how you do it is not important)
![](../images/nodes.png)


- Once that is done, save the material and create a material instance of it with the same name as in the game files
- You can now edit the parameters as you please(enable any desired parameters)
- Connect all the parameters to the main node using math nodes
- how you do this is not important - what's important is they are there
![](nodes.png)
- Once that is done, save the material and create a material instance of it
- You can now edit the parameters as you please
- Once you are happy with the changes, save and package the project
- Package as normal except remove the parent material assets in final paking so that the parent material does not overwrite the actual parent material
- Package as normal except remove the parent material asset as it was a dummy

File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
8 changes: 4 additions & 4 deletions src/The-Basics/Paking/Cooking.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,12 @@ You can cook the assets in 2 ways:

either:

- Navigate to File>package project>Windows(64-bit)
- Navigate to File > package project > Windows(64-bit)
- Select the folder you want to cook the mod into

or:

- Navigate to File>Cook Content For Windows
- It will output to the Saved folder
- Navigate to File > Cook Content For Windows
- It will output to the Saved/Cooked folder

The first time it will take longer to build
The first time it will take quite long to build as it is compiling shaders
8 changes: 5 additions & 3 deletions src/The-Basics/Paking/Final-Paking.md
Original file line number Diff line number Diff line change
@@ -1,16 +1,18 @@
# Final Packaging

- Create a folder named `The name of your mod_P` (the `_P` clarifies it as a patch so that it overwrites original game content)
- Create a folder the name of your Game's project name
- Go into the folder where you packaged your mod and copy the Content folder in `WindowsNoEditor\ProjectName` into this folder
- Folder structure is very important for UE4 modding so make sure spellings of the folders are the same as they were when exported
- Download [Unrealpak](https://fluffyquack.com/tools/unrealpak.rar) by FluffyQuack and drag the mod folder onto UnrealPak-with-compression.bat
![](Packaging.png)

- This will create a pak file - Make sure the pak file contains a _P at the end of its name
- Create a folder in your Paks folder called ~mods
- This will create a pak file - Make sure the pak file still contains the _P at the end of its name
- Create a folder in your `Paks` folder called ~mods

(The folder is just to ensure proper load order. The folder can be named anything that starts with a letter after the first letter of the game pak)
- Place the pak file in it and run your game to see if it worked. Hopefully you should find it did.

![](drip.png)

If the mod worked, give yourself a pat on the back!
If the mod worked, give yourself a pat on the back! You have successfully made a patch mod!
2 changes: 1 addition & 1 deletion src/The-Basics/Unpaking/FModel.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,4 @@
- Click on Settings and change the Unreal Version to your game's version (it will have to restart if changed)
- If there is red dot next to a pak file, go to Directory > AES and read [this](AES-Keys.md)
- Find something you want to replace or modify - *start with something simple (I'll be using a texture)*
- Right click the chosen package and export
- Double-click the asset (if a texture then the texture will appear on the right - you can then right-click > Save Texture)
12 changes: 6 additions & 6 deletions src/The-Basics/Unpaking/Options.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
# Pak Decompression Options

**Keep in mind that there are more options found in [Pakers/Unpakers](../../Tools/Pakers.md) and [Pak Explorers](../../Tools/Pak-Explorers.md)**

- The following section illustrates a few different options for unpacking a pak archive for your game
- This section doesn't have to be done sequentially
- Your game's Paks folder should be located in your game's content folder
- If this folder doesn't exist or there is no pak files to unpack and only raw assets then you can completely skip this section
- If there are multiple pak files then your game has split its paks into chunks - This shouldn't affect the process significantly
- This section doesn't have to be done in any order - use whatever tool you prefer
- Your game's `Paks` folder should be located in your game's `Content` folder
- If this folder doesn't exist or there is no pak files to unpack and there is only raw assets then you can completely skip this section
- If there are multiple pak files then your game has split its paks into chunks - This shouldn't affect the process significantly

- There are more options found in [Pakers/Unpakers](../../Tools/Pakers.md) and [Pak Explorers](../../Tools/Pak-Explorers.md) that I won't go into detail about in this section
10 changes: 7 additions & 3 deletions src/The-Basics/Unpaking/QuickBMS.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,17 @@
# QuickBMS
**This method will extract all of the raw assets out of the pak file so if you don't have space then I suggest [umodel](UEViewer.md) or [fmodel](FModel.md). The advantage of this is immediate access to a file system with correct folder structure**
**This method will extract all of the raw assets out of the pak file so if you don't have space then I suggest [umodel](UEViewer.md) or [fmodel](FModel.md)**

**The advantage of this is immediate access to a file system with correct folder structure**

**With this method you will need to extract models and textures from the raw assets using [umodel](UEViewer.md) or [fmodel](FModel.md)**

**With this method you will also still need to extract usable data from the raw assets using [umodel](UEViewer.md) or [fmodel](FModel.md)**
- Download [QuickBMS](https://aluigi.altervista.org/papers/quickbms.zip) by Luigi Auriemma and [unrealtournament.bms](https://aluigi.altervista.org/bms/unreal_tournament_4.bms) and place them into your paks folder
- If the total file size of your pak/s is below 4 GB drag the bms file onto quickbms.exe (1,000,000 KB is one GB)
- If not use quickbms_4gb_files.exe
![](QuickBMS.png)
- A window should pop up asking for the archive
- Select your pak file that should look like `Game Project Name-WindowsNoEditor.pak` (if your game uses chunks type * into the text box which will extract the whole folder)
- Select your pak file that should look like `Game Project Name-WindowsNoEditor.pak`
- If your game uses pak chunks type * into the text box instead to extract the folder
- Now select the output folder (this can be wherever)
- If compatible then the file should commence extraction
![](QuickBMS-Extraction.png)
Expand Down
11 changes: 7 additions & 4 deletions src/The-Basics/Unpaking/UnrealPak.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
# Using UnrealPak directly

**This method will extract all of the raw assets out of the pak file so if you don't have space then I suggest [umodel](UEViewer.md) or [fmodel](FModel.md). The advantage of this is immediate access to a file system with correct folder structure**
**This method will extract all of the raw assets out of the pak file so if you don't have space then I suggest [umodel](UEViewer.md) or [fmodel](FModel.md)**

**With this method you will also still need to extract usable data from the raw assets using [umodel](UEViewer.md) or [fmodel](FModel.md)**
**The advantage of this is immediate access to a file system with correct folder structure**

**With this method you will need to extract models and textures from the raw assets using [umodel](UEViewer.md) or [fmodel](FModel.md)**

**With this method you will also need the version of unreal engine installed that your game uses - you will need this later on anyway**

Expand All @@ -11,7 +13,7 @@
[Here's a video detailing the process](https://youtu.be/AElxgCRXF64)

However here's a summary if some things are unclear:
- Open command prompt and drag unrealpak.exe into command prompt. This .exe should be stored in UE_4.XX(whatever version you have)\Engine\Binaries\Win64\UnrealPak.exe
- Open command prompt and drag unrealpak.exe into command prompt. This .exe should be stored in UE_4.XX\Engine\Binaries\Win64\UnrealPak.exe

![](unrealpak.png)

Expand All @@ -20,4 +22,5 @@ However here's a summary if some things are unclear:
- Put a space after that and enter the directory of the folder you want the assets to be extracted to
- Press enter and the game files should extract to the folder
- If there is an error, remember that syntax in important- here's mine for blue fire as reference
`"C:\Program Files (x86)\UE_4.25\Engine\Binaries\Win64\UnrealPak.exe" "C:\Program Files (x86)\Steam\steamapps\common\Blue Fire\Blue Fire\Content\Paks" -Extract C:\modding\BF_Unpaked`
`"C:\Program Files (x86)\UE_4.25\Engine\Binaries\Win64\UnrealPak.exe" "C:\Program Files (x86)\Steam\steamapps\common\Blue Fire\Blue Fire\Content\Paks" -Extract C:\modding\BF_Unpaked`
- If your game is incompatible, try a different method
5 changes: 0 additions & 5 deletions src/Tools/Tools.md

This file was deleted.

File renamed without changes
Binary file removed src/images/beegUmby.png
Binary file not shown.
Binary file removed src/images/modloader.png
Binary file not shown.

0 comments on commit dcd4831

Please sign in to comment.