Not much to say right now; gotta get sleep. But I wanted to post about the MMORPG simulation progress from the last few days.
I’ve very nearly “closed the loop” on the simulation (though not quite yet); I’m hoping to finish it tomorrow. Here’s the status:
- Users connect and disconnect from the MMORPG on an approximate schedule (this schedule slightly varies from day to day, and based upon what the player is actually doing while connected. Users won’t disconnect in the middle of combat or if they’re really close to gaining a level, for instance.
- While online, users pick up quests, go hunting, gain levels, maintain a home town, etc. Users also maintain a “satisfaction” value and an “addiction” value, which describe how happy they are with the game, and how much they’ll continue to play, even if they’re unsatisfied. (And no, I’m not going to reveal how that’s calculated, yet. ;) )
- Each region (the outlined areas in the screenshots in previous posts) is run by a single server. If too many users enter a single server’s area at one time, that server will crash, dropping all its players offline. Which decreases user satisfaction a lot, as you might expect. Keeping too many users from clustering together on one server is going to be one of the player’s big challenges in this game.
- Each simulated day, the player pays his employees one day worth of wage, and earns one day worth of subscription fee from all subscribers. Additionally, when a new subscriber joins, the player earns the “box cost” he’s specified for the MMORPG. With a $15 subscription fee, it takes 2000 subscribers to match the salary of one employee. Or fewer, if you’re getting new subscribers. The game plays with an accelerated clock, such that one day passes every two minutes of real time. (I’m still fiddling with this, though)
The last little bit that I need to finish in order to complete the simulation feedback loop is to make users’ satisfaction and addiction to the game create a “Forum Buzz” value, and then set the frequency of new subscribers signing up based upon the Forum Buzz (adjusted by the box price). Once I have that, the core simulation code will all be in place and hopefully working reasonably well!
Of course, I’ll still have to write a bunch of user interface code to let the player tweak with the various variables in the simulation. And I need to write some sort of “Information” view that will show information about the objects in the simulation. But that’s all detail work, once the core simulation is implemented. :)