I didn’t finish Hardcore Computer Simulator in time for the deadline of the competition. I ran a small post-mortem on the game and posted it at TIGSource, and I’ve reproduced it “after the jump”.
Things that went wrong:
No clear design
The game started out, conceptually, as an RTS where you placed computer components on a grid in order to generate “bits” which would travel along the copper tracking (i don’t know what it’s called) of the circuitboard, which you would lay down. Then it turned into a clone of Outpost Kaloki, and then a kind of cross between that and Sim City. The simulated heat flow led to a lot of confusion over how the game worked (and whetehr the fluids could be made fun).
Not having a clear design led to different aims throughout the project, which led to development of a few systems that didn’t need to be developed. I was also keen to capitalise on the “hardcore” of the name, if not in the game design, then both in the visual feel of the game and in as much of the code as possible. It wasn’t possible to add much actual depth in the design in time, as it would have required too much balance. There’s probably too much in there as it is.
Anyway this led to the fluids thing, which took days to get in because it’s really annoyingly complicated code. I had fun trying to crack the problem yet again (I’ve tried several times before) and it turned out that the only way I could get it done was basically copy-pasting the code from someone’s java implementation.
A combination of lack of management and a three day holiday in Paris led to my interest waning in the face of a tough deadline, and then I started reasoning that if I wasn’t interested in the project then I’d never make it good anyway and it was too much like hard work and we do these things for the love of it right? So I basically stopped working on it on the 17th or thereabouts.
That’s about it. I wouldn’t have had time to do any decent art either, which sucks, and had decided early on that the game would basically not have sound. Overall it was a bit of a washout. Sorry to disappoint anyone who was looking forward to the game.
I’ve uploaded the build, with source and research papers, over here. Instructions for use below (and included in the archive). You’ll need to install Microsoft .NET Framework 2.0 if you haven’t already.
Hardcore Computer Simulator
The game is a cross between simple tycoon games like Outpost Kaloki and complex grid-based simulations like Sim City. The idea was that you place components on the circtuitboard, they work together to provide computing power to Users, and when in use, they generate heat which needs to be removed from the case or the parts overheat.
–Playing the game–
There is no way to get money back currently, so you’ll have to place what you want and then watch the simulation run. Place parts by clicking the symbols at the bottom of the screen (a popup will tell you what you are buying). You need to click twice as the first click brings up a new menu. Place them wherever you like. The striped areas are vents. You’ll need to buy at least one of each process to see Users’ processes running, but it doesn’t matter anyway as there’s no result from doing this yet.
Click the icons on the right to show various windows (the comp window is for editing components, so if you change this and save them, you’ll fix your changes forever). The console window does nothing. The status window show what’s up with your money and how many resources are left. The users window shows who’s connected and what processes they’re running (they’re all trying to run games at the moment). The component window appears when you click a component you placed on the grid.
Click the heat button a few times to increase the opacity of an overlay showing the simulated heat flow in the computer case. This is the best bit really. Place fans (change the fan direction by clicking on th efan and adjusting the slider in the component window) to direct air flow around the case. If air is coming into the case, the area near the vent is cleared of heat, so you need to set fans so that air comes in through one of the vents and out through the other. Experiment with what works best.
That’s it, enjoy!
If I were to finish this game, I’d need to put in Users using different processes; time limits on levels; getting money back from users who were successfully running processes; possibly component destruction from overheating (they already stop functioning); some better graphics; some level design (possibly with obstructions in the circuitboard when you start); a use for the logs I downloaded; more component types; possibly a more coherent way for components to interact (at the moment the only thing resulting from actually placing the components is their heat flow which isn’t supposed to matter in the early game); a ton of other stuff I thought of.