Fox'n Flock
A session-based game where the player runs a fox around a field catching goats while a shepherd gives chase.
The whole run is drawn from the committed seed at bet commit — how many catches will bank, and what each encounter holds. Playing reveals that run; it does not influence it.
| Property | Value |
|---|---|
| Game ID | fox-n-flock |
| Engine version | 3.3.0 |
| Type | session_based |
| Volatility | High |
| Max Win | 100× bet |
| RTP variants | 91.97% / 93.95% / 96.00% / 96.95% |
Game Mechanic
- Player places a bet
- The RNG draws a catch target and the encounter at every slot of the run
- A 960×540 field is generated with 8 goats and 1 shepherd
- Each catch reveals the next pre-drawn slot and adds its multiplier
- Reaching the catch target banks the pot automatically — there is no cash-out
- A killer encounter wipes the pot and ends the run
Which goat the player chases makes no difference to the payout. Multipliers come from the pre-drawn run, not from the goat; a goat's displayed multiplier is cosmetic and is never sent to the client. Asserted by test — "pays the same regardless of WHICH goat the player chases".
Field Layout
- Dimensions: 960×540 pixels
- Goats: 8 standard goats with individual multipliers
- Shepherd: 1 AI-controlled shepherd
- Fox: Player-controlled character
- Tick Rate: 60Hz server-authoritative
Catches
A catch does not pay for the goat — it reveals the next slot of the run:
runMultiplier = Σ (multiplier drawn for each slot revealed)
payout = round(runMultiplier × 100) × betAmount / 100The slot multipliers are drawn from the committed seed before the field is even built. The number floating over a goat on screen is chosen for the animation and never reaches the server.
Killer Goat
A killer is an encounter, not a particular goat:
- The run's slots are drawn in advance; one may hold a killer
- Hitting it wipes the entire pot and ends the run
- No goat is distinguishable from another, because the killer is not attached to a goat — it belongs to the position in the run
Shepherd AI
The shepherd patrols, spots the fox, gives chase and catches it.
Being caught costs nothing. He is pressure and theatre, not a penalty. Earlier versions charged 15% of the bet per hit — a reflex tax that pushed slower players below the advertised RTP, and one reported by the client, so a modified client paid nothing while honest players paid. Asserted by test — "charges nothing for a shepherd hit".
There is likewise no idle penalty. Pausing to think costs nothing.
| State | Description |
|---|---|
patrol | Moving along a path |
alert | Has noticed the fox |
chase | Actively pursuing |
sleeping | The golden flock bonus phase is running |
Golden flock
A jackpot encounter wins a bonus phase of 4 free catches at ×3. It happens in 15.4% of runs, and it is worth the same every time:
- Free — they don't count towards your catch target. The round gets longer.
- Safe — no killer can land during the phase.
- Banked — what the phase pays is yours even if a killer strikes afterwards.
The shepherd sleeps for exactly the phase and wakes as the last free catch lands.
Why it is a fixed phase
Earlier versions boosted every remaining catch instead, so a jackpot was worth whatever happened to be left — 2.60× bet at the first catch of a twelve-catch run and 0.312× at the last, behind an identical banner. A quarter of jackpots got three catches or fewer, and one landing on the final catch announced itself and then ended the round.
A fixed phase pays 1.80× bet wherever it lands. RTP is unchanged: the multiplier values were re-solved downwards to fund it, so the money moved rather than grew.
RTP Variants
Every probability is the same in all four variants. Only the multiplier values change. That is deliberate: the RNG request must not reveal which variant a round is running, and a shared engine instance cannot be trusted to know the variant at draw time.
| Shared across all variants | Value |
|---|---|
| Killer encounter | 7.00% per slot |
| Jackpot encounter | 2.50% per slot |
| Normal catch | 90.50% per slot |
| Catch target | 5–18, mean 9.2 |
| Runs that turn golden | 15.4% |
| Hit rate | 56.80% |
| Variant | Slot multiplier values | Exact RTP | SD |
|---|---|---|---|
| RTP_92 | 0.03, 0.07, 0.16, 0.29, 0.90, 2.41 | 91.97% | 1.361 |
| RTP_94 | 0.03, 0.08, 0.15, 0.30, 0.92, 2.43 | 93.95% | 1.384 |
| RTP_96 | 0.03, 0.09, 0.14, 0.31, 0.94, 2.46 | 96.00% | 1.410 |
| RTP_97 | 0.03, 0.08, 0.16, 0.32, 0.93, 2.52 | 96.95% | 1.428 |
A bonus-phase catch pays three times the value shown.
Values are drawn with weights 42, 28, 16, 9, 4, 1 (per 100). Shepherd speed is presentation and is not tuned per variant — he cannot take money.
Player Actions
The fox has two actions, sent via WebSocket:
move(dx, dy)
Move the fox by a delta vector. Rate-limited to 60Hz.
{
"type": "action",
"payload": {
"action": "move",
"dx": 5.0,
"dy": -3.0
}
}interact(goatId)
Attempt to catch a nearby goat. The goat must be within interaction range. This action is free (no additional cost).
{
"type": "action",
"payload": {
"action": "interact",
"goatId": "goat-3"
}
}End Conditions
| Condition | Result |
|---|---|
| Catch target reached | Pot banks automatically |
| Killer encounter | Pot wiped, run over |
| Shepherd catches fox | Nothing — play continues |
| Session timeout or player exit | Settled to the run the seed already decided |
An abandoned run settles to its pre-drawn result, not the partial pot. Banking a partial pot would reintroduce a stopping strategy; paying nothing would punish a dropped connection for an outcome the player never influenced.
Example Session
A run drawn with a catch target of 7, a jackpot at slot 4 and no killer (RTP_96 values):
seed drawn at bet commit: target 7 catches
catch 1 normal 0.14× → pot 0.14× 6 to bank
catch 2 normal 0.09× → pot 0.23× 5 to bank
catch 3 normal 0.31× → pot 0.54× 4 to bank
catch 4 JACKPOT 0.31× → pot 0.85× 3 to bank · GOLDEN FLOCK opens
free 1 0.31× ×3 = 0.93× → pot 1.78× still 3 to bank
free 2 0.09× ×3 = 0.27× → pot 2.05× still 3 to bank
free 3 0.94× ×3 = 2.82× → pot 4.87× still 3 to bank
free 4 0.14× ×3 = 0.42× → pot 5.29× still 3 to bank · shepherd wakes
catch 5 normal 0.09× → pot 5.38× 2 to bank
catch 6 normal 0.31× → pot 5.69× 1 to bank
catch 7 normal 0.14× → pot 5.83× target reached
pot banks automatically → payout 5.83× betNote the counter: it does not move during the four free catches. Had a killer landed at catch 5, 6 or 7 the base pot would have been wiped and the player would still have kept the phase — 4.44× of it. And had the shepherd caught the fox at any point, nothing would have changed at all.