Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
Sign in to follow this  
andrewj

OBLIGE development

Recommended Posts

Oblige : Current Development

It has been a while since the last OBLIGE release (around 8 months), and judging by the web page you may think that development has stalled or the project has died. I assure you this is far from the case! Lots of work has been going on, and here is a summary of what is happening...

OBLIGE is being rewritten. All the of level building code (except for the game-specific stuff) has been retired and new algorithms are being developed. The new version is called "Oblige III" since it is the third major version of this level generator.

The first big change is the map representation, which was quite limited before, made up of 16x16 blocks, and creating architecture with finer detail or arbitrary shapes was not possible. The new representation is similar to the Quake map format, made up of "brushes" which are solid chunks in 3D space (e.g. the floor is one brush, and the ceiling is another one). This allows to create maps with "Extrafloors" for the advanced DOOM ports, and also allows creating maps for true 3D engines like the Quake series.

I have been working on converting this new format into DOOM map format, and right now it works, and can even generate Extrafloors, but a lot of smaller details are not implemented yet, like special line/sector types, railing textures, x/y offsets, and lighting.

I've also been working on Quake-1 support. This means creating the BSP files directly from the internal represenation. So far the level builds correctly, has proper clipping hulls, and flat lighting,
plus there is a built-in texture extractor. But it lacks a proper lighting method, and visibility info.

Talking about lighting: I plan to implement it for DOOM in a similar way to QUAKE, by determining how much light reaches each sector from light-emitting entities and surfaces (as well as the sky).

The GUI interface has been revamped, see the screenshot below. The mini-map is nicer, a lot like what you see in an editor or the automap in DOOM. The GUI has a few more options, like being able to select a specific theme for the maps, and some options will allow a "MIXED" setting (e.g. for monsters, some maps will have Hordes and some maps will have Few). Plus I am working on supporting custom mods: you could download somebody's mod, put it in the "mods" folder, and OBLIGE will load it automatically and you can enable/disable it in the MODS panel. Mods can add new monsters and items, new themes and textures, new prefabs, or even change the way levels are built.

Finally, I have some ideas for the new level building methods. For example, I'm working on "Room-in-a-Room", which will allow OBLIGE to create maps like MAP16 of DOOM II, where there is a bunch of separate buildings scattered about a large outdoor area. The new code will directly support symmetry, so it can make rooms (and possibly large areas) that are mirrored either vertically or horizontally (or even both, four-way symmetry). There are some new ideas for creating good deathmatch maps too.

All this will take a while though :-)

Screenshot 1: the new look GUI




Screenshot 2: Extrafloor example
The map itself was hand converted from Quake (DM7), but this shot shows Oblige creating sectors and extrafloors from the brushes.

Share this post


Link to post

Oh wow, awesome.

What you have in mind for the lighting sounds a lot like something I've tried talking a few people into writing before. I'm looking forward to seeing how this all works.

Will it be able to do angled walls, or will it still be limited to 90-degree angles for the most part?

I notice the "detail" pulldown menu; is that going to be prefab-based detail like in the current release, or will it actually be generated? I wouldn't be surprised if it was be possible to get it to generate basic "torm's detail guide"-esque detail by itself. Maybe the modes could range from "Sandy Petersen" to "Torm It Up!" :P

Also regarding detail stuff, I don't know how difficult it would be for someone to implement this as a mod or update after-the-fact, but it'd be very useful if it could be fed a database of certain x and y points which different textures can be cut off at without looking bad. For example, a standard doom2 brick texture can be cut off at any x point, and at any multiple of 16 for the y height. Other textures like the star* variants would have more specific x and y requirements.

I'm really curious about a lot of stuff in regard to this, so I'm definitely looking forward to seeing how it all works out.

Share this post


Link to post

Does OBLIGE make only random maps or can you use it as a editor too? Cause seeing the 3D floors, I really want to know, I might switch between one or two editors.

Share this post


Link to post

Hey, it even uses border textures, nice. Definitely looking forward to whenever you get this released, Ajapted, it's looking great so far. :)

Share this post


Link to post
Mithral_Demon said:

Does OBLIGE make only random maps or can you use it as a editor too? Cause seeing the 3D floors, I really want to know, I might switch between one or two editors.

For now it's just a random map maker.

Later on it could become a tool that processes "map" files from a true 3D editor like Quark/GTKradiant and produces a Doom "wad" file as output. If there was demand for such a tool then I would work on it now.

esselfortium said:

Will it be able to do angled walls

Definitely. The architecture is still generally cuboid, but each cuboid space can do whatever it wants in its own space including angled walls.

is that going to be prefab-based detail like in the current release, or will it actually be generated? I wouldn't be surprised if it was be possible to get it to generate basic "torm's detail guide"-esque detail by itself.

Yeah that is something I plan to experiment with, when I get to that part (right now I'm still doing room planning).

but it'd be very useful if it could be fed a database of certain x and y points which different textures can be cut off at without looking bad. For example, a standard doom2 brick texture can be cut off at any x point, and at any multiple of 16 for the y height.

Another idea is to have prefabs that are already a good size, and make walls only with whole prefabs (placing them side by side or vertically stacking them).

One of these ideas will get done eventually (to be honest it's not a high priority for me).

Share this post


Link to post
Ajapted said:

(to be honest it's not a high priority for me).

Understood, definitely. I know that compared to the much more important stuff like getting it to build playable maps, this is far from the most important thing. :P

Share this post


Link to post

I'd like to see a program that can convert doom maps into other engines with ease without them coming out like total shit. Sort of related in a way

Share this post


Link to post

Another of my programs, doom2brush, is not finished yet but is already quite good at converting doom maps to quake 1/2/3 map format. Doesn't do lighting or moving stuff (doors etc) and probably never will, but it does handle slopes, extrafloors and liquids.

Share this post


Link to post
printz said:

Will the user be allowed to design new map patterns?

Not really, the user interface isn't going to get any editing features, you would need to write some Lua code.

Share this post


Link to post

Do you think this could:

-Create CTF/ST maps?
-Use custom texture wads
-If set to Edge, use dynamic lightings things for illumination instead of sector lights

Share this post


Link to post
Vegeta said:

Do you think this could:

-Create CTF/ST maps?
-Use custom texture wads
-If set to Edge, use dynamic lightings things for illumination instead of sector lights

CTF is planned, can't say when it'll happen as I've bitten off a lot to chew already :-)

Custom texture wads will need somebody to create an Oblige mod for it (a file with lua code). There's going to be documentation for mod makers.

I hadn't thought of doing lighting purely with dynamic lights (for EDGE or any port that has them). Dynamic lights are a lot slower than the baked-in lighting of the Quake engines, so might be too slow for bigs maps, definitely worth trying though.

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
Sign in to follow this  
×