OpenRPG/Flexinode

From David's Notebook
Jump to navigationJump to search

A flexinode is an OpenRPG game tree node that can used used for any rule system.

They have:

  • a name (as displayed in the tree)
  • a 'right click action' (text and one or more dice rolls to be sent to the chat)

And may also have:

  • a value
  • a tag (a short name, used to uniquely identify the node)
  • a description of the node.

Many nodes can be includes in folders and sub-folders to form hierarchical collections.

Actions can include dice rolls which reference the value of the node and of other nodes. This means that tags must be unique within a flexinode collection.

Examples

d20

A subset of a d20 node for a simple attack might look like:

Abilities (folder)

Strength
value = 15
tag = str
action = [1d20 + str.d20.ability_mod()]

...

Attacks (folder)

Longsword
action = [1d20 + str.d20.ability_mod()] Damage: [1d8 + str.d20.ability_mod()]
description = One-handed, primary attack

Right clicking the longsword node would produce:

Longsword: [1d20 + 3] ==> (15) = 18 Damage: [1d8 + 3] ==> (3) = 6

4e

A 4e node for a power might look like:

Level

value = 3
tag = level

...

Abilities (folder)

Intelligence
value = 15
tag = int
action = : [1d20 + round_down(level / 2) + int.d20.ability_mod()]

...

Powers (folder)

Magic Missile
action = vs Reflex: [1d20 + round_down(level / 2 ) + int.d20.ability_mod()] Damage: [1d4 + int.d20.ability_mod()]
description = At will power

Right clicking the Magic Missile node would produce:

Magic Missile vs Reflex: [1d20 + 4] ==> (13) = 17 Damage: [1d4 + 3] ==> (3) = 6