BAB III ANALISIS. III.1 Gambaran Global MMORPG

dokumen-dokumen yang mirip
Pemodelan Data pada Massively Multiplayer Online Role-Playing Game

BAB II. 2.1 Model Data High Level Data Model (Conceptual Data Model)

BAB II LANDASAN TEORI Konsep Dasar Membangun Aplikasi Berbasis Web

BAB III ANALISA DAN PERANCANGAN

BAB III ANALISA DAN DESAIN SISTEM

UNIVERSITAS BINA NUSANTARA. Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil Tahun 2007/2008

Nama : Rendi Setiawan Nim :

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISA DAN DESAIN SISTEM

BAB III ANALISA DAN DESAIN SISTEM

BAB III ANALISA DAN DESAIN SISTEM


BAB III ANALISIS DAN PERANCANGAN SISTEM

BAB III ANALISA DAN DESAIN SISTEM

BAB III ANALISA DAN DESAIN SISTEM

BAB III ANALISA DAN DESAIN SISTEM

6/26/2011. Database Terdistribusi. Database Terdesentralisasi

BAB IV PERANCANGAN 4.1 Perancangan Arsitektur Sistem Kebutuhan Perangkat Lunak Tabel 4.1

BAB III LANDASAN TEORI. dalam kertas atau lainnya. Tujuan utama seseorang menulis surat tidak lain

BAB III ANALISA DAN DESAIN SISTEM

6 PENGANTAR MANAJEMEN DATA

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISA DAN DESAIN SISTEM

BAB III TAHAPAN ANALISIS DAN PERANCANGAN SISTEM. aplikasi penjualan perangkat komputer pada CV. Data Baru. Tahap-tahap tersebut

BAB III ANALISIS DAN DESAIN SISTEM

BAB 1 PENDAHULUAN 1.1 Latar Belakang

BAB III ANALISA DAN DESAIN SISTEM

BAB III ANALISA DAN DESAIN SISTEM

BAB 1 PENDAHULUAN 1.1 Latar Belakang Masalah

BAB III ANALISA DAN PERANCANGAN SISTEM

: ENDRO HASSRIE NIM : MATKUL : REKAYASA PERANGKAT LUNAK PEMODELAN DATA

BAB III ANALISA DAN DESAIN SISTEM

BAB III ANALISA DAN PERANCANGAN SISTEM. permasalahan yang ada sebagai dasar untuk membuat sebuah solusi yang

BAB III OBJEK DAN METODE PENELITIAN. Penulis melakukan penelitian pada toko AP Music Gallery Bandung yang

BAB III ANALISA DAN DESAIN SISTEM

BAB III ANALISIS DAN PERANCANGAN. Dalam proses produksi terdapat beberapa faktor yang akan mempengaruhi

BAB III ANALISA DAN PERANCANGAN SISTEM

BAB III LANDASAN TEORI. adalah sebagai berikut: Sistem adalah suatu jaringan kerja dari prosedur-prosedur

BAB II LANDASAN TEORI

BAB III LANDASAN TEORI

BAB III ANALISA DAN DESAIN SISTEM

Bab 3. Metode Perancangan

BAB IV PERANCANGAN SISTEM

BAB III ANALISA DAN DESAIN SISTEM

BAB III ANALISA DAN DESAIN SISTEM

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISA DAN DESAIN SISTEM

bergantung pada keberadaan entitas lainnya[9]. relasi yang merekatkan dua entitas adalah bersifat

BAB IV ANALISIS DAN PERANCANGAN PERANGKAT LUNAK

BAB III ANALISA DAN DESAIN SISTEM

BAB III LANDASAN TEORI

BAB III ANALISA DAN DESAIN SISTEM

BAB III OBJEK DAN METODE PENELITIAN. Penulis melakukan penelitian pada Toko Nada Bandung yang beralamat di

BAB III ANALISIS DAN DESAIN SISTEM

Basis Data. Bab 1. Sistem File dan Basis Data. Sistem Basis Data : Perancangan, Implementasi dan Manajemen

BAB 1 PENDAHULUAN. Menurut Badan Pusat Statistik (2010), jumlah penduduk DKI Jakarta adalah

BAB III ANALISA DAN DESAIN SISTEM

BAB IV ANALISIS DAN PERANCANGAN

SISTEM BASIS DATA. Oleh : Devie Rosa Anamisa

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISIS DAN PERANCANGAN SISTEM

BAB IV ANALISIS DAN PERANCANGAN SISTEM. sistem dengan cara menguraikan sistem tersebut kedalam elemen yang

Database bisa dikatakan sebagai suatu kumpulan dari data yang tersimpan dan diatur atau

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISIS DAN DESAIN SISTEM

MAKALAH REKAYASA PERANGKAT LUNAK ( PEMODELAN DATA )

BAB IV PERANCANGAN SISTEM

BAB III ANALISIS DAN PERANCANGAN SISTEM

BAB III ANALISA DAN DESAIN SISTEM

BAB II DASAR TEORI. terbagi atas beberapa tahap yaitu: perancangan basis data secara konseptual, logis dan fisis.

6. Kumpulan data yang diorganisir menggunakan metode tertentu sehingga menghasilkan informasi yang berguna bagi pemakainya, pengertian dari: JAWAB:

BAB III ANALISA DAN DESAIN SISTEM

BAB II LANDASAN TEORI. Data adalah deskripsi tentang benda, kejadian, aktifitas, dan transaksi, yang

STIKOM SURABAYA BAB III LANDASAN TEORI. 3.1 Penjualan. Penjualan merupakan suatu seni untuk melaksanakan suatu pekerjaan melalui

3.1 APLIKASI YANG DITANGANI OLEH CODE GENERATOR

BAB III ANALISA DAN DESAIN SISTEM

BAB III ANALISA DAN DESAIN SISTEM

BAB 2 LANDASAN TEORI

BAB III ANALISA DAN DESAIN SISTEM

BAB 1 PENDAHULUAN. akan informasi, dan yang mendapatkan informasi dengan cepatlah yang akan dapat

