Game Mower wiki

Game

Days: the clock, the sun and the hoursDY

The day and its hours. One host-owned clock that always runs, real-time rides, a sun that really moves, a night that looks good, and a world that keeps its own hours.

A day, hour by hour. The cuckoo clock goes off at 7, the paper lands on the mat, the store opens at 8, the sun drops behind grandma's roof around 20:15, and at 2 in the morning you fall asleep wherever you're standing. One clock always runs, so mornings and evenings become places to be, and the world keeps its own hours without any rule saying "go to work now".

The player's view

The morning. The cuckoo clock calls seven, the paper is on the mat and grandma's calendar is on the fridge. The first client is at eight across town, so loading the car and leaving at a quarter to is a real choice; dawdle over the paper and you arrive late. The lawn is wet with the night's weather, and the shady one across the street will stay wet until nearly noon: the job notes say "shady lawn, go after lunch".

The ride. You don't drive: you sit in grandma's car in first person, the car drives itself through the neighbourhood, stops at the stop signs, and you look around. Grandma's voicemail plays, the radio reads the weather, your siblings argue in the back seat. If everyone agrees, you skip ahead.

The working day. The clock runs on the job, at home and at the store at the same speed. Long work (fixing the mower, scrubbing a stain) shows a progress bar while time passes instead of jumping the clock. Near five the clock line warns that the last client window is closing. Raise your wrist and grandma's gold watch tells you the time and what she wants next.

The evening. Home for repairs, the computer and the bills. The light goes golden, the sun sets behind the roofs in the west, the street lamps and the porch light come on and fireflies drift over the lawns. Start the petrol mower on your own lawn after nine and a neighbour leans out of a window: "Some of us work tomorrow!" The battery mower doesn't bother anyone.

Bed. Go to bed whenever you like, even in the afternoon ("Early night. Beauty sleep is an investment."). In co-op the day ends when every sibling is in bed. Stay up past two and you pass out where you stand: you wake on grandma's plastic sofa, or on the lawn, late for the first client, and grandma is already calling from the retirement home because Mrs. Higgins told her.

A whole day at grandma's house: drag the slider and the sky, sun, shadows, lights and what's going on follow the decided hours

Ideas

DY1: the clock

One game clock, owned by the host, ticking everywhere: house, store, rides, jobs. With a frozen house you can never be "late in the morning" and the evening doesn't exist; with a running clock, mornings and evenings become places to be. In co-op the host's clock is the clock, nothing to agree on. The house needs things to do in the evening; it mostly has them (repairs, the computer, bills, cleanup).

The three ways the clock could run: a frozen house, one clock always running (chosen), a turn-based day

One speed, everywhere

  • 2 s per game minute (gameMinutesPerSecond 0.5), today's job speed, so every par time stays as tuned. The host ticks State.minute (now fractional) at that speed everywhere; guests follow from NetCompany.
  • A working day (8:00-18:00) lasts 20 real minutes; the whole waking day from 7:00 to 23:00, 32. A typical early day (the routine, two jobs, a store stop, the afternoon at home) is about 25 real minutes before the evening, 3 of them in the car, plus whatever evening the player wants before bed. A good session is one or two days.
  • For scale: Stardew Valley's whole day (6:00-2:00) is about 14 real minutes, Schedule I's (7:00-4:00) about 21.
Real minutes per game day at three clock speeds, with two other games' days for scale
A typical early day, game clock above and real time below: the jobs fill the real time, the rides are short

The typical day in the figure: coffee and the paper 7:00-8:00 (2 real minutes), a 25-minute ride, Mrs. Higgins 8:25-11:25 (6 minutes), a ride, the store for 45 game minutes (1.5), a ride, the Parkers 12:50-15:50 (6), a ride home, repairs, the computer and chores until 19:30 (6.5), then an optional evening (5 to 22:00). The four rides take 40-50 s each.

