• Tidak ada hasil yang ditemukan

PERANCANGAN DAN IMPLEMENTASI SERVER MMOG PADA GAME REAL TIME STRATEGY (Studi Kasus: Game Sultan Agung)

N/A
N/A
Protected

Academic year: 2021

Membagikan "PERANCANGAN DAN IMPLEMENTASI SERVER MMOG PADA GAME REAL TIME STRATEGY (Studi Kasus: Game Sultan Agung)"

Copied!
15
0
0

Teks penuh

(1)

PERANCANGAN DAN IMPLEMENTASI SERVER MMOG

PADA GAME REAL TIME STRATEGY

(Studi Kasus: Game Sultan Agung)

TESIS

Karya tulis sebagai salah satu syarat

untuk memperoleh gelar Magister dari

Institut Teknologi Bandung

Oleh

Mohamad Arief Hidayat

NIM : 23206316

Program Studi Teknik Elektro

SEKOLAH TEKNIK ELEKTRO DAN INFORMATIKA

INSTITUT TEKNOLOGI BANDUNG

(2)

PERANCANGAN DAN IMPLEMENTASI SERVER MMOG

PADA GAME REAL TIME STRATEGY

(Studi Kasus: Game Sultan Agung)

Oleh

Mohamad Arief Hidayat

Bandung, Juli 2008

Menyetujui

Pembimbing I,

Pembimbing II,

(3)

i

ABSTRAK

PERANCANGAN DAN IMPLEMENTASI SERVER MMOG

PADA GAME REAL TIME STRATEGY

(Studi Kasus: Game Sultan Agung)

Oleh

Mohamad Arief Hidayat

NIM : 23206319

PROGRAM STUDI TEKNIK ELEKTRO

Aplikasi interaktif online dalam bentuk game merupakan layanan hiburan digital yang digemari oleh berbagai kalangan masyarakat. Perkembangan teknologi game pada berbagai aspek dan tersedianya fasilitas infrastruktur internet menyebabkan banyak para penyedia layanan internet menyediakan konten-konten yang interaktif dan real time. Salah satunya aplikasi interaktif yang akan mendominasi ke depan adalah massively multiplayer online game (MMOG), bukan saja hanya untuk layanan hiburan, tetapi aplikasi MMOG sudah menjadi bagian bisnis online yang menguntungkan.

MMOG adalah sebuah tipe game multiplayer yang dimainkan di tingkat global (internet) yang dapat diakses oleh banyak pengguna secara masal dan real time. Oleh karena itu, MMOG membutuhkan satu atau beberapa server untuk melayani banyak pengguna.

Tujuan dari tesis ini adalah untuk merancang dan mengimplementasikan aplikasi server MMOG pada game real time strategy (RTS). Tahapan yang dilakukan dalam penyusunan tesis ini diawali dengan studi literatur MMOG, jaringan komputer, dan penerapan artificial intelligence (AI) pada game komputer. Kemudian dilanjutkan dengan analisis sistem, desain server MMOG menggunakan arsitektur client-server, implementasi serta pengujian sistem.

Hasil utama dari tesis ini adalah terbentuknya sebuah aplikasi server MMOG yang mampu melayani minimal 1000 pengguna pada saat yang bersamaan. Sehingga antara penguna yang memainkan game RTS dapat saling berkomunikasi melalui server MMOG.

Dengan menerapkan aplikasi server MMOG diharapkan game RTS dapat dimainkan oleh banyak pengguna secara masal dan real time melalui media internet. Sehingga game RTS yang dimainkan secara online dapat dijadikan alternatif untuk hiburan

(4)

ii

digital. Selain itu aplikasi yang dibuat ini dapat dikembangkan menjadi bisnis online yang menguntungkan.

(5)

iii

ABSTRACT

DESIGNING AND IMPLEMENTATION OF MMOG SERVER

ON REAL TIME STRATEGY GAME

(Case Study: Sultan Agung Game)

By

Mohamad Arief Hidayat

NIM : 23206319

ELECTRICAL ENGINEERING STUDY PROGRAM

Interactive online application in the form of game represents a digital entertainment service that popular by various of society circles. Development of game technology on various of aspects and existence of facilities of internet infrastructure are causing many of internet service providers are providing the interactive and real time contents. One of its the interactive application which will dominate to the future is the massively multiplayer online game (MMOG), just not only for entertainment service, but MMOG application has become a part of profitable online business. MMOG is a type of multiplayer game which is played at global level or internet which accessible by many users with massive and real time. Therefore, MMOG needs one or several servers to give services to many users.

