Remember how I said it was open-source?
LIES.
LIES.
I decided that I want to try my hand at maybe making some money off this someday. For that to work, I can't exactly have the source code available free of charge now can I? That and I'd only open-sourced it because Google Code makes you. Assembla? Doesn't.
Anyway, in the realm of good news, I got my scheduled features for this week done already. Which means I can talk about stuff for a bit.
Generating the random levels is the hard part. Well, generating random levels is easy. Generating playable random levels can be tricky. Generating fun random levels? Who knows. Here's my timeline for the random level generator:
- Generate basic randomized map layout
- Make each room randomized, but ensure every exit is reachable
- Let each room be reachable, but only if player has the requisite items
Each step is a good deal trickier than the last. The good news is, 1 is already done. Mostly. The generator doesn't make different regions, but that shouldn't be too hard (oh dear why do I say things). It also makes cool-looking stuff:
There's some weird pixellations on that screenshot, because it's zoomed out rather far. For reference, the very smallest 1x1 rooms are screen-sized. That map has 3000 rooms, of varying sizes. There's no hard upper limit on the size of a map, although 15000 rooms uses 1.3GB of memory. Also, 3k rooms takes 8ish seconds to generate, and 15k takes around a minute.
I'm guessing 500 rooms would take a few hours to explore.
I think I'm going to -let- players make gigantic maps, for forty-hour epic games.
Also, I'm going to be releasing a free version, but it'll have the options dialed back some. As in, only about 40% of the items would be in it, and the map sizes would only go up to "small". That said, it's better to release a demo than not. For price, I'm thinking $5, but that could go up to $10 or down to $2.50, depending on polish and demand.
And, if I never get it to the point where I'd be comfortable charging for it, I'll release what I have for free.
No comments:
Post a Comment