Tactical Role Playing Game “Protector of Acacia” menggunakan Android 2.3 dan framework AndEngine Andy Budy Pratama Binus University, Jakarta, DKI Jakarta, Indonesia
dan
Hutomo Widjaja Binus University, Jakarta, DKI Jakarta, Indonesia
Abstrak Tujuan penelitian ialah merancang game 2 dimensi ber-genre tactical role playing game menggunakan Android 2.3 dan framework AndEngine. Metode penelitian yang digunakan adalah studi literatur, analisis kebutuhan pengguna, dan analisis game sejenis. Hasil yang dicapai dari penelitian ini adalah game 2 dimensi berjudul “Protector of Acacia” yang menggunakan Android 2.3 dan framework AndEngine. Penelitian ini juga menghasilkan “Protector of Acacia Content Editor” yang berguna dalam pembuatan item dan skill karakter untuk game “Protector of Acacia”. Simpulan yang didapat dari penelitian skripsi ini adalah terciptanya game 2 dimensi ber-genre tactical role playing game dengan menggunakan Android 2.3 dan framework AndEngine, content editor untuk game Protector of Acacia, dan menjadi sarana untuk menarik minat mahasiswa dalam pengembangan game yang mengandung elemen-elemen Indonesia.
Keyword : Game, Tactical Role Playing Game, Android, AndEngine
1. Pendahuluan 1.1
Latar Belakang Perkembangan pasar mobile di seluruh dunia mengalami peningkatan yang cukup
pesat, hal ini memacu banyak orang untuk membuat aplikasi yang menarik pada perangkat mobile seperti smartphone (Gartner, 2011). Teknologi hardware dan software yang sudah berkembang pesat memungkinkan berbagai aplikasi-aplikasi termasuk game pada smartphone dapat dimainkan dengan mudah walaupun aplikasi tersebut membutuhkan spesifikasi yang tinggi. Selain itu, teknologi smartphone juga memudahkan pengguna dalam menyelesaikan pekerjaan-pekerjaannya, atau dengan kata lain dapat menjadi asisten bagi pengguna bersangkutan. Saat ini smartphone telah mendukung aplikasi game yang lebih menarik karena dilengkapi kemampuan multi-touchscreen dan accelerometer. Suatu game memiliki sebuah sistem yang khas sehingga membedakannya dengan game-game lain (dikelompokkan ke dalam berbagai genre). Salah satu contoh genre game adalah Tactical role-playing game (TRPG) game yang menggabungkan elemen dari RPG tradisional dan game strategi. Seperti RPG pada umumnya, pemain akan mengontrol sebuah party dan melawan musuh yang mempunyai jumlah tertentu. Genre ini memasukkan gameplay strategi untuk pola pergerakan tactical pada sebuah isometric atau orthogonal grid. Tidak seperti genre lain, TRPG biasanya tidak memberikan fitur multiplayer. Game TRPG pada platform mobile yang mempunyai elemen kebudayaan Indonesia masih sedikit dan jarang ditemui. Hal ini membuat penulis ingin mengembangkan game bergenre TRPG pada perangkat mobile dan sekaligus memperkenalkan kebudayaan Indonesia pada pengguna smartphone dunia.
Pembuatan game ini akan menggunakan operating system Android yang sedang populer saat ini, Android mendukung berbagai macam perangkat smartphone dari berbagai vendor, dan menggunakan bahasa Java dalam pengkodean aplikasi, serta mendukung multithreading, touchscreen, dan accelerometer. Game ber-genre Tactical role-playing game (TRPG) yang akan dikembangkan memperbolehkan pemain untuk mengontrol aksi bertempur beberapa character yang mempunyai berbagai peran. Pertempuran akan dilakukan secara bergiliran antara character yang ada dan musuh. Game ini juga didukung oleh kecerdasan buatan (artificial intelligence) pada musuh sehingga membuat game ini semakin menarik untuk dimainkan.
1.2
Ruang Lingkup Ruang lingkup dalam pembuatan skripsi ini adalah : 1. Perancangan aplikasi game pada client side menggunakan teknologi Android SDK pada sistem operasi Android. 2. Responden kuesioner kebutuhan adalah para pengguna smartphone Android yang pernah memainkan game. 3. Aplikasi dirancang menggunakan teknologi 2 dimensi dan menggunakan touchscreen. 4. Pembuatan aplikasi game yang meliputi: a. Pembuatan game script, yaitu gambaran atau garis besar dari game. b. Pembuatan game story, yaitu alur cerita yang akan disisipkan pada game. c. Pembuatan gameplay, yaitu cara permainan yang akan terjadi pada game. d. Pembuatan object-object game, yaitu meliputi karakter, consumable item, dan equipment.
e. Pembuatan stages, yaitu lokasi pertempuran dan daerah-daerah yang ada pada game. f. Pembuatan artificial intelligence, diterapkan untuk pergerakan musuh.
1.3
Tujuan dan Manfaat Tujuan dari pembuatan aplikasi ini adalah: a. Memperkenalkan elemen-elemen kebudayaan Indonesia melalui komponenkomponen yang ada di dalam game. b. Membuat game 2 dimensi ber-genre Tactical Role Playing Game dengan menggunakan artificial intelligence pada musuh sebagai sarana hiburan pada smartphone Android. c. Memperkenalkan penggunaan framework AndEngine.
Manfaat dari pembuatan aplikasi ini adalah: a. Mendorong minat mahasiswa atau pengembang aplikasi mobile untuk mengembangkan aplikasi game buatan Indonesia pada smartphone. b. Beberapa elemen kebudayaan Indonesia akan dikenal oleh pemain dari game ini. c. Sebagai contoh aplikasi game TRPG 2D menggunakan framework AndEngine.
1.4
Metodologi Penelitian Metodologi yang digunakan untuk perancangan aplikasi ini adalah metode Rational
Unified Process (RUP). Tahap analisis mencakup studi literatur, analisis kebutuhan pengguna, dan analisis game sejenis. Studi literatur dilakukan dengan cara membaca dan mempelajari buku-buku literatur yang berhubungan dengan game design, game battle system, character modelling, dan Android. Analisis kebutuhan pengguna dilakukan dengan cara penyebaran kuesioner. Sedangkan analisis game sejenis dilakukan dengan me-review keunggulan dan kelemahan game tersebut. Tahap perancangan aplikasi terdiri dari story, gameplay, character, artificial intelligence, game interface, dan fitur-fitur dalam game. Perancangan animation sprite dan character model menggunakan Adobe Photoshop dan Adobe Flash, sedangkan untuk perancangan game interface menggunakan storyboard. Tahap penulisan code menggunakan teknologi Android SDK dan piranti lunak Eclipse sebagai editor dan compiler. Setelah itu dilakukan uji coba dan maintenance untuk aplikasi yang telah dibuat.
1.5
Sistematika Penulisan
Bab 1 Pendahuluan Bab ini membahas tentang latar belakang penelitian, ruang lingkup, tujuan dan manfaat penulisan, metodologi penulisan, dan sistematika penulisan yang digunakan dalam penyusunan skripsi ini. Bab 2 Landasan Teori Bab ini membahas mengenai landasan teori-teori pokok yang digunakan dalam menyusun skripsi ini. Landasan teori yang dibahas meliputi teori umum dan teori khusus.
Bab 3 Analis dan Perancangan Dalam bab ini akan membahas analisis kebutuhan pengguna melalui kuesioner yang dibagikan, analisis terhadap game-game sejenis, melakukan rancangan game, class diagram, use class diagram, sequence diagram, activity diagram dan storyboard. Bab 4 Implementasi dan Evaluasi Bab ini akan menjelaskan mengenai implementasi dari aplikasi meliputi spesifikasi sistem, prosedur penggunaan, dan hasil kuesioner evaluasi. Bab 5 Kesimpulan dan Saran Bab ini merupakan kesimpulan yang penulis dapatkan berdasarkan hasil penulisan skripsi. Pada bab ini juga terdapat kesimpulan dan saran penulis kepada berbagai pihak yang berhubungan dengan laporan skripsi ini untuk pengembangan selanjutnya.
2. Landasan Teori 2.1.
Multimedia Menurut Tay Vaughan (2006), multimedia adalah kombinasi dari teks, foto, seni grafis,
suara, animasi, dan elemen – elemen video yang dimanipulasi secara digital. Elemen-elemen yang terdapat di dalam multimedia adalah sebagai berikut: 1. Teks Teks merupakan media dasar dalam sistem multimedia. Dalam aspek kehidupan, teks digunakan untuk bertukar pikiran, ide, dan fakta. Sebuah teks dapat ditafsirkan menjadi beberapa arti, karenanya keakuratan dan kepadatan dalam teks yang dipilih sangatlah penting. Dalam multimedia, teks dapat digunakan pada judul, menu, navigasi, dan isi dari multimedia.
2. Suara Audio digital dibuat saat mengkonversikan sebuah gelombang suara ke dalam angka, dimana proses ini disebut digitizing (mendigitalkan). Suara digital merupakan sampel suara. Setiap fraksi n dalam satu detik, sampel suara diambil dan disimpan sebagai informasi digital dalam bit dan byte. Kualitas dari recording digital tergantung pada seberapa sering sampel diambil (angka sampling atau frekuensi, dihitung dalam kilohertz, atau seribu sampel per detik) dan berapa banyak angka yang digunakan untuk mereprentasikan nilai dari tiap sampel (bitdepth, ukuran sampel, resolusi, range dinamis). Semakin sering sampel diambil dan semakin banyak data yang disimpan mengenai sampel, semakin bagus resolusi dan kualitas suara yang ditangkap ketika diputar. 3. Gambar Gambar adalah representasi grafik dan visual dari informasi yang dapat ditampilkan pada layar komputer atau tercetak. Gambar mempunyai peran penting dalam multimedia untuk alat navigasi, komponen user interface, sistem help, dan clip-art. Secara umum, image dapat dibagi dalam dua format, yaitu Bitmap dan gambar Vektor. Bitmap atau Raster Images disimpan dalam array of pixel yang merepresentasikan gambar sebagai array of dots (pixel). Sebuah pixel merupakan elemen terkecil dalam resolusi layar komputer (screen resolution) dan setiap pixel mewakili suatu warna yang spesifik namun dapat memiliki 2 atau lebih range warna (color depth). Gambar Vektor disimpan sebagai bentuk geometri (set grafik primitif) yang didefinisikan secara matematika untuk menampilkan gambar. Gambar Vektor dapat diubah ukurannya tanpa kehilangan integritas dari image aslinya.
4. Animasi Animasi adalah membuat presentasi statis menjadi hidup. Animasi merupakan perubahan visual sepanjang waktu dan memberi kekuatan besar pada proyek multimedia dan halaman web. Video televisi terdiri atas 30 frame atau gambar tiap detiknya, kecepatan di mana setiap frame digantikan oleh frame lain membuat gambar tampak bergerak dengan halus. Gambar hidup dalam film biasanya diambil dengan angka 24 frame per detik. 5. Video Video adalah gambar “bergerak” yang ditangkap menggunakan movie camera atau video camera yang kemudian disimpan di dalam suatu format khusus.
Interaksi Manusia dan Komputer Menurut Ben Shneiderman (2010), interaksi manusia dan komputer (IMK) adalah disiplin ilmu yang berhubungan dengan perancangan, evaluasi, dan implementasi sistem komputer interaktif untuk digunakan oleh manusia, serta studi fenomena-fenomena besar yang berhubungan dengannya. Sebuah sistem dapat diartikan interaktif apabila sistem tersebut dapat berkomunikasi dengan penggunanya, sehingga sistem tersebut dapat berguna bagi pengguna tersebut. Dalam perancangan desain antarmuka (interface) terdapat delapan aturan emas (Eight Golden Rules) yang harus diperhatikan, yaitu: 1. Berusaha untuk konsisten
Tindakan yang konsisten diperlukan dalam situasi yang serupa. Konsistensi juga harus diterapkan pada prompt, menu, layar help, warna tampilan, kapitalisasi, huruf, dan sebagainya.
2. Mendukung kegunaan secara universal Diharapkan terdapat bantuan untuk user pemula untuk menguasai beberapa fitur dasar .Selain itu, seiring meningkatnya frekuensi penggunaan, pengguna juga ingin mengurangi jumlah interaksi dan meningkatkan laju dari interaksi tersebut. singkatan, tombol fungsi, perintah tersembunyi, dan fasilitas makro sangat membantu expert user. 3. Menawarkan umpan balik yang informatif Diharapkan dari setiap tindakan yang dilakukan, user mendapatkan umpan balik (feedback) yang informatif dari sistem. Untuk tindakan-tindakan yang sering terjadi, umpan balik yang diberikan dapat dibuat secara sederhana, sedangkan untuk tindakan yang jarang dilakukan dan penting
harus
menampilkan umpan balik secara detail. 4. Merancang dialog yang memberikan penutupan (keadaan akhir) Urutan tindakan harus dikelompokkan ke dalam bagian awal, tengah, dan akhir. Suatu umpan balik yang informatif seharusnya memberikan kepuasan penyelesaian, rasa lega, tanda untuk menghentikan suatu rencana dan pilihan dari pikiran mereka, dan indikasi bahwa caranya jelas untuk mempersiapkan tindakan-tindakan berikutnya. 5. Menawarkan penanganan kesalahan yang sederhana Sistem yang dibuat diharapkan tidak menghasilkan kesalahan yang serius jika digunakan oleh pengguna. Jika pengguna melakukan kesalahan, sistem diharapkan mendeteksi kesalahan tersebut dan memberikan solusi pemecahan masalah yang baik dan sederhana. 6. Memungkinkan pembalikan aksi yang mudah
Diharapkan adanya feature untuk kembali (back) ke aktivitas sebelumnya. Hal ini bertujuan agar pengguna dapat kembali ke aktivitas sebelumnya jika ternyata pengguna melakukan suatu kesalahan sehingga pengguna dapat memperbaikinya dan mendorong pengguna dalam mencoba pilihan-pilihan tindakan yang belum mereka kenali. 7. Mendukung pusat kendali internal Menjadikan pengguna yang menggunakan sistem sebagai pemegang kendali, bukan sebagai yang dikendalikan. 8. Mengurangi beban ingatan jangka pendek Mengingat keterbatasan manusia dalam pemrosesan informasi dalam jangka pendek, sebuah sistem diharapkan dibuat dengan tampilan sesederhana mungkin, frekuensi pergerakan window dikurangi dan hal-hal lain yang dapat membebani ingatan pengguna. Informasi seperti singkatan atau kode sebaiknya juga disediakan.
Selain terdapat 8 aturan emas (Eight Golden Rules) yang harus diperhatikan dalam perancangan desain antarmuka, terdapat juga 5 faktor manusia terukur yang digunakan untuk mengevaluasi perancangan desain antarmuka, yaitu : 1. Waktu Belajar Lama waktu yang dibutuhkan oleh orang biasa untuk mempelajari cara untuk melakukan suatu tugas yang relevan. 2. Kecepatan Kinerja Lama waktu yang dibutuhkan untuk melakukan suatu tugas. 3. Tingkat Kesalahan Banyaknya kesalahan dan kesalahan-kesalahan apa saja yang dibuat oleh pemakai.
4. Daya Ingat Kemampuan pemakai mempertahankan pengetahuannya setelah jangka waktu tertentu. 5. Kepuasan Subjektif Kepuasan pemakai terhadap berbagai aspek sistem, termasuk kesempatan pengguna untuk memberikan umpan balik.
Kebudayaan Indonesia Menurut Mudjahirin Thohir (2009) pengertian kebudayaan Indonesia adalah : a. Pertama, kebudayaan (Indonesia) adalah kebudayaan yang sudah terbentuk. Definisi ini mengarah kepada pengertian bahwa kebudayaan Indonesia adalah keseluruhan pengetahuan yang tersosialisasi/internalisasi dari generasi-generasi sebelumnya, yang kemudian digunakan oleh umumnya masyarakat Indonesia sebagai pedoman hidup. Jika dilacak, kebudayaan ini terdokumentasi dalam artefak/atau teks. Melihat kebudayaan dari sisi ini, kita akan mudah terjebak kepada dua hal. Pertama, apa yang sudah ada itu diterima sebagai sesuatu yang sudah baik bahkan paripurna. Ungkapan seperti kebudayaan Jawa adalah kebudayaan yang adiluhung, merupakan contoh terbaiknya. Di sini, apa yang disebut kebudayaan adalah dokumen text (Jawa termasuk sastra-sastra lisan) yang harus dijadikan pedoman kalau kita tidak ingin kehilangan ke-jawa-annya. Ungkapan: “ora Jawa” atau “durung Jawa” adalah ungkapan untuk menilai laku (orang Jawa) yang sudah bergeser dari text tersebut. b. Kedua, kebudayaan (Indonesia) adalah kebudayaan yang sedang membentuk. Pada definisi kedua ini menjelaskan adanya kesadaran bahwa sebetulnya, tidak pernah (baca: terlalu sedikit) ada masyarakat manapun di dunia ini yang tidak bersentuhan dengan kebudayaan dan peradaban lain, termasuk kebudayaan Indonesia atau
kebudayaan Jawa. Hanya saja ada pertanyaan serius untuk memilih definisi kedua ini, yaitu bagaimana lalu kebudayaan kita berdiri tegak untuk mampu menyortir berbagai elemen kebudayaan asing yang cenderung capitalism yang notabene, dalam batas-batas tertentu, negative (baca: tidak cocok)? Pada saat yang sama, kebudayaan global yang kapitalistik itu, telah masuk ke berbagai relung-relung kehidupan masyarakat “tanpa” bisa dicegah. Kalau begitu, pertanyaannya ialah: membatasi, menolak, atau mengambil alih nilai-nilai positif yang ditawarkan. Persoalan seperti ini dulu sudah pernah menjadi perdebatan para ahli kebudayaan, sebagaimana yang dilakukan oleh Armen Pane dkk versus Sutan Takdir Alisyahbana (Lihat pada buku Polemik Kebudayaan), dan sampai sekarang pun sikap kita tidak jelas juntrungnya. c. Ketiga, adalah kebudayaan (Indonesia) adalah kebudayaan yang direncanakan untuk dibentuk. Ini adalah definisi yang futuristic, yang perlu hadir dan dihadirkan oleh warga bangsa yang menginginkan Indonesia ke depan HARUS LEBIH BAIK. Inilah yang seharusnya menjadi focus kajian serius bagi pemerhati Indonesia, wa bil khusus para mahasiswa dan dosen-dosen ilmu budaya.
Game Menurut Ernest Adams (2010), game adalah jenis kegiatan bermain yang dilakukan dalam konteks berpura-pura dalam dunia nyata, dimana para peserta berusaha untuk mencapai suatu tujuan yang dilakukan sesuai dengan aturan yang ada. Sedangkan menurut Jesse Schell (2008), game adalah sebuah aktifitas pemecahan masalah, dengan pendekatan yang bersifat menyenangkan. Terdapat empat elemen dasar yang membentuk sebuah game (elemental tetrad), yaitu Mechanics, Story, Aesthetics, dan Technology.
1. Mechanics Mechanics merupakan prosedur dan peraturan yang berlaku di dalam suatu game. Mechanics menjelaskan tujuan dari game tersebut, bagaimana pemain dapat mencoba untuk mencapai tujuan yang ada, dan apa yang akan terjadi jika mereka mencoba melakukan hal tersebut. 2. Story Story merupakan urutan kejadian yang terjadi dalam suatu game, story dapat berjalan secara linier dan pre-scripted atau dapat juga bercabang dan muncul secara tiba-tiba. 3. Aesthetics Aesthetics adalah bagaimana penampilan, suara, dan rasa yang ada di dalam game tersebut. Aesthetics merupakan aspek yang sangat penting dalam game design karena langsung mempengaruhi pengalaman bermain. 4. Technology Technology pada dasarnya merupakan media dimana Aesthetics akan berlangsung, dimana Mechanics akan terjadi, dan bagaimana Story akan disampaikan pada game tersebut.
Gambar 2.1 Elemental tetrad (Ernest Adams, 2010) Gameplay Menurut Earnests Adams (2010), gameplay terdiri dari tantangan-tantangan yang pemain harus hadapi untuk mencapai tujuan dari game tersebut dan tindakan-tindakan yang diperbolehkan untuk menghadapi tantangan-tantangan yang ada. Menurut Lindsay Grace (2005), genre pada gameplay dibedakan menjadi beberapa jenis, yaitu: 1. Action Action game adalah game yang menawarkan banyak aksi sebagai daya tarik utama. Keterampilan yang paling dibutuhkan untuk memainkan game ini dengan baik adalah respon reflek dari pemain. 2. Adventure Adventure game adalah game yang menawarkan eksplorasi area dan memecahkan teka-teki sebagai daya tarik utama. Dilihat dari game-game yang sudah ada, game
dengan genre Adventure menawarkan cerita yang paling menarik dibandingkan game dengan genre lain. Penalaran, kreatifitas, dan rasa ingin tahu adalah keterampilan yang paling dibutuhkan untuk memainkan game ini dengan baik. 3. Puzzle Puzzle game adalah game yang menawarkan puzzle sebagai daya tarik utamanya. Game-game ini biasanya dirilis melalui web dan memiliki anggaran yang rendah dalam pembuatannya. 4. Role Playing Role Playing game (RPG) adalah game yang menawarkan pemain sebuah peluang untuk merasakan dirinya menjadi seorang karakter dari game tersebut. Role Playing game biasanya menawarkan banyak karakter, durasi permainan yang panjang, dan mengatur karakter secara teknis.
5. Simulation Simulation game adalah game yang memiliki elemen utama berupa kemampuan untuk menyajikan situasi yang sama dengan dunia nyata. Simulation game menyediakan kesenangan memalui pemeragaan. 6. Strategy Strategy game adalah game yang menghibur melalui proses penalaran dan pemecahan masalah.
Tactical Role Playing Game (TRPG) Tactical RPG atau sering dikenal dengan Strategy RPG, merupakan percampuran antara elemen game turn-based strategy pada PC dengan proses perkembangan karakter RPG pada konsol. Contoh yang paling dikenal adalah Final Fantasy Tactics, sampai dengan genre ini sering didefinisikan sebagai “game yang mirip dengan Final Fantasy Tactics” (Ini ironis karena FFT disorot di Jepang karena terlalu mirip dengan judul sebelumnya, Tactics Ogre, namun ini adalah kisah yang lain). (Everything2, 2003) Tactical RPG adalah sebuah game peperangan dimana setiap unit dikembangkan seperti karakter RPG pada konsol. Umumnya, hanya game yang menyeimbangkan pentingnya dua elemen tersebut yang dianggap sebagai Tactical RPG. Elemen-elemen umum dari Tactical RPG antara lain: •
Medan perang seperti papan catur, sering digambarkan dengan kotak yang jelas.
•
Pandangan kamera secara isometrik.
•
Banyak kelas untuk karakter, didapatkan dengan menaikkan level atau sejenis dengan experience point.
•
Kompleks, cerita politik yang berat, tidak terlalu bergantung dengan suatu periode sejarah.
•
Fantastis, biasanya mengandung fantasi tinggi tapi kadang-kadang menggunakan latar science fiction.
•
Penekanan pada cerita yang telah ditentukan, bukan random, pertempuran, dengan story yang diceritakan selama pertempuran itu sendiri.
•
Abstrak, bukan pertarungan yang realistik. Karena kebanyakan Tactical RPG adalah RPG pada konsol dan juga mengandung tingkat fantasi yang tinggi, pertempuran umumnya akan mencakup abstraksi seperti giliran yang bergantian dan hit points.
•
Tingkat kesulitan yang sangat tinggi, terutama berkaitan dengan kematian. Kematian cenderung permanen, atau setidaknya sangat sulit untuk dihidupkan kembali.
Tidak semua elemen-elemen ini selalu dibutuhakan untuk hadir, tapi game yang tidak memasukkan sebagian besar elemen tersebut akan dianggap menggunakan genre yang lain.
Game Design Menurut Jesse Schell (2008) game design adalah aksi yang menentukan bagaimana seharusnya sebuah game. Menurut Andrew Rollings dan Ernest Adams (2003), game design adalah proses dari membayangkan sebuah game, mendefinisikan cara kerjanya, menggambarkan elemen-elemen yang membuat game tersebut (konseptual, fungsional, artistik, dan lainnya), dan kemudian menyampaikan informasi tersebut kepada tim yang membangun game tersebut. Menurut Bob Gates (2004), pembuatan game akan dimulai dari pembuatan game document. Game document digunakan untuk menjadi landasan pengembangan game tersebut, dan menarik minat pembaca serta menginformasikan gambaran keseluruhan game yang akan dibuat.
Berikut ini merupakan elemen di dalam game document: 1. High Concept High Concept adalah gambaran umum mengenai game tersebut, tentang apa game tersebut, biasanya ditampilkan dalam satu atau dua kalimat. 2. Genre Menjelaskan genre apakah yang akan digunakan pada game tersebut. 3. Gameplay Bagian merangkum aksi yang akan dilakukan pemain ketika pemain memainkan game tersebut. Biasanya, bagian ini dimulai dari menentukan genre dari game dan kemudian menjelaskan cara yang kreatif dan menghibur.
4. Features Bagian ini menampilkan kumpulan nilai jual utama dari game tersebut, yang dapat membantu mengidentifikasi kemampuan dari game tersebut. 5. Setting Bagian ini merangkum dunia dalam game dan isinya secara menarik dan unik dalam beberapa paragraf 6. Story Jika game tersebut mempunyai story, maka pada bagian ini memberikan sinopsis pendek tentang story pada game tersebut. 7. Target Market Bagian ini menjelaskan target pasar yang akan dituju game tersebut. 8. Target Hardware Platform Bagian ini mengidentifikasi platform game apakah yang akan digunakan untuk memainkan game tersebut. 9. Estimated schedule and budget Bagian ini memperkirakan jadwal dan dana yang dibutuhkan untuk membuat game tersebut. 10. Competitive analysis Bagian ini membandingkan game yang akan dibuat dengan pesaing di pasar yang mempunyai genre serupa. 11. The team Bagian ini menampilkan kumpulan informasi dari tim pembuat game beserta peran yang akan mereka lakukan pada pembuatan game tersebut. 12. Document summary
Bagian ini berguna untuk menyakinkan publisher bahwa game ini akan berhasil di pasar.
Rational Unified Process (RUP) Menurut Scott W. Ambler (2005) Rational Unified Process (RUP) adalah sebuah proses pengembangan sistem yang preskriptif dan terdefinisi dengan baik yang sering digunakan untuk mengembangakan sistem berbasis obyek atau komponen berbasis teknologi. RUP didasarkan pada prinsip-prinsip rekayasa perangkat lunak seperti iterative, requirements-driven, dan architecture-centric pada pendekatan pengembangan perangkat lunak.
Gambar 2.2 RUP life cycle (Scott W. Ambler, 2005)
Gambar diatas menggambarkan RUP life-cycle atau yang sering juga disebut “diagram gundukan”. Gundukan horizontal untuk tiap bagian memberikan perkiraan kasar untuk setiap daya yang dibutuhkan untuk tiap fase. Sebagai contoh dapat dilihat sebagian besar proses
Business Modelling berlangsung pada fase Inception, meskipun akan terus berlangsung hingga awal fase Transition. Fase-fase yang terdapat pada RUP adalah sebagai berikut : •
The Inception Phase Fase Inception bertujuan untuk menyakinkan stakeholder terhadap tujuan proyek tersebut. Karenanya dibutuhkan porsi requirement untuk menentukan batas dari proyek tersebut.
•
The Elaboration Phase Pada fase Elaboration, requirements akan lebih dijelaskan secara detail dan menentukan arsitektur dari sistem.
•
The Construction Phase Fase Construction berfokus pada pembuatan sistem sampai titik dimana sistem tersebut sudah siap untuk disebarkan.
•
The Transition Phase Fase Transition berfokus pada mengantarkan sistem ke dalam tahap produksi. Akan ada pengujian oleh sistem tester dan end-user serta terdapat pengerjaan ulang dan penyesuaian sistem.
Java Java dikembangkan oleh sebuah tim yang dipimpin oleh James Gosling di Sun Microsystems. Pada awalnya bernama Oak, didesain pada 1991 untuk digunakan pada chip peralatan rumah tangga. Pada 1995, namanya diubah menjadi Java dan didesain ulang untuk mendukung aplikasi internet. (Y. Daniel Liang, 2011) Java adalah bahasa pemrograman dengan fitur lengkap dan digunakan untuk berbagai tujuan yang dapat digunakan untuk membangun aplikasi-aplikasi penting dengan baik. Karakteristik dari Java adalah : 1. Java is Simple Tidak ada bahasa yang mudah, namun Java sedikit lebih mudah dari bahasa pemrograman berorientasi obyek C++ yang populer dan sudah menjadi bahasa yang dominan sebelum Java muncul. Sebagian dari Java dimodelkan berdasarkan C++, namun dipermudah dan fitur-fitur yang ada sudah ditingkatkan. Java mengganti multiple inheritance pada C++ dengan interface dan menghilangkan fitur pointer. Java juga menggunakan memori alokasi secara otomatis dan menyediakan garbage collector, sedangkan pada C++ programmer harus mengalokasi dan mendealokasi memori yang digunakan. 2. Java is Object-Oriented Java sejak awal sudah dirancang sebagai sebuah bahasa pemrograman berorientasi obyek.
Pemrograman
berorientasi
obyek
adalah
proses
pendekatan
pada
pemrograman yang menggantikan prosedur tradisional pada teknik pemrograman.
3. Java is Distributed Distributed computing melibatkan beberapa komputer yang bekerja bersama dalam suatu jaringan. Java dirancang untuk membuat distributed computing menjadi lebih mudah. Dikarenakan kemampuan jaringan terintegrasi pada Java, menulis program jaringan seperti mengirim dan menerima data ke dan dari file. 4. Java is Interpreted Program pada Java di-compile menjadi Java Virtual Machine code yang disebut dengan bytecode. Bytecode tidak terikat pada suatu mesin tertentu dan dapat berjalan pada semua mesin yang memiliki java interpreter, yang merupakan bagian dari Java Virtual Machine (JVM). 5. Java is Robust Robust berarti dapat diandalkan. Java menekankan pada pengecekan awal untuk kesalahan yang mungkin terjadi, dikarenakan Java compiler dapat mendeteksi kesalahan-kesalahan yang muncul pertama kali pada waktu eksekusi. Java juga memiliki fitur runtime exception handling untuk membantu programmer. 6. Java is Secure Sebagai internet programming language, Java digunakan di dalam sebuah jaringan dan lingkungan terdistribusi. Saat menjalankan sebuah program Java, program tersebut tidak akan merusak sistem karena Java mengimplementasikan beberapa mekanisme keamanan untuk melindungi sistem dari ancaman.
7. Java is Architecture-Neutral Dikarenakan Java yang interpreted, memungkinkan Java untuk menjadi architectureneutral atau platform-independent. Dengan adanya Java Virtual Machine (JVM), program yang dibuat dapat dijalankan pada platform apapun. 8. Java is Portable Dikarenakan Java yang architecure-neural, program Java bersifat portable. Program tersebut dapat dijalankan pada berbagai platform tanpa perlu di-compile ulang. Lingkungan Java juga portable untuk hardware dan sistem operasi yang baru, Java compiler sendiri juga ditulis menggunakan Java. 9. Java’s Performance Kemampuan dari Java kadang dikritik, eksekusi dari bytecode tidak secepat pada compiled language seperti C++. Dikarenakan Java yang interpreted, bytecode tidak secara langsung dieksekusi oleh sistem tapi dijalankan melalui interpreter. Namun, kecepatan tersebut sudah lebih dari cukup untuk sebagian besar aplikasi interaktif. 10. Java is Multithread Multithreading adalah suatu kemampuan dari suatu program untuk menjalankan beberapa
tugas
secara
bersama-sama.
Multithreaded
programming
sudah
diintegrasikan secara bagus dalam Java, sedangkan pada bahasa lain harus memanggil prosedur yang spesifik pada sistem operasi untuk mengaktifkan multithreading. 11. Java is Dynamic Java dirancang untuk beradaptasi oada lingkungan yang berkembang. Class baru dapat dibuka tanpa melakukan compile ulang. Tidak diperlukan developer untuk membuat, dan pengguna untuk meng-install versi terbaru dari software.
Android Menurut Ed Brunete (2011), Android adalah sebuah open source software toolkit untuk telepon genggam yang dibuat oleh Google dan Open Handset Alliance. Android sudah digunakan jutaan telepon genggam dan perangkat genggam lainnya, yang membuat Android menjadi sebuah platform besar untuk pembuat aplikasi. Walaupun beberapa fitur telah muncul pada sistem operasi yang lain, namun Android adalah sistem operasi pertama yang menggabungkan fitur-fitur berikut: • Development platform yang benar-benar terbuka dan gratis berbasis linux dan open source. Para pembuat perangkat genggam menyukai hal ini karena mereka dapat menggunakan dan mengubah platform tersebut tanpa perlu membayar royalti. Developer menyukai hal ini karena mereka mengetahui bahwa platform tersebut mempunyai pilihan dan tidak khusus untuk satu vendor saja. • Arsitektur berbasis komponen yang diinspirasi oleh internet mashup. Bagian dari sebuah aplikasi dapat digunakan dalam cara yang berbeda. Bahkan komponen bawaan dapat diganti dengan komponen buatan sendiri. • Banyak layanan service bawaan. Servis berbasis lokasi menggunakan GPS yang dapat digunakan untuk membuat aplikasi berbasis lokasi. Database SQL yang dapat digunakan untuk penyimpanan data secara lokal. Browser dan map views yang dapat digunakan pada aplikasi. • Life cycle dari aplikasi yang dikelola secara otomatis. Aplikasi dipisahkan dengan aplikasi yang lain dengan beberapa lapisan keamanan, yang akan menyediakan stabilitas sistem yang tidak pernah ditemukan pada smartphone sebelumnya. Sehingga sebuah aplikasi tidak bisa mengaktifkan atau menutup aplikasi lain.
• Grafik dan suara berkualitas tinggi. Gabungan grafik 2D vector, animation berdasarkan Flash, dengan grafik 3D menggunakan OpenGL untuk memungkin berbagai game dan aplikasi bisnis untuk dapat berjalan dengan baik. Android menyediakan codec untuk standar format suara dan video yang umum. • Portabilitas untuk berbagai hardware masa kini maupun masa yang akan datang. Semua program ditulis dalam Java dan dieksekusi oleh Android Dalvik Virtual Machine sehingga code dapat dijalankan di berbagai arsitektur hardware. Mendukung berbagai metode input seperti keyboard, touchscreen, dan trackball. Tampilan antarmuka dapat menyesuaikan sesuai resolusi dan orientasi layar.
Berikut ini adalah tampilan sistem arsitektur dari Android :
Gambar 2.3 Android System Architecture (Ed Brunete, 2011)
•
Linux Kernel
Android dibangun diatas pondasi yang kuat dan sudah terbukti : Linux Kernel. Android menggunakan Linux untuk manajemen memori, manajemen proses, jaringan dan servis sistem operasi lainnya. •
Native Libraries Lapisan di atas kernel adalah library bawaan dari Android. Library ini ditulis dalam bahasa C atau C++, digunakan untuk arsitektur hardware tertentu yang digunakan untuk perangkat, dan sudah di-instal oleh vendor perangkat. Beberapa native library antara lain : surface manager, grafik 2D dan 3D, media codec, database SQL, dan browser.
•
Android Runtime Juga diatas kernel terdapat Android runtime, terdiri dari Dalvik Virtual Machine (DVM) dan core libraries dari Java. DVM adalah implementasi Java yang dilakukan oleh Google, dioptimalkan untuk perangkat genggam. Semua kode aplikasi akan ditulis dalam Java dan akan dijalankan oleh DVM.
•
Application Framework Diatas native libraries dan runtime terdapat lapisan Application Framework, yang menyediakan komponen-komponen tingkat tinggi yang akan digunakan untuk membuat aplikasi. Beberapa application framework antara lain : activity manager, content provider, resource manager, location manager, notification manager.
•
Applications and Widgets Lapisan tertinggi dari arsitektur Android adalah Application dan Widgets. Pengguna hanya akan melihat bagian ini, dan tidak mengetahui apa yang terjadi pada layer yang lain. Application adalah program yang dapat mengambil alih seluruh layar dan berinteraksi dengan pengguna. Sedangkan, widget (seringkali
disebut gadget) hanya berjalan pada sebagian ruang kecil layar home.
XML XML berisi, membentuk, melabel, menyusun dan melindungi informasi. XML melakukannya dengan simbol yang tertanam pada teks yang disebut markup. Markup meningkatkan arti dari informasi dalam cara tertentu, mengidentifikasi bagian-bagian dan bagaimana mereka berhubungan satu sama lain. Sebagai contoh, ketika Anda membaca koran, Anda dapat membedakan artikel yang terpisah oleh jarak dan posisi mereka pada halaman serta penggunaan font yang berbeda untuk judul dan heading. Markup bekerja dengan cara yang sama, kecuali alih-alih menggunakan jarak dan garis, XML menggunakan simbol.
Gambar 2.4 Contoh sebuah file XML
UML (Unified Modeling Language) Menurut Jeffrey L. Whitten dan Lonnie D. Bentley (2007), Unified Modeling Language (UML) adalah sebuah kumpulan ketentuan modelling yang digunakan untuk menspesifikasi atau mendeskripsikan sebuah sistem software dalam dalam konteks obyek. UML dibagi menjadi beberapa komponen: 1. Use Case Diagram Use Case Diagram menggambarkan fungsi dari sistem dari sudut pandang pengguna
eksternal dan dari materi dan terminologi yang mereka pahami. Untuk menyelesaikan permintaan yang membutuhkan interaksi dengan pengguna atau ahli secara akurat dan sepenuhnya.
Gambar 2.5 Contoh Use Case Diagram (Jeffrey L. Whitten dan Lonnie D. Bentley, 2007) Use Case Diagram memiliki komponen sebagai berikut: a. Actor Actor adalah pelaku yang memulai aktivitas sistem, use case, dengan tujuan menyelesaikan beberapa tugas bisnis yang menghasilkan sesuatu yang dapat diukur.
b. Relationship Relationship digambarkan dengan sebuah garis diantara dua simbol yang menjelaskan hubungan antara kedua simbol tersebut. 2. Activity Diagram Activity Diagram menggambarkan alur yang berurutan dari aktifitas use case atau proses bisnis. Diagram ini juga dapat digunakan untuk memodelkan logika dengan suatu sistem. Activity diagram memiliki komponen sebagai berikut : a.
Titik Solid Pada activty diagram, titik solid menggambarkan awal sebuah proses
b.
Segi empat dengan sudut tumpul Pada activity diagram, segi empat dengan sudut tumpul menggambarkan tugas yang perlu dilakukan
c.
Panah Pada activity diagram, panah menggambarkan sasaran yang mengawali suatu kegiatan
d.
Diamond Pada activity diagram, diamond menggambarkan sebuah kegiatan yang menyangkut sebuah keputusan
e.
Titik solid di dalam lingkaran Pada activitydiagram, titik solid di dalam lingkaran menggambarkan akhir sebuah proses
f.
Synchronization Bar Sebuah simbol yang dapat memisahkan serta menggabungkan aktifitas yang berjalan secara bersamaan
3. Sequence Diagram Sequence Diagram menggambarkan bagaimana obyek berinteraksi satu sama lain melalui pesan dalam eksekusi use case atau operasi. Diagram ini menggambarkan langkah-langkah pesan dikirim dan diterima antara obyek. 4. Class Diagram Class Diagram menggambarkan struktur obyek dan struktur sistemnya. Pada diagram ini juga terdapat multiplicity, relasi generalisasi/spesialisasi, dan relasi agresi.
Gambar 2.6 Contoh class Diagram (Jeffrey L. Whitten dan Lonnie D. Bentley, 2007)
Struktur antar a class teerdiri dari: 1.
Gen neralization Merupakkan suatu class c umum m (super claass) yang mendeskripsikan pro operti-properrti umum dari class khusus (ssub class). Kata “addalah” menunjukkan class c khusuus pada hubbungan geneeralisasi ini. Semua prooperti yan ng berada pada p class umum u akan dimiliki jugga oleh sem mua class khhusus (inh heritance) namun class khusus k juga dapat memiiliki propertiinya sendiri.
G Gambar 2.1 Generalizaation 2. Aggreegation Merupakkan suatu objek superior (the whole) yang terdiri dari sejumlaah objek (the partss)
1..* 1..2
Gambar 2.22 Aggregatiion
3.
Asssociation Merupakkan suatu relaasi berarti anntara sejumlaah objek. Suuatu relasi beerarti dap pat diartikan mejadisebuuah kelas memiliki instannsi dari kelass lainnya. Kaata “m memiliki” mencirikan hubbungan asosiiasi
Gambar 2.3 Associatioon
Di dalam claass diagram m, hubungaan antar class-class c yang ada juga ty. Setiap muultiplicity yaang digunakkan memilikki arti digambarrkan melalui multiplicity tersendirii, berikut peenjelasan meengenai mulltiplicity yanng dapat diggunakan di dalam d class diag gram : Tabel 1.1 1 Multipliccity Class Diiagram Multiplicity M y
A Arti
*
Banyak
0
N Nol
1
Saatu, bisa dituulis bisa tidaak
0..* 0
A Antara Nol saampai banyakk
1..*
A Antara Satu saampai banyaak
0..1 0
N atau Satu Nol
1..1
Teepat Satu
AndEngine AndEngine adalah sebuah 2D OpenGL Game Engine untuk platform Android yang diciptakan oleh Nicolas Gramlich pada pertengahan 2010. Nicolas Gramlich menciptakan AndEngine untuk memenuhi kebutuhan akan sebuah game development framework yang gratis dan mudah digunakan. Lebih dari 2000 game yang menggunakan framework AndEngine telah dipasarkan, dan code dari AndEngine telah dieksekusi lebih dari satu juta kali. Berikut adalah fitur-fitur yang ditawarkan oleh AndEngine: (http://code.google.com, 2010) •
Android-Optimized AndEngine dioptimasikan untuk menjadi sebuah framework yang bekerja pada platform Android.
•
Android 1.6 Compatibility AndEngine dapat digunakan mulai dari Android versi 1.6 (Donut).
•
SplitiScreen AndEngine mendukung fasilitas membagi layar pada perangkat Android.
•
Network Multiplayer AndEngine mendukung fasilitas untuk bermain multiplayer.
•
Live-Wallpapers AndEngine mendukung pembuatan wallpaper hidup yang bergerak.
•
MultiTouch AndEngine mendukung penggunaan teknologi multitouch pada perangkat yang mendukung multitouch.
•
Physics-Engine (Box2D) AndEngine mendukung perhitungan fisika dalam pembuatan aplikasi menggunakan teknologi Box2D.
3. Kesimpulan Kesimpulan yang diperoleh dari proses analisis, perancangan, implementasi dan evaluasi game Protector of Acacia adalah sebagai berikut: 1. Game Protector of Acacia memiliki kontrol dan tampilan yang sesuai dengan minat pasar yang dapat terlihat dari mayoritas hasil kuesioner evaluasi menyukai game ini. 2. Setelah memainkan game Protector of Acacia, sebagian besar responden evaluasi (60%) mengaku tertarik untuk membuat game yang memiliki beberapa elemen Indonesia sesuai dengan hasil kuesioner evaluasi pada nomor 8. 3. Pemain berminat untuk merekomendasikan game Protector of Acacia kepada teman-temannya sesuai dengan hasil kuesioner evaluasi pada nomor 9. 4. Penggunan teknik conditional framerate dapat menghemat penggunaan daya baterai pada smartphone sebesar 19.95%.
Daftar Pustaka
Adams, Ernest. (2010). Fundamentals of game design 2nd edition. Berkeley: New Riders Publishing. Anonim. (2003). Tactical RPG. Diakses 24 Februari 2012. (http://dirkriehle.com/computerscience/research/1997/cacm-1997-frameworks.html) Bates, Bob. (2004). Game Design Second Edition. Boston: Thomson Course Technology PTR. Bäumer, Dirk, Guido Gryczan, Rolf Knoll, Carola Lilienthal, Dirk Riehle, and Heinz Züllighoven. (1997). Framework Development for Large Systems. Diakses pada 24 Februari
2012.
(http://dirkriehle.com/computer-science/research/1997/cacm-1997-
frameworks.pdf) Brunete, Ed. (2011). Hello, Android Introducing Google’s Mobile Development Platform Third Edition. USA: Pragmatic Programmers, LLC. Demers, Matt. (2011). [New Game Review] Battleheart Brings Functional, Frantic Fantasy Combat
to
Android.
Diakses
3
November
2011.
(http://www.androidpolice.com/2011/05/16/new-game-review-battleheart-bringsfunctional-frantic-fantasy-combat-to-android/) Erik T. Ray. (2003). Learning XML, 2nd Edition . USA: O'Reilly Gartner. (2011). Gartner Says Sales of Mobile Devices in Second Quarter of 2011 Grew 16.5 Percent Year-on-Year; Smartphone Sales Grew 74 Percent. Diakses 30 Oktober 2011. (http://www.gartner.com/it/page.jsp?id=1764714) Gartner. (2011). Gartner Says Worldwide Mobile Application Store Revenue Forecast to Surpass $15
Billion
in
2011.
Diakses
(http://www.gartner.com/it/page.jsp?id=1529214)
30
Oktober
2011.
Grace, Lindsay. (2005). Game Type and Game Genre. Diakses 27 Oktober 2011. (http://aii.lgrace.com/documents/Game_types_and_genres.pdf) Gramlich,
Nicolas.
(2010).
AndEngine
Summary.
Diakses
3
November
2011.
(http://code.google.com/p/andengine/) Liang,
Y.Daniel.
Characteristic
of
Java.
Diakses
2
November
2011.
(http://cs.armstrong.edu/liang/JavaCharacteristics.pdf) Liang, Y.Daniel. (2011). Introduction to Java Programming comprehensive version eight edition. New Jersey: Pearson Higher Education. Mousavi, Dann. (2011). Spectral Souls – Resurrection of the Ethereal Empires. Diakses 3 November 2011. (http://androidpimps.com/androidgames/spectral-souls-resurrection-ofthe-ethereal-empires/) Rollings, Andrew, Earnest Adams. (2003). Andrew Rollings and Earnest Adams on game design. USA: New Riders Publishing. Scheel, Jesse. (2008). The art of game design: a book of lenses. Burlington: Morgan Kaufmann Publishers. Scott W. Ambler. (2005). A Manager's Introduction to The Rational Unified Process (RUP). Diakses
5
November
2011.
(http://www.ambysoft.com/downloads/managersIntroToRUP.pdf) Shneiderman, Ben. (2010). Designing The User Interface, Strategy for Effective HumanComputer Interaction Fifth Edition. USA: Pearson Education, Inc. Thohir,
Mudjahirin.
(2009).Kebudayaan
Indonesia.
Diakses
24
Februari
2012.
(http://staff.undip.ac.id/sastra/mudjahirin/2009/04/20/kebudayaan-indonesia/) Vaughan,Tay. (2006). Multimedia: Making It Work Edisi 6. Yogyakarta: Penerbit Andi. Whitten, JL., & L.D. Bentley . (2007). System Analysis and Design Method. New York: McGraw Hill/Irwin.
Tactical Role Playing Game “Protector of Acacia” using Android 2.3 and AndEngine framework Andy Budy Pratama Binus University, Jakarta, DKI Jakarta, Indonesia
dan
Hutomo Widjaja Binus University, Jakarta, DKI Jakarta, Indonesia
Abstract The research objective is to design the 2-dimensional tactical role playing game using the Android framework 2.3 and AndEngine. The method used is the study of literature, analysis of user needs, and analysis of similar games. The result of this research is two-dimensional game called "Protector of Acacia" that uses the Android 2.3 and AndEngine framework. The study also produced the "Protector of Acacia Content Editor" that is useful in the manufacture of the item and skill for the game character "Protector of Acacia". The conclusions derived from this thesis research is the creation of two-dimensional tactical role playing game with Android 2.3 and AndEngine framework, content editor for the game Protector of Acacia, and a means to attract students in the development of games that contain Indonesia elements. Keyword : Game, Tactical Role Playing Game, Android, AndEngine
1. Introduction 1.1
BackGround Development of mobile markets worldwide has increased rapidly, it is spurring more
people to create applications that draw on mobile devices like smartphones (Gartner, 2011). Hardware and software technology that has been growing rapidly enabling a variety of applications including the smartphone game can be played with ease, although such applications require a high specification. In addition, smartphone technology is also enabling users to complete its works, or in other words can be the assistant to the user in question. Currently smartphones have supported a more interesting game applications because it has a multi-touchscreen and accelerometer. A game has a unique system that distinguishes it from other games (grouped into various genres). One example is the genre of game Tactical role-playing game (TRPG) game that combines elements of traditional RPG and strategy games. As in most RPGs, players will control a party and fight the enemies that have a certain amount. This genre of gameplay strategy to include tactical movement patterns in an isometric or orthogonal grid. Unlike other genres, usually do not give TRPG multiplayer features. TRPG games on mobile platforms that have a cultural element Indonesia is still small and rare. This makes the authors wanted to develop her game genre on mobile devices TRPG and simultaneously introduce Indonesian culture to the world of smartphone users. Making this game will use the Android operating system that is popular today, Android supports a wide range of smartphone devices from various vendors, and use the Java language in coding applications, and supports multithreading, touchscreen, and accelerometer. Tactical role-playing game (TRPG) which will be developed to allow players to
control the action that has fought some of the character roles. The battle will be done in rotation between the existing character and enemies. The game is also supported by artificial intelligence (artificial intelligence) on the enemy so as to make this game more interesting to play.
1.2
Scope The scope of this thesis is in the making: 1. The design of gaming applications on the client side using the Android SDK technology on Android operating system. 2. Questionnaire respondents is the need for Android smartphone users who ever played the game. 3. Applications designed using 2-dimensional technology and use the touchscreen. 4. Making gaming applications that include: a. Making the game script, which is an overview or outline of the game. b. Making the game story, the story line will be inserted in the game. c. Making the gameplay, the way the game is going to happen in the game. d. Making object-object game, which includes characters, consumable items, and equipment. e. Manufacturing stages, namely the location of the battle and there are areas in the game. f. Manufacture of artificial intelligence, applied to the movement of the enemy.
1.3
Objectives and Benefits Purpose of making this application are: a. Introduced elements of the Indonesian culture through the components in the game. b. Make the game 2-dimensional Tactical Role Playing Game by using artificial intelligence to the enemy as a means of entertainment on the Android smartphone. c. Introduced the use AndEngine framework.
The benefits of making this application are: a. Encourage the interest of students or mobile application developers to develop applications on the smartphone game made in Indonesia. b. Some elements of the culture of Indonesia will be known by the players of this game. c. For example, using a 2D game application framework AndEngine TRPG.
1.4
Research Metodologi The methodology used to design this application is a method of Rational Unified
Process (RUP). Analysis phase includes the study of literature, analysis of user needs, and analysis of similar games. Literature study is done by reading and studying literature books that relate to game design, game battle system, character modeling, and Android. User needs analysis conducted by distributing questionnaires. While the analysis performed with similar games to review the strengths and weaknesses of the game. The application design phase consists of story, gameplay, character, artificial intelligence, game interface, and features in the game. Sprite animation and character design models using Adobe Photoshop and Adobe Flash, while for the game interface design using a storyboard. Stages of writing code to use technology and software Android SDK Eclipse as editor and compiler. Once it's done testing and maintenance for applications that have been made.
1.5
Systematics of Writing
Chapter 1 Introduction This chapter discusses the research background, scope, purpose and benefits of writing, the methodology of writing, and systematics of writing used in the preparation of this thesis. Chapter 2 Theory Foundation This chapter discusses the basic foundation theories used in this thesis. Topics covered include the theoretical basis of the general theory and special theory. Chapter 3 Analysis and Design In this chapter will discuss the analysis of user needs through a questionnaire distributed,
analysis of similar games, doing game design, class diagram, use class diagrams, sequence diagrams, activity diagrams and storyboards. Chapter 4 Implementation and Evaluation This chapter will describe the implementation of applications including system specifications, procedures for use, and the results of the evaluation questionnaire. Chapter 5 Conclusions and Recommendations This chapter is a conclusion that the authors get on the thesis writing. In this chapter there is also the author of the conclusions and recommendations to various parties associated with this research report for future development.
2. Landasan Teori 2.1.
Multimedia By Tay Vaughan (2006), multimedia is a combination of text, photographs, graphic art,
sound, animation, and the elements - elements digitally manipulated video. The elements contained in the multimedia is as follows: 1. Text Text is the basic medium in a multimedia system. In other aspects of life, the text is used to exchange thoughts, ideas, and facts. A text can be interpreted into some sense, therefore the accuracy and density in the selected text is very important. In multimedia, text can be used in the title, menu, navigation, and multimedia content. 2. Vote Digital audio is created when converting a sound wave into the numbers, where the process is called digitizing (digitizing). Digital sound is the sound
samples. Any fraction of a second n, sound samples taken and stored as digital information in bits and bytes. The quality of digital recording depends on how often samples are taken (sampling rate or frequency, measured in kilohertz, or a thousand samples per second) and how many numbers are used to represents the value of each sample (bitdepth, sample size, resolution, dynamic range). The more often samples are taken and the more data that is stored on the sample, the better the resolution and sound quality when playing arrested. 3. Picture Images are graphic and visual representation of information that can be displayed on a computer screen or printed. Images have an important role in multimedia for navigation equipment, components of user interface, help system, and clip-art. In general, the image can be divided in two formats, namely Bitmap and vector images. Bitmap or Raster Images are stored in an array of pixels representing the image as an array of dots (pixels). A pixel is the smallest element in the resolution of the computer screen (screen resolution) and each pixel represents a specific color but can have 2 or more range of colors (color depth). Vector images are stored as a form of geometry (set of graphics primitives) are defined mathematically to display images. Vector images can be resized without losing the integrity of the original image. 4. Animation Animation is the static presentations come alive. Animation is a visual change over time and gives greater strength in multimedia projects and web pages. Television video of 30 frames or images per second, the speed at which each frame is replaced by another frame make images appear to move smoothly.
Picture of life in the film is usually taken with a rate of 24 frames per second. 5. Video Video is the image "moves" are captured using a movie camera or a video camera which is then stored in a special format.
2.2.
Human Computer Interaction By Ben Shneiderman (2010), human and computer interaction (IMK) is the discipline
dealing with the design, evaluation, and implementation of interactive computing systems for human use, as well as studies of the phenomena associated with it. An interactive system can be defined if the system can communicate with users, so the system can be useful to the user. In designing the interface (interface) there are eight golden rules (Eight Golden Rules) which must be addressed: 1. Trying to be consistent Consistent action is required in similar situations. Consistency must also be applied to the prompts, menus, help screens, color display, capitalization, capitalization, and so forth.
2. Support the universal usability Expected there to help novice user to master a few basic features. In addition, with increasing frequency of use, users also want to reduce the number of interactions and increase the rate of such interactions. stands, the function keys, hidden commands, and macro facilities are very helpful expert user. 3. Offers informative feedback
Expected of any action taken, the user gets feedback (feedback) is informative of the system. For actions that often occur, the feedback given can be made in a simple, while for the action that is rarely done and should show significant feedback in detail. 4. Designing a dialogue that provides closure (final state) Sequence of actions should be grouped into the early, middle, and end. An informative feedback should give you the satisfaction of completion, a sense of relief, a sign to stop the plans and options from their minds, and clear indications that the way to prepare for subsequent actions. 5. Offers a simple error handling The system created is not expected to result in serious errors when used by the user. If a user makes a mistake, the system is expected to detect such errors and provide a good problem-solving solutions and simple. 6. Allow easy reversal of actions The feature is expected to return (back) to the previous activity. It is intended that the user can return to previous activity if the user was doing something wrong so that users can fix it and in trying to encourage users options for action that they do not recognize. 7. Supports internal control center Make the users use the system to be in control, not as a control. 8. Reducing the burden of short-term memory Given the limitations of human information processing in the short term, a system is expected to be made to look as simple as possible, the frequency of movement of the window is reduced and other things that can overload the user memory. Information such as abbreviations or codes should also be provided.
In addition there are 8 golden rules (Eight Golden Rules) that must be considered in the design of interface design, there are also five measurable human factors used to evaluate the design of interface design, namely: 1. Learning time Long it takes the average person to learn how to perform a task that is relevant. 2. Performance speed Long time required to perform a task. 3. Error Rate Many errors and any errors made by the user. 4. Memory The ability of users to maintain their knowledge after a period of time. 5. Subjective Satisfaction User satisfaction on various aspects of the system, including the user the opportunity to provide feedback.
2.3.
Indonesian Culture
According Mudjahirin Thohir (2009) understanding of Indonesian culture is: a. First, the culture (Indonesia) is a culture that has been formed. This definition leads to the notion that Indonesia is a whole culture that socialized knowledge / internalization of previous generations, which is then used by the community of Indonesia as a way of life. If tracked, documented in this cultural artifact / or text. Looking at this in terms of culture, we will easily get stuck on two things. First, what is already accepted it as something already good even complete. Phrases such as
Javanese culture is the culture of the valuable, is the best example. Here, the socalled culture is a text document (Java including oral literatures) to be used as guidelines if we do not want to lose all his java. The phrase: "ora Java" or "Durung Java" is a phrase to assess the behavior of (Javanese) which has been shifted from the text. b. Second, culture (Indonesia) is a culture that is being formed. In the second definition describes the realization that in fact, never (read: too few) there are any people in this world who do not come into contact with other cultures and civilizations, including the culture of Indonesia or Javanese culture. It's just that there are serious questions to choose this second definition, then that is how our culture can stand up to sort the various elements of foreign cultures that tend to capitalism that in fact, within certain limits, negative (read: not suitable)? At the same time, global capitalistic culture, has entered into various recesses of people's lives "without" can be prevented. If so, the question is: restrict, reject, or take over the positive values being offered. This issue had already been a debate over cultural experts, as adopted by Armen et al versus Sutan Pane Fate Alisyahbana (See the book Cultural Polemic), and even now our attitude is not clear juntrungnya. c. Third, is the culture (Indonesia) is a culture that is planned to be established. This is the definition of a futuristic, which need to be present and represented by people who want Indonesia to the front MUST BETTER. This is what should be the focus of serious study for observers of Indonesia, wa bil specific students and teachers of cultural science.
2.4.
Game By Ernest Adams (2010), game play is the kind of activities undertaken in the
context of pretenders in the real world, where participants try to achieve a goal made in accordance with existing rules. Meanwhile, according to Jesse Schell (2008), the game is a problem solving activity, with an approach that is fun. There are four basic elements that make up a game (elemental tetrad), the Mechanics, Story, Aesthetics, and Technology. 1. Mechanics Mechanics are the procedures and regulations in a game. Mechanics explains the purpose of the game, how players can try to achieve that goal is, and what would happen if they tried to do so. 2. Story Story is a sequence of events that happened in a game, story could run and prescripted linear or branched and can also appear suddenly. 3. Aesthetics Aesthetics is how to look, sound and taste that is in the game. Aesthetics is a very important aspect in the design because it directly affects the game play experience. 4. Technology Technology is basically a medium in which the Aesthetics will take place, where the Mechanics will happen, and how the Story will be presented in the game.
Figure 2.1 Elemental tetrad (Ernest Adams, 2010)
2.5.
Gameplay According Earnests Adams (2010), consisting of gameplay challenges players
must face to achieve the goal of the game and the actions that are allowed to face the challenges that exist. By Lindsay Grace (2005), the genre of the gameplay is divided into several types, namely: 1. Action Action games are games that offer lots of action as the main attraction. The skills most needed to play this game well is a reflex response from the players. 2. Adventure Adventure games are the games that offer exploration areas and solve puzzles as a major attraction. Judging from the games that are already there, the game offers the
Adventure genre's most interesting story than the game with another genre. Reasoning, creativity, and curiosity are the skills most needed to play this game well. 3. Puzzles Puzzle game is a puzzle game that offers as its main attraction. These games are usually released via the web and have a low budget in the making. 4. Role Playing Role Playing game (RPG) is a game that offers players a chance to feel himself to be a character from the game. Role Playing games usually offer a lot of character, the long duration of the game, and technically the character set.
5. Simulation Simulation games are games that have the main elements of the ability to present a situation similar to the real world. Simulation games provide fun memalui reenactment. 6. Strategy Strategy games are the games that entertain through reasoning and problemsolving process.
2.6.
Tactical Role Playing Game (TRPG) Tactical RPG or RPG Strategy is often known, is a mixture of elements of turn-
based strategy game on PC with RPG character development process on the console. The most famous example is Final Fantasy Tactics, up to this genre is often defined as "a game similar to Final Fantasy Tactics" (This is ironic because the FFT is highlighted in
Japan for being too similar to previous titles, Tactics Ogre, but this is another story) . (Everything2, 2003) Tactical RPG is a war game where each unit was developed as a character on the console RPG. Generally, the only game that balances the importance of these two elements are considered as a Tactical RPG. Common elements of the Tactical RPG, among others: •
The battlefield like a chessboard, often depicted with a clear box.
•
Using an isometric view of the camera.
•
Many of the classes for the character, obtained by raising the level or similar with experience points.
•
Complex, a heavy political story, not too dependent with a period of history.
•
Fantastic, usually contain a high fantasy, but sometimes uses science fiction setting.
•
An emphasis on stories that have been determined, not random, battle, with the story as told during the battle itself.
•
Abstract, is not a realistic fight. Because most of the Tactical RPG is an RPG on the console and also contain high levels of fantasy, the battle will generally include abstractions such as the alternating turn and hit points.
•
The difficulty level is very high, especially related to death. Mortality tends to permanent, or at least very difficult to be revived.
Not all of these elements are always dibutuhakan to attend, but the game does not include most of the elements will be considered using the genre to another.
2.7. Game Design By Jesse Schell (2008) game design is the action that determines how it should be a game. By Andrew Rollings and Ernest Adams (2003), game design is the process of imagining a game, defining how it works, describes the elements that make the game (conceptual, functional, artistic, etc.), and then transmit the information to the team build the game. By Bob Gates (2004), making the game will start from the document-making game. Game used to be a foundation document that game development, and attract the reader's interest and inform the overall picture of the game to be made. Here is an element in the game document: 1. High Concept High Concept is a general overview of the game, about what the game, usually displayed in one or two sentences. 2. Genre Explain the genre is to be used in the game. 3.
Gameplay Section summarizes the actions that will be the player when the player plays the game. Typically, this section starts from defining genre of the game and then describes how the creative and entertaining.
4. Features This section displays a collection of the main selling points of the game, which can help identify the skills of the game. 5.
Setting
This section summarizes the world in the game and its content in an interesting and unique in a few paragraphs 6.
Story If the game has a story, then this section gives a short synopsis of the story in the game.
7. Target Market This section describes the target market that will target game. 8. Target Hardware Platform This section identifies whether a gaming platform that will be used to play the game. 9. Estimated schedule and budget This section and schedule estimates the funds needed to make the game. 10. Competitive analysis This section compares the game to be made by competitors in the market that have a similar genre. 11. The team This section displays a collection of information from the team of game makers and their role will they do on making the game. 12. Document summary This section is useful to convince the publisher that this game will succeed in the marketplace.
2.8.
Rational Unified Process (RUP) According to Scott W. Ambler (2005) Rational Unified Process (RUP) is a
prescriptive systems development process is well defined and is often used to develop the system of object-based or technology-based components. RUP is based on the principles
of software engineering such as iterative, requirements-driven, and architecture-centric approach to software development.
Gambar 2.2 RUP life cycle (Scott W. Ambler, 2005)
The image above illustrates the RUP life-cycle or often also called "bumps charts". Horizontal mound for each section gives a rough estimate for each of the power needed for each phase. As an example can be seen most of the Business Modelling held at Inception phase, although it will continue until the beginning of the Transition phase. Phases contained in the RUP are as follows: •
The Inception Phase Inception phase aims to convince stakeholders of the project objectives. Therefore needed to determine the boundary requirement portion of the project.
•
The Elaboration Phase
In the Elaboration phase, requirements will be explained in detail and determine the architecture of the system. •
The Construction Phase Construction phase is focused on making the system to the point where the system is ready for distribution.
•
The Transition Phase Transition phase focuses on delivering systems into the production phase. There will be a tester and test the system end-user and there is a rework and adjustment system.
2.9.
Java Java was developed by a team led by James Gosling at Sun Microsystems. Was
originally called Oak, designed in 1991 for use in household appliances chip. In 1995 the name was changed to Java and redesigned to support Internet applications. (Y. Daniel Liang, 2011) Java is a full-featured programming language and is used for various purposes that can be used to build critical applications as well. Characteristics of Java are: 1.
Java is Simple There is no easy language, but Java a little easier than object-oriented programming language C + + is popular and has become the dominant language before Java appeared. Part of Java was modeled based on C + +, but simplified and existing features have been improved. Java replace multiple inheritance in C + + to interface and eliminating the pointer feature. Java also uses automatic memory allocation and provides a garbage collector, while in C + + programmer must allocate and use memory mendealokasi.
2. Java is Object-Oriented Java was designed from the beginning as an object-oriented programming language. Object-oriented programming is a process approach that replaces the traditional procedural programming in programming techniques.
3. Java is Distributed Distributed computing involves several computers that work together in a network. Java is designed to make distributed computing easier. Due to the integrated network capabilities on Java, write network programs such as sending and receiving data to and from the file. 4.
Java is Interpreted Programs in Java are compiled into Java Virtual Machine code called bytecode. Bytecode is not tied to a particular machine and can run on any machine that has a Java interpreter, which is part of the Java Virtual Machine (JVM).
5. Java is Robust Robust means reliable. Java emphasis on early checking for possible errors, because the Java compiler can detect faults which first appear at execution time. Java also has a runtime exception handling features to aid programmers. 6. Java is Secure As an Internet programming language, Java is used on a network and a distributed environment. When running a Java program, the program will not destroy the system because Java implements several security mechanisms to protect the system from threats.
7. Java is Architecture-Neutral
Due to the interpreted Java, allowing Java to be architecture-neutral or platformindependent. With the Java Virtual Machine (JVM), a program created to run on any platform. 8. Java is Portable Due to the architecure-neural Java, Java programs are portable. Such programs can be run on multiple platforms without the need to be recompiled. Java is also portable environment for hardware and new operating systems, Java compiler itself is also written using Java. 9. Java's Performance The ability of Java is sometimes criticized, the execution of the compiled bytecode is not as fast as C + + language. Due to the interpreted Java, bytecode is not directly executed by the system but run through the interpreter. However, speed is more than enough for most interactive applications. 10. Java is multithreaded Multithreading is the ability of a program to perform multiple tasks simultaneously. Multithreaded programming is well integrated in Java, whereas in other languages have to call a specific procedure in the operating system to enable multithreading. 11. Java is Dynamic Java is designed to adapt to the evolving environment oada. The new class can be opened without recompiling. Developer is not required to make, and the user to install the latest version of the software.
2.10. Android According to Ed Brunete (2011), Android is an open source software toolkit for
mobile phone made by Google and Open Handset Alliance. Android has been used millions of mobile phones and other handheld devices, making Android a major platform for application developers. Although some features have appeared on other operating systems, but Android is the first operating system that incorporates the following features: • Development platform is completely open and free and open source linux based. The makers of handheld devices like this because they can use and modify the platform without having to pay royalties. Developers like it because they know that the platform has an option and not specific to one vendor only. • Component-based architecture inspired by the Internet mashups. Part of an application can be used in different ways. Even congenital component can be replaced with artificial components themselves. • Many service luggage service. Location-based services using GPS that can be used to create location-based applications. SQL database that can be used for storing data locally. Browser and map views that can be used in applications. • Life cycle of the applications that run automatically. Applications are separated by other applications with multiple layers of security, which will provide greater system stability has never been found in previous smartphones. So that an application could not be turn on or shut down other applications. • The graphics and sound quality. Combined 2D vector graphics, animation based on Flash, with 3D graphics using OpenGL to enable a variety of games and business applications to run properly. Android provides a standard format codec for voice and video are common.
• Portability to different hardware is present and the future. All programs written in Java and executed by the Android Dalvik Virtual Machine so that code can run on different hardware architectures. Supports various input methods such as keyboard, touchscreen, and trackball. Can customize the user interface according to the resolution and screen orientation.
Here is a look of the system architecture of Android:
Figure 2.3 Android System Architecture (Ed Brunete, 2011)
•
Linux Kernel Android is built on solid foundations and has been proven to: Linux Kernel. Android uses Linux for memory management, process management, network and other operating system services.
•
Native Libraries
Layer above the kernel is the default library of Android. Library is written in C or C + +, used for a particular hardware architecture used for the device, and already be installed by the device vendor. Some native libraries include: surface manager, 2D and 3D graphics, media codecs, SQL database, and browser. •
Android Runtime There are also over Android runtime kernel, consisting of the Dalvik Virtual Machine (DVM) and the core libraries of Java. DVM is a Java implementation is done by Google, optimized for handheld devices. All application code will be written in Java and will be run by the DVM.
•
Application Framework Above native runtime libraries and there is a layer Application Framework, which provides high-level components that will be used to create applications. Some application frameworks such as: activity manager, content providers, resource manager, location manager, notification manager.
•
Applications and Widgets The highest layer of the architecture is Android Application and Widgets. Users will only see this part, and not knowing what happened to the other layer. Application is a program that can take over the whole screen and interact with users. Meanwhile, widget (sometimes called gadgets) only runs on some small space home screen.
2.11. XML XML features, form, label, organize and protect information. XML to do with symbols embedded in the text of the so-called markup. Markup enhance the meaning of information in a certain way, to identify the parts and how they relate to each other. For example, when you read a newspaper, you can distinguish between articles that are separated by distance and their position on the page and use different fonts for titles and headings. Markup works the same way, except instead of using the distance and line, using the XML symbol.
Figure 2.4 XML example
2.12. UML (Unified Modeling Language) According to Jeffrey L. Whitten and Lonnie D. Bentley (2007), Unified Modeling Language (UML) is a collection of modeling terms used to specify or describe a software system in the context of the object. UML divided into several components: 1. Use Case Diagram Use Case Diagrams describe the functionality of the system from the external user's perspective and from the material and terminology that they understand. To complete
a request that requires interaction with users or experts to accurately and completely.
Gambar 2.5 Use Case Diagram example (Jeffrey L. Whitten dan Lonnie D. Bentley, 2007) Use Case Diagram has the following components: a. Actor Actors are actors who start system activity, use case, with the aim of completing some business task that produces something that can be measured.
b. Relationship Relationship is described by a line between two symbols that describe the relationship between the two symbols. 2. Activity diagram Activity Diagram illustrates the sequential flow of activity or business process use case. This diagram can also be used to model the logic of a system.
Activity diagram has the following components: a.
Solid points At activty diagram, describing the beginning of a solid point of the process
b.
Rectangle with obtuse angle In the activity diagram, a rectangle with obtuse angle describes the tasks that need to be done
c.
arrow In the activity diagram, the arrows depict targets that initiate an activity
d.
Diamond In the activity diagram, diamond describes an activity that involves a decision
e.
Solid point on the circle At activitydiagram, solid point in the circle describing the end of a process
f.
synchronization Bar A symbol that can separate and combine activities that run concurrently
3. Sequence diagram Sequence diagrams illustrate how objects interact with each other through messages in the execution use case or operation. This diagram illustrates the steps messages sent and received between objects. 4. Class diagram Class diagrams describe the structure of the object and the structure of the system. On this diagram there is also multiplicity, relation generalization / specialization, and relationship aggression.
Gambar 2.6 Class Diagram example (Jeffrey L. Whitten dan Lonnie D. Bentley, 2007)
2.13. AndEngine AndEngine is a 2D OpenGL Game Engine for the Android platform that was created by Nicolas Gramlich in mid-2010. Nicolas Gramlich AndEngine created to meet the need for a game development framework which is free and easy to use. More than 2000 games that use the framework AndEngine been marketed, and the code of AndEngine has executed more than one million times. Here are the features offered by AndEngine: (http://code.google.com, 2010) •
Android-Optimized AndEngine optimized to be a framework that works on the Android platform.
•
Android 1.6 Compatibility AndEngine can be used starting from the Android version 1.6 (Donut).
•
SplitiScreen AndEngine supports split-screen on Android devices.
•
Multiplayer Network
AndEngine support facilities for playing multiplayer. •
Live-Wallpapers AndEngine support the creation of life moving wallpaper.
•
MultiTouch AndEngine support the use of multitouch technology on devices that support multitouch.
•
Physics-Engine (Box2D) AndEngine support in making applications of physics calculations using Box2D technology.
3. Conclusion Conclusions obtained from the analysis, design, implementation and evaluation of Acacia Protector game are as follows: 1. Game Protector of Acacia has a control and display in accordance with market interest can be seen from the majority of the results of the evaluation questionnaire like this game. 2. After playing the game Protector of Acacia, the majority of evaluation respondents (60%) claimed to be interested to make a game that has some elements of Indonesia in accordance with the results of the evaluation questionnaire on the number 8. 3. Players keen to recommend the game Protector of Acacia his friends according to the results of the evaluation questionnaire on the number 9. 4. Use of conditional techniques framerate can conserve battery power by 19.95% on smartphone.
References
Adams, Ernest. (2010). Fundamentals of game design 2nd edition. Berkeley: New Riders Publishing. Anonim. (2003). Tactical RPG. Diakses 24 Februari 2012. (http://dirkriehle.com/computerscience/research/1997/cacm-1997-frameworks.html) Bates, Bob. (2004). Game Design Second Edition. Boston: Thomson Course Technology PTR. Bäumer, Dirk, Guido Gryczan, Rolf Knoll, Carola Lilienthal, Dirk Riehle, and Heinz Züllighoven. (1997). Framework Development for Large Systems. Diakses pada 24 Februari
2012.
(http://dirkriehle.com/computer-science/research/1997/cacm-1997-
frameworks.pdf) Brunete, Ed. (2011). Hello, Android Introducing Google’s Mobile Development Platform Third Edition. USA: Pragmatic Programmers, LLC. Demers, Matt. (2011). [New Game Review] Battleheart Brings Functional, Frantic Fantasy Combat
to
Android.
Diakses
3
November
2011.
(http://www.androidpolice.com/2011/05/16/new-game-review-battleheart-bringsfunctional-frantic-fantasy-combat-to-android/) Erik T. Ray. (2003). Learning XML, 2nd Edition . USA: O'Reilly Gartner. (2011). Gartner Says Sales of Mobile Devices in Second Quarter of 2011 Grew 16.5 Percent Year-on-Year; Smartphone Sales Grew 74 Percent. Diakses 30 Oktober 2011. (http://www.gartner.com/it/page.jsp?id=1764714) Gartner. (2011). Gartner Says Worldwide Mobile Application Store Revenue Forecast to Surpass $15
Billion
in
2011.
Diakses
(http://www.gartner.com/it/page.jsp?id=1529214)
30
Oktober
2011.
Grace, Lindsay. (2005). Game Type and Game Genre. Diakses 27 Oktober 2011. (http://aii.lgrace.com/documents/Game_types_and_genres.pdf) Gramlich,
Nicolas.
(2010).
AndEngine
Summary.
Diakses
3
November
2011.
(http://code.google.com/p/andengine/) Liang,
Y.Daniel.
Characteristic
of
Java.
Diakses
2
November
2011.
(http://cs.armstrong.edu/liang/JavaCharacteristics.pdf) Liang, Y.Daniel. (2011). Introduction to Java Programming comprehensive version eight edition. New Jersey: Pearson Higher Education. Mousavi, Dann. (2011). Spectral Souls – Resurrection of the Ethereal Empires. Diakses 3 November 2011. (http://androidpimps.com/androidgames/spectral-souls-resurrection-ofthe-ethereal-empires/) Rollings, Andrew, Earnest Adams. (2003). Andrew Rollings and Earnest Adams on game design. USA: New Riders Publishing. Scheel, Jesse. (2008). The art of game design: a book of lenses. Burlington: Morgan Kaufmann Publishers. Scott W. Ambler. (2005). A Manager's Introduction to The Rational Unified Process (RUP). Diakses
5
November
2011.
(http://www.ambysoft.com/downloads/managersIntroToRUP.pdf) Shneiderman, Ben. (2010). Designing The User Interface, Strategy for Effective HumanComputer Interaction Fifth Edition. USA: Pearson Education, Inc. Thohir,
Mudjahirin.
(2009).Kebudayaan
Indonesia.
Diakses
24
Februari
2012.
(http://staff.undip.ac.id/sastra/mudjahirin/2009/04/20/kebudayaan-indonesia/) Vaughan,Tay. (2006). Multimedia: Making It Work Edisi 6. Yogyakarta: Penerbit Andi. Whitten, JL., & L.D. Bentley . (2007). System Analysis and Design Method. New York: McGraw Hill/Irwin.