Skip to content

Releases: NerdNu/ModMode

4.2.2 for LuckPerms 5.x

01 Oct 05:30
Compare
Choose a tag to compare

v4.1.1

14 Feb 06:13
Compare
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
Compare
Choose a tag to compare

Updated for Compatibility with LuckPerms 5.x.

v4.1.0 for LuckPerms 4.x

12 Feb 09:56
Compare
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
Compare
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
Compare
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
Compare
Choose a tag to compare
Use tracks with LuckPerms

3.7.6

29 Apr 22:16
Compare
Choose a tag to compare
Fixed issue where toggling gamemode removes flight in ModMode

3.7.5

20 Jun 22:10
Compare
Choose a tag to compare

ModMode now uses the NerdBoard plugin for a common Scoreboard, so other plugins that need the Scoreboard API won't conflict with ModMode's requirements for collisions and name colouration.

Version 3.7.1 for Spigot 1.9

23 Apr 10:32
Compare
Choose a tag to compare

Allow collisions between default players to be configurable using
allow.collisions (boolean). Collision behaviour is controlled using the
Team/Scoreboard API, since LivingEntity.setCollidable(boolean) is hopelessly
broken in the current Spigot 1.9 build.

Note, also that ModMode now uses the main Scoreboard rather than creating a private one.

(See https://hub.spigotmc.org/jira/browse/SPIGOT-2069)