August
23
2019

Status development is used to define how status values change over different levels.

While status values are the backbone of the status system, the status development is used to create reusable templates for how a combatant’s status values develop and change when leveling up, or to define (enemy) combatants for multiple levels. Status development only change Normal type status values and defines how Experience type status values increase their level up border or how much are earned on level up.

Status developments are created in the ORK Framework editor in Status > Status Developments and used by combatants to define their status values (Combatants > Combatants).

Beside using status developments, you can also define fixed values for a combatant (in the combatant’s settings) or use a game event to create a custom system. Leveling up can optionally start a game event (using the combatant as starting object), the default for all combatants is set up in Battle System > Battle Settings > Level Up Settings and can be overridden by each individual combatant.

Level Range

The level range defines the minimum and maximum level a combatant can have using the status development. For Curve development types this also determines the levels that can be defined.

To change the level range of a status development, click on the Edit Level Range button, change the values to your liking and click on the Ok button to confirm the changes (or Cancel to, well, cancel the changes).

Value Development

The development type is set up per individual status value (Normal and Experience types only).

None

The None development type doesn’t use any status development for the status value. Use this if you don’t want a value to change or use a custom system. The status value will be initialized to the defined Start Value.

Curve

The Curve development type creates a development curve, defining the value for each individual level. Clicking on Edit Curve will open the Curve Editor for the status value.

Here’s an example of a curve editor:

Beside creating interpolations between defined values to create the curve, you can also use Unity’s animation curves to create them.

Formula

The Formula development type will add the result of a defined formula to a status value with each level up (or when creating a combatant, for each level). The Start Value will be used as the initial value on the lowest level, i.e. the formula will only be used for levels after the initial (minimum) level.

E.g.: If the minimum level is 1 and the start value is 10, the status value will be:

  • Level 1: 10
  • Level 2: Level 1 + formula result (i.e. 10 + result)
  • Level 3: Level 2 + formula result (i.e. 10 + result + result)
  • etc.

Tip! The formula can also use the status value itself in the formula.

Percent

The Percent development type will distribute points based on the Percent Points defined in the status development. The percent points define the values that will used for distribution for each level and use a Curve development type.

The Percent Value defines how much (percent) of the percent points for the current level will be used. Please note that the percent points don’t represent the available points, but the used value for the percent calculations, i.e. you can use more than 100% of the points.

E.g.: The percent points for a level are 100:

  • MaxHP uses 250 percent value: 250
  • MaxMP uses 120 percent value: 120
  • ATK uses 45 percent value: 45
  • DEF uses 20 percent value: 20
  • etc.

After a level up, the percent points are 120:

  • MaxHP uses 250 percent value: 300
  • MaxMP uses 120 percent value: 144
  • ATK uses 45 percent value: 54
  • DEF uses 20 percent value: 24
  • etc.

Using Percent development type is a great and easy way to create scaleable status values, e.g. to create enemies with the same relation between status values on all levels without having to create curves for each status value.

Tip! For an easy setup it’s best to define the minimum level with 100 percent points and base the distribution (percent values of the status values) based on that.

This allows for a simple, 100% based distribution that only needs to be scaled up for further levels.