TeamTNT's Return From Oblivion: Released

For Total Conversions and projects that don't otherwise fall under the other categories.
Forum rules
The Projects forums are only for projects. If you are asking questions about a project, either find that project's thread, or start a thread in the General section instead.

Got a cool project idea but nothing else? Put it in the project ideas thread instead!

Projects for any Doom-based engine (especially 3DGE) are perfectly acceptable here too.

Please read the full rules for more details.

Re: TeamTNT's Return From Oblivion: Released

Postby Chris Couleur » Sat Jan 12, 2008 6:04 pm

What's with the bat? Have not tested the final version but this does not sound good. Are you talking about the little annoying bat that puts a bit of damage on you if it gets close and bites? Turns into a floating imp warlord? Never saw that when testing but does not sound good.

chris
Chris Couleur
 
Joined: 17 Dec 2003

Re: TeamTNT's Return From Oblivion: Released

Postby Enjay » Sat Jan 12, 2008 7:22 pm

That is basically the effect, but its the red mini wyvern, not the bat. I don't think the bat does it. I just grabbed this video which shows the problem in action. Or you could just summon an imp warlord and wait for it to spawn a wyvern. I think you have to get close enough for it to enter a melee/close attack state.

http://rapidshare.com/files/83357726/wrong.zip.html

[edit]Actually, I'm not sure (because of the loss of resolution) but my video *might* show a bat turning into a Warlord too. :?[/edit]
User avatar
Enjay
Everyone is a moon, and has a dark side which he never shows to anybody. Twain
 
 
 
Joined: 15 Jul 2003
Location: Scotland

Re: TeamTNT's Return From Oblivion: Released

Postby Xaser » Sat Jan 12, 2008 8:16 pm

I'm pretty sure the Dragon familiars are fine. I remember them torching me on occasion. Well... trying to, at least ;P

It's definitely the bats. In Schloss Alder's "sewer-y" section, several bat enemies reside there naturally. They still transform.

Also, in the big round room in Alder, I think one of the textures on the outside wall is misaligned vertically (it's underneath an arch, I believe). Nothing major... it wasn't a secret area, either. :P



EDIT: I checked the bat's decorate and I diagnosed the problem. Apparently, in order to prevent infighting I presume, both familiars' definitions inherit from ImpWarlord and uses SKIP_SUPER (for the layperson: SKIP_SUPER causes the actor to inherit *only* states, no flags or properties). However, this poses a problem as the bat familiar has no Missile states. Why, you ask?

A_Chase naturally calls the actor's Missile state at random intervals, and normally if a monster does not have them, this action is skipped (thus why demons don't randomly bite thin air ;P). Normally this would work fine in the bat's case, but the problem is that thanks to inheritance, the weapon *does* have a Missile state, left-over from the Imp Warlord. So, when the bat decides to use an attack, it sees the ImpWarlord's missile states, thinks they are its own, and runs them. All of a sudden, you have a tiny, floating Warlord throwing death skulls at you. :P
(Also note that this is why the dragon works fine. Unlike the bat, it defines its Missile states so it doesn't wind up using the Warlord's).

So, how to fix this? The easiest way would be to remove the inheritance but I'm sure that without it, the bats are prone to attack their masters (I've seen it happen in Zen Dynamics, 'tis why). I would propose adding a simple "empty" Missile state consisting of a 0-length frame and a jump back to the See state, but that would result in jerky animation... if Frame B decides to call the Missile state, it will wind up jumping straight back to Frame A... skipping over C and B again.

Sadly, I can't seem to find what I'm looking for on the wiki. Does anyone know if it's possible to completely clear a certain set of states? I know it used to be possible, but this was deprecated IIRC and doesn't work now. I'm slightly stumped on this one... unless it's possible to clear the states, we'll either have to settle for a jerky animation or run the risk of spawned bats turning against their creators. Either way, not an optimal solution.

Decorate gurus, let us unite and slay this menace of a problem!
Last edited by Xaser on Sat Jan 12, 2008 8:41 pm, edited 1 time in total.
User avatar
Xaser
anarchivist
 
 
 
Joined: 20 Jul 2003

Re: TeamTNT's Return From Oblivion: Released

Postby Enjay » Sat Jan 12, 2008 8:29 pm

Nope, neither are fine. The problem is similar for each, but different.

