premium banner
Class system for Skill Issue

Description

Skill Issue: Classes

 

 

Skill Issue: Classes is an addon for Skill Issue that adds a configurable class system.

 

It allows modpack devs to define a series of classes with S, A, B, C, D, or F scaling to any number of attributes from vanilla or other mods in a simple json config. Classes are selected by using Class Guide items that are automatically generated for any class defined in classes.json. 

The second json config, attributescales.json, is where each attribute being modified by your classes has a bonus, minfactor, and maxfactor (See Skill Issue for more details) assigned to S, A, B, C, D, F. 

 

See examples below:

attributescales.json

{
"attributeScales": {
"minecraft:generic.attack_damage": {
"A": {
"key": "generic.attack_damage",
"bonus": 0.0,
"min_factor": 1.1,
"max_factor": 1.3
},
"B": {
"key": "generic.attack_damage",
"bonus": 0.0,
"min_factor": 1.0,
"max_factor": 1.1
},
"S": {
"key": "generic.attack_damage",
"bonus": 0.0,
"min_factor": 1.2,
"max_factor": 1.5
},
"C": {
"key": "generic.attack_damage",
"bonus": 0.0,
"min_factor": 0.9,
"max_factor": 1.0
},
"D": {
"key": "generic.attack_damage",
"bonus": 0.0,
"min_factor": 0.8,
"max_factor": 0.9
},
"F": {
"key": "generic.attack_damage",
"bonus": 0.0,
"min_factor": 0.7,
"max_factor": 0.8
}
},
"minecraft:generic.movement_speed": {
"A": {
"key": "generic.movement_speed",
"bonus": 0.0,
"min_factor": 1.1,
"max_factor": 1.3
},
"B": {
"key": "generic.movement_speed",
"bonus": 0.0,
"min_factor": 1.0,
"max_factor": 1.1
},
"S": {
"key": "generic.movement_speed",
"bonus": 0.0,
"min_factor": 1.2,
"max_factor": 1.5
},
"C": {
"key": "generic.movement_speed",
"bonus": 0.0,
"min_factor": 0.9,
"max_factor": 1.0
},
"D": {
"key": "generic.movement_speed",
"bonus": 0.0,
"min_factor": 0.8,
"max_factor": 0.9
},
"F": {
"key": "generic.movement_speed",
"bonus": 0.0,
"min_factor": 0.7,
"max_factor": 0.8
}
},
"minecraft:generic.max_health": {
"A": {
"key": "generic.max_health",
"bonus": 0.0,
"min_factor": 1.1,
"max_factor": 1.3
},
"B": {
"key": "generic.max_health",
"bonus": 0.0,
"min_factor": 1.0,
"max_factor": 1.1
},
"S": {
"key": "generic.max_health",
"bonus": 0.0,
"min_factor": 1.2,
"max_factor": 1.5
},
"C": {
"key": "generic.max_health",
"bonus": 0.0,
"min_factor": 0.9,
"max_factor": 1.0
},
"D": {
"key": "generic.max_health",
"bonus": 0.0,
"min_factor": 0.8,
"max_factor": 0.9
},
"F": {
"key": "generic.max_health",
"bonus": 0.0,
"min_factor": 0.7,
"max_factor": 0.8
}
}
}
}

 

classes.json

{
"classes": {
"rogue": {
"id": "rogue",
"attributeScales": [
{
"key": "minecraft:generic.max_health",
"scaling": "F"
},
{
"key": "minecraft:generic.movement_speed",
"scaling": "A"
},
{
"key": "minecraft:generic.attack_damage",
"scaling": "S"
}
]
},
"barbarian": {
"id": "barbarian",
"attributeScales": [
{
"key": "minecraft:generic.max_health",
"scaling": "S"
},
{
"key": "minecraft:generic.movement_speed",
"scaling": "B"
},
{
"key": "minecraft:generic.attack_damage",
"scaling": "B"
}
]
},
"fighter": {
"id": "fighter",
"attributeScales": [
{
"key": "minecraft:generic.max_health",
"scaling": "B"
},
{
"key": "minecraft:generic.movement_speed",
"scaling": "B"
},
{
"key": "minecraft:generic.attack_damage",
"scaling": "A"
}
]
}
}
}

 

Config example that includes attributes from Iron's Spells & Epic Fight:

classes.json

attributescales.json

 

 


 

Need a server?