I've seen the topic come up a few times about how mappers keep organized while making nonlinear doom maps, so I figured I'd share some of my layout scribblings I've made over the years. I'm a fan of drawing arrows and jotting down notes onto a screenshot of the layout while brainstorming routes the player might take through the level, generally after I have a basic outline of the map but before I've committed to any proper detailing. Examples:

FCFF MAP01:

FCFF MAP06:

WORMWOOD MAP02:

WORMWOOD_EU MAP04:

MAGNOLIA MAP31:

MAGNOLIA MAP03:

WORMWOOD ]|[ MAP03:

I've added some of my most commonly used lua scripts to a github repository. You can find them here: https://github.com/ribbiks/doom_lua

squarifier.lua

bevel.lua

Adds bevels to the intersection of all selected linedefs.

circularizer.lua

Transform a map from a rectangle into a ring.

flank.lua

Adds border linedefs to the interior of all selected linedefs.

join_identical_sectors.lua

Join (or merge) all selected sectors that have the same floor, ceiling, brightness, tag, effect, floortex, and ceiltex.

make242c.lua

Apply fake floor, ceiling, and colormap effects to all selected sectors.

select_overlapping_monsters.lua

Does what it says on the tin.

squarifier.lua

"Squarifies" all selected linedefs.

While clearing out one of my old folders of miscellaneous doom scraps I came across wallscroll.wad, a prototype for animating textures from one state to another based on a triggered action:



The way it works is outlined in this post. Each frame of the animation is stuffed into a single texture:


After hitting the switch a voodoo doll then rapidly scrolls the wall with the big texture 128 units at a time, simulating an animation.

download: wallscroll.wad

Teleport destinations are mobjs like any other, which means you can make them pushable, killable, etc, via dehacked flags. One simple thing you can do with this is boom-compatible teleporters with multiple destinations:



Download: teledest1.wad

If you walk over the teleporter it takes you to the red side. But if you hit the switch, the teleporter now takes you to the blue side instead.

When you walk over a teleport linedef the engine searches through all sectors (in ascending order) looking for one which matches the tag of the tele line and which contains a teleport destination object. The red telepad has a lower sector index than blue, so it is found first in the search. When you press the switch, the teleport destination object gets pushed off of the red telepad, so the search for a teleport destination continues onward to the blue one.

In the demo wad the destination objects are candle sprites so you can clearly see what's happening, but in practice you could blank them out with an empty graphic.

DoomBound 1

Back when Starcraft custom mapping was a thing there was a popular game type called "Bounding" that involved guiding small units through timed patterns of exploding obstacles. Think part puzzle-game, part rhythm game:



I had the terrible idea to try and create timed exploding obstacles in Doom (specifically, in boom-compatibility):


I cobbled together some dehacked, wrote very elaborate lua scripts to generate the explosion mechanics, and had a decent prototype going. It might be the most complicated voodoo-doll mechanics ever used in a map? Don't quote me on that.

Gradually my enthusiasm for the idea wore off. The explosions can feel pretty janky, and I imagined that very few people would actually be interested to play something like this (especially if I started making very challenging obstacles). Instead of having it rot on my harddrive though I figured I might as well post the tech demo: doombound01.wad (tested in prb+ complevel 9)

Some things to note:

- Each difficulty setting has different explosion patterns

- UV requires SR50

Boom's "Scroll Floor/Things" actions normally only affects objects on the ground. However, if the scrolling is applied to a sector also affected by action 242 then it pushes every object below the fake surface.

This can be used to nudge flying monsters around, or projectiles:

Here's are some vaguely-spooky maps that use the effect: wormwood_EU.zip

Happy Halloween.

Floors that instantly kill you when you land on them! Very common in zdoom mods, rather straightforward to implement in MBF, and I recently found out it's doable in Boom. Most cl2/9/11 mapsets with "you fall, you lose" mechanics use one of the following techniques:

1) -20 dmg floor: Slow and annoying.
2) Linedefs that trigger voodoo crushers or telefragging: Easily broken in multiplayer.
3) Invisible enemies that melee you to death: Infinite height problems.
4) TOUCHY enemies that explode on collision: Only works in cl11, cl11 is bad.

It turns out that false floors created by Boom action 242 block certain line of sight checks, including those used by A_Explode. If you place a constantly-exploding object in a "deep water" sector, the player will be dealt large amounts of damage if they are within range, but only if their z-position is below the fake surface!

Here's a small example wad to demonstrate the effect: rbkz.net/exp/deathfloor.wad

Here's a map I made yesterday which incorporates it: rbkz.net/doom/pwacP.wad

 

The effect is so simple that I have to assume the LoS behavior in 242-affected sectors was intentionally designed to facilitate things like this. There are probably Boom wads out there that have done this already?