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

Obhack 006.7 Released

Recommended Posts

Obhack 006.7 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/


Added 'Random' setting to RoomSize and Steepness parameters.

Bugfix: Fixed issue with Puzzles setting.

Multiple bugfixes concerning making of Deathmatch maps.

Share this post


Link to post

Cool, another version of ObHack :)

PS: ObHack is adding a set of replacement wall patches after every level, thus unneccessarily increasing the file size.

Share this post


Link to post

You are welcome.

Do you have any ideas what to further add to ObHack? Another thing, with the light settings, is it normal to see some outdoor areas with 128-144 light and others with 160-192 when using the 'Medium' lighting setting?

Share this post


Link to post

Mr Chris,
In the lighting, yes it will be normal to see areas brighter than others.

The 'None' setting all rooms are 128, the default, except the exit room which is brighter.
'Low' will be between 60 to 120 randomly
'Medium' will be between 100 to 160 randomly
'High' between 125 to 185 randomly
'Random' will randomly choose from all of the above.

At this time I don't check to see if they are outdoor areas or not,
so you can get diff lighting in two conjoining areas, maybe later.

As far as ideas, I look to you and others users for ideas and suggestions.
Please keep them coming and i'll try to use all I can.

Share this post


Link to post

The lighting variations looks good indoors but looks plain weird when outside with multiple adjacent outdoor sections. Some of the prefabs placed by the program have a set brightness (the 3 layer puddle used for Doom 2, for example) and it looks odd having a 'bright' puddle and dark surroundings :)

What about an option to turn off the varying lighting shown by those options and just use the default episodic light values in x_doom1/doom2.lua?

I do have some ideas, but it involves fixing some of the quirks seen in the v2 code, such as seeing a higher liquid floor adjacent to a lower non-liquid sector, thus the liquid falling onto nothing. Stuff like that.

Share this post


Link to post

I will look into that Mr. Chris
But some of that is in the v2 code and may be hard to implement,
If you have any ideas on how to do that let me know.

Share this post


Link to post

For Doom1, why not just use my theme in place of the current since it simply expands the Doom1 themes in the same manner I did with the x_Doom2.lua?

Share this post


Link to post

OK yes, I was cornfused....LOL
I will replace doom1 with your doom1_mrchris lua and remove
the 'Doom1 MrChris' option. TY.

Share this post


Link to post
Jonno8825 said:

First time I've used something like this, and I gotta say, I love it!
Thank you very much.


Also check out the original Oblige while you're at it (both the current version and the v2 which is what ObHack is based on.)

Share this post


Link to post

I played through about 26 Doom2 levels generated by this version, and I'm not getting any high-power weapons. There are only shotguns and chainguns lying around, and there are no weapons at the ends of quests.

I played most levels at medium difficulty with these settings:

-- Settings --
seed = 6949
game = doom2
port = nolimit
mode = sp
length = full

-- Adjustments --
size = regular
steep = random
puzzles = normal
traps = normal
mons = less
health = less
ammo = less
outdoors = some
iweapon = none
switches = both
keytype = both
roomsize = random
lighting = random

Share this post


Link to post

phi108: I played through about 26 Doom2 levels generated by this version, and I'm not getting any high-power weapons. There are only shotguns and chainguns lying around, and there are no weapons at the ends of quests.

Jonno8825: Yeah, I didn't seem to get any SSG's at all :/



Yes guys, I know about this and are working on a fix, Thanks for the heads up. Fritz
(Larger weapons are availible as quest items if you build 'Small' or 'Tiny' map sets)

Share this post


Link to post

Firstoff, I'm VERY impressed. I've made and played about a hundred maps so far, and they've ranged from decent enough to -- as good as some of the better hand-built maps. (And I've played almost every BOOM-compatible map there is.) I prefer the outdoor maps as they're less linear and a whole lot more scary :) I will never run out of fresh DOOM maps again!

Things I especially like:

** The balconies and overlooks, which can be a hazard or a help :) and are good for shortcuts. Ditto how many maps loop back on themselves, and the numerous "murder holes".

** Monster movement is natural, constrained only by the landscape (fences etc.) -- and there is usually some way for them to escape containment so you have to keep an eye on them!

** Monster progression and placement (including which are deaf or not) is from very good to downright diabolical

** Lots of crossfire, often from a day's hike away, leading to many rude surprises and "Where the hell IS he??" moments :D It's also often as well-placed as if done by hand -- there's no such thing as a truly "safe" window!

** DOOM1 and DOOM2 maps definitely feel and play different, true to the originals' look and feel.

