Difference between pages "Type tree" and "How to create new level"

From Frozenbyte Wiki
(Difference between pages)
Jump to: navigation, search
(Created page with "= Type Tree = thumb|right|Type Tree *The Type Tree can be found from '''View → Type tree.''' **You may also use hotkeys '''CTRL+F3''' *The Type Tree...")
 
(Created page with "After you've opened the editor but before you've done anything else, you should read Editor basic controls. Once you've finished reading that, you should open the necessa...")
 
Line 1: Line 1:
= Type Tree =
+
After you've opened the editor but before you've done anything else, you should read [[Editor basic controls]].
[[File:type_tree.PNG|thumb|right|Type Tree]]
 
*The Type Tree can be found from '''View → Type tree.'''  
 
**You may also use hotkeys '''CTRL+F3'''
 
*The Type Tree contains '''every''' type available in the editor
 
*You can search the type tree using the '''search''' function located on top of the Type Tree window (if you know the name or part of the name of the type).
 
*By opening the '''Properties window''' (hotkey CTRL+P) you'll be able to open up every type's properties for learning about its features.
 
  
== AbstractCraftingWindow ==
+
Once you've finished reading that, you should open the necessary windows. These include (but are not limited to) ''Scene instances tree'', ''Type tree'', ''Object properties'' and ''Error list''. If you read the page mentioned above, you know how to open them and what's their main function.
  
[[File:abstract_crafting_window_2.PNG|400px]]
 
  
== AbstractFont ==
+
= Create a new level =
*All the available fonts in editor.
+
1. Create a new map from '''File > New''' (Ctrl+N)
  
[[File:abstract_font.PNG|400px]]
+
2. From your Types window, find and drag a '''RockCollisionHelper''' to the scene and set its '''ModelComponent''' property 'VisibleInGame' to true (check the box)
  
== AbstractItem ==
+
3. Drag an InvisibleCheckpointEntity on top of the '''RockCollisionHelper''' and set its property '''MissionStartCheckpoint''' boolean to true (check the box)
  
*'''AbstractItem''' Contains three subcategories, these are the items, that can be set as loots to lootable containers.
+
4. Add an '''AmbientLightEntity''' somewhere into the scene
**'''CraftingMaterial:''' All crafting materials (Shadwen).
 
**'''Recipe:''' All schematics for craftable items (Shadwen).
 
**'''Weapon:''' All weapons and distracting tools, including already crafted items and bombs (Shadwen).
 
  
[[File:abstract_item.PNG|400px]]
+
5. By pressing the play button (F5), you'll be able to start your level
  
== AbstractManagerInstance ==
+
Where to find everything is listed in Entities needed.
  
*'''AbstractManagerInstance''' contains all the different managers in editor.
+
= Saving =
**Managers help you to keep track on every entity/character/object/feature etc. set on your level.
+
Once you are happy with your changes save them by pressing '''Ctrl+S''' or '''File > Save Map'''.
**You may, for example check the the types and total amount of every guard existing on your level by opening GameGuardManager's properties (properties window hotkeys CTRL+P) and expanding the GuardUHs property.  
 
  
[[File:abstract_manager_instance.PNG|400px]]
+
Save the map into '''data/mission/missionname''' folder where the "missionname" is your mission name.
 +
Make sure that your level gets saved into "missionname" folder and the file name is "missionname.fbe".
  
== AbstractMaterial ==
+
Example: If you would like to do a mission: "mymission", save it into: data/mission/mymission/mymission.fbe
  
*'''AbstractMaterial''' section contains:
 
*GameMaterials
 
*PhysicsMaterials
 
  
[[File:abstract_material.PNG|400px]]
+
= Entities needed =
 +
* '''RockCollisionHelper''' (TypeRoot->InstanceBase->Entity->ObjectEntity->object->Helper->CollisionHelper->RockCollisionHelper)
 +
* '''CameraSystemPrefabEntity''' (TypeRoot->InstanceBase->Entity->PrefabEntity->CameraSystemPrefabEntity)
 +
** '''NOTE:''' When creating levels for Shadwen, the CameraEntities are set up automatically!
 +
* '''InvisibleCheckpointEntity''' (TypeRoot->InstanceBase->Entity->GameplayEntity->CheckpointEntity->InvisibleCheckpointEntity)
 +
* '''AmbientLightEntity''' (TypeRoot->InstanceBase->Entity->LightEntity->AmbientLightEntity)
  
