Welcome to RCT Inc.

Order Below
help support RCT Inc.

 

RCT Inc.
- Home
-
News
-
Report a Error
-
Feedback Forum
-
Jobs
-
Awards
-
Staff Info
-
RCT Inc. Shop

Inter@ct
- Message Boards
- Competitions
- Community Parks
- Peoples Spotlight
-
Submissions

RCT3
-
Main Section
- Game Info
- Screenshots

- Video Footage
- Add-on
- Patches
- Soaked!

- Wild!

RCT2
- Tracks
- Save Game/Parks
- Game Info
- Workbenches
- Add-on Packs
- Scenarios
- Object Data
-
Ride & Shop Info
- Screenshots

- Miscellaneous Downloads
- Wacky Worlds
- Time Twisters

- Order RCT2

RCT1
-
Tracks
-
Save Game/Parks
-
Game Info
-
Ride & Shop Info
-
Workbenches
-
Add-on Packs
-
Scenarios
-
Order RCT

- Miscellaneous Downloads

Site Features
-
ER
-
Real Recreations
-
Helping Hand
-
Record Breakers
-
Gallery
-
Reviews
-
Interviews
-
Demo's

Information
-
All Game Info
-
Polls
-
Links
-
TOS
-
RCT Gold
-
RCT X-Box

 

 
 
    Interviews - Doctor J    

 

Interview with Dr J, who has made many RCT programs/utilities. 

 

Interviewer - Jacko (Q)

Interviews - Doctor J "James Hughes MD" (A)

on 23rd November 2001 via e-mail. 

 

Jacko - What got you into programming, and into RCT programming in particular?
Dr J - I'm an Electrical Engineer. I have a Master's degree. I've worked for a few companies and also had my own company. Most of my professional work has not involved programming; although one project involved writing ~27,000 lines of code to control a piece of semiconductor processing equipment. Since I've become a doctor, I don't get to use my engineering skills much. I program for recreation and to maintain some connection to my former career. I'll discuss my history with RCT programming later on.


Jacko - What are you a doctor in?
Dr J - "Family Practice" - which means I've spent three years in Residency training after medical school. I treat children and adults. I'm also trained in Obstetrics but that is a "legally dangerous" field in the US so I don't do that..


Jacko - How did you get into RCT?
Dr J - My first year of Residency was from July '98 to June 99. It involved 36 hour shifts followed by mere 12 hour days...repeated for what seemed like forever. When the new "class" started in July 99, I continued to stay up all night with them to teach them. So... it was about late September 99 before I had the luxury to do something as simple as "go shopping". Naturally, I went to a computer store. I saw "RollerCoaster Tycoon" and saw that it was written by Chris Sawyer - who's "Transport Tycoon" was a great game. I was a bit leery that a roller coaster game would be fun. But since it was written by Sawyer, I figured it would be worth the money


Jacko - What do you like best about RCT?
Dr J - The biggest limitation of Transport Tycoon was the inability to have stacked bridges. It simply was not a three dimensional game. RCT is a true three dimensional game. The display is a simple isometric view - but the internal data structure is 3D. That lets you build the wonderfully tangled coasters that everybody loves. I enjoy building; perhaps because I'm an Engineer. RCT makes it easy to build complicated structures such as coasters. The other great feature of RCT is the little guests. Without them, the game would be boring


Jacko - What do you dislike about RCT?
Dr J - I don't like the scenario unlocking scheme (you have to finish one before you get access to another). I don't like the fact that you have to wait, and wait, and wait, after you complete the objectives for a given scenario. And... I don't like that there is no provision for adding objects to the game


Jacko - Do you still have a great interest in RCT?
Dr J - As far as playing the game, I like to build very small parks with just a few coasters. My main interest is the coasters. I actually spend more time programming utilities for the game than playing the game itself. I've played several other games lately; but when I finish, they go into storage. None of them inspire me like RCT does. So, as long as there are other folks interested in RCT utilities, I'll stay interested in RCT.


Jacko - Would you call yourself a Coaster Enthusiast?
Dr J - I enjoy coasters but rarely get the chance to go to an amusement park. I don't get too excited about the steel behemoths - I don't feel any sense of "danger". But woodies - with all the creaking and shaking, and knowing that the nails get looser each time - are still fun.


