dmdr
Doomer
is this how I add a title under my avatar?
Posts: 588
|
Post by dmdr on Aug 9, 2021 0:35:53 GMT -5
(I know nobody here needs such a simple guide but I'm going to cross-post to Doomworld when I'm done)
Just discovered Doom? Like it (of course you do, everybody does)? Wanna make maps for it? Hell yeah dude, I love playing people's first maps so LAY THEM ON ME. Unfortunately I do see one mistake first time mappers make consistently and so I'm gonna write this in the hope at least a few of you will see it. ' What mistake, dmdr,' I hear you ask, ' and how will I know if I'm making it?' Well, it's simple! Are you about to proudly post your first-of-many magnum opus, but you've typed some variation of the following: ' this level will work in any source port but I tested it in GZDoom' WELL THEN I've got news for you matey potatey! Simply put, ZDoom and it's variations will correct many minor mapping errors that will prevent your nice map from working correctly with any other port. So, NEVER EVER TEST USING ZDOOM OR IT'S ZEDDY MATES! Well, sometimes you can, under the obvious circumstance that you're making a ZDoom specific map. But this post is directed more at people who aren't doing that so uh yeah. What you should do instead is test using the lowest-common-denominator port for your project. This requires a working understanding of the source port 'hierarchy', so to speak, so I'll talk about that now, along with the source ports I recommend using at each 'level'. After that I'll discuss the 'advanced' ports (less """""""""""""""""authoritatively""""""""""""""""" since I'm almost invincibly ignorant about such things), and then I'll write a little appendix for 'courtesy features' to make your player's lives easier too. I'll separate the sections into different posts because this ended up being a bit of a thesis. Here's a TABLE OF CONTENTS
CROSS-PORT FORMATS (for people who want maximum compatibility) - Vanilla/Limit Removing
- Boom
- MBF
- MBF21
SINGLE PORT FORMATS (for people who want features, compatibility be damned) - EDGE
- K8Vavoom
- Eternity
- Odamex
- *ZDoom
APPENDIX: COURTESY FEATURES (useful advice to ensure consistent gameplay experiences/dodge bug reports) - Simple Lump Replacement
- UMAPINFO
- ZMAPINFO
- COMPLVL
- OPTIONS
|
|
dmdr
Doomer
is this how I add a title under my avatar?
Posts: 588
|
Post by dmdr on Aug 9, 2021 0:36:22 GMT -5
CROSS-PORT FORMATS
These mapping formats will work with almost anything, and are recommended for people who want others to be able to play their maps regardless of their source port of choice.
Almost the same thing -- both use the same editing profile in whichever Doom Builder variation you're using (or Eureka, if you're a serious weirdo like eg. me). The chief difference is that larger, more detailed levels won't work correctly using the original DOS executable and are thus known as 'limit-removing' maps. Those that respect those limits (the discussion of which are beyond the scope of this post; plus I don't really understand or care about them so they're beyond my expertise anyway olololololololol) and do work in DOS are 'vanilla-compatible' or just 'vanilla' maps. The advantage of this format is that it will run in any port in the case of vanilla maps or almost anything (other than DOS or Chocolate) in the case of limit-removing ones. The disadvantage is that there is a very limited selection of mapping features available. This can be circumvented at the cost of making your levels into huge Rube Goldberg machines, but you should consider using a more advanced port if you're very ambitious. ON THE OTHER HAND in the absence of scripting and other fancy pants nonsense V/LR mapping will force you to concentrate on fundamentals like good encounter design and clean, functional, proportionate geometry (esp. in the case of vanilla) so it's not nearly so bad as I make it sound. Anyway this isn't really supposed to be a really highly opinionated thread, just a mildly opinionated one, so that's the end of this digression. What port?Chocolate Doom for vanilla (really the only choice) or Crispy Doom for LR. Chocolate Doom is a Windows/other, better, modern OS compatible version of the DOS executable and faithfully preserves it's quirks, bugs, and errors; it will spare you the pain of using DOSBox. You may also want to investigate ChocoRenderLimits if you're interested in vanilla (there could be other, newer, useful tools for vanilla bughunters out there, but I'm an LR guy so I don't know what they are. Frankly you're lucky I even remembered this one). Crispy Doom is a fork of Choco that... removes the limits inherent to vanilla. It also has many lovely quality of life features that make it an excellent Doom 'daily driver' (it's my favourite port so I have a strong bias towards it. No apologies, it's great). Other options?DSDA-Doom. Not really recommended due to the fact you'd have to learn about complevels to get vanilla behaviour so Crispy is easier to set up, plus it's limit removing so not really a replacement for Choco. It's a good option if you've already installed it though. One of the earliest 'advanced' ports, from the 90s (so, now a bit creaky). This format is compatible with almost every port, the notable exceptions are Crispy and, of course, Chocolate. Pretty similar to vanilla, but with many new options like GENERALISED LINEDEFS!!! and line teleporters and conveyer belts and so on and so forth to make your mapping life easier. Can emulate scripting using 'voodoo dolls' and the aforementioned belts at the cost of some Rube Goldbergness. A good choice for almost any mapper but has some odd behavioural quirks (esp. regarding monsters falling off things) compared to the original executable. Generalised linedefs are huge though, for real. What port?DSDA-Doom. At this point you're definitely gonna have to learn about -complevels but at least it's simpler than for vanilla -- you just type -complevel 9 on the command line (Doom Builder should have an option in it's testing dialogue box where you can add this) OR put a COMPLVL lump in your wad, which I'll talk about in the appendix. Other options?PrBoom-Plus. Not really recommended as DSDA-Doom has nicer 'courtesy features', plus it's only developed sporadically. This post by the author of DSDA-Doom is harsh but fair, in my estimation. You'll need to get into the CLI and use -complevel 9 in this case, there's no COMPLVL lump support. Boom editing reference - MBF (Marine's Best Friend)
Basically Boom with (very few) new map editing features, most notably 'sky transfers' which allow you to use multiple sky textures within one level (although these have been 'backported' to other ports, including, I believe, Crispy. You can use them in -complevel 9 maps for sure). It's main draw is it's improved DeHackEd support,* allowing you to change more behaviours than plain Boom, so if you're into gameplay mods this is a good option. If not, plain Boom is probably marginally more compatible with other ports than this, although I can't really think of a port that supports Boom but not this off the top of my head, sooooooooo, maybe not. This was a very ambivalent paragraph, for which I apologise, but I just don't have any real opinions on MBF. * DeHackEd is a patch format that allows gameplay modifications to be made to the original DOS version of the game. Be aware that it's not very powerful, and extremely fiddly, compared to the ZDoom equivalent, DECORATE. What port? DSDA-Doom, again. Use -complevel 11. Other options? PrBoom-Plus. Same caveats as above apply. Pooch. This is a sort of 'Chocolate MBF' in that it's an update of the original MBF code, and so deliberately retains the limitations inherent to that code -- consequently, I understand that many of the high profile MBF wads out there, notably Valiant, won't actually work as intended in this port. As such I hesitate to recommend this unless you have a 'vanilla mindset' and enjoy working within/around limitations. I'd better cop to the fact that I'm pretty ignorant on the matter and I may be wrong about this, so if you, gentle reader, know that I am, say so, and I'll correct this post and make it less sucky. Thanks. Woof! WOOF! IS GREAT! It's my second favourite port -- it's not quite as nice as Crispy but it's getting there. Why don't I recommend it then? Well, it's pretty new and some things still don't work like they do in other ports ( recent example, hopefully fixed by the time you read this). So until everything's mature and consistent, I can't really recommend it for testing purposes. I strongly recommend it for playing maps, however, and please report bugs or other weird behaviour so it can mature faster and I can just use it for everything. Woof! also uses complevels and helpfully includes human friendly aliases, including -complevel vanilla, boom, mbf and mbf21, depending on what you're doing. At the time of writing it doesn't support the COMPLVL lump but a ticket has been opened on GitHub so it will soon, fingers crossed. MBF editing reference The new kid on the block. Adds a handful of very useful editing features (including block player and block ground monster lines; after you've made a couple maps you'll appreciate what a big deal this is) and a lot of nice new DeHackEd stuff, sort of -- they're technically separate things but any port that supports one is very likely to support the other -- but at the time of writing isn't widely supported. However, several ports have support as part of their features roadmap so this should change soon enough. What port?DSDA-Doom -complevel 21.
Other options? Woof! -complevel mbf21.
|
|
dmdr
Doomer
is this how I add a title under my avatar?
Posts: 588
|
Post by dmdr on Aug 9, 2021 0:36:44 GMT -5
SINGLE PORT FORMATSUsing these will lock your players into using one port. Depending on your port of choice people may complain about your maps being incompatible with their port of choice, especially if you don't use that port's unique features 'to the hilt' as it were. I won't spend too much time on these since I'm not really that keen on 'advanced' source ports myself. Obviously if you're using one of these you need to test using the intended port! Can't really say much about this due to my hopeless ignorance on the subject, even when compared to any other subject, but has a few diehards still making mods for it so it must do at least a few things well; from what I understand it uses the Doom level format with external script files to enable more advanced stuff, including eg. 3D floors. It was the source port of choice for weapons modders once upon a time too (see: Immoral Conduct, which left ZDoom users gnashing their teeth with jealousy back in the day) so it has some nice capabilities in that direction. Of interest as it takes the Quake approach of de-hardcoding everything; all aspects of the game are controlled using it's own language called VavoomC (this was well before ZScript, fyi). Has a DECORATE parser too so it has a reasonably high degree of ZDoom compatibility; you could make a GZDoom mod and test it here too in order to get a little bit of cross-port compatibility, which is kinda neat. Descended from MBF by way of something called SMMU (Smack My Marine Up; don't ask, I don't know). Is demo compatible with the original Doom, which is to say that unlike the other advanced ports it preserves Doom's physics and gameplay quirks perfectly, making this the only advanced port suitable for testing vanilla/LR, Boom, and MBF levels... although this isn't recommended due to all the lack of easy ways to set the compatibility options from the command line (you can set -vanilla but that's it, so far as I know). Anyway this has some nice editing options, including fairly robust portals support, portals being a means of creating true 3D architecture. '3D middle textures' allow you to create (ugly) bridges, railings etc. quite easily too. Like ZDoom it uses ACS scripting for fancy pants level design stuff and has a quite powerful DECORATE alternative in the form of EDF. This is a multiplayer engine, not really used for single player levels but in theory, could be a good choice for mappers. It's based on an old version of ZDoom, like Eternity is demo-compatible (although I think you have to set the options manually here too), uses ACS for scripting and is planning MBF21 support so it will eventually have some gameplay modding capabilities as well. Don't really wanna write about this because, as the big bull elephant in the room, chances are you're already aware of it. All other advanced ports are basically in this one's shadow. Don't use it for testing though!
|
|
dmdr
Doomer
is this how I add a title under my avatar?
Posts: 588
|
Post by dmdr on Aug 9, 2021 0:36:58 GMT -5
COURTESY FEATURES
soon
|
|
40oz
diRTbAg
Posts: 6,107
|
Post by 40oz on Aug 9, 2021 15:38:50 GMT -5
|
|
Lobo
Doomer
Posts: 594
|
Post by Lobo on Aug 9, 2021 16:11:34 GMT -5
EDGE doesn't use scripts for 3d floors, horizontal sliding doors, swimmable water and most mapping stuff: it has it's own custom line/sector types is all.
|
|
xeepeep
Banned
Forever
Posts: 2,338
|
Post by xeepeep on Aug 9, 2021 17:05:39 GMT -5
The only edge I know about is what I do with my (content removed) all day.
|
|
dmdr
Doomer
is this how I add a title under my avatar?
Posts: 588
|
Post by dmdr on Aug 9, 2021 19:06:08 GMT -5
thanks 40oz ! Lobo since you were one of the diehards I was thinking of can you please explain the sorts of things you'd use RTS for? I guess I misunderstood it's purpose so I'll update the post as necessary. Also, do you know if COAL is gonna be some sort of ZScript/VavoomC kinda thing or is it's purpose more limited? xeepeep please talk to some girls asap
|
|
Lobo
Doomer
Posts: 594
|
Post by Lobo on Aug 10, 2021 1:36:34 GMT -5
RTS is for scripting things that happen in real-time while playing. Could be something as simply as displaying a message to the player, or lowering the outer walls on map07 when all mancubi are killed. I guess it's somewhat like a very limited zdoom ACS.
COAL at present is only for HUD stuff, showing ammo/weapons and so on. It cannot affect gameplay or level geometry. I think the original idea might have been to use it as a replacement for RTS but it never got to that point.
The other major EDGE feature is DDF, which might be what you were thinking of when you said "external script files" for mapping. I suppose it's the equivalent of DECORATE. These are text definitions for basically all game objects (line/sector types, monsters, weapons) which can be edited to make your own custom variants or something completely new. This is where all those EDGE mods concentrate their editing.
|
|
dmdr
Doomer
is this how I add a title under my avatar?
Posts: 588
|
Post by dmdr on Aug 10, 2021 2:34:29 GMT -5
Thanks Lobo! I'll update the post... soon (I sat up til 2am last night fucking with Dehacked stuff so I'm too tired to work on this today sadly)
|
|
Lobo
Doomer
Posts: 594
|
Post by Lobo on Aug 10, 2021 5:13:29 GMT -5
Does anyone know of a port which detects/displays the Tutti Frutti effect? (When a texture shorter than 128 is applied to a wall which is taller than that textures height?)
|
|
Deleted
Deleted Member
Posts: 0
|
Post by Deleted on Aug 10, 2021 9:48:34 GMT -5
For which target? Chocorenderlimits does display it and affords a bit more wads than vanilla/Chocolate.
|
|
Lobo
Doomer
Posts: 594
|
Post by Lobo on Aug 10, 2021 11:29:21 GMT -5
Doom in doom format. Possibly limit removing.
|
|
|
Post by Giomancer on Sept 8, 2021 15:22:50 GMT -5
I'm actually glad to see something like this written out; I've had a less verbose list sitting around on my google drive for years as a personal reference. ReBoom is one of Gibbon's many port updates. Looks like this is trying to capture a modern Boom baseline. Chocolate Doom++ is a limit-raising (but not removing) port by Axdoomer updated to Choco 3.0 updated by (once again) Gibbon. It's no Crispy, but it is something to look into.
|
|
xeepeep
Banned
Forever
Posts: 2,338
|
Post by xeepeep on Sept 8, 2021 16:38:42 GMT -5
Omg that choco++ is exactly what I needed. Thanks
|
|
Deleted
Deleted Member
Posts: 0
|
Post by Deleted on Sept 8, 2021 21:28:33 GMT -5
Hail ReBoom and that Gibbon guy. Finally we have a port that doesn't have MBF features working in Boom compatibility! Always dreamed of having one. That's the way it should be done.
Chocolate Doom++ is also cool for not being limit removing. The accent of mapping should be on not having to deal with visplanes overflow, but not for the sake of making maps look pretty. Doom was envisioned as gritty rather than pretty by its own developers back in the day.
P.S. Also, when I played Doom in my childhood the defining feature that stuck out to me was not fast pace (I never played it that way), but about having to deal with crushers, remotely activated lifts you need to hurry to board - obstacles to your progress within the map. The platform moving stuff that breaks up player's movement and makes it inconvenient is the defining feature of Doom.
|
|
|
Post by comradekirov on Sept 10, 2021 4:37:05 GMT -5
NEVER EVER TEST USING ZDOOM OR IT'S ZEDDY MATES Oops, that's what I was doing for a long time. Tried to test my maps (Boom format) in CrispyDoom and suddenly discovered that some actions stopped working. Damn.
|
|
Deleted
Deleted Member
Posts: 0
|
Post by Deleted on Sept 10, 2021 8:26:46 GMT -5
comradekirov, well CrispyDoom's target is limit-removing with maybe some more frivolous dehacked, it's not Boom, so in addition to Zdoomisms you may have encountered legit features not working because they are not intended to work.
|
|
|
Post by comradekirov on Sept 12, 2021 3:41:27 GMT -5
Yeah, I am aware that some Boom-specific actions will not work in any ChocoDoom-based ports. Not much of problem for me, though.
|
|