Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
MMORPG Server
Search
Buzzvil
December 01, 2021
Programming
530
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
MMORPG Server
By Alan
Buzzvil
December 01, 2021
More Decks by Buzzvil
See All by Buzzvil
220903_GFS
buzzvil
0
720
Git 해부하기 2 + 3
buzzvil
0
78
Metastable Failure
buzzvil
0
420
Git 해부하기
buzzvil
0
100
Introduction to Plate Solving
buzzvil
0
98
Airbnb Minerva
buzzvil
0
610
Shape up 방법론
buzzvil
0
1.1k
Buzzvil Billing Data Pipeline
buzzvil
0
760
Journey of Dash's release-cycle
buzzvil
0
320
Other Decks in Programming
See All in Programming
カツオ、ご期待ください
suneo3476
0
190
ソニーのクラウド共通基盤の変遷とAI時代の開発スタイルに合わせた進化 / The Journey of Sony’s Common Cloud Platform and Its Evolution for AI-Native Development
kenjiyoneyama
0
270
npm との違いを手がかりにGo の依存管理を理解したい
optim
0
300
作って学ぶSpring BootのAuto Configuration / JJUG Night Seminar 2026-10-19
rshindo
0
140
Workers Cache を知る
syumai
0
360
自サークルのIdPからログアウトできるようになるまで
taiseiue
1
140
なぜCTOを降りてFDEを選んだのか?〜なぜプロダクト企業がFDEで顧客の現場に踏み込むのか〜
gonta
1
210
残高管理から台帳サービスへの進化
artoy
1
200
コーディング自動化の次へ。人の介入をゼロにするファクトリーとサポートAIによる実践
timakin
4
3.5k
パスワード再設定メールのURLについて知っておこう
uyuki234
0
160
IBM Bob Dojo #1 仕様駆動開発入門
oniak3ibm
PRO
0
390
個人開発者よ、Honoを使え(おじさんver)
tanahiro2010
2
260
Featured
See All Featured
Faster Mobile Websites
deanohume
310
32k
Utilizing Notion as your number one productivity tool
mfonobong
4
620
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
1
450
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.2k
The Pragmatic Product Professional
lauravandoore
37
7.5k
The Cult of Friendly URLs
andyhume
79
7k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
340
How Software Deployment tools have changed in the past 20 years
geshan
2
35k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.4k
Why Our Code Smells
bkeepers
PRO
340
58k
The Language of Interfaces
destraynor
162
27k
Transcript
MMORPG Server Massively Multi-player Online Role-Playing Games
Game Server 의 종류 - Simple servier Account / Rank
/ Store / Reward
Game Server 의 종류 - Simple servier exports.createAccount = function(req,
res) { User.createAccount(req.body.deviceId, req.body.id, req.body.pw, function(err, session) { return common.sendJson(res, {'sessionKey': session.key}); }); }; exports.login = function(req, res) ...생략… exports.submitScore = function(req, res) ...생략… exports.getRankings = function(req, res) ...생략… exports.getProducts = function(req, res) ...생략…
Game Server 의 종류 - Realtime network (P2P/Central)
Game Server 의 종류 - Realtime network (P2P/Central) Command Packet의
예시 출처
Game Server 의 종류 - Realtime network (P2P/Central) Command를 Frame
번호와 함께 서버로 전송 출처 Server
Game Server 의 종류 - Realtime network (P2P/Central) 출처: Authority
Distribution in a Proxy-Based Massively Multiplayer Game Architecture Justin F. Christofoli
Game Server 의 종류 - Realtime network (P2P/Central)
Game Server 의 종류 - Realtime network (P2P/Central) 출처 Host
* Lobby server 는 central server
Game Server 의 종류 - Realtime network (P2P/Central) // TCP
소켓 사용 / Packet 단위 처리 // GameSession.java // 10 ticks / second public void read(Buffer rbuff) { Packet inpkt; while ((inpkt = receivePacket(rbuff)) != null) { processProtocols(inpkt); } } public void processProtocols(Packet packet) throws Throwable { int opCode=packet.buffer().getShort(); switch (opCode) { case OP_COMMAND: processCommand(packet); Break; … 생략 … } } private void processCommand(Packet packet) { gameFrame=match.getFrame(); if (packet.hasRemaining()) { match.putCommand(this, packet); } }
Game Server 의 종류 - MMORPG
Game Server 의 종류 - MMORPG 출처
Game Server 의 종류 - MMORPG 월드맵 <Segment matrix> ..
Linked list
Game Server 의 종류 - MMORPG 월드맵 // Creature.m -
attack:(int)weapon victim:(Creature*)victim damage:(int)damage { void effect(Creature* obj) { [obj notifyFight:weapon attacker: self victim: victim at: [victim point] sound: sound damage: damage]; } [[victim world] doCreatures: (Function) effect visible: [victim view]]; } // World.m + initialize { // local world pool } - doUsers: (Function) function ...
Game Server 의 종류 - MMORPG (Optimize) 출처 참고: 1,
2