With cordite in the air, splintered steel, shell casings and powder burns, there’s only one explanation...
Everything about Smokin' Guns releases

Moderators: Tequila, torhu

[FIXED] funky callvote bug

Postby Pardner » Sat Jan 09, 2010 6:27 am

Players are able to call custom messaged through the callvote system. I posted this here because I noticed this on a 1.0 server. It may be fixed in 1.1

357_shot0034_1.jpg

Image
Image
User avatar
Pardner
SG Team
 
Posts: 1786
Joined: Fri Nov 18, 2005 5:48 am
Location: MD, USA



Postby dowoshek » Sat Jan 09, 2010 10:24 am

Another annoying callvote bugs are:
1. You can't vote (from menu) for kicking a player with empty spaces or combinations of "^^" in his name. It can be done in console, but it's not always practicable.
2. Player can change his name during voting and he won't be kicked even if the vote will pass.

Is it already fixed in 1.1?
User avatar
dowoshek
Gunslinger
 
Posts: 134
Joined: Tue May 19, 2009 12:29 pm
Location: Poland



Postby Tequila » Sat Jan 09, 2010 12:16 pm

dowoshek wrote:Another annoying callvote bugs are:
1. You can't vote (from menu) for kicking a player with empty spaces or combinations of "^^" in his name. It can be done in console, but it's not always practicable.
2. Player can change his name during voting and he won't be kicked even if the vote will pass.

Is it already fixed in 1.1?
Yes 8)
User avatar
Tequila
SG Team
 
Posts: 1095
Joined: Thu Nov 15, 2007 11:33 pm
Location: Montpellier, France



Re: funky callvote bug

Postby Tequila » Sat Jan 09, 2010 6:09 pm

Pardner wrote:Players are able to call custom messaged through the callvote system. I posted this here because I noticed this on a 1.0 server. It may be fixed in 1.1

Thanks Pardner to remind us about this annoying problem.
It is now fixed in rev 481.
8)
User avatar
Tequila
SG Team
 
Posts: 1095
Joined: Thu Nov 15, 2007 11:33 pm
Location: Montpellier, France



Postby /dev/random » Sat Jan 09, 2010 7:23 pm

Iirc you can use 'clientkick #id', which avoids the renaming problem. But since /stats is disabled, I don't know how to obtain a client id clientside.
User avatar
/dev/random
Smokin' Amigo!
 
Posts: 410
Joined: Thu Jan 22, 2009 1:58 pm



Postby Pardner » Sat Jan 09, 2010 7:44 pm

/serverstatus
User avatar
Pardner
SG Team
 
Posts: 1786
Joined: Fri Nov 18, 2005 5:48 am
Location: MD, USA



Postby Tequila » Sat Jan 09, 2010 7:48 pm

/dev/random wrote:Iirc you can use 'clientkick #id', which avoids the renaming problem. But since /stats is disabled, I don't know how to obtain a client id clientside.

And don't worry, this has been addressed in 1.1. "kick" callvote is really now secured.
User avatar
Tequila
SG Team
 
Posts: 1095
Joined: Thu Nov 15, 2007 11:33 pm
Location: Montpellier, France



Postby moRtem » Sat Jan 09, 2010 10:04 pm

Tequila wrote:
dowoshek wrote:Another annoying callvote bugs are:
1. You can't vote (from menu) for kicking a player with empty spaces or combinations of "^^" in his name. It can be done in console, but it's not always practicable.
2. Player can change his name during voting and he won't be kicked even if the vote will pass.

Is it already fixed in 1.1?
Yes 8)


It's "fixed", but not really (afaik).

Most lamers simply rename as soon as the vote passes (or as soon as someone calls a vote to kick them).

A good solution would be, to have the menu initiating a /callvote clientkick PLAYER_ID

And next important thing would be to display the correct IDs /serverstatus (which are seen in /rcon status), since the displayed IDs in /serverstatus won't work with /callvote clientkick.

