Chris Hansen Posted July 4, 2023 Hi. I am having a bit of a problem getting a part of my UMAPINFO to work. I hope someone can help me figure it out. On E2M8 I want to trigger a lower floor action after all Cyberdemons die so the player can enter a room with an exit. But it does not work. The level still ends like in the original game (level goes to endtext when all Cybers die). Here's the code: MAP E2M8 { levelname = "Domain of evil" levelpic = "WILV17" skytexture = "SKY2" music = "D_E2M8" bossaction = clear bossaction = Cyberdemon, 23, 667 } I thought the fix would be to add "bossaction = clear", but it does not seem to do anything. I know the code works, because I have same code for E4M8 where it does in fact lower a floor when the Cyberdemons are dead. That level also have a Spider Mastermind where I have defined a CODEPTR to Keendie in a Dehacked file, so that a door opens with tag 666. The point being that you cannot exit the level until Cybers and SM are dead. Here's the code for E4M8: MAP E4M8 { levelname = "Deus in absentia" levelpic = "WILV37" skytexture = "SKY4" music = "D_E4M8" interbackdrop = "MFLR8_3" bossaction = Cyberdemon, 23, 667 intertext = "blah blah blah" } Anyone got any ideas? Would be immensely appreciated! 0 Quote Share this post Link to post
thiccyosh Posted July 4, 2023 My complete amatuer guess is that there is a difference between these two maps. E2M8 doesn't call anything that has to do with sectors, it just checks if all Cybers are dead and then ends the map, so you pretty much can't change that. Meanwhile in E4M8 it checks if all bosses are dead and then calls an action (this case lowerFloorToLowest) with tag 666, which you can change both with Umapinfo. (Source: somewhere in p.enemy_c) I don't know how Umapinfo does stuff behind the scenes, so don't rely 100%ly on my reply. P.S. I also had problems working with A_Bossdeath in Umapinfo, so this just goes to show me that using it only works when it wants to :P 1 Quote Share this post Link to post
Professor Hastig Posted July 4, 2023 One important bit is missing here: In what port(s) do you have a problem. Or: Do all ports have this problem or is it specific to only one? 1 Quote Share this post Link to post
kalensar Posted July 4, 2023 Why are you using base Doom 1 e2m8 base commands when you can define all the parameters on your own custom map? If it's a Boom or ZDoom base then you can make your own triggers based. I would assume this is the case because Umapinfo isn't Chocolate compatible iirc. If this was a Dos or Coco compatible then the map replacement issue would be poignant, but this is not the case with Umapinfo. Basically forget the E2m8 trigger and make line defs for the gate/ or add multiple gates to the exit tied to each Cyber. 0 Quote Share this post Link to post
Professor Hastig Posted July 4, 2023 He's doing that, actually: bossaction = Cyberdemon, 23, 667 0 Quote Share this post Link to post
kalensar Posted July 4, 2023 (edited) Edit- last response was inconclusive for the problem What I meant is put the triggers in the map directly and don't use Umapinfo to define the boss action. Bossdeath line def the door/platform inside the map itself using the e1m8 version, the Cyber triggers the door When the last cyber dies. Is this Boom base? Edited July 4, 2023 by kalensar Correction 0 Quote Share this post Link to post
Chris Hansen Posted July 4, 2023 Thank you for all the answers! Sorry that I forgot to mention the source port. I will go through all the ports mentioned in the compatibility list but right now I am using Gzdoom. The mega wad I am making aims to be Boom compatible. 0 Quote Share this post Link to post
boris Posted July 4, 2023 It works as expected in DSDA-Doom, and considering it (as far as I've checked) works in GZDoom on any slot except E2M8 it's probably a bug in GZDoom. 1 Quote Share this post Link to post
Chris Hansen Posted July 4, 2023 (edited) Thank you, boris. I will try one of the other ports and see what results I get. I guess I just took for granted that gzdoom would be fine. But never take anything for granted, I guess. EDIT: Works in DSDA-Doom 0.26.2 PrBoom+ 2.5.17um PrBoom+ 2.6.66-ucrt64 PrBoom+ 2.61um-w32 Woof 11.2.0-win64 Does not work in Eternity 4.02.00 Woof 1.1.0-win32 GzDoom 4.10.0 zDoom 2.8.1 Edited July 4, 2023 by Chris Hansen 0 Quote Share this post Link to post
boris Posted July 4, 2023 Upon further testing: According to UMAPINFO the bossaction keys are cumulative. DSDA-Doom 0.26.2: seems to overwrite the map's default behavior with the first bossaction. Ignore bossaction = clear. Ignores any further bossaction after the first (non-clear) one. GZDoom 4.11pre-206: seems to not clear the map's default behavior with bossaction = clear. Additionally defined bossactions actually do work, but since the map ends that doesn't help much. Eternity 4.03.00 dev builds: works as expected. Default behavior gets cleared. All newly defined bossactions are executed. I've attached a example map with two bossactions to show the problem: umapinfo-e2m8-problem.zip 1 Quote Share this post Link to post
Chris Hansen Posted July 4, 2023 (edited) Thanks, boris! I will take a look at your map later. What would your advice to me be? Redesign the maps and accept that, because it only works in certain ports, it is not viable solution to let it stay the way it is? Or come up with completely new solution so that it’s fool proof no matter what port the player use? For me, the simplest solution is a dehacked file with CODEPTR to keendie attached to the bosses. But as far as I know it can only work for one boss. I have keendie attached to the spider mastermind at the moment. Is there anything like keendie that can be attached to the cyberdemon? Edited July 4, 2023 by Chris Hansen 0 Quote Share this post Link to post
Xaser Posted July 4, 2023 The solution is to fix up the ports -- these sorts of things shouldn't be accepted as unfixable things to be worked around (we're out of the Boom stone age). A bugreport is in progress for dsda-doom, so gears are turning there. 1 Quote Share this post Link to post
boris Posted July 4, 2023 It should be fixed in the ports. Considering that UMAPINFO is still pretty new it's probably that nobody ran into this setup before. I posted about it on the DSDA-Doom Discord to see if they want an issue for that on GH. I can also create an issue for GZDoom. But there are about a dozen other ports with UMAPINFO support that I haven't checked (and won't check). 1 Quote Share this post Link to post
Doomy__Doom Posted July 4, 2023 (edited) 37 minutes ago, boris said: I've attached a example map with two bossactions to show the problem: umapinfo-e2m8-problem.zip If you change the ceiling action from 40 to 166, it works in dsda-doom as intended - both red thingies move. There are probably undocumented limitations on what actions do or don't work, need to check P_UseSpecialLine in more detail. I recall avoiding Wx actions myself. Edited July 4, 2023 by Doomy__Doom 1 Quote Share this post Link to post
Chris Hansen Posted July 4, 2023 Getting it to work in the sourceports wold be awesome of course! So thanks for reporting the bug and your general interest in this bug I encountered. All of you and your dedication to this community is priceless. Now to test all combinations of various sourceports and all the linedef types/actions in BOOMREF.TXT!! :D *head explodes" 0 Quote Share this post Link to post
boris Posted July 4, 2023 2 hours ago, Doomy__Doom said: If you change the ceiling action from 40 to 166, it works in dsda-doom as intended - both red thingies move. There are probably undocumented limitations on what actions do or don't work, need to check P_UseSpecialLine in more detail. I recall avoiding Wx actions myself. Huh, interesting. The Doomwiki mentions some actions that won't work (like teleports or locked doors), but not that W* actions are not supposed to work in general. 0 Quote Share this post Link to post
Graf Zahl Posted July 4, 2023 W actions are supposed to work with boss actions. If they don't it's a bug. 1 Quote Share this post Link to post
Professor Hastig Posted July 5, 2023 I made a PR for GZDoom: https://github.com/ZDoom/gzdoom/pull/2103 It looks like this place was overlooked when adding MBF21 boss actions. 5 Quote Share this post Link to post
Chris Hansen Posted July 17, 2023 Just thought that I'd let everyone know, that I just ran through my levels (where I a first encountered this issue) in a recent build of GZDoom (gzdoom-x64-g4.11pre-213-gbe2616ca9.7z) and everything works as it should now! Hurray! 1 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.