Description
AscendRPG
⚠️ Additional Compatibility Notice
AscendRPG is a server-side RPG progression framework that already modifies core gameplay systems such as:
- XP and leveling
- combat calculations
- stamina, mana, and health regeneration
- damage handling and stat scaling
Because of this, it is NOT recommended to use AscendRPG together with other mods that:
- overhaul RPG systems
- change leveling or stats
- modify combat mechanics
- add alternative skill trees or progression frameworks
Mixing multiple mods that affect the same core systems (combat, stats, progression, or damage logic) can lead to:
- conflicts
- desync issues
- unexpected behavior
- player disconnects or instability
For best stability and intended gameplay balance, AscendRPG should be used as the primary (and only) RPG/combat progression mod in your server.
Overview
AscendRPG focuses on combat decisions, class identity, and long-term character growth without turning the game into an MMO or ability-spam system.
The goal is not to replace vanilla combat, but to add meaningful progression, risk, and specialization on top of it.
Design Philosophy
Progression over power creep
Strength comes primarily from perks and player decisions, not item rarity.Classes define playstyle, not hard restrictions
Any weapon can be used, but classes strongly favor specific combat styles.Risk-based combat
Blocking, stamina, guard breaks, and positioning matter more than raw DPS.
Core Features
- Class-based characters: Warrior, Hunter, Mage, Rogue
- Level-based progression up to level 100
- Health, Stamina, and Mana scaling
- Perk-driven character growth
- Server-side class identity and stat handling
- In-game UI for:
- class selection
- character stats
- perk overview
Combat & RPG Systems
Advanced stamina & blocking
- Blocking never negates 100% damage
- Guard break when stamina reaches zero
- Different weapons interact with stamina differently
Perk-driven damage calculation
Damage is calculated through a unified system combining perks, class modifiers, crits, and reductions.
Class Passives & Weapon Use
Each class has simple passive traits and preferred weapons. Using non-preferred weapons results in reduced effectiveness.
Warrior
- Preferred weapons: Swords, Spears
- Passive: −4% movement speed
- Role: Durable melee fighter
Hunter
- Preferred weapons: Bows
- Secondary weapons: Daggers (smaller penalty)
- Passive: Reduced fall damage
- Role: Ranged combat and mobility
Mage
- Preferred weapons: Staffs only
- Starts with a basic staff
- Role: Magic and resource-based combat
Rogue
- Preferred weapons: Daggers
- Passive: Faster sneaking
- Role: Precision and positioning
Professions System Added
A new professions system has been added. Each profession has its own perks that unlock various bonuses as you progress. For example, you can gain extra luck while mining, have a chance to craft higher-quality items, and receive other profession-specific advantages.
Known Issues
Due to the way the game handles XP events, there are some limitations. In certain cases, you may receive XP from items that were not directly crafted by you (for example, picking up arrows dropped by skeletons). Unfortunately, this cannot currently be handled more accurately because the game does not properly expose the necessary event hooks (such as reliable workbench or crafting events).
In other words, the system sometimes treats item acquisition similarly to crafting-related actions. It’s not perfect, but it’s a technical limitation of the current event handling and honestly, it’s not entirely a bad thing (for example, getting a bit of XP as an Alchemist for collecting mushrooms kind of makes sense anyway).
Language Support
Basic language support has been added. Some translations are already included and the game should automatically load available language files.
You can also create your own translation by adding a language file (for example: en-us, cs-cz, etc.) while keeping the same internal file structure. The mod should detect and load it automatically.
Known Issues
I tried to add a proper language settings option, but unfortunately it does not work correctly right after login. This is most likely caused by the UI being overlapped during the profession selection screen, which prevents accessing the settings menu and changing the language at that moment.
Because of this, the language may only be changed after the initial profession selection. I may revisit this later and try to implement a more reliable solution.
Magic & Staff System (Mage)
AscendRPG introduces a custom staff-based magic system for the Mage class.
Existing in-game staff models are reused and extended with additional gameplay mechanics and behavior.
Core Principles
- Staffs are functional weapons, not spell hotbars
- Magic usage is resource-driven, not spam-based
- Power comes from perks and class progression, not staff rarity
Essence-Based Casting
- Each staff requires a specific magical essence
- Casting consumes essence on use
- When essence or mana runs out:
- spellcasting is disabled
- the staff behaves as a melee weapon (spear-like attacks)
This ensures the Mage is never completely defenseless.
Staff Identity
- Each staff represents one spell archetype
- Staffs do not scale damage through rarity
- Spell effectiveness is influenced mainly by:
- perks
- class bonuses
- player decisions
The system is designed around controlled magic usage and clear risk vs reward.
Progression & XP System
- Maximum level: 100
- Custom XP curve for long-term progression
- Entity-based XP rewards with tier scaling
- Automatic detection of unknown entities for balancing
Progression rewards:
- Passive stat scaling per class
- Perk unlocks and specialization
- Improved combat efficiency, not raw power
Perks
- Perks unlock naturally through progression
- No random rolls or loot-based stat inflation
- Perks affect:
- damage behavior
- stamina usage
- blocking efficiency
- regeneration and movement
Perks are designed to change how you fight, not just how hard you hit.
Commands
/rpg— Opens the main RPG menu/rpg perks— Opens the perks menu/rpg status— Opens character stats/rpg level set <value>/rpg level add <value>
(Admin permissions required for modifying other players.)
Professions Commands
Player:
/rpg professions
/rpg professions toggle <profession_id>
/rpg reset professions
Admin :
/rpg professionlevel set <profession_id> <level> [player_name] [--resetxp]
/rpg professionlevel add <profession_id> <amount> [player_name] [--resetxp]
/rpg reset professions --player <player_name>
/rpg reset professions <player_name>
Configuration & Data Files
On server startup, AscendRPG generates editable configuration files:
classes.csv— class base stats and per-level scalingperks.csv— perk definitions (auto-generated from built-in defaults if missing)entities.csv— player XP rewards per NPC/entity killentities_missing.csv— auto-generated unknown entity IDs seen at runtimeui_settings.json— global HUD/UI offsets and defaultsplayers/*.json— per-player RPG save data (class, level, perks, professions, language, UI offsets)
Language files
language/<code>.csv— localization overrides (e.g.en-us.csv,cs-cz.csv,de-de.csv, etc.)- Any new
language/*.csvfile is auto-discovered as a selectable language. - Fallback chain: selected language key ->
en-uskey -> hardcoded fallback text.
Profession files
All profession configs are stored in:
professions/profession_blocks.csvprofessions/profession_blocks_bridge.csvprofessions/profession_items.csvprofessions/profession_items_bridge.csvprofessions/profession_entities.csvprofessions/profession_entities_bridge.csvprofessions/profession_block_drops.csvprofessions/profession_craft_rules.csvprofessions/profession_craft_upgrades.csvprofessions/profession_craft_bonus.csvprofessions/profession_item_xp_tiers.csv
Base vs Bridge CSVs
Use this rule:
- Base files (
profession_*.csv): vanilla/default mappings. - Bridge files (
*_bridge.csv): modpack/server-specific overrides and additions.
Bridge files are loaded after base files, so they are the right place for custom mod IDs (NoCube, custom assets, etc.).
ID Matching (for profession source tables)
sourceId supports:
- exact ID:
Food_Kebab exact:<id>prefix:<text>contains:<text>
Pattern rows can include optional priority (higher wins).
Example (profession_items_bridge.csv):
sourceId,professionId,xp,priority
prefix:nocube_food,cooking,10,420 exact:Food_Fishing_Raw,cooking,12,450 contains:fish,fishing,8,300
Quests — Quest Master Setup
The Quest Master is a global NPC used to open the quest board.
Permissions
spawncan be used by non-admins only if no Quest Master exists yet.move,respawn,remove, andlistrequire admin permission (ascendrpg.admin).- Once a Quest Master already exists, replacing/moving it is admin-only.
Quick spawn (first setup)
- Join the world and stand exactly where you want the Quest Master.
- Run:
/rpg questnpc spawn
This saves the NPC position/world and spawns it immediately.
Management commands
/rpg questnpc list— show saved quest NPC placements/rpg questnpc move— move the existing Quest Master to your current position (admin)/rpg questnpc respawn— force respawn from saved placement (admin)/rpg questnpc remove— remove saved + runtime Quest Master (admin)
Notes
- Only one default global Quest Master is used (
mainplacement). - Placement is persistent across restarts/world reloads.
- If it is missing after changes, run:
/rpg questnpc respawn
Backlog Ideas (Community Feedback)
Empty.