BAB III ANALISA DAN PERANCANGAN

Seminar Internasional, ISSN Peran LPTK Dalam Pengembangan Pendidikan Vokasi di Indonesia

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISA DAN DESAIN

Satuan Acara Perkuliahan

BAB III ANALISA DAN DESAIN SISTEM

BAB III ANALISA DAN PERANCANGAN

BAB IV ANALISIS DAN PERANCANGAN SISTEM. dihadapi. Dan agar mempermudah dalam pembuatan perancangan sistem yang

BAB 2 TINJAUAN PUSTAKA

LINGKUNGAN BASIS DATA

BAB III ANALISIS DAN DESAIN SISTEM

SISTEM BASIS DATA 1. WAHYU PRATAMA, S.Kom., MMSI.

BAB IV PERANCANGAN SISTEM. Perancangan sistem adalah suatu gambaran sketsa sistem atau pengaturan dari

BAB III ANALISA DAN DESAIN SISTEM

Pemrosesan data sebelum adanya basis data Perancangan sistemnya masih didasarkan pada kebutuhan individu pemakai, bukan kebutuhan sejumlah pemakai

BAB III ANALISA DAN DESAIN SISTEM

BAB III ANALISIS DAN DESAIN SISTEM

BAB III LANDASAN TEORI

BAB II LANDASAN TEORI

Transkripsi:

BAB III ANALISIS Bab ini mengemukakan analisis yang dilakukan terhadap MMORPG. Analisis yang dilakukan adalah analisis karakteristik fungsional, analisis karakteristik non fungsional. Setelah itu, akan dilakukan analisis data dan proses yang ada dalam MMORPG. Setelah itu, akan dimunculkan analisis solusi yang memungkinkan untuk menyelesaikan permasalahan pada MMORPG. III.1 Gambaran Global MMORPG Untuk lebih memahami MMORPG termasuk apa saja yang terjadi di dalamnya, Penulis akan mencoba menjelaskannya dengan diagram. Pada sub bab III.1 ini akan dibahas transformasi RPG menjadi MMORPG, bagaimana sebenarnya pemain berada dalam lingkungan MMORPG, dan bagaimana hubungan antar komponen yang ada dalam sistem aplikasi MMORPG. III.1.1 Gambaran Permainan RPG Berikut akan diberikan sebuah gambar yang menggambarkan interaksi pemain dengan elemen lain pada sebuah permainan RPG. Gambar III-1 Permainan RPG Pada permainan RPG, seluruhnya akan dimainkan lewat satu aplikasi. Aplikasi tersebut sudah menangani semua elemen dalam permainan tersebut. Elemen monster merupakan elemen yang dihidupkan melalui intelegensia buatan. Interaksi dilakukan III-1

III-2 seorang pemain yang menggunakan karakter tertentu dan menjalani kehidupannya dan berinteraksi dengan elemen-elemen dalam RPG untuk menyelesaikan tujuannya. III.1.2 Transformasi RPG menjadi MMORPG MMORPG merupakan permainan massive dan online yang berbasiskan RPG. Dalam bab tinjauan teori sudah dijelaskan bagaimana MMORPG menggunakan basis permainan RPG. Berikut akan diberikan bagaimana permainan MMORPG sehingga dengan jelas bisa terlihat bentuk transformasi yang dilakukan. Gambar III-2 Permainan MMORPG Pada permainan MMORPG. Elemen yang ada dalam permainan MMORPG digunakan oleh banyak pemain. Sebagai contoh, monster A pada kehidupan pemain A akan sama dengan monster A pada kehidupan pemain B. Makna dari kata sama pada kalimat sebelum ini adalah dalam kondisi, status, tampilan grafis yang sama. MMORPG membuat suatu ruangan sosial dengan mejadikan sebuah lingkungan permainan digunakan oleh banyak pemain. Dalam MMORPG banyak pemain harus berbagi tempat dan berbagi kehidupan juga. III.2 Analisis Karakteristik Fungsional MMORPG Berikut akan disampaikan beberapa karakteristik fungsional MMORPG sebagai suatu sistem aplikasi yang utuh. Maksud dari utuh adalah sudut pandang yang mencakup perilaku MMORPG terkait dengan komponen-komponennya yaitu basis data, aplikasi pusat data, dan aplikasi yang digunakan pemain.

III-3 III.2.1 Dunia Permainan pada Awalnya Harus Diinisiasi Pada tahap awal dunia permainan harus diinisiasi sehingga dunia siap dimasuki oleh para pemain. Ada beberapa tahapan untuk membuat dunia siap untuk dimasuki 1. Mengambil semua data dari basis data untuk diproses di server Semua permainan pada MMORPG tersimpan dengan baik pada basis data. Untuk memulai suatu dunia baru atau membangun dunia lama kembali dibutuhkan data yang bisa mengidentifikasi apa yang sudah ada dan terjadi pada dunia permainan. 2. Memproses data dari basis data untuk membentuk dunia a. Mengidentifikasi non playable character b. Mengidentifikasi kejadian yang seharusnya terjadi c. Mengidentifikasi seluruh karakter yang ada i. Lokasi ii. Kemampuan iii. Status d. Mengidentifikasi seluruh jalur dan stok barang III.2.2 Setiap Pemain Harus Masuk dalam Dunia Permainan Syarat seorang pemain bisa memainkan permainan MMORPG adalah terhubung dengan aplikasi pusat data MMORPG yang berperan sebagai pusat permainan. Dengan terhubung pada aplikasi pusat data, pemain bisa mendaftarkan dirinya untuk bermain lewat mekanisme yang dibutuhkan. Pemain akan bisa menjalankan permainan MMORPG dengan cara menggunakan aplikasi pemain dan melakukan mekanisme login ke aplikasi pusat data. Pada saat pemain masuk dalam dunia permainan ada beberapa tahapan yang harus terjadi pada MMORPG yaitu : 1. Identifikasi karakter di aplikasi pusat data a. Status b. Lokasi c. Kemampuan d. Kepemilikan 2. Representasi karakter di aplikasi pemain Proses diinisiasi oleh pemain dari aplikasi pemain dengan menghubungi pusat data untuk diberikan akses masuk ke dalam dunia permainan. Dalam proses ini pengiriman

