Research Trees

Research trees are used to learn new abilities, upgrade abilities or status values, create items and more.

Research trees are combatant-based, i.e. each combatant has their own research trees to use and learn/purchase new things.

While you can also learn abilities with ability development, give status value bonuses using status development or create items and equipment using the crafting recipes, research trees allows having all that in a single, unified system. Furthermore, research of individual content can be progressed over time – e.g. instead of immediately learning a new ability, it can take a defined amount of time (e.g. 30 minutes) until the ability is learned.

The player can view, start and stop/cancel research using menu screens with a Research menu part.

Research Types #

Research types are used to organize research trees by separating them into different types.

You’ll mainly use them to filter research trees in the editor and in-game menus (menu screens). Research types can be sub-types of other research types for a more detailed organization.

Research types are set up in Combatants > Research Types.

Research Trees #

A research tree contains different research items, each item represents a single thing that can be researched (e.g. learning an ability). Combatants have to learn a research tree to be able to research it’s items.

Research trees are set up in Combatants > Research Trees.

Base Settings #

Set up some basic settings of the research tree.

Research Limit #

The number of research items that can be researched at the same time can optionally be limited. This only limits items using a research duration.

The research limit can be defined for research items of the research tree or as a global limit (i.e. for all research trees of a combatant).

A research tree’s research limit is set to 3 as a global limit (i.e. for all research trees of the combatant).

There are already 2 research items being researched in other research trees, i.e. you can currently only research 1 research item in this tree.

A research tree’s research limit is set to 1 (not global limit).

Only 1 research item can be researched at the same time, other research trees are ignored for this count.

Schematics #

Researching can optionally start a schematic when starting, canceling or finishing research of a research item.

UI #

Define UI related settings.

Portraits #

Optionally define portraits for the research tree. The portraits can be displayed in tooltips or menu screens.

Information Overrides #

Research trees can override the default notifications and console texts.

Research Items #

You can add as many research items to a research tree as you want. There are different types of research items available:

  • Ability
    Learns an ability to the user.
  • Item
    Adds an item, equipment, currency, crafting recipe, AI behaviour or AI ruleset to the inventory of the user.
  • None
    Nothing will be researched (e.g. can be used for requirements or starting schematics).
  • Quest
    Adds a quest to the player’s quest list.
  • Status Value
    Gives a status value upgrade to the user.

You can add custom research item types by deriving from the BaseResearchItem class.

Research Times #

The number of times a research item can be researched can optionally be limited. E.g. you can limit creating a weapon to 3 times or giving a status value bonus to be available only once.

Learning an ability is automatically limited to 1 time, since abilities can only be learned once.

Research Duration #

The research duration defines how long it takes to finish research of a research item. The duraction can be set to:

  • None
    The research is finished immediately.
  • Manual
    The research progresses manually using schematics.
  • Time
    The research takes a defined amount of time (in seconds).

A research item learns a new ability to the combatant using Time and a duration of 1800 seconds (i.e. 30 minutes).

The new ability will be learned automatically after 30 minutes passed since starting research, excluding pause times. Pausing the game’s time progression (e.g. by pausing the game or using game pausing menu screens) will halt the research time from progressing.

A research item creates a new weapon using Manual and a duration of 3. The game has a custom day system using the event system.

The event system is used to progress research by 1 each time a day passes. The weapon is created after 3 days.

Research items using a research duration (Manual or Time) can optionally allow being canceled. Canceling research can be done in menu screens using a Research menu part.

Canceling research can optionally refund the costs and keep the already finished progress of the research.

Schematics #

Research items can override the research tree’s schematics and use their own schematics when starting, canceling or finishing research.

Override Content #

Certain research item types (e.g. items) can override the content information of the researched thing (e.g. changing the research item’s name from the researched content).

Portraits #

Research items can have their own portraits, they can be displayed by tooltips and menu screens.

Research Costs #

Researching a research item can optionally cost something:

  • Status Value
    Changes a defined status value of the user.
    Supports all types of status values.
  • Item
    Removes a defined quantity of an item, equipment, currency, crafting recipe, AI behaviour or AI ruleset from the user’s inventory.
    The chance setting determines if the item will be removed, e.g. setting the chance to 0 will require the item, but not remove it from the inventory.

A research item creates a weapon and requires 3 iron ore and an anvil.

The 3 iron ores will be consumed in the process (chance set to 100), the anvil is just a requirement and will remain in the inventory (chance set to 0).

Research Conditions #

If a research item is available for research can depend on defined conditions, e.g. status conditions of the user, quest states or variable conditions. Since status conditions also allow checking for research trees and research items, you can use this to create procedural research.

There are quick-setup buttons available in the editor to easily set up conditions to require the previous research item being completed or researched.

A research tree has a None type research item named Weaponry, which needs to be researched to allow other research items of the tree to be researched.

The other research items need a status condition, checking if the research item Weaponry has been completed.

Finish Variable Changes #

Finishing research of a research item can optionally change variables. These variable changes will happen each time research of the research item was finished.

The Local variable origin uses the user’s variables. Learn more about variables in the Makinom documentation.

Research State #

In-game, a research item can have one of the following states:

  • Unresearched
    The research item hasn’t yet been researched.
  • In Research
    The research item is currently in research.
  • Researched
    The research item has been researched (at least once).
  • Complete
    The research item has been fully researched (i.e. reached the limit).

Status conditions can check for these states.

Adding Research Trees #

The research trees are bound to individual combatants and can be added/removed using schematics and the combatant’s settings (Attacks & Abilities). When adding research trees to a combatant, you can optionally have multiple instances of the same research tree on a combatant.

A research tree has multiple research items that create various potions, each potion can only be created 1 time.

To create more than 1 potion of a kind, the research tree needs to be added to the combatant multiple times.

A research tree has a research item that creates a short sword, which takes 30 minutes to complete.

Adding the research tree multiple times allows creating multiple short swords at the same time.