Difference between revisions of "Creating Items"

From Tuxepedia
Jump to navigation Jump to search
Line 14: Line 14:
== Item Design ==
== Item Design ==
Items in Tuxemon can be created by adding a JSON file to the <code>resources/db/item</code> directory. With each new item, the following data must be specified:
Items in Tuxemon can be created by adding a JSON file to the <code>resources/db/item</code> directory. With each new item, the following data must be specified:
{| class="wikitable"
|-
! Name
! Description
|-
| conditions
| Conditions are the prerequisites on which an item can be used or not. By using the example below: "is current_hp <,1.0", and "is current_hp >,0" mean that the item can be used on a monster with more than 0 HP (not fainted) and less that the total (not healthy).
|-
| effects
| Effects can change some characteristics of the monster on which the item is used. By using the example below: "heal 20" means to heal 20 HP.
|-
| slug
| The slug identifier of the technique. It defines the name of the technique and there is a translation in the PO file (msgid "sting" - msgstr "Sting") as well as the description (msgid "sting_description" - msgstr "Describing the technique").
|-
| sort
| It can be "food", "potion", "utility" or "quest".
|-
| sprite
| The sprite / image of the item.
|-
| category
| It can be "none", "badge", "booster", "elements", "fossil", "morph", "revive", "potion", "technique", "phone", "fish", "destroy", "capture" or "stats".
|-
| type
| It can be '''KeyItem''' or '''Consumable'''. If used, then '''Consumable''' is going to remove 1 quantity.
|-
| usable_in
| Possibilities are: "MainCombatMenuState" (during battle), "WorldState" (in the world) or "" (never)
|-
| use_failure
| Corresponding msgid (translation PO file) will appear if the item fails.
|-
| use_item
| Corresponding msgid (translation PO file) will appear when the item is used.
|-
| use_success
| Corresponding msgid (translation PO file) will appear if the item is used successfully (depending on effects).
|}


Here is an example of what an item file might look like:
Here is an example of what an item file might look like:

Revision as of 10:18, 26 December 2023

When creating content, you might want to add your own cool item to the game. This page will walk you through creating your own item and discuss how you can use it in the game.

Creating Item Graphics

Item sprites should be PNG images that are 24 x 24 pixels in size. Here is an example of some item sprites:

BANANA 2.png Bug gym badge.png

After creating your item sprite, put your graphic under resources/gfx/items.

Using your item in Tuxemon

You can add your item to the player's inventory by creating an *action event* with an action type of "add_item" using the Tiled map editor. For more information on adding event actions and conditions to a map, check out the Map Editor Events.

Item Design

Items in Tuxemon can be created by adding a JSON file to the resources/db/item directory. With each new item, the following data must be specified:

Name Description
conditions Conditions are the prerequisites on which an item can be used or not. By using the example below: "is current_hp <,1.0", and "is current_hp >,0" mean that the item can be used on a monster with more than 0 HP (not fainted) and less that the total (not healthy).
effects Effects can change some characteristics of the monster on which the item is used. By using the example below: "heal 20" means to heal 20 HP.
slug The slug identifier of the technique. It defines the name of the technique and there is a translation in the PO file (msgid "sting" - msgstr "Sting") as well as the description (msgid "sting_description" - msgstr "Describing the technique").
sort It can be "food", "potion", "utility" or "quest".
sprite The sprite / image of the item.
category It can be "none", "badge", "booster", "elements", "fossil", "morph", "revive", "potion", "technique", "phone", "fish", "destroy", "capture" or "stats".
type It can be KeyItem or Consumable. If used, then Consumable is going to remove 1 quantity.
usable_in Possibilities are: "MainCombatMenuState" (during battle), "WorldState" (in the world) or "" (never)
use_failure Corresponding msgid (translation PO file) will appear if the item fails.
use_item Corresponding msgid (translation PO file) will appear when the item is used.
use_success Corresponding msgid (translation PO file) will appear if the item is used successfully (depending on effects).

Here is an example of what an item file might look like:

`resources/db/item/potion.json`

 json
 {  
 "conditions": [
   "is current_hp <,1.0",
   "is current_hp >,0"
 ],
 "effects": [
   "heal 20"
 ],
 "slug": "potion",
 "sort": "potion",
 "sprite": "gfx/items/potion.png",
 "category": "potion",
 "type": "Consumable",
 "usable_in": [
   "MainCombatMenuState",
   "WorldState"
 ],
 "use_failure": "generic_failure",
 "use_item": "combat_used_x",
 "use_success": "generic_success"
 }