III-4 data id dan password pemain akan dikirimkan ke pusat data dan pusat data akan menanyakan kecocokan id dan password tersebut ke basis data. Setelah mendapatkan jawabannya maka akan diproses di pusat data. Pusat data akan mulai melakukan proses inisiasi pemain yang baru login. Ada beberapa tahap yang dilakukan ketika login dilakukan oleh aplikasi pusat data yaitu : 1. Menerima kiriman id dan password dari pemain 2. Mengirimkan id dan password ke basis data 3. Database mencocokkan dengan id dan password yang ada di basis data 4. Pengembalian dari nilai salah atau benar dari basis data 5. Pengiriman data tentang kepemilikan dan status karakter-karakter yang dimiliki player tersebut III.2.3 Pemain Harus Berinteraksi dengan Elemen Non Pemain Pada saat permainan, pemain akan melakukan interaksi dengan elemen yang bukan pemain seperti interaksi pemain dengan musuh, pemberi misi, penjual barang, ataupun lingkungan seperti pohon atau rumput. Tahapan yang terjadi untuk interaksi ini adalah : 1. Representasi grafis pada client yang berubah 2. Pengiriman data dari client tentang interaksi yang dilakukan 3. Sinkronisasi server pada interaksi tersebut 4. Pengiriman kembali hasil sinkronisasi pada pemain tertentu yang berhubungan Aplikasi pusat data adalah pusat sinkronisasi dunia permainan. Pusat data akan menjadi penghubung antara client sebagai penghubung ke pemain dan basis data sebagai pusat penyimpanan data. Pada pusat data dilakukan proses kalkulasi untuk setiap request dari pusat data dan pengembalian data dari basis data. III.2.4 Pemain Harus Berinteraksi dengan Pemain Lain Pada saat permainan, pemain akan melakukan interaksi sosial dengan pemain lain. Interaksi ini bisa berupa obrolan, pertarungan, atau pembentukan kelompok dan bekerja bersama. Proses yang terjadi untuk interaksi ini adalah : 1. Representasi grafis pada aplikasi pemain yang berubah 2. Pengiriman data dari aplikasi pemain tentang interaksi yang dilakukan

III-5 3. Sinkronisasi pusat data pada interaksi tersebut 4. Pengiriman kembali hasil sinkronisasi pada pemain tertentu yang bersinggungan dengan pemain yang mengirimkan permintaan tersebut III.2.5 Harus Terdapat Perubahan Kondisi dan Pengembangan Dunia Sebagaimana dunia nyata, dunia MMORPG adalah dunia yang selalu berkembang. Hal ini penting untuk mempertahankan kenyamanan pemain dalam mengakomodasi permainan ini. Perubahan yang terjadi pada dunia MMORPG yang dilakukan oleh pengembang akan sering dilakukan maka Sistem Aplikasi harus bisa mengakomodasinya tanpa membebani atau menggangu kenyamanan pemain. Sebagai suatu permainan yang selalu berkembang, perubahan komponen mungkin terjadi pada MMORPG. Untuk menyikapi perubahan komponen yang sering terjadi maka didefinisikan proses perubahan komponen pada MMORPG. Proses perubahan komponen yang dimaksudkan disini adalah seperti adanya penambahan status pada karakter tentang kemampuan kekuatannya, maka harus terjadi perubahan komponen pula pada keseluruhan sistem yaitu pada basis data, aplikasi pusat data, dan aplikasi pemain. III.2.6 Harus Terdapat Penyimpanan Data ke Basis Data Basis data dibutuhkan untuk pencatatan apa yang terjadi pada dunia permainan secara keseluruhan. Jika basis data tidak mencatat maka kemungkinan dunia permainan akan menjadi rusak. Ketidak sinkronan data pada basis data, aplikasi pusat data, dan aplikasi pemain akan mengakibatkan kondisi yang salah terjadi di antaranya. Kondisi ini mungkin akan mengakibatkan kesalahan tampilan pada aplikasi pemain ataupun bentrok data pada pusat data. Pada proses penyimpanan, pusat data akan melakukan proses insert, delete, ataupun update pada basis data. Proses penyimpanan dilakukan sewaktu ada perubahan pada dunia permainan. Tetapi ketika dilakukan penyimpanan biasanya memberatkan kinerja pusat data. Pusat data tidak bisa melayani pemain dengan baik. Hal ini erat berhubungan dengan performansi pusat data yang akhirnya akan berdampak pada kenyamanan pemain

III-6 dalam memainkan permainan. Hal ini harus disolusikan dengan baik sehingga tidak terjadi penurunan kinerja pusat data yang besar dan membuat pemain tidak nyaman. III.3 Analisis Karakteristik Non Fungsional Selain dari karakteristik fungsional yang sudah dijabarkan pada sub bab III.1, terdapat juga karakteristik non fungsional yang bisa mendukung MMORPG sebagai aplikasi yang layak digunakan dalam beberapa batasan tertentu. III.3.1 Sistem Aplikasi yang Bersifat Real Time Dalam pandangan pemain yang bermain, pemain sedang hidup dalam dunia maya. Kehidupan yang dijalani para pemain. Untuk tetap membuat MMORPG tetap terlihat sebagai dunia permainan maka respon yang terjadi harus terlihat real-time. Apa yang dilakukan pemain satu harus bisa dilihat atau dirasakan oleh pemain lain jika memang berhubungan. Dengan metode real-time akan selalu terjaga unsur kehidupan nyata pada permainan MMORPG. III.3.2 Sistem Aplikasi dengan Transfer Data yang Seminimal Mungkin MMORPG membutuhkan jaringan untuk menjalankan dunia permainan. Kehidupan akan disambungkan dengan menggunakan proses-proses pengiriman data Transfer data yang terjadi di jaringan harus kecil sehingga tidak terlalu lama waktu pengirimannya dan karakteristik real-time pada MMORPG tetap terjaga. III.3.3 Sistem Aplikasi dengan Tingkat Availability yang Tinggi Dunia permainan dalam MMORPG harus dapat diakses oleh pemain kapanpun juga. Dunia permainan tidak bisa membatasi waktu permainan karena waktu yang terjadi di dunia nyata tidak sama. Untuk mendukung tingkat availability, dunia permainan harus selalu siap di-back-up dan di-recovery karena jika ada elemen dunia yang tidak tercatat sebagai data maka dunia mungkin tidak sinkron dan akan menghancurkan dunia permainan.

