RedLightGreenLight by Vineurodev 图标

RedLightGreenLight by Vineurodev

作者:rebot | 分类:模组

价格:0 墨喵币 下载量:0 点赞:0 版本 2.5.0
本资源为搬运资源,原资源地址: https://modrinth.com/mod/redlightgreenlight-by-vineurodev
资源信息

Minecraft 版本: 26.2

平台: paper purpur

标签: adventure minigame social

资源介绍

Vineurodev RLGL

Red Light, Green Light — two ways to play, and not a single dependency.

Freeze the entire server with one command, or build proper race arenas with a
lobby, a start line, a finish line and bounds players cannot leave. Select them by
clicking two blocks. Let a wizard tell you what is still missing.

No database. No Citizens. No WorldGuard. No economy plugin. Everything is YAML you
can read, and the plugin argues with you when you get it wrong instead of quietly
falling back to a default.


⚠️ Requires Java 25

Paper 26.2 ships Java 25 class files, so this is a hard floor, not a preference —
a Java 21 server cannot load it. Check your runtime before you download.

Server Paper 26.2+
Java 25+
Optional PlaceholderAPI 2.11.6+

? Two ways to play

Global mode needs no setup at all. One command enrols every online player,
wherever they are standing. Survive to the timer without dying and you win.

/rlgl start global 2m

Arena mode is the full race. Players queue in a lobby, spawn together when the
countdown ends, and run for a finish line. A start line stops anyone creeping
forward early. A play region teleports anyone who wanders out back inside.
Spectator bounds hold the eliminated where you want them.

Two life modes per arena: CONTINUOUS lets the dead respawn and try again,
ONE_LIFE puts them straight into spectator for the rest of the round.

?️ Build an arena by clicking blocks

No coordinates to type. Four tools, one per thing you need to define:

/rlgl regionstick myarena

Right-click two blocks, left-click to confirm, and the tool removes itself. Wrong
corner? Right-click again before confirming — nothing is written until you do.
The arena name lives inside the item, so two tools for two arenas never collide,
and block interaction is cancelled while you hold one.

Then let the wizard drive:

/rlgl wizard myarena

A live checklist of every requirement, ticked or crossed, each with a clickable
command for the next step. It refreshes itself as you finish steps. Leave it open
and work down the list.

/rlgl arena enable refuses an unfinished arena, so players can never join a
course they are unable to complete.

? The rules that make it a game

Two details that are easy to leave out, and change how it plays:

  • A reaction window. The light turning red does not kill you for momentum you
    had already committed to. Configurable, default 1.25 s.
  • A green-light idle penalty. Standing still while the light is green costs
    health. Without it, the optimal strategy is to never move at all, and the round
    is dull. Set the damage to 0 and the check stops running entirely.

Light durations are randomised between a floor and a ceiling you set. Get the
range backwards and it is repaired with a warning rather than aborting the light
cycle mid-round.

? Config that checks itself

Every value is validated when the file is read. Anything unusable is repaired to a
known default and named in the console, so a typo is visible on the first
restart instead of six weeks later:

[VincergyRLGL] 2 problem(s) found in config.yml:
[VincergyRLGL]   - 'arena.default-life-mode' has invalid value 'ONELIFE', using CONTINUOUS instead
[VincergyRLGL]   - 'global.max-light-delay-seconds' value '1' is out of range, clamped to 2

Keys you leave out use their defaults, so trimming the file is safe. Values are
read once into a snapshot rather than looked up during play — nothing does a
string-keyed map lookup on the movement path.

A mid-match /rlgl reload cannot change the rules of a round already running.

?️ It will not eat your arenas

Two things this plugin refuses to do:

  • Overwrite a coordinate it could not read. If an arena's world is not loaded
    when the server starts — routine with world managers that load worlds after
    plugins — the stored coordinates are left untouched on disk and load once the
    world exists. /rlgl status lists which arenas are waiting. Saving never writes
    nothing over something.
  • Delete on one command. /rlgl arena delete myarena deletes nothing. It
    shows what would be lost, warns you if players are standing in it, and arms a
    confirmation valid for 30 seconds. The confirmation is bound to that exact arena
    name and to you, and is single use — so a stale "yes" can never land on a
    different arena than the one you were shown.

