RollerCoaster Tycoon
Chris Sawyer's 1999 theme park management game for Windows.
RollerCoaster Tycoon is Chris Sawyer’s theme park management game, published for Windows by MicroProse and Hasbro Interactive in March 1999. GameSpot listed it as new in stores on 22 March, while IGN gives 31 March1. The player builds a theme park, laying coasters a piece at a time2 and setting shops along the paths3, for guests who make up their own minds4. In the tutorial scenario of the 2001 reprint of the manual, the player has until October of the first year to bring in 250 guests and reach a park rating of 6005. Two add-on packs followed in 1999 and 2000, RollerCoaster Tycoon 2 in 2002, and an Xbox version in 20036.
Computer Games Magazine wrote that it was made mainly by one person, in a village near Dunblane in Scotland7. Sawyer says it began in 1996 as a sequel to his Transport Tycoon. He had rebuilt its isometric world so that track could run on bridges over bridges, and while watching vehicles on them he wondered what they would be like as roller coasters. Within a month or two of adapting the code, basic coasters ran8. He has said Bullfrog’s Theme Park was fun to play but its roller coasters were “rubbish”9. He bought himself out of the sequel’s contract and funded “Project White Knuckle” himself, and the game kept that name until Hasbro bought MicroProse and the Tycoon name came with it10. People in the industry told him it would only ever be a niche game11. His site says it is 99% x86 assembly, with some C to talk to Windows and DirectX12. In his telling, assembly made the detailed simulation fast enough, at the cost of a game that can’t be recompiled for other machines13.
Reviewers compared it with Theme Park. GameSpot’s Alan Dunkin called it a combination of Theme Park and Disney’s Coaster and scored it 8.6 out of 10, faulting its two speeds, stop and go, and its “only 21 scenarios and no way to make more”14,15. IGN’s Jason Bates found it a lot like Theme Park, “but so what? It’s also a lot of fun”, and gave it 8.516,17. Jeff Green of Computer Gaming World called it “an utterly charming gem of a strategy game”18, and Computer Games Strategy Plus named it Strategy Game of the Year19. By PC Data’s count it was the best-selling game of 1999, with over 700,000 copies sold in the US20, and Computer Gaming World reported in July 2002 that it had sold 4 million21. Sawyer recalls slow early sales, then the shock of finding it among the year’s best sellers, and hearing that it appealed to grandparents as well as strategy fans22.
#How it plays
Sawyer wanted it to be “fun to play with rather than just fun to play against”23. Coasters are built a piece at a time. The track has to close its loop back at the station, may pass over or under itself but never cross at the same level, and needs a straight piece between a climb and a drop2. A test run rates the ride for excitement, intensity, and nausea, on scales the manual gives as 0 to 10, though intensity can go higher. Excitement sets what the ride can charge and how popular it is, and grows with speed, pacing, scenery, close passes by paths and other rides, and novelty. Spins, sharp turns, and inversions make riders sick, and a ride rated over 10 for intensity may find no riders even for free24. Shops need no queue, but most serve from one side, which has to face a path3.
The guests can’t be ordered about. Sawyer wanted them to make up their own minds from what they see and feel, and testers complained that they got lost too easily in odd-shaped parks4. The player reads them instead. One window lists every guest’s current thought and totals the thoughts by frequency, so a complaint near the top flags a problem, and each guest’s own window shows their recent thoughts, their spending, and how much intensity and nausea they will stand25. The manual teaches needs as chains: guests who eat will want bathrooms and bins, and salty food makes them thirsty26. Lost guests come from the footpaths, so it advises against dead ends and long trails to nowhere, and park maps help27.
The park rating, from 0 to 1000, sums up the guests’ view of the rides, layout, tidiness, and value, but it says only that something is wrong, not what28. The manual says the player has borrowed from the bank to improve the park, and that guest spending is the only income besides that loan29.
#Guests in OpenRCT2
The 1999 game’s code isn’t public. OpenRCT2, an open-source re-implementation of RollerCoaster Tycoon 2, shows how its rebuilt version of the sequel’s engine runs guests, though its readme says it improves the guest AI30. In OpenRCT2 each guest has a preferred range of intensity and a tolerance for nausea. It turns down a ride outside that range or above that tolerance, thinking “X looks too intense for me” or “I want to go on something more thrilling than X”, and a happy guest will stretch further than an unhappy one31. A ride that has crashed is refused by all but the happiest32. Happiness creeps toward a target that sinks when the guest is tired, hungry, thirsty, or needs the toilet33. While it eats, any food makes a guest thirstier34. About every 26 seconds of game time a walking or sitting guest voices one of its needs and walks to the nearest stall, toilet, or cash machine that meets it35. Guests who are content, rested, and still carrying money stay; any other guest may decide to go home at any check36. A walking guest checks whether it is lost each time it reaches the next point on its way and at every dead end, and one lost long enough thinks “I’m lost!” and grows unhappier37.
OpenRCT2’s park rating is a sum. It counts the guests and the share of them who are happy, and charges for those who can’t find the exit38. Rides add points for uptime, for an average excitement and intensity near a middle target, and for their total thrills39. Old litter costs points, and the result is capped at 99940.
#In Minecraft’s lineage
In 2010 Markus Persson said the builder game he was working on when he found Infiniminer was supposed to be “a lightweight Dwarf Fortress”, “kinda like if DF and Rollercoaster Tycoon had a baby”41. In 2011 he wrote that he had pitched that isometric mining game as “Dwarf Fortress meets Rollercoaster Tycoon meets Dungeon Keeper”, before Infiniminer turned him to the first-person prototype of Minecraft42.
#After
Sawyer calls RollerCoaster Tycoon 2 his favorite, but thinks the original and its add-ons may have been better games, with more challenge, and that their scenarios were better. RollerCoaster Tycoon Classic recreates the sequel with the original’s scenarios added, 95 in all43. Sawyer said RollerCoaster Tycoon’s engine was adapted for Chris Sawyer’s Locomotion in 200444. OpenRCT2 can play the original game’s scenarios from its files, and brings back features of the first game that the sequel dropped, such as the in-game mountain tool30. PC Gamer placed Parkitect in the line of the early RollerCoaster Tycoon games45.
Mechanics
| Mechanic | Kind | How |
|---|---|---|
| Structure placement | a shop serves from one side, which has to face a path; only the Information Kiosk serves from all four |
Every claim about this game, by concept (36)
References
- ^GameSpot's new-releases post of 22 March 1999 listed MicroProse and Hasbro Interactive's RollerCoaster Tycoon, developed by Chris Sawyer, as new on store shelves that Monday. IGN's review page gives 31 March 1999 instead, and Computer Games Magazine's interview of January 2000 says only that it was released in March.WebGameSpot, New Releases, 22 March 1999 · IGN, RCT review (1999) · Computer Games Magazine, Sawyer interview, 2000revised
How we know
New on store shelves for Monday, March 22, 1999 is MicroProse/Hasbro Interactive's Roller Coaster Tycoon, developed by Chris Sawyer (the guy behind the classic Transport Tycoon).
New Releases, posted 03/22/99 · archived copy ↗ Released Mar. 31st, 1999
game box beside the review · archived copy ↗ Released in March, it was the best-selling game of 1999 according to PC Data
opening paragraph · archived copy ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Revised after a check by a second AI model, 2026-10-26.
- ^ abThe manual's rules for building a coaster piece by piece: the last piece must join the station platform to close the loop; track may pass over or under itself with enough clearance but may not cross itself at the same level; a rise can't turn straight into a drop without a straight piece between; supports reach only so high; and track goes underground only where the land is prepared.ManualRollerCoaster Tycoon manual
How we know
The last piece of track must connect to the first piece (the Station Platform) to create a closed loop.
p. 12, building Roller Coaster 1 · archived copy ↗ However, it is a violation of the safety code to build intersections, so you cannot have the track cross itself at the same level. … In order to switch from a rising track to a dropping track, you must have at least one piece of straight track in the middle. … There is a limit to how high above the land you can safely raise track using supports. … You cannot build track underground unless you prepare the land for it.
p. 12 · archived copy ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Checked by a second AI model, 2026-10-26.
- ^ abNearly every shop or stall has a front with a serving window, and that side must face a path for guests to use it; the Information Kiosk serves from all sides. Shops need no entrance, exit or queue.ManualRollerCoaster Tycoon manual
How we know
Unlike a ride, a little shop doesn’t need an Entrance or Exit, and a queuing line is also unnecessary.
p. 20, Shops and Stalls · archived copy ↗ almost all shops have a predetermined front side with a built in access window, and that front side must be positioned next to a path in order for the guests to be able to use it. The only exception is the Information Kiosk, which has access windows on all sides.
p. 20 · archived copy ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Checked by a second AI model, 2026-10-26.
- ^ abSawyer has said he wanted the guests "uncontrollable": they can't be forced to do anything and make up their own minds from what they see, feel and experience, run by "quite a primitive algorithm". Testers complained that guests got lost too easily in odd-shaped parks.InterviewArcade Attack, Chris Sawyer interview (2018)
How we know
Having the guests “uncontrollable” in the game appealed to me a lot – i.e. you can’t force them to do something they don’t want to do as they make their own minds up based on what they see and feel and experience.
answer on inspiration and objectives · archived copy ↗ Programming the guests was a really fun challenge, and quite a satisfying one when you see the results of quite a primitive algorithm looking quite “human”. … I remember testers criticising the guests’ ability to get lost far too easily if you built an odd-shaped park, perhaps one with a lake in the middle
same answer · archived copy ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Checked by a second AI model, 2026-10-26.
- ^The manual's tutorial scenario gives the player until October of Year 1 to bring 250 guests into the park and raise the park rating to at least 600.ManualRollerCoaster Tycoon manualrevised
How we know
In the tutorial, you have until October of Year 1 to attract 250 guests into the park and build the park’s rating (a measure of reputation) to at least 600.
p. 8, The Tutorial · archived copy ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Revised after a check by a second AI model, 2026-10-26.
- ^Sawyer's own site says RollerCoaster Tycoon was released through Hasbro Interactive early in 1999, followed by two add-on packs, Added Attractions (Corkscrew Follies) in late 1999 and Loopy Landscapes in September 2000; an Xbox version published by Infogrames Interactive in 2003; and RollerCoaster Tycoon 2, published by Infogrames in October 2002.PublisherChris Sawyer, site biography
How we know
Chris's second big project was RollerCoaster Tycoon, released through Hasbro Interactive early in 1999, followed by two add-on packs Added Attractions / Corkscrew Follies in late 1999 and Loopy Landscapes in September 2000.
biography · archived copy ↗ Published by Hasbro Interactive in 1999, Xbox version published by Infogrames Interactive in 2003
Games, RollerCoaster Tycoon · archived copy ↗ Published by Infogrames Interactive in October 2002
Games, RollerCoaster Tycoon II · archived copy ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Checked by a second AI model, 2026-10-26.
- ^Computer Games Magazine wrote in January 2000 that RollerCoaster Tycoon was created in a small village near Dunblane, Scotland, mainly by one person, Chris Sawyer.InterviewComputer Games Magazine, Sawyer interview, 2000
How we know
MicroProse's RollerCoaster Tycoon was created in a small village near Dunblane, Scotland, mainly by one person, Chris Sawyer.
opening paragraph · archived copy ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Checked by a second AI model, 2026-10-26.
- ^Sawyer has said RollerCoaster Tycoon began as a sequel to Transport Tycoon in 1996. He had rewritten the isometric world so that track could run on bridges over bridges, and while watching vehicles on those bridges he wondered what they would be like as roller coasters. He adapted the code he had written, had basic roller coasters running within a month or two, and abandoned the sequel. OpenRCT2's readme says the engine of RollerCoaster Tycoon 2 was based on Transport Tycoon.PublisherChris Sawyer, "10 things" feature · Arcade Attack, Chris Sawyer interview (2018) · Retro Gamer 138, Chris Sawyer interview · OpenRCT2 v0.5.6revised
How we know
RollerCoaster Tycoon originally started as a sequel to Transport Tycoon back in 1996, but the sequel was abandoned and the code modified to handle roller coasters instead of transport vehicles.
item 4 · archived copy ↗ I got it to the point where I had multi-level bridges over bridges and little block-shaped trains merrily running under and over all these bridges while depth-sorting correctly.
answer on the Transport Tycoon sequel · archived copy ↗ While watching the vehicles moving around on multi-level bridges in Transport Tycoon 2 I started to wonder what it would be like if those vehicles were roller coasters
p. 96, "What inspired you to make RollerCoaster Tycoon instead then?" · archived copy ↗ I started adapting the code I had already written and within a month or two I had some basic roller coasters
p. 96, same answer · archived copy ↗ Eventually I decided to take a breather from the Transport Tycoon sequel and just have a bit of fun seeing if I could adapt the isometric system to handle a simple roller coaster.
answer on the Transport Tycoon sequel · archived copy ↗ The engine was based on Transport Tycoon, an older game which also has an equivalent open-source project
readme.md#L68 · upstream ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Revised after a check by a second AI model, 2026-10-26.
- ^Sawyer told Arcade Attack that Bullfrog's Theme Park was a fun game but its roller coasters were "rubbish", which got him thinking, and that a book called "White Knuckle Ride", with photos of big roller coasters, made him think how fun it would be to build one in a Transport Tycoon-like isometric world.InterviewArcade Attack, Chris Sawyer interview (2018)
How we know
Bullfrog’s Theme Park game had been published and was a really fun game to play, but quite honestly the rollercoasters in it were rubbish, and it got me thinking.
answer on the Transport Tycoon sequel · archived copy ↗ It started me thinking about how fun it would be to be able to build something like that in a Transport Tycoon-like 3D isometric game world.
same answer · archived copy ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Checked by a second AI model, 2026-10-26.
- ^Sawyer has said he bought himself out of the Transport Tycoon 2 contract and worked on "Project White Knuckle" full time, funding it himself and keeping it under wraps. The game kept the name White Knuckle through development, even after Hasbro Interactive became involved; when Hasbro bought MicroProse, the "Tycoon" connection made it RollerCoaster Tycoon.InterviewRetro Gamer 138, Chris Sawyer interview · Chris Sawyer, "10 things" feature
How we know
I bought myself out of the Transport Tycoon 2 contract and effectively cancelled the project, and started working on 'Project White Knuckle' full time, funding development myself and keeping the project under wraps
p. 96, "So it was more of a passion project…" · archived copy ↗ Even when Hasbro Interactive became involved, the game was still going to be called White Knuckle, but then Hasbro bought Microprose, and the "Tycoon" connection was just too good an opportunity to miss, so the game became "RollerCoaster Tycoon".
item 8 · archived copy ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Checked by a second AI model, 2026-10-26.
- ^Sawyer has said that people in the games industry told him a roller-coaster game would only ever be a niche game, and that the negative reactions gave him serious doubts during its two years of development.InterviewRetro Gamer 138, Chris Sawyer interview · Computer Games Magazine, Sawyer interview, 2000
How we know
all the advice was that it would only ever be a niche game, would never make any money
p. 96, "So it was more of a passion project…" · archived copy ↗ there were times during the two years of development when I had serious doubts about the game, often because of the negative reaction from other people in the game industry.
Are you surprised by both the critical and public reaction… · archived copy ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Checked by a second AI model, 2026-10-26.
- ^Sawyer's site says RollerCoaster Tycoon is 99% x86 assembly, with some C to interface with Windows and DirectX, built with Microsoft Macro Assembler 6.11c, Visual C 5 and the DirectX 5 SDK. In a 2015 interview he said Transport Tycoon and RollerCoaster Tycoon on the PC were "entirely" programmed in x86 assembler code.PublisherChris Sawyer FAQ · Retro Gamer 138, Chris Sawyer interview
How we know
It's 99% written in x86 assembler/machine code (yes, really!), with a small amount of C code used to interface to MS Windows and DirectX.
What language was RollerCoaster Tycoon programmed in? · archived copy ↗ The game was written and compiled using MS Macro Assembler V6.11c, MS Visual C V5, MS DirectX 5 SDK, plus assorted custom-written tools.
Which development tools were used to develop RollerCoaster Tycoon? · archived copy ↗ Both Transport Tycoon and RollerCoaster Tycoon on the PC were entirely programmed in x86 assembler code.
p. 95, answer on x86 assembly · archived copy ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Checked by a second AI model, 2026-10-26.
- ^Sawyer said assembly let him make the simulation more detailed: it needed so much processing that it had to be highly optimised, which he thought impossible in a high-level language. The cost is that assembly can't be recompiled for another platform.InterviewRetro Gamer 138, Chris Sawyer interview
How we know
I've no doubt it enabled a much more detailed level of complexity in the game
p. 95, "Do you think working in assembly language made Transport Tycoon and RollerCoaster Tycoon better games?" · archived copy ↗ achieving that same level of optimisation in a high level language would have proved impossible. The downside of writing in assembler code is that it can't be recompiled to run
p. 95, same answer · archived copy ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Checked by a second AI model, 2026-10-26.
- ^Dunkin described it as a combination of Disney's Coaster and Bullfrog's Theme Park, with Theme Park its only real competition. He faulted it for running at only two speeds, stop and go, and for its 21 scenarios, with no way to make more and no open-ended scenario.WebGameSpot, RCT review (1999)
How we know
MicroProse's RollerCoaster Tycoon is a combination of two somewhat popular PC games: Coaster, an older game from Disney in which you design roller coasters, and Bullfrog's Theme Park … Since Theme Park is pretty much the only real competition
paragraph 1 · archived copy ↗ the game only runs at two speeds - stop and go … Finally, there are only 21 scenarios and no way to make more, and there's no generic "start from scratch and build till you drop" scenario either.
paragraph 7 · archived copy ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Checked by a second AI model, 2026-10-26.
- ^Alan Dunkin's GameSpot review of 13 April 1999 scored it 8.6 out of 10.WebGameSpot, RCT review (1999)
How we know
GameSpot Score 8.6 great
score box · archived copy ↗ Alan Dunkin, GameSpot POSTED: 04/13/99
byline · archived copy ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Checked by a second AI model, 2026-10-26.
- ^Bates wrote that it was a lot like Theme Park, "but so what? It's also a lot of fun", and that MicroProse had beaten Bullfrog's Theme Park 2 to the punch.WebIGN, RCT review (1999)
How we know
It's a lot like Theme Park but so what? It's also a lot of fun.
deck · archived copy ↗ MicroProse beat Bullfrog's Theme Park 2 to the punch with Roller Coaster Tycoon, a Chris Sawyer game.
paragraph 1 · archived copy ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Checked by a second AI model, 2026-10-26.
- ^Jason Bates's IGN review of 2 April 1999 scored it 8.5 out of 10.WebIGN, RCT review (1999)
How we know
Great IGN Staff 2 Apr 1999 8.5
score box · archived copy ↗ Roller Coaster Tycoon is, quite simply, a lot of fun. --Jason Bates
end of review · archived copy ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Checked by a second AI model, 2026-10-26.
- ^Jeff Green's review in Computer Gaming World (July 1999) called it "an utterly charming gem of a strategy game from MicroProse", a game in which you get to clean up vomit, and a change of pace for players tired of conquering galaxies and fighting wars.MagazineCGW 180, RCT reviewrevised
How we know
to clean up vomit. Finally!
p. 159, "Thrills and Spills", paragraph 1 · archived copy ↗ TYCOON, an utterly charming gem … of a strategy game from … change of pace for those tired of … conquering galaxies, fighting … wars, and building global
p. 159, paragraph 1 · archived copy ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Revised after a check by a second AI model, 2026-10-26.
- ^Computer Games Strategy Plus's awards, posted on 6 March 2000, named it Strategy Game of the Year, with Heroes of Might and Magic III and Jagged Alliance 2 as finalists. The citation praised it for keeping the player on the fun parts, unlike Theme Park.WebComputer Games Strategy Plus awards 1999
How we know
Posted on 03/06/2000 Strategy Game of the Year RollerCoaster Tycoon
Strategy Game of the Year · archived copy ↗ Unlike Theme Park, it never forces the player to get bogged down in the minutia of running a park, doing an amazing job at focusing the player in the fun parts.
Strategy Game of the Year, paragraph 2 · archived copy ↗ Finalists Heroes of Might and Magic III … Jagged Alliance 2
Finalists · archived copy ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Checked by a second AI model, 2026-10-26.
- ^Computer Games Magazine wrote in January 2000 that RollerCoaster Tycoon was the best-selling game of 1999 according to PC Data, with over 700,000 copies sold in the US. The magazine reasoned from that figure, as about 80% of the market, that it had likely sold more than a million in under a year.InterviewComputer Games Magazine, Sawyer interview, 2000
How we know
Released in March, it was the best-selling game of 1999 according to PC Data, selling over 700,000 copies in the US alone. (This represents about 80% of the market, which means it's likely the game has sold more than a million units in less than a year).
opening paragraph · archived copy ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Checked by a second AI model, 2026-10-26.
- ^Computer Gaming World reported in July 2002, announcing the sequel, that RollerCoaster Tycoon had sold 4 million copies.MagazineCGW 216, RCT sales
How we know
Infogrames is on track to release a sequel this fall to Rollercoaster Tycoon, which has now sold 4 million copies.
p. 42, Read Me, "Rollercoaster Tycoon II" · archived copy ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Checked by a second AI model, 2026-10-26.
- ^Sawyer recalled that sales started slow but steady and that it was a shock, a few months later, to learn the game was among the top-selling PC games of the year, with players from strategy fans to grandparents.InterviewArcade Attack, Chris Sawyer interview (2018)
How we know
sales initially were quite slow but steady. But it was a shock a few months later though to find out that sales had ramped up considerably and the game was now amongst the top selling games for the PC for that entire year.
RollerCoaster Tycoon was named as the best selling PC game in 1999… · archived copy ↗ not just boys who liked strategy games but also girls, younger children, and adults and even grandparents too.
same answer · archived copy ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Checked by a second AI model, 2026-10-26.
- ^Asked why the game isn't difficult in the usual strategy-game sense, Sawyer said it should be "fun to play with rather than just fun to play against", and that a harder game might turn hours of park building into bankruptcy and the end of the game.InterviewComputer Games Magazine, Sawyer interview, 2000
How we know
I think my philosophy was that it should be fun to play with rather than just fun to play against.
RollerCoaster Tycoon isn't difficult in the traditional strategy game sense… · archived copy ↗ it might have turned a very positive game into a rather frustrating one, where all your hard work designing and building a park might result in bankruptcy and the end of the game.
same answer · archived copy ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Checked by a second AI model, 2026-10-26.
- ^A test run gives each custom ride three ratings, excitement, intensity and nausea, which the manual scales from 0 to 10, though intensity can go over 10. Higher excitement lets the ride charge more and makes it more popular; it comes from the ride type and design, speed, pacing, nearby scenery, the view, close passes by paths and other rides, and novelty. Intensity comes from the forces, inversions and speed; a ride rated over 10 may find no riders even for free. Spinning, sharp turns and inversions raise nausea.ManualRollerCoaster Tycoon manualrevised
How we know
purpose for testing is to determine the important characteristics of the ride — excitement, intensity, and nausea factor.
p. 54, Building a Custom Ride · archived copy ↗ The higher this number, the more you can successfully charge for admission to the ride, and the more popular the ride will be with your guests.
pp. 55-56, Characteristics of the Ride · archived copy ↗ The overall speed of the ride, its pacing, and the look of it from the outside can add to the excitement, as can nearby scenery … The age of the ride is a factor, too; novelty adds excitement. … The overall rating depends on all the forces, accelerations, changes of direction, inversions, and speed experienced by a rider over the course of the track. You can achieve intensity ratings over 10 through misguided design decisions, but don’t be surprised when no one is willing to ride it, even for free! … Spinning rides tend to have high nausea ratings, and the more turns (especially sharp ones) and inversions you include, the worse it gets.
p. 56 · archived copy ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Revised after a check by a second AI model, 2026-10-26.
- ^The Guest Info window lists each guest's current thought and action, and its second tab totals every guest's thoughts in order of frequency, so a complaint near the top flags a problem. Each guest's own window shows their recent thoughts, their spending in the park, and their preferred ride intensity and tolerance for nausea.ManualRollerCoaster Tycoon manualrevised
How we know
There are two display tabs in this window. the first lists the current thought and action of each guest in the park
p. 34, Keeping Your Guests Happy · archived copy ↗ The second tab summarizes for you the actions and thoughts of every guest, and presents them in descending order of frequency.
p. 34 · archived copy ↗ Condition is a detailed analysis of the visitor’s physical status and needs, plus information on his or her ride intensity preference and nausea tolerance. … Thoughts lists this visitor’s most recent few thoughts about your park. … Funds details the guest’s spending while in the park.
pp. 82-83, Guest window · archived copy ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Revised after a check by a second AI model, 2026-10-26.
- ^The manual teaches needs as chains of cause and effect: guests who eat will need bathrooms and litter bins, salty food makes them thirsty, and a hungry guest looks out for a food stall.ManualRollerCoaster Tycoon manual
How we know
If you serve food, your visitors will need bathrooms and trash bins; provide them before there’s a problem. Salty foods make guests thirsty, so build drink stalls.
p. 34, "Foresee and fill visitor's needs" · archived copy ↗ if a guest is hungry, he or she will keep an eye out for a food stall
p. 20, Shops and Stalls · archived copy ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Checked by a second AI model, 2026-10-26.
- ^The manual says how often guests get lost depends entirely on the footpaths: avoid dead ends, complex routes and long trails to nowhere, and sell park maps at Information Kiosks, which make a guest much less likely to get lost. A lost guest can be picked up and dropped on a central path.ManualRollerCoaster Tycoon manual
How we know
How often guests … become lost depends … entirely on the system … of footpaths in your … park. Try to avoid … dead ends, complex
p. 32, Lost Guests · archived copy ↗ Having a map … handy significantly reduces a … guest’s chances of getting lost.
p. 32, Park Maps · archived copy ↗ Move the mouse pointer across the landscape until the visitor you’ve retrieved is over a central footpath (preferably near rides).
p. 32 · archived copy ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Checked by a second AI model, 2026-10-26.
- ^The park rating, from 0 to 1000, reflects the guests' overall impression of ride design, layout, tidiness, value and efficiency. The manual warns that it shows that there is a problem but never what the problem is.ManualRollerCoaster Tycoon manual
How we know
This number (between 0 and 1000) reflects your guests’ overall impression — of ride design, park layout, tidiness, value, efficiency, etc.
p. 34, Park Rating · archived copy ↗ although the rating will never tell you what a problem is, only that there is a problem.
p. 34 · archived copy ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Checked by a second AI model, 2026-10-26.
- ^The manual says the player has borrowed from the bank to improve the park, and that this loan is the working capital; besides it, the only money is what guests spend in the park. The park value, another report, weighs land and equipment, the quality and profit of the rides, and the park rating.ManualRollerCoaster Tycoon manualrevised
How we know
You have borrowed a certain amount from the bank to make improvements to the park under your management. This loan constitutes your working capital, also called cash-on-hand (COH). That and whatever income you derive from guest spending in the park are your only sources of funding.
p. 36, Finances · archived copy ↗ calculated by expert assessors to reflect what the park is worth in terms of the value of the land and equipment owned, the quality and profitability of the rides and the park as a whole, and the park’s overall public reputation, as determined by the Park Rating.
p. 36, Fiscal Reports · archived copy ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Revised after a check by a second AI model, 2026-10-26.
- ^ abOpenRCT2 is an open-source re-implementation of RollerCoaster Tycoon 2 that needs the original game's files. Its readme says it adds improved guest and staff AI, and brings back mechanics of the first game that the sequel dropped, such as the in-game mountain tool and the "have fun" objective; with the first game's files it can play the original scenarios.DeveloperOpenRCT2 v0.5.6
How we know
**OpenRCT2** is an open-source re-implementation of RollerCoaster Tycoon 2 (RCT2).
readme.md#L66 · upstream ↗ improved guest and staff AI … It also re-introduces mechanics from RollerCoaster Tycoon that were not present in RollerCoaster Tycoon 2. Some of those include; mountain tool in-game, the *"have fun"* objective
readme.md#L68 · upstream ↗ If you have the original RollerCoaster Tycoon and its expansion packs, you can [point OpenRCT2 to these] … OpenRCT2 requires original files of RollerCoaster Tycoon 2 to play.
readme.md#L74 · upstream ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Checked by a second AI model, 2026-10-26.
- ^In OpenRCT2 a guest weighing a rated ride it isn't already heading for, in dry weather, turns it down when its intensity is below the guest's preferred minimum or above the preferred maximum (capped at 10), each widened by up to 2.55 as the guest gets happier; or when its nausea rating is above the guest's tolerance of 3, 6, 8 or 10, raised the same way. A guest already heading for the ride checks only that its intensity is no more than 10. At the ride, a refusal adds a thought ("X looks too intense for me", "I want to go on something more thrilling than X", "Just looking at X makes me feel sick") and lowers the guest's happiness target by 8.CodeOpenRCT2 v0.5.6
How we know
188 static constexpr RideRating_t NauseaMaximumThresholds[] = { 189 300, 190 600, 191 800, 192 1000,
src/openrct2/entity/Guest.cpp lines 188–193 at 82b3097 · upstream ↗ 2005 if (ride.id == guestHeadingToRideId) ⋮ 2007 if (ride.ratings.intensity > RideRating::make(10, 00) && !gameState.cheats.ignoreRideIntensity) ⋮ 2009 GuestRideIsTooIntense(*this, ride, peepAtRide); 2010 return false;
src/openrct2/entity/Guest.cpp lines 2005–2012 at 82b3097 · upstream ↗ 2032 if (!isPrecipitating || !GuestShouldRideWhileRaining(*this, ride)) ⋮ 2034 if (!gameState.cheats.ignoreRideIntensity) ⋮ 2036 // Intensity calculations. Even though the max intensity can go up to 15, it's capped 2037 // at 10.0 (before happiness calculations). A full happiness bar will increase the max 2038 // intensity and decrease the min intensity by about 2.5. 2039 RideRating_t maxIntensity = std::min(intensity.getMaximum() * 100, 1000) + happiness; 2040 RideRating_t minIntensity = (intensity.getMinimum() * 100) - happiness; 2041 if (ride.ratings.intensity < minIntensity) ⋮ 2043 if (peepAtRide) ⋮ 2045 insertNewThought(PeepThoughtType::moreThrilling, ride.id); 2046 if (happinessTarget >= 64) ⋮ 2048 happinessTarget -= 8; ⋮
src/openrct2/entity/Guest.cpp lines 2032–2077 at 82b3097 · upstream ↗ 2383 static void GuestRideIsTooIntense(Guest& guest, Ride& ride, bool peepAtRide) ⋮ 2385 if (peepAtRide) ⋮ 2387 guest.insertNewThought(PeepThoughtType::intense, ride.id); 2388 if (guest.happinessTarget >= 64) ⋮ 2390 guest.happinessTarget -= 8; ⋮ 2392 ride.updatePopularity(0); ⋮ 2394 guest.choseNotToGoOnRide(ride, peepAtRide, true);
src/openrct2/entity/Guest.cpp lines 2383–2395 at 82b3097 · upstream ↗ 46 moreThrilling = 4, // "I want to go on something more thrilling than X" 47 intense = 5, // "X looks too intense for me" 48 haventFinished = 6, // "I haven't finished my X yet" 49 sickening = 7, // "Just looking at X makes me feel sick"
src/openrct2/entity/Guest.h lines 46–49 at 82b3097 · upstream ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Checked by a second AI model, 2026-10-26.
- ^In OpenRCT2 a guest refuses a ride that has crashed unless its happiness is at least 225 of 255, thinking "I'm not going on X - it isn't safe". Free transport rides are exempt.CodeOpenRCT2 v0.5.6
How we know
1951 // Assuming the queue conditions are met, peeps will always go on free transport rides. 1952 // Ride ratings, recent crashes and weather will all be ignored. 1953 auto ridePrice = RideGetPrice(ride); 1954 if (!ride.getRideTypeDescriptor().flags.has(RtdFlag::isTransportRide) || ride.value == kRideValueUndefined 1955 || ridePrice != 0)
src/openrct2/entity/Guest.cpp lines 1951–1955 at 82b3097 · upstream ↗ 1985 // If happy enough, peeps will ignore the fact that a ride has recently crashed. 1986 if (ride.lastCrashType != RIDE_CRASH_TYPE_NONE && happiness < 225) ⋮ 1988 if (peepAtRide) ⋮ 1990 insertNewThought(PeepThoughtType::notSafe, ride.id); 1991 if (happinessTarget >= 64) ⋮ 1993 happinessTarget -= 8; ⋮ 1995 ride.updatePopularity(0); ⋮ 1997 choseNotToGoOnRide(ride, peepAtRide, true); 1998 return false;
src/openrct2/entity/Guest.cpp lines 1985–1999 at 82b3097 · upstream ↗ 72 notSafe = 30, // "I'm not going on X - it isn't safe"src/openrct2/entity/Guest.h line 72 at 82b3097 · upstream ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Checked by a second AI model, 2026-10-26.
- ^In OpenRCT2 a guest's happiness moves 4 points at a time toward a target. With each update the target drifts a point toward the middle of the 0-255 scale, and it sinks while the guest is low on energy, hungry or thirsty, or badly needs the toilet. A guest whose nausea target is 128 or more may throw up while walking, more likely the sicker it is.CodeOpenRCT2 v0.5.6
How we know
678 void Guest::updateMotivesIdle() ⋮ 680 // Idle peep happiness tends towards 127 (50%). 681 if (happinessTarget >= 128) 682 happinessTarget--; 683 else 684 happinessTarget++; ⋮ 686 nauseaTarget = std::max(nauseaTarget - 2, 0); ⋮ 688 if (energy <= 50) ⋮ 690 happinessTarget = std::max(happinessTarget - 2, 0); ⋮ 693 if (hunger < 10) ⋮ 695 happinessTarget = std::max(happinessTarget - 1, 0); ⋮ 698 if (thirst < 10) ⋮
src/openrct2/entity/Guest.cpp lines 678–722 at 82b3097 · upstream ↗ 790 uint8_t newHappiness = happiness; 791 uint8_t newHappinessGrowth = happinessTarget; 792 if (newHappiness >= newHappinessGrowth) ⋮ 794 newHappiness = std::max(newHappiness - 4, 0); 795 if (newHappiness < newHappinessGrowth) 796 newHappiness = newHappinessGrowth; ⋮ 798 else ⋮ 800 newHappiness = std::min(255, newHappiness + 4); 801 if (newHappiness > newHappinessGrowth) 802 newHappiness = newHappinessGrowth; ⋮ 805 if (newHappiness != happiness) ⋮ 807 happiness = newHappiness; ⋮
src/openrct2/entity/Guest.cpp lines 790–809 at 82b3097 · upstream ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Checked by a second AI model, 2026-10-26.
- ^In OpenRCT2, while a guest off a ride consumes what it carries, a drink raises its thirst meter (fuller is higher) by 7 a step, and food raises its hunger meter by 7, lowers its thirst meter by 3 and fills its bladder by 2: any food makes a guest thirstier.CodeOpenRCT2 v0.5.6
How we know
723 /* rct2: 0x0068FA89*/ 724 void Guest::updateConsumptionMotives() ⋮ 726 if (timeToConsume == 0 && hasFoodOrDrink()) ⋮ 728 timeToConsume += 3; ⋮ 731 if (timeToConsume != 0 && state != PeepState::onRide) ⋮ 733 timeToConsume = std::max(timeToConsume - 3, 0); ⋮ 735 if (hasDrink()) ⋮ 737 thirst = std::min(thirst + 7, 255); ⋮ 739 else ⋮ 741 hunger = std::min(hunger + 7, 255); 742 thirst = std::max(thirst - 3, 0); 743 toilet = std::min(toilet + 2, 255);
src/openrct2/entity/Guest.cpp lines 723–744 at 82b3097 · upstream ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Checked by a second AI model, 2026-10-26.
- ^In OpenRCT2 a guest's full periodic update runs once every 512 ticks, and on every second one (once every 1,024 ticks) a walking or sitting guest in the park picks one thought at random from those that apply, tired, hungry, thirsty, needing the toilet, or running out of cash, and heads for the nearest food stall, drinks stall, toilet or cash machine to match. A guest leaving the park thinks only "I want to go home". On the alternate updates a guest with nausea of 140 or more thinks "I feel sick", and at 200 or more thinks "I feel very sick" and heads for first aid.CodeOpenRCT2 v0.5.6revised
How we know
833 void Guest::tick128UpdateGuest(uint32_t index) ⋮ 835 const auto currentTicks = getGameState().currentTicks; 836 const bool ticksMatchIndex = (index & 0x1FF) != (currentTicks & 0x1FF); 837 if (ticksMatchIndex && !peepFlags.has(PeepFlag::positionFrozen)) ⋮ 839 updateConsumptionMotives(); 840 return;
src/openrct2/entity/Guest.cpp lines 833–841 at 82b3097 · upstream ↗ 983 if ((index & 0x3FF) == (currentTicks & 0x3FF)) ⋮ 985 /* Effect of masking with 0x3FF here vs mask 0x1FF, 986 * which is used in the encompassing conditional, is 987 * to reduce how often the content in this conditional 988 * is executed to once every second time the encompassing 989 * conditional executes. */
src/openrct2/entity/Guest.cpp lines 983–989 at 82b3097 · upstream ↗ 991 if (!outsideOfPark && (state == PeepState::walking || state == PeepState::sitting)) ⋮ 993 uint8_t num_thoughts = 0; 994 PeepThoughtType possible_thoughts[5]; ⋮ 996 if (peepFlags.has(PeepFlag::leavingPark)) ⋮ 998 possible_thoughts[num_thoughts++] = PeepThoughtType::goHome; ⋮ 1000 else ⋮ 1002 if (energy <= 70 && happiness < 128) ⋮ 1004 possible_thoughts[num_thoughts++] = PeepThoughtType::tired; ⋮ 1007 if (hunger <= 10 && !hasFoodOrDrink()) ⋮ 1009 possible_thoughts[num_thoughts++] = PeepThoughtType::hungry; ⋮ 1012 if (thirst <= 25 && !hasFoodOrDrink()) ⋮ 1014 possible_thoughts[num_thoughts++] = PeepThoughtType::thirsty; ⋮
src/openrct2/entity/Guest.cpp lines 991–1033 at 82b3097 · upstream ↗ 1036 if (num_thoughts != 0) ⋮ 1038 PeepThoughtType chosen_thought = possible_thoughts[ScenarioRand() % num_thoughts]; ⋮ 1040 insertNewThought(chosen_thought); ⋮ 1042 switch (chosen_thought) ⋮ 1044 case PeepThoughtType::hungry: 1045 GuestHeadForNearestRideWithFlag(*this, false, RtdFlag::sellsFood); 1046 break; 1047 case PeepThoughtType::thirsty: 1048 GuestHeadForNearestRideWithFlag(*this, false, RtdFlag::sellsDrinks); 1049 break; 1050 case PeepThoughtType::toilet: 1051 GuestHeadForNearestRideWithSpecialType(*this, false, RtdSpecialType::toilet); ⋮
src/openrct2/entity/Guest.cpp lines 1036–1058 at 82b3097 · upstream ↗ 1068 if (nausea >= 140) ⋮ 1070 PeepThoughtType thought_type = PeepThoughtType::sick; 1071 if (nausea >= 200) ⋮ 1073 thought_type = PeepThoughtType::verySick; 1074 GuestHeadForNearestRideWithSpecialType(*this, true, RtdSpecialType::firstAid); ⋮ 1076 insertNewThought(thought_type);
src/openrct2/entity/Guest.cpp lines 1068–1077 at 82b3097 · upstream ↗ 44 sick = 2, // "I feel sick" 45 verySick = 3, // "I feel very sick"
src/openrct2/entity/Guest.h lines 44–45 at 82b3097 · upstream ↗ 51 goHome = 9, // "I want to go home"src/openrct2/entity/Guest.h line 51 at 82b3097 · upstream ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Revised after a check by a second AI model, 2026-10-26.
- ^In OpenRCT2 a guest with energy of at least 55, happiness of at least 45 and £5 or more in pocket always stays in the park (energy 70 and happiness 60 in a park without money). Any other guest has about a 1 in 20 chance at each check of deciding to go home.CodeOpenRCT2 v0.5.6
How we know
3027 /* Peeps that are happy enough, have enough energy and 3028 * (if appropriate) have enough money will always stay 3029 * in the park. */ 3030 if (!guest.peepFlags.has(PeepFlag::leavingPark)) ⋮ 3032 if (getGameState().park.flags.has(ParkFlag::noMoney)) ⋮ 3034 if (guest.energy >= 70 && guest.happiness >= 60) ⋮ 3036 return; ⋮ 3039 else ⋮ 3041 if (guest.energy >= 55 && guest.happiness >= 45 && guest.cashInPocket >= 5.00_GBP) ⋮ 3043 return; ⋮ 3048 // Approx 95% chance of staying in the park 3049 if ((ScenarioRand() & 0xFFFF) > 3276) ⋮
src/openrct2/entity/Guest.cpp lines 3027–3055 at 82b3097 · upstream ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Checked by a second AI model, 2026-10-26.
- ^In OpenRCT2 a walking guest checks whether it is lost each time it reaches the next point on its way (unless it has stepped into water), and the pathfinder also checks at a dead end, a path whose only way on is back. In a park with at least two rides every second check adds to its lost counter; at 254 the guest thinks "I'm lost!" and its happiness target falls by 30, and the counter drops back to 230, so the thought repeats on later checks.CodeOpenRCT2 v0.5.6revised
How we know
1923 // Check if in a dead end (i.e. only edge is where the peep came from) 1924 if (!(edges & ~(1 << direction))) ⋮ 1926 // In a dead end. Check if peep is lost, etc. 1927 peep.checkIfLost(); 1928 peep.checkCantFindRide(); 1929 peep.checkCantFindExit();
src/openrct2/peep/GuestPathfinding.cpp lines 1923–1929 at 82b3097 · upstream ↗ 5475 const auto [pathingResult, _] = performNextAction(); 5476 if (!(pathingResult & PATHING_DESTINATION_REACHED)) 5477 return; ⋮ 5479 if (getNextIsSurface()) ⋮ 5481 auto surfaceElement = MapGetSurfaceElementAt(nextLoc); ⋮ 5483 if (surfaceElement != nullptr) ⋮ 5485 int32_t water_height = surfaceElement->getWaterHeight(); 5486 if (water_height > 0) ⋮ 5488 moveTo({ x, y, water_height }); 5489 setState(PeepState::falling); 5490 return; ⋮ 5495 checkIfLost(); ⋮
src/openrct2/entity/Guest.cpp lines 5475–5497 at 82b3097 · upstream ↗ 1331 void Guest::checkIfLost() ⋮ 1333 if (!peepFlags.has(PeepFlag::lost)) ⋮ 1335 if (RideGetCount() < 2) 1336 return; 1337 peepFlags.flip(PeepFlag::unknown21); ⋮ 1339 if (!peepFlags.has(PeepFlag::unknown21)) 1340 return; ⋮ 1342 timeLost++; 1343 if (timeLost != 254) 1344 return; 1345 timeLost = 230; ⋮ 1347 insertNewThought(PeepThoughtType::lost); ⋮
src/openrct2/entity/Guest.cpp lines 1331–1349 at 82b3097 · upstream ↗ 58 lost = 16, // "I'm lost!"src/openrct2/entity/Guest.h line 58 at 82b3097 · upstream ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Revised after a check by a second AI model, 2026-10-26.
- ^In OpenRCT2 the park rating starts from 1150 (1050 in a park set to a difficult rating). The guest count adds from -150 at none to +3 at 2,000 or more. Happy guests, those above 128 on a 0-255 happiness scale, add from -500 at none to nothing once five in six guests are happy. Guests leaving the park who can't find the exit cost 7 points each beyond the first 25.CodeOpenRCT2 v0.5.6
How we know
383 int32_t result = 1150; 384 if (park.flags.has(ParkFlag::difficultParkRating)) ⋮ 386 result = 1050; ⋮ 389 // Guests ⋮ 391 // -150 to +3 based on a range of guests from 0 to 2000 392 result -= 150 - (std::min<int32_t>(2000, park.numGuestsInPark) / 13); ⋮ 394 // Find the number of happy peeps and the number of peeps who can't find the park exit 395 uint32_t happyGuestCount = 0; 396 uint32_t lostGuestCount = 0; 397 for (auto peep : EntityList<Guest>()) ⋮ 399 if (!peep->outsideOfPark) ⋮ 401 if (peep->happiness > 128) ⋮
src/openrct2/world/Park.cpp lines 383–424 at 82b3097 · upstream ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Checked by a second AI model, 2026-10-26.
- ^OpenRCT2's park rating then weighs the rides: the average uptime gives -200 to 0; rated rides whose average excitement is near 3.7 and intensity near 5.2 give up to 0 from -100; and the summed excitement and intensity of all rated rides, each capped, give -200 to 0.CodeOpenRCT2 v0.5.6
How we know
426 // Rides ⋮ 428 int32_t rideCount = 0; 429 int32_t excitingRideCount = 0; 430 int32_t totalRideUptime = 0; 431 int32_t totalRideIntensity = 0; 432 int32_t totalRideExcitement = 0; 433 for (auto& ride : RideManager(gameState)) ⋮ 435 totalRideUptime += 100 - ride.downtime; 436 if (RideHasRatings(ride)) ⋮ 438 totalRideExcitement += ride.ratings.excitement / 8; 439 totalRideIntensity += ride.ratings.intensity / 8; 440 excitingRideCount++; ⋮
src/openrct2/world/Park.cpp lines 426–475 at 82b3097 · upstream ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Checked by a second AI model, 2026-10-26.
- ^OpenRCT2's park rating loses 4 points for each piece of litter at least 7,680 ticks old, up to 150 pieces, and a penalty for casualties; the result is clamped to 0-999 and recalculated every 512 ticks. A cheat can force the rating to a set value.CodeOpenRCT2 v0.5.6
How we know
477 // Litter ⋮ 479 // Counts the amount of litter whose age is min. 7680 ticks (5~ min) old. 480 const auto litterList = EntityList<Litter>(); 481 const auto litterCount = std::count_if( 482 litterList.begin(), litterList.end(), [](auto* litter) { return litter->getAge() >= 7680; }); ⋮ 484 result -= 600 - (4 * (150 - std::min<int32_t>(150, litterCount))); ⋮ 487 result -= park.ratingCasualtyPenalty; 488 result = std::clamp(result, 0, 999); 489 return result;
src/openrct2/world/Park.cpp lines 477–489 at 82b3097 · upstream ↗ 333 // Every ~13 seconds 334 if (currentTicks % 512 == 0) ⋮ 336 park.rating = CalculateParkRating(park, gameState);
src/openrct2/world/Park.cpp lines 333–336 at 82b3097 · upstream ↗ 378 if (gameState.cheats.forcedParkRating != kForcedParkRatingDisabled) ⋮ 380 return gameState.cheats.forcedParkRating;
src/openrct2/world/Park.cpp lines 378–381 at 82b3097 · upstream ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Checked by a second AI model, 2026-10-26.
- ^In a 2010 interview Persson described the builder game he was working on when he came across Infiniminer as "a lightweight Dwarf Fortress", "kinda like if DF and Rollercoaster Tycoon had a baby".InterviewGamasutra, Notch interview, 23 March 2010revised
How we know
It was supposed to be a lightweight Dwarf Fortress. Kinda like if DF and Rollercoaster Tycoon had a baby.
How did you come across Infiniminer? · archived copy ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Revised after a check by a second AI model, 2026-10-26.
- ^Persson wrote in October 2011 that he started on Minecraft in the summer of 2009 with a top-down isometric mining game pitched as "Dwarf Fortress meets Rollercoaster Tycoon meets Dungeon Keeper", then played Infiniminer, saw that a first-person view with blocky graphics worked well, and began prototyping that.Dev blogNotch, "Happy birthday, us!", 16 October 2011
How we know
I started working on Minecraft in the summer of 2009, starting with a top-down isometric mining game. The elevator pitch for the game was “Dwarf Fortress meets Rollercoaster Tycoon meets Dungeon Keeper”. … but then I played a game called Infiniminer and realized the first person perspective with blocky graphics worked really well and started prototyping it.
second paragraph · archived copy ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Checked by a second AI model, 2026-10-26.
- ^Sawyer calls RollerCoaster Tycoon 2 his favorite, but thinks the original and its expansion packs may have been better games: the sequel's free-form play took away some of the challenge, and the original's scenarios were better. RollerCoaster Tycoon Classic, which recreates the sequel, brought back the original's scenario structure, for 95 scenarios in all.InterviewArcade Attack, Chris Sawyer interview (2018)revised
How we know
RollerCoaster Tycoon 2 is my personal favourite
answer on his favourite RollerCoaster Tycoon game · archived copy ↗ The park scenarios I designed for the original game and its expansion packs were better too … Looking back though I think the original game and its expansion packs might have actually been better “games” … what this added in terms of features and flexibility I think it also lost in terms of taking away the challenge and sense of achievement of the original game. … although it recreates the entire RollerCoaster Tycoon 2 game on the more modern platforms I also included the park scenario challenge structure from the original game … It was amazing seeing that in total this meant 95 different park scenarios to work through
same answer · archived copy ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Revised after a check by a second AI model, 2026-10-26.
- ^Sawyer said the RollerCoaster Tycoon engine was then adapted for a new transport game, Chris Sawyer's Locomotion (2004), so the code went full circle from the abandoned Transport Tycoon 2.InterviewRetro Gamer 138, Chris Sawyer interview · Chris Sawyer, site biography
How we know
RollerCoaster Tycoon was developed from the ashes of the abandoned Transport Tycoon 2 project, and now the well-honed RollerCoaster Tycoon game engine was then being adapted to create a new transport game.
p. 96, answer on Locomotion · archived copy ↗ The long-awaited sequel to Transport Tycoon, Chris Sawyer's Locomotion, was finally completed and released through Atari in October 2004.
biography · archived copy ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Checked by a second AI model, 2026-10-26.
- ^PC Gamer's Ellen McGrody likened Parkitect in 2018 to the early RollerCoaster Tycoon games, as isometric and management-focused, and wrote that it had grown from a recreation of the isometric rollercoaster sim into an evolution of it. Its developers, quoted there, speak of "older games" without naming one.WebPC Gamer, Parkitect (2018)revised
How we know
Like the early RollerCoaster Tycoon games, it's isometric and focused on management.
deck · archived copy ↗ the game has grown from a simple recreation of the isometric rollercoaster sim to an evolution of it.
paragraph 2 · archived copy ↗ "People were unsure whether we were only trying to recreate older games or if we were going to add anything meaningful and new," they said
paragraph 3 · archived copy ↗ Checked against the evidence by its author, an AI model, 2026-10-26.
Revised after a check by a second AI model, 2026-10-26.
Sources
Code
- OpenRCT2 contributors. 2026. “OpenRCT2 source code, release v0.5.6.” Commit 82b3097. OpenRCT2/OpenRCT2 @ 82b3097 · licence, all uses
Primary
- Bauman, Steve and Chris Sawyer. 2000. “The Pursuit of Fun — Chris Sawyer interview.” Computer Games Magazine (cdmag.com). original · archived · licence, all uses
- Interactive, Hasbro and Infogrames Interactive. 2001. “RollerCoaster Tycoon mini manual.” Hasbro Interactive / Infogrames Interactive. original · archived · licence, all uses
- Attack, Arcade. 2018. “Chris Sawyer (Transport Tycoon/RollerCoaster Tycoon) – Interview.” Arcade Attack. original · archived · licence, all uses
- Sawyer, Chris. n.d. “Chris Sawyer Software Development: INFO.” Chris Sawyer Software Development. original · archived · licence, all uses
- Sawyer, Chris. n.d. “10 things you (probably) never knew about Chris Sawyer's Tycoon games...” Chris Sawyer Software Development. original · archived · licence, all uses
- Barnes, Adam. 2015. “In the chair with Chris Sawyer — Retro Gamer 138.” Retro Gamer, issue 138, February 2015. Imagine Publishing. original · archived · licence, all uses
- Sawyer, Chris. n.d. “Frequently Asked Questions: about Chris Sawyer & Game Development.” Chris Sawyer Software Development. original · archived · licence, all uses
- Handy, Alex and Markus Persson. 2010. “Interview: Markus 'Notch' Persson Talks Making Minecraft.” Gamasutra (UBM). original · archived · licence, all uses
- Persson, Markus. 2011. “Happy birthday, us!” The Word of Notch (Tumblr). original · archived · licence, all uses
Secondary
- staff, GameSpot. 1999. “New Releases (GameSpot, 22 March 1999).” GameSpot (ZDNet). original · archived · licence, all uses
- Bates, Jason. 1999. “Roller Coaster Tycoon (IGN review).” IGN. original · archived · licence, all uses
- Dunkin, Alan. 1999. “RollerCoaster Tycoon Review (GameSpot).” GameSpot (ZDNet). original · archived · licence, all uses
- Green, Jeff. 1999. “Computer Gaming World 180: RollerCoaster Tycoon review.” Computer Gaming World, issue 180, July 1999, printed pp. 159–160. Ziff Davis. original · archived · licence, all uses
- staff, Computer Games Strategy Plus. 2000. “The Computer Games Awards: The Best Games of 1999 — Strategy Game of the Year.” Computer Games Strategy Plus (Strategy Plus, Inc.). original · archived · licence, all uses
- World, Computer Gaming. 2002. “Computer Gaming World 216: RollerCoaster Tycoon sales item.” Computer Gaming World, issue 216, July 2002, printed p. 42. Ziff Davis. original · archived · licence, all uses
- McGrody, Ellen. 2018. “Parkitect is reviving the classic rollercoaster sim.” PC Gamer (Future plc). original · archived · licence, all uses