/serverstatus


NOT -- see the part i wrote above. (or /serverstatus got fixed in 1.1b3 already?)

And don't worry, this has been addressed in 1.1. "kick" callvote is really now secured.


So the above displayed issue is history with 1.1 already ?


/quit
User avatar
moRtem
Gunslinger
 
Posts: 284
Joined: Sun Mar 15, 2009 5:56 pm



Postby Pardner » Sat Jan 09, 2010 11:54 pm

moRtem wrote:It's "fixed", but not really (afaik).

Most lamers simply rename as soon as the vote passes (or as soon as someone calls a vote to kick them).

A good solution would be, to have the menu initiating a /callvote clientkick PLAYER_ID


I believe that the new callvotekick now kicks by client ID. Also, there is anti-renaming features in place to prevent the constant name changing.

moRtem wrote:
/serverstatus


NOT -- see the part i wrote above. (or /serverstatus got fixed in 1.1b3 already?)

No, I don't see the part you wrote above. This is the fisrt time you have posted in this thread :?

when I join a server and do a /serverstatus, I get the following:
Code: Select all
Players:
num: score: ping: name:
0    3      0     "ManWithNoName"
1    3      0     "Unknown"
2    3      0     "Tuco"
3    1      0     "TheMexican"
4    0      50    "=SG=Pardner"

So if I wanted to kick myself I would: /callvote clientkick 4. easy as that!
User avatar
Pardner
SG Team
 
Posts: 1786
Joined: Fri Nov 18, 2005 5:48 am
Location: MD, USA



Postby Tequila » Sun Jan 10, 2010 12:29 am

moRtem wrote:It's "fixed", but not really (afaik).

Most lamers simply rename as soon as the vote passes (or as soon as someone calls a vote to kick them).

Hum, it seems you're right. Thanks to remind me that.

moRtem wrote:A good solution would be, to have the menu initiating a /callvote clientkick PLAYER_ID

And next important thing would be to display the correct IDs /serverstatus (which are seen in /rcon status), since the displayed IDs in /serverstatus won't work with /callvote clientkick.

/serverstatus


NOT -- see the part i wrote above. (or /serverstatus got fixed in 1.1b3 already?)

Yes it is still has been fixed some time ago. Did you really check what /serverstatus returns now with 1.1b3 ? I agree it was wrong with SG 1.0.
User avatar
Tequila
SG Team
 
Posts: 1095
Joined: Thu Nov 15, 2007 11:33 pm
Location: Montpellier, France



Postby /dev/random » Sun Jan 10, 2010 1:13 am

Code: Select all
map: dm_alamo_tiny
num score ping name            lastmsg address               qport rate
--- ----- ---- --------------- ------- --------------------- ----- -----
  0     1    0 Tuco^7              11900 bot                       0 16384
  1     0    0 Tuco *^7            11900 bot                       0 16384
  2     0    0 Tuco **^7            2300 bot                       0 16384
  3     0    0 Tuco ***^7          11950 bot                       0 16384
  5     0    0 Me^7                    0 127.0.0.1             15514 99999
  6     1    0 Tuco *****^7        11950 bot                       0 16384
Code: Select all
Players:
num: score: ping: name:
0    1      0     "Tuco"
1    0      0     "Tuco *"
2    0      0     "Tuco **"
3    0      0     "Tuco ***"
4    0      0     "Me"
5    1      0     "Tuco *****"


Code: Select all
"version" is:"1.1b4_SVN481M 20100109 linux-i386^7"


/serverstatus can't print the real client ids since it does not know about them. It just counts from 0 upwards, which might match the real ids in some situations.

P.S.: It seems like /stats only prints out client ids in World of Padman, not in stock ioQuake.
User avatar
/dev/random
Smokin' Amigo!
 
Posts: 410
Joined: Thu Jan 22, 2009 1:58 pm



Postby Tequila » Sun Jan 10, 2010 1:50 am

