PEMBUATAN GAME SUPER SQUADRON PADA PLATFORM ANDROID MENGGUNAKAN FRAMEWORK LIBGDX
NASKAH PUBLIKASI
dijukan oleh Aditya Hastungkoro Hadi 09.01.2571
kepada SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER AMIKOM YOGYAKARTA YOGYAKARTA 2015
1
PEMBUATAN GAME SUPER SQUADRON PADA PLATFORM ANDROID MENGGUNAKAN FRAMEWORK LIBGDX Aditya Hastungkoro Hadi 1), Bayu Setiaji 2), 1)
Teknik Informatika STMIK AMIKOM Yogyakarta 2) Dosen STMIK AMIKOM Yogyakarta Jl Ringroad Utara, Condongcatur, Depok, Sleman, Yogyakarta Indonesia 55283 Email :
[email protected] 1),
[email protected] 2)
fikir, otot motorik, dan media pembelajaran. Bahkan banyak orang dewasa memainkan permainan untuk berbagai tujuan, seperti refreshing, kompetisi mata pencaharian, dan sebagainya.
Abstract - Game in this era recently becoming one of important needs of people from many segmentation. Not only to full fill the needs of joyness but also becoming a part of lifestyle in common social life. Game itself also becoming a part one of biggest industries in the world, like food and automotive which are become never-ending demand.
Seiring dengan berkembang pesatnya teknologi didalam smartphone, maka semakin menariklah permainan atau game yang dapat disematkan di dalamnya, mulai dari game 2D, 3D, single player, maupun multi player, dan sebagainya. Begitu pula dengan genre permainan di dalam smartphone itu sendiri yang sangat bermacam-macam seperti RTS (Real Time Strategy), Side Scrolling, Top View, Puzzle, Tycon, dan sebagainya.
The problem currently, game is still seen as something complex and highly sophisticated in term of the making process, whereas it’s relatively not. Making game could be as simple as playing it if we understand the requirement and the tools needed. Some say, working on game industry is one of enjoyable job as it combine creativity, strategy, and unlimited imagination. Android itself is one of rapidly growing operating system which owned and actively used by more than fifty percent of smartphone user in the world. And combined with easy to use tools for game making such as libGdx, it will make our imagination and creativity exceed the limit.
Dari uraian tersebut, maka jelas terlihat masih banyak sekali peluang dalam industri game terutama pada gadget yang sedang booming dewasa ini. Android sendiri merupakan sistem operasi yang berkembang secara pesat dan merupakan salah satu sistem operasi yang banyak digunakan pada perangkat mobile seperti gadget maupun smartphone. Sedangkan LibGDX sendiri merupakan sebuah library yang cukup powerful dalam membuat game karena dapat dikembangkan dalam berbagai genre game 2D maupun 3D. Oleh karena itu pembuatan game Super Squadron pada platform Android menggunakan library LibGDX akan sangat membantu dalam memperkenalkan metode keilmuan baru dalam pembuatan game.
Game Super Squadron is a game that aim to proof that with easy-to-use tools and free resource, we can make something briliant and brings joyness to our home. The concept of the game is quite simple, a kiling-time endless side-scrolling game that easy to play anywhere, anytime and to-the-pointx.
2.
Keywords: game, libgdx, android
2.1 1.
Pendahuluan
Landasan Teori Pengertian Game
Game (permainan) secara umum adalah sebuah aktivitas rekreasi dengan tujuan bersenang-senang, mengisi waktu luang, atau berolahraga ringan. Permainan biasanya dilakukan sendiri atau bersama-sama.
Permainan merupakan suatu bentuk pengejawantahan kreatifitas manusia guna memberikan manfaat bagi penggunanya. Permainan itu sendiri merupakan kebutuhan bagi perkembangan anak guna melatih daya
1
Sebuah game salalu memiliki komponen dan aturan. Kebanyakan game lebih mementingkan aturan ketimbang komponennya, namun beberapa game justru sebaliknya dengan lebih mementingkan komponen secara signifikan ketimbang aturannya, game seperti ini biasanya adalah game action. Komponen biasanya direpresentasikan dalam hardware, sedangkan aturan bisa direpresentasikan sebagai software, sehingga paduan dari keduanya mendeskripsikan game itu sendiri.
sebuah game akan terasa ganjil karena begitu sedikit informasi dan navigasi yang disediakan. Splash Screen merupakan sebuah tampilan dimana cover game tersebut akan dipajang layaknya sampul buku. Kemudian action phase, adalah fase dimana pemain memainkan game tersebut sesuai dengan gameplay-nya. Sedangkan In-game Menu adalah sebuah list menu dimana akan tampil ketika game tersebut ter-interrupt oleh sebuah keadaan sehingga game tersebut harus berhenti sejenak (pause).
Terdapat beberapa kriteria untuk menganggap sebuah kegiatan sebagai game, yaitu :
Kemudian, elemen tambahan dalam game dapat berupa main menu, help menu, credit screen, story line, level dan sebagainya.
1) Aturan permainan 2) Goal 3) Kompetisi 2.2
Pengertian Video Game
Software Dan Resource Yang Digunakan
2.4.1
Eclipse
Eclipse adalah sebuah IDE (Integrated Development Environment) untuk mengembangkan perangkat lunak dan dapat dijalankan di semua platform (platformindependent). Eclipse sendiri dapat digunakan untuk editor hampir semua bahasa pemrogramman. Selain itu, dengan dukungan plugin yang banyak maka Eclipse menjadi salah satu IDE favorit.
Menurut medianya, game yang dimainkan di dalam gadget, komputer atau telepon pintar biasa disebut dengan video game. Video Game telah berevolusi dari sistem grafis sederhana sampai menjadi kompleks dan mutakhir. Video Game adalah permainan yang menggunakan antarmuka gambar yang dihasilkan oleh piranti video untuk berinteraksi dengan pemain. Permainan video umumnya menyediakan sistem penghargaan, misalnya skor yang dihitung berdasarkan tingkat keberhasilan yang dicapai dalam menyelesaikan tugas-tugas yang ada di dalam permainan. Kata “video” pada “permainan video” pada awalnya merujuk pada piranti tampilan raster. Namun dengan semakin dipakainya istilah “video game”, kini kata permainan video dapat digunakan untuk menyebut permainan pada piranti tampilan apapun. Sistem elektronik yang digunakan untuk menjalankan permainan video disebut platform, contohnya adalah komputer, konsol atau smartphone. 2.3
2.4
2.4.2
Framework LibGDX
Definisi framework dalam sistem komputer sering diartikan sebagai kumpulan kode yang tersusun secara terstruktur yang bertujuan untuk dijadikan landasan dalam membuat program. Beberapa framework yang kompleks memberikan kemudahan dengan menambahkan fungsi-fungsi siap pakai yang bertujuan untuk mempermudah developer atau biasa disebut DRY coding (Don’t Repeat Yourself). Pada beberapa framework juga menyediakan feature untuk saling berkomunikasi dengan platform atau aplikasi lain.
Elemen Dalam Game
2.4.3
Pada umumnya, sebuah game memiliki beberapa elemen yang membentuk game itu sendiri. Tentunya tidak semua game memiliki elemen yang sama, sehingga elemen tersebut dapat dibagi menjadi 2, yaitu elemen utama dan elemen tambahan.
Adobe Photoshop
Adobe Photoshop, atau biasa disebut Photoshop, adalah perangkat lunak editor citra buatan Adobe Systems yang dikhususkan untuk pengeditan foto/gambar dan pembuatan efek. Perangkat lunak ini banyak digunakan oleh fotografer digital dan perusahaan iklan sehingga dianggap sebagai pemimpin pasar (market leader) untuk perangkat lunak pengolah gambar/foto, dan, bersama Adobe Acrobat,
Elemen utama dalam sebuah game adalah Splash Screen, Action Phase, dan InGame Menu. Tanpa ketiga elemen tersebut,
2
dianggap sebagai produk terbaik yang pernah diproduksi oleh Adobe Systems. 2.4.4
4.2.
Asset dalam kaitannya dengan pembuatan game, dapat dipecah menjadi 4 kategori, yaitu :
Overlap2D Editor
Overlap2D adalah sebuah tool untuk level, user interface, dan entity editor untuk developer game. Overlap2D bersifat open source yang mendukung integrasi dengan framework libGDX.
3.
Gambaran Umum
3.1.
Menu Flow
Pembuatan Asset
A. Gambar Segala elemen di dalam game yang dapat dilihat oleh mata kita membutuhkan asset gambar, mulai dari tombol, background, logo, icon, karakter, dan lain sebagainya. Format gambar terbaik yang biasa digunakan dalam pembuatan game adalah PNG (Portable Network Graphics), namun dalam beberapa kesempatan, guna mendapatkan kualitas gambar yang lebih baik, beberapa pengembang menggunakan format gambar TGA. Pada fase ini, software yang digunakan adalah Adobe Photoshop.
Dalam sub-bab ini, akan dijelaskan mengenai alur dari navigasi menu pada menu main menu dan action phase. Berikut ini adalah flow navigasinya agar lebih mudah dipahami.
B. User Interface Layout Setelah segala asset yang akan dipakai di dalam game selesai dibuat, maka tiba saatnya untuk fase penyusunan tata letak setiap gambar dalam membuat layout menu. Disinilah penggunaan software Overlap2D sangat membantu.
Gambar 1 Menu flow game Super Squadron
Namun dikarenakan keterbatasan waktu, menu Setting, Quit, Pause, Quit, Credits, Music, SFX dan Reset Data tidak akan dikerjakan.
4.
Implementasi dan Pembahasan
4.1.
Implementasi
Gambar 2 User interface game Super Squadron C. Data Level
Implementasi merupakan tindak lanjut dari hasil analisis dan perancangan sistem yang akan dibangun. Dan berdasarkan hasil dari analisis dan perancangan sistem yang sebelumnya. Tahap pembuatan game Super Squadron ini adalah sebagai berikut :
Berbeda dengan User Interface Layout, pada data level lebih banyak mengatur tentang layout di dalam gameplay. Pada tahap ini, pengembang dapat mengatur tingkat kesulitan game dengan menambahkan rintangan maupun tantangan lain di dalam game. Juga tak kalah penting, ditahap inilah dimana pengembang
3
membutuhkan banyak percobaan guna mendapatkan tingkat addictive secara maksimal.
untuk menanganinya adalah GameStage yang meng-extends class Overlap2DStage. Object GameStage merupakan object utama sebagai wadah dari semua scene atau page yang ada. Setelah user interface dapat ditampilka, maka dibutuhkan kode untuk menangani perintah user seperti touch press, touch drag, maupun touch release. Pada implementasinya, code atau script untuk menangani segala input dari user dimasukan ke object GameStage, kemudian script tersebut akan dengan sendirinya diterjemahkan menjadi listener oleh class Overlap2DStage dan libGDX. Hasil dari implementasi scene manager pada tahap pertama maka akan menampilkan gambar di bawah ini. a.
Gambar 3 Wall obstacle
Tampilan Layout Main Menu :
D. Suara Tak kalah penting, suara di dalam permainan memberikan feeling bermain menjadi lebih baik. Nada-nada yang lucu dan menggemaskan seringkali menjadi andalan untuk menambahkan feeling exciting dalam bermain game. Tentunya akan terasa berbeda ketika bermain game dengan suara dibandingan dengan bermain game tanpa suara.
4.3.
Implementasi Sistem
Implementasi sistem merupakan tahap penulisan kode kedalam sistem supaya siap dioperasikan. Adapun tujuan dalam tahapan implementasi ini adalah menyiapkan semua kegiatan penerapan sistem sesuai dengan rancangan yang telah ditemukan. 4.3.1.
Gambar 4 Main menu
Implementasi Scene Manager & User Interface Listener
Scene manager merupakan salah satu bagian penting dalam sebuah game. Scene manager dapat dianalogikan seperti halaman web pada sebuah sistem informasi web, dimana penguna dapat berpindah ke halaman/bagian lain dengan meng-klik tombol. Seperti yang sudah diterangkan sebelumnya, di dalam game ini menggunakan Overlap2D untuk menyusun layout user interface. Pada sisi code, class yang dibuat
4
b.
dimasukan ke objec GameStage yang kemudian diolah oleh class Overlap2DStage dan libGDX.
Tampilan Layout Gameplay :
Adapun beberapa bagian :
implementasinya
meliputi
A. Implementasi Main Actor Jump Implementasi ini bertujuan untuk membuat main actor dapat melompat tiap kali user menyentuh layar.
Gambar 6 Action phase screen Gambar 8 Contoh gameplay saat Action Phase c.
Tampilan Layout Failed Screen
B.
Implementasi Wall Generator
Implementasi ini bertujuan untuk membuat wall generator dimana wall akan selalu tergenerate dengan se-natural mungkin tanpa menimbulkan bug atau stuck.
5.
Kelebihan dan Kekurangan Sistem
5.1.
Kelebihan Sistem
Kelebihan game Super Squadron ini dari sisi pengembang antara lain : 1.
Gambar 7 Game over screen 4.3.2.
Implementasi Main Actor Logic dan
2.
Listener-nya Tokoh utama atau dengan kata lain main actor merupakan elemen utama di dalam game ini, dimana pemain dapat memberikan perintah kepada main actor untuk melakukan sesuatu. Pada implementasinya, sama halnya dengan implementasi user interface listener, code untuk logic pada main actor maupun kecerdasan buatan untuk rintangannya juga akan
3. 4. 5.
Fleksibel dengan penambahan feature dan perubahan karena code yang independen. Sebagai contoh, ketika kita ingin menambahkan scene atau page, kita hanya perlu menambahkan class dan script untuk menangani input. User interface layout yang flexible dan memudahkan game designer untuk mengubah layout. Bug yang relative sedikit karena library yang stabil. Mendukung porting multi resolusi Mendukung multi resource untuk tiap grup resolusi untuk menjaga kualitas gambar.
Kemudian, kelebihan game Squadron ini dari sisi user antara lain :
5
Super
1. 2.
3. 5.2.
Mudah dimainkan. FPS (Frame Per Second) cukup kencang sekitar 50 frame per second pada android mid-end yang membuat animasi menjadi sangat lembut. Size yang relative kecil.
Menambahkan feature rate Daftar Pustaka [1] Sudarmawan, M.T dan Dony Ariyus, Interaksi Manusia Dan Komputer, Yogyakarta, ANDI Yogyakarta, 2007. [2] David Saltaros Marquez dan Alberto Cejaz Sanchez, Libgdx Cross-platform Game Development Cookbook, PacktPub, 2014. [2] Stephanus Hermawan Susanto S.T, 2011, Mudah Membuat Aplikasi Android, Yogyakarta, ANDI Yogyakarta, 2011.
Kekurangan Sistem
Kekurangan game Super Squadron ini dari sisi pengembang antara lain adalah : 1.
2.
Belum integrasi dengan proguard secara otomatis. Proguard adalah sebuah tool yang dapat digunakan untuk mengurangi ukuran code dengan menghilangkan codecode yang tidak terpakai. Proguard juga dapat digunakan untuk mengacak nama method dan variable agar tidak dapat dibaca oleh pengembang lain. Dokumentasi library yang kurang lengkap sehingga terkadang sangat sulit untuk memahami kode.
6.
Kesimpulan dan Saran
6.1.
Kesimpulan
Biodata Penulis Aditya Hastungkoro Hadi, memperoleh gelar Ahli Madya Komputer (A.Md), Jurusan Teknik Informatika STMIK AMIKOM Yogyakarta, lulus tahun 2014. Saat ini menjadi Staf Teknis di PT. Time Excelindo (ISP) di Jakarta. Bayu Setiaji, M.Kom, memperoleh gelar Sarjana Komputer (S.Kom), Jurusan Teknik Informatika STMIK AMIKOM Yogyakarta, lulus tahun 2006. Memperoleh gelar Magister Komputer (M.Kom), Jurusan Teknik Informatika STMIK AMIKOM Yogyakarta, lulus tahun 2012. Saat ini menjadi Dosen di STMIK AMIKOM Yogyakarta.
Berdasarkan prosesproses pembuatan game Super Squdron yang telah dikerjakan, serta dari proses analisa, perancangan dan implementasi yang dilakukan sebelumnya, maka dapat diambil kesimpulan bahwa : 1.
2.
3.
6.2.
Dalam penentuan genre game, perlu dilakukan riset yang kuat untuk menentuan konsep dan gameplay yang diterima oleh pengguna. Penentuan software yang digunakan juga menentukan tingkat kesulitan dalam proses implementasi. Game Super Squadron ini dapat dimainkan oleh semua umur tanpa keahlian khusus dan tanpa proses belajar yang sulit. Saran
Beberapa saran yang diberikan dalam menanggapi game yang telah dibuatsekaligus sebagai masukan pembuatan game kedepan adalah : 1. 2. 3.
Menyelesaikan semua menu dalam game Menambahkan penyimpanan data highscore Menambahkan feature leaderboard
6