III-7 III.3.4 Sistem Aplikasi dengan Tingkat Perubahan Data yang Tinggi Dunia permainan dalam MMORPG harus selalu dapat berkembang sehingga permainan bisa dirasakan terus menarik oleh pemain. Kejadian atau fitur yang terjadi dalam dunia permainan akan mempengaruhi kepuasan pemain. Karena perkembangan yang sering terjadi ini maka perubahan data dalam MMORPG dapat terjadi sewaktuwaktu sesuai dengan keinginan pengembang MMORPG tersebut. Perubahan ini akan mempengaruhi sistem aplikasi baik dari sisi pemain maupun aplikasi yang mensinkronkan permainan. Perubahan akan terjadi juga pada sisi aplikasi pemain maupun sisi aplikasi pusat penyinkronan data. III.3.5 Sistem Aplikasi dengan Tingkat Pemrosesan Paralel yang Tinggi MMORPG bersifat massive yang berarti bisa dimainkan oleh ratusan bahkan ribuan pemain. Jika ratusan atau ribuan orang terhubung pada waktu yang sama ke duni permainan maka dunia permainan harus siap untuk memproses permintaan dan sinkronisasi untuk semua pemain. Sistem Aplikasi MMORPG harus bisa membagi resource dan melakukan pemrosesan paralel yang baik sehingga tidak mengganggu keberjalanan dunia permainan. III.3.6 Sistem Aplikasi dengan Frekuensi Akses Data yang Berbeda-beda Dalam mengakses data di MMORPG, terdapat perbedaan akses. pengaksesan beberapa data yang terpengaruh akan berkembangnya dunia permainan dan data yang tidak terpengaruh akan berkembangnya dunia permainan. Perbedaan akses data ini menyebabkan perbedaan frekuensi akses yang berbeda dalam dunia permainan. Sistem aplikasi MMORPG harus bisa memanfaatkan frekuensi pengaksesan data tersebut untuk mendukung performansi sistem aplikasi MMORPG. Frekuensi akses data yang berbeda akan membentuk karakteristik data yang berbeda untuk beberapa objek data. III.3.7 Sistem Aplikasi Client-Server Setelah melihat sejumlah karakteristik non-fungsional maka didapatkan fakta bahwa MMORPG merupakan jenis permainan yang dimainkan secara online dan massive atau oleh banyak orang. Permainan MMORPG diakses oleh banyak pemain dan

III-8 dalam satu waktu yang teratur. Karena hal tersebut maka dibutuhkan suatu sistem aplikasi yang bisa mengakomodir bentuk permainan tersebut. Sistem aplikasi yang tepat untuk mengakomodir MMORPG adalah sistem aplikasi Client-Server. MMORPG akan berhasil dimainkan jika terdapat komputer client dan komputer server serta jaringan yang menghubungkannya. Program client adalah alat interaksi utama sistem dengan player dan Server adalah alat sinkronisasi semua player yang bermain. Dalam menjalankan sistem aplikasi MMORPG dibutuhkan suatu arsitektur device sehingga aplikasi MMORPG bisa berjalan dengan sewajarnya. Gambar III-3 Arsitektur Device Sistem Aplikasi MMORPG Pembagian fungsi pada device-device yang menangani sistem aplikasi MMORPG akan dijelaskan lagi pada tulisan selanjutnya. Pada Aplikasi client akan dibentuk suatu representasi grafis berdasarkan posisi dan kepentingan pemain yang terhubung ke server. Berikut akan digambarkan yang terjadi pada client.

III-9 Gambar III-4 Komputer Client dan Aplikasinya Aplikasi client akan dijalankan di atas komputer client. Aplikasi client sendiri memiliki fungsionalitas yang nantinya akan berbeda dengan server. Untuk fungsionalitas client akan dijelaskan di sub bab III.2. Setelah melihat aplikasi pada komputer client, sekarang akan ditampilkan aplikasi pada komputer server. Gambar III-5 Komputer Server dan Aplikasinya Pada komputer server terdapat berbagai fungsionalitas yang memungkinkannya melakukan pemrosesan pada dunia permainan, mendapatkan dan menyimpan data ke basis data serta berhubungan dengan client. Untuk lebih jelasnya akan dijelaskan pada sub bab III.2