Pausing and skipping

  • PausingSolo pauses in the pause menu and while a full-screen screen is open (computer, phone, paper, calendar). Online never pauses (as today): a sibling reading the paper doesn't stop the others.
  • Nothing jumps the clock for one player aloneLong work (repairing a mower, scrubbing a stain, the base chores' minutesEach) takes its minutes in real time with a progress bar instead of adding minutes at once (no more State.minute += on one player's action). The rule is set now, before siblings can split up (DY5), because a jump for one would break the clock for the others then.
  • Speeding up is a group decisionBed, "wait until 8:00" (the porch bench), fast-forwarding a ride. Every connected sibling has to agree (the same rule as the beds); solo always can. Fast-forward is only allowed where no job sim is running (rides, waiting, bed). A jump the whole group takes together (the emergency store run during a job) stays allowed.
  • Jobs read the world clockArrival, lateness and the Calendar.DayTime01 callers use it, instead of each job counting its own minutes from arrival.

The shape of a day

The day on a 24-hour dial: asleep, the morning routine, working hours, the evening, late, and the quiet hours
BlockHoursWhat happens
Asleepbed → 7:00Skipped. The night's weather is on the lawn at 7 (wet grass, fog).
Morning routine7:00-8:00Cuckoo at 7, the paper on the mat, grandma's calendar, load the car. Leaving at 7:45 to be at a client's by 8 is a real choice.
Working hours8:00-18:00Client windows 8:00-17:00, the store 8:00-18:00, dew dries off by 10-11 (DY3).
Evening18:00-22:00Home: repairs, the computer, bills, house cleanup; grandma's check-in call now and then (DY4). Golden hour and sunset.
Late22:00-2:00The street goes quiet at 22:00 (DY4), the screen yawns after midnight.
Quiet hours21:00-8:00Engines bring neighbour complaints (DY4).

How the day ends

  • The day ends in bed, any time. Going to bed at 16:00 is allowed. Bed before 20:00 brings an ego thought (EgoQuips): "Early night. Beauty sleep is an investment." In co-op the day ends when every sibling is in bed (TU4, the beds).

  • Pass out at 2:00. Anyone still up passes out where they stand, so nobody can keep the others awake forever. Stardew-style, but softer and funny: you wake at 9:00 where you dropped, on grandma's plastic sofa or on the lawn if you were outside. No money lost; you're late for the 8:00 client, and at 9:05 grandma calls from the retirement home because a neighbour already told her:

    Voicemail, 9:05: "Mrs. Higgins says you slept on my LAWN. In your work clothes. She called me TWICE." ♥ G.

  • The day's minutes run past midnight (7:00 → 26:00) until bed; the clock shows minute % 1440.

Needs: none · Done when: a full solo day plays from 7:00 to bed with the clock running; two instances show the same minute.

DY2: the ride

Every drive (to a job, the store, home) is a real-time ride on autopilot, from the start. The clock and the ride are the easy part of splitting up later (DY5), and the car becomes a place.

  • Length = TravelMinutes × 2 s: a 15-minute drive lasts 30 s, a 25-minute one 50 s. Fast-forward when every sibling agrees (DY1); solo always can.
  • No driving to build. A first-person seat (driver or passenger), free look; the car drives itself, stops at stop signs, and fades into the destination scene on arrival.
  • The route is assembled from existing street pieces (Town, houses, landmarks like the mansion on its hill: seen on a ride, never from grandma's street, ST6), not a real continuous town. A calm street: traffic, rush hours and the bus are DY6.
  • A simple car interior (seats, dashboard, wheel) for grandma's car and the van, modelled in Blender to the style guide.
  • The car is a place: grandma's calls and voicemails ring there (phone and voicemails work in the car), the radio reads the weather (a stub until WE4), siblings argue in the back seat.

Needs: DY1 · Done when: host and guest ride together to a job and arrive at the same minute.

DY3: the sky

Real hours and a real direction for the sun, a lower arc than real life, gardens that face their street, and a night that is blue, not black.

The sun

  • Real times and direction for latitude ~40°N in late spring (the endless season): sunrise 5:55, solar noon 13:05 (daylight saving), sunset 20:15, rising ENE and setting WNW. Shadows are shortest at 13:05, not 12:00.
  • Height at 75% of the real sky: peak ~54° instead of 72°. A real late-spring noon sun kills the long shadows the art direction loves; capped near 54°, noon still has shape (long crisp blue-grey shadows).
  • The model: real elevation = asin(sin(lat) × sin(dec) + cos(lat) × cos(dec) × cos(H)), with lat 40°, declination +21° (late May) and H the hour angle from solar noon (15° an hour); the game's sun height = real elevation × 0.75.
  • Dawn, golden hour ~19:30-20:15, blue hour to ~20:45, then night.
  • DayCycle runs over 24 h, rotated by the garden's facing.
Sun height through the day: the real sky, the chosen 75% arc, and the game's sun before DY3

Each garden faces its street

Houses line both sides of the street. A lot on the north side of the street has a south-facing front lawn (sun all day); one on the south side sits in its house's shadow all morning. Dew dries where the sun hits, so shady lawns stay wet (heavier load, clumps) until nearly noon: same job, different best time, and you can read it off the sky. Job notes can say "shady lawn, go after lunch".

  • Garden facing is data, from the lot (which side of the street), not a random roll: per mission/lot in the data.
  • Dew dries by sun: shaded cells stay wet longer, feeding WE3's wetness (GR2's site map reads the same sun).
