RCT Discussion / Programming a rct2 clone?
- 05-June 12
-
Casimir Offline
I could be horribly wrong, but aren't the object limits in place to not "overfill" the then precious RAM?
If that is the case, a recode should be able to get those limits to ridiculous heights, considering that every decent computer has at the very least 2GB of RAM. -
ACEfanatic02 Offline
So, this is the first topic to get me to log in and actually post here in a looooong time. Hi guys. 久しぶりな。
First lets clear up this little bit of confusion:
RCT was written in Assembly because that was what was used at the time. When Chris Sawyer started working with games, C didn't really exist. (It was widely used by the time RCT came around, but why would he learn something new?) C does fine with memory allocation and pointer manipulation. Whether it's direct or not, in the end *all* programming is memory manipulation.It says on Chris Sawyer's site that RCT was programmed completely in Assembly and Machine Code, so you'd definitely need to know those to be able to replicate and improve upon the original. If you've ever read about Hex editing in RCT you'll see why its important that the game was programmed in a low level language because its basically based upon moving specific values into memory slots, which is much harder to control in C/C++.
In any case, modern languages allow far more structure in code, which means easier bug hunting and an inherently better result.
So.
On to the main topic at hand: the difficult part of a game like this would be resources, not coding. Graphics, music, etc. It's legal to find and use the files from an existing RCT install (this is how most open source clones work) but it is not legal to distribute said files with the game. Furthermore, if you're going to *improve* on any of those aspects, you will lose compatibility with the original game.
Anyway, if this is going to go forward, I would be interested in helping out. But only if we're serious about it. Full disclosure: I am far more proficient in Python than C, but the concepts should transfer easily enough (and the Qt GUI library I use is originally built in C++ anyway.) Not to discourage you, lucas92, but if "lots of programming in C++" means Hello World and a few console applications, this project is bit big to pull off just yet. If you have any code you can throw up on GitHub or the like to give an idea of what you can do, that'd be awesome. (And to put my money where my mouth is: https://github.com/ACEfanatic02 (only one project up there atm, everything else is a little too young to put up publicly.))
Finally, if we do get a group together, first priority should be to see if we can assist the FreeRCT project. He's clearly pretty far along and it doesn't help anyone to have multiple projects start and then fail partway through. -
Camcorder22 Offline
True...I didn't realize development on the game took place that early. C has been around since the 70's I believe (although I guess it wasn't widely used for a while after that)? An RCT clone wouldn't necessarily have to be done in Assembly, but I'd recommend to Lucas or whoever wants to work on this to at least learn a bit about Assembly and Logic Circuits before attempting it. From my experience, entry level C++ courses can make the concept of pointers and memory manipulation really esoteric and I didn't fully understand what was going on until Logic and Assembly. Fuck, I don't even think my first programming class even got into pointers... -
Super G Offline
Make a multiplayer option, so you can concurate with other peoples parks . Always wanna do that.
Tags
- No Tags