Page MenuHomeSchine - Phabricator

Starmade | Chat kick and ban options
Resolved, needs quality check / confirm fix, NormalPublic

Description

#1
The Ban option isn't working like most would expect it to work, it only adds you to the ban list and does nothing else:

It should:

Also kick you.
At this moment, because you don't get kicked out immediately, you can ban him for a second time and this will remove him from the ban list. This would not be possible if a ban added you to the ban list and kicked you out immediately.

#2
SmilingDemon
my suggestion would be to have the 3 ban versions have mark able boxes ... and if you kick someone those options get applied as bans and save to the files

Details

Commits
Restricted Diffusion Commit
Restricted Diffusion Commit
Restricted Diffusion Commit
Task Type
Bug
Testing Results
Affected Gamemode(s)
Multiplayer
Reproducible
Yes
Last tested (version)
0.19295 (Dev)
Category
Ingame GUI/HUD
First occurrence (version)
0.1912
Hardware/Software/System
OS-Specific
No
Hardware-Specific
No
Video Card Vendor
uncertain
Serverconfig (server.cfg)
<replace this line with the file content>
Clientconfig (settings.cfg)
<replace this line with the file content>

Event Timeline

SmilingDemon updated the task description. (Show Details)Jun 18 2015, 3:09 PM
SmilingDemon changed Category from none/unspecified to Ingame GUI/HUD.
SmilingDemon changed Affected Gamemode(s) from none/unspecified to Multiplayer.
SmilingDemon set First occurrence (version) to 0.1912.
SmilingDemon changed Reproducible from uncertain to Yes.
SmilingDemon set Last tested (version) to 0.19274 (Dev).
SmilingDemon edited a custom field.
SmilingDemon edited Serverconfig (server.cfg). (Show Details)
SmilingDemon edited Clientconfig (settings.cfg). (Show Details)
SmilingDemon added a subscriber: SmilingDemon.
SmilingDemon created this task.
SmilingDemon changed the task status from Open to In Queue (Game).
SmilingDemon raised the priority of this task from to Low.
Restricted Application edited projects, added Game Development; removed Issue Navigation. · View Herald TranscriptJun 18 2015, 3:09 PM
Restricted Application added a commit: Restricted Diffusion Commit.Jun 21 2015, 5:01 PM
Restricted Application changed the task status from In Queue (Game) to Resolved by committing Restricted Diffusion Commit.
Restricted Application edited projects, added Quality Assurance; removed Game Development. · View Herald TranscriptJun 21 2015, 5:01 PM
SmilingDemon set Task Type to Bug.Jun 30 2015, 3:39 PM
SmilingDemon changed Last tested (version) from 0.19274 (Dev) to 0.19295 (Dev).
SmilingDemon set OS-Specific to No.
SmilingDemon set Hardware-Specific to No.
SmilingDemon set Video Card Vendor to uncertain.
SmilingDemon changed the task status from Resolved to In Queue (Game).Jun 30 2015, 4:10 PM

yeah still not what someone would expect

  • the ban name button works (puts name into blacklist and kicks the player)
  • kick works as always

following is a list of the performed test

Command                   Result                    Kick?
ban_ip                    bans IP                   no (bug!)
ban_ip_by_playername      bans IP (from name)       untested
ban                       bans name                 yes (freezes fullscreen game with BG popup)
ban_no_kick               bans name                 no
ban_account               bans account              no (bug!)
ban_reason                bans name                 untested
ban_account_by_playername bans account (from name)  untested

unban_ip                  unbans ip
unban_name                unbans name
unban_account             MISSING COMMAND!
Restricted Application edited projects, added Game Development; removed Quality Assurance. · View Herald TranscriptJun 30 2015, 4:10 PM
SmilingDemon removed SmilingDemon as the assignee of this task.Jun 30 2015, 6:06 PM
SmilingDemon raised the priority of this task from Low to Normal.Jul 4 2015, 2:03 PM

Adding another problem here with similar behaviour to those of the ban commands

/player_unprotect Playername
is not unprotecting the player while the server is running, and is also not removing the player from the protected.txt file

/player_protect Playername Accountname
is creating a new line with "Playername;Accountname" in protected.txt, but without removing a already existing entry with the same Playername

/unban_account
totally missing command

rest of ban commands as listed above.

Fix incoming, though there's a few things to note:

Players protections are only checked on login, so unprotecting is intended to have no effect. Though I have fixed the output to protected.txt

I'm thinking the issue with player_protect is linked to the fix mentioned above, because I'm unable to recreate it now.