Top-down at 10:00: the lawn north of the street faces south and is dry, the one south of it sits in its house's shadow, still wet

Night

  • Blue, not black, the same rule as the shadows: lifted blacks, a blue-violet night grade, warm lights.
  • Lit by things: the house's windows room by room (the kitchen early in the morning and in the evening, the living room from dusk to bed), the porch light, street lamps, fireflies over the lawns at dusk (Critters), the moon and stars.
Night: blue, not black; the quiet-hours neighbour; bed whenever you like

Needs: DY1 · Done when: the same garden at 9:00 and 18:00 has its shade on opposite sides; night is readable, never black.

DY4: the hours

The clocks in the world, the quiet hours and the evening, so the time is felt without a timer on screen.

Telling the time

  • The HUD clock line stays (small), and gains the weather period and a soft warning near 17:00 ("last client window closes soon").
  • The gold watch: a key raises the wrist (the watch is already on PlayerBody): the time and grandma's next request.
  • Grandma's cuckoo clock (already on the wall) calls the hours at home, so you hear 7:00 and 22:00 without looking.
The gold watch, grandma's cuckoo clock and the HUD clock line

Quiet hours

  • Clients only book 8:00-17:00, so jobs end before dark. Your own lawns can be mowed any time, but an engine during quiet hours (21:00-8:00) gets a neighbour leaning out of a window ("It's 21:40! Some of us work tomorrow!"): a reputation dent on a client's street, a grumpy note at home. A joke and a rule at once.
  • The battery mower is exempt, quiet enough (a reason to buy it). This page owns when the quiet hours are; SN3 owns the loudness at a neighbour's window, turns the quiet hours into listening limits by hour, and makes the battery mower's exemption a result of its loudness instead of a rule.

The evening

  • Grandma's evening check-in calls from the retirement home now and then, around 19:00, short (her game show is on), through the call system (TU3).
  • The street goes quiet at 22:00.

Needs: DY1 · Done when: a guest hears the cuckoo at the same moment; an engine at 21:30 brings a complaint.

DY5: siblings in different places

Once a second vehicle exists, siblings can split up: one mows, one goes to the store. The clock rules already hold for that (rides take real time, so nobody ever needs to jump alone); the real cost is the network, so it's its own step. Today the host's scene decides where everyone is, and guests follow.

Two siblings, two vehicles, one clock: each ride takes real time, so it's 9:10 for both
  • Each group loads its own scene; the host keeps the guests' scenes running invisibly (FishNet per-connection scenes / scene stacking).
  • A guests-only job is run by one guest and settled on the host through a normal command.
  • Garden sync (LawnGridSync, GardenEvents, areas) assumes the host is in the garden, so that changes.
  • Before the second vehicle, everyone rides together.

Needs: DY1, DY2

DY6: traffic, rush hours and the bus

More cars on the street at 8:00 and 17:30, and rides take a few minutes longer then. The bus runs the street. Rides start on a calm street (DY2); this fills it.

Needs: DY2

DY7: the world's hours

