• Tidak ada hasil yang ditemukan

Pemodelan Data pada Massively Multiplayer Online Role-Playing Game

N/A
N/A
Protected

Academic year: 2021

Membagikan "Pemodelan Data pada Massively Multiplayer Online Role-Playing Game"

Copied!
12
0
0

Teks penuh

(1)

Pemodelan Data pada Massively Multiplayer

Online Role-Playing Game

LAPORAN TUGAS AKHIR

Disusun sebagai syarat kelulusan tingkat sarjana

oleh :

Simon Batara / 13503109

PROGRAM STUDI TEKNIK INFORMATIKA

SEKOLAH TEKNIK ELEKTRO DAN INFORMATIKA

INSTITUT TEKNOLOGI BANDUNG

(2)

Lembar Pengesahan

Program Studi Sarjana Teknik Informatika

Pemodelan Data pada Massively Multiplayer

Online Role-Playing Game

Tugas Akhir

Program Studi Sarjana Teknik Informatika ITB

Oleh:

Simon Batara / 13503109

Telah disetujui dan disahkan sebagai laporan Tugas Akhir di Bandung, pada tanggal Februari 2008

Pembimbing

Adi Mulyanto, S.T., M.T. NIP 131789702

(3)

ABSTRAK

Massively Multiplayer Online Role-Playing Game (MMORPG) adalah suatu jenis

permainan berbasiskan konsep permainan Role Playing Game (RPG) yang bisa dimainkan dari berbagai tempat dan berbagai waktu oleh bayak pemain. Permainan MMORPG secara umum berbasiskan perjalanan kehidupan dari sebuah karakter yang dimainkan oleh player atau pemain. Pemain MMORPG dari suatu tempat harus bisa melihat dunia yang sama dengan dunia yang dilihat dari sudut pandang pemain lain. MMORPG merupakan sistem aplikasi yang memiliki beberapa karakteristik. Beberapa karakteristik MMORPG memberikan konsekuensi MMORPG sebagai suatu aplikasi client-server. MMORPG memiliki elemen-elemen yang membentuk permainannya. Selain elemen-elemen tersebut, MMORPG juga memiliki banyak proses yang harus diakomodir untuk dapat membentuk dunia permainan di antaranya: interaksi antar pemain yang bermain di tempat yang berbeda.

Untuk mendukung teknis dunia permainan MMORPG dibutuhkan suatu model data yang diimplementasikan sebagai media penyimpanan data permainan. Tugas Akhir ini menghasilkan suatu rangkaian pemodelan data untuk MMORPG. Pemodelan data yang dilakukan mengambil studi kasus Nusantara Online dari Sangkuriang Studio. Dalam Tugas Akhir ini dilakukan pemodelan data yang meliputi beberapa tahapan yaitu: identifikasi entitas, identifikasi hubungan antar entitas, identifikasi kunci untuk entitas, pemodelan konseptual data, pemodelan logis data, dan pemodelan fisik data. Model konseptual data direpresentasikan dalam skema entity relationship diagram. Model logis data direpresentasikan dalam skema relasi. Untuk mendukung sistem aplikasi MMORPG yang berarsitektur client-server maka model data fisik direpresentasikan dalam model data bagian server dan model data bagian client. Model data bagian client merupakan replikasi dari sebagian relasi pada model data

server. Replikasi terjadi karena terdapat data yang tidak berubah dalam keseluruhan

model data MMORPG. Model data client akan meyimpan data yang tidak berubah dan menggunakannya untuk merepresentasikan tampilan grafis. Dengan menggunakan model data pada client, beban transfer data antara aplikasi client dan

server bisa diminimalisir sehingga aspek real-time dalam MMORPG menjadi lebih

baik.

Kata Kunci : Massively Multiplayer Online Role-Playing Game (MMORPG),

Nusantara Online, client-server, real-time, model data konseptual, model data logis, model data fisik.

(4)

KATA PENGANTAR

Puji syukur ke hadirat Tuhan Yang Maha Esa. Dengan rahmat dan bimbingan-Nya, penulis dapat menyelesaikan Tugas Akhir yang berjudul ”Pemodelan Data pada

Massively Multiplayer Online Role-Playing Game”.

Pada kesempatan ini penulis ingin mengucapkan terima kasih kepada:

1. Bapak Adi Mulyanto, S.T, M.T. selaku pembimbing Tugas Akhir, atas segala pendidikan, perhatian, dan bimbingan yang sangat berharga baik selama proses pengerjaan Tugas Akhir maupun selama proses perkuliahan di ITB. 2. Ibu Fazat Nur Azizah S.T., M.Sc. atas segala kritik dan saran yang diberikan

