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

Obhack 006.8 released

Recommended Posts

Obhack 006.8 has been released

Obhack is a random map generator for Doom, Doom2 and Heretic.

As the current maintainer of Obhack, I will try to answer all questions and comments here on this post.

Download - http://samiam.org/slump/


Bugfixes:
Large weapons are now quest items(SSG, Launcher, BFG).
Fixed 2 missing texture issues.
Fixed lighting issue, 'None' setting is now default as in previous versions.
Fixed issue with writing texture patches multiple times.

Replaced some wall textures and wokeup the Cyberdemon.
And a few other minor fixes.

Share this post


Link to post

Cool, downloading..

What's this .zip within the archive? Did you accidentally leave it in?

Also, you forgot to remove the old x_doom1.lua and rename my modified version to that ;) Oh well, it's easy to rename stuff. (Or are other adjustments needed?)

I forgot again, what was "Expansion" in level size choice do again?

I'll give you some feedback later.

Share this post


Link to post

The extra zip has been removed.

The Expansion option is for Doom2(TNT, Plutonia) levels only, it creates a gradual map set from tiny to huge sizes.
Unlike Progressive that is 1-11, 12-20, 21-30 tiny to huge.

I didn't remove the x_doom1.lua because the other game types use it as a data file.

Share this post


Link to post

I mean, Obhack needs a while to make 10 levels. And only uses 1 core. (of my dual-core processor).
It doesn't bother me much, though.

Share this post


Link to post

Thanks Fritz, this version works correctly.

I wonder, is it possible for the "Progressive" or "Expansion" map size to only go from Tiny-Normal, or Tiny-Large, instead of Tiny-Extra large? I never like playing extra large maps, but do like to play larger and larger maps, starting with small maps. So maybe options like "Start map size" and "End map size" would be possible?

Share this post


Link to post
tempun said:

Is multi-threading planned?

Not really.