Jacko - What is your favourite theme park?
Dr J - I feel deprived. The only park I've gone to in adult life is Astroworld in Houston, Texas - and I haven't even been since they were bought out by Six Flags. About 80% of the park is different from when I last went there


Jacko - What's your favourite coaster?
Dr J - By default, I have to say the "Texas Cyclone" at Astroworld.


Jacko - What programs/utilities have you made for RCT; as I bet there are a lot we don't know about?
Dr J - Here are my RCT related programs currently on my computer:

  • RCTRLEdecode
  • LL2CF
  • RCTgraphicsInspector
  • RCTexplorer
  • RCTsaveGameModifier
  • TD4changer
  • TP4toBMP
  • TD4viewer
  • TD4mirror
  • TD4speedup
  • TD4viewer
  • RCTtracks (never released)
  • MazeViewer (never completed)
  • TestTrn (for testing only)
  • RCTsounds (never completed)
  • RCTmapGenerator (not completed)
  • SavedGameConverter (never completed)
  • ScenarioManager (under development)

In addition, I've made several routines for special applications. I put them in my personal version of the RCTRLEdecode program. Then I delete them when I decide to try something else.

Also, there have been several people who started projects but did not finish them or release them. Some of them contacted me at some point to share some information about their projects. One really interesting program was called RCT Phantom Builder. It would build a designated track one piece at a time within the game. It was really fun to watch a coaster being built that way. Unfortunately, he never released it and I no longer have a copy of his prototype. There was also a rather involved flat map editor that was never finished.


Jacko - What inspired you to make all those RCT add-ons?
Dr J - The game itself is the main inspiration. Sawyer made an "elegant" game. It's natural for an engineer to be attracted to a well designed product. When I started playing RCT, My first thought was: "wow! I wish I had made this!" I also was drawn to the idea of a 3D viewer for the parks. To even consider beginning on such a thing, however, would require extensive knowledge of the save game files. I decided to look at the track files first, since they are much simpler. I saw that the TD4 files were encoded. I decided to look on the internet to see if there was any information already available. I looked around a little bit and came across RCTOA (RCT Online America) and really liked that sight. I went to the message board (first time I ever went to a message board) and decided to post a question about the file format. I picked the name "Doctor J", figuring that would keep me anonymous.

Luke Harless answered that the TD4 file format was described at his site. He had a copy of a newsgroup post that described the format except for the track piece codes and the checksum. I set about determining the track piece codes and got some help from Jonathon Wilson who had done some similar work. I began working on the checksum by building a maximum length coaster which had a brake section at the end. I could change the brake speed settings and thereby change individual bits of the last few bytes of the data. By observing the affect that had on the checksum, I was eventually able to determine the checksum method. I couldn't believe that the game used such an odd method so I went back to the internet and searched the newsgroups. Turns out that someone had already posted the checksum method. That left me wishing that there was a single web site that had all the known information about the RCT file formats. Also, about this time, several folks were pestering Henry Winkelstein to publish his information on the file structures. When he declined, that left me thinking that perhaps I would make a site with the information that I had. I organized my information into html files.

To inspect the files, I made a couple of programs. The RCTtracks program (never released) allowed me to finalize the information about the track files. The RCTRLEdecode program is the "mother" of most of my other programs. Since the RCT save files are encoded, general purpose hex editors are of no use. This program performs the decoding (and encoding) and allows simple hex editing. It is a lousy program compared to the general purpose hex editors - but it serves my purposes well! The overwhelming majority of the information at my site was determined with this program.

As I began building up more information, it became possible to start making some programs which would use that information. Some of the utilities were "inspired" as I learned about the file structure. For example: the ability to make roads, or repair vandalized items. Once I learned how to do those things, it was natural to make a utility which allowed others to do the same thing. Some of the utilities were inspired by wish lists. The mirror utility is a direct result of someone posting a wish list which included that idea. As soon as I read it, I thought "hey, that's an interesting idea - and not too difficult to implement!" Some of the items were the result of direct requests. One person asked me if it was possible to convert TP4 files to BMP files. I wanted to do some programming with palettes so I went ahead and made that program..