selaku penguji proposal, seminar, dan pra sidang Tugas Akhir.

3. Ibu Ir. Hira Laksmiwati Soemitro, Msc atas segala kritik dan saran yang diberikan selaku penguji sidang Tugas Akhir.

4. Bapak Wikan Danar, S.T. atas segala kritik dan saran yang diberikan selaku penguji sidang Tugas Akhir.

5. Seluruh staf akademik dan nonakademik Program Studi Teknik Informatika ITB yang telah memberikan banyak ilmu selama perkuliahan.

6. Ayah dan Ibu yang telah memberikan kepercayaan dan kasih sayang yang tulus dalam setiap langkah hidup.

7. Kakak yang telah menjadi motivasi dalam proses penyelesaian Tugas Akhir. 8. Kawan-kawan, Okta, Dani, Andoko, Adit, Jaya, Amudi, Riza, Rika, Aldo.

Brahm, Gilang, Akbar, Firman, Fajar, Ronald, Rian, Budiono, Septa, Sonny yang telah memberikan arti warna persahabatan baik dalam proses Tugas Akhir ataupun proses perkuliahan di Teknik Informatika ITB.

9. Anggi Shena Permata dan Ria Rahayu yang telah memberikan inspirasi dalam menghadapi masa-masa seminar, pra sidang, dan sidang.

(5)

Semoga Tugas Akhir ini dapat memberikan manfaat bagi semua pihak yang membutuhkannya. Penulis menyadari bahwa Tugas Akhir ini masih memiliki banyak kekurangan. Oleh karena itu, saran dan kritik dari pembaca sangat penulis harapkan.

Bandung, Februari 2008

(6)

DAFTAR ISI

  ABSTRAK ... iii  KATA PENGANTAR ... iv  DAFTAR ISI ... vi  DAFTAR GAMBAR ... xi 

DAFTAR TABEL ... xii 

BAB I  PENDAHULUAN ... I-1 

I.1  Latar Belakang ... I-1 

I.2  Rumusan Masalah ... I-3 

I.3  Tujuan ... I-3 

I.4  Batasan Masalah ... I-3 

I.5  Metodologi ... I-4 

I.6  Sistematika Pembahasan ... I-5 

BAB II  TINJAUAN TEORI ... II-1 

II.1  Basis Data ... II-1 

II.1.1  Basis Data Relasional ... II-1 

II.1.2  Basis Data Berorientasi Objek ... II-3 

II.2  Pemodelan Data ... II-6 

II.2.1  Model Data ... II-6 

II.2.2  Entity Relationship Model... II-7 

II.3  Normalisasi Basis Data ... II-8 

II.3.1  Permasalahan yang diselesaikan oleh normalisasi ... II-8 

II.3.2  Functional Dependency ... II-9 

II.3.3  Derajat Normalisasi ... II-10 

II.4  Massively Multiplayer Online Role-Playing Game ... II-11 

II.4.1  Definisi Massive Multiplayer Online Role-Playing Game (MMORPG) . ... II-11 

II.4.2  Role-Playing Game (RPG) ... II-11 

II.4.3  Transformasi RPG menjadi MMORPG ... II-14 

II.4.4  Sejarah MMORPG ... II-15 

II.4.5  Penggambaran Permainan MMORPG ... II-16 

(7)

II.5.1  Karakteristik Client-Server... II-20 

II.5.2  Arsitektur Multi-tiered ... II-20 

II.5.3  Keuntungan Arsitektur Client-Server ... II-21 

II.5.4  Kerugian Arsitektur Client-Server ... II-21 

BAB III  ANALISIS ... III-1 

III.1  Gambaran Global MMORPG ... III-1 

III.1.1  Gambaran Permainan RPG ... III-1 

III.1.2  Transformasi RPG menjadi MMORPG ... III-2 

III.2  Analisis Karakteristik Fungsional MMORPG ... III-2 

III.2.1  Dunia Permainan pada Awalnya Harus Diinisiasi ... III-3 

III.2.2  Setiap Pemain Harus Masuk dalam Dunia Permainan ... III-3 

III.2.3  Pemain Harus Berinteraksi dengan Elemen Non Pemain ... III-4 

III.2.4  Pemain Harus Berinteraksi dengan Pemain Lain ... III-4 

III.2.5  Harus Terdapat Perubahan Kondisi dan Pengembangan Dunia ... III-5 

III.2.6  Harus Terdapat Penyimpanan Data ke Basis Data ... III-5 

III.3  Analisis Karakteristik Non Fungsional ... III-6 

III.3.1  Sistem Aplikasi yang Bersifat Real Time ... III-6 