== AbstractNavigationMeshType ==
+
= Layers and Settings =
 +
== Layers ==
 +
The editor has different layers in the same way as e.g. Photoshop. It's entirely possible to use only one layer for every object in the level, and this might not be a problem in small test levels. When creating a more complex level however, it's crucial to use the correct layer for each object in the scene to avoid confusion.
  
*All the NavigationMesh types in editor.
+
In this simple level we have only four objects, but to emphasize the good practice, each one of them goes into a separate layer. '''RockCollisionHelper''' should be put into the collision layer (layer 2), '''CameraSystemPrefabEntity''' to the camera layer (layer 4), '''InvisibleCheckpointEntity''' to e.g. respawn layer (layer 5) and '''AmbientLightEntity''' to the  default layer (layer 1).
  
[[File:abstract_nav_mesh.PNG|400px]]
+
You can choose which layer you want the object to be in by either:
 +
* choosing the correct layer from the layer toolbar ([[File:Layers.png]]) before adding the object from the Type tree or by
 +
* going to the properties of the object that you've added to the scene and choosing the correct layer from there with the drop-down list next to "Layer" property.
  
== AbstractParticleType ==
 
  
*All the different particle types in editor.
+
[[File:Layerdropdownlist.png]]
[[File:abstract_particle.PNG|400px]]
 
  
== AbstractSounds ==
 
  
[[File:abstract_sound_all.PNG|400px]]
+
== Settings ==
  