Thanks for the proof /dev/random, it is now definitively clear.
So "callvote clientkick" won't be the solution. And as I just committed a fix to forbid player to rename when he is on a kick callvote, I think the kick callvote is definitively secure now.
Just for your information, with the fix, trying to rename when we are in a kick callvote is now set as a mandatory vote to be kicked... This is crude, but after one kick, people won't try to rename to avoid to be kicked.

And about "callvote clientkick", as the vote string itself isn't explicit: "clientkick X" where X is a number, I won't try to use/fix that.
User avatar
Tequila
SG Team
 
Posts: 1095
Joined: Thu Nov 15, 2007 11:33 pm
Location: Montpellier, France



Postby moRtem » Sun Jan 10, 2010 10:48 am

Hmm - Tequila.

I somehow got the feeling your "final" solution of fixing that problem is a bit dirty.

I don't want to say it's bad, but it feels pretty complicated and therefor might cause sideeffects which need to be addressed and fixed aswell.

E.g. nicks containing ^-signs ain't displayed correctly. (neither in callvote menu, nor in the initiated poll) -- it's still possible to kick them, but sometimes it's hard to find the correct player in menu, especially when more players are having those signs in their nickname.

In any other Q3-mod i played so far, a command like /serverstatus worked (in many other mods it is called /players). The most Mods didn't offer a "callvote"-section in menu too. And "callvote kick" would accept those IDs.


In my opinion the most elegant way to get a consistent callvote-kick-system would be to display the real IDs of the players in scoreboard. And link the callvote-kick in menu with the real IDs to initiate clientkick-votes.

Having a (working) command like /serverstatus would be a good solution too.


/quit
User avatar
moRtem
Gunslinger
 
Posts: 284
Joined: Sun Mar 15, 2009 5:56 pm



Postby Tequila » Sun Jan 10, 2010 12:19 pm

moRtem wrote:Hmm - Tequila.

I somehow got the feeling your "final" solution of fixing that problem is a bit dirty.

I don't want to say it's bad, but it feels pretty complicated and therefor might cause sideeffects which need to be addressed and fixed aswell.

E.g. nicks containing ^-signs ain't displayed correctly. (neither in callvote menu, nor in the initiated poll) -- it's still possible to kick them, but sometimes it's hard to find the correct player in menu, especially when more players are having those signs in their nickname.

In any other Q3-mod i played so far, a command like /serverstatus worked (in many other mods it is called /players). The most Mods didn't offer a "callvote"-section in menu too. And "callvote kick" would accept those IDs.


In my opinion the most elegant way to get a consistent callvote-kick-system would be to display the real IDs of the players in scoreboard. And link the callvote-kick in menu with the real IDs to initiate clientkick-votes.

Having a (working) command like /serverstatus would be a good solution too.


/quit

Even if this is dirty. You are still wrong about the expected result. I must admit I was wrong until few revision ago.

But clientkick command will definitively only be useful for server admins. And as they have rcon, they can access to "/rcon status" with the right client numbers.

Now I though a long time ago I managed to keep colorized name in the "Kick player" list but I made a f* mistake when committing. I saw a long time ago I was wrong, but didn't have time to check why it didn't work... That was a shame for me since v1.1b3... Btw, I still addressed that few revision ago as the following screenshot will show you:Image
User avatar
Tequila
SG Team
 
Posts: 1095
Joined: Thu Nov 15, 2007 11:33 pm
Location: Montpellier, France



Postby dowoshek » Sun Jan 10, 2010 1:42 pm

Most handy would be simply:
Code: Select all
/kick #id

with #id permanently visible in the scoreboard and without that long "petition" with
Code: Select all
/callvote please kick if you can mr/ms bad_player with client_numberN
:wink:

And of course the menu option too.
User avatar
dowoshek
Gunslinger
 
Posts: 134
Joined: Tue May 19, 2009 12:29 pm
Location: Poland



Next

Return to Release

Show Sidebar
Show Sidebar

User Control Panel