Restricted Application added a commit: Restricted Diffusion Commit.Jul 17 2015, 5:30 AM
Restricted Application changed the task status from In Queue (Game) to Resolved by committing Restricted Diffusion Commit.
Restricted Application edited projects, added Quality Assurance; removed Game Development. · View Herald TranscriptJul 17 2015, 5:30 AM
Restricted Application added a subscriber: Megacrafter127. · View Herald TranscriptJul 21 2015, 3:22 PM
AndyP added a subscriber: AndyP.Jul 21 2015, 3:23 PM
AndyP claimed this task.

Need someone to test this properly.

@SmilingDemon
Shall we retest that again in the next days?

AndyP changed the task status from Resolved to In Queue (Game).EditedAug 4 2015, 5:58 PM
Menu Click
Button label              Result                                                Kick?
kick                      kick                                                  yes, freezes fullscreen game with BG popup (Bug!)
ban_name                  bans name                                             yes, freezes fullscreen game with BG popup (Bug!)
ban_account               nothing (States error: user not uplinked,             yes, but only the clicked one! (Bug!)
                          although uplink is forced on the server)
ban_ip                    error not an ip                                       yes, but only the clicked one! (Bug!)
Ingame-Command
Command                   Result                                                Kick?
ban_ip                    bans IP                                               no (bug!)
ban_ip_by_playername      bans IP (from name)                                   yes, but only the supplied name (bug!)
ban_no_kick               bans name                                             no
ban_account               bans account                                          yes, but only first user with account (bug!)
ban_account_by_playername bans account (from name)                              yes, but only first user with account (bug!)
ban_reason                bans name                                             yes, freezes fullscreen game with BG popup (bug!)
ban                       bans name                                             yes, freezes fullscreen game with BG popup (bug!)
Unban options:
Command                   Result 
unban_ip                  unbans ip
unban_name                unbans name
unban_account             unbans account

Ban_IP Button Result

Confirmed fixes:

  • bans are now written to file if successful
  • unban options work reliable (aren't strict on caps, so user friendly!)

Leftover bug-summary:

  • playerlist ban account, does not ban (see error above), only kick
  • playerlist ban IP, does not ban (see error above), only kick
  • /ban_account only matches first hit (should match ALL players)
  • /ban_ip does not kick players
  • Fullscreen games still freeze on kick, and popup the "reason" (even if its "no reason" in the background)
Restricted Application edited projects, added Game Development; removed Quality Assurance. · View Herald TranscriptAug 4 2015, 5:58 PM

I also recommend making no_kick a parameter for ban commands, and (if possible) have the reason be an optional parameter at the end.

AndyP added a comment.EditedAug 6 2015, 12:41 AM

possibly alter the command completely?

combine in two:
/ban <bantype> <kick> <reftype> <name>
/ban_reason <bantype> <kick> <reftype> <name> <reason>

ban/reftype:
a = account
n = name
i = ip

kick would be true/false

reason has to be added, even if its "no reason" by default.

Examples:
/ban n true n Test2 Would be: ban and kick the user with name Test2
/ban a false n Test2 Would be: ban the account of the user with name Test2 but do not kick
/ban n true i 192.168.2.1 Would be: ban and kick the names of all users connecting from 192.168.2.1

AndyP shifted this object from the S1 Public space to the S3 Starmade space.Aug 11 2015, 11:08 PM
AndyP changed the edit policy from "Starmade (Project)" to "All Users".
Restricted Application added a commit: Restricted Diffusion Commit.Sep 1 2015, 8:50 PM
Restricted Application changed the task status from In Queue (Game) to Resolved by committing Restricted Diffusion Commit.
Restricted Application edited projects, added Quality Assurance; removed Game Development. · View Herald TranscriptSep 1 2015, 8:50 PM

Okay, I've added 'optional' command parameters in the latest commit. Along with fixing the issues listed 3 comments above.

Here's the simpler, combined ban command:
"/ban (playername) (kick) [reason] [time]"

I decided to not implement the command recommended above, despite being more compact, it is hard to explain with the current command help system, and new (inexperienced) admins should not need to read a wiki when there is a player that might need banned swiftly.

AndyP added a comment.Sep 3 2015, 6:46 PM

sounds great. =)

Restricted Application added a project: GUI/HUD. · View Herald TranscriptMar 10 2017, 6:33 PM
AndyP moved this task from Backlog / Unclassed to Alpha on the GUI/HUD board.Jul 20 2017, 11:07 PM