Difference between revisions of "Bethesda Tutorial Dungeon Wrapup"

m
no edit summary
imported>Nemesis
imported>Zectriny
m
 
(9 intermediate revisions by 4 users not shown)
Line 17: Line 17:
* How can '''[[Radiant_Story|Radiant Story]]''' use our dungeon?
* How can '''[[Radiant_Story|Radiant Story]]''' use our dungeon?
* How to create and assign a '''Location''' to a Cell
* How to create and assign a '''Location''' to a Cell
* Creating and configuring a '''Encounter Zone'''
* Creating and configuring an '''Encounter Zone'''
* Setting the Music and audio space for a cell
* Setting the Music and audio space for a cell


Line 23: Line 23:
[[image:LocRefTypes.jpg|right|400px|thumb|<b>Fig. 10.1:</b> LocRefTypes in the ObjectWindow.]]
[[image:LocRefTypes.jpg|right|400px|thumb|<b>Fig. 10.1:</b> LocRefTypes in the ObjectWindow.]]


A Location Reference Type or '''LocRefType''', as we more commonly refer to it, is a special type of flag that you can place on a Reference in your level that [[Radiant_Story|Radiant Story (our procedural quest generation system)]] uses to find the right objects. Essentially it lets you define for the quest system which actor is the "Boss" or which would be a good "Container" to place a quest item in, for example.
A [[Location Ref Type|Location Reference Type or '''LocRefType''']], as we more commonly refer to it, is a special type of flag that you can place on a Reference in your level that [[Radiant_Story|Radiant Story (our procedural quest generation system)]] uses to find the right objects. Essentially it lets you define for the quest system which actor is the "Boss" or which would be a good "Container" to place a quest item in, for example.


We can find the whole list of LocRefTypes under '''"WorldData > Location Ref Type"''' in the Editor Window (''Fig. 10.1''). Beyond the most advanced modding, you probably won't need to ever add new LocRefTypes.
We can find the whole list of LocRefTypes under '''"WorldData > Location Ref Type"''' in the [[Object Window]] (''Fig. 10.1''). Beyond the most advanced modding, you probably won't need to ever add new LocRefTypes.


As you can see, there are quite a lot of different LocRefTypes but for our purposes we are only interested in a much, much smaller list that we will need to place in our level.  
As you can see, there are quite a lot of different LocRefTypes but for our purposes we are only interested in a much, much smaller list that we will need to place in our level.  
Line 40: Line 40:
*'''LocationEdgeMarker''' - Set on an XMarkerHeading at the far edge of the exterior cell.
*'''LocationEdgeMarker''' - Set on an XMarkerHeading at the far edge of the exterior cell.