III-10 III.3.7.1 Pemain Bermain di atas Aplikasi Client Pemain akan bermain di atas aplikasi client. Aplikasi client akan bisa didapatkan terpisah dari aplikasi yang digunakan sebagai server. Aplikasi client pada MMORPG akan memiliki fungsi sebagai berikut : 1. Menampilkan tampilan grafis pada pemain Tampilan grafis yang ditampilkan oleh client bisa dibagi menjadi beberapa jenis, yaitu : a. Tampilan objek grafis yang tidak membutuhkan data dari server b. Tampilan objek grafis sebagai hasil representasi data hasil kiriman dari server c. Tampilan objek grafis sebagai hasil proses aksi user 2. Mengirimkan aksi yang dilakukan pemain ke server Aksi karakter dalam permainan yang mempengaruhi dunia permainan akan dikirimkan ke server untuk diproses langkahnya. 3. Memproses aksi user Aksi karakter untuk melakukan proses sederhana dan membutuhkan tampilan dengan segera langsung diproses di client tersebut lalu hasilnya baru dikirimkan ke server. Jika ternyata aksi yang dilakukan tidak diperkenankan oleh server maka nantinya server akan mengembalikan aksi user tersebut sehingga state user tersebut kembali ke sebelum melakukan aksi tersebut III.3.7.2 Proses Sinkronisasi Dilakukan di Server Server merupakan tempat pengaturan dunia permainan. Seluruh proses sinkronisasi akan dilakukan di server. Server harus bisa menangani banyak state dari setiap pemain yang terhubung ke server dan hidup dalam dunia permainan serta memprosesnya sehingga dunia permainan tetap direpresentasikan sebagai dunia sosial. Aplikasi server berjalan di atas server dan memiliki fungsi sebagai berikut : 1. Memebentuk dunia permainan Dunia permainan yang lengkap dengan seluruh elemen-elemennya dibentuk di server sehingga dunia permainan menjadi siap untuk dimasuki oleh pemainpemain. 2. Menerima state dari pemain yang terhubung ke server dan masuk ke dunia permainan.

III-11 Server menerima permintaan dan informasi state dari klien sehingga bisa memprosesnya kemudian. 3. Melakukan pemrosesan dari state para pemain dan mensinkronkannya. Server akan memproses semua permintaan dan state dari pemain-pemain yang bermain dan melakukan proses sinkronisasi pada pemain-pemain dan elemenelemen lain pada dunia permainan sehingga membuat dunia permainan tetap berjalan dengan pemain-pemain sebagai pemain-pemain di dalamnya. 4. Menyimpan data hasil yang terjadi di server. Server dalam sistem MMORPG adalah bagian yang langsung berhubungan dengan basis data. Server dalam waktu tertentu harus menyimpan kondisi yang terjadi pada dunia permainan ke basis data sehingga semua yang terjadi tercatat. 5. Mengirimkan kembali hasil proses ke server. Setelah data selesai diproses di server dan menghasilkan satu solusi yang baik untuk sinkronisasi yang terjadi maka server akan mengirimkan kembali hasil sinkronisasi tersebut ke pemain yang sedang bermain di atas aplikasi client. III.3.7.3 Proses Pengiriman Request Data Pengiriman request adalah proses yang sering terjadi dalam permainan MMORPG. Pengiriman request ini bisa dibagi menjadi dua yaitu : 1. Pengiriman request dari client ke server 2. Pengiriman request dari basis data ke server Pengiriman request dari client ke server adalah pengiriman request yang dimaksudkan untuk memperbaharui tampilan grafis pada client. Pengiriman request ini diantaranya: 1. Permintaan tentang status karakter lain yang diklik di client 2. Permintaan tentang kepemilikan karakter lain 3. Permintaan tentang tugas-tugas yang dimiliki oleh NPC III.3.7.4 Proses Penerimaan Request Data Penerimaan request adalah proses yang sering terjadi dalam permainan MMORPG. Penerimaan request ini bisa dibagi menjadi tigas yaitu: 1. Penerimaan request di server

III-12 Penerimaan request di server terjadi ketika terjadi hubungan langsung antara server basis data atau server client. Penerimaan request dari server akan menimbulkan proses lanjutnya yang dilakukan oleh server sebagai bentuk sinkronisasi dari seluruh dunia permainan. 2. Penerimaan request di client Penerimaan request di client terjadi ketika terjadi proses tanya jawab antara client dan server. Penerimaan ini akan memancing dialog bertahap antara server dan client yang akan mengakibatkan pertukaran data antara client dan server. 3. Penerimaan request di basis data Penerimaan request di basis data terjadi ketika terjadi proses tanya jawab antara basis data dan server. Penerimaan request pada basis data akan memaksa basis data untuk melakukan proses manipulasi data seperti insertion, update, deletion. Proses manipulasi data ini akan terjadi sewaktu-waktu dan diatur oleh server. III.4 Analisis Karakteristik Data Karakteristik data yang terjadi pada MMORPG dapat diturunkan dari elemen yang ada pada MMORPG dan proses yang dilakukan elemen-elemen tersebut. Elemenelemen utama yang ada dalam MMORPG adalah pemain, non-playable character, monster, area, barang, tugas. Pembahasan elemen-elemen MMORPG ini akan diturunkan untuk menjadi data yang akan digunakan sebagai acuan perancangan basis data nantinya. Analisis karakteristik data ini akan digunakan untuk melakukan identifikasi entitas untuk pemodelan data yang dilakukan pada bab IV. III.4.1 Pemain Pemain adalah fokus dari seluruh permainan MMORPG. Parameter untuk mengontrol pemain adalah keleluasaan pemain untuk mengontrol dan memodifikasi pemainnya. Pemain dalam MMORPG disebut sebagai player. Biasanya untuk menjadi player, seorang pemain bisa mendaftar pada website yang disediakan oleh pengelola server MMORPG dan melewati sejumlah persyaratan yang diajukan oleh pengelola. Setelah berhasil terdaftar sebagai player maka seorang pemain bisa memiliki login dan password dan siap untuk memainkan MMORPG tersebut.

III-13 Informasi yang diberikan oleh seorang pemain untuk bisa terdaftar sebagai player dalam MMORPG biasanya berkisar seputar data pribadi pemain seperti 1. nama 2. nomor identitas 3. password 4. alamat email III.4.2 Karakter Karakter adalah bentuk dari seorang player di layar grafis komputer. Karakter biasanya digambarkan dengan grafis sesuai dengan keinginan pemain. Pemain bisa memodifikasi bentuk-bentuk tubuh karakter seperti: 1. raut wajah 2. tinggi badan 3. berat badan 4. warna kulit Selain dari tampak fisik, sebuah karakter juga memiliki status tersendiri. Status yang dimaksudkan disini adalah seperti : 1. Posisi dan Lokasi untuk menunjukkan tempat karakter berada pada saat ini. 2. Status untuk menunjukkan besarnya status dirinya lewat parameter dijit angka. Status ini biasanya berkisar di antara kekuatan, kesigapan, kepintaran. 3. Kemampuan untuk menunjukkan kemampuan apa saja yang bisa dilakukan seorang karakter seperti kemampuan memukul, meloncat tinggi, dan lain-lain. 4. Pakaian yang digunakan III.4.3 Barang Seperti pada kehidupan nyata, kehidupan selalu diwarnai oleh adanya objek barang di sekitarnya. Barang pada MMORPG bisa memiliki banyak kegunaan. Barang bisa dikonsumsi, dipakai, ataupun tidak berguna. Barang pada MMORPG dibagi menjadi dua jenis, yaitu :

