If a player is a goon, and presses to pounce, then, before releasing, opens the console, they pounce at an unbelievable rate. This coaxes incredible speed out of goons and is being exploited.
This bug is probably also responsible for lucifer cannon spam: charge up to the minimum then bring down the console (don't release fire) and you'll fire automatically.
For the goon bringing down the console while charged (keeping secondary fire held throughout) will make you pounce but it doesn't appear to do any damage.
Created attachment 950[details]
client engine toggleconsole stop key down event
When the client toggles their console all the state of all down keys should be forgotten to prevent cases when a key is apperantly up and down at the same time.
patch is against 755 but applies cleanly to 802
Created attachment 951[details]
server side fixs for pounce/lcannon spamming
Reset STAT_MISC (pounce charge) once a pounce has been released and force weaponTime after the lucifer cannon has been fired.
Patch is for 755, but applies cleanly to 802.
Created attachment 958[details]
server side fixs for pounce/lcannon spamming
Uses correct weaponTime setting depending on if it was a primary or secondary luci fire.
Created attachment 972[details]
goon pounce spam fix
uses stats[ STAT_STATE ] & SS_CHARGING to track if a pounce is in progress and will not let a new pounce start until the previous one has finished regardless of keys.
Created attachment 981[details]
svn802 pounce bug
this implements a new struct "pmext" to both pmove_t and gclient_t that works essentially the same as playerstate, but does not get transmitted over the network. It can be used to keep state between the Pmove code and the rest of the game code.
Currently it only has one element "pouncePayload" which was moved from gclient_t. This frees up stats[ STAT_MISC ] for use in Pmove to fix the pounce bug.
Created attachment 982[details]
svn802 pounce bug
ugh, forgot to reset pouncePayload properly. this should be the last patch for this.
Comment 10Roman "kevlarman" Tetelman
2006-11-16 02:19:11 EST
(In reply to comment #9)
> Created an attachment (id=982) [details]
> svn802 pounce bug
>
> ugh, forgot to reset pouncePayload properly. this should be the last patch for
> this.
>
not quite, the console was fixed, but chat/team chat/target chat will still trigger this bug.
(In reply to comment #10)
> not quite, the console was fixed, but chat/team chat/target chat will still
> trigger this bug.
As I understand it, the actual exploitable bug is fixed already. The problem remaining is really just cosmetic. I've addressed this in r992. Reopen if there are still problems.
Created attachment 950 [details] client engine toggleconsole stop key down event When the client toggles their console all the state of all down keys should be forgotten to prevent cases when a key is apperantly up and down at the same time. patch is against 755 but applies cleanly to 802
Created attachment 951 [details] server side fixs for pounce/lcannon spamming Reset STAT_MISC (pounce charge) once a pounce has been released and force weaponTime after the lucifer cannon has been fired. Patch is for 755, but applies cleanly to 802.
Created attachment 958 [details] server side fixs for pounce/lcannon spamming Uses correct weaponTime setting depending on if it was a primary or secondary luci fire.
Created attachment 971 [details] lucifer cannon spam fix same fix from last patch minus the goon pounce stuff
Created attachment 972 [details] goon pounce spam fix uses stats[ STAT_STATE ] & SS_CHARGING to track if a pounce is in progress and will not let a new pounce start until the previous one has finished regardless of keys.
Created attachment 981 [details] svn802 pounce bug this implements a new struct "pmext" to both pmove_t and gclient_t that works essentially the same as playerstate, but does not get transmitted over the network. It can be used to keep state between the Pmove code and the rest of the game code. Currently it only has one element "pouncePayload" which was moved from gclient_t. This frees up stats[ STAT_MISC ] for use in Pmove to fix the pounce bug.
Created attachment 982 [details] svn802 pounce bug ugh, forgot to reset pouncePayload properly. this should be the last patch for this.