III.3.2  Sistem Aplikasi dengan Transfer Data yang Seminimal Mungkin .. III-6 

III.3.3  Sistem Aplikasi dengan Tingkat Availability yang Tinggi ... III-6 

III.3.4  Sistem Aplikasi dengan Tingkat Perubahan Data yang Tinggi ... III-7 

III.3.5  Sistem Aplikasi dengan Tingkat Pemrosesan Paralel yang Tinggi .. III-7 

III.3.6  Sistem Aplikasi dengan Frekuensi Akses Data yang Berbeda-beda III-7 

III.3.7  Sistem Aplikasi Client-Server ... III-7 

III.3.7.1  Pemain Bermain di atas Aplikasi Client ... III-10 

III.3.7.2  Proses Sinkronisasi Dilakukan di Server ... III-10 

III.3.7.3  Proses Pengiriman Request Data ... III-11 

III.3.7.4  Proses Penerimaan Request Data ... III-11 

III.4  Analisis Karakteristik Data ... III-12 

III.4.1  Pemain ... III-12 

III.4.2  Karakter ... III-13 

III.4.3  Barang ... III-13 

III.4.4  Kemampuan ... III-14 

III.4.5  Area ... III-14 

(8)

III.5  Analisis Pemilihan Model Data ... III-16 

III.5.1  Transfer Data yang Kecil ... III-16 

III.5.2  Kemudahan Pemrosesan Basis Data ... III-16 

III.5.3  Ruang yang Dibutuhkan untuk Penyimpanan Basis Data ... III-17 

III.5.4  Proses Pengambilan Data dari Basis Data ke Server ... III-17 

III.5.5  Kesimpulan Pemilihan Model Data ... III-18 

III.6  Langkah Pemodelan Data ... III-18 

III.6.1  Langkah Pemodelan Konseptual ... III-18 

III.6.2  Langkah Pemodelan Logis ... III-20 

III.6.3  Langkah Pemodelan Fisik ... III-20 

III.7  Usulan Implementasi Fisik Data ... III-21 

BAB IV  PEMODELAN DATA NUSANTARA ONLINE ... IV-1 

IV.1  Nusantara Online ... IV-1 

IV.2  Identifikasi Entitas ... IV-1 

IV.2.1  Player ... IV-2 

IV.2.2  Entitas-entitas Objek Hidup ... IV-3 

IV.2.2.1  Karakter... IV-5 

IV.2.2.2  Monster ... IV-6 

IV.2.2.3  NPC ... IV-7 

IV.2.3  Area ... IV-7 

IV.2.4  Entitas-entitas Objek Mati ... IV-7 

IV.2.4.1  Ability ... IV-8 

IV.2.4.2  Item ... IV-9 

IV.2.4.3  Equipment ... IV-9 

IV.2.5  Quest ... IV-10 

IV.2.5.1  Quest Kill ... IV-11 

IV.2.5.2  Quest Walk ... IV-11 

IV.2.6  Inventory ... IV-11 

IV.2.7  Status Modifier ... IV-11 

IV.3  Identifikasi Hubungan antar Entitas ... IV-12 

IV.4  Identifikasi Kunci untuk Entitas ... IV-13 

IV.5  Model Data Konseptual ... IV-14 

IV.6  Model Data Logis ... IV-16 

(9)

IV.6.2  Normalisasi Tabel... IV-18 

IV.6.2.1  Functional Dependency ... IV-19 

IV.6.2.2  Hasil Normalisasi ... IV-31 

IV.7  Model Data Fisik ... IV-35 

IV.7.1  Pertimbangan Model Fisik Data pada Client dan Server ... IV-35 

IV.7.2  Skema Model Data Fisik ... IV-36 

IV.7.3  Model Data Fisik pada Server ... IV-38 

IV.7.4  Model Data Fisik pada Client ... IV-38 

IV.7.5  Transfer Data dalam Sinkronisasi Model Data Fisik antara Server dan

Client ... IV-40 

BAB V  IMPLEMENTASI DAN PENGUJIAN ... V-1 

V.1  Implementasi ... V-1 

V.1.1  Lingkungan Implementasi ... V-1 

V.1.2  Implementasi Basis Data Relasional pada Server ... V-2 

V.1.3  Implementasi File System pada Client ... V-4 

V.1.4  Implementasi Loading Basis Data pada Server ... V-9 

V.1.5  Implementasi Loading Client pada Client ... V-9 

V.1.6  Implementasi Sinkronisasi Data ... V-9 

V.2  Pengujian ... V-10 

V.2.1  Pengujian Loading Awal Pembentukan Dunia Permainan pada Server dan client ... V-10 

