Exit Upon Defeat

Status
Not open for further replies.

Joat

Gum Phoenix
I have created a custom boss. However, despite checking the corresponding thing tag and making sure that, upon dying, it triggers A_Fall, A_BossScream, and A_BossDeath (in that order), the level goes on even after the boss is defeated. I could theoretically use an egg capsule, but that would make no sense, because this boss has absolutely no connection with Eggman or his schemes.
 
Well, I dunno how socced bosses work, but maybe try a "Kill All Enemies" trigger to lower an end sector? Least until you know what the issue is?
 
But that's hardcoded for the actual things, so that probably won't work for a custom boss. Just use the "Kill all enemies" Linedef Type to open a door or something.
 
For the record, if your Doom Builder/Workbench still exhibits a thing flag called "Exit Upon Defeat", your config is outdated. Update it and use the Object Special flag instead.
 
As a side note, the boss will also run a linedef executor with a particular tag (I forget what the number is) upon defeat. With this, you can do just about anything.
 
This is weird.

I could have sworn I had tried that flag before with no success. In fact, I checked every flag except Flip. I did it again just now and it worked.

Quite odd, that.
 
As a side note, the boss will also run a linedef executor with a particular tag (I forget what the number is) upon defeat. With this, you can do just about anything.

Perhaps I'm out of my league here, SSNTails, arguing about how tags work with you, but I don't think that's quite true. Here's what I have witnessed: there are three hard-coded tags which execute in relation to a boss: Tags 100 and 101 for the Sea Egg, and Tag 600 for any other boss. In the case of the Sea Egg, Tag 100 executes when the Sea Egg is down to 2 hit points, and Tag 101 executes when the Sea Egg is defeated. These can be used to produce any Linedef Executor effect you care to name, but they are hard-coded for the Sea Egg only. As for Tag 600, that can work for any boss, but it is hard-coded to produce plane movement at a fixed speed, and cannot be used to make any other Linedef Executor effect. IIRC, Tag 600 doesn't even use normal Linedef Executors to perform the action.
 
Last edited:
As a side note, the boss will also run a linedef executor with a particular tag (I forget what the number is) upon defeat. With this, you can do just about anything.

Well, this could be documented somewhere in the wiki. I wouldn't mind writting up the article if I know it.

EDIT: Ah! http://wiki.srb2.org/wiki/Reserved_Tags (but seems outdated)

*fawfulfan's post*

That's the problem: each boss triggers a special tag number; this should be consistent and "guessable" like 10001, 10002, 10003,... and 10008.

Once I had suggested a Linedef trigger that executes a certain linedef executor by number of hits against the boss (with or without delay - *reminds of Acid Missile*). The linedef lenght could be the number of hits. Or: keep the the reserved tags in a consistent way, and working for any boss, so level designer would have the freedom to trigger any linedef executor with any boss at their choice.

EDIT2: "Exit upon defeat flag" is currently the flag #2, in the official boss things.
 
Last edited:
The devs should make it so that what works for the Sea Egg works for all bosses. Currently, the Sea Egg has linedef executor flexibility that no other boss has; with linedef types 100 and 101, you can make the level do just about anything when the Sea Egg is defeated, or even just down to his last two hits.
 
I know this is so less smart than what everyone else has said, but, after you defeat your boss a door could open leading to an endpost, thus, ending the level. Or you could change the egg capsule to fit your boss.
 
The devs should make it so that what works for the Sea Egg works for all bosses.

Put it in the suggestions. Maybe alert Jazz or something too, see if they can get it into 2.0.5 in time.

In the meantime, you can easily SOC this functionality.
 
Object Special #2 is Deaf, IIRC.
There is no Object Special #2. From doomdata.h:

Code:
// Unused object flag.
#define MTF_UNUSED 1

// Reverse gravity flag for objects.
#define MTF_OBJECTFLIP 2

// Special flag used with certain objects.
#define MTF_OBJECTSPECIAL 4

// Deaf monsters/do not react to sound.
#define MTF_AMBUSH 8

// Do not use bit five or after, as they are used for object z-offsets.
The SRB2DB config is consistent with this standard.
 
Status
Not open for further replies.

Who is viewing this thread (Total: 1, Members: 0, Guests: 1)

Back
Top