Arena names are validated before they reach storage, because a name becomes a YAML
key: a dot would otherwise nest one arena inside another and quietly corrupt the
file.

? Statistics and leaderboards

Arena wins, flawless wins, global survivals and deaths, per player.

Statistics are batched and flushed periodically instead of writing the whole file
on every kill, and always saved on shutdown. Main-thread file I/O in the middle of
a match is not a feature.

With PlaceholderAPI:

%rlgl_arena_wins%          %rlgl_current_arena%
%rlgl_arena_flawless_wins% %rlgl_light%
%rlgl_deaths%              %rlgl_remaining_time%

%rlgl_top_arena_wins_name_1%   %rlgl_top_arena_wins_value_1%

Leaderboards exclude players who never scored, so they are not padded with zeroes,
and ties break on name so the order does not shuffle between requests.

? Rewards without an economy dependency

Console commands, run on a win:

arena:
  finish:
    enabled: true
    commands:
      - 'give %player% diamond 3'
      - 'eco give %player% 500'

Commands are the escape hatch that keeps the plugin dependency-free
eco give %player% 500 works with whatever economy you already run. Separate
bundles for finishing, for finishing without dying, and for surviving a global
round. Every one ships disabled, so a fresh install pays out nothing until you
say so.

? Modular

Four modules you switch on or off: setup-tools, stats, rewards,
placeholders. A disabled module registers nothing at all — no idle listener left
attached. Turn setup-tools off once your arenas are built and its interact
handler stops running on every block click. Turn rewards off while you are
testing so test runs do not hand out prizes.

/rlgl modules tells you what is actually running.

⚙️ Built for Paper 26.2

Adventure components and boss bars throughout, attribute-based health, registry
material lookups, PluginMeta instead of the deprecated description file. Bukkit
API only
— no NMS, no reflection, nothing version-locked.

No deprecated API anywhere, and the build finishes with zero compiler warnings
under -Xlint:all. Nothing is suppressed to get there.

Ships with 119 JUnit tests over the parts that actually branch: the
120 / 90s / 2m30s duration grammar including overflow and malformed input,
arena-name validation including the YAML-path and traversal cases, inclusive block
containment, one-directional finish-line crossing on diagonals and around segment
ends, leaderboard ordering and tie-breaking, light-delay bounds with a seeded
random source, and the delete confirmation's token matching, scoping and expiry —
tested against an injected clock, not a sleep.

No server-mocking framework, deliberately: logic worth testing lives in classes
that never touch Bukkit.

? Commands and permissions

16 subcommands under /rlgl, including 15 arena operations, every one with its own
permission node, usage line and tab completion. /rlgl help is generated from the
command registry and lists only what the sender can actually run, so nobody is
shown a command they cannot use.

23 permission nodes, each with a description, grouped under rlgl.admin and
rlgl.user. Every subcommand checks its own node, so granting a parent is never
required — hand out rlgl.arena.list on its own if that is all you want.

? Text

Every string a player sees is in messages.yml — 124 keys, each with its
placeholders documented in a comment beside it. Nothing is hardcoded in Java, so
you can reword or translate the whole plugin without touching code.

The plugin ships in English. There is one message file, not a per-language
loader: copy it aside, translate the values, and reload. If you need several
languages switchable at runtime, this is not that plugin yet.

Good to know

Two honest limitations, so you find them here rather than after buying:

  • One arena runs at a time. Starting a different arena stops the current one.
    Fine for events; not a lobby server with six simultaneous games.
  • Module changes need a restart. /rlgl reload covers every other setting in
    all five YAML files, but enabling a module has to register listeners and
    commands, so it happens at startup.

Full documentation ships with the plugin: a commands reference, a permissions
reference, a key-by-key configuration reference, five feature guides, an FAQ and a
troubleshooting guide.

下载太慢?试试 墨喵加速站,支持 Modrinth 和外网直链高速下载! 用的人越多,下载的越快!
下载与版本
评论(0)
登录 后发表评论。

暂无评论,抢个沙发吧~

举报此资源

请登录后举报

🔥 相关推荐
I_am's blood Moon

价格:0 墨喵币
下载量:0

查看详情
AxolotlShaders

价格:0 墨喵币
下载量:0

查看详情
Catch The Lightning

价格:0 墨喵币
下载量:0

查看详情
ZaosMC

价格:0 墨喵币
下载量:0

查看详情