GoneAway Posted May 29, 2021 (edited) Hello everyone! Previously I opened a thread about adding a new complevel, here. After 2 months of work we are happy to announce the release. Modder's Best Friend aka MBF21 Check out the full specification on github. The spec is fully implemented in dsda-doom, with work well on the way in woof (probably pr+ after that). Eternity, odamex, and doom retro support is planned as well (and probably more ports I don't know about). There is a version of the spec on github aimed at developers with links to code and commits to help with adoption. As far as tools, the latest build of UDB includes MBF21 as an optional configuration you can enable that includes the line and sector additions. DECOHack support for the new codepointers and various dehacked additions is ongoing as well. More to come! This wouldn't have been possible without support and ideas from the community at large, but especially the core team of collaborators: @AlexMax, @Altazimuth, @dew, @Keyboard_Doomer, @MTrop, @skillsaw, and @Xaser! Take a look at the spec and let us know if you run into any issues. Please enjoy! v1.1 Update: - Scrolling speed of the new specials is divided by 8 for more fine-grained control. v1.2 Update: - Added FULLVOLSOUNDS thing flag Edited June 14, 2021 by kraflab 108 Quote Share this post Link to post
Xaser Posted May 29, 2021 (edited) There's a ton of stuff in there, but just to give y'all an idea of the new feature set, here's some highlights: Instakill floors Better generalized line scrolling Granular control over monster infighting and projectile/splash damage susceptibility (e.g. you can make barons and knights infight, or make imps immune to cacodemons and barrels, and all sorts of funky combinations) New actor flags, exposing a whole ton of previously-hardcoded actor behaviors (e.g. splash damage immunity and boss death triggers), plus a few new things like ripper projectiles and low gravity Weapon flags -- make your weapons silent, customize autoswitch-on-pickup behavior, etc. A proper "ammo per shot" field for all weapons, not just the BFG A zillion new DEHACKED codepointers, with up to 8 customizable args. Go hog-wild with custom monsters & weapons now! Bugfixes & compatibility options, including fixes for 3-key doors, working generalized crushers, and the much-desired ability to disable Boom's pushing-monsters-off-ledges behavior that everyone hates. :P ...and more! Check the spec for full details. Just to head it off at the pass: yes, there's inevitably going to be some things on folks' wishlists that aren't accounted for. Some things were just too hairy to tackle right now (e.g. a "puff type" arg for the new bullet attack functions), while others were either too niche or too minor to spend the time on. Or maybe there's something super-obvious that we just missed -- had to cull the feature creep at some point (hey, remember when my codepointer list was just 5 items? :P) At any rate, enjoy! Or, well, look forward to when tool support is all done, at least... :P Edited May 29, 2021 by Xaser 71 Quote Share this post Link to post
Xyzzу Posted May 29, 2021 Thanks a million all of you for doing this! Time to switch my project over to this complevel 😄 6 Quote Share this post Link to post
skillsaw Posted May 29, 2021 I'm not really sure I should be listed as a collaborator, I mostly just asked for things -- but thanks for the mention :) A spec beyond MBF is a really huge deal -- just to add some context for anyone who is looking in from the outside, for any mapper looking to target multiple ports, the most advanced option was the MBF spec (targeted by Eviternity and Valiant, among a few other things) from about 1998-1999 plus a very small number of additional features that had made their way into prBoom+. This new spec, in addition to the semi-recent DEHEXTRA/UMAPINFO features are really going to open up a LOT of possibilities for map makers looking to retain demo compatibility. And that's not to mention all the quality of life stuff. Again, this is a really big deal. Thanks so much for all the hard work. I'm really excited to see what folks make with these additional features, and (of course) to play with them myself. 27 Quote Share this post Link to post
Csonicgo Posted May 30, 2021 Glad to see the community can come together and make this happen. 5 Quote Share this post Link to post
forgettable pyromaniac Posted May 30, 2021 damn. this here, this is cool.Too bad I can't even try it because I can't run UDB lmao 3 Quote Share this post Link to post
Quasar Posted May 30, 2021 I have one comment - the new scroller types define the speed of their motion in units per tic but with a scale of 1:1, which is extremely coarse. In Hexen, static init scrollers use the first line argument scaled up by a factor of 10 bits (the internal scrolling speed being a fixed-point number, as it is in BOOM as well). I feel it'd be useful to either change the existing types or add additional ones to allow for use of such a scaling factor, as the high end of speed available is unusable anyways - sacrificing some overall range for more tunability. This would allow stuff like the slow lava scrollers in Hexen's Guardian of Fire for example. 7 Quote Share this post Link to post
TheNoob_Gamer Posted May 30, 2021 Quote New actor flags, exposing a whole ton of previously-hardcoded actor behaviors (e.g. splash damage immunity and boss death triggers), plus a few new things like ripper projectiles and low gravity Weapon flags -- make your weapons silent, customize autoswitch-on-pickup behavior, etc. A proper "ammo per shot" field for all weapons, not just the BFG These modding features captured my interest, and are all pretty cool. I hope more people start to modding in Dehacked with them. 4 Quote Share this post Link to post
antares031 Posted May 30, 2021 This is the beginning of the new era of classic doom modding, especially with custom monsters and weapons. Congratulations! 13 Quote Share this post Link to post
Biodegradable Posted May 30, 2021 (edited) This sounds like a huge step forward that'll usher in a heap of new possibilities for future Doom projects. I can't wait to see what these technological improvements/advancements will bring us once learned and harnessed by the creative powers of this community. Well done, guys! Edited May 30, 2021 by Biodegradable 2 Quote Share this post Link to post
WH-Wilou84 Posted May 30, 2021 Thanks a lot guys, this new standard sounds like a major game changer for us mappers and I can't wait to toy around with it. I hope it gets supported on as many ports as possible. 4 Quote Share this post Link to post
Doomkid Posted May 30, 2021 This is epic, I LOVE the idea of being able to apply stuff like splash damage resistance to any enemy, there’s just so much customisation available with this, and with luck it should be folded into plenty of existing ports.. Excellent stuff! 1 Quote Share this post Link to post
SilverMiner Posted May 30, 2021 What about applying a colormap to certain sectors without floor/ceilings transfer? 2 Quote Share this post Link to post
Dimon12321 Posted May 30, 2021 (edited) Monsters still try not to shoot when there's another monster on their line of attack, I guess? Edited May 30, 2021 by Dimon12321 0 Quote Share this post Link to post
traversd Posted May 30, 2021 Nice! Any chance of? a proper voodoo doll thing that activates all specials like a player but also obeys skill and gametype flags level exit specials that go to the map coded by the tag (101=e1m1 1=map01) random teleport destination chosen if multiple destination things exist in the same tagged sector a "Sector Group" flag to stop movement of all sectors with the same tag if one of the sectors movement is blocked (to allow for multi sector lifts/elevators) 8 Quote Share this post Link to post
Horus Posted May 30, 2021 I scanned the spec and saw this :D - Fix generalized crusher walkover lines This is awesome (well, all of it is), many thanks! 3 Quote Share this post Link to post
El Inferno Posted May 30, 2021 Is it possible to increase the 65k line limit and the blockmap size limit? 0 Quote Share this post Link to post
WashingMachineEnthusiasts Posted May 30, 2021 Which settings in the Options lump define complevel 9 infighting behaviour as opposed to complevel 11 infighting behaviour? In my opinion complevel 11 infighting behaviour is the biggest setback to mapping for MBF, so being able to enforce the old behaviour by a lump makes this new complevel worth it on its own (although I am interested to try out some of the other features as well). 1 Quote Share this post Link to post
Horus Posted May 30, 2021 Is there a way to make a map completable in this new complevel 21 and gzdoom, but not completable (without cheats) in any other prboom complevel? (basically I have a map that uses generalized crusher walkover lines to work as intended) 0 Quote Share this post Link to post
dew Posted May 30, 2021 11 hours ago, skillsaw said: I'm not really sure I should be listed as a collaborator, I mostly just asked for things -- but thanks for the mention :) Same, I was mostly just loud in the preparation stages and played matchmaker for kraflab and Xaser. But it's great to see the team's effort bear fruits. 0 Quote Share this post Link to post
Redneckerz Posted May 30, 2021 First: 21 posts for MBF21 is just nice. Secondly: This is one of the most evolutionary steps for Doom modders and developrs alike in recent memory, on par with the implementation of UDMF. Ill set off for the Wiki page right away. Doom modding takes a new leap into the future with this, DEHEXTRA and more being brought to life. Efforts like this MBF21 specification truly highlight the Doom community in spectactular ways: Where else will you find a community that is crafting completely new specifications for levels and mods, nearly 30 years after the game itself released? A historical specification has been delivered today for Doom's history. 5 Quote Share this post Link to post
GoneAway Posted May 30, 2021 8 hours ago, Quasar said: I have one comment - the new scroller types define the speed of their motion in units per tic but with a scale of 1:1, which is extremely coarse. In Hexen, static init scrollers use the first line argument scaled up by a factor of 10 bits (the internal scrolling speed being a fixed-point number, as it is in BOOM as well). I feel it'd be useful to either change the existing types or add additional ones to allow for use of such a scaling factor, as the high end of speed available is unusable anyways - sacrificing some overall range for more tunability. This would allow stuff like the slow lava scrollers in Hexen's Guardian of Fire for example. This is a good idea and sounds like a quick patch to me. We'll update the spec 😄 1 Quote Share this post Link to post
floatRand Posted May 30, 2021 (edited) So far death exit floors are godsent. Although minor thing that Silverminer brought up, would it be possible to enable colormaps on other than fake floor/ceiling? Recently I ran into issue where I had to alter ranges of the colormap for one map to not look quite bad due to bad red ranges, but in turn the bright reds now pop in other maps for ex. pinkies. Although not sure if this would be extension of MBF21 - this possibly could be umapinfo addition. Otherwise in mbf21 it could be linedef. I must admit though, I am not privy to how renderer actually works with these things, so it could be what I am asking is not possible as a 'low hanging fruit'. Edited May 30, 2021 by floatRand 1 Quote Share this post Link to post
Redneckerz Posted May 30, 2021 (edited) @kraflab Sorry for double posting, but i have put a skeleton page for MBF21 on the Wiki. Its obviously not complete, but the exact details can be filled in by those who implemented it. Currently Modder's Best Friend redirects to this page. In case this needs to be reversed for better visibility, give a heads up. Edited May 30, 2021 by Redneckerz 1 Quote Share this post Link to post
SilverMiner Posted May 30, 2021 16 minutes ago, floatRand said: So far death exit floors are godsent. Although minor thing that Silverminer brought up, would it be possible to enable colormaps on other than fake floor/ceiling? Recently I ran into issue where I had to alter ranges of the colormap for one map to not look quite bad due to bad red ranges, but in turn the bright reds now pop in other maps for ex. pinkies. Although not sure if this would be extension of MBF21 - this possibly could be umapinfo addition. Otherwise in mbf21 it could be linedef. I must admit though, I am not privy to how renderer actually works with these things, so it could be what I am asking is not possible as a 'low hanging fruit'. Making colormap be applied to whole the map via UMAPINFO sounds simple to implement(imho) and would make it possible to make custom lighting behavior without much hassle than if it was to be made by using linedefs(and it won't hurt if it turns out implemented) or even worse way that is available for Boom mappers now, via 242 transfer heights thingy. 1 Quote Share this post Link to post
boris Posted May 30, 2021 48 minutes ago, Redneckerz said: Sorry for double posting, but i have put a skeleton page for MBF21 on the Wiki. Its obviously not complete, but the exact details can be filled in by those who implemented it. The wiki says that Quote Additionally, the Ultimate Doom Builder level editor provides support for the MBF21 specification through a optional configuration Just to clarify: the config comes with UDB, it's just not enabled by default. The users don't have do download the config somewhere else or anything like that. 4 Quote Share this post Link to post
GoneAway Posted May 30, 2021 Updated to v1.1 as mentioned above: the new scroller speed is divided by 8 so you have more fine-grained control. People asking for new features: as Xaser mentioned above, we think this is quite enough in one go. Save that for the next round :^) 10 Quote Share this post Link to post
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.