Jacko - Do you ever have any help when programming, or are you on your own
Dr J - All of the code is 100% mine. That's not the entire story when it comes to programming, however. The simpler utilities could be completely tested/debugged by me. The more complex programs require multiple users to test them. Also, suggestions and requests are important in shaping the more complex programs. For example, I had thought about a file management utility but did not think it would be useful; I also saw that someone else had made a type of file utility for RCT. However, "ALF" at Tycoon Planet then asked me for a more elaborate file utility. He assured me that it would be desirable. I was skeptical, but he kept persuading me; he also tested the first crude versions and provided valuable feedback. So...RCTexplorer is 100% coded by me alone; but it would not exist if not for "ALF". Version 3 of the Save Game Modifier (SGM) is the result of a lot of people encouraging me to work on it. In particular, "XuXus Petals" was invaluable in the early testing. As my utilities get more elaborate, more people are involved in testing and making suggestions.


Jacko - What is your favorite program/utility that you've made?
Dr J - This is difficult to answer. I certainly use RCTRLEdecode extensively. SGM is the most useful and most involved (12,000 lines of code so far... and climbing). I believe TD4mirror has been the most popular. But, for historical reasons, I have the fondest regard for the TD4speedUp program. It's the least useful program now - due to special code Sawyer added to LL to detect its use. And, it's the least useful program overall (after you've crashed a few coasters, the thrill wears off). But it is the program that "launched" a wave of more elaborate utilities and trainers. TD4changer soon followed as did the ride modification features of Techno's trainers; and, eventually, DragonsIOA trainers.


Jacko - How long did it take you to make the SGM?
Dr J - Fortunately, I don't keep track of the time I waste - err...make that "spend" - on programming. Version 1 of the SGM just did a few things. The real effort came in determining enough of the file structure to make those functions possible. It used an internal data structure for the game map similar to that used in RCT. Version 2 of the SGM used a true three dimensional array for the game map. That made it easier to carry out some of the new functions. For version 3, about half of the development time was spent trying to work out a reasonable user interface for setting the research items. I think it took about 6 weeks to get it into "release" condition. Sometimes I'll spend a whole weekend and every weeknight on programming. Sometimes, I don't get to program anything for a week. Obviously, the SGM is not the kind of program that can be hacked out in a couple of hours. Many of the subcomponents were already written for earlier programs. The random terrain generator was already written and tested. Even so, it took several weeks to finish the program.


Jacko - Have you ever thought about programming your own rollercoaster game?
Dr J - That was a big part of my original inspiration for getting involved with RCT programming. But, in reality, it would take many months to make a roller coaster simulator and two years or more (full time) to make a decent theme park game. I just don't have the time to try such a thing.


Jacko - What other games have you made programs/patches for?
Dr J - None, really. I mostly play strategy games. I play them through and when I start to replay them, they are often boring. So I'll hack something in the save game to give myself more money, ammunition, etc. But those are "one-time" modifications; not real programs that could be published. One of the first games I messed around with was the ancient "Adventure" game. I wanted to decode the message strings to get clues. It used a conditional 3-to-2 byte compression via reduced character set and also had rotating (sequential) XOR keys. That was harder to crack than any of the encryptions used in RCT


Jacko - Do you have any advice to those who may want to program their own utilities for RCT and other games?
Dr J - You have to be a programmer to program. You don't have to be a professional programmer - but you have to know something about programming. I've encountered lots of folks who don't know what a compiler is, but want to make a trainer (in an hour or two) for RCT! Sure, you can use something like "Trainer Maker Kit" to make a simple utility. No, you can't make a better program that DragonsIOA trainer without knowing why there are letters mixed with numbers in hexadecimal notation! Know your abilities; know what tools are available.

Start simple and build upon it. The current version of SGM has about 12,000 lines of code. I spent several tedious months collecting information about the file structures in order to make the various utilities. I published that information so that others could benefit as well. If you want to program for a particular game, check the internet to see what information is available.

There are two general approaches to game utilities: "Memory Trainers" and "Save Game Modifiers". Memory trainers are the most convenient for users but they are the most difficult to implement. And they are prone to crashing the game. Save game modifiers are not as convenient and they cannot make as many changes in the game. But they are very stable.

A last bit of advice… be aware of the legal issues. Obviously, you should not engage in software piracy of any form..


Jacko - What are your top 5 games of all time?
Dr J - You asked about "all time"… so I'll start by going back >20 years…

  • Zork : The first really successful game for personal computers; and, after an ill advised bet… the most popular cloned game ("Dungeon" on DecNet).
  • SimCity : The first really good "construction" game that I played.
  • Xcom UFO : It was so much fun directing the individual soldiers that it actually hurt when one of them died.
  • Transport Tycoon : I bought it from a bargain bin for $5; best value I ever got! It’s the closest thing to my notion of a perfect construction game.
  • RollerCoaster Tycoon : I guess I don't have to say anything about this one!


Jacko - What do you think of other "tycoon" games? Especially "Zoo Tycoon?
Dr J - I would say that adding "Tycoon" to a game is a cheap rip-off. But that’s how RollerCoaster Tycoon got its name! Obviously, you should not buy a game based on its title. Look at the screenshots, read reviews on the internet. And spend only your budgeted amount on games.

I received a preview disc of Zoo Tycoon. It crashed so often I quickly quit trying to play it. The release version is stable and the game is fun. Its more relaxing than RCT. But there are still problems with game-play. It also does not perform well with large zoos. If those problems could be improved, it would be a nice game. They released a tool for making your own animals and scenery objects. That’s a great benefit. But the tool may be too complex for most users. I haven't tried the tool. In fact, I've put the game away for now. Its no fun to build a zoo knowing that when it gets large, the game won't run properly and I'll have to abandon it. Of course, if you have a very powerful computer, it supposedly runs ok. I have a 450 MHz machine. (hmmm… those old games were fun with 10MHz processors and less than one MB of ram total.)


Jacko - What do you think of the current state of RCT and its community?
Dr J - Clearly the glory days of RCT have passed. I look around the message boards and only a few folks remain from the days when I started playing. Its amazing that the community is still as strong as it is. There has been no community support from the creator or distributor of the game. In fact, Sawyer has worked against the fans in various ways with the "anti-cheat" code in the game. The distributor abandoned the official web site ages ago - while the game was selling very well!


Jacko - What's your opinion on the official site?
Dr J - Its a very disappointing situation. It doesn't take much effort or brains to update a site once a year - but that doesn't happen there. The only good thing about the official site is that it forces fans to go looking for fan-created sites. And that keeps the community active.


Jacko - What RCT sites do you visit the most?
Dr J - It seems like I never have the time to look at many sites. Plus, I don't need to go looking for utilities. :)
RCTOA was my favorite site - but it died over a year ago. RCTUK has been a long standing favorite - and hosts my site! Danimation has been popular but I rarely post there. Lately, I spend most of my time at the RCT Station boards. I spend a lot of time IM'ing with ALF of TycoonPlanet. I visit other sites, but not on a regular basis.


Jacko - What do you think of RCT Inc?
Dr J - It has a nice layout. It is pleasant to look at. Good color schemes. A friendly atmosphere. And, most importantly, no "bogus cheats" like some web pages have. (When I see those, I don't go back to that web page.)


Jacko - Do you have any messages for Chris Sawyer if he ever reads this
Dr J - I would like for Chris to understand that the very few people (such as Henry and myself) who have made serious utilities for RCT are experienced programmers themselves… not teenage hackers with acne problems. We made these programs because we admire the game and appreciate its elegance. We are merely adding a few features that have been requested by the consumers. We are trying to make the game even more fun!


Jacko - What are you currently working on
Dr J - I'm making some improvements to the SGM. Such as: a simple map viewer for editing the park entry locations and boundaries; a "scenario manager" for assigning which files will be available as scenarios within the game; and, of course, the ability to edit and save SC4 scenario files. I have a routine for building coasters through terrain (and automatically removing trees in the way) but it needs a lot more work to make the terrain modifications "correctly". I've played around with a 3D park display - but the approach (software only) I tried was much too slow. I don't know what else I'll do.


Jacko - Any final messages for everyone out there
Dr J - Keep on having fun with RollerCoaster Tycoon!!!

 

e

 

e-mail RCT Inc. jackoltd@tycoonplanet.com

  Best viewed in 800x600+1024x768 resolution or above and High Colour
Copyright © 2001-2003 JackoLtd. All rights reserved. The RCT Inc. Name and Logo are Trademarks of JackoLtd.
 All other Trademarks are property of their respective owners.
Use of this Web Site Constitutes Acceptance of The RCT Inc. Terms of Service