Class Enhancement

Quick rating

Community listing page, reviews here may not be monitored by the author.

Class Enhancement

No reviews yet

Extremely lightweight class mod with super flexible configuration!

No Theme
RPG
UI & Menu Tool
Mod Loaders
Forge
Minecraft

Community voices

Reviews

List view
Grid view
Compact view
Sort by
Date
Rating
Helpful
Unhelpful
Edited
Sort ascending
Show per page
10
25
50
Delete this review?

This removes your review from the project. You can write a new review after.

Review submitted for moderation

Your review has been sent to moderators, who will check that it meets our guidelines before it appears publicly.

No reviews yet. Be the first to review this project!

Get it on

Available Platforms

About

Project Details

Type
Mod
Latest Version
Class Enhancement V2.6

For authors

Embed Badge

If you're the author of this project, you can embed a live badge anywhere that supports HTML or Markdown. It updates automatically whenever ratings change.

Custom banner text
ModDex rating badge preview

Use HTML for any page that supports it, or Markdown for README files and Markdown-based descriptions.

Identifiers

Platform IDs

CurseForge ID

Resources

External Links

Source Issues Wiki Discord

About

Description

Patreon

Class Enhancement

Class Enhancement introduces an extremely flexible, configuration-driven class system. It allows you to implement custom classes with deep mod support with ton of other features!

Features


- Smooth GUI -
A clean, responsive interface for class selection. 



- How does Classes work? -

Modpack developers can assign:
- Starter items
- Attributes (buffs & debuffs)
- Commands (for pehkui etc)
- Color codes for texts (ex: &6This will be a orange text&r - &aThis will be green&r)

!- Configuration -!

Nearly everything in this mod is customizable, allowing modpack developers to do anything they want!

Tutorial on how to do custom classes:

