Proposal: Remove glorified CHEATS


#21

Yes, it suggests that I did something wrong… Getting 0.0 should be pretty rare (even rarer than getting 1.0).

I don’t even know why I changed it. Probably selected a wrong number when lowering the dretch damage. Dretch definitely needs to be adapted to grazing hits the most because of its automatic bite which you can’t control. For now I simply increased its rate of fire and lowered the damage.


#22

try setting the float precision of your prints to 0.00 or maybe even 0.000, perhaps the problem is rounding of the displayed results.


#23

Nevermind, it’s probably because of the attack width (where you can miss the bbox completely and still hit). Minimum grazing hit damage could use some increase if this becomes a problem.


#24

@lamefun , your latest movement fixes are on the GrangerLab server now. The spitfire seems better, however the jet movement seems jerky. Here is the current PM_JetPackMove() function for swirl:

/*
===================
PM_JetPackMove

Only with the jetpack
===================
*/
static void PM_JetPackMove( void )
{
  int     i;
  vec3_t  wishvel;
  float   wishspeed;
  vec3_t  wishdir;
  float   scale;

  //normal slowdown
  PM_Friction( );

  scale = PM_CmdScale( &pm->cmd, qfalse );

  // user intentions
  for( i = 0; i < 2; i++ )
    wishvel[ i ] = scale * pml.forward[ i ] * pm->cmd.forwardmove + scale * pml.right[ i ] * pm->cmd.rightmove;

  if( pm->cmd.upmove > 0.0f )
  {
    vec3_t thrustDir = { 0.0f, 0.0f, 1.0f };

    if( pm->ps->viewangles[ PITCH ] > 0.0f )
      VectorCopy( pml.up, thrustDir ) ;

    // give an initial vertical boost when first activating the jet
    if( pm->ps->persistant[PERS_JUMPTIME] <= JETPACK_ACT_BOOST_TIME )
      VectorMA( wishvel, JETPACK_ACT_BOOST_SPEED, thrustDir, wishvel );
    else
      VectorMA( wishvel, JETPACK_FLOAT_SPEED, thrustDir, wishvel );
  }
  else if( pm->cmd.upmove < 0.0f )
    wishvel[ 2 ] = -JETPACK_SINK_SPEED;
  else
    wishvel[ 2 ] = 0.0f;

  // apply the appropirate amount of gravity if the upward velocity is greater
  // than the max upward jet velocity.
  if( pm->ps->velocity[ 2 ] > wishvel[ 2 ] )
    pm->ps->velocity[ 2 ] -= MIN( pm->ps->gravity * pml.frametime, pm->ps->velocity[ 2 ] - wishvel[ 2 ] );

  VectorCopy( wishvel, wishdir );
  wishspeed = VectorNormalize( wishdir );

  PM_WallCoast( wishdir, WALLCOAST_3D );
  PM_Accelerate( wishdir, wishspeed, pm_flyaccelerate );

  PM_StepSlideMove( qfalse, qfalse );

  if( !( pm->ps->persistant[ PERS_STATE ] & PS_NONSEGMODEL ) )
    PM_ContinueLegsAnim( LEGS_LAND );
  else
    PM_ContinueLegsAnim( NSPA_LAND );

  // disable bunny hop
  pm->ps->pm_flags &= ~PMF_ALL_HOP_FLAGS;
}

#25

After 8 hours of debugging, I managed to fix the jerking jet problem with 2 line changes, and I updated the servers with this fix so that the jet should be playable again. Here is the commit:

Turns out the current implementation of PM_ComputeWallSpeedFactor() doesn’t mix well with the jet.


#26

There has been an issue with the wall coasting that has had a negative impact on the aliens specifically from what i observed. Other players and buildables were treated like walls, and they would be “slippery” when attacking them using melee. So what I did in an update last night is to have wall coasting ignore other players and buildables. (something to consider for another update is have a MIN_WALK_NORMAL customized per class, as I have noticed that the mara has had difficulties passing by various doors/entrances by sliding).

In that same update I made it so that the jump acceleration only applies to jumping forward, which should help address the back peddling issue a bit, and addresses the super slow luci shot.