Small timed events make the clock felt without a timer on screen. Most reuse things already in the game (the bus, the ice-cream van, sprinklers on lawns, pedestrians, Critters), fired from the clock so co-op players see them at the same moment.

WhenWhat
6:00Neighbours' sprinklers come on: some lawns are soaked at 7 for a reason you can see.
7:00Grandma's old clock radio in the kitchen switches on (with the cuckoo and the paper).
8:00The school bus on the street; the store unlocks its doors.
12:00Clients go inside for lunch; one brings out lemonade (a tip).
15:30School's out: kids on bikes, the bus back.
16:00The ice-cream van's jingle down the street.
DuskWindows light up house by house.
22:00Neighbours' windows go dark one by one.

And the neighbours' own schedules (waiting in Leftovers from the old plans).

Needs: DY1, DY4

DY8: night jobs

Night work as an unlock: a head torch and night clients. Until then clients only book 8:00-17:00 and engines bring complaints in quiet hours (DY4).

Needs: DY3, DY4

DY9: a weekly rhythm

The days of the week feel different: quiet Sunday mornings, shorter store hours on Sundays.

Needs: DY1

DY10: getting around without a car

A sibling without a car takes the bus, or a bicycle with the trimmer on their back. Comes with siblings in different places (DY5) and the bus (DY6).

Needs: DY5, DY6

Tuning

NameValueIdeaWhat it does / why
gameMinutesPerSecond0.5 (2 s per game minute)DY1one speed everywhere; today's job speed, so par times stay as tuned
Working day8:00-18:00 (dayStartMinute / dayEndMinute)DY120 real minutes
Waking day7:00-23:00DY132 real minutes; a typical early day is ~25 before the evening
Wake-up7:00DY1the cuckoo, the paper
Client windows8:00-17:00DY1jobs end before dark
Store hours8:00-18:00DY1
Early-bed thoughtbed before 20:00DY1the ego quip
Pass out2:00DY1nobody keeps the others awake forever
Wake after passing out9:00, grandma's call 9:05DY1late for the 8:00 client, no money lost
Day minutes7:00 → 26:00DY1minutes run past midnight until bed; the clock shows minute % 1440
Ride lengthTravelMinutes × 2 s (15 min = 30 s, 25 min = 50 s)DY2real time at the clock's speed
Latitude, season~40°N, late spring (declination +21°)DY3the endless season
Sun timessunrise 5:55, solar noon 13:05, sunset 20:15DY3daylight saving; rises ENE, sets WNW
Sun height×0.75 of real (peak ~54° instead of 72°)DY3noon keeps its shadows
Golden / blue hour~19:30-20:15 / to ~20:45DY3
Dew driesby 10-11 in sun, near noon in shadeDY3shady lawns stay wet
Quiet hours21:00-8:00DY4engines bring complaints; battery mower exempt
HUD warningnear 17:00DY4the last client window closes soon
Grandma's check-in call~19:00, now and thenDY4short: her game show is on
Street goes quiet22:00DY4
Rush hours8:00 and 17:30DY6more cars, longer rides
Timed eventssprinklers 6:00, school bus 8:00 / 15:30, lunch 12:00, ice-cream van 16:00DY7

Co-op

The siblings travel together, so there is one clock and the host owns it.

  1. State: the clock in the save (State.minute becomes fractional), ticked by the host only.
  2. Ownership: the clock is shared; nothing per player (pausing only exists solo).
  3. Host-only: ticking, ending the day, passing out. Fast-forward and waiting need every sibling's agreement; the day ends when all are in bed, and at 2:00 everyone still up passes out.
  4. Randomness: none new.
  5. Channel: the clock goes out with the company updates (NetCompany); guests smooth it between updates. Sky, sun, lights and weather are computed from it, so nothing else is sent.
  6. Packets: one small clock value, well under one packet.
  7. Late joiners: get the clock with the save.
  8. Secrets: none.
  9. Cinematics: the pass-out wake-up and the ride are cinematics-like (CinematicSync); each sibling sees their own.
  10. Save: a version bump (fractional clock, a passed-out flag per player if needed). Data: garden facing per mission/lot (a data version bump).
  11. Voice lines: grandma's 9:05 pass-out call and her evening check-ins (calls from the retirement home, step 2's call system); the early-bed thought through EgoQuips.
  12. Tests: below, plus a two-instance run (the same minute on both, group fast-forward only when both agree).

