superchargecacodemons800 Posted September 1, 2017 How do I make tag 666 actually perform a sector operation (e.g. Door Open Wait Close, Floor Lower to Highest Floor) only if all for a specific enemy is killed? So for example the exit will be accessible only if all arch-viles are killed. How do I actually make my own tag 666 so that some is performed by all for a specific enemy are killed? Again, I want the sector operation to be executed NOT by pressing/crossing/shooting linedefs, but by killing enemies. How do I make it using Doom Builder? 0 Share this post Link to post
Yugiboy85 Posted September 1, 2017 If using udmf or zdoom(doom in hexen format) for example, you could use this. This requires you to understand how zdoom scripting works and if you are just starting as a mapper, is not really recommended but, I suppose if you really wanna go for it then here goes. https://zdoom.org/wiki/ThingCount Specifically check this line: script 1 OPEN { While(ThingCount(T_BARON, 10) > 0) Delay(35); Floor_LowerToLowest(15, 20); } This simulates the e1m8 special action. Just replace the floor_lowertolowest part with whatever action you wanna do. Obviously, depending on what kind of monsters you want, you'll have to replace t_baron too. I usually put "0" in place of T_BARON. Like that, only the things with tag 10 will be affected. (You can asign tags to things in udmf, zdoom(doom in hexen format) formats) Example (in your case): Script x(whatever number) OPEN [or (void) but, I suggest keeping it at OPEN for now] { While(thingcount(0, whatever tag your archviles have been asigned with) > 0) Delay(35); Whatever action(properties); } This will do whatever action you specified after all archviles of a specific tag have been killed. Hope that helps a bit. Some people will probably explain it better than me but heh, this is how I do it and it's been working pretty much each time for me. 0 Share this post Link to post
scifista42 Posted September 1, 2017 The original engine's monster death specials were strictly hardcoded to specific map slots, specific monster types, specific sector actions and specific tags. There is no way to define custom ones that would be compatible with the original engine or classis ports, although there exist some limited workarounds. Advanced ports make custom monster death specials possible via scripting languages specific to them, for example in ZDoom based ports, either ACS (ThingCountName) or MAPINFO (SpecialAction) could be used to implement them. 0 Share this post Link to post
superchargecacodemons800 Posted September 3, 2017 Also I want it to be for the main Doom port, and I want to see how John Romero added tag 666 for the prison cell to the exit in E4M6, Against Thee Wickedly. Btw I also use fast doors because they cannot be opened by monsters whatsoever. 0 Share this post Link to post
scifista42 Posted September 3, 2017 (edited) 10 hours ago, superchargecacodemons799 said: the main Doom port Which particular engine do you mean by that? There's no consensus on what "the main Doom port" is. They have advantages and disadvantages each. 10 hours ago, superchargecacodemons799 said: and I want to see how John Romero added tag 666 for the prison cell to the exit in E4M6, Against Thee Wickedly. As I said, they hardcoded it into the engine, which they were developing along with Doom. Even if you could make a modified version of the Doom engine and hardcode your intended behavior into it, you shouldn't do it, as all the Doom ports were built for the original engine's behavior, so your behavior would never work in them and people would have to play your wad in the specific executable you made for it, which would probably result in many people not wanting to play it at all. 0 Share this post Link to post
superchargecacodemons800 Posted September 3, 2017 Just now, scifista42 said: Which particular engine do you mean by that? There's no consensus on what "the main Doom port" is. They have advantages and disadvantages each. As I said, they hardcoded it into the engine, which they were developing along with Doom. Even if you could make a modified version of the Doom engine and hardcode your intended behavior into it, you shouldn't do it, as all the Doom ports were built for the original engine's behavior, so your behavior would never work in them and people would have to play your wad in the specific executable you made for it, which would probably result in many people not wanting to play it at all. Sorry I can't control my inner bitch :) 0 Share this post Link to post