The bestiary system lets the player learn about the status information of enemies upon fighting them.

The learned status information can be displayed in menu screens to browse through the enemies the player’s fought so far. You can define when to learn which information, e.g. learn about status values upon defeating an enemy and learn an attack attribute when attacking with the individual attack attributes. Also, items and abilities can scan their targets and create a full entry in the bestiary with all status information.

In this tutorial we’ll set up the bestiary, create a menu screen and add a new item (with battle event for animation) to scan enemies.

Bestiary settings

First, let’s set up the bestiary settings – open the ORK Framework editor and navigate to Game > Game Settings. Change the following settings in the Bestiary Settings.

  • Use Bestiary
    Enable this setting.
    When this is enabled, bestiary information will be collected while fighting enemies.
  • Level/Class Separation
    Disable this setting.
    If enabled, the bestiary entries for encountered enemies would be made for each level/class combination that has been encountered.
    E.g. fighting an Evil Pants with level 1 and level 5 would create two different entries.

Status Value Settings

These settings define how an enemy’s status values will be learned and unknown values displayed in menu screens.

  • Status Value
    Select Death.
    The status values will be learned when the enemy is killed.
  • No Value Bars
    Disable this setting.
    If enabled, value bars displaying status values wouldn’t be displayed when the status value is not yet known.
  • Unknown Value Text
    Set to: ???
    Unknown values will be replaced by this text.

Attack Attribute Settings

These settings define how an enemy’s attack attributes will be learned and unknown values displayed in menu screens.

  • Attack Attributes
    Select Attack.
    The attack attribute values will be learned when attacking an enemy with the individual attack attributes.
    E.g. attacking with a Fire element attack will learn the enemy’s Fire element attribute value.
  • Unknown Value Text
    Set to: ???

Defence Attribute Settings

These settings define how an enemy’s defence attributes (values and actual attributes) will be learned and unknown values/attributes displayed in menu screens.

  • Defence Attributes
    Select Attacked By.
    The defence attribute values will be learned when the enemy attacks a player combatant with the individual defence attributes.
    E.g. if the attacked player is size Medium, the enemy’s Medium size attribute value will be learned.
  • Defence Attribute IDs
    Select Encounter.
    The defence attributes (i.e. the actual attributes and not the values) will be learned upon encountering an enemy in battle.
  • Unknown Value Text
    Set to: ???
  • Unknown Attribute ID Text
    Set to: ???

That’s it for the bestiary settings.

Using HUDs for status information display

Before creating the menu screen, we’ll create HUDs for the actual status information display. Menu screens and the Bestiary Dialogue (an event step to display bestiary information) can use HUDs as templates for displaying information – this saves us from doing the same settings multiple times.

Since we already created a series of status HUD elements to display our player’s status in the Status menu screen, we can make a HUD out of them and use them in our menu screens. Navigate to Menus > Menu Screens and select the Status menu screen.

Click on Create HUD in Combatant Page 0 and Combatant Page 1. This will automatically create a HUD template out of the elements added to the combatant pages and select it as template. After that, navigate to Menus > HUDs to change their names.

HUD 2: Status Template

Change the following settings.

  • Name
    Set to Status Template.

Now, we’ll also add new information of the displayed combatant’s defence attributes (i.e. the actual attributes, not the attribute values – like the player being race Human and size Medium).

Click on Add Status Element to add a new element.

Status Element 4

  • Type
    Select Defence Attribute ID.
  • Combatant Origin
    Select User.
  • List Attributes
    Enable this setting.
  • Offset
    Set to X=0, Y=30.
  • Text
    Set to: %an
    This will display the defence attributes name (e.g. Race).
  • Position
    Set to X=460, Y=50.
  • Width
    Set to 400
    .
  • Is Percent (Width)
    Disable this setting.
  • Height
    Set to 400.
  • Is Percent (Height)
    Disable this setting.

Status Element 5

Click on Copy on the last element and change the following settings.

  • Text
    Set to: %n
    This will display the sub-attributes name (e.g. Medium).
  • Text Alignment
    Select Right.

That’s it for this HUD template.

HUD 3: Attribute Template

Change the following setting.

  • Name
    Set to Attribute Template.

That’s it for the templates.

Bestiary requirement

As a last step before adding a new menu screen, we’ll add a requirement to hide the bestiary menu while no information has been added (e.g. at the start of the game). Navigate to Game > Requirements and add a new requirement. Change the following settings.

  • Name
    Set to Bestiary.

General Requirements

  • Has Bestiary Entries
    Enable this setting.

That’s it for the requirement.

Menu screen

Finally, it’s time for the menu screen. Navigate to Menus > Menu Screens and add a new menu screen. Change the following setting.

  • Name
    Set to Bestiary.