A lot of time is spent in Lua code (I'm guessing about 50% for V2 and 33% for V3), but the Lua language does not provide any true multi-threading, so there is no way to take advantage of the second core.

In V3, a fair bit of time is spent doing the CSG operations. There is still room to speed that up without going to multi-threading.

Lastly, building the nodes takes the remaining 50% of the time, and there is still room to optimise that too.

So I'll be working on those optimisations rather than multi-threading.

Share this post


Link to post
andrewj said:

Not really.

A lot of time is spent in Lua code (I'm guessing about 50% for V2 and 33% for V3), but the Lua language does not provide any true multi-threading, so there is no way to take advantage of the second core.

In V3, a fair bit of time is spent doing the CSG operations. There is still room to speed that up without going to multi-threading.

Lastly, building the nodes takes the remaining 50% of the time, and there is still room to optimise that too.

So I'll be working on those optimisations rather than multi-threading.

I think generation of different levels is independent of each other and can possibly be performed by several threads in parallel. And another thread can build nodes. Is this correct?
Also, a good optimisation for Doomsday 1.9 is to skip building nodes (it ignores them).

Share this post


Link to post
tempun said:

I think generation of different levels is independent of each other and can possibly be performed by several threads in parallel. And another thread can build nodes. Is this correct?

Correct in theory, but not feasible in practice.

Share this post


Link to post

If you are not a programmer, then I hope you'll trust my experience.

If you ARE a programmer, and think this is easy, then you are very welcome to try it yourself.

Share this post


Link to post

Personally, I think it’s more important high quality levels are made instead of having the level generated more quickly. Multi-threading is difficult to do, and I would rather see Andrew devote his energy to making Oblige III make the best possible random maps.

I think the issue Tempum has with ObHack not being fast enough is that he doesn’t want to wait before playing a random level. Fortunately, it’s possible to have ObHack generate a huge number of levels offline:

* Open up the ObHack gui from the directory containing ObHack

* Configure, in the GUI, the type of game you want ObHack to make (level size, number of monsters, game type, number of maps to make, etc.)

* Leave the GUI without making a level

* Now, invoke ObHack from the command line with the first command line argument the seed of the map you want to make that starts with a number. For example, to use the seed '12345-long-ObHack-seed.wad' invoke ObHack as ObHack 12345-long-ObHack-seed.wad. It will generate a .wad file with both the name and seed '12345-long-ObHack-seed.wad' (yes, the .wad extension will be part of the RNG seed).

* This can be done repeatedly from a script if you have a few DVD-R blanks you want to fill up or what not

* Did I make it clear that a map generated from the command line MUST start with a number?

- Sam

Share this post


Link to post

I remember reading about how people like danny hillis were trying to implement algorithms on massively parallel computers to try to simulate how the brain works or something. Making a megawad seems suited to parallelism since each processor or whatever could make a map simulatneously, or there are probably ways to further subdivide the tasks (in theory I guess).

Share this post


Link to post

Thanks phi108 for this idea,

I wonder, is it possible for the "Progressive" or "Expansion" map size to only go from Tiny-Normal, or Tiny-Large, instead of Tiny-Extra large?

I have tested this and it seems to work ok, a few more tweaks needed but it will be in ver 006.9.

Share this post


Link to post

I've made a bunch of maps with 0.6.8 -- what with all the new quests the maps have become less linear since often you can pick any of several directions, and a given quest may end with anything from a weapon to a key to a locked door. This has increased crossfire in the outdoor maps, as well as the monsters hunting YOU. :) Weapons and armour are now pretty reasonably distributed.

Anyway, the one new bug I've found involved a cybe placed in a small indoor area, with his head stuck in the ceiling. Apparently there is no height check for the monsters??

Here's the settings, in case it's useful; I think the cybe was in map08 or 09 (there is only one).

-- Levels created by ObHack 006.8

-- Settings --
seed = 1747
game = doom2
port = nolimit
mode = sp
length = episode

-- Adjustments --
size = huge
steep = random
puzzles = normal
mons = swarms
health = normal
ammo = normal
outdoors = outdoors
iweapon = hardcore
switches = both
keytype = both
roomsize = large
lighting = bright

BTW this made an interesting set of maps, including one that consisted almost entirely of a set of massive switchbacks.

Share this post


Link to post

Map 06 of this very good set:
-- Levels created by ObHack 006.8
-- Settings --
seed = 4380
game = doom2
port = nolimit
mode = sp
length = episode

-- Adjustments --
size = huge
steep = random
puzzles = normal
mons = swarms
health = normal
ammo = normal
outdoors = outdoors
iweapon = hardcore
switches = both
keytype = both
roomsize = large
lighting = bright

A critter, or something, winds up as a SPLAT outside the walls of the map. I'm not sure how it got there as it is NOT there when the map starts. There hadn't been enough violence in the area to blow someone thru a wall, either. Didn't see any immediate evidence of bad nodes or a mistagged wall (either in person or in an editor), but I didn't check everything either.

Screenshots:
map view: http://www.doomgold.com/doomstuff/4380_03.gif
me outside the map looking at whatever it was: http://www.doomgold.com/doomstuff/4380_04.gif

BTW I got a map in this set with more than one secret, both pretty well placed, too. And there are at least a couple maps that if you don't know about the standard prefabs, you'd swear were hand-built by a very experienced mapper. Really excellent layouts. Very painful starts. :)

Share this post


Link to post

I'm letting people know I made what should be the final release of my version of ObHack before Fritz took charge:

http://maradns.blogspot.com/2010/03/my-final-obhack-release.html


I finally got around to integrating Fritz’s patch in to my older version of ObHack, which I call “ObHack-006b-pl1” (ObHack release 006b patchlevel 1). This is simply ObHack 006b (an old release) with Fritz’s patch.

Barring a security hole in ObHack, this will be my last ObHack release. Fritz is the current maintainer and has made a lot of improvements and changes which I encourage people to download and use. Also, Andrew has very recently made a release of Oblige which makes some impressive maps.

Share this post


Link to post

Thanks Rez, I have fixed the Cyberdemon head problem and it will be in the next version.
I had seen this before and was working on a fix.
And yes some maps will have more that 1 secret area, just another feature of the randomization.

Share this post


Link to post
Fritz442 said:

Thanks Rez, I have fixed the Cyberdemon head problem and it will be in the next version.
I had seen this before and was working on a fix.
And yes some maps will have more that 1 secret area, just another feature of the randomization.


Cool, I'll look forward to it. Thanks for all the good work!

The randomization sometimes does a very nice coherent job -- check out map 11 of the above set, a well-designed layout by any standard, in which you will be extremely grateful for the impassable balconies. :D

Something I thought of earlier today: is it possible to do "make DOOM2 maps but use mostly DOOM1 textures" for a more tech/retro look?

Share this post


Link to post

Is it possible to do "make DOOM2 maps but use mostly DOOM1 textures" for a more tech/retro look?

Rez, this would be more of a theme/texture issue and honestly I'm not very good with that.

Share this post


Link to post

Ah, okay. Anyway, I found another bug:

The unpegging on the secret doors is wrong. (Being useless with an editor myself, that's all I can say about it, I just know it when I see it rolling up wrong. :) All the other doors seem to behave correctly.

I've seen a few maps lately that have multiple doors for a given switch or key, which is always an interesting feature! The map logic is often really good that way.

Oh, speaking therewhich, I did finally get one with a minor logic failure, did I mention that yet?

Share this post


Link to post

The unpegging on the secret door was on purpose, I know it doesn't look as good opening, but is much harder to find.
I went back and forth on this issue. The other way most of the time you could spot the door from across the room with texture alignment.
I am still trying different door arrangments until I find what I like best.

I don't remember about the minor logic failure if you did.

Share this post


Link to post

Ah, so it wasn't my imagination, some previous version did have the secret door unpegging set normal. I'm not sure it's all that serious either way. But there must be some way around the "secret too visible" problem, cuz it doesn't act that way in handbuilt maps?? Could it have something to do with how the secret door always goes all the way up to the ceiling?

I'll see if I can find the map again that had the logic failure. It wasn't real serious, tho: The secret came off the entry area, so far so good. It snaked around behind and wound up at an overlook -- which was on the far side of a locked (switch) door. So if you jumped off the overlook, you couldn't get back (unless you jumped over a wall, which was possible with jumping). This did not break the map (you could still continue on the prescribed path), but did prevent you from going back to kill whatever lurked in the rooms off the other direction (a short quest, which included the switch for that door).

A friend suggested something that would fix all such spots: next to the backside of every door (keyed or switched), put a switch that lets it be opened from that side, then closes again so if it was locked before, it's still locked (I guess this would be a standard open-wait-close switch?) That way if you jump or fall into a spot like the above, you can ALWAYS get back and the map will never be broken. It would also make many maps totally non-linear, should you choose to play them that way.

I have found a few no-escape pits (too deep to get out of if you fall in) but I don't consider that a bug, since such pits have long been a traditional feature of DOOM maps. I did once find a trooper placed in such a pit, tho -- a very small pit that I had to jump up onto something to see at all! poor guy could hardly move. I shot him anyway. :)

Share this post


Link to post

Oblige 2, and my ObHack releases assume the source port you’re using doesn’t allow anything the “stock” version of Doom/Doom2/Heretic as released by ID (Raven) doesn’t allow. In particular, the maps assume your character can not jump.

Bottom line: Jumping is cheating. If you’re going to jump, you can also use “idclip” if you get stuck, and “iddqd” to finish the level without dying. :)

Now, as it turns out, the character can sometimes find themselves behind a closed gate if playing deathmatch; this is the reason I added the ability to make maps without switch gates in ObHack, so that people playing deathmatch on “single player” maps can always have it be possible to go from anywhere to anywhere on the map (since they will always have all keys).

Share this post


Link to post

No, no, no. The logic error involved one of those open overlooks that you can just fall off of. No need to use vertical jumping or any other cheat; just walk off the end of the pier, so to speak.

BTW it made me one today that was as twisted and devious as anything ever built by hand :D Damned good map.

Share this post


Link to post

Rez, this was not a logic error. You choose to 'jump or fall' off the ledge and by doing that you do so at
your own risk....lol.
I like the overlooks, I use them as sniper points to clear a room before I get there. Sometimes those lookouts
are their sniper points and they wail me there. I usually don't jump off them, if I do I'm usually going back to
find a secret or clear something I missed.

Share this post


Link to post

I *love* the overlooks... they can be your best friend or your worst enemy :)

I considered this one a logic error because NONE of the other overlooks I've seen (probably hundreds by now) have let the player get into somewhere they didn't yet belong. ObHack has been really good about that, and (in my duty as the Beta Tester Who Can Break Anything) I do check every time I come to an overlook! and I make all HUGE maps, so there are usually a LOT of overlooks. Needless to say I get many very painful fights, and monsters trickling out behind my back a lot. :D

Share this post


Link to post

Thats great, i love them too. And thank you for testing and finding issues.
I also make many, many maps and play them through, I really have alot of fun doing this.

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
×