Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
Linguica

OBLIGE

Recommended Posts

Why is there no thread about this here?

http://oblige.sourceforge.net/

OBLIGE is a random level maker for the following games: DOOM 1, DOOM 2, Final DOOM, FreeDOOM, Heretic 1 and Hexen 1. These games all share the same basic level structure.

OBLIGE will have the following features which set it apart from existing programs (like the famous SLIGE by David Chess) :-

* higher quality levels, e.g. outdoor areas!
* easy to use GUI interface (no messing with command lines)
* built-in node builder, so the created levels are ready to play
* uses the LUA scripting language for easy customisation
* can create Deathmatch levels
* Heretic and Hexen support!

Share this post


Link to post

Heh that. Its nice as far as random level generators go, certainly nicer than slige, and good to play with for a bit. The only problem I have with it is if it got too good and people actually started trying to submit them the way they were or partially modified to the archive ala slige.

Also uh, is this newsworthy :P

Share this post


Link to post

Heh, it was a damn long time before Slige got a successor.


Still I think it needs a way for users to create custom themes.
This was what made the original Slige such a fun little toy.

It would also mean Ajapted could relax and let others tweak it for various Pwad usage.

Share this post


Link to post

This is quite interesting. I don't think we'll ever have to worry about computer generated maps becoming a huge issue in the archives. You can easily tell when something has just been generated. Any good mapper knows it takes more than just a few good looking hallways to make a map.

But, I like this for its simplicity and random fun. I'm not really sure how this works, but it'd be interesting to develop prefab sectors that the program could use at random where they can fit.

Share this post


Link to post

Well, yes, a successor to SLIGE but nothing more... a few months or even years ago, DaniJ, the coder and maintainer of Doomsday, has started to work on something like this and his previews seemed to be the most impressive random level generator I have ever seen... I saw this in the Newdoom forums somwhere, but I just can't tell... but it was promising!

Share this post


Link to post
Dittohead said:

it'd be interesting to develop prefab sectors that the program could use at random where they can fit.


That would be really great!
Even better would be something like that wich is actually able to generate maps in-game... it would take me a step closer to my dream of creating a Diablo TC.
I guess it's pretty much impossible though :(

Share this post


Link to post

I just tried this out by having it generate a couple of episodes with different seed values.

If somebody went in with an editor and did some texture cleanup and slight restructuring and detailing of some sectors, then I believe, that a lot of people would be hard pressed to differentiate an OBLIGE map from a custom built map. As is, however, the blockiness and sameness of the sector dimensions is a dead give away.

Overall, it generates some nice gameplay and the maps were really fun to play.

Share this post


Link to post
Vader said:

That would be really great!
Even better would be something like that wich is actually able to generate maps in-game... it would take me a step closer to my dream of creating a Diablo TC.
I guess it's pretty much impossible though :(


In addition, there should be some sort of texture recognition that puts certain textures together based on what the editor decides to input into the map. The maps are really not all that bad, but some of the texturing is a little wonky. There's a lot of little stubs sticking up around the maps that most could be done away with or converted in a 64x64 crate. It's easy to tell that these maps are generated, with all the tall pillars and such. It'd be interesting to see what kind of algorithms the generator uses.

Interestingly enough, the editor does a good job of somewhat maintaining connectivity throughout. You can tell that a lot of thought has already gone into making this thing, and if the author decides to add the included ideas here, then it could be a lot of fun to mess around with.

Share this post


Link to post

This is absolutely nuts. Whereas with Slidge, I could sort of tell what its methodology of building was, this is just so much more advanced and 'convincing' than slidge. I'd dare say that I enjoy the maps that this program spits out.

Thankfully, my job is probably secure until he adds CTF suppot :P.

EDIT: I lied, I wasn't REALLY impressed with this thing until I had it generate a deathmatch map. NOW I'm impressed.

Share this post


Link to post

I agree that the maps are already pretty good and there's a lot of potential to make them a lot better, both aesthetically and possibly structurally (the obvious grid system is fine and all but it should be made a little less obvious... I hope we get support for big rooms and the program is smart enough to be able to round off the corners sometimes). The levels are never going to be super awesome as far as SP goes simply because they're not being made by a human, but for co-op play the idea of playing some completely random level that looks and plays decent is really neat sounding.

Share this post


Link to post

Yeah, I agree, if someone made a shell script that automatically generated a new co-op map every day and hosted an Odamex server with it with a GETWAD link to it, that would pretty much be the perfect co-op server.

This program is defeniatly newsworthy if you ask me.

Share this post


Link to post
AlexMax said:

EDIT: I lied, I wasn't REALLY impressed with this thing until I had it generate a deathmatch map. NOW I'm impressed.

Cheers :-))

Dittohead said:

It'd be interesting to see what kind of algorithms the generator uses.

The scripts are in the "obl_data" folder, you can look at them with a text editor (e.g. Notepad). Some examples:

planner.lua: decides what the quests are (get key, press switch etc) and lays out the rooms on the map, decides the themes and floor heights, etc.

builder.lua: takes the plan and builds the rooms, walkways, doors, pedestals etc.

monster.lua: decides what monsters to put on the map, and simulates the battles to figure out what health/ammo to give you.

Share this post


Link to post