{|style="border-collapse: separate; border-spacing: 0; border-width: 1px; border-style: solid; border-color: #000; padding: 0"
{{ProTip|You don't have to place all of the LocRefTypes listed in your dungeon if they don't make sense for the area. For example it doesn't always make sense for Draugr to have a captive so that might not be needed.}}
|-
|style="border-style: solid; border-width: 0"|[[Image:Protip.jpg|48px]]
|style="border-style: solid; border-width: 0"|You don't have to place all of the LocRefTypes listed in your dungeon if they don't make sense for the area. For example it doesn't always make sense for Draugr to have a captive so that might not be needed.
|}


Let's start by setting the Boss, which is one of the most commonly used LocRefTypes. Go back to the boss we placed in the Tutorial on '''Ambushes''' and open up the Object Info by double clicking on the LvlDraugrAmbushBossMale or LvlDraugrAmbushMelee1HMale. Go to the second to last tab, "Location Ref Type", and set the drop down to say "Boss" then hit okay.
Let's start by setting the Boss, which is one of the most commonly used LocRefTypes. Go back to the boss we placed in the Tutorial on '''Ambushes''' and open up the Object Info by double clicking on the LvlDraugrAmbushBossMale or LvlDraugrAmbushMelee1HMale. Go to the second to last tab, "Location Ref Type", and set the drop down to say "Boss" then hit okay.
Line 50: Line 46:
It's as simple as that. Notice that a small rectangular box has now appeared hovering above our Actor Marker. This our indicator that this object is flagged as a LocRefType and is very helpful for remembering which objects not to delete. Due to the large amount of unique LocRefTypes, there is not a simple color scheme, but you'll get a feel for ones you place in your dungeons frequently.
It's as simple as that. Notice that a small rectangular box has now appeared hovering above our Actor Marker. This our indicator that this object is flagged as a LocRefType and is very helpful for remembering which objects not to delete. Due to the large amount of unique LocRefTypes, there is not a simple color scheme, but you'll get a feel for ones you place in your dungeons frequently.


Next, on that platform, let's set the '''BossChest''' LocRefType to the '''TreasDrugrChestBoss''' in the same way (if you have a normal TreasDrugrChest, you can replace with TreasDrugrChestBoss, but be careful with the NavMesh). If a Radiant Quest wants to place a special treasure in the Boss's Chest, this is where it will go. Let's place an Xmarker on the ground next to that chest (filter *All for XMarker); this we will set to BossTreasureMarker. If a Radiant Quest wants to place an object near the Boss, but not in a container, this is where it will be placed. XMarkers are invisible and have no collision in game. They are used for positional data only.
Next, on that platform, let's set the '''BossContainer''' LocRefType to the '''TreasDrugrChestBoss''' in the same way (if you have a normal TreasDrugrChest, you can replace with TreasDrugrChestBoss, but be careful with the NavMesh). If a Radiant Quest wants to place a special treasure in the Boss's Chest, this is where it will go. Let's place an Xmarker on the ground next to that chest (filter *All for XMarker); this we will set to BossTreasureMarker. If a Radiant Quest wants to place an object near the Boss, but not in a container, this is where it will be placed. XMarkers are invisible and have no collision in game. They are used for positional data only.


<gallery>
<gallery>
image:LocRefTypeBoss.jpg|<b>Fig. 10.2:</b> Setting LvlDraugrAmbushBossMale to the Boss LocRefType.
image:LocRefTypeBoss.jpg|<b>Fig. 10.2:</b> Setting LvlDraugrAmbushBossMale to the Boss LocRefType.
image:LocRefTypeBoss2.jpg|<b>Fig. 10.3:</b> Red Boss LocRefType marker over the Actor Marker.
image:LocRefTypeBoss2.jpg|<b>Fig. 10.3:</b> Red Boss LocRefType marker over the Actor Marker.
image:LocRefTypeBoss3.jpg|<b>Fig. 10.4:</b> BossChest and BossTreasureMarker LocRefTypes.
image:LocRefTypeBoss3.jpg|<b>Fig. 10.4:</b> BossContainer and BossTreasureMarker LocRefTypes.
</gallery>
</gallery>


Next we will place an XMarkerHeading for the '''LocationCenterMarker''' between the entrance and the boss. A good spot for this in Lokir's Tomb would be the second room. Make sure it is positioned on the generated Navmesh and set the LocRefType as '''LocationCenterMarker'''. An XMarkerHeading is different from a regular XMarker in that it also stores rotational data.  
Next we will place an XMarkerHeading for the '''LocationCenterMarker''' between the entrance and the boss. A good spot for this in Lokir's Tomb would be the second room. Make sure it is positioned on the generated Navmesh and set the LocRefType as '''LocationCenterMarker'''. An XMarkerHeading is different from a regular XMarker in that it also stores rotational data.  


{|style="border-collapse: separate; border-spacing: 0; border-width: 1px; border-style: solid; border-color: #000; padding: 0"
{{ProTip|XMarkerHeadings are often used when you want to specify not only the position, but also the direction something should be facing, such as an actor. They are commonly used by LocRefTypes, [[Bethesda_Tutorial_Encounters#Linked-Refs_and_Patrols|Patrol Paths]], and for positioning actors in [[Scenes]].}}
|-
|style="border-style: solid; border-width: 0"|[[Image:Protip.jpg|48px]]
|style="border-style: solid; border-width: 0"|XMarkerHeadings are often used when you want to specify not only the position, but also the direction something should be facing, such as an actor. They are commonly used by LocRefTypes, [[Patrol Paths]], and for positioning actors in [[Scenes]].
|}


We'll run through the rest of the interior LocRefTypes quickly. Set three Containers to the '''Container''' LocRefType; these can be anything from urns to chests, from dressers to barrels (''Fig. 10.5''). Next, lets place an XMarkerHeading down with the necromancer, making sure it is on the navmesh, and set it to the '''CaptiveMarker''' LocRefType (''Fig. 10.6''). Place another XMarkerHeading in the entrance room and mark it as '''InsideEntrance''' (''Fig. 10.3'').
We'll run through the rest of the interior LocRefTypes quickly. Set three Containers to the '''Container''' LocRefType; these can be anything from urns to chests, from dressers to barrels (''Fig. 10.5''). Next, lets place an XMarkerHeading down with the necromancer, making sure it is on the navmesh, and set it to the '''CaptiveMarker''' LocRefType (''Fig. 10.6''). Place another XMarkerHeading in the entrance room and mark it as '''InsideEntranceMarker''' (''Fig. 10.7'').


<gallery>
<gallery>
Line 74: Line 66:
</gallery>
</gallery>


Now that you've placed those let's move to the exterior. The quickest way to do this is to double click on the '''Yellow Door Marker''' that we placed in the tutorial on [[Bethesda Tutorial World Hookup]]. This will bring up a dialogue box asking if we wish to move the the connected door.
Now that you've placed those let's move to the exterior. The quickest way to do this is to double click on the '''Yellow Door Marker''' that we placed in the tutorial on [[Bethesda Tutorial World Hookup]]. This will bring up a dialogue box asking if we wish to move to the connected door on the other side of the teleport.


Now that we are in the exterior, make sure the Render Window is selected and press '''B''' to make sure that [[Cell Borders]] are displayed. We should be in the cell we renamed "LokirsTombExterior" in the previous tutorial.
Now that we are in the exterior, make sure the Render Window is selected and press '''B''' to make sure that [[Cell Borders]] are displayed. We should be in the cell we renamed "LokirsTombExterior" in the previous tutorial.
Line 98: Line 90:
On the Right side of the window you will see three tabs marked ''Location Ref Types, Cells, and Actors''. Once we have assigned a location to a cell, these will all be propagated automatically.
On the Right side of the window you will see three tabs marked ''Location Ref Types, Cells, and Actors''. Once we have assigned a location to a cell, these will all be propagated automatically.


{|style="border-collapse: separate; border-spacing: 0; border-width: 1px; border-style: solid; border-color: #000; padding: 0"
{{InDepth|'''An Example of how Locations are used by Radiant Story'''
|-
|style="border-style: solid; border-width: 0"|[[Image:InDepth.jpg|48px]]
|style="border-style: solid; border-width: 0"|'''An Example of how Locations are used by Radiant Story'''
*NPC ''Bob'' wants to give you a quest to save his wife ''Jane'' from bandits and to kill their leader.
*NPC ''Bob'' wants to give you a quest to save his wife ''Jane'' from bandits and to kill their leader.
*Radiant Quest finds a Location in the current Hold Location that has a Boss LocRefType and a CaptiveMarker LocRefType with the ''LocTypeBanditCamp'' Keyword
*Radiant Quest finds a Location in the current Hold Location that has a Boss LocRefType and a CaptiveMarker LocRefType with the ''LocTypeBanditCamp'' Keyword
*''Jane'' is moved to the XMarkerHeading with the '''CaptiveMarker''' LocRefType in this Location
*''Jane'' is moved to the XMarkerHeading with the '''CaptiveMarker''' LocRefType in this Location
*Quest targets are placed for ''Jane'' and the actor with the '''Boss''' LocRefType in this Location
*Quest targets are placed for ''Jane'' and the actor with the '''Boss''' LocRefType in this Location}}
|}


We have all our Location RefTypes and are currently in the exterior cell, so let's go ahead and create a Location for Lokir's Tomb. With Location Selected in the Object Window Right-Click in the list of locations and choose New to create a New Location.
We have all our Location RefTypes and are currently in the exterior cell, so let's go ahead and create a Location for Lokir's Tomb. With Location Selected in the Object Window Right-Click in the list of locations and choose New to create a New Location.
Line 114: Line 102:
# Set the Parent Location to "WhiterunHoldLocation" (where our exterior cell is)
# Set the Parent Location to "WhiterunHoldLocation" (where our exterior cell is)
# Set the World Location Marker Ref to our Map Marker (choose in the Render Window)
# Set the World Location Marker Ref to our Map Marker (choose in the Render Window)
# Right Click and '''Add''' the following Keywords
# Right Click, then click '''Add''', then add the following Keywords
## '''LocSetNordicRuin''' - the main architecture here
## '''LocSetNordicRuin''' - the main architecture here
## '''LocTypeDraugrCrypt''' - what type of enemy is the boss
## '''LocTypeDraugrCrypt''' - what type of enemy is the boss
Line 121: Line 109:
# Now hit "Ok"
# Now hit "Ok"


{|style="border-collapse: separate; border-spacing: 0; border-width: 1px; border-style: solid; border-color: #000; padding: 0"
{{ProTip|Smaller dungeons such as caves will often have all the animals marked with the "Boss" LocRefType. This way the cave is only cleared when all the animals are dead.}}
|-
|style="border-style: solid; border-width: 0"|[[Image:Protip.jpg|48px]]
|style="border-style: solid; border-width: 0"|Smaller dungeons such as caves will often have all the animals marked with the "Boss" LocRefType. This way the cave is only cleared when all the animals are dead.
|}


<gallery>
<gallery>
Line 137: Line 121:
=Encounter Zones & Level scaling=
=Encounter Zones & Level scaling=


An Encounter Zone, or EncZone as it is often written, is used to set the level scaling for an area. They can be found under '''WorldData>Encounter Zone''' in the object window. Let's have a look at the EncZone for Bleak Falls Barrow.
An [[Encounter Zone|Encounter Zone, or EncZone]] as it is often written, is used to set the level scaling for an area. They can be found under '''WorldData > Encounter Zone''' in the object window. Let's have a look at the EncZone for Bleak Falls Barrow.


[[image:BFBZone.jpg|left|thumb|A view of the BleakFallsBarrowZone.]]
[[image:BFBZone.jpg|left|thumb|A view of the BleakFallsBarrowZone.]]
Line 146: Line 130:
*'''Max Level''' - The Maximum Level for this area (only needed if you want to cap how difficult the area is)
*'''Max Level''' - The Maximum Level for this area (only needed if you want to cap how difficult the area is)
*'''Never Resets''' - Sets this area not to reset after the 30 day reset period.
*'''Never Resets''' - Sets this area not to reset after the 30 day reset period.
*'''Disable Combat Boundary''' -  
*'''Disable Combat Boundary''' - Actors in combat with the player only follow the player through load doors that lead to the same encounter zone. With this box checked, actors in combat with the player will ignore this rule and follow the player into a different encounter zone.
*'''Location''' - The location this EncZone is assigned to (see the '''Location''' Section of this tutorial)
*'''Location''' - The location this EncZone is assigned to (see the '''Location''' Section of this tutorial)
*'''Analyze Loot''' - Once the area is assigned this EncZone, this can be used to check how much loot you could pull at any given level
*'''Analyze Loot''' - Once the area is assigned this EncZone, this can be used to check how much loot you could pull at any given level
Line 157: Line 141:
[[image:EncZoneLokirsTomb.jpg|center|thumb|A view of the new LokirsTombZone.]]
[[image:EncZoneLokirsTomb.jpg|center|thumb|A view of the new LokirsTombZone.]]


{|style="border-collapse: separate; border-spacing: 0; border-width: 1px; border-style: solid; border-color: #000; padding: 0"
{{ProTip|The difficulty of an area is still subject to the LvlActors used there. Even if you set Min Level of a Dwarven dungeon to "0", the lowest level creature in the LvlActor is still around level 12.
|-
|style="border-style: solid; border-width: 0"|[[Image:Protip.jpg|48px]]
|style="border-style: solid; border-width: 0"|The difficulty of an area is still subject to the LvlActors used there. Even if you set Min Level of a Dwarven dungeon to "0", the lowest level creature in the LvlActor is still around level 12.


Likewise, the Max Level is often left to the default determined by the LvlActors present in the area.
Likewise, the Max Level is often left to the default determined by the LvlActors present in the area.}}
|}


=Hooking up the Location and Encounter Zone=
=Hooking up the Location and Encounter Zone=


We've finished creating our Location and EncZone, but so far they aren't attached to anything. These two pieces of data are set on the Cells for our area, through the Cell Properties Window. This can be found under '''World>Cells...''' in the top bar. However, the easier way of using it is to '''Right-Click''' on the Cell you want to set the properties for and select '''Edit''' from the options that appear. This is the same Window used during the [[previous tutorial]] to set the name of our cell.
We've finished creating our Location and EncZone, but so far they aren't attached to anything. These two pieces of data are set on the Cells for our area, through the Cell Properties Window. This can be found under '''World>Cells...''' in the top bar. However, the easier way of using it is to '''Right-Click''' on the Cell you want to set the properties for and select '''Edit''' from the options that appear. This is the same Window used during the [[Bethesda_Tutorial_World_Hookup|previous tutorial]] to set the name of our cell.


[[image:EditCell.jpg|center|thumb|Finding the Edit option in the Cell View.]]
[[image:EditCell.jpg|center|thumb|Finding the Edit option in the Cell View.]]
Line 199: Line 179:




{{Template:Tutorial_Bottom_Bar
{{Tutorial_Bottom_Bar
|Prev=Bethesda_Tutorial_World_Hookup
|Prev=Bethesda_Tutorial_World_Hookup
|Next=:Category:Tutorials
|Next=:Category:Tutorials
}}
}}
Anonymous user