I summoned a drgonfamiliar and, at a distance, it tried to spit fire at me (which seemed wrong because it looks like short range fire but that could be as intended) but when I moved into melee range, it turned into a warlord.

I summoned a batfamiliar and at melee range it just nibbled at my ankles (nasty low-flying bats). However, when I walked away from it and waited for it to try a ranged attack (not sure if it is supposed to have one or not) it changed into a warlord.

The above things happen with GZdoom and ZDoom SVN (r703) but I checked Zdoom 2.1.7 and it does not happen - which probably explains why it wasn't picked up. No idea if it is a bug with Zdoom or due to the changes in the way DECORATE support has gone, but it is a problem one way or the other.

[edit]Checking the DECORATE, both actors inherit from the ImpWarlord actor. The bat does not redefine a Missile State and the Dragon does not redefine a Melee state so, logically, both just use the state from the original actor. That's certainly what I would expect if I'd defined an actor like that. Looks like a DECORATE bug to me, but for what ever reason, Zdoom 2.1.7 didn't show it up.[/edit]

[edit2]I just noticed that both actors use SKIP_SUPER. The Wiki says:
use SKIP_SUPER to reset the actor to default values. It only uses inheritance to get access to the parent's states


My reading of that is that when you use SKIP_SUPER, everything is defaulted except the states, which are inherited from the parent. So, again by my reading of that, ZdoomSVN and GZdoom are doing it right because they have inherited the parent's melee/missile states in the absence of redefined ones. Is that correct?[/edit2]
User avatar
Enjay
Everyone is a moon, and has a dark side which he never shows to anybody. Twain
 
 
 
Joined: 15 Jul 2003
Location: Scotland

Re: TeamTNT's Return From Oblivion: Released

Postby wildweasel » Sat Jan 12, 2008 8:55 pm

Unrelated gameplay nitpick: when you do things like freeze the player during text briefings, please either allow the player to skip them or autosave immediately after them. Dying sucks half the time because I get sent back to the briefing and have to wait several seconds before I can move again.
User avatar
wildweasel
I pay the bills around here, I can talk about the control group all damn day
Moderator Team Lead
 
Joined: 15 Jul 2003

Re: TeamTNT's Return From Oblivion: Released

Postby Xaser » Sat Jan 12, 2008 9:04 pm

Agreed. Right after the weapon loss is a good spot.


@Enjay: Ah, I didn't realize the Dragon was borked too. Still, it's the same problem I illustrated above: The dragon has no melee states so it uses the Warlord's. Also note that if you no-clip into the wall and watch bats fly around while they don't have a direct line of sight, they never transform. 'Tis the inheritance.
User avatar
Xaser
anarchivist
 
 
 
Joined: 20 Jul 2003

Re: TeamTNT's Return From Oblivion: Released

Postby Enjay » Sat Jan 12, 2008 9:17 pm

Xaser wrote:'Tis the inheritance.


Yup, I came to the same conclusion. The only question is, I guess, why 2.1.7 didn't inherit properly. Bug I guess.

I found this in another thread entirely:

Graf Zahl wrote:Write 'Raise 0' outside the state block and it is gone.


I wasn't sure if it was raise state specific, so I tried Melee 0 in the dragon and Missile 0 in the bat decorate definitions and it seems to have cured both (after a quick test).
User avatar
Enjay
Everyone is a moon, and has a dark side which he never shows to anybody. Twain
 
 
 
Joined: 15 Jul 2003
Location: Scotland

Re: TeamTNT's Return From Oblivion: Released

Postby hnsolo77 » Sat Jan 12, 2008 9:45 pm

for the dragon familiar just define a melee state and put in stop after that, same with a missile state for the bat, that should fix it no problem
User avatar
hnsolo77
if your life had a face Kim would punch it.
 
Joined: 16 Sep 2006
Location: the mythical land of Toronto Canada. (not really)

Re: TeamTNT's Return From Oblivion: Released

Postby Xaser » Sat Jan 12, 2008 11:10 pm

Ah, Enjay, that's the one. :thumb:


Just in case (for the lazy), just copy+paste this code into the DECORATE (overwriting old definitions) and it'll be all good:
Spoiler:
User avatar
Xaser
anarchivist
 
 
 
Joined: 20 Jul 2003

Re: TeamTNT's Return From Oblivion: Released

Postby DBThanatos » Sun Jan 13, 2008 2:00 am