== BaseWidget ==
+
Once you've added all the objects to the correct layers, there're some settings that need to be changed in the properties of the objects. Since we're not using any textures on this map, the player character seems to be running on air, unless the collision helper is visible. Making the '''RockCollisionHelper''' visible to the player can be done from the '''ModelComponent''' property of the '''RockCollisionHelper'''. Find the property "VisibleInGame" and set it to True (tick the box).
 +
[[File:ModelComponent.png|thumb|Setting the '''RockCollisionHelper''' as visible to the player]]
  
[[File:base_widget.PNG|400px]]
+
You should also scale the collision helper so it's large enough to run around. The scale tool (keyboard shortcut: 3) will help you with that.
  
== ComponentBase ==
+
After you're satisfied with the scale and placement of the '''RockCollisionHelper''', you need to change the '''InvisibleCheckpointEntity''' to be the starting checkpoint of the level. '''Each level always needs one, and only one''' "MissionStartCheckpoint". You can make the checkpoint to be the starting checkpoint of the level by going to the properties, opening '''TrineCheckpointComponent''' ('''NOTE:''' In later versions of the editor e.g. Shadwen Editor, the the component name has been changed to '''GameCheckpointComponent''') and setting "MissionStartCheckpoint" to true (again tick the box).
 +
[[File:Missionstartcheckpoint.png|thumb|Setting the '''InvisibleCheckpointEntity''' as the starting checkpoint of the mission]]
  
*If you wish to see all the available components, they can be found under '''ComponentBase'''.
+
When these settings are changed, you can test play the level by either:
**Components are the (invisible) parts you add to objects etc. on your level.
+
* pressing [[File:Play_green.png]] to start from the checkpoint you chose as the "MissionStartCheckpoint" or by
**Components enable intended abilities/features.  
+
* pressing [[File:Play_blue.png]] to start from the camera position.
**In other words, components can't be physically dragged to the level from the Type Tree.
 
**You can check the component's features by opening their properties (CTRL+P).
 
  
[[File:component_base_1.PNG|400px]]
+
You can return to the editor view by pressing [[File:stop.png]].
  
[[File:component_base_2.PNG|400px]]
+
After this, you can add more objects to your level from the Type tree or by copying existing objects (only '''RockCollisionHelper''' at this point, because you shouldn't duplicate the other objects in this level unless you know what you're doing). You can also change the color and intensity of the ambient light from it's properties.
  
== InstanceBase (Entities) ==
+
== Instant Kill Area ==
*Under '''InstanceBase -> Entity''' you'll be able to find all the '''entities''' and '''objects''' (CollisionHelpers, Prefabs, art models, effects, Event entities, Checkpoint entities, Respawn points, Trigger areas etc.) that can be dragged to your level.
 
  
[[File:instance_base_full.PNG|400px]]
+
Adding Instant Kill Area under your level makes the player character mortal, when e.g. falling to a pit.  
  
== SceneBase ==
+
[[File:insta_kill_area.JPG|600px]]
 
 
[[File:scene_base.PNG|400px]]
 

Latest revision as of 11:07, 15 June 2018

After you've opened the editor but before you've done anything else, you should read Editor basic controls.

Once you've finished reading that, you should open the necessary windows. These include (but are not limited to) Scene instances tree, Type tree, Object properties and Error list. If you read the page mentioned above, you know how to open them and what's their main function.


Create a new level

1. Create a new map from File > New (Ctrl+N)

2. From your Types window, find and drag a RockCollisionHelper to the scene and set its ModelComponent property 'VisibleInGame' to true (check the box)

3. Drag an InvisibleCheckpointEntity on top of the RockCollisionHelper and set its property MissionStartCheckpoint boolean to true (check the box)

4. Add an AmbientLightEntity somewhere into the scene

5. By pressing the play button (F5), you'll be able to start your level

Where to find everything is listed in Entities needed.

Saving

Once you are happy with your changes save them by pressing Ctrl+S or File > Save Map.

Save the map into data/mission/missionname folder where the "missionname" is your mission name. Make sure that your level gets saved into "missionname" folder and the file name is "missionname.fbe".

Example: If you would like to do a mission: "mymission", save it into: data/mission/mymission/mymission.fbe


Entities needed

  • RockCollisionHelper (TypeRoot->InstanceBase->Entity->ObjectEntity->object->Helper->CollisionHelper->RockCollisionHelper)
  • CameraSystemPrefabEntity (TypeRoot->InstanceBase->Entity->PrefabEntity->CameraSystemPrefabEntity)
    • NOTE: When creating levels for Shadwen, the CameraEntities are set up automatically!
  • InvisibleCheckpointEntity (TypeRoot->InstanceBase->Entity->GameplayEntity->CheckpointEntity->InvisibleCheckpointEntity)
  • AmbientLightEntity (TypeRoot->InstanceBase->Entity->LightEntity->AmbientLightEntity)

Layers and Settings

Layers

The editor has different layers in the same way as e.g. Photoshop. It's entirely possible to use only one layer for every object in the level, and this might not be a problem in small test levels. When creating a more complex level however, it's crucial to use the correct layer for each object in the scene to avoid confusion.

In this simple level we have only four objects, but to emphasize the good practice, each one of them goes into a separate layer. RockCollisionHelper should be put into the collision layer (layer 2), CameraSystemPrefabEntity to the camera layer (layer 4), InvisibleCheckpointEntity to e.g. respawn layer (layer 5) and AmbientLightEntity to the default layer (layer 1).

You can choose which layer you want the object to be in by either:

  • choosing the correct layer from the layer toolbar (Layers.png) before adding the object from the Type tree or by
  • going to the properties of the object that you've added to the scene and choosing the correct layer from there with the drop-down list next to "Layer" property.


Layerdropdownlist.png


Settings

Once you've added all the objects to the correct layers, there're some settings that need to be changed in the properties of the objects. Since we're not using any textures on this map, the player character seems to be running on air, unless the collision helper is visible. Making the RockCollisionHelper visible to the player can be done from the ModelComponent property of the RockCollisionHelper. Find the property "VisibleInGame" and set it to True (tick the box).

Setting the RockCollisionHelper as visible to the player

You should also scale the collision helper so it's large enough to run around. The scale tool (keyboard shortcut: 3) will help you with that.

After you're satisfied with the scale and placement of the RockCollisionHelper, you need to change the InvisibleCheckpointEntity to be the starting checkpoint of the level. Each level always needs one, and only one "MissionStartCheckpoint". You can make the checkpoint to be the starting checkpoint of the level by going to the properties, opening TrineCheckpointComponent (NOTE: In later versions of the editor e.g. Shadwen Editor, the the component name has been changed to GameCheckpointComponent) and setting "MissionStartCheckpoint" to true (again tick the box).

Setting the InvisibleCheckpointEntity as the starting checkpoint of the mission

When these settings are changed, you can test play the level by either:

  • pressing Play green.png to start from the checkpoint you chose as the "MissionStartCheckpoint" or by
  • pressing Play blue.png to start from the camera position.

You can return to the editor view by pressing Stop.png.

After this, you can add more objects to your level from the Type tree or by copying existing objects (only RockCollisionHelper at this point, because you shouldn't duplicate the other objects in this level unless you know what you're doing). You can also change the color and intensity of the ambient light from it's properties.

Instant Kill Area

Adding Instant Kill Area under your level makes the player character mortal, when e.g. falling to a pit.

Insta kill area.JPG