Home›Java›Mods›HonorCore
HonorCore
HonorCore
Player reputation that actually works

Players give honor points to each other. Positive honor benefits them, negative honor punishes them. Up to you.

One jar. 1.16 → 1.21+. No dependencies.​


The idea​

Most reputation plugins give you a number in chat and stop there. HonorCore turns that number into something the player can feel: a tier that grants permissions, unlocks commands and opens more doors by having a good behavior and reputation around the server. It can also punish them based on your settings.


Giving honor​

Code (Text):
/honor give <player> [reason]
By default: one point per player, and a 24h wait before you can honor someone else. Both rules are yours to change.

You will have full control of how players use the system. Make sure to take a quick look at all the config before using the plugin on your main server.



Tiers: what reputation is for​

Create as many tiers as you want, positive and negative. Each one can grant permissions, block commands, apply potion effects and run commands. It is really up to your creativity.

Examples:

Code (Text):
tiers:
  trusted:
    threshold: 10
    display: '&a[Trusted]'
    unlocks:
      - '3 homes instead of 1'
      - 'No waiting time on /spawn'
    permissions:
      - 'essentials.sethome.multiple.3'
      - 'essentials.spawn.cooldown.bypass'
    on-enter:
      repeatable: false          # claimed once, never again
      commands:
        - 'console: eco give %player% 500'

  outcast:
    threshold: -20
    display: '&8[Outcast]'
    blocks:
      - 'Teleports and homes'
      - 'Permanent slowness'
    blocked-commands: ['tpa', 'home', 'trade']
    effects: ['SLOW:0']
unlocks and blocks are the text the menu shows, written by you. The plugin never generates it from permission nodes, because nobody wants to read essentials.sethome.multiple.3 in a tooltip.


Losing reputation​


Reputation for playtime, and able to set up rewards for a clean 30 day record.


Works with your ban plugin. All of them.​

Instead of hooking one punishment plugin, HonorCore watches the punishment commands. You decide what each one costs:

Code (Text):
sanctions:
  commands:
    ban: -25
    tempban: -10
    mute: -3
    warn: -2
That works with LiteBans, AdvancedBan, CMI, EssentialsX, LibertyBans or whatever you use — and it keeps working the day you switch. It does not see punishments issued from a web panel or from another server in the network, since no command runs on this server in that case.

And the opposite direction, with your commands:

Code (Text):
punishments:
  levels:
    tempban:
      at-or-below: -50
      commands:
        - 'tempban %player% 1d %reason%'
      recover-commands:
        - 'unban %player%'

Works with your protection plugin. All of them.​

Griefing attempts are detected without any dependency: when a player tries to break, place or open something inside a claim that is not theirs, the protection plugin cancels the action — and that signal is identical whether the server runs WorldGuard, GriefPrevention, Lands, Towny, Residence or PlotSquared.

Off by default, with a long cooldown and a daily cap, because protection plugins also cancel harmless clicks.


Menus, languages and sounds​



Commands​

Code (Text):
/honor                              your profile
/honor <player>                     someone else's profile
/honor give <player> [reason]       give a point of honor
/honor revoke <player>              take it back (optional)
/honor top [page|menu]              leaderboard
/honor tiers                        every tier and what it unlocks
/report <player> <reason>           report someone
/honor reports                      staff queue
/honor history <player>             full audit log
/honor add|take|set <player> <n>    adjust reputation
/honor reload
Aliases: /rep, /reputation. Full tab completion everywhere, and everything that can work from the console does.


Permissions​

Players — on for everyone by default. Turn them off if you want.

Code (Text):
honorcore.use       true    see profiles, the leaderboard and the tier list
honorcore.give      true    give honor, and take it back where allowed
honorcore.report    true    report a player to the staff
Staff and administration:

Code (Text):
honorcore.staff     op      report queue and the full history of a player
honorcore.notify    op      chat notification when a new report arrives
honorcore.admin     op      add / take / set reputation, and reload
honorcore.admin already includes honorcore.staff, which already includes honorcore.notify. One node is enough.

Bypasses — deliberately NOT handed to admins by default, so your staff sees the same rules as the players while they test:

Code (Text):
honorcore.bypass.cooldown       false   the wait between honors and the daily limit
honorcore.bypass.requirements   false   playtime, rank, IP, distance...
honorcore.bypass.restrictions   op      use commands the current tier blocks
honorcore.bypass.triggers       false   never lose reputation to the automatic triggers
honorcore.bypass.*              false   all four at once
honorcore.* grants absolutely everything, bypasses included.

A typical LuckPerms setup, so that only settled players hand out honor:

Code (Text):
lp group default permission set honorcore.give false
lp group member permission set honorcore.give true
lp group moderator permission set honorcore.staff true
lp group admin permission set honorcore.* true

PlaceholderAPI​

Code (Text):
%honorcore_points%              %honorcore_tier%
%honorcore_tier_raw%            %honorcore_tier_threshold%
%honorcore_next_tier%           %honorcore_points_to_next%
%honorcore_progress_bar%        %honorcore_rank%
%honorcore_can_give%            %honorcore_cooldown%
%honorcore_honor_received%
%honorcore_honor_given%
%honorcore_top_1_name%          %honorcore_top_1_points%
%honorcore_top_1_tier%
Use them as a chat prefix, a tab tag or a scoreboard line. There is also an optional built in nametag module using scoreboard teams, if you do not already run TAB.


API​

Code (Text):
int points = HonorCoreAPI.getPoints(uuid);
Tier tier  = HonorCoreAPI.getTier(uuid);
HonorCoreAPI.modify(uuid, 5, "MyPlugin", "Won the event");
Events: ReputationChangeEvent (cancellable, and the amount can be rewritten), TierChangeEvent, HonorGivenEvent (cancellable).


Technical​



Terms of use​

HonorCore is free.

You may:

You may not:


Made by Kubdev

Found a bug or want a feature? Send me a DM.
DO NOT USE THE REVIEW SECTION TO REPORT BUGS.

Gemini_Generated_Image_bfszvlbfszvlbfsz (1).jpg ​

Commands

Plugin details

Read from the plugin's own plugin.yml.

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.

HonorCore is a free Minecraft Java mod. Compatible with Minecraft 1.16, 1.17, 1.18, 1.19 and newer. Downloaded 5 times (via Spigot). Download it and open it directly in the game.

Explore more