Tech

Who owns what

This page owns the clock, the hours (client windows, store hours, quiet hours), sleep, the sun and when dew dries. weather.md owns the weather and the wetness itself (WE2: the sky follows the game clock, so it needs DY1; WE3 reads the dew drying). GR2's site map reads DayCycle's sun arc for each cell's exposure. SN3 owns the loudness model; work.md owns the households behind the windows. TU4 (the beds) meets DY1 at "the day ends in bed"; TU3 owns the call system. J6 (calls through the day) and EC1's return rides use the running clock. No difficulty row (difficulty.md): the day is the same on every preset.

The code before DY1

  • Time only flows during jobs (economy.gameMinutesPerSecond 0.5 = 2 s per game minute; par times are tuned on it).
  • At home and at the store the clock is frozen; only actions move it (a drive, a 5-minute scrub, a store trip). A drive fades to black and adds its minutes for everyone at once.
  • The working day is 8:00-18:00 (dayStartMinute / dayEndMinute); client windows default to 8:00-17:00.
  • DayCycle only covers 7:00-19:00: never dark, the sun always behind the player, the same light in every garden (14° at 7:00 up to 50° at 13:00 and back to 14° at 19:00).
  • Jobs count their own minutes: MissionController.CurrentMinute = ArrivalMinute + Elapsed * rate (goes away in DY1).

Where it lives

  • The clock: State.minute in Company.cs / Company.Day.cs, commands in CompanyCommands.cs and BaseCommands.cs, synced by NetCompany.cs. DY1 touches every State.minute += (chores, repairs, travel).
  • Jobs: MissionController.cs and the Calendar.DayTime01 callers.
  • Screens and HUD: GarageUI.cs, HudController.cs.
  • The sky: DayCycle.cs, AmbianceDirector.cs, Weather.cs; fireflies in Critters; the watch on PlayerBody.
  • Rides: Town street pieces, TravelMinutes; cinematics through CinematicSync.
  • These files are also edited by the early-game steps and weather.md's phases. DY3 and WE2 edit the same sky code.

Tests

  • DY1: the clock's speed; pause solo vs online; pass-out and wake time; lateness from the world clock; fast-forward needs everyone.
  • DY2: ride length; fast-forward agreement.
  • Two instances: the same minute on both; the cuckoo at the same moment (DY4).

Open questions

  • Does the save need a passed-out flag per player, or is the wake-up spot enough?

Rejected

  • A frozen house (time only moves on the job and with actions): no pressure at home and easy to tune, but no mornings or evenings, no night, no rush, and in co-op nothing moves while a sibling sits at the computer.
  • A turn-based day (a few slots, no clock inside a slot): very readable, but it kills par time, lateness, client windows and the weather periods.
  • A faster clock: 1.5 s per game minute (a working day of 15 real minutes, 24 for 7:00-23:00) would mean re-tuning every par time; 1 s (10 and 16 minutes) halves every job. Faster shrinks the work, which is the fun part.
  • A hard curfew at 23:00, and no limit at all: bed any time with a pass-out at 2:00 instead.
  • Today's sun arc (7:00-19:00, always behind the player): pretty but the same light in every garden.
  • The real sun height (72° at noon): kills the long shadows; capped at 75%.
  • Every garden lit the same way: facing from the lot makes shade and dew readable off the sky.
  • No quiet hours: engines at night would cost nothing, and the battery mower would lose a reason to exist.
  • Only the HUD to tell the time: the watch and the cuckoo make the clock part of the world.
  • Keeping the fades while the family travels together, switching to rides when splitting up arrives: rides from the start make the car a place and set the "nothing jumps for one player alone" rule before anyone can split.
  • Driving the car yourself: autopilot rides, no driving to build.
  • A real continuous town for the rides: the route is assembled from street pieces.
  • Jobs counting their own minutes from arrival: jobs read the world clock.
Source docs/game/day.mdEdited 2026-10-03