The purpose of this thesis is to design and implement the application of MMOG server on real time strategy (RTS) game. Step performed within arranging this thesis began with literature study of MMOG, computer network, and applying artificial intelligence (AI) on computer game. Then next steps are analysis of system, MMOG server designing using client-server architecture, implementation and test system. The main result of this thesis is a MMOG server application that can serve 1000 users or more at the same moment. So, between users which are playing the RTS game can communicate each other via MMOG server.

By applying the application of MMOG server, it is expected that it will be playable for many users with massive and real time through the internet media. So, RTS game that played with online can be alternative for digital entertainment. Meanwhile, the created application can developed to appoint profitable online business.

(6)

iv

PEDOMAN PENGGUNAAN TESIS

Tesis S2 yang tidak dipublikasikan, terdaftar dan tersedia di Perpustakaan Institut Teknologi Bandung, dan terbuka untuk umum dengan ketentuan bahwa hak cipta ada pada pengarang. Referensi kepustakaan diperkenankan dicatat, tetapi pengutipan atau peringkasan hanya dapat dilakukan seizin pengarang dan harus disertai dengan kebiasaan ilmiah untuk menyebutkan sumbernya.

Memperbanyak atau menerbitkan sebagian atau seluruh tesis haruslah seizin Direktur Program Pasca Sarjana, Institut Teknologi Bandung.

Perpustakaan yang meminjam tesis ini untuk keperluan anggotanya harus mengisi nama dan tanda tangan peminjam dan tanggal pinjam.

(7)

v

KATA PENGANTAR

Puji syukur penulis panjatkan ke hadirat Allah SWT, yang atas rahmat, karunia dan ijin-Nya sehingga penulis dapat menyelesaikan tesis ini. Juga atas setiap petunjuk yang telah diberikan-Nya ketika penulis menghadapi berbagai masalah selama proses pembuatan tesis ini.

Selama melaksanakan tesis ini, penulis mendapat bantuan dan dukungan dari berbagai pihak. Untuk itu, penulis ingin mengucapkan terima kasih kepada:

1. Bapak Dr. Ir. Arry Akhmad Arman, selaku pembimbing I yang telah memberikan bimbingan, arahan, dan saran kepada penulis dalam melaksanakan tesis ini; 2. Bapak Dr. Ary Setijadi Prihatmanto, selaku pembimbing II yang telah

memberikan bimbingan dalam penyelesaian tesis ini;

3. Ibu Dr. Ir. Aciek Ida W.D., MT yang telah memberikan bantuan dan arahan dalam penulisan tesis ini;

4. Seluruh keluarga yang senantiasa memberikan semangat dan do’a kepada penulis;

5. Isteri dan anakku tercinta atas dukungannya selama pengerjaan tesis ini;

6. Seluruh dosen Program Studi Teknik Elektro yang telah memberikan banyak sekali bantuannya;

7. Seluruh staf karyawan Tata Usaha dan Laboratorium yang telah memberikan banyak sekali bantuannya;

8. Seluruh teman-teman seangkatan Magister Teknik Elektro, yang selalu memberi semangat dan dorongan untuk menyelesaikan tesis ini;

9. Bapak Kepala LPMP Jawa Barat dengan ketulusan hatinya memotivasi penulis menyelesaikan kuliah ini;

10. Teman-teman LPMP Jawa Barat dengan ketulusan hatinya memotivasi penulis menyelesaikan kuliah ini;

11. Semua pihak lain yang membantu, yang tidak dapat penulis sebutkan satu persatu.

(8)

vi

Penulis menyadari bahwa tesis ini bukanlah tanpa kelemahan, untuk itu kritik dan saran sangat diharapkan.

Akhir kata, semoga tesis ini dapat bermanfaat bagi para pembacanya.

Bandung, Juli 2008 Penulis

(9)

vii

DAFTAR

ISI

Halaman

ABSTRAK ... i

ABSTRACT ... iii

PEDOMAN PENGGUNAAN TESIS ... iv

KATA PENGANTAR ... v

DAFTAR ISI ... vii

DAFTAR GAMBAR ... x

DAFTAR TABEL ... xii

DAFTAR SINGKATAN ... xiii

BAB I. PENDAHULUAN ... 1

1.1 Latar Belakang ... 1

1.2 Identifikasi Masalah ... 2

1.3 Tujuan dan Manfaat ... 3

1.4 Batasan Masalah... 3

1.5 Metodologi Penelitian ... 4

1.6 Sistematika Penulisan... 6

BAB II. TINJAUAN PUSTAKA ... 7

2.1 MMOG ... 7