** Jumping-friendly -- at least in the outdoor maps, a lot of the walls are a good height for skilled jumpers, and you usually can get away with jumping in and out of places you don't yet have legit access to. This makes the maps somewhat non-linear, and occasionally far more "exciting" than the design intended :) (Also often shortens the long hikes back for supplies.) In those few areas where you can get stuck, it occurs to me that if there was a closet teleport somewhere after each locked door, which simply goes back to the player start (or to just outside the previous locked door, rinse and repeat as needed), this would solve all "whoops, jumped into a deep spot and can't get out" problems. (With an *option* to let monsters use teleports too once they're opened, this could put some surprise monsters on your butt as well.)

** Often they are quite nifty-looking, with some nice visual features, and some are downright spectacular. (I can ignore the occasional poor alignment or orphan texture -- I did note that the orphans seem to be artifacts of breaking off a wall on the other side of what you can see.)

** The tidy way supplies are laid out is a nice little visual bonus.

** Colour-coded doors and switches, with some of the switches on tall columns visible from afar -- nice touch. There's enough randomness in how they're placed that it's not just 'the nearest door you see' either. (I like the occasional switch that hangs from the air!)

** It builds fairly fast even on my old P3-550, and I have not seen any nodebuilder errors (other than some flat bleed when I jump up where I don't belong, along the extreme outside edge of the map).

I'm not a big fan of secrets, so having just one per map is fine with me. I do like how sometimes they're almost a separate mini-map, and how they often have a visible balcony or overlook (or in one case, a big cage extended from the main map into the secret -- OUCH!)

I find these settings perform best for what I want to play:

-- Settings --
seed = (whatever it spits up)
game = doom2
port = nolimit
mode = sp
length = episode

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

(try seeds 8440 and 8652 for some really good maps, especially one map in 8440 that has skyscrapers and a penthouse apartment :)

This is the only fatal bug I've seen (and my buddies encountered it too, using different engines, so it's not just me):
========================================
R_TextureNumForName: MARBL not found
map 06, map 09, map 10

-- Levels created by ObHack 006.7

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

-- Adjustments --
size = progressive
steep = random
puzzles = more
traps = normal
mons = swarms
health = more
ammo = more
outdoors = some
iweapon = none
switches = both
keytype = both
roomsize = random
lighting = random

=====================================
R_TextureNumForName: N_MTSP3D not found
map 03

-- Levels created by ObHack 006.7

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

-- Adjustments --
size = huge
steep = random
puzzles = more
traps = normal
mons = swarms
health = more
ammo = more
outdoors = lots
iweapon = none
switches = both
keytype = both
roomsize = random
lighting = random
===============================
When this happens it is always one or the other of those two textures-not-found. These are just some examples I saved for bug reporting, not unique (have seen it with other seeds too).

Occasionally ObHack abends, but it restarts gracefully (at worst it'll sometimes forget my settings). I do wish that it would remember the "last used" directory, since it's a lot of navigating from "My Documents" to where I keep my WADs.

As someone else notes, there is a lack of big weapons. Since with my settings you get a flock of cacos and PEs coming over the walls within the first minute (and meanwhile you're still fighting off the initial rush of foot traffic) I solved the problem by doing IDFA *once* at the beginning of map01. Since there are NO loose rockets, I then ration them carefully -- reminiscent of old Episode 1 :) and if I run out of those 100 rockets (plus the two at each map start) before the 11th map is over, tough for me. :D

The other deficiency is armour -- there's often none at all, other than the occasional blue armour in a secret. We need at least a thin scatter of green armours, and I think there should be at least one in every map.

I've observed that as the maps progress, the ammo tends to get skewed from shells to bullets, and often there are no shells at all in the late parts of big maps -- by which point there are more monsters that need the SSG, so shells become precious. So I often have to ration shells, but often have more bullets than I know what to do with.

There is usually plenty of plasma, appropriately placed, tho sometimes there is no plasma gun at all.

If about a third to half the plasma were rockets instead, I think it would be about right for folks who love the rocket launcher.

I've only encountered ONE Cybe, in a DOOM1 map09 (ouch!!). I've been a bit surprised that there's never been one in any of my DOOM2 maps, tho I think the occasional cybe would work well in the largest and most open parts of the outdoors. None of them has enough space for a big spider, tho I've wondered if when several outdoor "rooms" have the same or almost the same floor height, whether they could be combined by simply removing some of the separating walls. (I wouldn't worry too much about it confusing locked door access -- at that point you're using locked doors mostly for monster-flow-control, not to get somewhere, and if you have to backtrack to find the key or switch, oh well!)

I've not seen any stuck monsters other than the occasional baby spider in a cage that's just a tish too small -- I think it doesn't account for the greater room that it takes for larger critters to turn.

However, I've been stalked, ambushed, had my ass unexpectedly chewed, had to run for my life, and otherwise been astonished many a time :)

Anyway... I'm thrilled as hell with what ObHack is creating, and best of all they are Real DOOM maps. They feel right. Good job!!

Share this post


Link to post

Rez: Those are Skulltag textures, looks like a few slipped by. You can 1) Switch to the source port or 2) Wait for a fixed config file.

