Take me to...
- Ancient Gates & Portals
- Arithmancy puzzle door tutorial
- Sub-level creation
- How To: Create a Modded Dungeon
- How To: Creating Rivers and Lakes
Ancient Gates & Portals
Here is a simple guide about how to setup Ancient Gates / Portals in the Creator Kit.
Necessities
BP_AncientGate and BP_AncientMagicHotSpot are what we will be working with.
BP_AncientGate is the portal, and BP_AncientMagicHotSpot is the magic spout that activates the Portal.
Instructions
1. Place down one copy of BP_AncientGate and one copy of BP_AncientMagicHotSpot in the scene.
2. To activate the Portal, the Magic Hot Spot must be connected to it.
- In the Details tab of BP_AncientMagicHotSpot, scroll down to Default > Dungeons.
- In the Switch Target parameter, click the + icon and select the Portal with the “Pick Actor from scene” tool.
3. By default, the Magic Hot Spot is deactivated until clearing a certain condition. To change this, in the Details tab of BP_AncientMagicHotSpot, scroll down to Default and check the ‘Is Activated’ setting to ‘True’.
4. Our Portal is now connected to the Magic Hot Spot, and can be turned on by activating the Magic Hot Spot.
5. We can now add assets to be affected by the Portal, and which side will affect them. In BP_AncientGate, we can add assets to ‘Blue Target’ and ‘Red Target’ depending on the side we want our assets to be. In this guide, we will be using BP_Int_BCProps_CloseCrate_Large_002.
- Place 2 copy of BP_Int_BCProps_CloseCrate_Large_002 near the Portal.
- Select one of the crates as the blue target, and the other crate as the red target.
It is to be noted that static meshes might not work with Portals. Make sure to select blueprints when assigning assets to your Portals.
6. When playing in editor, none of the crates should appear. Activate the Magic Hot Spot to turn on the Portal.
- Passing through the Portal’s blue-side will make the chosen crates to appear.
- Traverse to the red-side to see the other crates, while the first crates are now gone.
Before traversing the Portal, the borders of the screen will have red VFX. The asset related to the red target will already be visible. This is normal.
Extras
Detail Tab
In the Detail tab of BP_AncientGate, there are multiple useful options to modify the Portal to your liking.
- Hide Arch: A checkbox that lets you hide the default arch of the blueprint. This way, you can create your own arch and then resize the Portal to your liking (scroll down to Components > Gate) to modify the gate size).
- Ancient Radius: The perimeter in which the Avatar is in the “ancient dimension”. When Avatar leaves this zone, the illusions by the Portal are reset.
- Ancient Location: The location where the center of the ancient radius starts. This can also be modified with the Locator (purple diamond) in the scene that comes with the blueprint.
- Show Radius: Check to see the radius of the “ancient dimension”. You can also see the radius by changing the View Mode to Player Collision. If zoomed out enough, the radius will be displayed as a large pink sphere around the Portal.
- VFX Light Color Blue/Red: These options can be changed to any color. This will affect the light color reflection on the arch and surrounding floors/walls/ceilings.
- VFX Light Max Intensity: Change the intensity of the option above.
- VFX Gate Edge Intensity: Change the light intensity of the Portal’s plane itself.
Components
In BP_AncientGate, there are multiple useful components present that all have utilities in personalising your own Portal.
1. Gate: This component and its subcomponents create the vertical area where Avatar can pass through the Portal and see through objects. Make sure to resize the Gate component to adjust the subcomponents accordingly.
Make sure that Gate covers the opening of the arch. If not, when traversing the Portal, the Avatar might not overlap with the Gate component and might not traverse to the other side properly.
If the visuals through the Portal seem not properly framed, check out the location of ‘LeftPoint’, ‘RightPoint’ and ‘CenterTop’ components. They have to be positioned on the edges of ‘Gate’, where the ‘LeftPoint’ is at the bottom corner of the gate, ‘RightPoint’ at the other bottom corner, and ‘CenterTop’ at the center of the top of the gate.
2. Vis: This component and its subcomponents illustrate the vertical area on which the red and blue VFX for each side of the Portal as well as its refraction.
Make sure to size up the Vis component to size all 3 subcomponents at once.
Arithmancy puzzle door tutorial
Follow this short step-by-step guide to set up a working Arithmancy puzzle door in the Creator Kit.
Instructions
1. Within your level, place down one copy of BP_Arithmancy_Door2 and two copies of the BP_ArithmancyDice blueprints
2. Select one of the two dice blueprints and check the ‘Even' setting to 'True' under the 'Default’ category within the Details tab.
3. Select the door and bind each dice to the door using the ‘Pick Actor from scene' tool.
The dice with the triangle pointing down is typically the Odd dice and the one pointing up is typically the Even dice.
4. Select each dice and bind it to the door using the 'Pick Actor from scene' tool.
5. Change the blackboard on the door or leave the default one (your choice). You can change it by selecting the ChalkBoardMeshcomponent on the door blueprint and changing the material assigned to it.
- There are 12 different blackboards available by default.
It is important to note that the blackboard on the door is only a hint for the user, it has no mechanical implications when it comes to the setup/solution to the puzzle. While in the Creator Kit, the arithmetic value of the symbol on each dice face can be found in the UI_T_Arithmancy_Study_Guide texture.
6. Select each dice and assign their correct value to complete the puzzle in the ‘Solved Dice Value' field.
This value is not to be confused with the arithmetic value each symbol represents but rather the order in which they show when turning the dice (ordered 1 to 6). The ? symbol on the dice is equivalent to 1, so if you set the Solved Dice Value to 1 on both, the door can be opened immediately without turning any of the dice in-game.
7. Test your new door to ensure everything has been setup correctly.
Sub-level creation
This tutorial will go over the process of creating a Sublevel and how to use the Quest Editor to load this Sublevel as part of a Quest.
What is a Sublevel and why would a modder want to use one:
We can think about Sublevels as layers that get added to a level, and these layers can contain assets like chests, items, enemies, etc. This Sublevel can be hidden/revealed during a Quest and make these assets appear in the level the player is currently in.
The advantage Sublevels have over Dynamic Volume based encounters is that they can trigger when the player reaches a certain point in a Quest, rather than triggering when a player reaches a certain location.
Instructions
Creating a sub level
These steps will cover the process of creating a Sublevel in the Overland and how to use it in a Quest. A section below will be added to go over how to include a sublevel to a custom created level.
1. First, let's create a Mod by selecting 'New Mod' on the top ribbon. An Empty Mod will do, unless we want to use a custom level, in this case we would need to select Dungeon Mod.
2. To create our Sublevel in the Overland, we should decide first in which part of the Overland we want to add these things.
- For this exercise, we will choose the sector CO_AB of the Overworld. Within in the Content Browser, open the CO_AB level located in Content>Levels>Overland>HOG.
3. In this level, choose a spot where you would want to add assets that will be loaded during our Quest.
4. Open Windows>Levels from the top of the editor to open the Levels view port.
5. In this window, click on the Levels buttons to open a dropdown menu.
6. Select ‘Create New’.
7. Select ‘Empty Level’.
8. Name it and press ‘Save’.
9. Make sure your Sublevel is inside your Mod’s folder, by searching for its name in the Content Browser and moving it to your Mod’s folder.
10. Now, in the Levels window, make sure your Sublevel is the current level being worked on by right clicking it and selecting ‘Make Current’. This will be confirmed by the name appearing in blue.
11. It’s now time to add assets to this Sublevel, so grab any asset you want and drop them in your level. For the purposes of this guide, we have added some Goblins and a Leaping Toadstool for example.
12. These can be found by searching the Content Browser with ‘BP_Goblin_Assassin’ and ‘BP_LeapingToadstool’.
13. Press the ‘Save Current’ button on top of the Viewer.
Triggering this sublevel during a quest
Now that your Sublevel has been created, create a Quest that will make it so the elements included in the Sublevel spawn in.
- Open Windows>Quest Editor.
- Click the ‘New Quest’ button.
- On the first step, add an ‘Activate Quest’ task so that the Quest appears on the player’s HUD and in the 'Quests' menu.
- Create a new step by right clicking the first step and selecting ‘New Step Below’.
- Add a ‘Load Quest Sublevel’ task.
- In the Sublevel field, search for the name of your Sublevel and click it.
- In the World ID field, select ‘Overland’.
- Click the ‘Save’ button in the Quest Editor.
- We can then add other steps to this Quest, either before or after the tasks we created here. For example, we could add a ‘Kills’ task to ask the player to kill the Goblin Assassin that spawned, or add a ‘Player Inventory’ task, to check if the player has collected the Leaping Toadstool that spawned as part of the Sublevel.
1. But for now, if we just want to test our Sublvel, we can hit Play above the Viewer (or right click in the level we’re in and select 'Play From Here'). The Quest should activate automatically when playing in Editor and the elements contained in our Sublevel should spawn.
Note that if the last step of a Quest involving a Sublevel asks to kill an enemy, the Quest will end at the same time as the enemy dies, and since Sublevels despawn after a Quest is over, this will likely cause unwanted results. It is advisable to add a delay task at the end of your Quest for this reason.
How To: Create a Modded Dungeon
Dungeons are levels that can be added separate of the Overland and can be loaded behind a loading screen to transport the player to another playable map area. Dungeon entrances can be added to the Overland without requiring heavy modification to the existing open world and open up new areas for the player to explore.
Create New Mod Using The Dungeon Mod Template
Use the “Create Mod” button on the toolbar to open the Mod creation wizard. Select the dungeon template, enter a name, and hit the “Create Mod” button. This will create copies of all the files required to create dungeon in a new mod plugin.
Dungeon Data
The datatable that is created contains an entry already set up to load the template dungeon level. Other data, such as the dungeon type and requirements can be set here.
- DungeonLevel: Should point to the new level to load when interacting with the dungeon entrance.
- DungeonType:Used to determine the visuals for the entrance.
- Castle A
- Castle B
- Cairn A
- Cairn B
- Cairn C
- Cavern
- Cavern Spider
- Cavern Dragon
- Cavern Goblin
- Pensieve
- Special
- Swimming
- HM Cart
- Default
- DungeonExitLoadingString: Localized string name to display on exit interactive.
- DungeonSecondExitLoadingString: Localized string name to display on second exit interactive.
- MissionLock: Whether this dungeon is locked until the specified mission has been completed.
- MissionStepLock: Whether this dungeon is locked until the specified step of the specified MissionLock has been completed
- OpenAfterMission: Used by BP_SimpleDungeonBlocker to be removed after the specified mission has been completed.
Adding a Dungeon Entrance to Overland
Open the Content/Levels/Overland/Overland.umap level.
Find the sublevel of the Overland where you would like to add the dungeon entrance. The overland is separated into multiple sections all with multiple levels.
Navigate to the Windows->Levels menu option. This will open a window displaying all of the sub-levels associated with the Overland. Locate the sub-level you would like to add the entrance to. Right click and select “Load”.
Optional: Locate and load the “Overland_Global_Sky” sub-level. This will add lighting to the viewport allowing you to see the loaded levels.
In the Place Actors window (Window->Place Actors) Search for BP_DungeonEntrance. Drag the actor into the level where you want the dungeon entrance to be located. The transform of the actor is where the player will spawn when exiting the dungeon.
Locate the “Dungeon Name” field and select your dungeon level name from the dropdown.
After the row has been selected for which level to load, hit the “Register Dungeon” button to make the appropriate entries in database.
Adding Basic NavMesh
In the editor, change the mode to Navigation Edit Mode.
Select all levels with gameplay geometry in them in the levels tab (which can be found in the “Window” menu if not already open), and click “Add Navmesh”.
Click on the “Add Navmesh related actors” section of the Navigation Edit tab and drag a “Navmesh Island Marker” into your playspace on a walkable surface.
Click “Select All” in the Navigation Edit tab.
Click “Build Navmeshes”.
This should create a yellow surface indicating the areas covered by the newly created Navmesh.
A more complete guide for navigation setup info can be found /wiki/spaces/PLD/pages/11044071.
Adding Basic Encounters
Place a Dynamic Object Volume where you want enemies to spawn.
The volume represents the area where the enemies will spawn. It can be adjusted to include a larger area.
You can adjust the “Trigger Distance” setting to change the distance the player needs to be from the volume before the enemies spawn. The “Cull Distance” setting controls the how far the player needs to be before the actors spawned by the volume are deleted.
To set the enemies that will be spawned by the volume, click on the plus next to the “Items to Spawn” setting and then choose “Enemy Definition” and set the enemy type you want to spawn. This will also add an entry to “Spawn Groups”.
To set how many of that enemy type will spawn, you can adjust the “Min Actor Count” and “Max Actor Count”.
Additional enemy types can be added by adding more entries to “Items to Spawn”.
When testing the encounter the first time in PIE, it may take some time for the enemies to load before they spawn.
Generating Navigation Data
First, follow the instructions in this guide to generate navmesh data for your dungeon.
After you have generated the navigation mesh open the console command window (~) and run
Map.BuildNavData
This will generate the navigation data file located in the mod’s /Data/MapData folder named MapNavData[MODNAME].uasset
Generating a Minimap Texture
To generate the minimap texture, make sure you’re dungeon map is loaded in Creator Kit and the navmesh has been generated properly. Then, open the console command window (~) and run
Map.BuildNavTexture 512
Where 512 is the desired resolution for the texture. This will generate a texture asset in the mod’s /Data/MapData/Textures folder named UI_T_Map_[MODNAME]_Reveal_D.uasset.
Localizing Dungeon Entrance Text
After creating a Dungeon, the text for the Dungeon Entrance will display as debug text. To display this text as intended we’ll use the Localization Text Editor.
The Localization Text Editor (LocDirect Text Editor) in the Creator Kit can be found at Windows > Localization Text Editor
Add the following text to the LocDirect Text Editor and select Apply Changes.
ID: The debug text currently displaying for the dungeon entrance. (i.e Sam_Dungeon_LCKS_DungeonMap)
Localization: The text you wish to display in game. (i.e. Sam’s Dungeon)
This will create a LocDirect.Ava-JSON file in your mod folder with the localized text.
Your localized dungeon entrance text will now appear in game as the shown in the LocDirect file.
Creating a Custom Dungeon Level
When creating a mod using the Dungeon Template it will create a dungeon template level that will be linked by default. To create a custom level for a mod we’ll do the following.
Create a new Dungeon Mod by selecting Create Mod > New Dungeon Mod > Create Mod. This will create two Data Tables that will link to the default Dungeon Template Level.
In the Maps folder for your dungeon mod create a new level or import an existing level.
Open the DungeonTable Data Table located in the Data folder in your Mod Plugin.
In the DungeonTable Data Table change the following fields:
- Row Name: Change this to the name of your custom level
- Dungeon Level: Change this to your new Dungeon Level
Note: It is important that the row name and the name of your dungeon level match exactly. This will control where the exits in your dungeons lead to.
Once you’ve finished Register your Dungeon Entrance again. More info can be found in the Adding a Dungeon Entrance to Overland section above.
Adding a Dungeon Exit to a Modded Dungeon
When creating a custom dungeon level, we’ll need to place an exit to allow the Player to return to the game. To do this we’ll use the BP_WorldTeleport actor. Drag and drop the BP_WorldTeleport actor into your Dungeon Level where you’d like the exit to be located. This can be found in the Place Actors Window or at Content / Gameplay / Blueprints / Triggers.
Note: The Interact Point is at the Origin Point of the Actor, so make sure this is positioned correctly
Once you’ve added the BP_WorldTeleport actor to your level the only setting you may need to change is if you have a second exit in your dungeon. Most of the data will be pulled from the DungeonTable Data Table in your mod.
- If using a Second Exit, Set This Is A Second EXIT if there are two Exits from the Dungeon and this instance is the Second Exit
- If using a Second Exit, and the Player can return to the Dungeon from the Second Exit;
- Add an additional Player Start Actor near that Dungeon Exit
- Set the Player Start Tagto the Dungeon Name _EXIT
- IE Herbology_Forgotten_Dungeon_EXIT
To change the Dungeon Exit location open the DungeonTable Data Table in your mods folder. Add the Region Text String for the desired exit location in the DungeonExitLoadingString field or the DungeonSecondExitLoadingString if it’s for the second exit.
You’ll now see the updated dungeon exit in your mod!
How To: Creating Rivers and Lakes
In order to create rivers and lakes you will need to have a valid Houdini license installed. To do this please visit https://wbg-avalanche.atlassian.net/wiki/x/3wImF
Creating a Landscape
- First you will want to create a level for your dungeon. How To: Create a Modded Dungeon
- Go the level editor toolbar and switch the mode to 'Landscape'.
- Landscape panel should appear on the left side. You can specify what settings you want for your landscape such as the material and size.
- When you are satisfied with the settings for the landscape. Click 'Create'.
- Under the “Sculpt” tab for the Landscape editor tool bar you can shape your landscape how you please.
Creating Lakes
Basics
- Go to the 'Place Actors' panel and drag out Lake Tool into the scene.
- You will see a large green plane. This is a visualizer for where the lake will be created.
- Click “Auto Setup“ and “Assign Landscapes“ for the tool to automatically pickup nearby landscapes and geometry.
- Important (Don’t skip) - After confirming where the lake will be placed; make sure the bake output directory is set to a folder within your mod. It will be set to /Game by default. It should look something like /YourMod/BakedLakes. This is where all the baked static meshes for the lake will be placed.
- Now toggle off “Placement Mode” and press “Bake Lake”. The lake and all of its components should appear in the world outliner.
- Remove tool when finished.
Creating Rivers
Basics
- Go to the 'Place Actors' panel and drag out River into the scene.
- You will see bright colored plane. This is a visual helper to place your river. Adjust the two end points of the segment to create the direction you want the river to flow. You will want to adjust the river points so that the river will point down stream. The plane will turn green when the river is flowing downstream.
- Click “Auto Setup“ for the tool to automatically pickup near by river chunks, landscapes, and geometry.
- To preview what the river will look like please go the Simulation Settings tab and toggle off ‘Placement Mode’. It will take a minute or two to preview the river.
- Important (Don’t skip) - When satisfied with the river results; make sure the bake output directory is set to a folder within your mod. It will be set to /Game by default. It should look something like /YourMod/BakedRivers.
- Now press “Bake River“. A River folder with some blueprints will now appear in your scene outliner. You will also see the river be split into chunks and the static meshes will be placed in the folder you specified in the previous step.
- When done making rivers, remove the tool from the scene.
Connecting Rivers
To connect rivers you will want to follow the same steps as before. The only difference is that you will want to roughly place the starting point of the river segment over an existing river chunk.
You can then double-check if any upstream/downstream rivers were found in the River setup tab.
If not, you can manually select the river chunks that the new river should connect to.
If set up properly you should see the two rivers seamlessly connect.
Connecting to Lakes
To connect rivers to lakes you will want to follow the same steps as creating a river. Depending if you want to connect a river to an upstream lake or a downstream lake you will want to roughly place the end points where the Lake Tool is located.
If the river is going to a downstream lake you will want to place the end point of the river slightly below the Lake Tool plane. If it was a river connecting to an upstream lake, the end point should be lightly above the Lake Tool plane.
Make sure to click “Auto Setup” for the river to automatically create the connection to the lake. Everything looks good when you see a dithering effect that connects the river and the lake plane.