Why?? is fun to have a morphing familiar :P

Jump is allowed right?
User avatar
DBThanatos
Guns, explosions, gore.
 
Joined: 14 Apr 2006
Location: in "the darkness that lurks in our mind"

Re: TeamTNT's Return From Oblivion: Released

Postby Graf Zahl » Sun Jan 13, 2008 2:08 am

Enjay wrote:My reading of that is that when you use SKIP_SUPER, everything is defaulted except the states, which are inherited from the parent. So, again by my reading of that, ZdoomSVN and GZdoom are doing it right because they have inherited the parent's melee/missile states in the absence of redefined ones. Is that correct?[/edit2]



Most definitely not! SKIP_SUPER is supposed to eliminate all state references to the parent.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
 
Joined: 19 Jul 2003
Location: Germany

Re: TeamTNT's Return From Oblivion: Released

Postby Graf Zahl » Sun Jan 13, 2008 2:10 am

Xaser wrote:DECORATE code



The code is syntactically incorrect. Either put the 'melee 0' and 'missile 0' outside the state block or use

Code: Select allExpand view
melee:
    stop
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
 
Joined: 19 Jul 2003
Location: Germany

Re: TeamTNT's Return From Oblivion: Released

Postby Phobus » Sun Jan 13, 2008 5:30 am

I've not seen any floating Imp Warlords, and I've been assaulted by numerous bloody bats... so far all they've done is irritate me and die at the smoking barrels of my chaingun and SSG (in one case).
User avatar
Phobus
Registered Occasional Lurker
 
Joined: 05 May 2005
Location: London

Re: TeamTNT's Return From Oblivion: Released

Postby Enjay » Sun Jan 13, 2008 7:17 am

Phobus wrote:I've not seen any floating Imp Warlords, and I've been assaulted by numerous bloody bats... so far all they've done is irritate me and die at the smoking barrels of my chaingun and SSG (in one case).

Are you playing using 2.1.7? The problem does not appear there.

Graf Zahl wrote:Most definitely not! SKIP_SUPER is supposed to eliminate all state references to the parent.

In that case, Id say the Wiki is a bit confusing.

Wiki when describing SKIP_SUPER wrote:It only uses inheritance to get access to the parent's states

Is that meant to mean that you get access to them - ie those are the things that you get to edit? That maybe seems like the intention in the cold light of day, but at 3am last night that sounded like "this gives the inheriting monster access to the parent states". ie it sounded like it copied the parent states to the child. To be fair, I did think that was odd because I thought that was how inheritance for states worked anyway, without SKIP_SUPER. Perhaps an improvement to the wording of the Wiki?

Anyway, if SKIP_SUPER is supposed to eliminate all state references to the parent, then GZDoom and Zdoom seem to be doing it wrong because they have clearly inherited the parent's missile/melee states for an actor that does not define them but which has SKIP_SUPER in the definition to prevent that.

Also, a thought struck me as I woke up this morning - why, when the Warlord melee/missile state is finished does the dragon/bat continue using the warlord sprites and not go back to the dragon/bat ones? Surely "goto see" even though it comes from the warlords attack sequence should send it back to the see state for the inheriting actor and not the one it has inherited from?

Graf Zahl wrote:The code is syntactically incorrect. Either put the 'melee 0' and 'missile 0' outside the state block...


I noticed that, when running with 2.1.7, that gives a warning at the console that it will be deprecated in 2.2.0. However, the SVN version and GZdoom do not give this warning. What it the state of affairs here. I assume that, since the two versions not giving the warning are newer, the feature will not be deprecated after all?



Anyway, I *think* perhaps we are at the point of identifying a bug, so I've put it in the bugs forum:
viewtopic.php?f=2&p=316429
User avatar
Enjay
Everyone is a moon, and has a dark side which he never shows to anybody. Twain
 
 
 
Joined: 15 Jul 2003
Location: Scotland

Re: TeamTNT's Return From Oblivion: Released

Postby Phobus » Sun Jan 13, 2008 11:39 am

Indeed I am using 2.1.7 (software still looks 'right' to me)
User avatar
Phobus
Registered Occasional Lurker
 
Joined: 05 May 2005
Location: London

PreviousNext

Return to TCs, Full Games, and Other Projects

Who is online

Users browsing this forum: No registered users and 13 guests