Fixed Homing Attack Bug

Status
Not open for further replies.

Shardvex

Member
I know the STJr probably isn't going to waste their time trying to fix this, but I thought I should let everyone know. I was playing Shadow.wad, and I was testing his homing attack. I went to ERZ2, and apparently, homing attack doesn't work when the gravity is flipped.
 
Last edited by a moderator:
Verified this with my Yattana character just now... homing attack homes in on enemies lower than the player even while gravflipped. For example, in a low-ceilinged room, with a crawla on the floor and the character on the ceiling, the character will home in downwards towards the crawla.
 
Homing

There are a couple of springs near the beginning of ERZ2, it wouldn't home in on them at all.
 
While the reverse gravity code is cool, of course there are going to be some oversights to it.

Code:
//
// P_LookForEnemies
// Looks for something you can hit - Used for homing attack
// Includes monitors and springs!
//
boolean P_LookForEnemies(player_t *player)
{
<...>
        if (mo->z > player->mo->z+MAXSTEPMOVE)
            continue; // Don't home upwards!
From what I can gather from your post, It sounds like MFE_VERTICALFLIP might need to be applied somewhere in this block of code. Without it, it appears you can only home into enemies whom of which are lower than you on your Z axis.
If anyone on the 'Dev team thinks I'm mistaken, please do say so.
 
Last edited:
I'm pretty sure you could home upwards in SA1 and 2 anyways, just not too high :<

And in Classic Sonic, Hyper Sonic could thok in whatever direction he fucking pleased, not that there was anything to home into because he obliterated them all.
 
I'm pretty sure you could home upwards in SA1 and 2 anyways, just not too high :<

And in Classic Sonic, Hyper Sonic could thok in whatever direction he fucking pleased, not that there was anything to home into because he obliterated them all.

This. Sonic could home in on enemies that were up above too.
 
While the reverse gravity code is cool, of course there are going to be some oversights to it.

Code:
//
// P_LookForEnemies
// Looks for something you can hit - Used for homing attack
// Includes monitors and springs!
//
boolean P_LookForEnemies(player_t *player)
{
<...>
        if (mo->z > player->mo->z+MAXSTEPMOVE)
            continue; // Don't home upwards!
From what I can gather from your post, It sounds like MFE_VERTICALFLIP might need to be applied somewhere in this block of code. Without it, it appears you can only home into enemies whom of which are lower than you on your Z axis.
If anyone on the 'Dev team thinks I'm mistaken, please do say so.

Actually, you can home in on robots higher than your Z axis, like the bots that skim the surface of the water. They are higher than the player. What are those bots called? I forget. Maybe not in 2.0, but I know you can in 1.09.
 
Last edited:
Flame did something useful, like fix a bug? No way!

(please don't hurt me Flame, I'm only joking)
 
Status
Not open for further replies.

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

Back
Top