Thanks for sharing the fix

On Tue, Nov 8, 2011 at 6:02 PM, Psy_Commando <psycomma...@gmail.com> wrote:

> Alright, I found the problem. The main source is in
> "server/player_command.cpp"
> in the "void CPlayerMove::FinishMove( CBasePlayer *player, CUserCmd *ucmd,
> CMoveData *move )" function :
>
>     float pitch = move->m_vecAngles[ PITCH ];
>>     if ( pitch > 180.0f )
>>     {
>>         pitch -= 360.0f;
>>     }
>>     pitch = clamp( pitch, -90, 90 );
>>
>>     move->m_vecAngles[ PITCH ] = pitch;
>>
>>     player->SetBodyPitch( pitch );
>>
>>     player->SetLocalAngles( move->m_vecAngles ); // <- This is the problem
>>
>
>
> I made the same lazy fix they did in the hl2mp code :
>
> void CHL2MP_Player::PostThink( void )
>> {
>>    ...
>>     QAngle angles = GetLocalAngles();
>>     angles[PITCH] = 0;
>>     SetLocalAngles( angles );
>>    ...
>> }
>>
>
> And in addition I override the "FinishMove" method in my
> "server/asw_playermove.cpp" file, and copied the old code from
> "CPlayerMove::FinishMove" and removed the problematic line.
>
> //PsyCommando : Rewrote this here to remove the bit of code that made the
>> player hitboxes move with the camera pitch !!!;
>> void CASW_PlayerMove::FinishMove( CBasePlayer *player, CUserCmd *ucmd,
>> CMoveData *move )
>> {
>>     VPROF( "CPlayerMove::FinishMove" );
>>
>>     player->m_flMaxspeed            = move->m_flClientMaxSpeed;
>>     player->SetAbsOrigin( move->GetAbsOrigin() );
>>     player->SetAbsVelocity( move->m_vecVelocity );
>>     player->SetPreviouslyPredictedOrigin( move->GetAbsOrigin() );
>>
>>     player->m_Local.m_nOldButtons            = move->m_nButtons;
>>
>>     // Convert final pitch to body pitch
>>     float pitch = move->m_vecAngles[ PITCH ];
>>     if ( pitch > 180.0f )
>>     {
>>         pitch -= 360.0f;
>>     }
>>     pitch = clamp( pitch, -90, 90 );
>>
>>     move->m_vecAngles[ PITCH ] = pitch;
>>
>>     player->SetBodyPitch( pitch );
>>
>>     //player->SetLocalAngles( move->m_vecAngles ); //<- this was the
>> source of headaches - psycommando
>>
>>     // The class had better not have changed during the move!!
>>     if ( player->m_hConstraintEntity )
>>         Assert( move->m_vecConstraintCenter ==
>> player->m_hConstraintEntity.Get()->GetAbsOrigin() );
>>     else
>>         Assert( move->m_vecConstraintCenter ==
>> player->m_vecConstraintCenter );
>>     Assert( move->m_flConstraintRadius == player->m_flConstraintRadius );
>>     Assert( move->m_flConstraintWidth == player->m_flConstraintWidth );
>>     Assert( move->m_flConstraintSpeedFactor ==
>> player->m_flConstraintSpeedFactor );
>>     Assert( move->m_bConstraintPastRadius ==
>> player->m_bConstraintPastRadius );
>> }
>>
>
>
>
> On Mon, Nov 7, 2011 at 4:17 PM, Psy_Commando <psycomma...@gmail.com>wrote:
>
>> Thanks, but I was pretty much expecting that the viewangles were affected
>> to the player's entity somewhere. I'm not sure where to look though.
>>
>> I noticed that setting third person platformer to 1 stops the problem,
>> until you set it back to 0.
>>
>>
>> On Mon, Nov 7, 2011 at 5:17 AM, Saul Rennison <saul.renni...@gmail.com>wrote:
>>
>>> Looks like your hitboxes are using pitch from m_angViewAngles, or that
>>> you have a SetAbsAngles(m_angViewAngles) somewhere.
>>>
>>>
>>> Kind regards,
>>> *Saul Rennison*
>>>
>>>
>>> On 7 November 2011 02:06, Psy_Commando <psycomma...@gmail.com> wrote:
>>>
>>>> Hello, I've been looking around for info on why it does this :
>>>> http://www.youtube.com/watch?v=yP3ZGKfCehQ
>>>>
>>>> Basically the hitboxes are moving with the camera on the y axis and the
>>>> hitboxes get out of sync when I strafe.
>>>> I use a modified Alien Swarm player (not the marine npc), with the
>>>> hl2mp animstates.
>>>>
>>>> Anybody, has an idea where I should look, or how to fix this ?
>>>>
>>>> _______________________________________________
>>>> To unsubscribe, edit your list preferences, or view the list archives,
>>>> please visit:
>>>> http://list.valvesoftware.com/mailman/listinfo/hlcoders
>>>>
>>>>
>>>>
>>>
>>> _______________________________________________
>>> To unsubscribe, edit your list preferences, or view the list archives,
>>> please visit:
>>> http://list.valvesoftware.com/mailman/listinfo/hlcoders
>>>
>>>
>>>
>>
>
> _______________________________________________
> To unsubscribe, edit your list preferences, or view the list archives,
> please visit:
> http://list.valvesoftware.com/mailman/listinfo/hlcoders
>
>
>
_______________________________________________
To unsubscribe, edit your list preferences, or view the list archives, please 
visit:
http://list.valvesoftware.com/mailman/listinfo/hlcoders

Reply via email to