Lucky Wheel
New block: a wheel of fortune trap. Dance on it to spin: death, coins, or nothing. Risk rises with every spin. Early state. Online, all players need the mod.Lucky Wheel
Adds a new block to Ultimate Chicken Horse: a wheel of fortune you can gamble on mid-run.
Early state. This mod is in early development. Expect bugs, missing features and changes between versions. Feedback and bug reports are welcome.
Works in local and online games. Online, every player in the lobby needs this mod in the same version.
How it works
The Lucky Wheel is its own block with hand-drawn art: a wooden bench, three blocks wide, with a wheel of fortune standing on it between two supports.
- Pick the block from the Party Box, or from the inventory book in Creative and Free Play, and place it like any other block.
- Walking across it or standing on it is safe. It behaves like a normal bench.
- Dance on top of it to spin the wheel. You are frozen in place for about three seconds while it spins and slows down.
- Where the pointer stops decides what happens:
| Field | Result |
|---|---|
| Red | You die. The kill counts for whoever placed the block. |
| Green | You are released and win coins. |
| Blue / grey | You are released, nothing else happens. |
To spin again, stop dancing and start again.
Coins
Coins from the wheel work like regular coins: they float above your head and only score once you reach the goal. If you die first, they are lost. If you carry several, you see that many above your head.
Risk levels
Every further spin by the same player within one round is more dangerous and more rewarding. The pointer colour shows your level.
| Your spin in this round | Pointer | Death fields | Green pays |
|---|---|---|---|
| 1st | white | 1 of 4 | 1 coin |
| 2nd | orange | 2 of 4 | 2 coins |
| 3rd and later | red | 3 of 4 | 3 coins |
The level belongs to each player individually. What other players have spun does not change your odds. Levels reset every round.
One player at a time
Only one player can use the wheel at a time. While it is spinning it ignores everyone else, and as long as another player is still standing on the block, the wheel waits until they have left.
Online
The host decides who gets the wheel and rolls the result, using the risk level of that particular player. Everyone then sees the same spin land on the same field, and everyone sees the coins.
The mod checks through the Steam lobby that all players have it in the same version. If someone does not, each machine handles the wheel on its own and the block is not put into the Party Box.
Configuration
File: BepInEx/config/mpb27.uch.luckywheel.cfg
Wheel
| Setting | Default | Meaning |
|---|---|---|
Wheel.RequireDance |
true | The wheel only spins when a player dances on the block. false = landing on it is enough. |
Wheel.SpinDuration |
3 | Spin time in seconds |
Wheel.DeathFields |
1 | Death fields out of 4 on the first spin |
Wheel.CoinFields |
1 | Coin fields out of 4 |
Wheel.CoinNeedsGoal |
true | Coins only score at the goal. false = the points are awarded immediately. |
Wheel.RiskLevels |
true | Risk levels on or off |
Wheel.MaxRiskLevel |
2 | Highest risk level (0 = first spin) |
Wheel.ReleaseLaunchStrength |
0 | Upward push on release, 0 = none |
Wheel.SizeRelativeToBlock |
0.155 | Wheel radius as a fraction of the block width |
Wheel.HeightAboveBlock |
0 | Gap between the top of the block and the bottom of the wheel |
Block
| Setting | Default | Meaning |
|---|---|---|
Block.PartyBoxDropChance |
0.125 | Chance per round that the block is in the Party Box. 0.125 = about every 8th round, 1 = always, 0 = never. |
Block.ShowInInventory |
true | Adds the block to the inventory book |
Block.ShapeTemplate |
Triple Block | Existing block that provides size and collision (not the look) |
Other
| Setting | Default | Meaning |
|---|---|---|
General.Enabled |
true | Turns the whole mod on or off |
Online.Sync |
true | Host-coordinated wheel in online games |
Debug.Hotkey |
F8 | Test spin of all wheels in the level |
Custom graphics
All graphics are PNG files next to the DLL (or in a textures subfolder) and can be replaced: block.png, wheel_1_1.png, wheel_2_1.png, wheel_3_1.png, pointer.png and coin.png.
For the wheels, the position of the fields matters, because the mod decides by position: field 0 is top right, then counter-clockwise (top left, bottom left, bottom right). Death fields come first, then the coin field, the rest is neutral. The wheel turns around the centre of the image.
block.txt tells the mod which part of block.png lies on the solid block and where the wheel stands.
Known limitations
- Online, every player needs the mod in the same version. Without it a client cannot display the block.
- The online coordination has not been tested much yet. For the other players the wheel starts a moment later than for the host (network delay), and a player who starts dancing is frozen for an instant before the host confirms.
- The block has no entry of its own in the block frequency rules. How often it appears in the Party Box is set with
Block.PartyBoxDropChance. - In the inventory book the block is placed automatically on the page with the most free space, so its position may look a little off.
- Saved levels store it as a regular three-wide block.
- The drawn bench is flatter than the solid block underneath: the lower part of the block is solid but not drawn.
- If the pick timer runs out and the game picks automatically, the player probably receives a regular block instead.
- The coins are not real coin objects: they cannot be stolen and have no sound.
- Log messages and config descriptions are in German.
Feedback
Found a bug or have an idea? Tell us here: saargaming.com/mod-feedback