III-14 1. Barang yang dapat dikonsumsi oleh karakter Barang jenis ini bisa digunakan oleh karakter. Barang ini bisa memberikan berbagai macam efek pada yang menggunakannya ataupun yang menjadi targetnya. 2. Barang yang dapat digunakan atau dipakai Barang jenis ini bisa dipakai oleh karakter. Barang ini akan memberikan efek pada karakter selama karakter memakai atau membawanya. Efek yang diberikan akan bisa berpengaruh pada status karakter. 3. Barang yang hanya menjadi pelengkap tugas Barang jenis ini tidak dapat digunakan untuk memberikan efek pada diri karakter. Barang jenis ini bisa digunakan untuk menyelesaikan tugas atau dapat dijual lagi. III.4.4 Kemampuan Kemampuan menjadi pendukung dari sebuah karakter. Kemampuan bisa digunakan oleh karakter untuk berbagai macam hal. Biasanya kemampuan bisa digunakan dalam pertarungan untuk MMORPG bergenre pertarungan. Dalam beberapa MMORPG, kemampuan bisa digunakan di luar pertarungan seprti untuk berpindah tempat atau untuk membuat dirinya tidak terlihat dari musuh. Kemampuan ini bisa digunakan untuk diri sendiri, karakter lain, ataupun untuk target daerah. III.4.5 Area Area bermakna daerah pada MMORPG. Setiap daerah pada MMORPG akan memiliki data yang digunakan sebagai representasi daerah tersebut. Setiap area memiliki cirinya tersendiri dan harus diidentifikasi melalui data yang tersimpan. III.4.6 Non-Playable Character (NPC) NPC adalah objek dalam MMORPG yang memiliki sifat hidup seperti karakter, NPC bisa dibagi menjadi dua jenis yaitu : 1. NPC NPC bukan musuh adalah objek dalam permainan yang memiliki kecerdasan buatan untuk mendukung permainan. NPC pada permainan biasanya memiliki tugas untuk:

III-15 a. Berjualan barang NPC ini bertugas untuk berinteraksi dengan pemain untuk melakukan penjualan barang atau pembelian barang dari pemain b. Memberikan misi NPC ini bertugas memberikan tugas pada pemain untuk diselesaikan pemain dan biasanya juga akan memberikan imbalan pada pemain. c. Mendukung misi NPC ini bertugas menjadi sarana pendukung permainan dalam rangka pemain dalam menyelesaikan tugas. Jika pemain berinteraksi dengan NPC jenis ini pada saat menjalankan tugas yang memang berhubungan dengan NPC ini biasanya akan memberikan efek yang berhubungan dengan tugas yang sedang dijalani. d. Tidak berguna NPC ini biasanya hanya memiliki kecerdasan untuk berinteraksi singkat dengan pemain. Interaksi yang terjadi dengan NPC jenis ini tidak akan memiliki efek pada perjalanan alur cerita. NPC jenis ini akan cenderung digunakan sebagai penunjuk jalan, penjelas keadaan atau cerita, pendukung suasana. 2. Monster NPC musuh adalah objek dalam permainan yang memiliki kecerdasan buatan untuk melawan pemain. NPC musuh pada permainan biasanya dibagi berdasarkan sifatnya : a. Pasif NPC musuh ini tidak akan menyerang pemain walaupun pemain mendekatinya. NPC musuh ini biasanya akan menyerang pemain ketika pemain memancingnya untuk melakukan serangan pada pemain. b. Aktif NPC musuh ini akan selalu menyerang pemain waktu pemain mendekatinya.

III-16 III.5 Analisis Pemilihan Model Data Setelah menjabarkan analisis-analisis yang ada, sekarang dibutuhkan suatu analisis untuk menyimpulkan model data seperti apa yang bisa diterapkan pada MMORPG. Berikut akan diberikan batasan yang harus dipenuhi oleh konsep basis data tersebut. III.5.1 Transfer Data yang Kecil Berdasarkan sub bab III.3.2 yang menganalisis MMORPG sebagai suatu sistem aplikasi dengan transfer data yang seminimal mungkin, maka dibutuhkan suatu cara untuk memperkecil jumlah data yang ditransfer di antara elemen sistem aplikasi. Kecepatan jaringan di Indonesia merupakan suatu faktor yang penting dalam menentukan konsep basis data untuk MMORPG. Transfer data yang dilakukan melewati jaringan harus kecil sehingga tidak memberatkan kecepatan sampainya data dari server ke client. Dalam paket-paket pengiriman yang akan dikirimkan dari basis data ke server, tidak jarang data yang dikirimkan hanya spesifik item data tertentu. Paket-paket pengiriman tersebut tidak mengharuskan pengiriman dalam bentuk objek kompleks. Relasional lebih menguntungkan dalam hal ini, karena data bisa dikirim dengan paket yang sekecilnya yaitu tuple dengan isi satu atribut. III.5.2 Kemudahan Pemrosesan Basis Data Berdasarkan sub bab III.3.4 yang menganalisis MMORPG sebagai suatu sistem aplikasi dengan tingkat perubahan data yang tinggi, maka dibutuhkan suatu pemodelan data yang bisa berubah dengan cepat dan tidak terlalu menyulitkan dalam proses perubahannya. Dalam pemrosesan basis data, terdapat kelebihan pada basis data relasional yaitu kemudahannya dalam menggabung-gabungkan tabel dengan query. Selain itu basis data relasional cukup sudah sangat dikenal oleh banyak orang karena sudah lama diperkenalkan. Kemudahan ini menjadi keuntungan penting karena dalam MMORPG, server harus bisa dikembangkan secara fleksibel oleh pihak yang sudah memiliki hak sah pada server tersebut. Pihak selanjutnya harusnya bisa mengembangkan server dan basis data dengan baik sesuai dengan keinginannya yang tentunya sudah memenuhi kewajibannya dalam hal lisensi.