1. Find config file. | class_enhancement.toml
2. Find [custom_classes] segment.
3. Configure! In here we can use 100 pre-existing custom classes, we just gotta customize them to our liking!
(Don't forget to set the custom class limit)

Example:

[custom_classes.custom_0]
#Unique internal ID. Leave empty to disable. | Needs to be assigned, otherwise the class is basically disabled.
id = ""
#Display name shown in GUI.
name = "New Class"
#Lore text shown in the panel.
description = "A custom path."
#Cosmetic stat summary lines.
stats = ["&a+20% Speed", "&c-2 Health"]
#Mechanical modifiers.
attributes = []
#Main hand item.
main_hand = ""
#Off hand item.
off_hand = ""
#Armor items.
armor = []
#Starting items.
items = []
#Commands to execute when this class is selected. Use %player% for player name.
commands = []
 
Here's a quick tutorial on how commands work:

How to assign commands

Command Syntax Rules

DO:

  • Write commands without the / prefix
  • Use %player% placeholder for player names
  • Test commands manually first (with / in chat)
  • Use multiple commands for complex setups

DON'T:

  • Include / at the start of commands
  • Hardcode player names
  • Forget to test commands manually first
  • Use client-side only commands

Quick Examples

Basic Size Modification (Pehkui)

[classes.tank]
commands = ["scale set %player% 1.5"]

Multiple Commands

[classes.warrior]
commands = [
    "effect give %player% minecraft:strength infinite 0 true",
    "attribute %player% minecraft:generic.attack_damage base set 3.0"
]

Complex Setup

[custom_classes.custom_0]
id = "assassin"
commands = [
    "scale set %player% 0.75",
    "effect give %player% minecraft:speed infinite 1 true",
    "attribute %player% minecraft:generic.movement_speed base set 0.12"
]

 

Size Mods (Pehkui, Chiseled Me, etc.)

# Make bigger
commands = ["scale set %player% 2.0"]

# Make smaller  
commands = ["scale set %player% 0.5"]

Permanent Effects

# No particle effects (true at end)
commands = ["effect give %player% minecraft:night_vision infinite 0 true"]

# With particles (false at end)
commands = ["effect give %player% minecraft:speed infinite 1 false"]

Attributes

# Set base value
commands = ["attribute %player% minecraft:generic.max_health base set 30.0"]

# Step height (climb blocks)
commands = ["attribute %player% minecraft:generic.step_height base set 1.5"]

# Knockback resistance
commands = ["attribute %player% minecraft:generic.knockback_resistance base set 0.5"]

Teleportation

# Teleport + set spawn
commands = [
    "tp %player% 100 64 200",
    "spawnpoint %player% 100 64 200"
]

Teams

# Join a team
commands = ["team join meowmeow %player%"]

Items

# Give items
commands = [
    "give %player% minecraft:diamond_sword 1",
    "give %player% minecraft:golden_apple 5"
]

Titles

# Show title
commands = [
    "title %player% title {\"text\":\"WARRIOR\",\"color\":\"gold\",\"bold\":true}",
    "title %player% subtitle {\"text\":\"Strength and Honor\",\"color\":\"yellow\"}"
]

 

Order: Commands execute in sequence

commands = [
    "tp %player% 0 100 0",      # Teleport first
    "scale set %player% 2.0"     # Then scale
]

Useful Commands Reference

Vanilla Minecraft

  • effect give %player% <effect> <duration> <amplifier> <hideParticles>
  • attribute %player% <attribute> base set <value>
  • tp %player% <x> <y> <z>
  • spawnpoint %player% <x> <y> <z>
  • give %player% <item> <count>
  • title %player% title <json>
  • playsound <sound> master %player% ~ ~ ~ <volume> <pitch>

Common Attributes

  • minecraft:generic.max_health - Health (default: 20.0)
  • minecraft:generic.movement_speed - Speed (default: 0.1)
  • minecraft:generic.attack_damage - Damage (default: 1.0)
  • minecraft:generic.knockback_resistance - Resistance (0.0-1.0)
  • minecraft:generic.step_height - Block climb (default: 0.6)

Popular Mods

  • Pehkui: scale set %player% <value>
  • Origins: origin set %player% <origin>
  • Vampirism: vampirism level %player% <level> (I don't quite remember this one)
  • (Check your mod's docs for exact commands)

Remember!! No "/" prefix in config

 
Here's a quick tutorial on how language files for this mod work:

How to Translate Custom Classes

Option 1: The Easy Way (No Lang File Needed)

In your CommonConfig.toml:

[custom_classes.custom_0]
id = "pyromancer"
name = "Pyromancer"
description = "Master of the flame."

Option 2: The Multi-Language Way (Using Translation Keys)

Step 1: In your CommonConfig.toml: as u can see, you enter the custom class title on the config thing and u can translate it like this:

[custom_classes.custom_0]
id = "pyromancer"
name = "class.myserver.pyro.name"
description = "class.myserver.pyro.desc"

Step 2: In your en_us.json: Add those exact keys to your language file.

{
  "class.myserver.pyro.name": "Pyromancer",
  "class.myserver.pyro.desc": "Master of the flame."
}

Step 3: In your es_es.json (Spanish):

{
  "class.myserver.pyro.name": "Piromántico",
  "class.myserver.pyro.desc": "Maestro de la llama."
}

Summary

Just type the names and descriptions directly into the CommonConfig.toml. The mod will display exactly what you type.

For multiple languages: Put a custom.key in the config, and put the actual text inside your .json language files.

 

- Cross Compatibility -

Made to work with Difficulty Enhancement!

This mod provides a cross compatibility with Difficulty Enhancement mod. Both mods work perfectly fine together and i even suggest you to use them together!

You can use this mod in your modpack freely.

Screenshots

Gallery

This project has no gallery images yet.

Versions

Files

Relations

Project Relations

More like this

Similar Mods

Suggestions use data such as tags, dependencies, dependents, descriptions, titles, and more to rank how much they overlap with this mod.

On ModDex

Community snapshot

0
Ratings
0
Followers
0
In stacks

By the numbers

Statistics

~300,000
Downloads
Last Updated
Created
Last synced
When ModDex last fetched this project from CurseForge or Modrinth. Every project is re-checked on a schedule, and any project that ships a new file is synced automatically within hours of the release.
New file updates sync automatically
How syncing works