Markeen: probabilistic random Galaxy level generator

Here is where to post about the latest Commander Keen fangame or modification you've finished, a new website you've made, or another Keen-related creation.
User avatar
Fleexy
Tool Smith
Posts: 1432
Joined: Fri Dec 12, 2008 1:21
Location: Abiathar C&C

Post by Fleexy »

Heh, it could probably be made to handle Keen 3, even if only with the help of Tharify.

I did some more work on this recently. First I added a /seed option so people can share levels by providing a seed instead of needing to send over the actual files. More interestingly, I implemented a smarter fill order. Now, tile spaces that have fewer options (basically) will be filled first. This kinda kills the performance, but I think there are good gains in level quality to be made down this road.

Here's the newest Imgur album. Keep in mind that this is only one pass (i.e. no erase-and-retry was done) on each level, while previous things you've seen got six passes. I also had to disable rare structure handling for the time being due to the rearchitecting going on.
User avatar
Fleexy
Tool Smith
Posts: 1432
Joined: Fri Dec 12, 2008 1:21
Location: Abiathar C&C

Re: Markeen: probabilistic random Galaxy level generator

Post by Fleexy »

I'm happy to report that Markeen is now a lot better than it was last release, though it still has a ways to go. Keen Day seems like a great time to show off the progress, so here goes:

Download Markeen (alpha 3/14/2017)

It's now much smarter at deciding the fill order, and it has a little lookahead to avoid some impossible-to-continue-from situations. Generation is now multithreaded, at the cost of the progress printout being a huge mess. You can now supply a seed to get a consistent set, in which case multithreading is disabled. There are a couple new commands that might be useful once in a while. I now recommend a profile depth of 2. In theory, deeper profiles should make better levels, but I haven't perfected the candidate scoring algorithm yet.

Syntax recap, optional things in [brackets], variable things in CAPS, and an example following each command:

Code: Select all

# Generate a profile from levels
markeen profile OUTPUT.mkp DEPTH GAMEMAPS.EXT MAPHEAD.EXT [/mapdict MAPDICT.EXT]
markeen profile keen5.mkp 2 gamemaps.ck5 maphead.ck5

# Generate new levels from a profile
markeen generate PROFILE.mkp COUNT OUTMAPS.EXT MAPHEAD.EXT [/seed NUMBER]
markeen generate keen5.mkp 20 outmaps.ck5 outhead.ck5 /seed 3142017

# Edit a profile: remove all mention of a tile
markeen editprof PROFILE.mkp remove TILE
markeen editprof keen5.mkp remove 1008

# Edit a profile: disallow two tiles from being next to each other
markeen editprof PROFILE.mkp noadj ONETILE ANOTHERTILE
markeen editprof keen5.mkp noadj 186 0

# Split a level set by cutting each level into its areas at scroll dividers
markeen explode INMAPS.EXT INHEAD.EXT OUTMAPS.EXT INMAPS.EXT
markeen explode gamemaps.ck5 maphead.ck5 explmaps.ck5 explhead.ck5
Make sure Markeen is in the same directory as FleexCore 2 (FMod.dll).

Happy Keen Day!
User avatar
Roobar
Vorticon Elite
Posts: 3267
Joined: Tue Jan 08, 2008 16:12
Contact:

Re: Markeen: probabilistic random Galaxy level generator

Post by Roobar »

Is there a new imgur album? That's art, you know :).
Keening_Product
Kuliwho?
Posts: 2167
Joined: Fri Jan 20, 2012 7:02
Location: Tied up in the Oracle Chamber's basement
Contact:

Re: Markeen: probabilistic random Galaxy level generator

Post by Keening_Product »

Even just the concept of this tool is neat; I'm glad it's under active development.
Keening_Product was defeated before the game.

"Wise words. One day I may even understand what they mean." - Levellass
User avatar
Commander Spleen
Lord of the Foobs
Posts: 2384
Joined: Wed Oct 31, 2007 22:54
Location: Border Village
Contact:

Re: Markeen: probabilistic random Galaxy level generator

Post by Commander Spleen »

It's interesting art at least. The algorithm seems to have a lot of fun with the pipe designs.

The screenshots have a kind of mystical dreamlike quality about them, giving me vauge flashbacks of half-remembmered Keen dreams. And sort of like that decaying city in Inception.
User avatar
Fleexy
Tool Smith
Posts: 1432
Joined: Fri Dec 12, 2008 1:21
Location: Abiathar C&C

Re: Markeen: probabilistic random Galaxy level generator

Post by Fleexy »

Roobar wrote: Tue Mar 14, 2017 18:56 Is there a new imgur album? That's art, you know :).
Certainly, enjoy! There are levels in the style of all Galaxy games, generated with a profile depth of 2. Keen 4 is something of a disaster (it's too open), but the others show promise.

Also, there seems to be a rare crash when generating. If that happens, just supply an arbitrary seed and it'll fall back to the old (slower but safe) threading style.
Gridlock
Vorticon Elite
Posts: 617
Joined: Thu Aug 12, 2010 2:20

Re: Markeen: probabilistic random Galaxy level generator

Post by Gridlock »

Oooh, some of those random levels look quite nice, especially for Keen 5. It's neat to see how this tool is evolving. The Alphamatic is already too far along and out of level slots for me to use this, but I could definitely see how it'd be useful. I'm curious how far you could take the idea of procedural level generation without needing human modification.
Image
Armageddon Begins Again. The Alphamatic has arrived.

Atroxian Realm: viewtopic.php?f=4&t=3536
The Alphamatic: viewtopic.php?f=4&t=4086
User avatar
Nisaba
Janitress
Posts: 1597
Joined: Fri Jan 01, 2016 23:34
Location: The Outpost
Contact:

Re: Markeen: probabilistic random Galaxy level generator

Post by Nisaba »

Fleexy wrote: Fri Mar 17, 2017 2:38 Certainly, enjoy! There are levels in the style of all Galaxy games, generated with a profile depth of 2. Keen 4 is something of a disaster (it's too open), but the others show promise.
how come that those K4 levels seem to fall back way behind K5 & K6 designs?
I'd like to request some random K4 levels for my recent project... if they just would look a bit more promising. The Markeen idea is neat and I'd love to use one or two skeleton templates to build a level around it. should be fun.

otherwise I could just mimic a K6 design and loosely convert it into K4...
out now (link) : Image
User avatar
KeenRush
Android Dummy
Posts: 2560
Joined: Sat Oct 27, 2007 20:57
Location: KEEN1.EXE
Contact:

Re: Markeen: probabilistic random Galaxy level generator

Post by KeenRush »

Thanks for the new level screens, I love seeing them! The program is coming towards singularity nicely. :dopekeen Yeah, those Keen 4 levels have something dreamlike about them, or like design by a 2-years old. I think I've dreamed disconnected designs like that, too. But the K4 level with half a house and all that stuff surrounded by black underground tiles is a pretty neat "idea". Seeing those extremely tall limbless trees and claws (K6) I was like "cool" but seeing those diagonally rising branches that are much longer than the trees itself, some of them connection entire areas together, I was like "genius... totally genius". :) So many good ideas here. Maybe this approach will indeed bleed some fresh blood into human way of levelling. Those K5 levels look pretty playable and almost complete. Wouldn't take long to edit one into a playable condition. Good work.
My newest mod - Commander Keen: Sunset: viewtopic.php?t=8568 | codename H.Y.E.N.A.
Post Reply