III-17 III.5.3 Ruang yang Dibutuhkan untuk Penyimpanan Basis Data Berdasarkan sub babb III.3.5 yang menganalisis MMORPG sebagai sistem aplikasi dengan tingkat pemrosesan paralel yang tinggi, maka dibutuhkan pemodelan data yang tidak memakai banyak tempat pada memory server sehingga tingkat pemrosesan yang dilakukan dapat optimal. Sesuai dengan salah satu kata dalam kepanjangan dari MMORPG yaitu massively, MMORPG adalah sebuah permainan yang bisa dimainkan secara massive yang berarti ribuan bahkan jutaan pemain dari berbagai tempat yang terhubung lewat jaringan. Karena banyaknya pemain yang bisa bermain ini, sudah sewajarnya ruang penyimpanan yang dibutuhkan untuk menyimpan adalah besar. Dalam basis data objek dibutuhkan ruang tambahan untuk mendukung hubungan antar objek ataupun pembentukan objek tersebut sehingga baik dalam sisi memory ataupun ruang penyimpanan dibutuhkan resource yang lebih besar daripada basis data relasional. III.5.4 Proses Pengambilan Data dari Basis Data ke Server Berdasarkan sub bab III.3.1 yang menganalisis MMORPG sebagai suatu sistem aplikasi yang bersifat real-time, maka dibutuhkan pemodelan data yang bisa dimanipulasi dengan baik sehingga dapat memperkecil proses dekomposisi dan komposisi data. Proses dekomposisi dan komposisi yang tidak menyulitkan sistem aplikasi ini akan dapat meningkatkan performansi sistem aplikasi sehingga permainan tetap bisa berjalan dengan real-time. Pada langkah awal, client akan menginisiasi permainan dengan meminta data kebutuhan. Server akan mengirimkan data yang berguna untuk mengawali permainan. Normalnya, data yang dikirimkan dari server ke client cukup besar. Proses yang sama juga terjadi antara server dan basis data. Data yang akan diminta server ke basis data pada awal permainan cukup besar sehingga tidak dimungkinkan bagi server untuk menyimpan data yang dikirimkan tersebut. Untuk permainan selanjutnya, server akan meminta data tertentu yang merupakan kebutuhan permainan. Data ini merupakan data sederhana seperti tipe data boolean, integer, character, dll. Jika menggunakan objek basis data maka akan dibutuhkan waktu untuk melakukan dekomposisi pada server padahal server sedang melakukan banyak proses yang

III-18 menangani permainan. Dalam hal ini server hanya cukup menerima satu unit data dan meneruskannya ke sisi client. Proses dekomposisi dari objek tidak perlu ada jika konsep basis data yang digunakan adalah konsep relasional. Konsep relasional menyederhanakan proses yang ada sehingga unit data yang didapatkan semakin sederhana untuk diproses. Ketika jenis data baru ditambahkan proses yang lebih rumit akan terjadi ketika konsep objek digunakan karena instansiasi objek harus dilakukan untuk semua data. Sedangkan untuk relasional, instansiasi tidak perlu dilakukan. Yang diperlukan ketika ada jenis data baru adalah hanya menambahkan kolom. III.5.5 Kesimpulan Pemilihan Model Data Setelah melihat analisis pemilihan model data dari sisi transfer data, kemudahan pemrosesan, ruang penyimpanan, dan proses pengambilan data seperti yang sudah dijelaskan pada sub bab III.7, maka didapatkan suatu kesimpulan bahwa dengan menggunakan model data relasional terdapat keuntungan yang bisa memperbaiki sisi kuantitas transfer data, kemudahan pemrosesan, ruang penyimpanan, dan pengambilan data. Setelah mendapatkan kesimpulan model data yang dipilih, akan dilakukan pemodelan skema konseptual dan logis pada bab IV. Skema konseptual dan logis akan digunakan pada akhirnya untuk membuat model fisik data (sub bab IV.7) yang sangat erat kaitannya dengan implementasi model data pada bab V. III.6 Langkah Pemodelan Data Setelah melakukan analisis terhadap MMORPG, sekarang akan dituliskan langkahlangkah pemodelan data yang relevan dengan MMORPG secara rinci [SIL02]: III.6.1 Langkah Pemodelan Konseptual Untuk memodelkan data pada level konseptual dibutuhkan beberapa langkah. Dalam memodelkan model konseptual data dibutuhkan pemahaman yang kuat mengenai studi kasus, pemodelan data, dan MMORPG. Studi kasus bisa dilihat lebih jelas dengan melihat lampiran pemaparan proses, use case, dan skenario. Teknik pemodelan data konseptual bisa dilihat lebih jelas pada tinjauan teori pemodelan data.