2.1.1 Arsitektur MMOG ... 7

2.1.2 Karakteristik MMOG ... 9

2.2 Jaringan Komputer ... 9

2.2.1 Model Open Systems Interconnection (OSI)... 10

2.2.2 Alamat IP ... 11

2.2.3 UDP ... 13

2.2.4 Antarmuka Soket (Socket Interface) ... 15

2.3 AI pada Game Komputer ... 18

(10)

viii

Halaman

2.3.2 Algoritma A* Pathfinding... 20

2.4 UML ... 22

2.4.1 Use Case Diagram ... 22

2.4.2 Class Diagram ... 23

2.4.3 Sequence Diagram ... 25

BAB III. PERANCANGAN SERVER MMOG ... 26

3.1 Deskripsi dan Analisis Game Sultan Agung ... 26

3.2 Model MMOG ... 31

3.3 Arsitektur Server MMOG ... 33

3.4 Spesifikasi Kebutuhan ... 35

3.5 Use Case dan Sequence Diagram ... 36

3.6 Spesifikasi Perancangan ... 48

3.6.1 Perancangan Protokol Komunikasi ... 48

3.6.2 Perancangan Proses ... 51

3.6.3 Perancangan Tipe Data ... 55

3.6.4 Perancangan Class Diagram ... 57

3.6.5 Perancangan Antarmuka Pengguna... 61

BAB IV. IMPLEMENTASI DAN PENGUJIAN SERVER MMOG ... 62

4.1 Implementasi Server MMOG ... 62

4.1.1 Aktifitas Server MMOG ... 64

4.1.2 Penggunaan Pustaka ... 65

4.2 Pengujian Server MMOG ... 66

4.2.1 Aspek-aspek Pengujian ... 66

4.2.2 Skenario Pengujian... 66

4.2.3 Hasil Pengujian ... 69

4.3 Analisis ... 69

4.3.1 Analisis Bandwidth ... 69

(11)

ix

Halaman

BAB V. KESIMPULAN DAN SARAN ... 73

5.1 Kesimpulan ... 73

5.2 Saran-saran ... 73

(12)

x

DAFTAR GAMBAR

Halaman

Gambar 1.1 Bagan alur sistematika penelitian……….………… 5

Gambar 2.1 Arsitektur peer-to-peer……….………… 8

Gambar 2.2 Arsitektur client-server……….………… 8

Gambar 2.3 Arsitektur distributed-server……….………... 9

Gambar 2.4 Prinsip kerja model OSI……….. 11

Gambar 2.5 Format alamat IP………. 12

Gambar 2.6 Netid dan hostid………... 12

Gambar 2.7 Format paket UDP………... 14

Gambar 2.8 Format pseudo-header (IP header)……….. 15

Gambar 2.9 Proses encapsulation dan decapsulation paket UDP……….. 15

Gambar 2.10 Tipe-tipe socket……… 16

Gambar 2.11 Iterasi komunikasi client-server menggunakan protokol UDP 18 Gambar 2.12 Contoh tech tree pada game RTS………. 19

Gambar 2.13 Contoh A* pathfinding pada sebuah peta………. 21

Gambar 2.14 Contoh use case diagram………. 23

Gambar 2.15 Contoh class diagram……….….. 24

Gambar 2.16 Contoh sequence diagram……….... 25

Gambar 3.1 Panel game Sultan Agung……… 29

Gambar 3.2 Model jaringan MMOG………..……….. 32

Gambar 3.3 Model Aplikasi MMOG………..……… 33

Gambar 3.4 Arsitektur client-server MMOG………... 34

Gambar 3.5 Use case setup konfigurasi….………... 36

Gambar 3.6 Sequence inisialisasi network……….…... 37

Gambar 3.7 Sequence inisialisasi game………. 38

Gambar 3.8 Use case lobby……… 39

Gambar 3.9 Sequence lobby………... 41

(13)

xi

Halaman

Gambar 3.11 Use case system ticked……….. 42

Gambar 3.12 Sequence simulasi game……….…….. 44

Gambar 3.13 Use case komunikasi………. 45

Gambar 3.14 Use case build network command………..….. 46

Gambar 3.15 Sequence komunikasi client-server………..…. 46

Gambar 3.16 Komunikasi data unicast dan multicast……….... 49

Gambar 3.17 Proses lobby……… 51

Gambar 3.18 Proses perintah unit jaringan……….…… 53

Gambar 3.19 Class diagram program utama………..……… 58

Gambar 3.20 Class diagram simulasi game……….…….. 58

Gambar 3.21 Class diagram network manager……….……. 59

