"This is a kaillera server" ~ Agent 21 iXi

 

2/5/2023 - The manual below has been updated for EmuLinker X v3.2+. Typos were addressed, and new commands/features were added.

EmuLinker X v3.2 (2-5-2023) Manual

Server Access Level Privileges

Elevated Status (E)

Bypass Bot Triggers

Login When Server is Full

Join Playing Games

Gets Login Message

 

Admin Status (A)

Includes (E) and (M)  [can silence users indefinitely]

Ban Normal or (E) or (M) Users from Server

Kick Normal or (E) or (M) Users from Games

Close Games

Stealth Mode

Make Announcements

Join Games without being noticed (stealth)

Moderator Status (M)

Includes (E)

Silence Normal Users up to 15min

Kick Normal Users from Server

 

Super Admin Status (SA) | Server Co-Owner (CO) | Server Owner (SO)

Includes (E), (M), and (A)

Grant Temp Admin

Grant Temp Moderator

Grant Temp Elevated

Can use EmuLinker X Admin Client

Has Power over everyone…even (SA)’s

 

 

Game Input Delay

Unlike the original EmuLinker, EmuLinker X allows users to play on different delays or the same delay.  The server

default is different delays.  If Player 1 has a ping of 33 on a Excellent Connection and Player 2 has a ping of 67 on

a Excellent Connection, Player 1 will play at 1 (3 frame delay) and Player 2 will play at a 3 (7 frame delay). 

 

If you or your opponent want to play on the same delay, the game owner can toggle between delay modes with the

command: "/samedelay true" to play with the same delay and "/samedelay false" to play with different delays.  If the

game owner chooses to play with the same delay, both opponents will be playing with the delay of the user with the

worst ping.  In the previous example above, both players would be playing on 3 (7 frame delay).

 

If both you and your opponent fall in the same ping range, you have nothing to worry about (see below). 

 

Common Ping Ranges/Connection Type Thresholds

 

Lan Connection

Ping

0 to 16 ms

17 to 33 ms

34 to 49 ms

50 to 66 ms

Delay Value

1 (1 frame delay)

2 (2 frame delay)

3 (3 frame delay)

4 (4 frame delay)

 

Excellent Connection

Ping

0 to 33 ms

34 to 66 ms

67 to 99 ms

100 to 133 ms

Delay Value

1 (3 frame delay)

2 (5 frame delay)

3 (7 frame delay)

4 (9 frame delay)

 

Good Connection

Ping

0 to 49 ms

50 to 99 ms

100 to 150 ms

151 to 199 ms

Delay Value

1 (5 frame delay)

2 (8 frame delay)

3 (11 frame delay)

4 (14 frame delay)

 

Hacker Prevention

  1. Username Forging (change username while logged in)
  2. Server Hammering (hogs up all ports)
  3. Username Length > 31 (crashes all traditional kaillera clients)
  4. Gamename Length >128 (crashes all traditional kaillera clients)
  5. PM Length > 320 (crashes all traditional kaillera clients)
  6. Gameroom Join Spamming
  7. Server Join Spamming
  8. Username Duplication
  9. Main and Game Chat Message Restrictions (Spam Prevention)

 

Server Fixes

  1. Input Ghosting (buttons seem to press on their own)
  2. White Screen Login (about 95% better)
  3. Casting Error when gameID becomes larger than 0x7FFF (crashes server)
  4. Connection break when server get last message ID 0xFFFF from client
  5. Unlikely but possible connection break due to loss or disordered packets
  6. EmuLinker X Master Server List and Waiting Games List (Back-end components being worked on in a separate project)


 

EmuLinker X Chat/Gameroom Commands

  

Command

Function

General Commands

/help

Brings up all available commands, their description, and syntax.

/finduser <username>

Allows a user to find what game another user is in and displays their User ID.

/me <message>

Allows the user to send a message via alternate <Server> message.

/ignore <User ID> /unignore ; <User ID>

Allows a user to ignore or unignore another user.

/msg <User ID> <message>

Allows a user to send a private message to another user in the server.

/msgoff

Turn Private messages off.

