#96 posted by yhe1 on 2019/12/05 04:21:38
One issue first:
The sounds for the Alien warrior is definitely wrong. I checked chasm, the activation sound should be ALISEE2.ogg and ALISEE1.ogg
Yet your alien warrior doesn't sound like that.
You got the monster sounds from
Pan-ZRift_v1.0a.rar, right?
 Names
#97 posted by madfox on 2019/12/05 06:53:00
I'm sure you're right. The grunt has three sound channels I gave to Stratos fast and mongrunt. The others were a bit harder to trace as you call it an alien warrior but the game has a leutenant captain (1gun) and a captain trooper (2guns).
#98 posted by yhe1 on 2019/12/05 10:16:12
I think there is a misunderstand here. When I said infight, I didn't mean how often infights happen, or which monster kills which monster. I only meant stuff like when a Faust hits an enforcer, the enforcer won't fire back. I suspects this is due to some Faust code that makes the enforcer not able to target it. This is why I suggest the copper quake code, as it deals a lot with defining targets.
#99 posted by yhe1 on 2019/12/05 10:18:29
Or maybe look at the difference between the code of the alien warrior (1gun) and the Faust. The enforcer fires back at alien warrior, but not Faust
 So
#100 posted by madfox on 2019/12/06 04:29:05
When the Alien Captain hits the enforcer it also fights back, like mong and stratos.
Can't find out where it is nestled.
It takes some time before the enforcer responds to The Captain in its painframes.
Maybe it hasn't got time enough to shoot back?
Stratos and Grunt tend the same lack in attacking at first move.
#101 posted by yhe1 on 2019/12/06 04:36:56
Can you do an experiment? Can a fiend fight back against Faust?
#102 posted by yhe1 on 2019/12/06 08:41:02
Can a Scrag fight back against a Faust?
 Lame
#103 posted by madfox on 2019/12/06 11:08:13
You could have searched that out in the dev pack.
Faust will fight a wizard, mongrunt,enforcer, army and stratos but they won't respond.
Faust will fight a demon and ogre and they will fight back.
It looks as if most monsters become astrayed when attacked by Faust.
#104 posted by yhe1 on 2019/12/06 18:32:00
What about a quake dog? Will that fight the faust?
#105 posted by yhe1 on 2019/12/06 18:39:51
I know that the chasm spider also has this issue, where is that code from, a quake fiend?
#106 posted by madfox on 2019/12/06 18:50:12
When I started coding the Chasm entities I assumed they were alert enough to fight the player. The idea they would fight eachother wasn't in my viewpoint.
The spider code is the same as the rottweiler without the jump code. It will attack other chasm monsters.
#107 posted by yhe1 on 2019/12/06 18:51:42
Also check the mincer
#108 posted by yhe1 on 2019/12/06 18:53:03
Can you test chasm spider vs quake grunt?
#109 posted by madfox on 2019/12/06 20:14:50
The map starts with a grunt and a spider. It isn't that hard to check.
For clearance, quake sodier is monster_army, chasm soldier is monster_mongrunt.
#110 posted by yhe1 on 2019/12/06 20:16:29
I remember army becoming lame after being attacked by a chasm spider, is this true for you?
 Hmm...
#111 posted by Qmaster on 2019/12/06 21:17:57
I never had trouble with infighting since I used AD's classtype system, but the magic should happen within T_Damage...usually located in combat.qc or foght.qc depending on the mod's organization.
Lemme take a look at your dev2.09...be a bit
#112 posted by Qmaster on 2019/12/06 21:20:24
Bah! It's all pak'ed up. Do you have just the qc files available separately not in a Pak file? I can't open the pak on mobile.
I'm needing to check combat.qc, ai.qc, and monsters.qc and maybe fight.qc.
 @master
#113 posted by madfox on 2019/12/06 22:15:59
Here is the chasm_quakeqc_dev2.09.zip.
It's also in the included progs file in the pak.
And yes, my Army soldier has no attack against spider.
I changed the fight.qc with the same kind of attacks like the army soldier. So the cause must be there somewhere.
 A Few Things To Check
#114 posted by Qmaster on 2019/12/06 22:20:36
For infighting to work make sure that all the new monsters have monster flag FL_MONSTER.
This is the bit in T_Damage:
if ( ((self.flags & FL_MONSTER) && (attacker != world)) ) {
if ( ((self != attacker) && (attacker != self.enemy)) ) {
if ( ((self.classname != attacker.classname) || (self.classname == "monster_army")) ) {
if ( (self.enemy.classname == "player") ) {
self.oldenemy = self.enemy;
}
self.enemy = attacker;
FoundTarget ();
}
}
}
Check to make sure your enemies are actually different classnames.
So for instance for this entity
void monster_chasmthing = { .....
the classname is monster_chasmthing
Two monster_chasmthings won't fight unless you want them too in which case remove the check for if the classnames are the same.
#115 posted by Qmaster on 2019/12/06 22:21:26
Ah hang on, was typing that before you sent the link, let me look at your source.
 Hrmm
#116 posted by Qmaster on 2019/12/06 22:34:54
It all looks good so far. Not seeing anything obvious. FL_MONSTER is getting set in monsters.qc, you aren't doing any weird classname masking, it's a simple classname check too so nothing fancy there in T_Damage in combat.qc, and the enemies you've mentioned all have a walkmonster_start.
Not sure yet...maybe because in ai.qc inside the CheckAnyAttack function you only ever assign the basic CheckAttack? Try adding in your specialized CheckAttacks for the new monsters?
#117 posted by yhe1 on 2019/12/06 23:56:04
Currently, this issue affects three monsters, spider, mong, and faust. Still need to check whether alien warrior will fight back after being hit by mincer and fiend.
#118 posted by yhe1 on 2019/12/06 23:59:24
Part of the infighting code works, when a enforcer is hit by a mong, it will turn around and run towards the mong, but it will never fire it weapon. So I guess the more accurate question is: what causes the enforcer to just run in infighting?
#119 posted by yhe1 on 2019/12/07 00:00:34
All of the monsters that do not respond have ranged attacks, so maybe that has something to do with it as well.
#120 posted by yhe1 on 2019/12/07 04:40:18
Just checked, mincer has this bug also
|