ProMMO

ProMMO transforms Minecraft into a persistent MMORPG world featuring character progression, professions, economy, cities, technology, survival mechanics, and modern multiplayer systems. Built for NeoForge 1.21.1, ProMMO combines classic RPG gameplay

File Details

ProMMO 1.0.2

  • R
  • Jun 25, 2026
  • 15.93 MB
  • 7
  • 1.21.1
  • NeoForge

File Name

prommo-1.0.2.jar

Supported Versions

  • 1.21.1

Curse Maven Snippet

NeoForge

implementation "curse.maven:prommo-1585720:8316166"
Curse Maven does not yet support mods that have disabled 3rd party sharing

Learn more about Curse Maven

 ProMMO 1.0.2

 

**Release date:** 2026-06-24  
**Platforms:** Paper plugin 1.21.1+ · NeoForge mod 1.21.1 (21.1.x)

 

This release completes several MMORPG systems, fixes progression UI bugs, and brings the NeoForge mod to feature parity with the Paper plugin.

 

---

 

## Added

 

### City plots
- Citizens can create, list, and purchase 16×16 city plots from the city management GUI.
- Mayors can expand the maximum plot count via city upgrades.
- Plot ownership is enforced — players cannot break blocks on plots owned by others.
- Database schema and migrations updated for plot data and `max_plots` / city level fields.

 

### Gem socket bonuses
- Equipped gems are parsed from item lore (`[gemId]` tags).
- Gem stats apply as skill bonuses (including XP bonus) through `SkillBonusManager` and `SkillManager`.

 

### Cosmetic hats
- New floating cosmetic headwear selectable from the cosmetics menu.
- Hats persist while equipped and are removed on quit/death.

 

### Season system (GUI & gameplay)
- Season leaderboard GUI accessible from the main menu (slot 45).
- Season points are awarded while gathering (+1 per block break) and fishing (+2 per catch).
- Admin commands: `/prommoadmin season start <name>` and `/prommoadmin season end`.
- Fishing grants skill and profession XP when the active profession supports it.

 

### NeoForge parity
- All features above are ported to the NeoForge mod, including `SurvivalListener`, `SeasonGUI`, plot/cosmetic locales, and admin season commands.
- Vein miner behaviour remains integrated in the NeoForge `BlockListener`.

 

---

 

## Fixed

 

### Level & profession progress bars
- **Root cause:** `ProfessionManager.getProfession()` returned a new object on every call when no entry existed, so XP was never persisted and boss bars showed stale data.
- **Fix:** Professions are now stored with `computeIfAbsent`.
- Profession boss bars now show both character level and active profession level, and refresh on character load/switch.
- Gathering XP is credited to the player's **selected** profession (not a hard-coded type).
- GUI progress bars no longer break on `§` color codes — legacy formatting is parsed correctly (`AdventureComponents` on Paper, `Text.parse()` on NeoForge).

 

### Locale / configuration
- Resolved duplicate YAML key `title` under `gui.cosmetic` (second key renamed to `title-select`) in German and English locale files for both platforms.
- NeoForge default locales updated with missing keys for plots, hats, and related GUI strings.

 

---

 

## Changed

 

- Main menu season button now displays active season name, player points, and click hint (Paper and NeoForge).
- NeoForge mod version bumped to **1.0.2** in `neoforge/gradle.properties`.

 

---

 

## Technical notes

 

| Area | Paper | NeoForge |
|------|-------|----------|
| GUI click handling | Separate `*GUIListener` classes | Inline handlers in `Gui` classes |
| Vein miner | `VeinMinerListener` | Merged into `BlockListener` |
| Color codes in GUIs | `AdventureComponents` (Adventure API) | `Text.parse()` / `ItemBuilder` |

 

Both builds share the same core logic (managers, database schema, locale keys) under `de.prommo`.

 

---

 

## Upgrade instructions



### NeoForge mod
1. Stop the server.
2. Replace `prommo-1.0.2.jar` with `prommo-1.0.2.jar` in `mods/`.
3. Start the server.

 

Existing player data, cities, and economy accounts are preserved. No manual SQL steps are required.

 

---