Difference between revisions of "Creating Techniques"

From Tuxepedia
Jump to navigation Jump to search
Line 35: Line 35:
| range
| range
| The kind of technique: [[Melee]], [[Ranged]], [[Touch]], [[Special]], [[Reach]] or [[Reliable]].
| The kind of technique: [[Melee]], [[Ranged]], [[Touch]], [[Special]], [[Reach]] or [[Reliable]].
|-
| recharge
| Recharging time of the technique (eg 2 = it can be used every 2 turns).
|-
|-
| sfx
| sfx

Revision as of 09:45, 26 December 2023

Techniques can be created by creating a simple JSON text file in the Technique Folder folder under `resources/db/technique`. This folder contains all of the details of each technique available in Tuxemon. Here you can specify the technique's type(s), power, and Technique effects. With each new technique, the following data must be specified:

Name Description
tech_id The id of the individual technique.
accuracy Float parameter between 0 and 100 which decides against a random value if the technique hits or not.
animation Name of the animation under `resources/animations/technique` to use when the move is used.
conditions Conditions are the prerequisites on which a technique fails or not.
effects Effects can change some characteristics of the enemy. By using the example below: "give poison,target" will give Poisoned status to the enemy and "damage" will inflict damage to the enemy.
flip_axes On which axes the animation needs to be flipped, by default is empty "".
is_fast Boolean, whether the technique is fast or not. Fast means that will be used before the enemy ones. By default is False.
potency Float parameter between 0 and 100 which decides against a random value if the technique will give a Category:Condition.
power Float parameter between 0 and 3 that will be used to calculate the quantity of damages.
range The kind of technique: Melee, Ranged, Touch, Special, Reach or Reliable.
recharge Recharging time of the technique (eg 2 = it can be used every 2 turns).
sfx The sound effect under `resources/sounds/technique` to play when using the move.
slug The slug identifier of the technique. It defines the name of the technique, since inside the PO file there is a translation corresponding at the slug (msgid "sting" - msgstr "Sting") as well as the description (msgid "sting_description" - msgstr "Describing the technique").
sort Whether damage or meta, meta doesn't do damage.
target The target can be set among "enemy_monster", "enemy_team", etc.
types The technique's types Category:Type.
use_failure (optional) Text will appear if the technique fails.
use_success (optional) Text will appear if the technique hits.
use_tech Text will appear when the technique is used in battle.

Here is an example of what a technique file might look like:

`resources/db/technique/sting.json`

 json
 {  
 "tech_id": 1,
 "accuracy": 0.8,
 "animation": "pound",
 "effects": [
   "give poison,target",
   "damage"
 ],
 "flip_axes": "",
 "is_fast": false,
 "potency": 0.4,
 "power": 1.25,
 "range": "melee",
 "recharge": 1,
 "sfx": "sfx_blaster",
 "slug": "sting",
 "sort": "damage",
 "target": {
   "enemy monster": 2,
   "enemy team": 0,
   "enemy trainer": 0,
   "own monster": 0,
   "own team": 0,
   "own trainer": 0
 },
 "types": [
   "wood"
 ],
 "use_failure": "combat_miss",
 "use_success": null,
 "use_tech": "combat_used_x"
 }