V.2.2  Pengujian Loading Awal ketika Karakter Masuk dalam Dunia Permainan ... V-12 

V.2.3  Pengujian Sinkronisasi Data ... V-13 

BAB VI  KESIMPULAN DAN SARAN ... VI-1 

VI.1  Kesimpulan ... VI-1 

VI.2  Saran ... VI-2 

DAFTAR REFERENSI ... ix 

LAMPIRAN A.  Deskripsi Nusantara Online ... A-1 

LAMPIRAN B.  Pemaparan Proses Dalam Nusantara Online ... B-1 

LAMPIRAN C.  Daftar Kebutuhan Fungsional dalam SRS ... C-1 

LAMPIRAN D.  Use Case Nusantara Online ... D-1 

(10)

LAMPIRAN F.  Implementasi Basis Data Relasional pada Server dengan Postgre 8.1 ... F-1 

(11)

DAFTAR GAMBAR

Gambar II-1 Gambar Penyimpanan Objek [DB406] ... II-5 

Gambar III-1 Permainan RPG ... III-1 

Gambar III-2 Permainan MMORPG ... III-2 

Gambar III-3 Arsitektur Device Sistem Aplikasi MMORPG ... III-8 

Gambar III-4 Komputer Client dan Aplikasinya ... III-9 

Gambar III-5 Komputer Server dan Aplikasinya ... III-9 

Gambar IV-1 Identifikasi Objek dalam Nusantara Online ... IV-2 

Gambar IV-2 Entity Relational Diagram ... IV-15 

Gambar IV-3 Replikasi Data pada Server dan Client ... IV-36 

Gambar V-1 Kelas DB pada Server ... V-3 

Gambar V-2 File Indeks Ability ... V-5 

Gambar V-3 File Fireball.abl ... V-6 

Gambar V-4 File AbilityManager.h ... V-7 

Gambar V-5 Konstruktor Ability Manager ... V-8 

Gambar V-6 Ketergantungan pada File Manajer ... V-8   

(12)

DAFTAR TABEL

Tabel II-1 Customer Relation ... II-2 

Tabel IV-1 Pemetaan Skema Relasi pada Client dan Server ... IV-37 

Tabel IV-2 Transfer Data dalam Sinkronisasi model data fisik client-server ... IV-40 

Tabel V-1 Beban Loading Awal Pembentukan Dunia Permainan (Database pada

Server) ... V-11 

Tabel V-2 Beban Loading Awal Pembentukan Dunia Permainan (Databae pada

Server dan Client) ... V-11 

Tabel V-3 Beban Loading Awal ketika Karakter Masuk dalam Dunia Permainan (Database pada Server) ... V-12 

Tabel V-4 Beban Loading Awal ketika Karakter Masuk dalam Dunia Permainan (Database pada Server dan Client) ... V-13 

Tabel V-5 Beban Transfer Ability (Database pada Server) ... V-14 

Tabel V-6 Beban Transfer Ability (Database pada Server dan Client) ... V-14   

Referensi

Dokumen terkait

Semua itu menunjukkan bahwa sebelum dikenal adanya logika dan filsafat Yunani, telah muncul model pemikiran filosofis yang berjalan secara baik dalam masyarakat

Instabilitas panggul yang dapat dipalpasi, panjang tungkai yang tidak sama, dan lipatan kulit paha yang asimetris dapat ditemukan pada bayi baru lahir dengan dislokasi panggul,

Desa- desa yang mempunyai tingkat kemiskinan tinggi umumnya berada di wilayah-wilayah dataran tinggi dengan sistem pertanian lahan kering dan mempunyai tingkat keterjangkauan

Buat top_module yang mengintegrasikan kedua modul tersebut dengan nama kombinasional_top1. Definisi port masukan dan keluaran dari kombinasional_top ini

Batzuetan, datibo osagarri bitxia erakusten duten hizkeretan, hala nola, Lekeitio- koan, datibo osagarri horren ordez, absolutibo osagarri kanonikoa ere aurki daiteke. Elordieta,

(2001) menemu- kan bahwa komite audit yang terdiri dari lebih banyak komisaris independen yang tidak men- jabat sebagai manajer di perusahaan lain, komite audit yang memiliki

Dengan demikian, hasil pengujian ini tidak sesuai dengan teori legitimasi yang menyatakan bahwa semakin lama umur suatu perusahaan atau semakin lama suatu perusahaan berdiri

Skripsi ini disusun untuk memenuhi salah satu dalam menempuh ujian akhir Program Studi S.1 Keperawatan Fakultas Ilmu Kesehatan di Universitas Muhammadiyah Surabaya