Archive for 2008

SimShiva

Posted by macroidtoe on October 17th, 2008
simshiva

The following is a reply I posted to the GameFAQs discussion board for the Super Nintendo classic “SimCity” almost a year ago. For the uninitiated, the game (related to the popular “Sims” series) simply involves laying out buildings and roads to construct a city, tweaking the layout to achieve optimal results and a higher population. There is no definite end or way to win the game.

Anyway, I just now stumbled upon this post I wrote, saved as a forgotten text file in one of my folders. It was posted in reply to a player who asked:

“i spent a half hour making this little city, it’s running perfectly..now what?”

“Now what?” you ask. Catharsis, of course.

I just finished building up an attractive Metropolis on the practice-mode island. I built my house in the middle of the central forest, and refused to allow any construction to encroach upon my estate except for a large park directly in front of my house (for private use, of course). I also left the northwest forested island untouched save for the addition of a single tree (the Sacred Yggdrasil) on the one unoccupied square.

I spent decades performing minor adjustments, trying to get it to 100,000 without compromising my specially reserved domains. I finally achieved it by restructuring the west coast to squeeze in a few extra industrial zones and then eliminating the industry on the east coast and replacing it with residential/commercial zones. Built up a funding surplus for a couple of years, cut taxes to zero, let it grow.

It was perfect.

I gazed upon it, letting a few years pass, watching the seasons change.

And then I knew that I had to destroy it, that I could not simply set it down and walk away.

The ground shook, the waters rose, the wind howled. The fires raged for years. The towers toppled, the Holy Tree was consumed, my palace and my people turned to ash.

When the flames finally died, when the rubble finally settled, I looked over the scattered broken ruins and imagined an old man standing beside the remnants of the crumbling library, telling his tale to travelers as they passed: “There once was a great city here…”

That, my friends, is how you “win” at SimCity.

More Translation Thoughts

Posted by macroidtoe on October 4th, 2008
more-translation-thoughts

To add to what I mentioned in my last post:

While having nicely organized, easily accessible text would be very handy for purposes of translation, what would be even cooler would be a “text edit” option in the debug mode so that you can actually translate the original text while you play the game.

For example, you’re playing some dinky little RPG, walk into town, talk to random NPC.  The character’s dialogue pops up in a text box, as usual… and then you hit F1 or whatever to go into debug mode, hit the Edit option, and you can actually delete and replace the text, right there in the game.  Gives you a chance to see the text in context while you translate it, rather than trying to make sense from an out-of-context text dump…

Of course, I’m nowhere near being able to implement something like this, but I think it’s an awesome idea which I will most definitely make a point of implementing if and when I am capable of doing so… and if I ever make something worth implementing it in.

Project 1 Update, Vague Musings On Additional Project

Posted by macroidtoe on September 13th, 2008
project-1-update-vague-musings-on-additional-project

I haven’t forgotten about my project, but I’ve been a bit bogged down with other distractions (e.g. a flooded basement).  I’ve done a bit of reading and research during this time, and I think I’ve got a basic grasp on the specifics of how to go about doing the things I still need to do.  I’ll try to get a complete working version together (still sans art) when things calm down.

I’ve also been taking an interest in fan translations of various console and PC games and the process involved, both on the translating end and the hacking end.  It often seems like there are more translators available then hackers, which slows down the process.  It occurs to me that if I ever get to the point where I can make some type of game, even something fairly simple, that I’d like to handle the text in such a way that the production of a translated version can be handled by the translator alone without the need for a hacker.

To this end, I’m starting to formulate an idea for some kind of practice project.  Nothing fancy, but just something along the lines of a simple program that displays text and messages drawn from a set of subfolders containing plain text files, with an option to easily change the active path and thereby switch between which text file the program is using.  You’d be able to produce various translations of the original text file and then dump them into their own subfolder under the ”languages” folder, and have the new language setting automatically appear as an option in the menu.

I suppose one of the first steps would be to figure out how to organize the folders and how to break up the text.  Separate files for different components of the program?  English>menus.txt, English>dialogue.txt, English>items.txt, etc., and you simply recreate this structure for any language you want to add, and the program does the rest.

Kind of useless on its own, but definitely a nice feature to add to larger programs.  I would imagine that there are plenty of examples of “language settings” like this already in use.  I guess how this is a little bit different is that it’s really more about “potential language settings” and their easy future implementation.  It’s just too bad they didn’t do it this way for all those old games… or for current games, for that matter.  The original language text is cleanly and clearly organized for the sake of the translator; change one folder in a target path, and bam, that’s all the “hacking” you need to do.

I repeat, we have red square on blue background.

Posted by macroidtoe on August 1st, 2008
i-repeat-we-have-red-square-on-blue-background

Ohhhhhhh boy.  Been a little busy lately with some work for an exhibit opening at the museum, but I finally put in some time with the Python.  It ain’t much to look at, but the basic skeleton is in place.

The next big step is to figure out how to make it generate and select from a randomized list of files rather than using a specifically defined image file.  (Probably need to make a few more functions which perform the list/randomization tasks, and then take the output from those functions and swap the variable in where the image file names currently sit in the main function… or something.)  And then make some actual art rather than just placeholder graphics.  EXCITING.  BE EXCITED.

First Python Project

Posted by macroidtoe on July 5th, 2008
first-python-project

The plan is fairly simple: write a program which will open up a small window, display a random 16×16 sprite selected from a list, put it on a random background, and insert a random message.  The idea is that you’ll be able to add your own sprites and backgrounds into the list, and likewise add your own messages into a text file for the program to use.  The program can even be added to your startup list to provide a “Message of the Day,” if you will.

I’ve thrown together a quick-and-dirty mock-up from some random sprite rips (Kirby’s Adventure and Final Fantasy IV, an odd combination):

For the real thing, I intend to create my own backgrounds and sprites rather than using sprite rips (but anyone who downloads the program can put whatever sprites from their favorite game they want into the folder).  Really, in addition to being a good beginning programming project, this will also give me a nice outlet into which I can dump any random pixel art I happen to doodle up.

I need to go over the exercises from the past few chapters of my book a bit more and do a little research into randomization techniques, so there might be a small delay before I can get to work on this.  But once I start, it ought to go pretty fast — this isn’t exactly an astoundingly complex program or anything (hey, we all have to start somewhere).