Jump to content
trickyloki3

Item Script Translator

Recommended Posts

Posted (edited)

Source: https://github.com/trickyloki3/pj59

Platform: Linux / OSX

Requirement: make, flex, bison, gcc

This tool is use for translating item scripts into item descriptions.

{
    bonus bAtkEle,Ele_Dark;
    bonus2 bAddEle,Ele_Ghost,15;
    bonus3 bAutoSpell,"MG_STONECURSE",3,100;
    bonus2 bAddEff,Eff_Stone,10;
    bonus bDex,3;
}
- id: 1138
  name: Mysteltainn
  bonus: |
    Weapon endowed with Dark property.
    +15% Physical Damage vs. Ghost enemies.
    Add 10% chance to cast Level 3 Stone Curse for each weapon attack.
    Add 0.10% chance to inflict Stone on enemy for each weapon attack.
    DEX +3

Note: the item descriptions are based on rAthena in Renewal mode.

The item descriptions can be changed by altering the template files, i.e. statement.yml, bonus.yml, sc_start.yml, etc.

I realized that a specialty tool like this can be difficult to use. If you need help, then feel free to ask. I appreciate any feedback.

If you want to see what the output looks like, then checkout the attached file.

output.yml

Edited by trickyloki3
  • Upvote 6

Share this post


Link to post
Share on other sites

Whoaaaaa you continue this projects. /no1

Share this post


Link to post
Share on other sites

Yup. I started this project around 2009 for educational purposes. And I am going to be supporting this version moving forward.

Share this post


Link to post
Share on other sites

I think its more powerfull if can do vice versa 😄

BTW Nice job man!

Share this post


Link to post
Share on other sites
Posted (edited)

Thanks! 

I updated the yaml scanner to accept UTF-8 characters. The tool uses templates to generate the item descriptions. If you translate the templates to another language, then the tool would generate item descriptions in another language.

Also, I only support rAthena in Renewal mode. If you are running rAthena in Pre-renewal mode, then you might have to update the item descriptions, e.g. the fixed and variable cast time bonuses. If you have a different max base level or job level or status points, then you have to change some of the YAML files.

For example, if your server uses a different max base level, then alter constant_data.yml.

- identifier: BaseLevel
  variable: true
  tag: Base Level
  range:
    - min: 0
      max: 150

If your server uses a different max refine rate, then alter statement.yml.

- identifier: getrefine
  print: Refine
  range:
    - min: 0
      max: 15

- identifier: getequiprefinerycnt
  print: {0|equip} Refine
  range:
    - min: 0
      max: 15

 

Edited by trickyloki3

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use and Privacy Policy.