Skip to content

Security

Luiz Filho edited this page May 7, 2026 · 1 revision

Security

← Home | Game Modes


Protection Mechanisms

Mechanism Description
TTL (Time-To-Live) Disconnects clients that do not respond within the configured time
ANTIBOTTTL Specific TTL targeting bots that skip the validation packet
IP Rules Allow/deny rules by IP and CIDR with per-IP connection limits
DDoS Filter Rate limiting per IP within a configurable time window
MAC Ban MAC address banning via database (CmdInsertBlockMac)
IP Ban IP banning via database (CmdInsertBlockIP)
GameGuard Auth Optional GameGuard authentication (GAMEGUARDAUTH=1)
CapabilityFlags Per-player permission flags stored in the database

TTL & Anti-Bot

Set in [OPTION] of each server.ini:

TTL        = 60000   ; Disconnect if no response in 60s (0 = disabled)
ANTIBOTTTL = 10000   ; Extra timeout to detect bots (10s)
  • TTL applies to all clients.
  • ANTIBOTTTL specifically targets connections that never send the required validation packet — a pattern typical of automated bots.

IP Rules & DDoS Filter

Configured in config/socket_config.ini:

[IPRULES]
enable_ip_rules         = 1
limit_connection_per_ip = 2      ; Max connections per IP
order                   = deny,allow
allow                   = 127.0.0.1
allow                   = all
deny                    = 192.168.0.1/24

[DDOS]
ddos_interval           = 3000   ; Time window in ms
ddos_count              = 5      ; Max connections allowed in the window
ddos_autoreset          = 3000   ; Reset time in ms

Rules are evaluated in the order defined by order. Use CIDR notation (x.x.x.x/mask) to block ranges.


Banning Players

IP Ban

Execute via database or GM command:

EXEC CmdInsertBlockIP @ip = '192.168.1.1'

MAC Ban

EXEC CmdInsertBlockMac @mac = 'AA:BB:CC:DD:EE:FF'

Access Control (ACCESSFLAG)

In LoginServer/server.ini:

ACCESSFLAG = 0   ; 0 = everyone can log in
ACCESSFLAG = 1   ; 1 = only GMs and whitelisted IPs

Useful during testing, maintenance, or beta phases.


CapabilityFlags

Each player record in the database has a CapabilityFlags field that controls per-player permissions (GM status, event access, etc.). These are checked server-side on every relevant action.


← Back to Home

new_logo_v5

Clone this wiki locally