GAME BEPAY
TUGAS AKHIR
Oleh
FEBRIAN TUMENGGUNG
NIM : 49013012
Program Diploma 4 Teknik Elektro
TUGAS AKHIR
Oleh
FEBRIAN TUMENGGUNG
NIM : 49013012
Program Diploma 4 Teknik Elektro
Bandung, .................................
Disetujui oleh :
Pembimbing,
ii
ABSTARK
GAME BEPAY
Oleh
Febrian Tumenggung
NIM : 49013012
Program Studi Diploma 4 Teknik Elektro
Game merupakan hal yang kita temui dalam kehidupan sehari-hari. Mulai dari anak
kecil sampai dewasa pasti pernah bermain game. Saat ini paradigma kebanyakan orang
menganggap game hanyalah bermain biasa dan sekedar menghabiskan waktu untuk
mencari kesenangan. Padahal game juga berfungsi sebagai sarana pembelajaran. Hal
tersebut dimaksudkan agar unsur-unsur yang terdapat dalam game dapat digunakan
sebagai katalis dalam mencapai suatu tujuan.
Game Bepay merupakan game yang berkonten musik dengan memadukan unsur
kreativitas dan hiburan, yang terintegrasi secara online agar dapat dimainkan dimana
saja. Pengembangan dari game Bepay yang didesain dalam tugas akhir ini akan
membahas desain interface yang menggunakan controller yang telah di costume semirip
mungkin dengan instrument yang akan pakai, dalam bermain musik melalui game
Bepay.
Prinsip kerja pada game Bepay yaitu user akan menebak note-note lagu berdasarkan
tempo lagu yang dimainkan, dilengkapi dengan skor agar user dapat mengukur
kemampuannya dalam bermain musik. Di samping itu juga, game Bepay di integrasikan
dengan media sosial agar menjadi salah satu wadah hiburan bermain musik.
i
ABSTRACT
By
Febrian Tumenggung
NIM : 49013012
APPLIED SCIENCE IN ELECTRICAL ENGINEERING PROGRAM
Game is thing that we can encountered in daily life. Bigenning from from children to
adult have palyed game. Currently, paradigm most people consider game is only regular
playing and just spend time to find happiness. Though game also can function as a
learning tool. It is intended that the elements contained in the game can be used as
catalyst in achieving a goal.
Bepay game is a game that combines elements of music content with the creativity and
entertainment, integrated online that can be played anywhere. Development of Bepay
game designed in this final project will discuss the design of interface that use controller
has costume as closely as possible with instrument that will be used, in playing music
through the bepay game.
The working principle of the bepay game is user will guess notes of the song based on
tempo of the song played, completed with the scor so that user can measure user’s
ability in playing music. In addition, bepay game also can be integrated with social
media so that can be one of the container entertainment play music.
ii
KATA PENGANTAR
Puji syukur penulis panjatkan kepada Allah SWT, yang atas rahmat dan karuniaNya
penulis dapat menyelesaikan tugas akhir ini.
Selama melaksanakan tugas akhir ini, penulis mendapat bantuan dan dukungan dari
berbagai pihak. Untuk itu, penulis ingin mengucapkan terima kasih kepada:
Penulis menyadari bahwa tugas akhir ini bukanlah tanpa kelemahan, untuk itu kritik dan
saran sangat diharapkan. Akhir kata, semoga tugas akhir ini dapat bermanfaat bagi para
pembacanya.
Penulis
iii
DAFTAR ISI
Halaman
ABSTARK..................................................................................................................... i
ABSTRACT................................................................................................................... ii
KATA PENGANTAR.................................................................................................... iii
DAFTAR ISI.................................................................................................................. iv
DAFTAR GAMBAR..................................................................................................... vi
BAB I . PENDAHULUAN............................................................................................ 1
1.1 Latar Belakang................................................................................................ 1
1.2 Tujuan............................................................................................................. 2
1.5 Metodologi..................................................................................................... 3
2.4 MIDI............................................................................................................... 8
iv
Halaman
3.3 Diagram Alir Game Bepay............................................................................ 11
BAB V. PENUTUP....................................................................................................... 32
5.1 Kesimpulan.................................................................................................... 32
5.2 Saran.............................................................................................................. 32
DAFTAR PUSTAKA.................................................................................................... 33
v
DAFTAR GAMBAR
Halaman
Gambar 3.1 Diagram Konteks Koneksi Custome Device ke Game Bepay.................. 11
Gambar 3.2 Diagram Alir Game Bepay........................................................................ 12
Gambar 3.3 Use Case Game Bepay.............................................................................. 13
Gambar 3.4 Diagram Activity Game Bepay................................................................. 14
Gambar 3.5 Menu Login............................................................................................... 15
Gambar 3.6 Pilihan Game............................................................................................. 16
Gambar 3.7 Menu Utama Angklung............................................................................. 17
Gambar 3.8 Tampilan Menu Utama Gitar.................................................................... 17
Gambar 3.9 Tampilan Playlist....................................................................................... 18
Gambar 3.10 Play Angklung......................................................................................... 19
Gambar 3.11 Play Gitar................................................................................................ 19
Gambar 3.12 Tampilan Result...................................................................................... 20
Gambar 4.1 Tampilan Login Game Bepay................................................................... 23
Gambar 4.2 Tampilan Pilihan Game............................................................................. 24
Gambar 4.3 Tampilan Playlist Game Bepay................................................................. 25
Gambar 4.4 Tampilan Interface Bepay......................................................................... 26
Gambar 4.5 Tampilan animasi Collide Meluncur......................................................... 28
Gambar 4.6 Tampilan Object Collide Mengenai Note................................................. 29
Gambar 4.7 Tampilan Result Game Bepay................................................................... 31
vi
BAB I
PENDAHULUAN
Game merupakan hal yang sering kita temui dalam kehidupan sehari-hari. Mulai dari
anak kecil sampai dewasa pasti pernah bermain game. Saat ini paradigma kebanyakan
orang menganggap game hanyalah bermain biasa dan sekedar menghabiskan waktu
untuk mencari kesenangan. Padahal game juga dapat berfungsi sebagai sarana
pembelajaran. Hal tersebut dimaksudkan agar unsur-unsur yang terdapat dalam game
dapat digunakan sebagai katalis dalam mencapai suatu tujuan. Berdasarkan hal tersebut
penulis berencana membuat game yang berkaitan dengan musik, dikarena kebanyakan
orang didunia pasti mengenal musik atau bahkan sebagai penikmat musik itu sendiri.
Dalam pembuatan game ini dibutuhkan rancangan arsitektur game yang handal yang
memenuhi segala kebutuhan yang terdapat dalam game ini agar tahap implementasinya
berjalan dengan lancar serta hasil akhir dari game ini sesuai dengan harapan penulis.
Untuk mendukung pembuatan game ini, penulis menggunakan platform Unity
(Unity3D), yaitu perangkat pengembangan game 3D multiplatform,
Sistem BeatMe dibuat dengan memanfaatkan teknologi digital dan teknologi jaringan
agar mempermudah manusia untuk menyalurkan kreativitasnya dalam bidang musik.
Dengan kemudahan tersebut, diharapkan orang-orang yang selama ini ingin bermain
musik namun terkendala oleh kemampuan, pengetahuan, alat, biaya, waktu, serta lokasi,
dapat mewujudkan keinginannya dan menghasilkan karya.
Berdasarkan pada sistem BeatMe, maka dibuatlah sebuah game bernama Bepay yang
berkonten musik dengan memanfaatkan midi sebagai indikatornya. Game ini dibuat
dengan memadukan unsur kreativitas dan hiburan yang mana akan di integrasikan
secara online agar dapat dimainkan dimana saja. Prinsip kerja pada game Bepay yaitu
1
user akan menebak note-note lagu berdasarkan tempo lagu yang dimainkan, dilengkapi
dengan skor agar user dapat mengukur kemampuannya dalam bermain musik.
1.2 Tujuan
Tugas Akhir ini memiliki tujuan yang rinciannya dapat dituliskan sebagai berikut.
Berdasarkan latar belakang yang telah dikemukan di atas, dapat dirumuskan masalah
yaitu bagaimana membuat interface game Bepay sebagai sarana hiburan bermain musik.
Batasan-batasan masalah yang digunakan dalam Tugas akhir ini adalah sebagai berikut.
1. Coding yang digunakan dalam pembuatan tampilan GUI aplikasi Unity 3D.
1.5 Metodologi
2
1. Studi literatur yaitu dengan penggalian data-data informasi dari berbagai sumber
dan mempelajari buku-buku yang berhubungan dengan tugas akhir.
BAB II
TINJAUAN PUSTAKA
3
2.1 Unity 3D
1. Projects
Bagian projects meliputi semua elemen dalam game yang anda buat, seperti models,
scripts, levels, menu.
2. Scenes
Setiap project terdiri dari 1 sampai banyak scenes. Satu buah scene mewakili satu buah
level atau tampilan dalam suatu game.
3. Game Objects
Game object adalah bagian terpenting di Unity. Game object adalah container untuk
menampung fungsionalitas yang disebut komponen. Game object biasanya terdiri dari
lebih dari satu komponen.
4. Components
Komponen adalah komponen pembangun dari Game object, dimana tanpa komponen,
maka game object tidak akan berarti apapun. Komponen merepresentasikan entity,
material data, script dan lain sebagainya. Komponen selalu terpasang di game object,
tidak berdiri sendiri.
5. Assets
4
6. Prefab
Prefab adalah asset yang sudah didefinisikan menjadi template. Ketika anda meletakkan
prefab kedalam scene, maka anda sama dengan melakukan proses instantiasi.
7. Bahasa Pemrograman.
C#.
JavaScript .
Boo.
8. Editor.
MonoDevelop.
5
2.2 Bahasa Pemrograman C#
Microsoft Visual C-Sharp atau yang lebih dikenal dengan Visual C# merupakan sebuah
bahasa pemrograman yang berorientasi objek yang dikembangkan oleh Microsoft
sebagai bagian dari inisiatif kerangka .NET Framework. Bahasa pemrograman ini dibuat
berbasiskan bahasa C++ yang telah dipengaruhi oleh aspek - aspek atau pun fitur bahasa
yang terdapat pada bahasa - bahasa pemrograman lainnya seperti Java, Delphi, Visual
[3]
Basic dan lain - lain dengan beberapa penyederhanaan. Menurut standar ECMA-334 C#
Language Specification, nama C# terdiri atas sebuah huruf latin C (U+0043) yang
diikuti oleh tanda pagar yang menandakan angka # (U+0023). Tanda pagar # yang
digunakan memang bukan tanda kres dalam seni musik (U+266F), dan tanda pagar #
(U+0023) tersebut digunakan karena karakter kres dalam seni musik tidak terdapat
didalam keyboard standar .
Sebagai tambahan, bahasa pemograman C# juga datang dengan beberapa fitur baru dan
sangat menarik seperti reflections, attributes, marshalling, remote, threads, streams data
access dengan ADO.NET, dan masih banyak lagi.
C# memiliki beberapa kelebihan yang sangat membantu para pembuat program dalam
mengimplementasikan ide atau gagasan yang dimiliki. Selain memiliki kelebihan, C#
juga memiliki beberapa kelemahan. Berikut adalah kelebihan dan kelemahan dari Java.
6
1. Flexible, C# program dapat di eksekusi di mesin komputer sendiri atau di
transmiskan melalu web dan di eksekusi di komputer lainnya.
2. Powerful, C# memiliki sekumpulan perintah yang sama dengan C++ yang kaya akan
fitur yang lengkap tetapi dengan gaya bahasa yang lebih diperhalus sehingga
memudahkan penggunanya.
3. Easier to use, C# memodifikasi perintah yang sepenuhnya sama dengan C++ dan
memberitahu dimana letak kesalahan kita bila ada kesalahan dalam aplikasi , hal ini
dapat mengurangi waktu kita dalam mencari error.
7
1. Banyak operator serta fleksibilitas penulisan program, kadang-kadang
membingungkan pemakai.
Javascript adalah bahasa yang berbentuk kumpulan skrip yang pada fungsinya berjalan
pada suatu dokumen HTML, sepanjang sejarah internet bahasa ini adalah bahasa skrip
pertama untuk web. Bahasa ini adalah bahasa pemrograman untuk memberikan
kemampuan tambahan terhadap bahasa HTML dengan mengijinkan pengeksekusian
perintah perintah di sisi user, yang artinya di sisi browser bukan di sisi server web.
Javascript bergantung kepada browser atau navigator yang memanggil halaman web
yang berisi skrip-skrip dari Javascript dan tentu saja terselip di dalam dokumen HTML.
Javascript juga tidak memerlukan kompilator atau penterjemah khusus untuk
menjalankannya, pada kenyataannya kompilator Javascript sendiri sudah termasuk di
dalam browser tersebut. Lain halnya dengan bahasa “Java” (dengan mana JavaScript
selalu di banding bandingkan) yang memerlukan kompilator khusus untuk
[2]
menterjemahkannya di sisi user atau klien .
2.4 MIDI
MIDI yang merupakan singkatan dari Musical Instrument Digital Interface adalah
direpresentasikan dalam data elektronik. Dengan adanya MIDI komunikasi antar alat
musik elektronik dapat dilakukan. MIDI menspesifikasi 3 hal yaitu perangkat keras,
[1]
protokol komunikasi, dan format file .
8
2.5 Microsoft SQL Server
SQL (Structured Query Language) adalah sebuah bahasa yang dipergunakan untuk
mengakses data dalam basis data relasional. Bahasa ini secara de facto merupakan
bahasa standar yang digunakan dalam manajemen basis data relasional. Saat ini hampir
semua server basis data yang ada mendukung bahasa ini untuk melakukan manajemen
datanya. SQL terdiri dari dua bahasa, yaitu Data Definition Language (DDL) dan Data
[5]
Manipulation Language (DML). Implementasi DDL dan DML berbeda untuk tiap
sistem manajemen basis data (SMBD), namun secara umum implementasi setiap bahasa
[5]
ini memiliki bentuk standar yang ditetapkan oleh ANSI .
DDL digunakan untuk mendefinisikan, mengubah, serta menghapus basis data dan
objek-objek yang diperlukan dalam basis data, misalnya tabel, view, user, dan
sebagainya. DDL biasanya digunakan oleh administrator basis data dalam pembuatan
sebuah aplikasi basis data.Secara umum DDL yang digunakan adalah.
DML digunakan untuk memanipulasi data yang ada dalam suatu tabel. Perintah-perintah
yang umum dilakukan adalah.
9
SELECT untuk menampilkan data.
BAB III
PERANCANGAN SISTEM
Analisis kebutuhan ini bertujuan agar hasil perancangan sesuai dengan yang diharapkan.
Berikut analisis kebutuhan Hardware dan Software pada Game Bepay.
1. Windows 8.
2. Unity 4.3.4.
10
3.2 Diagram Konteks
Diagram ini merupakan gambaran umum sistem yang nantinya akan dibuat yang berisi
pengiriman dan dan penerimaan data dari Custome Device ke game Bepay yang
nantinya digunakan untuk controller dari game.
Custome Device akan melakukan proses push button dan saklar air raksa yang natinya
akan digunakan sebagai controller game bepay, hasil akhirnya berupa score untuk
penilaian akhir dari hasil bermain game.
Adapun diagram konteks mengenai alur data pada game Bepay dapat dilihat pada
Gambar 3.1 berikut.
11
penggambaran urutan prosedur suatu program dengan menggunakan berbagai simbol.
Adapun diagram alir komunikasi data pada game Bepay. dapat dilihat pada Gambar 3.2.
12
Gambar 3.2 Diagram Alir Game Bepay.
13
3.4 Use Case Game Bepay
Diagram use case menyajikan interakasi antara use case dan aktor. Dimana, aktor dapat
berupa orang, peralatan, atau sistem lain yang berinteraksi dengan sistem yang sedang
dibangun. Use case menggambarkan fungsionalitas sistem atau persyaratan-persyaratan
yang harus dipenuhi sistem dari pandangan pemakai. Adapun use case yang digunakan
pada game Bepay dapat dilihat pada gambar 3.3.
14
3.5 Diagram Activity
15
3.6 Rancangan Game Bepay
Pada tampilan menu login ini digunakan untuk menentukan hak akses dari game, bagi
pengguna yang ingin memainkan game Bepay diharuskan untuk login terlebih dahulu
untuk memainkan game Bepay, untuk login isilah data user name dan password serta
klik tombol Sing In.
16
Gambar 3.6 Pilihan Game.
Pada menu pilihan game ini tersedia pilihan dari alat musik yang dapat dimainkan disini
tersedia.
1. Angklung
2. Gitar
Pemain dapat memilih salah satu dari pilihan tersebut yang nantinya digukan sebagai
interface dalam bermain game.
17
Gambar 3.7 Menu Utama Angklung.
Pada tampilan Main Menu disini terdiri dari beberapa tombol dalam yang digunakan
untuk interaksi pada game bepay.
Keterangan gambar.
1. Play game, yang nantinya digunakan untuk memulai dalam memainkan game
bepay.
2. Help, yang digunakan sebagai media pembantu dalam memainkan game Bepay.
3. Exit, untuk keluar dari game bepay.
4. Tampilan Playlist
18
Gambar 3.9 Tampilan Playlist.
Tampilan Playlist yang nantinya berisikan list dari musik yang akan digunakan sewaktu
memainkan game.
19
Gambar 3.10 Play Angklung.
Pada tampilan Play Game disini terdiri dari beberapa tombol sebagain note yang
nantinya digunakan sebagai media pengantar dalam bermain game, apabila seorang
pemain ingin memainkan game haruslah menggunakan custome device yang digunakan
untuk akses ke tombol tersebut, disini juga terdapat papan score yang nantinya
20
digunakan sebagai penilaian dari game yang dimainkan dan juga disini terdapat papan
song yang nantinya menampilkan judul dari lagu yang dipilih.
6. Tampilan Result
Keterangan Gambar.
1. Start Rating yang yang digunakan untuk hasil akhir dari nilai dari papan score yang
didapat,
2. Accuracy yang nantinya digunakan untuk ketetapan dalam memainkan note pada
game.
3. Tombol Share yang digunakan untuk proses pengiriman hasil score ke jejaring
sosial.
4. Tombol Play Again digunakan untuk memulai ulang berman game.
21
5. Tombol Chose Song digunakan untuk pilihan dari musik yang akan dimankan
dalam game, disini akan beralih pada tampilan playlist.
6. Tombol Main Menu digunakan untuk kembali ke tampilan menu utama.
BAB IV
Tampilan user interface berbasis desktop pada aplikasi game Bepay menggunakan
bahasa pemrograman C# dan Javascript, dengan menggunakan komunikasi serial
dengan custom device. Setelah diterima oleh Unity3D dari Arduino yang ada di custom
device maka inputan akan menggerakkan objek yang ada pada user interface game.
Objek tersebut berupa notasi-notasi nada yang akan mengeluarkan bunyi serupa dengan
alat musik aslinya. Kemudian dari game Bepay juga mengirimkan inputan kepada
22
custom device untuk menyalakan led sebagai indikator sebelum notasi-notasi nada pada
game Bepay di tekan.
Tampilan user interface berbasis desktop dengan terkoneksi online pada website
BeatMe. Dimana untuk memainkan game Bepay, pengguna akan melakukan login
terlebih dahulu dengan menggunakan data diri di website BeatMe.
Pada Gambar 4.1 untuk listing dapat dilihat pada program dibawah ini.
23
StartCoroutine (handleLogin (24assword, 24assword));
GUI.Label (new Rect (55, 222, 250, 100), problem);
}
Ienumerator handleLogin(string userNamez,string passWordz){
problem = “Check Username & Password….”;
if (loginReader.error != null) {
problem = “not Login”;
}else{
if(loginReader.text == “right”){
Application.LoadLevel(“1 Main Menu”);
}else{
problem = “Invalid User/Pass”;
}
}
}
24
Gambar 4.2 Tampilan Pilihan Game.
Pada gambar 4.2 merupakan tampilan dari pilihan dari game yang akan dimainkan,
pemain dapat memilih salah satu dari pilihan yang ada, disini pilihannya berupa
angklung dan gitar.
25
Pada gambar 4.3 disini merupakan tampilan playlist dari game yang nanti dimainkan,
disini pemain diharuskan untuk memilih list dari judul lagu yang nantinya akan
dimainkan sebagai game.
Pada Gambar 4.4 animasi akan bergerak apabila di tekan inputan pada custom device.
Objek akan mengeluarkan bunyi nada-nada lagu berupa suara angklung. Terlebih dahulu
sebelum melakukan aksi pengiriman data antara game dengan custom device maka di
26
dalam Unity3D akan membuka komunikasi berupa serial port otomatis seperti terlihat
pada listing program di bawah ini.
Dan untuk melakukan komunikasi dengan custom device seperti terlihat pada listing
program di bawah ini.
void Update () {
//_serialPort.Open ();
if (_serialPort.IsOpen) {
MoveObjeck (_serialPort.ReadByte ());
print (_serialPort.ReadByte ());
} else {
_serialPort.Close();
}
27
Gambar 4.5 Tampilan animasi Collide Meluncur
Pada Gambar 4.4 animasi objek meluncur di sesuaikan dengan perhitungan tempo lagu
yang di pilih pada game Bepay. Pada proses di atas user akan melakukan aksi push
button apabila objek collide pas berada pada notasi-notasi lagu yang di bawah, dimana
apabila user sesuai melakukan aksi push button akan di dapatkan skor pada tiap objek
collide yang pas berada di notasi-notasi lagu.
28
break;
default:
GameObject.Find("pressC").renderer.enabled = true;
break;
}
Pada Gambar 4.6 animasi object berupa collide, jika objek bergerak dan pas mengenai
note lagu maka akan menghasilkan skor pada interface.
29
GameObject.Instantiate(effect, transform.position,
transform.rotation);
isCollide = false;
Destroy(theObject.gameObject);
hit++;
} else {
_serialPort.Close();
}
if (isHit) {
isHit = false;
GameObject.Instantiate(effect, transform.position,
transform.rotation);
isCollide = false;
Destroy(theObject.gameObject);
hit++;
}
public void OnTriggerExit (Collider theObject) {
isCollide = false;
30
Gambar 4.7 Tampilan Result Game Bepay
Pada gambar 4.7 merupakan tampilan result yang akan menampilkan hasil akhir dari
game yang telah dimainkan, disini akan menampilkan accuracy yang merupakan
seberapa banyak nada yang cocok atau tepat dimainkan oleh pemain, dan tampilan
ranking yang merupakan tampilkan yang menyatakan nilai keseluruhan yang didapat
berdasarkan accuracy dan score.
31
BAB V
PENUTUP
5.1 Kesimpulan
Dari hasil penelitian yang telah dilakukan, kesimpulan yang didapatkan adalah sebagai
berikut.
2. Game bepay versi desktop yang di lengkapi konten online sebagai fasilitas login user
dalam menjalankan aplikasi.
5.2 Saran
Untuk pengembangan produk ke depannya, saran yang dapat diberikan adalah sebagai
berikut.
1. Aplikasi yang dikembangkan dalam penelitian ini hanya memberikan keluaran nada
berupa konten MIDI.
2. Desain aplikasi sekarang ini masih sangat jauh, jika untuk dijual. Jadi dapat
dibuatkan desain yang lebih baik, agar menarik dan dapat dijual di pasaran.
3. Server BeatME perlu dikembangkan lebih lanjut sehingga menangani kesalahan-
kesalahan seperti kesalahan-kesalahan dalam akses ke dalam database user.
32
DAFTAR PUSTAKA
[1] Adiyanto, Indra M. (1998). Tugas Akhir : Konversi MIDI ke Not Angka. Jurusan
Teknik Informatika, Fakultas Teknologi Industri, Institus Teknologi Bandung.
[3] Jonathan, K. (1998). Beginning C#. In New York. Edward (Ed), C# Programming
Language. MA : Balckwell.
[4] Ratno. 2012. Teknologi Game Pengembangan Game 2D dengan Unity 3D dan
Orthello Framewor, Jurusan D3 Teknik Informatika. Yogyakarta: STMIK AMIKOM
YOGYAKARTA.
[5] Youness, S. & Boutquin, P. (1991). SQL Unleashed (2nd ed.). San Fransisco:
Escaeva.
33