/msgon

Turn Private messages on.

/myip

Allows a user to see what his/her IP address is.

/version

Allows a user to find what version of the server he/she is currently in.

/alivecheck

Allows the user to request a data packet from the server to verify that he/she is still connected.

/rules

Displays the server rules to yourself in the main chat (no one else can see it but you).

Moderator Exclusive Commands

/kick <userID>

Allows a moderator to kick another user of equal or less status from the server.

/silence <minutes from 0-15>

Allows a moderator to silence another user of less status for 0-15 minutes (moderators cannot mute each other).

Admin Exclusive Commands*

/ban <minutes>

Allows an admin to ban a user of less status for a specified amount of minutes (30000 is the max limit).

/silence <minutes>

Allows an admin to silence a user of less status for a specified amount of minutes (30000 is the max limit).

/closegame <Game ID>

Allows an admin to close any game that has been hosted.

/announce <message> ; /announceall <message> ; /announcegame <Game ID> <message>

Allows an admin to announce messages via the <Server> to chat, every game and chat, or to one a specified game via Game ID.

/findgame <Game Name>

Allows an admin to find the Game ID of any hosted game.

/stealthon ; /stealthoff

Allows an admin to join a game unnoticed.

/clear <User IP>

Allows an admin to clear banning, silencing, etc. done by himself/herself or another admin.

/triviaon

Starts the server's Trivia bot.

/triviaoff

Stops the server's Trivia bot.

/triviapause

Pauses the server's Trivia bot.

/triviaresume

Resumes the server's Trivia bot after being paused.

/triviasave

Save Trivia Bot's scores.

/triviatime <seconds>

Change the Trivia Bot's question delay in seconds.

/triviascores

Show the top 3 scores from the Trivia Bot.

/triviaupdate <Old IP Address> <New IP Address>

Updates a user's IP addrees for their saved score for the Trivia Bot.

/triviawin

Show the winner from the Trivia Bot

/unscrambleon

Starts the server's Unscramble bot.

/unscrambleoff

Stops the server's Unscramble bot.

/unscramblepause

Pauses the server's Unscramble bot.

/unscrambleresume

Resumes the server's Unscramble bot after being paused.

/unscramblesave

Save Unscramble Bot's scores.

/unscramble <seconds>

Change the Unscramble Bot's question delay in seconds.

/unscramblescores

Show the top 3 scores from the Unscramble Bot.

/unscramblewin

Show the winner from the Unscramble Bot

Super Admin Exclusive Commands**

/tempelevated <User ID> <minutes>

Allows a super admin to grant temporary elevated status to another user for a specified number of minutes.

/tempmod <User ID> <minutes>

Allows a super admin to grant temporary moderator status to another user for a specified number of minutes.

/tempadmin <User ID> <minutes>

Allows a super admin to grant temporary admin status to another user for a specified number of minutes.

Gameroom Owner Commands

/detectautofire <1 – 5>

Allows the host of a game to set autofire sensitivity.

/maxusers <# of users>

Allows the host of a game to set the maximum amount of users allowed in the game at one time.

/maxping <#>

Allows the host of a game to set the highest ping allowed to enter the game.

/samedelay <true | false>

Allows the host to set same game delay.

/start <#>

Start the game.

/startn <#>

Start the game when a certain amount of users join.

/mute <User ID>

Mutes the specified user in your game only.

/unmute <User ID>

Unmutes the specified user in your game only.

/muteall

Mutes all users in your game only.

/unmuteall

Unmutes all users in your game only.

/p2pon ; /p2poff

Toggle to ignore ALL server activity during gamplay (Main chat and server messages will be disabled).

/setemu

Restricts the gameroom to the emulator the host is using.

/setconn

Restricts the gameroom to the connection type the host is using.

/lagstat

Shows statistics of lag spikes from each user in the gameroom.

/lagreset

Resets statistics of lag spikes from each user in the gameroom.

/swap <####>

Swaps the keys for each user in the gameroom.

*Admin can mute/unmute people when in a game hosted by someone else.

** Super Admin and above can do all gameroom commands when in a game hosted by someone else.