Download presentation
Presentation is loading. Please wait.
Published byMaximilian Crafts Modified over 9 years ago
1
MMOs and Socket Servers Diego O. Scarpa diego.scarpa@globant.com 10 y 11 de Diciembre – Hotel Panamericano - Buenos Aires
2
10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires MMO and Socket Servers MMO = Massively Multiplayer Online Game What is the main concept? – Handle interaction between multiple users How we can do that? – Socket Server
3
10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Basic Design Diagram Socket Server Client 1Client 2 Services Client n
4
10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Socket Server Who it works? – Simple, it uses sockets Client Server Socket 1. bind() 2. listen() 3. accept() 4. send – receive 5. close() 1. bind() 2. connect() 3. send – receive 4. close()
5
10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Socket Server (II) Where is the complexity? – Communication – APIs – Security – Scalability – Performance – Tools
6
10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Communication Control Content Format – Join user, join room, leave room, custom message Data Content Format – text, object, etc Serialization Options – XML – JSON – Binary – Custom Message Control Content Data Content
7
10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Communication (II) Compression – Is it required? – Check your requirements – Do performance benchmarks
8
10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Tunneling – It should work behind a firewall or a proxy, Is this necessary? – Check your audience DMZ Communication (IV) Client Socket Server
9
10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Security Authentication/Authorization – Users – Permission – Do it always
10
10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Security (II) Encryption – Example, AES-128 – Check performance
11
10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Security (III) Anti Cheat – Unique Message Numbering Message injection Message modification – Anti-flood filters Chat issues – IP filter that prevents too many connections from a single IP address
12
10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Client Side/Server Side API Object Model – Users, Rooms, Variables Extensibility Interaction with external services Interoperability between extensions Threads
13
10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Client Side/Server Side API (II) Deploy server Cross platform – Client and Server sides Tools Creation Bots creation Variables: User, Room, Server Documentation
14
10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Scalability Clustering Load balancer Socket Server Socket Server Socket Server Socket Server Socket Server Socket Server
15
10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Scalability (II) Split the message handling – Rooms – Realms – Servers Server Realm Room Realm Room
16
10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Tools Tracking users Network traffic Performance
17
10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Tools (II) Logging Moderator: – kick, ban, etc.
18
10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Performance Communication Big O Benchmarks Bots
19
10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Deploy Review deploy process Auto reload
20
10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Socket Server Samples Commercial Socket Servers: Licenses Add-ons – Chat – Chat Filters – Ban user – Friends
21
10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Socket Server Samples (II) Electro Server 5PhotonSmartFox CoreJavaWindows C/C++Java Server Side APIJava, Javascript and AS.Net/C#AS, Javascript, Phyton and Java Client Side APIJava, C#, Obj-C, AS2, AS3.Net, Unity 3D, C/C++, Obj-C, AS3, Java AS2, AS3, Java,.Net, Obj-C, Ajax
22
10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Socket Server Samples (III) Electro Server 5PhotonSmartFox HTTP TunnelingNativeNoBlue box Anti cheatUnique message numbering Anti Flood NoAnti Flood Ip filter AuthorizationUser permissionsNo
23
10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Socket Server Samples (IV) Electro Server 5PhotonSmartFox StructureRooms, Extensions, Zones, Messages Applications, Rooms, Operations, Events Rooms, Extensions, Zones, Messages EncryptionyesNo Licenses25 CU - Free 1000 CU - $999 Unlimited - $4,999 100 CU – Free 500 CU - $1250 1000 CU - $2250 Unlimited - $3500 20 CU - Free 500 CU - 750 € 2000 CU - 1500 € 5000 CU - 2500 € Unlimited – 2000€
24
10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Conclusions Planning Review requirements before build a custom socket server Check that server don’t have unnecessary features Create tools to control the server Create bots to control the performance Be aware of the messages size and serialization
25
10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Questions ?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.