Help me learn autonomous simulation
March 3, 2010 9:11 AM Subscribe
I would like to write some basic software that, without any user input at all, simulates an event such as a crew traveling in space.
What do I need to learn in order to get from the "if launch was successful then print 'CONGRATULATIONS'" stage to the "if crew member #3 is depressed and she is co-pilot, then set $mistake_likelihood higher" level of detail?
posted by circular to computers & internet (10 answers total) 14 users marked this as a favorite
Extended version: I'm sick of having a bunch of widgets on my desktop that show me the weather, the current time, same old news, etc.
I want to get news from a virtual crew that is headed to another planet.
So the point I'd like to eventually get to is:
0. I have a relatively featureful software simulation written -- featureful enough that running the simulation isn't an exercise in deja vu every time.
1. It runs as a web app that uses cron or similar to update the simulation "mission control" dashboard website once an hour or so.
2. The software creates RSS and Twitter updates from my simulated crew (for aforementioned widgets).
If I go with my current level of expertise, this will be like one huge list of ifs and elses. Is that the way to go? I get the sense that a database would be helpful for storing data, but know only the basics about DBs.
So...advice? Suggested reading? Have you done this before?
My experience in this area is limited to short "choose your own adventure" games, but I'm willing to learn more, and in fact I need to, as becoming good at software development is a long-term goal of mine.
My background is in web design (and limited development) and CG art/illustration. I've worked with about 15-20 programming languages on a rudimentary level, and taken up to mid-200-level CS classes (stopping short of data structures).
Thanks for your input! I'm dying to put this into action...my first plan was to make this into a little gkrellm plugin, if that gives you an idea of how long it's been simmering. ;-)