Altering it shouldn't take long.

Edit: I am certain there are no leftover Skulltag textures within the vanilla LUA files. Stick the files in the /scripts directory

http://www.mediafire.com/?aj2nnt1yway

Fritz, you should take note to use the updated files since I sent you previously for vanilla had some Skulltag specific textures left over in them.

I forgot, did I already talk about having said option to have the lighting work as in previous versions of Obhack, allowing the program to control the light level instead?

Share this post


Link to post

Ah, a simple problem, the best kind :) Tho Mediafire refused to give me the fixed.zip file :( Is there somewhere else you could stash it, or just email it to me? (rividh/at/earthlink/dot/net) Thanks!

I'm all too adapted to Fusion (a direct descendant of BOOM/MBF) so a switch is a no-go. Much hair-tearing and cursing has resulted from my various forays into other ports. :(

BTW here's a comment from a buddy:

"So I've been messing with ObHack. These really are fun levels. :) At first I was skeptical, given that SLIGE had some issues, but I'd rather play ObHack levels than most of the random non-TC levels that have come my way in recent years. Everything I am doing thus far is in SP mode, so I'm not sure to what extent - if any - this would be good for DM. Also, I haven't yet come across any teleporters and I do miss them. :( But there's some excellent use of both Cacodemons and Revenants in the levels I've generated."

I tellya, ObHack makes seriously addictive maps :)

Share this post


Link to post

Thanks, that link worked. Inserted into /scripts and I'll give it a whirl.

I've made tons of SLIGE maps -- they were always fun and playable but pretty much the same all the time. A few of the best ones are preserved in my "Untouched By Human Hands" series (http://home.earthlink.net/~reziac/bin/ubhh.htm or linked from http://www.reziac.com; my first ObHack set is there too)

Also tried an early version of Oblige, back-when -- much better looking maps than SLIGE, but dull to play. And I just tried Oblige3 as well -- didn't find the maps particularly interesting, tho they sure do remind me of some of the earliest user-made PWADs (in both appearance and monster placement/mix). Very different style from the other generators (and I know some folks who'd prefer these).

IMO ObHack retained all the best features of the other map generators, while omitting the flaws and fixing most of the deficiencies. :D

Share this post


Link to post

Thanks guys for the input here.
I have already fixed many of these issues so far, the missing textures, larger weapons as quest items, lighting issues, cyberdemon shows up to harass us more often but with the larger weapons now he's more fun, only writing texture patches once and many other small fixes. These are already in ver. 006.8 that I will be releasing real soon.

Mr Chris, as for the lighting if you set it to 'None' in ver 006.8 it works as previous versions did.
I will also check these new lua files.

Rez, if you could elaborate on this a little.

Occasionally ObHack abends, but it restarts gracefully (at worst it'll sometimes forget my settings). I do wish that it would remember the "last used" directory, since it's a lot of navigating from "My Documents" to where I keep my WADs.

It should remember the last used directory, from the last line of the CONFIG.cfg file.

Share this post


Link to post
Fritz442 said:

It should remember the last used directory, from the last line of the CONFIG.cfg file.

It is saved in the config, but in Windows the value was never used (because I didn't fully understand the Win32 GetSaveFileName() system call, and what I tried didn't work).

The WISHLIST in Oblige V3 says this:

-  ui_chooser: support last_file in WIN32
      maybe this: lpstrFile contains _base_ of file (FOO.EXT)
              and lpstrInitialDir contains _path_ of last file.
      probably only set it once (first call).
I'll work on it today and hopefully fix it once and for all.

Share this post


Link to post

Last line of config file:
-- Miscellaneous --
last_file = "D:/DOOMSTUFF/EDITORS/OB-HACK/OBHACK-WIN-006.7/\TEST.wad"

This appears to be a generic value, since I've never made a TEST.wad. Anyway, I see from your posts that it was an error of omission, so I'll look for it to start working in the future.

Next time I get an abend I'll save any messages I can snag, but here are the two circumstances I've noted (both harmless, other than making ObHack forget its settings):

Sometimes when I click BUILD, the ObHack window just vanishes. Harmless, if startling. :)