Yeah, I agree, if someone made a shell script that automatically generated a new co-op map every day and hosted an Odamex server with it with a GETWAD link to it, that would pretty much be the perfect co-op server.

Sounds like a waste of bandwidth to me. Surely the only thing you need is the seed and each client can build the map locally.

Share this post


Link to post

Maybe that's the time where a program that can automatically generate Tormentor667 or gothic'99-like detail will be accessible to the masses, with the proper tweaks.

Just "teach it" a few "beautification rules", like placing 10-level bevels on every wall, automatically generating gradiented "spotlight" sectors and splitting any pillar with linedefs longer than 64 units into a series of baroque chiselings, reliefs, bevels and gaps, and gothic'99 will soon be put to shame :-)

Share this post


Link to post

I have had it build around a dozen maps with the new ver. 085. It was quite fun to play them. I like the new options for it, alot. I do see a crate at times in a really odd place but the program works great and the maps are a nice change from time to time. Just what we need for those slow weeks in new stuff. ;)

Nice job on it.

I'd love to see it be able to pick a texture theme like you can do with the commands in slige. Maybe a future update?

Share this post


Link to post

I'm impressed. Whoever didn't check it yet, go do it you'll don't repent, I assure that it's worth the little time it takes to download it.

Share this post


Link to post
Maes said:

Maybe that's the time where a program that can automatically generate Tormentor667 or gothic'99-like detail will be accessible to the masses, with the proper tweaks.

Just "teach it" a few "beautification rules", like placing 10-level bevels on every wall, automatically generating gradiented "spotlight" sectors and splitting any pillar with linedefs longer than 64 units into a series of baroque chiselings, reliefs, bevels and gaps, and gothic'99 will soon be put to shame :-)


That's where you're wrong, though...Tormentor is actually a computer program designed to build web sites, make Doom levels, and post on message boards. He also has no soul and if you cut him, he bleeds zeros and ones. I'm not even kidding :(

Share this post


Link to post

I downloaded it and was quite impressed. It's certainly a step up from SLIGE, but it still has that accomapanying ugliness that anything randomly generated will carry.

I'm left wondering though: why no angles!?

Share this post


Link to post
EarthQuake said:

I'm left wondering though: why no angles!?

Well, I'd imagine most angles are harder to code than the standard 90 degrees. Eventually, someone should be able to figure out a system, because it probably isn't that complicated once the math is figured out (just make sure all the angles add up to 360). Also, angles have always been a bane of early computer games. Wolfenstein 3D couldn't figure out angles if its life depended on it.

Share this post


Link to post
GGG said:

Wolfenstein 3D couldn't figure out angles if its life depended on it.

The reference to Wolf3d is quite apt, since Oblige is based on a grid of 64x64 blocks like Wolf3d was. In order to make a diagonal, Oblige needs to say "move the bottom/right corner of this block by this amount". So it's not a question of the math, more a limitation of the way Oblige works.

Share this post


Link to post
DaniJ said:

Sounds like a waste of bandwidth to me. Surely the only thing you need is the seed and each client can build the map locally.


That would require real "support" by the port in question.

Which, since we happen to have an open source port lying around here, wouldn't be out of the question <g>.

Share this post


Link to post

The reference to Wolf3d is quite apt, since Oblige is based on a grid of 64x64 blocks like Wolf3d was. In order to make a diagonal, Oblige needs to say "move the bottom/right corner of this block by this amount". So it's not a question of the math, more a limitation of the way Oblige works.

Just a thought:
If you used the values produced by the grid and warped them ala nurbs patches as part of the last stage in the creation process, you could get some interesting results and keep the grid based creation logic?

When doing the warping you would then just use some simple blockmap style thing to check for interception between bounding boxes around groups of blocks. In fact, if you restricted all warping to be internal, within the original bounds you wouldn't need to check for interception at all.

That would require real "support" by the port in question.

Which, since we happen to have an open source port lying around here, wouldn't be out of the question <g>.

Indeed. I wonder if there is a version of OBLIGE planned in a plugin form?

Share this post


Link to post

I don't think curves are all necessary. Slanted stairs or 45-degree rooms are also to be desired.

Share this post


Link to post

If you retextured some of the maps a bit and had a little play around, it could be genuinely difficult to distinguish the maps from an average offering from about 1996...

Though i did notice a bit of blunt theme mixing, in one map it was green marble, but then i went down a lift into a brown brick hallway with hitler pictures, which ended up in a grey-and-slime outdoor area.

Also, 156 bullets may well be enough to kill 3 revenants, but only having the pistol to deliver them with is hard and annoying (then again in the map in question there was a chaingunner, i suppose i was "supposed" to take his chaingun, but he was on a tall pillar so it was inacessable)... Also whats the point of all the small cell packs if there's no cell-using weapon? (unless it was in a secret area)

Share this post


Link to post

I don't think curves are all necessary. Slanted stairs or 45-degree rooms are also to be desired.

You haven't understood what I was suggesting. That image does not represent the linedefs and vertexes in the outputted map, it is the conceptual grid used in OBLIGE's creation logic. The two do not _have_ to be one-to-one relevant.

Share this post


Link to post

This will be perfect. I just signed up for five NDCP2 slots too! Much obliged, gentlemen.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×