Click on Add Menu Part and next on Bestiary (Area) to add an area bestiary menu part. The area bestiary will separate the different combatants by areas and area types they’ve been encountered in. If an enemy has been fought in more than one area, it can be found in all areas it has been encountered.

Type Box Settings

These settings handle how the area types are displayed.

  • Display Type > Area
    Select One.
    Area types and areas will be displayed in the same GUI box.

Area Box Settings

These settings handle how the areas are displayed.

  • Display Area > Bestiary
    Select One.
    Also the bestiary entries will be displayed in the same box.

Bestiary Box Settings

These settings handle how the bestiary entry list is displayed.

  • Display Bestiary > Entry
    Select Sequence.
    The entry will be displayed when a bestiary entry has actively been selected.
  • Bestiary Box
    Select Menu Small.

Entry Box Settings

These settings handle how the selected entry is displayed. You can add multiple pages to display different information.

  • Entry Box
    Select Menu Big.
  • Accept Next Page
    Enable this setting.
    The Accept input key can be used to display the next page.

The first page should already be added – change the settings of Entry Page 0.

  • Use HUD
    Enable this setting.
  • HUD
    Select Status Template.

Again, click on Add Page.

  • Use HUD
    Enable this setting.
  • HUD
    Select Attribute Template.

That’s it for the new menu screen – now we need to add it to our Overview menu.

Menu Screen 0: Overview

Select the Overview menu screen and click on Copy in the Menu Item 4 settings (quest log) – change the following settings.

Menu Item 5 (copy from Quest Log button)

  • Menu Screen
    Select Bestiary.
  • Use Requirement
    Enable this setting.
  • Requirement
    Select Bestiary.
  • Hide
    Enable this setting.
  • Name
    Set to: Bestiary
  • Description
    Set to: Show information about encountered enemies.

And that’s it for the bestiary menu – click on Save Settings to save our changes so far.

As of now, the bestiary would already collect information about encountered enemies and display them in the menu screen, so you could already test it here. Since we also want to add a new item to scan enemies for complete status information, we’ll create a new battle event next.

Scan battle event

Our scan battle event will display the bestiary entry of the target using the Bestiary Dialogue step. Navigate to Events and click on New Battle Event.

gametutorial_49_bestiary1

Calculate

Add > Battle > Action > Calculate

This step is needed first to actually use the item and scan the target, before displaying the new information.

Bestiary Dialogue

Add > Game > Bestiary > Bestiary Dialogue

This step will display a bestiary entry (like  to the menu screen’s Entry Box).

  • Use Object
    Enable this setting.
    We want to display information on the target, not a defined combatant.
  • Object
    Select Actor.
  • Actor
    Select Target.
  • GUI Box
    Select Menu Big.
  • Accept Next Page
    Enable this setting.

As it was in the menu screen, we’ll use two pages to display the information – the first is already added.

  • Use HUD
    Enable this setting.
  • HUD
    Select Status Template.

Again, click on Add Page.

  • Use HUD
    Enable this setting.
  • HUD
    Select Attribute Template.

And that’s it for the battle event – click on Save Event and save it as scan in Assets/Events/Battle/.

Scan item

Navigate to Inventory > Items and create a new item. Change the following settings.

  • Name
    Set to: Scan Scroll
  • Description
    Set to: Scans a targeted enemy.

Item Settings

  • Item Type
    Select Scrolls and Books.
  • Dropable
    Enable this setting.
  • Stealable
    Enable this setting.

Prefab Settings

  • Item Prefab
    Select Item Prefab (can be found in Assets/Tutorial Resources/Prefabs/Items/).

Price Settings

  • Value Type (Buy Price)
    Select Value.
  • Value (Buy Price)
    Set to 50.
  • Sellable
    Enable this setting.

Use Settings

  • Useable In
    Select Battle.
  • Scan Target
    Enable this setting.

Battle Animation

  • Animate Action
    Enable this setting.

The first battle event will be our use event we already created in previous tutorials.

  • Battle Event
    Select use.

Click on Add Animation to add another battle event.

  • Battle Event
    Select scan.

Target Settings

  • Target Type
    Select Enemy.
  • Target Range
    Select Single.

Use Cost

  • Consume
    Enable this setting.

That’s it for the item – to get it into our game, let’s add it to the shop.

Adding to the shop

Navigate to World > Shops and change the following settings in Convenience Store.

Items

Click on Add Item to add a new item to the shop.

  • Item
    Select Scan Scroll.

And that’s it – click on Save Settings.

Testing

Open the main menu scene (0 Main Menu) and hit play. Go to the shop and buy some Scan Scrolls before leaving town.

gametutorial_49_bestiary2

Before running into the first fight, the Bestiary menu isn’t available/displayed in the menu. After encountering the first enemy, the bestiary is available.

Don’t forget to try the Scan Scroll to learn all about an enemy!

And that’s it for now – the next lesson will cover adding a 2nd group member.