Sometimes *after* I have shut down ObHack, then later gone to shut down Windows, I'll get a notice to the effect that "ObHack has committed an illegal action and will be shut down" which seems a bit silly <g> but tends to indicate that it is leaving junk in RAM. Doesn't seem to do any harm otherwise. It has NOT given me any IllegalOp errors during the actual program run.

System: P3-550/1GB RAM, Win98-the-first (no updates). Normally very stable.

BTW the logfile (which is quite interesting to read) is sometimes not saved to disk at all; I'm not sure this is related to the occasional abend, as it sometimes doesn't leave a logfile even after a normal run and exit. (I haven't always checked so can't say if there's been any pattern to it.)

The current logfile has this at the top, is it meaningful?

Loading Config...
DONE (found 2 parse errors)

If there's anything else you want me to watch for, let me know.

Share this post


Link to post

hummm...interesting
I have never had this happen in the 100's of maps made.
I'm using winXP and the config file & the logfile are always written after each build. This could be a Windows98 issue.

The
Loading Config...
DONE (found 2 parse errors)
is normal.

After some testing, I did see that if the file listed in the 'last_file' isn't there, it will default back to a different dir.
Andrew replied to this saying this didn't work as planned and is looking into it. Thanks again for the input Rez.

Share this post


Link to post

Win98 is unforgiving of memory errors, whereas WinXP will often mask them, due to having better memory-space isolation (if you check your XP event logs you'll be amazed how many times various apps or even the desktop crashes in the background yet you never see it happen -- OfficeXP does it every single time it's started!) Anyway, so long as it's just an occasional thing, probably no big deal, but I would keep an eye on it as it probably does indicate some sort of memory corruption going on.

Share this post


Link to post

I have fixed the 'last_file' problem in the V3 code. The following two files are the ones affected.

They should work in the old V2 code with some adjustments (firstly keep the original #includes, and secondly need to pass "wad" as the new 'ext' parameter of Select_Output_File).

http://oblige.svn.sourceforge.net/viewvc/oblige/trunk/gui/ui_chooser.cc

http://oblige.svn.sourceforge.net/viewvc/oblige/trunk/gui/ui_chooser.h

Share this post


Link to post

Caught in the act! <g> I'd run ObHack 3 times, mostly in the background while I was wandering the web (tho it uses 100% of CPU if available, it is polite about it and shares the system nicely -- doesn't slow down anything else). Shut it down, then shut down Seamonkey (Mozilla) and THEN got this:

OBHACK caused an invalid page fault in
module OLE32.DLL at 015f:7ff6f0dd.
Registers:
EAX=653c7aa8 CS=015f EIP=7ff6f0dd EFLGS=00010202
EBX=00000000 SS=0167 ESP=007efd68 EBP=007efd78
ECX=005c07c8 DS=0167 ESI=00000000 FS=22a7
EDX=81bdaadc ES=0167 EDI=00000000 GS=0000
Bytes at CS:EIP:
8b 30 ff 56 08 eb e7 55 b8 00 00 00 00 83 3d 08
Stack dump:
653c7aa8 007efd98 00000000 005c075c 007efd9c 7ff4cfbb 00000000 0048f038 00000000 7ff6f3df 007efd98 00000000 005c075c 007efdcc 00444ec7 00801280

However, it doesn't seem to have messed up anything else (Windows is still behaving normally).

<inspecting logfile> Per the logfile's timestamp, it didn't write (update?) the logfile until the program was shut down, which was five minutes AFTER the last WAD was written to disk. And the logfile contains the most recent TWO runs; is that intentional? (I name the output WAD the same as the seed, so it's easy to keep track.)

Given the delay noted, I wonder if the pagefault is in the logfile write-to-disk function?

Share this post


Link to post

The V2 code for reading and writing the config file was missing some fclose() calls, which I fixed in V3. That may be related to Rez's odd crashes.

Patch:

Index: g_cookie.cc
===================================================================
--- g_cookie.cc	(revision 2586)
+++ g_cookie.cc	(revision 2588)
@@ -166,6 +166,8 @@
   else
     LogPrintf("DONE.\n\n");
 
+  fclose(cookie_fp);
+
   return true;
 }
 
@@ -204,6 +206,8 @@
 
   LogPrintf("DONE.\n\n");
 
+  fclose(cookie_fp);
+
   return true;
 }
 

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
×