Slashdot Mirror


One SimCity Per Child

SimHacker writes "Electronic Arts has donated the original 'classic' version of Will Wright's popular SimCity game to the One Laptop Per Child project. SimCity is the epitome of constructionist educational games, and has been widely used by educators to unlock and speed-up the transformational skills associated with creative thinking. It's also been used in the Future City Competition by seventh- and eighth-grade students to foster engineering skills and inspire students to explore futuristic concepts and careers in engineering. OLPC SimCity is based on the X11 TCL/Tk version of SimCity for Unix developed and adapted to the OLPC by Don Hopkins, and the GPL open source code will soon be released under the name "Micropolis", which was SimCity's original working title. SJ Klein, director of content for the OLPC, called on game developers to create 'frameworks and scripting environments — tools with which children themselves could create their own content.' The long term agenda of the OLPC SimCity project is to convert SimCity into a scriptable Python module, integrate it with the OLPC's Sugar user interface and Cairo rendering library. Eventually they hope to apply Seymour Papert's and Alan Kay's ideas about constructionist education and teaching kids to program."

6 of 253 comments (clear)

  1. Awesome by TheGreatHegemon · · Score: 5, Interesting

    I remember I use to enjoy that game immensely when I was younger. I almost do believe it may very well help a person to develop their thinking abilities.

  2. EA Not Being Evil for a Change by hardburn · · Score: 4, Interesting

    Of late, it seems that EA is cleaning itself up. I between screwing up C&C: Generals (a patch for the expansion left the game in a broken state for a few years), employee mistreatment, and generally writing mostly shovelware franchise titles like Madden, I had been boycotting them. But now I think they deserve another chance because:

    1. Spore
    2. Give away the original C&C
    3. Made a C&C game that actually has a story connected to the rest of the C&C games
    4. One of the first developers to realize the Wii had potential

    So while I'm still keeping a close eye on them, they've at least convinced me that their games are worth buying.

    --
    Not a typewriter
  3. SimCity not all that constructionist... by Anonymous Coward · · Score: 5, Interesting
    A lengthy mailing list post from Alan Kaye, one of Papert's colleagues, raises the possibility that SimCity is not as constructionist as it seems at first glance:

    SimCity is similar but more pernicious. It is a black box of "soft
    somewhat arbitrary knowledge" that the children can't look at,
    question or change. For example, SC gets the players to discover that
    the way to counter rising crime is to put in more police stations.
    Most anthropologists, sociologists, psychologists, and economists
    would disagree violently. Alternate assumptions can't be tried, etc.
    This particular version of SimCity may be different, though, because it is open source. However, the children won't be able to truly experiment with it on the XO laptops until it is converted to Python, since the XO laptops don't ship with a C compiler (and children probably aren't going to pick up C easily, anyway).
  4. Re:Tag as SLASHVERTISEMENT by Fallingcow · · Score: 4, Interesting

    I've learned TONS of things from games and other diversions on the PC.

    Mavis Beacon (explicitly educational) taught me proper typing, but chatting with my friends on AIM and (especially) busy IRC channels taught me to type FAST.

    Shadow President is the reason I can locate practically any country on a map faster than the vast majority of people.

    A lot of stuff in my political science classes (and my own readings on philosophy in general) reminded me of ideas and people in Deus Ex.

    Medieval: Total War taught me more about medieval political geography, politics, and technology (war-related tech, that is) than I was ever taught in any level of my education (yeah, I know more from reading, but no class ever taught me this stuff; we always skipped from talking about the Fertile Crescent to covering the Age of Exploration. Seriously.)

    Rome: Total War and a couple of its mods (Rome: Total Realism and Europa Barbarorum, especially) have taught me a TON about the Hellenistic and Roman periods of history. Thanks to them, I know BOTH the Koine or Attic Greek AND Latin names for tons of Mediterranean cities (though I often don't know the modern name!)

    Bushido Blade 1 & 2 and Shogun: Total War taught me the names of a bunch of different Japanese weapons.

    I know a bit about the operation of a variety of firearms that I've never physically used, from paying close attention to the reload animations in dozens of games over the years (Counter-Strike and most WWII shooters are GREAT for this).

    OK, so a lot of it's not *useful* information, but I did learn :)

  5. Re:Nonsense. by ADRenalyn · · Score: 4, Interesting
    Funny that someone here has linked to my companies site...

    Our original goal at CitySimulation was to do what Google is doing now- build every major city in the U.S. in a real-time virtual environment. Our models are not built as quickly and easily (Google has airplanes with laser scanners, vans with mounted cameras, and high-tech GPS photo mapping software), but since every square inch of our models are 'hand-crafted', they are a lot more accurate, and of higher quality.

    Since we never got any investors to buy into the idea, we had to rely on doing developer projects, one building at a time. It' a nice use of real-time technology... A developer has a challenge of convincing the city council that their proposed building will fit within the context of the site and its surroundings. With an interactive model (like a video game), many questions about a design can be answered in one meeting.

    Anyway, we're now moving on to areas that Google and Microsoft are not (yet) interested in- proposed buildings/renovations, and building interiors. It's fun work, as close to creating video games that I'll probably ever get to be.

  6. SimCity and Python by SimHacker · · Score: 3, Interesting

    That version of SimCity is the original SimCity Classic code written in C, packaged as an ActiveX control. It's not written in Java or JavaScript (or PHP for that matter).

    The version of the code we're releasing initially uses the TCL/Tk scripting language and user interface toolkit. But the simulation code itself is written in C. It's plugged into the scripting language, which can call it, but only integrated to a limited extent (just what the user interface required, not exposing all the workings of the simulator).

    Next we will repackage the original simulator as a Python module. The first step is to recast the original C code into a C++ class, so all the global variables and global arrays are local instance variables of a SimCity object, so you can have any number of simulations active at one time and they will not interfere with each other.

    After SimCity is recast as a C++ object, we will plug it into Python and other scripting languages by using SWIG, which is a nice way to integrate C and C++ code into a whole bunch of different scripting languages.

    Then we'll rewrite the user interface in Python, based on the other efficient modules that are integrated into Python but written in C or C++, including the GTK user interface toolkit for X11, the Cairo graphics library (like PostScript graphics but much better and hardware accelerated), the Pango text layout engine (draws with Cairo, supports internationalized text, so SimCity can support Unicode text and be translated into languages with non-English-like layout such as Chinese, Hebrew, Arabic, etc.), a C++ tile engine I wrote for Python that draws with Cairo, pie menus I wrote in Python that draw with Cairo, and many other useful modules.

    The idea is to open up the simulator so it can be easily and deeply scripted in Python. It was designed for the C64, so it can run extremely fast (on the order of a year a second) on the OLPC, and there is plenty of left over CPU power to call back into an interpreted scripting language like Python, and still be quite playable. It will still run very fast, because the core number crunching will still be written in C, but it will be able to call out to Python hooks and plug-ins, and Python will be able to reach in, tweak the simulation, change the parameters, edit the model, etc, so you'll be able to program your own disasters, monsters, tornados, editing tools, zones, artificial intelligence, robots, agents, etc. And also implement network sharing features, muti-player features, journaling and storytelling features, tivo-like fast forward and rewind features, etc. The goal is to inspire kids to learn Python programming and develop their own games, by reimplementing SimCity's user interface in terms of reusable components.

    -Don

    --
    Take a look and feel free: http://www.PieMenu.com