SimCity Source Code Is Now Open 360
Tolkien writes "Source code for SimCity has been released under the GPLv3. For legal reasons the open source version was renamed Micropolis, which was apparently the original working title. The OLPC will also be getting a SimCity branded version that has been QA'ed by Electronic Arts. Some very cool changes have been made by Don Hopkins, who updated and ported what is now Micropolis. (Here is an earlier Slashdot discussion kicked off by a submission Don made.) Among other things, it has been revamped from the original C to using C++ with Python. Here is the page linking all the various source code versions. Happy hacking!"
Craptastic Code? (Score:5, Insightful)
I dunno, from the QA side in 88/89, the results were darn clean. The simulation would crash from time to time, but the interface, never. To all those who point to multi-threaded apps and say it's too hard for coders to do, I'd suggest that really good programmers are hard to come by.
So maybe somebody can point to what's being complained about here. Back in the day, we didn't have the luxury of infinite space for code and variables. But from a quality-of-product point-of-view, very little could match (and can match) SimCity
Re:Boo-hoo (Score:5, Insightful)
So where is it? (Score:3, Insightful)
good news (Score:5, Insightful)
Re:No, its worse (Score:3, Insightful)
Glad you set me straight on that.
C++ & Python does seem to be a weird and cumbersome choice though. But when all you have is a hammer everything looks like a nail. I hope at least the core simulation is all one language.
Re:No, its worse (Score:5, Insightful)
Put aside your prejudices and you may actually learn something.
Re:No, its worse (Score:5, Insightful)
One person's hammer is another person's "right tool". If you read the article, it appears to me that the guy who ported the code has a clue about a few things. I'm gonna bet that his choice of Python was thought through. Likely he is leveraging some existing infrastructures that he knows, thus speeding the time-to-release. To me, that's a very handy hammer.
The code is now open. Feel free to hack onto oblivion the design choices you don't appreciate.
The plane crash disaster has been removed as a res (Score:5, Insightful)
It's official, the terrorists have won.
Re:What the fuck are you talking about? (Score:5, Insightful)
The original SimCity code written in C ran just fine of an 8 bit 1.02 MHz 6510. And I've optimized to run even more efficiently since then. So worrying about Python slowing SimCity down is totally lacking in perspective -- penny wise but pound foolish. SimCity is already many orders of magnitude faster than it needs to be. Anyway, the core simulator is written in C, so Python doesn't slow it down at all. You should learn more about Python programming, developing Python modules in C and C++, and using SWIG for integrating Python and native code, and using Python as an embedded application extension language, before "making such [...] comments".
Using Python drastically speeds up the software development process, which is a great thing when software developer's time is so expensive, and computers are so fast. Python is also is a much easier language for kids to read, learn and program -- and the OLPC is an educational project, not a laptop project.
-Don
Re:SNES version? (Score:3, Insightful)
Re:PostScript (Score:5, Insightful)
NeWS [wikipedia.org] was like AJAX, but with PostScript instead of JavaScript for programming, with PostScript instead of DHTML for rendering, and with PostScript instead of XML for data representation.
-Don
Re:Opportunity for a more realistic SimCity... (Score:5, Insightful)
From Designing User Interfaces to Simulation Games, a summary of Will Wright's talk to Terry Winnograd's User Interface Class at Stanford, in 1996. [donhopkins.com]:
-Don
Re:Nice move, but... (Score:3, Insightful)
Cleaning up code -production code- is often not an option in the commercial world, nevermind code thats not used and doesn't return a profit anymore.
Add to that, that a lot of games, especially more recent ones, are full of middlewares that the company doesn't own...that rules those out.
Re:Craptastic Code? (Score:2, Insightful)
Re:Version? (Score:3, Insightful)
I admitedly never have tried SimCity 4, for fear it was going to be like 3000, only even more annoying.
Re:The plane crash disaster has been removed as a (Score:4, Insightful)
(That and I want a global thermal-nuclear war scenerio.)
Re:Craptastic Code? (Score:5, Insightful)
Re:The plane crash disaster has been removed as a (Score:2, Insightful)
Anyway, the plane crash is one of the milder disasters in Sim City, so it would be teaching the kids that place crashes don't do much damage.
Actually, I think it wouldn't remind most of those kids of anything.