Conan and the Whitelist Dilema, a FunCom Story

Hey,

I created my account here just to launch what was (from what i’ve ‘searched’) a many times discussed without a precise answer or explanation.

The ‘whitelist’ feature, while it seems ‘basic’, how hard is it for FunCom dev teams to implement a mechanism that will allow ONLY whitelisted persons?
I know that people will say “use passwords”, it’s true, it would ‘kinda work’, however, to run a proper RP community, to be able to actually filter logged player exclusively by an steamID64 makes more sense for numerous reasons.

I believe that if we set and WL to an ID, the server will give currently ‘priority’ for those that are on the WL to login kicking anyone not on the WL, however, if this is the ‘feature’, it doesn’t make much sense.
Another alternative i tried to apply was to use a software based firewall system that would only allow the allowed clients to login to the server, however, maintenance and the implementation itself is too problematic.

Could we please launch a discussion on this subject and perhaps add it to the proper documentation of Conan?

I don’t understand the issue. If you enable whitelisting, people whose IDs are not whitelisted are not going to be able to log in at all. Or do you mean, you want to allow new players to join without restrictions but to give priority to the whitelisted?

Hi Narelle,

What i’m trying to achieve is to have ACCESS ONLY with WHITELIST.

Example:

  • Setting up a list of Steam64ID on the server will allow ONLY those in the list to login;
  1. Do i need to leave the server WITHOUT password?
  2. If it’s without password but with an existing list of steamIDs will the server BLOCK any non-known steamID64?
  3. Any other option/setting i need to activate?

Ok, now I understand a bit better what you need:

  1. In ServerSettings.ini: Remove the password (you don’t need it anymore) and enable the whitelist instead.
    EnableWhitelist=True
    ServerPassword=

  2. In Whitelist.txt: Add the allowed Steam64IDs

Only these Steam64IDs will be allowed to join the server. The rest will get a notification when trying to join that the server is whitelisted but they won’t be able to connect.

EDIT: I agree that whitelisting is much better than a password if you are trying to keep a curated playerbase.

EDIT2: The whitelist.txt uses the Steam64ID not the displayed name.

7 Likes

YEah, plus it takes just one person to let the password out, and then you have possible trolls joining that literally only want to ruin privates. They are there for some odd reason.

3 Likes

Yeah I see where you’re coming from. For :man_shrugging: reasons, a person has to be logged on, non-Whitelisted, before they can be Whitelisted. And I do know where you’re coming from with SteamID64, and completely agree with you. This way, when a player changes their analog Steam ID (the one we all see as Barnes or Crash or whatever), they’re Whitelisted properly.

Good point, should make it a suggestion.

1 Like

I dont know whether I need to specify that but the WhiteList.txt uses the number associated with your account not the name and you don’t need to log in to be whitelisted, at least not for the pc users. Most servers that use whitelisting require people to join their Discord and to provide their Steam64ID in order to access the server.

3 Likes

If you need help finding a Steam64ID, there are a few tools around that can aid you, including this site:
https://steamidfinder.com/

Alternatively, log in the steam app - view - settings - interface - display steam url bar when available. Then when you click to view your profile you will see the number instead of the name in the top left corner:

The Discord bit I did not know. I think I should look into that for my own servers going forward.

You should specify whatever and wherever necessary so that this subject is elucidated. I know the OP was a bit mis-received, and you’re helping clear things up. :+1:

I recently had occasion to help another player understand the importance of Steam64 ID in particular. In this case, I pointed the user to the following site:

1 Like

@Barnes I guess we have now covered it all :eyes:

Narelle, i’m going to try that setting: EnableWhitelist=True, thank you.

As per SteamID, i did my own php script on my website that auth’s the users in Steam, make them fill a small form (for RP purposes) and then they are put on ‘wait list’ for an RP Admin to approve.
On approval, i have an process that automatically inputs that steamID on the game WL. :wink:

I’m going to try and follow up with you guys.

3 Likes

Confirmed.
It works perfectly. I note a little bit more time when players try to enter but, otherwise, PERFECT.

On the sense of ‘share’ what i’ve done also help others, i have created a small app on my Laravel site, players are requested to enter a small form that is stored on my server DB. (people sometimes uses google forms for that but i wanted to have the control done by my webserver)

Once this applications are inserted, my RP Community Manager will check and review, on pressing the button ‘approval’, it uses xPaw\Sourcequery to issue the rcon command, something like this:

public function addWhiteList(){
        define( 'SQ_SERVER_ADDR', '192.168.1.21' );
        define( 'SQ_SERVER_PORT', 27110 );
        define( 'SQ_TIMEOUT',     1 );
        define( 'SQ_ENGINE',      SourceQuery::SOURCE );

        $Query = new SourceQuery();

        try{
            $Query->Connect( SQ_SERVER_ADDR, SQ_SERVER_PORT, SQ_TIMEOUT, SQ_ENGINE );
            $Query->SetRconPassword( '1234' );
            $output = $Query->Rcon('whitelistplayer '.Auth()->user()->steamID64);

            //dd($output);

            Whitelist::create([
                    'personaname' => Auth()->user()->personaname,
                    'servergame' => 'conanRP',
                    'status' => 1,
                    'steamID64' => Auth()->user()->steamID64
                ]);
            return redirect('/');

        }catch ( Exception $e)
        {
            echo $e->getMessage( );
        }
    }

This is simply an example, i’m using internal IPs to control my server of Conan as i don’t want ‘rcon’ open.

On my example, i’m also using the ‘Auth()->user()->steamID64’ as it considers the person that logged on my app, in a production case we should use the stored on DB steamID64.

Hope it help others that might need.

Thank you guys,

3 Likes

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.