III-19 Analisis karakteristik fungsional dan data untuk MMORPG bisa dilihat pada sub bab III.2 dan III.4. Langkah-langkah yang dilakukan untuk mendapatkan model data konseptual adalah: 1. Analisis studi kasus Pada tahap ini dilakukan penjabaran proses dan deskripsi studi kasus MMORPG Nusantara Online. Analisis studi kasus diharapkan dapat membantu proses identifikasi entitas dan hubungan antar entitas selanjutnya. Analisis studi kasus dibantu dengan menggambarkan use case dan skenario untuk menggambarkan perlilaku dan proses pada sistem aplikasi MMORPG 2. Identifikasi entitas Pada tahap ini dilakukan identifikasi entitas yang ada dalam Nusantara Online. Identifikasi entitas dilakukan dengan cara pengelompokkan objek berdasarkan sifat dan perilakunya. Hasil dari pengelompokkan objek ini adalah objek-objek yang akan dimodelkan sebagai entitas pada model konseptual nantinya. 3. Identifikasi hubungan antar entitas Entitas-entitas dalam model data konseptual akan memiliki hubungan satu sama lain. Pada tahap ini dilakukan identifikasi hubungan antar entitas yang ada dalam Nusantara Online. Dalam tahap ini dilakukan juga mapping cardinalities sehingga nantinya akan memudahkan proses pembuatan model data konseptual. 4. Identifikasi kunci entitas Pada tahap ini dilakukan identifikasi kunci untuk setiap entitas yang ada dalam Nusantara Online. Identifikasi kunci entitas merupakan suatu langkah penting yang harus dilakukan untuk membantu proses pembuatan model data konseptual. Dengan menggunakan kunci entitas, diagram ERD bisa dirancang dengan semakin baik. 5. Perancangan ERD Model konseptual data yang digunakan adalah dengan menggunakan diagram Entity Relationship Diagram (ERD). Dalam melaksanakan tahap ini, digunakan hasil-hasil yang sudah didapatkan dari tahap-tahap sebelumnya. Hal ini menyebabkan pada saat sebelum memodelkan model data konseptual, sudah dimiliki beberapa elemen dari model data konseptual yaitu Entitas, Hubungan antar entitas, dan kunci dari setiap entitas. Pada tahap ini dilakukan pemodelan

III-20 data dengan membuat ERD. Entitas dan hubungan antar entitas dalam MMORPG akan lebih jelas terlihat dengan menggunakan diagram ERD Hasil Akhir dari tahap pemodelan data konseptual ini adalah diagram ERD. III.6.2 Langkah Pemodelan Logis Untuk memodelkan data pada level logis dibutuhkan beberapa langkah. Dalam memodelkan model logis data dibutuhkan pemahaman yang kuat mengenai studi model konseptual data (ERD) dan teori basis data mengenai skema relasi dan functional dependency. ERD bisa didapatkan dari tahap pemodelan data konseptual. Tinjauan teori tentang skema relasi dan functional dependency bisa dilihat dengan lebih jelas pada tinjauan teori sub bab III.3.2. Untuk mendapatkan hasil relasi dalam bentuk normal, dilakukan normalisasi seperti yang sudah dijelaskan pada sub bab III.3.3. Langkah-langkah yang dilakukan untuk mendapatkan model data logis adalah: 1. Representasi skema relasi Pada tahap ini dilakukan transformasi ERD ke skema relasi. Pemetaan dari ERD ke skema relasi dilakukan dengan memanfaatkan entitas dan hubungan antar entitas yang ada dalam Nusantara Online. Pada tahap ini juga dilakukan pengubahan terhadap atribut skema relasi yang multivalue menjadi atomik 2. Functional dependency (FD) Pada tahap ini dilakukan identifikasi FD yang ada dalam setiap relasi. Selanjutnya dilakukan konversi himpunan FD yang ada sehingga memenuhi bentuk canonical cover. 3. Hasil normalisasi relasi Pada tahap ini dilakukan normalisasi untuk setiap relasi yang ada. Bentuk akhir normalisasi yang dituju adalah bentuk BCNF Hasil akhir dari tahap pemodelan data tahap logis ini adalah skema relasi yang sudah normal. III.6.3 Langkah Pemodelan Fisik Untuk memodelkan data pada level fisik dibutuhkan beberapa langkah. Dalam memodelkan model logis fisik dibutuhkan pemahaman yang kuat mengenai karakteristik non fungsional MMORPG dan pengetahuan dalam menggunakan DBMS serta operating system. Pemodelan data pada tahap fisik sangat erat kaitannya dengan

III-21 karakteristik non fungsional dari MMORPG. Langkah-langkah yang dilakukan untuk mendapatkan model data fisik adalah: 1. Model fisik data pada sistem aplikasi Pada tahap ini dilakukan perancangan model fisik data yang akan diimplementasikan pada aplikasi server dan client. 2. Implementasi model data Pada tahap ini akan dilakukan implementasi model data pada lingkungan pengembangan yang disebutkan kemudian. Hasil akhir dari tahap pemodelan data tahap fisik ini adalah model yang sudah terimplementasi pada sistem aplikasi MMORPG. III.7 Usulan Implementasi Fisik Data Berdasarkan kajian karakteristik non fungsional pada sub bab III.3 didapatkan kesimpulan bahwa MMORPG akan berjalan di bawah arsitektur client-server. Arsitektur client-server ini dapat memberikan dampak bagi model data MMORPG. Selain dari itu dengan karakteristik MMORPG yang harus dapat dijalankan secara real-time maka dibutuhkan transfer data yang seminimal mungkin. Untuk mendapatkan transfer data yang seminimal mungkin, solusi yang dipilih adalah mendistribusikan data di aplikasi client dan server. Atas dasar analisis di atas diusulkan sebuah implementasi fisik data yang terdiri atas implementasi fisik data pada server dan implementasi fisik data pada client. Model data fisik pada client akan diimplementasikan dengan menggunakan file-system yang bersifat flat file dan sesuai untuk menyimpan data dengan struktur yang sederhana. Sedangkan di sisi server akan berisi seluruh data MMORPG dengan menggunakan fasilitas DBMS. File-system berisi data yang tidak berubah sepanjang proses permainan yang berguna untuk merepresentasikan tampilan grafis di client. Dipilihnya file-system pada client yang bukan DBMS diharapkan akan meningkatkan kenyamanan, karena pemain yang pada umumnya adalah end-user tidak harus melakukan konfigurasi basis data pada client yang akan dipergunakannya. Selain dari itu, data yang dikirimkan dari server harus diminimasi dengan tidak mengirimkan seluruh data, namun cukup key atau id

III-22 data saja. Key tersebut merupakan identifikasi data yang terdapat di file-system untuk diambil dan dioperasikan pada aplikasi client.