HomeJavaModsRacial_Town
Racial_Town

HotelRoom - Territory × Race Evolution RPG Plugin


📌 Plugin Overview

HotelRoom is a high-quality RPG enhancement plugin designed for Minecraft Paper servers, perfectly combining Territory Management with Race Evolution System. Players can build their homes while experiencing unique growth paths of different races, creating an immersive survival adventure experience.


✨ Core Features

🏠 Territory System

Complete territory management system with three territory types:

Type Description Use Case
Private Territory Player's exclusive private space with full protection Personal residence, private storage
Public Territory Multi-player shared area, claimable Apartment buildings, community housing
Official Territory Server official managed areas Shops, office areas, public facilities

Key Features:


🧬 Race Evolution System

Rich race system giving each player a unique growth path:

Race Features:

Growth Mechanics:


⚔️ Custom Attribute System

Powerful attribute system supporting 20+ attributes:

Offensive Attributes:

Attribute Description
Physical Damage Increases normal attack damage
Magic Damage Increases magic attack damage
Crit Rate Probability of triggering critical hit
Crit Damage Damage multiplier on critical hit
Armor Penetration Ignores target armor value
Magic Penetration Ignores target magic defense

Defensive Attributes:

Attribute Description
Physical Defense Reduces physical damage taken
Magic Defense Reduces magic damage taken
Armor Value Base armor damage reduction
Dodge Rate Probability of completely dodging attack
Block Rate Probability of blocking attack

Survival Attributes:

Attribute Description
Health Maximum health cap
Health Regen Health restored per second
Lifesteal Restore health on attack
Mana Mana cap
Mana Regen Mana restored per second

Utility Attributes:

Attribute Description
Movement Speed Movement speed bonus
Attack Speed Attack frequency bonus
Cooldown Reduction Skill cooldown reduction
EXP Bonus Increased experience gain
Drop Bonus Item drop rate increase

Equipment Attributes:


👨‍👩‍👧‍👦 Family System

Complete family social system:

Family Features:

Position System:

Position Permissions
Leader Full management permissions
Deputy Invite/kick members
Member Basic family features

🎮 Commands

Territory Commands

/hrlist                          - Open territory list and navigation
/hotelroom [subcommand]           - Main command
/createhotel <name> [system]      - Create territory (Admin)
/createpublichotel <name>         - Create public territory (Admin)
/createofficialhotel <type> <name> - Create official territory (Admin)
/givehotel <territory> <player>   - Gift territory (Admin)
/removehotel <territory>          - Remove territory (Admin)
/abandon [territory]              - Abandon territory

Attribute Commands

/attr check [player]              - Check attributes
/attr set <player> <attr> <value> - Set attribute (Admin)
/attr add <player> <attr> <value> - Add attribute (Admin)
/attr reset <player>              - Reset attributes (Admin)
/attr reload                      - Reload config (Admin)
/attr item add <attr> <value>     - Add attribute to item (Admin)
/attr item remove <line>          - Remove item attribute (Admin)
/attr item list                   - View item attribute list

Race Commands

/racegui                          - Open race evolution interface
/changerace <race>                - Change race
/racevoice                        - Race voice chat
/raceexp give <player> <amount>   - Give race experience (Admin)
/raceexp set <player> <level>     - Set race level (Admin)
/raceexp check <player>           - Check race info (Admin)

Family Commands

/family                           - Open family main interface
/family create <name>             - Create family
/family invite <player>           - Invite player
/family kick <player>             - Kick member
/family leave                     - Leave family
/family info                      - View family info

🔌 API & PAPI Variables

PlaceholderAPI Variables

Player Related:

%hotelroom_player_honor%         - Player honor value
%hotelroom_player_health%        - Current health
%hotelroom_player_max_health%    - Max health
%hotelroom_player_health_percent% - Health percentage

Attribute Related:

%hotelroom_attr_<attribute>%     - Specified attribute value
%hotelroom_all_attributes%       - All attributes list

Territory Related:

%hotelroom_in_land%              - Whether in territory
%hotelroom_land_name%            - Current territory name
%hotelroom_land_owner%           - Territory owner
%hotelroom_land_honor%           - Territory honor threshold
%hotelroom_in_public_hotel%      - Whether in public hotel
%hotelroom_public_members_count% - Public territory member count

Race Related:

%hotelroom_race%                 - Current race name
%hotelroom_race_name%            - Race internal ID
%hotelroom_is_race_<race>%       - Whether specified race

Family Related:

%hotelroom_family_name%          - Family name
%hotelroom_family_position%      - Family position
%hotelroom_family_level%         - Family level
%hotelroom_family_member_count%  - Member count

Mob Related:

%hotelroom_mob_health%           - Targeted mob current health
%hotelroom_mob_max_health%       - Targeted mob max health
%hotelroom_mob_health_percent%   - Targeted mob health percentage
%hotelroom_mob_name%             - Targeted mob name

Developer API

// Get attribute manager
AttributeManager manager = AttributeManager.getInstance();

// Get player attributes
PlayerAttribute attr = manager.getPlayerAttribute(player.getUniqueId());
double damage = attr.getAttribute("physical_damage");

// Set player attribute
manager.setPlayerAttributeValue(uuid, "physical_damage", 50.0);
manager.refreshPlayerAttributes(player);

// Get territory info
HotelInfo hotel = SelectionMgr.HOTELS.get("territory_name");
if (hotel != null) {
    UUID owner = hotel.owner;
    boolean isPublic = hotel.isPublic;
    Location[] corners = hotel.corners;
}

// Check if player is in territory
HotelInfo currentHotel = ProtectionListener.getHotelAt(player.getLocation());

⚙️ Configuration Files

File Structure

plugins/HotelRoom/
├── config.yml              # Main config file
├── hotels.db               # SQLite database
├── attributes/
│   └── attributes.yml      # Attribute system config
└── races/
    ├── human.yml           # Human race config
    ├── elf.yml             # Elf race config
    └── dwarf.yml           # Dwarf race config

Custom Attribute Configuration

custom-attributes:
  true_damage:
    display-name: "§c⚡ True Damage"
    default-value: 0.0
    min-value: 0.0
    max-value: 1000.0
    type: offensive
    trigger: on_attack
    formula: "damage + {true_damage}"
    ignore-defense: true
    description: "Deals defense-ignoring extra damage"

📋 Permissions

Permission Description Default
hotelroom.admin Admin permission OP
hotelroom.attr.others View others' attributes OP
hotelroom.race.gui Use race evolution GUI Everyone
hr.family.use Use family system Everyone
hr.family.create Create family Everyone
hr.family.admin Family admin OP
hr.family.invite Invite family members OP
hr.family.kick Kick family members OP

📥 Installation Guide

Requirements

Installation Steps

  1. Download the latest HotelRoom.jar
  2. Place the file in server's plugins folder
  3. Start server, wait for config files to generate
  4. Modify config files as needed
  5. Use /attr reload to reload config or restart server

Quick facts

Install steps are the general flow for this file type — How to install Minecraft Java mods & modpacks walks through it step by step.

Verified by MCModsHub

These come from our own check of the pack file, not from the source page.

Explore more