About SlotMachineJP
This plugin is for CARBON only.
https://www.youtube.com/watch?v=xHyw3WcolBM
==================================================
SlotMachineJP - Japanese Pachislot for Rust
==================================================
SlotMachineJP transforms Rust's vanilla slot machine into a full Japanese
"pachislot" (AT-type) gaming experience. Using Harmony patches, it replaces the
machine's spin calculation and payout logic with a complete game cycle built
around a Chance Zone (CZ), an Assist Time (AT) bonus, continuation battles,
add-on (level-up) zones, a ceiling, and a rare premium "Freeze" production.
If your players are bored of the plain Rust slot machine, this brings the real
tension and rhythm of a Japanese slot hall to your server.
--------------------------------------------------
The Game Cycle
--------------------------------------------------
Every machine moves through a sequence of internal states. Players never know
exactly where they are - that uncertainty is the whole point.
- Normal
The base game. Small symbol roles (Bell, Cherry, Watermelon, Rare) are drawn
on each spin. Cherry and Watermelon roles roll for Chance Zone entry, with the
odds set by a hidden internal mode (see below). A rare role can also kick
straight into the Chance Zone or even a direct AT.
- Forewarning (Zenchou)
A short "something is coming" production that builds anticipation before a
Chance Zone is confirmed.
- Chance Zone (CZ)
A 5 to 30 game battle for the AT bonus. During CZ, Cherry and Watermelon roles
award coin bonuses, and the outcome decides how many AT sets the player wins
(1, 2, or 4). Higher settings win more often and win more sets.
- AT (Assist Time)
The main payout bonus. Sevens line up at a very high rate. Each set runs a
fixed number of games; sub-roles during AT can trigger add-on (extra) games
and route the player into the Special Add-On zone.
- AT Judge
The set-continuation battle. At the end of each set, a continuation draw
decides whether the AT keeps going. Continuation rates scale with the setting.
- Special Add-On Zone
A short, dedicated level-up zone that piles on extra AT games.
- AT Ending
A closing production before the machine settles back to Normal and rolls its
next post-bonus mode.
--------------------------------------------------
Key Features
--------------------------------------------------
* SIX SETTINGS (1-6), like a real pachislot
Each machine can be assigned a setting from 1 to 6. Higher settings improve CZ
entry, CZ success, AT continuation rates, add-on volume, and overall RTP.
Every probability is data-driven and fully editable.
* HIDDEN INTERNAL MODE SYSTEM (Low / Normal / High / SuperHigh)
Behind the scenes, each machine drifts between four modes that control how
easily it enters the Chance Zone. Optional "mode hint" productions tease the
player about which mode they might be in - without ever revealing the truth.
* CEILING (Tenjou)
If a machine goes too long without a bonus, a guaranteed Chance Zone is forced
at the ceiling (default 800 games), so a cold machine always pays off
eventually.
* PREMIUM FREEZE PRODUCTION
A rare reel-freeze event (default 1/8192) triggers a special cinematic and a
guaranteed long AT (default 200 games) - the top-tier "jackpot moment."
* DATA COUNTER + DIFFERENCE GRAPH UI
Just like a real slot hall, every machine tracks and displays its own history:
total spins, total in/out, net difference, RTP (payout rate), current dry-spell
count, ceiling counter, and a full bonus history. Players can toggle a live
data panel and a net-difference ("sagai") graph from the on-machine UI.
* PERSISTENT PER-MACHINE STATISTICS
All machine data is saved to disk and survives restarts. Daily counters
(today's spins, payout, investment, bonus count) are tracked alongside
lifetime totals. Stale machine data is cleaned up automatically.
* IN-GAME PRODUCTION & EFFECTS
Custom LCD/status displays, anticipation and mode-hint screens, freeze
cinematics, and Rust's native payout / jackpot effects tie the experience
together.
* MULTIPLE SKINS
Machines can be handed out and spawned with different workshop skins, so you
can run visually distinct cabinets.
* FULLY DATA-DRIVEN CONFIGURATION
All gameplay numbers live in an external JSON tables file - symbol payouts,
per-setting lotteries, mode transition tables, CZ entry/success rates, AT
initial/continuation/add-on tables, ceiling games, freeze rate, and more. Tune
the entire RTP curve without touching code, then hot-reload it in place.
* ADMIN & DEBUG TOOLKIT
A complete command suite for spawning, converting, configuring, inspecting,
and resetting machines, plus debug tools to force states, modes, ceiling
values, and freezes for testing.
--------------------------------------------------
Symbols & Payouts
--------------------------------------------------
Reel faces map to familiar Rust items. Lining up three of a kind pays a
configurable multiplier (defaults shown):
Charcoal x3, Wood x3, Rope x4, Bandage x5, Low Grade Fuel x6,
Sulfur Ore x7, Scrap x10, Lucky Seven x15
Low Grade Fuel also pays a small "single face" award. All payout values and the
global payout multiplier are configurable per setting.
--------------------------------------------------
Commands
--------------------------------------------------
Item:
/slotjp give [1-6] Give yourself a slot machine item (alias: /giveslot)
The optional number presets the machine's setting.
Management:
/slotjp spawn <1-6> Spawn a configured machine in front of you
/slotjp convert [1-6] Convert an existing vanilla machine into a managed one
/slotjp list List every managed machine (NetId, position, setting, state, spins)
/slotjp setting [NetId] <1-6> Change a machine's setting
/slotjp info [NetId] Show a machine's detailed stats
/slotjp stats Show a server-wide summary
Data:
/slotjp reset [NetId] Reset one machine's data
/slotjp resetall Reset all machine data
/slotjp reload Reload config and tables
Debug / testing:
/slotjp debug on|off Toggle the on-screen debug overlay
/slotjp freeze Force a freeze on the next spin
/slotjp state <name> Force a state (Normal / CZ / AT / ATJudge / SpecialAddOn / ATEnding)
/slotjp mode <name> Force an internal mode (Low / Normal / High / SuperHigh)
/slotjp ceiling <number> Set the ceiling counter
On-machine console commands (used by the UI buttons):
slotjp_data Toggle the data/statistics panel
slotjp_graph Show the net-difference graph
slotjp_closedata Close the data and graph panels
Target resolution: any command that acts on a specific machine resolves its
target as NetId argument > the machine you are looking at > the machine you are
seated on. So you can administer a machine by aiming at it or by sitting down.
--------------------------------------------------
Permissions
--------------------------------------------------
slotmachinejp.give Use /slotjp give (and the /giveslot alias)
slotmachinejp.admin Use every other /slotjp subcommand
slotmachinejp.debug See the in-game debug overlay (after /slotjp debug on)
--------------------------------------------------
Requirements & Notes
--------------------------------------------------
- CARBON only (this is a Carbon plugin and uses Harmony patches).
- Built on Rust's native slot machine entity, so machines behave like normal
deployables: they can be picked up / removed the same way as a vanilla slot
machine.
- All probabilities and payouts ship with sensible defaults and are fully
configurable, so you can dial the house edge / RTP to fit your economy.