Gambar 3.22 Class diagram network interface……….……. 59

Gambar 3.23 Class diagram network message……….……. 60

Gambar 3.24 Class diagram socket……….…... 61

Gambar 4.1 Antarmuka game server………...………..… 62

Gambar 4.2 Antarmuka game client……….………… 63

Gambar 4.3 Aktifitas main program……….………… 64

Gambar 4.4 Aktifitas simulasi game……….………... 64

Gambar 4.5 Aktifitas update network……….……….. 65

Gambar 4.6 Bandwidth meter pengiriman seluruh game state….………… 69

(14)

xii

DAFTAR TABEL

Halaman

Tabel 2.1 Perhitungan nilai F, G, H pada setiap titik………. 21

Tabel 2.2 Daftar titik yang ditandai pada setiap iterasi………. 22

Tabel 3.1 Use case inisialisasi network ………...……..…… 36

Tabel 3.2 Use case inisialisasi game……….. 38

Tabel 3.3 Use case input IP server………..…………... 39

Tabel 3.4 Use case joint game……….………... 40

Tabel 3.5 Use case connection authorization…………..………... 40

Tabel 3.6 Use case loading data………. 40

Tabel 3.7 Use case receive game settings………... 41

Tabel 3.8 Use case update AI………. 43

Tabel 3.9 Use case update world……… 43

Tabel 3.10 Use case update network……… 43

Tabel 3.11 Use case update system ticked……… 44

Tabel 3.12 Use case receive commands………... 47

Tabel 3.13 Use case build network command……….. 47

Tabel 3.14 Use case send network command……….……….. 47

Tabel 3.15 Tipe data NetworkCommand……….. 55

Tabel 3.16 Tipe data NetworkResource……… 56

Tabel 3.17 Tipe data NetworkUnit……… 56

Tabel 3.18 Tipe data NetworkFaction……….. 56

Tabel 3.19 Tipe data pesan jaringan………. 57

Tabel 4.1 Pengujian koneksi………... 66

Tabel 4.2 Pengujian penambahan pemain……….. 67

Tabel 4.3 Pengujian pemutusan hubungan………. 67

Tabel 4.4 Pengujian simulasi game……… 68

(15)

xiii

DAFTAR SINGKATAN

Singkatan Nama Pemakaian pertama kali

pada halaman

AI Artificial Intelligence………... 1

GPU Graphics Processor Unit……… 1

RPG Role Playing Game……… 1

MMOG Massively Multiplayer Online Game………. 1

MUD Multi User Dungeon……….. 2

RTS Real Time Strategy………..………….... 2

UML Unified Modeling Language……….………. 3

UDP User Datagram Protocol………...…. 3

OSI Open Systems Interconnection... 10

IP Internet Protocol……… 11

TCP Transmission Control Protocol……….. 13

ICMP Internet Control Message Protocol……… 16

OSPF Open Shortest Path First……… 16

OOAD Object Oriented Analysis and Design……… 22

HP Hit Point………. 27

UR Unit Reference………...……. 27

Referensi

Dokumen terkait

Pendekatan konseptual yaitu suatu metode pendekatan melalui pendekatan dengan merujuk pada prinsip-prinsip hukum. Prinsip-prinsip ini dapat diketemukan dalam

Dosis tunggal Benzathine Penicillin (IM: lihat uraian dibawah untuk dosis pemberian) atau dengan Erythromycin oral selama 7-10 hari direkomendasikan untuk diberikan

Dikeluarkannya Kebijakan Kepemilikan Tunggal ini telah berimplikasi terhadap pihak – pihak yang telah menjadi pemegang saham pengendali pada lebih dari satu bank.Mereka diberikan

Disamping itu juga untuk mengembangkan potensi pada media stensil sebagai pembuatan motif dan pewarna Indigofera, sebagai teknik dalam perancangan produk busana

Nur Shafini Mohd Said (2015) Relationship between Employee Motivation and Job Performance: A Study at Universiti Teknologi MARA (Terengganu) Metode penelitian

Bahan peledak komersil adalah berbagai produk bahan kimia yang dapat digunakan sebagai bahan peledak untuk kepentingan pekerjaan tambang, pekerjaan umum atau

Kao što je to istakao jedan od članova kluba Mihovil Pansini, filmovi koji su tu proizvedeni, kao i kasnije u Kino-klubu Zagreb tokom 1950ih godina, su bili “mali

Dalam membuat sebuah aplikasi Augmented Reality maka terlebih dahulu harus mendownload semua library dan juga software yang digunakan untuk dapat membuat programnya, karena