Experience-Script

With the Experience-Script exp.js it's possible to customize when a pet will level up. As you can see at the file ending, the used language is JavaScript.

Installation

  1. Download Rhino, rename the jar to rhino.jar and put the file into the MyPet folder.

  2. Set LevelSystem.CalculationMode to JavaScript int the config.yml.

  3. Edit the exp.js to your likings.

Script

To make a fully functional exp-script that can be used by MyPet you have to implement the following method:

exp.js
function getExpByLevel(level, petType, worldGroup) {
  var exp = 0;
  return exp;
}

Differentiating between pet types and world groups

Examples:

exp.js
function getExpByLevel(level, petType, worldGroup) {
  var exp = 10;
  if(petType == "Cow") {
    exp = 15;
  }
  return exp;
}

Debugging

To provide an easy method to debug your scripts the plugin adds a print method to the usable JavaScript functions.

print("message");

Example

exp.js
//  Level 2-17 cost 17 XP points each
//  Level 18-31 cost 3 more XP points than the previous
//  Level 32-∞ cost 7 more XP points than the previous

function getExpByLevel(level, petType, worldGroup) {
    var exp = 0, i;
    if (level > 31) {
        exp = 887;
        level -= 31;
        for (i = 1; i < level; i++) {
            exp += 62 + (i * 7);
        }
        return exp;
    }
    if (level > 17) {
        exp = 272;
        level -= 17;
        for (i = 1; i <= level; i++) {
            exp += 17 + (i * 3);
        }
        return exp;
    }
    return (level - 1) * 17;
}

Last updated