Level 1 Generator

0 views
Skip to first unread message

Gualtar Pennington

unread,
Aug 3, 2024, 10:45:38 AM8/3/24
to podsventohas

Doom was one of the first games designed from the ground up to friendly to modding, and consequently the community around it exploded. In the years following its release, level packs and tools started to circulate for free. It was only a matter of time until someone designed a random level generator.

I recently discovered that thanks to the discovery of various debug symbol files accidentally left lying around, several fans took it upon themselves to reverse-engineer the source code and clean it up into a good guess at what the original game is like. Thus began a week long deep dive into how exactly did lead developer, David Brevik, actually craft these levels. It may have taken away some of the magic of the game, but I learnt lots of techniques I think are applicable to anyone developing a similar game, which I share with you below.

I'm wondering what insight Doomworld offers into the Obsidian tool. My understanding is that it's not exactly popular, so I haven't bothered using it, but I'm still curious to know more about how it's regarded. Even if procedural generation pales in comparison to levels directly designed by humans, the concepts behind it are pretty cool, and I think I'd be interested in trying to help refine it in the future if I have the skills. (Big if right now, but we're all still learning.) Here's what I already know.

I like it for use with rogue-like style mods, like DRLA. Its really cool if you're looking for randomness, But in terms of actually good level design its not even close to what an actual mapper can make

Its also has a bunch of cool features like adding a randomized boss every couple levels, And the levels are very customizable

I just downloaded it and start messing around. I have never used it before, and so far I'm confused as hell. It's super laggy and it uses strange liquid textures, plus random custom textures that aren't in the original Doom. It also only exports levels as a .pk3 for the ZDoom family engines. Very strange, I'd like to know how to use this tool properly though

There's nothing inherently wrong with it, as long as you're not trying to pass off the generated levels as your own creations. I already have far more WADs to play than I will realistically ever get to, so I've never felt a need to generate even more levels.

There's a slider in there somewhere that makes it keep a consistent design theme and if you crank it up to 50-60 (higher than that and it starts crashing during levelgen) and allow liberal use of prefabs.

With those settings it will generate level sets that sort-of look like they belong in the same WAD and were made with a particular theme in mind. Otherwise quite often it can end up with a clustefukked mess that only an AI can achieve.

I regard it as a good piece of software that can make some levels for you to play if you're bored or want a set of maps with particular features, but honestly, there are so many good megawads out there at this point that you're just better off playing those.

I think some problems are more or less intractable, such as a finite set of handmade prefabs being able to only make so many permutations before 'sameness' sets in. I also think it has a lot of problems with cohesiveness in the transition between room/area themes within a single level. I wish level themes were more like "biomes" in a sense that they would have a very tightly controlled set of walls and flats and a very specific set of prefabs for that theme that aren't used in other themes.

Another thing that I would think would be neat is to lower the bar to entry for being able to make custom shape grammars. The grammar system is very powerful, and with a lot of massaging can make levels with very specific layouts, but it is not really an intuitive thing to write and takes quite a bit of trial and error to get right.

Sometimes I wonder if moving to whole-room fabs might help (similar to how Warframe or other games shuffle tiles for their levels), but that would again require a lot of handmade prefabs to even have a chance at giving enough variety.

Trying to think of other ideas, I wonder if it wouldn't be better to try to bake in some light gameplay modifications to give the whole thing more of a roguelike feel (randomized monster/weapons stats via Dehacked or port-appropriate measures).

If you are using the stable version of Obsidian, there should have been a first-run tutorial to show you the basics of using the program. This can be accessed again by the Help->Tutorial option, although for the next version I have removed it because nobody bothered viewing it.

Additionally, PK3 output is optional for ports that support it (ZDoom has it on by default but can be disabled by unchecking "PK3 Output"). Ports that do not support archives will only output WADs. The custom textures you are mentioning can be removed by disabling the "Obsidian Epic Resource Pack" module.

In my completely unbiased opinion as a contributor AND an addon maker for Obsidian


It's just for when u wanna shoot stuff pew pew without thinking about overly-complex level design (plus goes very well with random weapons/enemies mods)

Producing levels better than Obsidian is going to require maching learning I think. Though it is hard to imagine how it might work, e.g. I doubt a 3D version of Stable Diffusion would "know" enough to produce fully working levels. Be a lot of fun to try it -- just need a few billion dollars....

I think you're onto something with larger prefabs, but I'll try to elaborate when I've spent more time poking around in Obsidian. The tutorial did show up for me on first launch, and I found it helpful.

there's been a problem with people submitting Oblige outputs as their own original work, which I imagine to be a continuing problem with Obsidian, but I'm still pretty limited in knowledge of the mapping community, and I'm not sure how easily-distinguishable Obsidian levels are... or, necessarily, what the hell I'm talking about

afaik this isn't actually much of an issue anymore. in the past three years i think i can only remember maybe one person who used it to make their wad, and even then they didn't realize that they had done anything wrong until called out for it. maybe it's still an issue on moddb, but doomworld and /idgames doesn't have issues with it these days

I'm a fan of Obsidian/Oblidge it's great for personal use, and just playing around and 'ignoring rules' like jumping around to get secrets or skip areas and not feel like 'you're cheating'. The obsidian levels look pretty cool too, great for TC gameplay mods.

But I do agree with most of the criticisms, the levels don't turn out that great gameplay wise most of the time. I remember in the early days most levels were completely unplayable do to difficult monsters in early areas or bad geometry.

I don't think people releasing them as original levels is good thing to do, but fortunately I haven't seen that very often. If they are released the author is usually upfront about it and they're mostly used as placeholders. But yeah it's kinda boring playing someone else's generated levels I'll admit.

Also, this is not an attack on the developers of Obsidian Level Generator, I think you are doing a great job with what you're doing, I am just generally curious about what the classic Doom community thinks, especially after the debacle about all the level generators of the 90s.

The controversy you might be referring to was when the creator of SLIGE wanted to upload his procedurally-generated maps to the idgames archive. Source. If they let him do it, then everyone could upload their procedurally-generated content and claim it was their own.

I enjoy cooking a level in Obsidian for the purpose of inspiration. Sometimes I don't know what new layouts I might want to try out until an Obsidian map gives me something neat and new to see. Once I find a generated map that is fun, I tend to remember the layout so I can draw from that experience at a later date, or just go and make a map similar to the one I just generated.

You are basically talking AI generated art at its core. No it is not considered original, and it is a great tool to use for many aspects like doors, switches, texture combos, and most of all it is fun for private use or to share the rare good ones. The problem with Obsidian and Oblige is that once you are familiar with the program then you can tell when something is crafted by it due to its base pre-fab skeleton parts, or missuse of buiding logic that it cannot comprehend. Its that last part that is the real stickler in that Obsidian will build random map objects that are functional but completely illogical , and use that gives it away as being artificial.

c80f0f1006
Reply all
Reply to author
Forward
0 new messages