Skip to content

Releases: NerdNu/ModMode

v5.0.1

06 Jan 21:27

Choose a tag to compare

Verified to support PaperMC versions 1.20 up to 1.21.10.

  • Staff in a mode are no longer able to get advancement progress.
  • Pets no longer teleport to their owners if in a mode.
  • Pets (and other entities, but VNP already handles this part) no longer follow their owners if in a mode.
  • Reloading TAB no longer breaks ModMode until the next restart.

Full Changelog: v5.0.0...v5.0.1

v5.0.0

13 Sep 12:08

Choose a tag to compare

Full Changelog: v4.2.2...v5.0.0

Changelog

Major Changes

  • Replaced the old single "modmode" system that interpreted permissions based on other permissions.
  • Groups and commands can now be created dynamically via the config file.
    • For example, creating a group called modmode will automatically create the /modmode command.

Group Customization

Each group can now have the following settings:

  • Entry command: The command name and its permission (e.g., /modmode, /adminmode).
  • LuckPerms track: Automatically move members along a specific track.
  • Prefix or color: Use a text prefix or just a color for names.
  • Flight ability: Allow or disallow flying.
  • Entity collision: Control whether players can collide with entities.
  • Secret rejoin: Automatically rejoin in secret if players left while in the mode.
  • Item interaction: Decide if players can pick up or drop items.
    • A toggle command is generated automatically for players to turn this on/off (defaults to off).

Command Updates

  • Mode commands now support the following arguments:
    • on – Enables the mode.
    • off – Disables the mode.
    • itemInteract – Toggles item pickup/dropping.
      • on – Enables item pickup/dropping.
      • off – Disables item pickup/dropping.

Quality-of-Life Improvements

  • The join message will now always appear, whether rejoining secretly or normally. Logging in without a join message is no longer possible.
  • Fixed the occasional “You are in the middle of changing states” bug. The plugin now self-corrects if this occurs.
  • Moved persistent player data to a separate members.yml file. This prevents the main config from constantly refreshing and overwriting changes.
    • Added /reloadmodmode to reload settings at runtime.
  • Removed /vanishlist. Vanish no longer persists between sessions—players in vanish will simply re-enter it on join if needed. Vanished players are now visible in the tab list.

Dependency Changes

  • Replaced NerdBoard with TAB for more customization options beyond modmode.
  • Replaced LogBlock with CoreProtect for block logging going forward.
  • Now depends on LuckPerms 5.5+. Versions below won't work.

New Features

  • Added bossbars to indicate player status:
    • Vanished but not in a mode.
    • In a mode.
    • In a mode and unvanished.
    • In a mode with item interaction enabled.
  • Added /modmode help (and equivalents for other groups, e.g., /adminmode help) to list available commands.
  • Improved gamemode handling:
    • Leaving a mode restores the player’s previous gamemode.
    • Entering a mode sets gamemode to Survival by default unless the last two gamemode swaps were Creative, in which case it stays Creative.

4.2.2 for LuckPerms 5.x

01 Oct 05:30

Choose a tag to compare

  • Fix error loading player inventory when health is higher than Player.getMaxHealth().
  • Fix runtime warnings about using System.out.
  • Update pom.xml to use https://github.com/mbax/VanishNoPacket (version 3.22). If you are developing, you must build these sources with mvn install. At run-time, you can use the official VanishNoPacket download from https://dev.bukkit.org/projects/vanish.
  • Skip cursed version number 4.2.1.

v4.1.1

14 Feb 06:13

Choose a tag to compare

Fix permission handling problems due to ModMode caching LuckPerms Track instances before LuckPerms 4.x has fully loaded the track asynchronously.

This is, hopefully, the last LuckPerms 4.x compatible release. New ModMode versions 4.2.0 and above are only compatible with LuckPerms 5.x.

Note: use the luckperms4 branch for LuckPerms 4.x maintenance releases and reserve the master branch for LuckPerms 5.x.

v4.2.0 for LuckPerms 5.x

12 Feb 14:59

Choose a tag to compare

Updated for Compatibility with LuckPerms 5.x.

v4.1.0 for LuckPerms 4.x

12 Feb 09:56

Choose a tag to compare

This version of ModMode uses LuckPerms track events to synchronise to permission changes.

In essence, ModMode now waits for LuckPerms to tell it that the player's permissions have fully changed before performing any steps that depend on those new permissions. Notification messages announcing the new ModMode state are sent to the staff member last, after all other actions (including permission changes) have been performed. So client mods that perform actions in response to those messages will trigger once the player has completely transitioned to the new state.

With a bit of luck, that resolves intermittent permission problems present in v4.0.4 (a.k.a. 404, the lost version).

It should be noted that 4.0.4 and subsequent versions depend on LuckPerms tracks that have not been properly documented (yet). That problem will be resolved soon. For now, note that the odd form of the foreignserveradmins to modmode track is intentional.

  • modmode-track.yml:
name: modmode-track
groups:
- moderators
- modmode
  • foreign-server-admins-modmode-track.yml:
name: foreign-server-admins-modmode-track
groups:
- modmode
- modmode
  • Also note that the LuckPerms weight of the modmode group must be set higher than any group inheriting from foreignserveradmins. This will also be explained in the documentation.

v4.0.5

26 Jan 14:04

Choose a tag to compare

Prevent phantom spawns on players in ModMode for 80+ minutes. (TODO item from v4.0.4).

v4.0.4

09 Jan 09:58

Choose a tag to compare

Recover Version 4.0.4 source code.

  • Decompile 4.0.4-SNAPSHOT from production servers.
  • Apply changes to the master branch.
  • Revert synchronized and static method attributes. Pointless in the
    case of synchronized.
  • Drop the use of PaperSpigot-specific API to prevent Phantom spawns.
    Modify the staff member's TIME_SINCE_REST statistic instead.
  • Improve handling of fire ticks and fall damage. These are now serialised
    with other saved state, preventing the abuse of ModMode for e.g.
    cancelling fall damage.
  • Fix handling of missing tracks (avoid NPE).

This version should be not significantly more flawed than the version we
have been running in production for the last year. No effort has yet been
made to fix the problem of Moderators having incorrect permissions. To
fix that requires that the plugin schedule ModMode actions in the event
handler of LuckPerms events fired when LuckPerms completes its track
promotions and demotions.

v4.0.3

07 Jan 06:21

Choose a tag to compare

Use tracks with LuckPerms

3.7.6

29 Apr 22:16

Choose a tag to compare

Fixed issue where toggling gamemode removes flight in ModMode