Introduction
RedGames is a feature-rich Minecraft minigame plugin featuring 15 chat-based games, 8 solo arcade games, and 5 multiplayer GUI games. Players compete to type fastest, solve puzzles, answer trivia, play arcade games, and complete challenges to earn points, tokens, boosters, cosmetics, and leaderboard progress.
Chat Games
- Reaction
- Unscramble
- Trivia
- Math
- Algebra
- Guess Number
- Unreverse
- Completion
- Click Button
- Hoverable
- Shopping List
- Random
- Clue Cracker
- Naughty Nice
- Action (in-world)
Solo Arcade Games
- Memory Match
- Lights Out
- Sliding Puzzle
- Color Sort
- Whack-a-Mole
- Blackjack
- Roulette
- Slots
Multiplayer Games
- Present Pick
- Hot Potato
- Memory Pattern
- Musical Chairs
- Reaction Grid
Key Features
- Games Hub GUI
- Difficulty selection
- Auto-scheduler
- Voting system
- Daily/weekly challenges
- YAML scripting
- Token shop
- Cosmetics & boosters
- Win streaks
- Leaderboard GUI
Integrations
- Vault (economy)
- PlaceholderAPI
- DecentHolograms
Storage Options
- YAML (default)
- SQLite
- MySQL
Installation
- Place
RedGames-*.jarin your server'splugins/folder - Restart the server
- Config files generate in
plugins/RedGames/
Requirements
- Spigot or Paper 1.16+
- Java 8 or higher
Optional Plugins
- Vault + economy plugin for money rewards
- PlaceholderAPI for placeholders
- DecentHolograms for win holograms
Migrating from SimonSays
RedGames automatically migrates your player data from SimonSays on first launch.
- Remove the old SimonSays jar from
/plugins - Place the new RedGames jar in
/plugins - Restart your server
- Player data (stats, tokens, ranks) migrates automatically
simonsays.* to redgames.* and placeholders from %simonsays_*% to %redgames_*%.
First Steps
After installation, here's how to get started:
Start Your First Game
/rg start reaction easy
This starts a Reaction game on easy difficulty. Players type the displayed word to win.
Open the Games Hub
/rg hub
Opens a GUI where players can browse and join available games.
View the Leaderboard
/rg leaderboard gui
Opens the leaderboard GUI showing top players.
Check Your Stats
/rg stats
View your wins, points, and streak information.
config.yml under auto-run.
Games Hub
The Games Hub is a unified interface for browsing and starting all game types.
Opening the Hub
/rg hub
Or use the alias: /rg arcade
Features
- Solo Arcade Games - Browse and start single-player puzzle games
- Multiplayer Games - View and join multiplayer lobbies
- Player Stats - See your tokens, points, and rank at a glance
- Difficulty Selection - Choose Easy, Normal, or Hard before starting
How It Works
- Open the hub with
/rg hub - Click on a game to start
- Select your difficulty (Easy, Normal, or Hard)
- Game begins immediately (solo) or lobby opens (multiplayer)
Configuration
Customize the hub layout and appearance in games-hub.yml.
Difficulty System
All arcade and multiplayer games support three difficulty levels with reward scaling.
Difficulty Levels
| Difficulty | Reward Multiplier | Challenge |
|---|---|---|
| Easy | 0.5x | More time, simpler puzzles |
| Normal | 1.0x | Standard settings |
| Hard | 2.0x | Less time, greater complexity |
How It Works
When you start a game from the Games Hub, a difficulty selection GUI appears. Choose your preferred difficulty and the game starts with those settings.
Reward Scaling
Both base rewards and time bonuses are multiplied by the difficulty multiplier:
- Easy: Base reward x 0.5
- Normal: Base reward x 1.0
- Hard: Base reward x 2.0
Per-Game Settings
Each game has difficulty-specific settings in its config file:
difficulties:
easy:
time-limit: 90
grid-size: 3
normal:
time-limit: 60
grid-size: 4
hard:
time-limit: 45
grid-size: 5
reward-multiplier:
easy: 0.5
normal: 1.0
hard: 2.0
Command Reference
All commands use /redgames or the alias /rg.
Game Control
| Command | Description |
|---|---|
/rg start <type> <difficulty> | Start a game |
/rg start <type> <difficulty> -f | Force start (bypass player minimum) |
/rg start <type> <difficulty> --with <content> | Start with custom content |
/rg stop | Stop the current game |
/rg status | View game status |
Player Commands
| Command | Description |
|---|---|
/rg hub | Open the Games Hub GUI |
/rg arcade | Open the Arcade GUI |
/rg play <game> [difficulty] | Start a solo arcade game directly |
/rg join <game> | Join a multiplayer game |
/rg leave | Leave current multiplayer game |
/rg leaderboard gui [type] [page] | Open leaderboard |
/rg stats [player] | View statistics |
/rg toggle | Toggle broadcast messages |
/rg vote | Open the active vote GUI |
/rg vote <number> | Cast a vote for the next game |
/rg challenges | Open the challenges GUI |
/rg boosters | Open the booster inventory GUI |
Shop & Currency
| Command | Description |
|---|---|
/rg shop | Open the shop GUI |
/rg cosmetics | Manage owned cosmetics |
/rg tokens | Check your token balance |
/rg tokens <player> | Check another player's tokens |
/rg tokens give <player> <amount> | Give tokens (admin) |
/rg tokens take <player> <amount> | Take tokens (admin) |
/rg tokens set <player> <amount> | Set tokens (admin) |
Administration
| Command | Description |
|---|---|
/rg reload | Reload all configurations |
/rg games list | List disabled game types |
/rg games enable <type> | Enable a game type |
/rg games disable <type> | Disable a game type |
/rg prob get [type] | View scheduler weights |
/rg prob set <type> <weight> | Set scheduler weight |
/rg log [page] | View game history |
/rg world blacklist add <world> | Blacklist a world |
/rg test <name> | Run test tasks |
/rg vote start | Start a vote manually |
/rg vote stop | Cancel the active vote |
/rg vote status | View current vote counts |
/rg challenges reset daily|weekly | Force challenge rotation |
/rg challenges reload | Reload challenge definitions |
/rg challenges status | View active challenge state |
/rg scripts reload | Reload YAML scripts |
/rg scripts list | List loaded scripts |
/rg scripts test <name> | Fire a script against yourself for testing |
/rg scripts validate | Reload scripts and report validation warnings |
The --with Flag
Use custom content instead of random selection:
# Custom trivia question
/rg start trivia easy --with What is 2+2?|4
# Multiple accepted answers
/rg start trivia easy --with Capital of France?|Paris,paris
# Custom reaction word
/rg start reaction hard --with supercalifragilistic
# Combine with force flag
/rg start trivia easy -f --with Your question here|answer
Permissions
Player Permissions
| Permission | Description | Default |
|---|---|---|
redgames.status | View game status | true |
redgames.leaderboard.gui | Open leaderboard GUI | true |
redgames.toggle | Toggle broadcasts | true |
redgames.stats | View statistics | true |
redgames.shop | Open shop GUI | true |
redgames.tokens | View own tokens | true |
redgames.cosmetics | Manage cosmetics | true |
redgames.arcade | Play arcade games | true |
redgames.play | Play solo arcade games directly | true |
redgames.boosters | Open booster inventory | true |
redgames.vote | Open vote GUI and cast votes | true |
redgames.challenges | Open challenges GUI | true |
Admin Permissions
| Permission | Description | Default |
|---|---|---|
redgames.admin | Full access | op |
redgames.start | Start games | op |
redgames.stop | Stop games | op |
redgames.reload | Reload config | op |
redgames.tokens.others | View others' tokens | op |
redgames.tokens.admin | Give/take/set tokens | op |
redgames.games | Enable/disable games | op |
redgames.prob | Set scheduler weights | op |
redgames.log | View game log | op |
redgames.world | Manage world filter | op |
redgames.arcade.bypass_cooldown | Bypass arcade cooldowns | op |
redgames.scripts | Manage YAML scripts | op |
Game Modes Overview
RedGames features three categories of games:
Chat Games (15)
Type-to-win games in chat. First correct answer wins.
- Reaction, Unscramble
- Trivia, Math, Algebra
- Guess Number, Unreverse
- Completion, Random
- Click Button, Hoverable
- Shopping List
- Clue Cracker, Naughty Nice
- Action (in-world tasks)
Arcade Games (8)
Solo GUI puzzle and casino games. Start anytime via /rg hub or /rg arcade.
- Memory Match - Find matching pairs
- Lights Out - Turn off all lights
- Sliding Puzzle - Arrange tiles in order
- Color Sort - Sort colors into tubes
- Whack-a-Mole - Click moles before they hide
- Blackjack - Play against the dealer
- Roulette - Bet and spin the wheel
- Slots - Match symbols for payouts
Multiplayer Games (5)
Join lobbies and compete against other players.
- Present Pick - Avoid the coal!
- Hot Potato - Pass before it explodes!
- Memory Pattern - Repeat the sequence
- Musical Chairs - Grab a chair!
- Reaction Grid - Fastest click wins
Game Types for Commands
Use these names with /rg start:
REACTION, UNSCRAMBLE, TRIVIA, MATH, ALGEBRA, GUESS_NUMBER, UNREVERSE, COMPLETION,
CLICK_BUTTON, HOVERABLE, SHOPPING_LIST, RANDOM, CLUE_CRACKER, NAUGHTY_NICE,
ACTION, PRESENT_PICK, HOT_POTATO, MUSICAL_CHAIRS, REACTION_GRID, MEMORY_PATTERN
Difficulties
Most games support three difficulties: easy, medium, hard
Each difficulty has different time limits, rewards, and content pools.
Chat Games
Chat games broadcast a challenge and the first player to type the correct answer wins.
Reaction
Type the displayed word exactly. Simple speed test.
/rg start reaction easy
Unscramble
Unscramble a jumbled word (e.g., "pplae" = "apple").
/rg start unscramble medium
Trivia
Answer a trivia question. Supports multiple accepted answers.
/rg start trivia hard
Math
Solve an arithmetic problem (addition, subtraction, multiplication, division).
/rg start math easy
Algebra
Solve single-variable equations or systems of equations. Higher difficulties add more variables and larger ranges.
/rg start algebra hard
Guess Number
Guess a random number within a range.
/rg start guess_number medium
Unreverse
Type the original word from its reversed form (e.g., "elppa" = "apple").
/rg start unreverse hard
Completion
Complete a word with missing letters (e.g., "a_p_e" = "apple").
/rg start completion medium
Random
Type a randomly generated string of characters.
/rg start random hard
Click Button
Click a button that appears in chat. Requires MiniMessage and chat channel.
/rg start click_button easy
Hoverable
Hover over text to reveal a hidden word, then type it. Requires MiniMessage.
/rg start hoverable medium
Shopping List
Memorize a list of items shown briefly, then type them all.
/rg start shopping_list easy
Clue Cracker
Solve bracketed clues like [COLD][3 BALLS][CARROT] = "snowman".
/rg start clue_cracker easy
Naughty Nice
Judge if a scenario is "naughty" or "nice". Fast-paced Christmas game!
/rg start naughty_nice hard
Arcade Games
Solo puzzle games played in a GUI. Open via /rg hub or /rg arcade. All arcade games support Easy, Normal, and Hard difficulties with reward scaling.
Memory Match
Classic memory card game. Flip cards to find matching pairs.
- Click two cards to flip them
- Match all pairs before time runs out
- Grid size: 3x2 (Easy) → 4x3 (Normal) → 4x4 (Hard)
Lights Out
Toggle lights to turn them all off. Clicking a light also toggles adjacent lights!
- Click buttons to toggle them and neighbors
- Goal: Turn all lights off
- Grid size: 3x3 (Easy) → 4x4 (Normal) → 5x5 (Hard)
Sliding Puzzle
Classic tile-sliding puzzle. Rearrange numbered tiles in order.
- Slide tiles into the empty space
- Arrange all tiles in numerical order
- Grid size: 3x3 (Easy) → 4x4 (Normal) → 5x5 (Hard)
Color Sort
Sort colored items into matching tubes.
- Move items between tubes to group matching colors
- Each tube can only contain one color when complete
- Complexity: 3 colors/5 tubes (Easy) → 4/6 (Normal) → 6/8 (Hard)
Whack-a-Mole
Classic arcade action. Click moles as they pop up!
- Moles appear randomly - click them before they hide
- Golden moles are worth 3x points
- Mole speed and score targets scale with difficulty
Blackjack
Play Blackjack against the dealer. Hit, stand, or double down before the dealer resolves their hand.
Roulette
Place bets on numbers, colors, or ranges, then spin the wheel. The GUI handles the spin animation and payout result.
Slots
Spin a three-reel slot machine and match symbols for configurable payout multipliers.
Difficulty & Rewards
Each difficulty has different time limits and reward multipliers:
| Difficulty | Time | Reward Multiplier |
|---|---|---|
| Easy | More time | 0.5x |
| Normal | Standard | 1.0x |
| Hard | Less time | 2.0x |
Cooldowns
Arcade games have cooldowns between plays. Admins can bypass with redgames.arcade.bypass_cooldown.
Multiplayer GUI Games
Games with lobbies where multiple players compete. Start with /rg start or join via /rg join. All multiplayer games support difficulty selection with reward scaling.
Present Pick
Multi-round elimination game. Pick wrapped presents and avoid the coal!
/rg start PRESENT_PICK easy
- Players join during lobby phase (click chat or
/rg join presentpick) - Each round: Pick a present from the grid
- Coal eliminates you; bonuses give points or extra lives
- Last player standing wins!
Hard difficulty adds extra coal slots for increased challenge.
Hot Potato
Pass the hot potato before it explodes!
/rg start HOT_POTATO easy
- Players join during lobby phase
- A "potato" item appears in a random player's inventory
- Click to pass it to another player
- When timer expires, holder is eliminated
- Last player standing wins!
Round times: 15s (Easy) → 10s (Normal) → 7s (Hard)
Memory Pattern
Simon Says-style memory game. Watch the pattern, then repeat it!
/rg start MEMORY_PATTERN easy
- Players join during lobby phase
- A pattern of colors/positions is shown
- Players must repeat the pattern correctly
- Pattern length increases each round
- Last player standing wins!
Musical Chairs
Classic party game. Compete for chairs when the music stops!
/rg start MUSICAL_CHAIRS easy
- Players join during lobby phase
- Music plays - players wait
- Music stops - click a chair to sit!
- One chair is removed each round
- Player without a chair is eliminated
Reaction Grid
Multi-player reaction competition. Fastest click wins!
/rg start REACTION_GRID easy
- Players join during lobby phase
- A grid of squares is displayed
- Squares highlight randomly - click them fast!
- Players compete for fastest reaction times
- Highest score wins!
Difficulty & Rewards
| Difficulty | Reward Multiplier |
|---|---|
| Easy | 0.5x |
| Normal | 1.0x |
| Hard | 2.0x |
Player Commands
/rg join <game>- Join a game lobby/rg leave- Leave current game
Action Tasks (In-World)
Action games require completing in-world tasks like breaking blocks, crafting, or killing mobs.
/rg start action hard
Supported Action Types
| Type | Description |
|---|---|
BREAK_BLOCK | Break specific blocks |
PLACE_BLOCK | Place specific blocks |
HARVEST_CROP | Harvest crops |
PLANT_SEED | Plant seeds or crops |
TNT_PRIME | Ignite TNT |
CRAFT_ITEM | Craft items |
SMELT_ITEM | Smelt items in furnace |
ENCHANT | Enchant items |
BUCKET_FILL | Fill a bucket |
BUCKET_EMPTY | Empty a bucket |
KILL_ENTITY | Kill mobs |
DAMAGE_ENTITY | Damage a specific entity type |
TAME_ENTITY | Tame animals |
SHOOT_BOW | Shoot arrows (optional: hit targets) |
SHOOT_CROSSBOW | Shoot a crossbow |
SHEAR | Shear sheep or other shearable entities |
BREED | Breed animals |
RIDE_ENTITY | Ride an entity |
MILK_COW | Milk cows with a bucket |
LEASH_ENTITY | Leash a mob with a lead |
FISH | Catch fish |
TRADE_VILLAGER | Complete villager trades |
CONSUME_ITEM | Eat/drink items |
DROP_ITEM | Drop items |
PICKUP_ITEM | Pick up dropped items |
JUMP | Jump a number of times |
SNEAK | Toggle sneak |
SWIM | Swim a distance |
SLEEP | Sleep in a bed |
ENTER_PORTAL | Enter a Nether or End portal |
THROW_SNOWBALL | Throw snowballs |
THROW_EGG | Throw eggs |
THROW_ENDER_PEARL | Throw ender pearls |
THROW_TRIDENT | Throw a trident |
RING_BELL | Ring a bell |
COLLECT_HONEY | Collect honey from a hive or nest |
OPEN_CHEST | Open a chest, trapped chest, or barrel |
TAKE_DAMAGE | Take damage |
MULTI_ACTION | Complete multiple tasks |
Example Configuration
- type: KILL_ENTITY
display: "Slay 5 zombies with a sword"
requirements:
amount: 5
types: ["ZOMBIE"]
weapon_type: "SWORD"
- type: MULTI_ACTION
display: "Survival combo"
requirements:
amount: 1
actions:
- type: BREAK_BLOCK
requirements:
amount: 5
material: "minecraft:oak_log"
- type: CRAFT_ITEM
requirements:
amount: 1
material: "minecraft:bread"
Main Configuration
File: plugins/RedGames/config.yml
Auto-Run Scheduler
auto-run:
enabled: true
min-interval: 300 # Minimum seconds between games
max-interval: 600 # Maximum seconds between games
difficulties: [easy, medium, hard]
enabled-games:
- REACTION
- UNSCRAMBLE
- TRIVIA
# Add more game types here
General Settings
settings:
minimum-players: 2 # Required players to start
broadcast-countdown: true
messages:
prefix: "&b[RedGames] "
use-minimessage: false # Enable for gradients/hover/click
Scheduler Weights
Control how often each game type is selected:
scheduler:
probabilities:
REACTION: 3 # Higher = more likely
UNSCRAMBLE: 2
TRIVIA: 2
MATH: 1
Voting
voting:
enabled: false
mode: auto
post-game-delay: 5
vote-duration: 20
option-count: 3
show-live-counts: true
allow-vote-change: true
min-players: 2
countdown-display: BOSS_BAR
option-history: 2
extra-votes:
redgames.vote.vip: 2
Daily & Weekly Challenges
challenges:
enabled: true
daily-count: 3
weekly-count: 2
daily-history: 3
weekly-history: 2
broadcast-on-reset: true
reset:
daily:
time: "00:00"
weekly:
day: MONDAY
time: "00:00"
World Filtering
features:
world-filter:
mode: blacklist # blacklist or whitelist
worlds:
- world_nether
- world_the_end
Game Configuration Files
Each game type has its own config in plugins/RedGames/games/
Config File Locations
Solo Arcade Games
games/arcade/memory-match.ymlgames/arcade/lights-out.ymlgames/arcade/sliding-puzzle.ymlgames/arcade/color-sort.ymlgames/arcade/whack-a-mole.ymlgames/arcade/blackjack.ymlgames/arcade/roulette.ymlgames/arcade/slots.yml
Multiplayer Games
games/multigui/present-pick.ymlgames/multigui/hot-potato.ymlgames/multigui/memory-pattern.ymlgames/multigui/musical-chairs.ymlgames/multigui/reaction-grid.yml
Other Config Files
games-hub.yml- Games Hub GUI layoutarcade.yml- Solo arcade manager settingsshop.yml- Token shop configurationchallenges/daily.yml- Daily challenge definitionschallenges/weekly.yml- Weekly challenge definitionsscripts/*.yml- YAML automation scripts
Common Settings
settings:
min-players: 2
countdown-seconds: 5
case-sensitive: false
ignore-diacritics: true
broadcast-winner: true
enabled-difficulties: [] # Empty = all enabled
difficulties:
easy:
time-limit: 15
medium:
time-limit: 12
hard:
time-limit: 8
Rewards
rewards:
points:
enabled: true
base-amount: 10
time-bonus:
enabled: true
per-second-remaining: 2
commands:
enabled: true
commands:
- "say %player% won!" # Always runs
- command: "give %player% diamond 1"
chance: 25 # 25% chance
economy:
enabled: false
amount: 100.0
Custom Messages
messages:
game:
starting: "&eGame starts in &6%seconds%s"
display: "&fType: &b%word%"
cancelled: "&cNot enough players"
time-up: "&cTime's up! Answer: %answer%"
player:
won: "&a%player% &7won!"
won-points: "&a+%points% points"
Effects & Display
Configure how game events are displayed to players.
Display Channels
effects:
channels:
countdown: ["title"]
start: ["title"]
prompt: ["title"] # Options: title, chat, actionbar, bossbar
win: ["title"]
time_up: ["title"]
Titles
effects:
titles:
countdown:
enabled: true
title: "&e&l%seconds%"
subtitle: "&7Get ready"
fade-in: 5
stay: 10
fade-out: 5
Sounds
effects:
sounds:
enabled: true
countdown_tick: "minecraft:block.note_block.hat,0.6,1.8"
start: "minecraft:ui.toast.in,1.0,1.0"
win: "minecraft:ui.toast.challenge_complete,1.0,1.0"
Win Particles
effects:
particles:
win:
enabled: true
type: "FIREWORKS_SPARK"
count: 60
Boss Bar Timer
Boss bars are isolated by context: chat games use a global timer, solo arcade games use player-specific timers, and multiplayer GUI sessions use group timers. This prevents overlapping games from fighting over the same boss bar.
effects:
bossbar:
timer:
enabled: true
title: "&e%time%s remaining"
color: YELLOW
style: SOLID
Win Holograms
effects:
hologram:
win:
enabled: true
duration-ticks: 120
lines:
- "&6Winner: &e%player%"
- "&7%game% (%difficulty%)"
MiniMessage Formatting
Enable MiniMessage for gradients, hover text, and click actions.
Enable MiniMessage
messages:
use-minimessage: true
Gradients
# Two-color gradient
prefix: "<gradient:#ff0080:#ffc800>[RedGames]</gradient> "
# Multi-color gradient
won: "<gradient:#00ff00:#ffff00:#ff0000>%player% won!</gradient>"
# Rainbow effect
display: "<rainbow>Type this word!</rainbow>"
Hover & Click Actions
Only work in chat messages (not titles/actionbar):
# Hover tooltip
won: "<hover:show_text:'Winner!'><gold>%player% won!</gold></hover>"
# Click to run command
help: "<click:run_command:'/rg leaderboard gui'>View Leaderboard</click>"
# Click to copy
display: "<click:copy_to_clipboard:'%word%'>Click to copy</click>"
& color codes and #hex colors continue to work when MiniMessage is enabled.
Voting System
The voting system lets players choose which game runs next. Votes can open automatically after games or be started manually by admins.
Player Flow
- A game ends
- RedGames waits for the configured post-game delay
- A vote opens with several game and difficulty options
- Players vote through chat clicks,
/rg vote <number>, or the vote GUI - The most-voted option starts when the timer expires
Commands
| Command | Description |
|---|---|
/rg vote | Open the active vote GUI |
/rg vote <number> | Vote for an option |
/rg vote start | Admin: start a vote manually |
/rg vote stop | Admin: cancel the active vote |
/rg vote status | Admin: view options and vote counts |
Configuration
voting:
enabled: true
mode: auto # auto or manual
post-game-delay: 5
vote-duration: 20
option-count: 3
show-live-counts: true
allow-vote-change: true
min-players: 2
countdown-display: BOSS_BAR # BOSS_BAR, ACTION_BAR, or NONE
reminder-at: 10
option-history: 2
extra-votes:
redgames.vote.vip: 2
redgames.vote.mvp: 3
options:
pool: [] # Empty = build from enabled auto-run games
Weighted Votes
Players with configured permission nodes can have their vote count for more than one vote. For example, a player with redgames.vote.mvp can count as 3 votes if that permission is configured under voting.extra-votes.
Daily & Weekly Challenges
Challenges give players rotating objectives that reset on a schedule. Progress is tracked per-player and completion can trigger YAML script rewards.
How It Works
- Daily and weekly challenge definitions live in
plugins/RedGames/challenges/ - RedGames picks active challenges using weighted random selection
- History settings help avoid repeating the same challenges too often
- Players open the GUI with
/rg challenges - Completing a challenge fires
on_daily_completeoron_weekly_complete - Completing all active daily challenges fires
on_daily_sweep
Objective Types
| Objective | Description |
|---|---|
WIN_GAMES | Win a number of games |
PLAY_GAMES | Participate in a number of games |
WIN_STREAK | Reach a target win streak |
EARN_POINTS | Earn a target number of points |
WIN_FAST | Win under a time threshold |
WIN_TYPES | Win using distinct game types |
WIN_DIFFICULTIES | Win across distinct difficulties |
PARTICIPATE | Be online/participating when games end |
Challenge Definition Example
win_3_action:
name: "Action Star"
description: "Win 3 Action games"
icon: DIAMOND_SWORD
difficulty: medium
objective:
type: WIN_GAMES
amount: 3
game_type: ACTION
weight: 8
Admin Commands
| Command | Description |
|---|---|
/rg challenges | Open the challenges GUI |
/rg challenges reset daily | Force a daily challenge rotation |
/rg challenges reset weekly | Force a weekly challenge rotation |
/rg challenges reload | Reload challenge definitions |
/rg challenges status | View active challenges and reset timers |
YAML Scripting
The scripting system lets server owners automate rewards, messages, commands, effects, boosters, and conditional logic without writing Java.
Script Files
Scripts live in plugins/RedGames/scripts/*.yml. An example file is created automatically on first startup.
Script Structure
streak_reward:
trigger: on_streak_reached
priority: 10
conditions:
- streak: "== 5"
actions:
- broadcast: "&6%player% is on a 5-win streak!"
- give_points: 250
- play_fireworks: true
Triggers
| Trigger | When It Fires |
|---|---|
on_game_win | A player wins a game |
on_game_lose | A player loses an arcade/game session |
on_game_start | A game starts |
on_game_end | A game ends |
on_game_timeout | A game times out |
on_streak_reached | A player's streak increases |
on_streak_broken | A player's streak is reset |
on_daily_complete | A daily challenge is completed |
on_weekly_complete | A weekly challenge is completed |
on_daily_sweep | A player completes all active dailies |
on_booster_activate | A booster activates |
on_first_win_of_day | A player gets their first win of the day |
on_leaderboard_top | A player reaches a top leaderboard position |
Common Conditions
conditions:
- game_type: [REACTION, TRIVIA]
- difficulty: hard
- permission: redgames.vip
- streak: ">= 3"
- random: 10
- cooldown: 3600
- placeholder: "%vault_eco_balance% >= 1000"
Common Actions
actions:
- give_points: 100
- multiply_points: 1.5
- give_money: 500
- send_message: "&aBonus reward!"
- send_actionbar: "&eStreak bonus active"
- broadcast: "&6%player% hit a bonus!"
- run_command: "give %player% diamond 1"
- play_sound:
sound: ENTITY_PLAYER_LEVELUP
volume: 1.0
pitch: 1.0
- give_booster:
type: POINT_MULTIPLIER
multiplier: 2.0
duration: 300
Commands
| Command | Description |
|---|---|
/rg scripts reload | Reload all script files |
/rg scripts list | List loaded scripts |
/rg scripts test <name> | Run one script against yourself |
/rg scripts validate | Reload and report validation warnings |
Shop System
Players earn tokens from winning and spend them in the shop. File: shop.yml
Open the Shop
/rg shop
Token Configuration
shop:
enabled: true
currency:
name: "Tokens"
symbol: "T"
tokens:
per-win:
enabled: true
base-amount: 5
difficulty-multiplier:
easy: 1.0
medium: 1.5
hard: 2.0
Shop Items
items:
diamond_kit:
category: rewards
display-name: "&bDiamond Kit"
description:
- "&7Get diamond tools!"
icon: DIAMOND
price: 100
one-time: true # Can only buy once
commands:
- "give %player% diamond_pickaxe 1"
golden_apple:
category: rewards
display-name: "&6Golden Apple"
icon: GOLDEN_APPLE
price: 25
stock: 10 # Limited stock
item:
material: GOLDEN_APPLE
amount: 1
Admin Token Commands
/rg tokens give <player> <amount>
/rg tokens take <player> <amount>
/rg tokens set <player> <amount>
Cosmetics
Cosmetics customize how players appear when winning games.
Cosmetic Types
- TITLE - Displayed before name: "[Champion] Steve won!"
- PREFIX - Alternative prefix style
- PARTICLE - Custom win particles (e.g., hearts, flames)
Managing Cosmetics
/rg cosmetics
Opens a GUI to view, equip, and unequip owned cosmetics.
Configuring in shop.yml
items:
title_champion:
category: cosmetics
display-name: "&6Champion Title"
description:
- "&ePreview: &6[Champion] &7YourName"
icon: GOLD_INGOT
price: 100
one-time: true
cosmetic:
type: TITLE
id: champion
display: "&6[Champion]"
particle_hearts:
category: cosmetics
display-name: "&cHeart Particles"
icon: RED_DYE
price: 75
one-time: true
cosmetic:
type: PARTICLE
id: hearts
particle: HEART
count: 30
Boosters
Temporary bonuses that are purchased into a booster inventory and activated when the player chooses. Open the booster GUI with /rg boosters.
Booster Types
- POINT_MULTIPLIER - Multiply points earned for a timed duration
- EXTRA_TIME - Add bonus seconds to game timers for a set number of uses
- STREAK_PROTECTION - Protect your win streak from losses for a set number of uses
Inventory & Activation
- Buying a booster adds it to the player's booster inventory instead of activating it immediately
- The GUI shows inventory counts, active status, remaining time, and remaining uses
- Players left-click a booster in the GUI to activate it
- Point multipliers queue if one is already active
- Extra Time and Streak Protection stack their remaining uses
Configuration in shop.yml
items:
double_points:
category: boosters
display-name: "&6Double Points"
icon: EXPERIENCE_BOTTLE
price: 50
booster:
type: POINT_MULTIPLIER
multiplier: 2.0
duration: 3600 # 1 hour in seconds
extra_time:
category: boosters
display-name: "&bExtra Time"
icon: CLOCK
price: 30
booster:
type: EXTRA_TIME
bonus-seconds: 5
uses: 3 # 3 activations
streak_shield:
category: boosters
display-name: "&dStreak Shield"
icon: SHIELD
price: 40
booster:
type: STREAK_PROTECTION
uses: 1
Win Streaks
Players build streaks by winning consecutive games.
How Streaks Work
- Win - Streak increases by 1
- Participate but lose - Streak resets to 0
- Don't participate - Streak unchanged
- Have STREAK_PROTECTION - Streak protected on loss
Configuration
streaks:
announce: true
min-streak: 2
message: "&c&e%player% is on a %streak% win streak!"
Best Streak
Your best streak is tracked separately in stats. View with /rg stats.
PlaceholderAPI
Use %redgames_<placeholder>% in any plugin that supports PlaceholderAPI.
Player Stats
%redgames_total_score%- Total points%redgames_tokens%- Token balance%redgames_overall_rank%- Overall rank%redgames_<type>_score%- Score for game type%redgames_<type>_rank%- Rank for game type
Game State
%redgames_current_game_type%- Current game type%redgames_time_until_game%- Seconds until next game%redgames_game_win_time%- Last win time
Leaderboard (Top-N)
%redgames_overall_player_1%- #1 player name%redgames_overall_score_1%- #1 player score%redgames_<type>_player_N%- Nth player for type
Challenges
%redgames_daily_1_name%- Active daily challenge name%redgames_daily_1_progress%- Progress as current/required%redgames_daily_1_percent%- Progress percentage%redgames_daily_1_complete%- true/false completion state%redgames_weekly_1_name%- Active weekly challenge name%redgames_weekly_1_progress%- Weekly progress as current/required%redgames_daily_reset%- Time until daily reset%redgames_weekly_reset%- Time until weekly reset%redgames_daily_sweep%- true if all active dailies are complete
Economy (Vault)
Optional money rewards via Vault integration.
Per-Game Config
rewards:
economy:
enabled: true
amount: 100.0
broadcast-message: true
Global Defaults
# In config.yml
economy:
enabled: false
rewards:
reaction: 100.0
trivia: 150.0
Storage Backends
Performance Guidance
RedGames is lightweight for normal gameplay and is suitable for larger servers when using SQLite or MySQL storage. For high-population servers, avoid YAML storage because large player files and leaderboard scans can become slower over time.
| Backend | Best For | Notes |
|---|---|---|
YAML | Small/medium servers, testing | Simple setup, but saves and leaderboard scans can slow down as player data grows. |
SQLITE | Medium/large single-server setups | Better structured storage without needing a separate database server. |
MYSQL | Large servers and production networks | Recommended for high player counts, frequent leaderboard use, and long-term data growth. |
YAML (Default)
Player stats, tokens, boosters, and challenge progress are stored under plugins/RedGames/data/.
Stored Data
- Player stats, points, wins, streaks, and best times
- Token balances, cosmetics, booster inventory, and active boosters
- Daily/weekly challenge progress and active challenge state
- Script cooldowns
SQLite
File-based SQL database. Good for medium servers.
storage:
type: SQLITE
sqlite:
file: "redgames.db"
MySQL
For large servers or multi-server setups.
storage:
type: MYSQL
mysql:
host: localhost
port: 3306
database: redgames
username: root
password: ""
table-prefix: rg_
Troubleshooting
Economy Not Working
- Ensure Vault is installed
- Ensure an economy plugin is installed (e.g., EssentialsX)
- Enable
rewards.economy.enabled: truein game configs
Placeholders Empty
- Install PlaceholderAPI
- Identifier is
redgames(not simonsays) - Some values are blank when no game is active
Scheduler Not Running
- Check
auto-run.enabled: true - Ensure enough players are online (
settings.minimum-players) - Check that game types are enabled in
enabled-games
Voting Not Opening
- Check
voting.enabled: true - Check
voting.mode; manual mode only opens votes when an admin runs/rg vote start - Ensure enough players are online for
voting.min-players - Verify the voting option pool or auto-run enabled games contains valid game types
Challenges Not Progressing
- Check
challenges.enabled: true - Run
/rg challenges statusto confirm active challenges are selected - Check the objective filters for game type and difficulty
- Run
/rg challenges reloadafter editing challenge files
Scripts Not Running
- Run
/rg scripts validateand check the console for warnings - Make sure the script file is in
plugins/RedGames/scripts/and ends with.yml - Check the trigger name, conditions, cooldowns, and permissions
Games Not Starting
- Use
-fflag to force start:/rg start reaction easy -f - Check if game type is disabled in
games.disabled - Check world filter settings
Frequently Asked Questions
Q: Will my data from SimonSays transfer to RedGames?
A: Yes! RedGames automatically migrates all player data (stats, tokens, ranks) on first launch. No manual steps required.
Q: Do I need to update my permissions after upgrading?
A: Yes. Update simonsays.* to redgames.* in your permissions plugin.
Q: What about my PlaceholderAPI placeholders?
A: Update %simonsays_*% to %redgames_*% in your scoreboard/hologram plugins.
Q: How do I use gradients in messages?
A: Enable messages.use-minimessage: true, then use <gradient:#color1:#color2>text</gradient>
Q: Where do I add custom words/questions?
A: In plugins/RedGames/games/<type>/wordlists/ or the game's YAML file.
Q: What's the difference between Points and Tokens?
A: Points are for leaderboards. Tokens are currency for the shop. Both are earned from winning.
Q: Do boosters activate when I buy them?
A: No. Boosters go into your booster inventory. Open /rg boosters to activate them when you are ready.
Q: How are challenge rewards configured?
A: Challenges track progress only. Rewards are handled by YAML scripts using on_daily_complete, on_weekly_complete, and on_daily_sweep triggers.
Q: Can players influence the next game?
A: Yes. Enable voting.enabled and players can vote after games or during manually started vote windows.
Q: How does difficulty affect rewards?
A: Easy = 0.5x, Normal = 1.0x, Hard = 2.0x. Both base rewards and time bonuses are multiplied.
Q: Is RedGames performant on larger servers?
A: Yes, with the right storage backend. Gameplay is lightweight, but larger servers should use SQLite or MySQL instead of YAML. MySQL is recommended for high player counts, frequent leaderboard use, or long-term production servers.
Q: Can cosmetics conflict with chat plugins?
A: No. Cosmetics only appear in RedGames win messages, not regular chat.
Q: How do I reset a player's data?
A: For YAML, edit data/players.yml. For SQL, use database commands.
Support
Discord: discord.gg/5QzFAXQJuS