Senin, 28 Maret 2016

[SOFTSKILL] Teknologi Game, Bisnis dalam Game Komputer 3D Engine dan Scene Graph


PENGENALAN TEKNOLOGI, GAME, DAN TEKNOLOGI GAME



Teknologi adalah keseluruhan sarana untuk menyediakan barang-barang yang diperlukan bagi kelangsungan, dan kenyamanan hidup manusia. Penggunaan teknologi oleh manusia diawali dengan pengubahan sumber daya alam menjadi alat-alat sederhana.
Teknologi juga dapat dipandang sebagai kegiatan yang membentuk atau mengubah kebudayaan. Selain itu, teknologi adalah terapan matematika, sains, dan berbagai seni untuk faedah kehidupan seperti yang dikenal saat ini. Salah satu teknologi yang sangat populer adalah game atau permaianan.

Siapa yang tidak kenal istilah Game atau dalam bahasa indonesia adalah sebuah permainan. Game lebih identik kepada permainan yang dimainkan di Komputer atau perangkat elektronik. Video Game (sering disebut : Game) merupakan permainan yang menggunakan interaksi dengan antarmuka pengguna melalui gambar yang dihasilkan oleh piranti video. Game 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 "Video Game" 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 PC atau Console.

Sebuah permainan adalah sebuah sistem dimana pemain terlibat dalam konflik buatan, disini pemain berinteraksi dengan sistem dan konflik dalam permainan merupakan rekayasa atau buatan, dalam permainan terdapat peraturan yang bertujuan untuk membatasi perilaku pemain dan menentukan permainan. Game bertujuan untuk menghibur, biasanya game banyak disukai oleh anak – anak hingga orang dewasa. Permainan dalam hal ini merujuk pada pengertian kelincahan intelektual( Intellectual Playability Game) yang juga bisa diartikan sebagai arena keputusan dan aksi pemainnya. Games sebenarnya penting untuk perkembangan otak, untuk meningkatkan konsentrasi dan melatih untuk memecahkan masalah dengan tepat dan cepat karena dalam game terdapat berbagai konflik atau masalah yang menuntut kita untuk menyelesaikannya dengan cepat dan tepat. Tetapi game juga bisa merugikan karena apabila kita sudah kecanduan game kita akan lupa waktu dan akan mengganggu kegiatan atau aktifitas yang sedang kita lakukan.

Jika kita telusuri sejarah perkembangan game. kita akan menjumpai beberapa game yang memang berjaya pada masanya. namun jika game tersebut kita mainkan sekarang game tersebut telihat tidak menarik, kenapa ? karena seiring perkembangan teknologi  khususnya di bidang game semakin banyak jenis dan alat yang digunakan dalam pembuatan game. Baru-baru ini teknologi game sudah berkembang dengan menggunakan teknologi VR (Virual Reality) dan AR (Augmented Reality). diamana di dalam VR kita dapat mendapatkan pengalaman masuk ke dalam dunia virtual dengan menggunakan teknologi VR tersebut.


TEORI PERMAINAN

Teori permainan adalah suatu cara belajar yang digunakan dalam menganalisa interaksi antara sejumlah pemain maupun perorangan yang menunjukkan strategi-strategi yang rasional. Teori permainan pertama kali ditemukan oleh sekelompok ahli Matematika pada tahun 1944. Teori itu dikemukakan oleh John von Neumann and Oskar Morgenstern yang berisi :

“Permainan terdiri atas sekumpulan peraturan yang membangun situasi bersaing dari dua sampai beberapa orang atau kelompok dengan memilih strategi yang dibangun untuk memaksimalkan kemenangan sendiri atau pun untuk meminimalkan kemenangan lawan. Peraturan-peraturan menentukan kemungkinan tindakan untuk setiap pemain, sejumlah keterangan diterima setiap pemain sebagai kemajuan bermain, dan sejumlah kemenangan atau kekalahan dalam berbagai situasi.” ( J. Von Neumann and O. Morgenstern, Theory of Games and Economic Behavior (3d ed. 1953)).


PERKEMBANGAN TEKNOLOGI GAME


Perkembangan teknologi sangat berpegaruh terhadap perkembangan game, dimana perubahannya akhir-akhir ini makin pesat berkembang. Pada sekitar awal dekade 80-an, sebenarnya sudah ada persaingan ketat antar perusahaan game dalam memasarkan produknya. Game yang populer dengan nama video game ini hanya bisa dimainkan oleh satu atau dua orang pemain pada sebuah console. Pesawat televisi dibutuhkan sebagai media tampilan. Jenis game-nya juga masih sangat sederhana dengan grafik yang sangat kasar. Tampilannya mirip seperti game dari bahasa program Java, yang bisa dimainkan di handphone sekarang ini. Perusahaan game yang terkenal pada saat itu adalah Atari, Sega dan Nintendo.


Video game atau Console game ini adalah sebuah bentuk dari multimedia interaktif yang digunakan untuk sarana hiburan. Game ini dimainkan dengan menggunakan sebuah alat yang bisa digenggam oleh tangan dan tersambung ke sebuah kotak alat atau console. Alat yang digenggam tangan tadi dikenal dengan nama joystick. Isinya adalah beberapa tombol-tombol sebagai kontrol arah maju, mundur, kiri dan kanan, dimana fungsinya adalah untuk berinteraksi dan mengendalikan gambar-gambar di layar pesawat televisi. Game ini juga biasanya dimainkan dengan memasukan sebuah keping CD yang bisa diganti-ganti atau cartridge yang harus dimasukkan ke dalam game console.

Video game dengan console kini juga sudah berkembang pesat. Saat ini, pemain yang cukup dominan adalah X-Box dari Microsoft dan PlayStation keluaran Sony. PlayStation (PS) telah sukses dengan PSP-nya yang portable dan PS2 yang fenomenal karena harganya yang cukup murah, sekitar Rp.1,5 juta. Saat ini di pelosok perumahan umumnya terdapat rental PS2 yang bisa dimainkan dengan biaya berkisar hanya Rp.1,500 per jam. PlayStation ini sendiri telah mengeluarkan versi baru, yaitu PS3 dengan harga banderolyang masih mahal, Rp.7 juta-an per unit (pada pertengahan 2007). Tidak diragukan lagi, tampilan dan akselerasinya jauh lebih halus dan cepatdari generasi pendahulunya.

Para gamers lama kelamaan menginginkan suatu permainan yang tidak saja dapat dimainkan oleh 2 orang, tapi juga bisa dimainkan secara massal dan bersamaan tanpa memandang jarak misalnya antar daerah satu yang lainnya hingga menembus jarak antar negara. PlayStation dan X-Box pun tampil sebagai sebuah console yang sudah bisa dimainkan secara online.

Selain dari console, game juga bisa dijalankan dari personal computer (PC) atau sering juga disebut juga PC game. Game di PC tidak kalah menariknya dibanding dengan di console.

Di dalam video game atau console game kita menemukan adanya lingkungan bermain game yang lebih sederhana dibanding pemain di PC game, bukan hanya terutama karena keterbatasan fitur dari joystick, tapi karena disebabkan keterbatasan teknologi di dalam perangkat keras (hardware) pada console serta output resolusi visual yang secara potensial lebih rendah.

Seperti kita ketahui, pada setiap PC umumnya terdapat sebuah keyboard dan sebuah mouse yang bisa digunakan dalam desain permainan game yang lebih kompleks. Gambar grafik yang ditampilkan di PC game lebih hidup dan tajam, tergantung dari pemakaian display adapter card atau video card yang digunakan pada mainboard komputer.

Semakin mutakhir dan besar kapasitas memori video card-nya, maka semakin halus pula resolusi dan akselerasi game-nya. Sedangconsole game biasanya dimainkan di televisi, dimana ketajaman gambar lebih rendah dan game biasanya dimainkan dari jarak dekat.Jenis game yang tersedia untuk sebuah video game atau console ditentukan dari tuntutan pasar dan tren. Video game atau console menurut anggapan banyak orang, lebih dianggap sebagai mainan anak-anak kecil, sedangkan PC adalah mainan mereka yang lebih ‘dewasa’. Karena itu, beberapa tahun lalu, console lebih banyak terlihat memainkan game yang lebih sederhana, seperti platform games, tembak-menembak (shoot-em-up) dan pukul-memukul (beat-em-up). Sedang PC game lebih didominasi ke genre RPG, strategi dan simulasi.Dengan adanya perkembangan video game atau console diantara pasar orang dewasa, perbedaannya dengan PC game juga semakin berkurang.

Akhir-akhir ini strategy games, role-playing games dan game simulasi, walau tidak sebanyak di PC game, sudah bisa didapatkan di video game.

Awalnya, jika kita bermain sendiri di PC atau komputer, yang menjadi lawan kita adalah komputer itu sendiri. Tetapi dengan sistem jaringan (LAN: local area network), kita bisa melawan orang lain pada komputer yang terpisah, yang lebih dikenal dengan istilah multiplayer. Untuk dapat memainkannya, kita harus menghubungkan PC atau komputer ke sekelompok PC lainyang saling terhubung.

Multiplayer game ini bisa dimainkan dengan jaringan lokal tanpa akses internet, tetapi bisa juga dengan menggunakan akses internet. Multiplayer game yang tidak membutuhkan akses internet disebut juga sebagai LAN game.

Di Indonesia sendiri, sejak tahun 2000-an, LAN game didominasi oleh game tembak-menembak, diantaranya Counter Strike (CS) dan game strategi Warcraft. Game ini masih memiliki keterbatasan dalam jumlah pemain. Lawan kita dalam game hanya terbatas pada jumlah PC yang terhubung dalam jaringan lokal tersebut. Jika game tadi ingin lebih dimainkan secara massal, secara bersamaan dan tanpa mempertimbangkan jarak, maka PC itu harus terhubung dengan jaringan internet. Karenadari aplikasinya yang harus terhubung atau online dengan internet, maka banyak orang menyebutnya sebagai online game


BISNIS DALAM GAME KOMPUTER


Di zaman modern ini, tidak dipungkiri lagi bahwa game sangat berperan untuk sebagian besar pengguna teknologi, terutama pengguna komputer. Game merupakan sarana hiburan di tengah padatnya aktvitas yang dilalui. Namun, game ternyata juga dapat dijadikan sebuah bisnis yang menjanjikan. Dengan hobi para gamer ini, tentu terdapat peluang untuk mendapatkan profit.

Bisnis dalam game komputer berkembang pesat seiring dengan berkembangnya teknologi canggih saat ini. Dahulu kita hanya dapat menikmati game yang tersedia di dalam komputer itu sendiri, seperti pinball dan solitaire. Namun sekarang sudah tersedia game online, dan juga games yang dapat didownload baik free maupun berbayar. Games berbayar juga merupakan bisnis karena sama saja dengan kita mengeluarkan uang untuk membeli sebuah barang. Games berbayar ini biasanya memberikan kepuasan tersendiri bagi pembelinya, karena terdapat fitur yang bagus di dalamnya. Perkembangan lainnya ialah warung internet atau yang sering kita dengar dengan istilah warnet. Warnet kini identik dengan game online yang mereka sediakan, adapun game berbayar yang disediakan warnet sehingga kita hanya tinggal memainkannya. Baik anak kecil hingga orang dewasa mempunyai hobi bermain game online ini. Dengan menyediakan tempat, perangkat komputer yang lengkap, dan fasilitas pendukung lainnya, membuat gamers betah berlama-lama untuk bermain.

Game/permainan adalah sesuatu yang sangat digemari oleh anak-anak hingga orang dewasa. Game berarti “hiburan”. Permainan game juga merujuk pada pengertian sebagai “kelincahan intelektual” (intellectual playability). Sementara kata “game” bisa diartikan sebagai arena keputusan dan aksi pemainnya. Ada target-target yang ingin dicapai pemainnya. Kelincahan intelektual, pada tingkat tertentu, merupakan ukuran sejauh mana game itu menarik untuk dimainkan secara maksimal.

Beberapa waktu lalu istilah “game” yang dalam bahasa Indonesia adalah “permainan” identik dengan anak-anak  selaku pemain. Tentunya dalam permainan itu suatu kegiatan yang dilakukan oleh anak-anak yang menurut mereka itu dapat menyenangkan hati mereka. Segala bentuk kegiatan yang memerlukan pemikiran, kelincahan intelektual dan pencapaian terhadap target tertentu dapat dikatakan sebagai game. Tetapi yang akan dibahas pada kesempatan ini adalah game yang terdapat di komputer, baik off line maupun online.

Saat ini perkembangan games di komputer sangat cepat. Para pengelola industri game berlomba-lomba untuk menciptakan game yang lebih nyata dan menarik untuk para pemainnya. Hal inilah yang membuat perkembangan games di komputer sangat cepat. Sehingga games bukan hanya sekedar permainan untuk mengisi waktu luang atau sekedar hobi. Melainkan sebuah cara untuk meningkatkan kreatifitas dan tingkat intelektual para penggunanya.

Aplikasi games dapat dijalankan pada berbagai platform. Beberapa platform media yang bisa dijadikan pilihan untuk advergames adalah :

1. Personal Computer berupa aplikasi games pada PC. Games ini dijalankan pada personal computer. Pada media Personal Computer, durasi waktu penayangan adalah tidak terbatas, selama games tersebut bagus dan mampu menghibur audience/pemain, maka selama itulah tingkat kemungkinan untuk dilihat audience akan semakin tinggi. Pembuatan Games ini biasanya menggunakan Language C++ / C#, membutuhkan waktu 3-6 bulan tergantung dengan kompleksitas games tersebut.

2. Web Based Games. Yaitu aplikasi games yang diletakkan pada server di internet dimana audience/pemain hanya perlu menggunakan akses internet dan browser untuk mengakses games tersebut. Corporate yang memiliki keinginan mengumpulkan komunitas internet dan sekaligus memperkenalkan product/brandnya kepada komunitas Internet sangat cocok memilih media games online internet ini. Pilihan ini banyak digunakan karena dapat meningkatkan traffic pada suatu website Bila games yang dibutuhkan simple maka diperlukan waktu pengembangan yang relative lebih singkat 1-2 bulan.

3. SmartPhones/PocketPC. Aplikasi games yang jalan pada mobile devices bersistem operasi Windows Mobile 2003/2004 ataupun windows mobile 5.0. Product yang memiliki target market status ekonomi A,B dan karakter pengusaha/ eksekutif muda sangat cocok apabila menggunakan media PocketPC/SmartPhones sebagai bagian aktivitas kegiatan advertising. Games bertemakan strategi ataupun simulasi bisnis pada umumnya lebih disukai oleh orang-orang golongan ini. Waktu pengembangan biasanya memerlukan waktu 3-6 bulan tergantung dengan kompleksitas games tersebut

4.CellPhones / Mobile Phones. Aplikasi games untuk cell-phones atau mobile phones sebenarnya bisa dimanfaatkan untuk mendapatkan potensial pelanggan dengan golongan Status Ekonomi Responden A,B dan C. Produk yang memiliki target golongan ABG, remaja, anak kuliah, eksekutif muda sangat tepat menggunakan media ini, mengingat pada golongan inilah mereka suka sekali mencoba dan mengeksplorasi features aplikasi yang tersedia pada mobile/cellphones mereka. Mereka biasanya aktif mencari aplikasi bersifat fun atau game yang dapat mengisi waktu senggang mereka. Waktu pengembangan untuk membuat aplikasi pada devices ini relative lebih pendek yaitu 1-3 bulan tergantung dengan kompleksitas games tersebut.

Industri game memang masih terbilang baru di Indonesia. Kendati begitu, perkembangannya sudah sangat pesat dan menjadi bisnis yang sangat menggiurkan. Penyebab utamanya adalah berkembangnya era teknologi dan komunikasi.

Perkembangan ini terlihat dari banyaknya game center yang terus bermunculan, terutama yang menyediakan jasa gameonline. Bukan tanpa alasan game online menjadi semakin marak dan digandrungi, karena fasilitas online memungkinkan sebuah game dapat dimainkan oleh 100 orang lebih secara bersama-sama dalam satu waktu.


3D ENGINE DAN SCENE GRAPH


Di dalam grafika komputer, 3D merupakan bentuk grafik yang menggunakan representasi data geometri tiga dimensi. Grafik 3D ini tersimpan didalam komputer untuk keperluan kalkulasi atau rendering gambar 3D. Pada 3D, engine bukanlah exutable program, artinya engine tidak bisa dijalankan sebagai program yang berdiri sendiri.

3D engine adalah sistem perangkat lunak yang dibuat dan dirancang untuk menciptakan dan mengembangkan gambar 3D, fungsionalitas inti biasanya disediakan oleh mesin permainan mencakup mesin render (renderer) untuk 2D/3D grafis.

Berbeda dengan dukungan grafik 2D yang sudah built in, dukungan Java terhadap grafik 3D diletakkan ke dalam API terpisah, yakni Java3D. Java3D merupakan API 3D berbasis scene graph di platform Java, dimana scene graph merupakan sebuah pohon yang berisi hierarki data scene. Di dalam api Java3D didefinisikan sejumlah kelas dan interface yang menyediakan beragam operasi grafik 3D.
Konsep scene graph merupakan inti dari Java3D. Sebuah scene graph merupakan g rafik yang mempresentasikan geometri, material, dan pencahayaan. Scene graph dimulai dari root dengan sebuah Virtual Universe dan mencakup transformasi serta geometri untuk mendefinisikan objek di dunia maya. Secara garis besar, ada tiga tahap fundamental yang diperlukan untuk menghasilkan objek 3D, yaitu:



  1. Menciptakan objek Canvas3D
  2. Menciptakan sebuah scene graph
  3. Menghubungkan objek Canvas3D ke objek BranchGroup yang menunjuk root dari scene graph

·         Ogre 3D
Objected-Oriented Graphics Rendering Engine atau bisa disingkat dengan OGRE merupakan engine yang object oriented & flexible 3D rendering pada game engine yang ditulis dengan menggunakan bahasa C++ serta didesain agar mampu men-developer dengan mudah kepada aplikasi produksi dengan menggunakan utility hardware-accelerated 3D graphic. Gambaran abstraknya OGRE menggunakan sistem library seperti Direct3D & OpenGL, serta menyediakan sebuah dasar interface di dunia objek dan class objek yang lebih tinggi.

OGRE hanya digunakan untuk me-render. Dengan kata lain, fitur OGRE hanya khusus menangani vector & matOix classes, memory handling, dan lain lain. Ini bukan lah salah satu dari semua solusi dalam istilah game development/simulasi. OGRE tidak menyediakan audio/physics support.

Walaupun penjelasan diatas bisa dikatakan sebagai kelemahan dari OGRE itu sendiri, akan tetapi semua itu sebanding dengan kemampuan grafis yang ada pada game engine tersebut. Kelebihan yang paling menonjol pada OGRE adalah graphics engine yang bisa memberikan para developer sebuah kebebasan untuk menggunakan physics apapun, input, audio, & library lainnya. OGRE memberikan para tim development untuk fokus pada graphics daripada beberapa sistem-sistem yang ada dalam game development. OGRE dapat mendupport OIS, SDL, CEGUI libraries. Sekarang ini OGRE adalah publish dibawah dua lisensi, yaitu LGPL & OUL. Maka sekarang ini para publish tersebut membuka OGRE sebagai free/open source software.

Fitur-fitur pada OGRE:


  1. Desain yang object-oriented dengan menggunakan plugin untuk mempermudah memasukkan fitur lainnya
  2. Engine berbasis scane graph dengan bantuan untuk sebuah varietas yang luas, octree, BSP, & paging landscape scene manager
  3. Multi-platform dengan dukungan OpenGL & Direct 3D. Bisa me-render konten yang sama di beda platform tanpa harus mempunyai content creator. dapat diakses pada platform Linux, Mac OS, dan semua versi Windows
  4. OGRE mendukung program vertex dan fragment selama ditulis dengan GLSH, HLSL, Cg, dan assembler 
  5. The landscape scene manager untuk progressive LOD, yang mana bisa dibuat secara otomatis dan manual
  6. Engine annimasi yang men-support penuh untuk multiple hardware

·         Processing
Processing adalah bahasa pemrograman dan lingkungan pemrograman yang bersifat open source yang digunakan untuk memprogram gambar, animasi, dan interaksi. Processing digunakan untuk mengajarkan dasar-dasar pemrograman komputer dalam konteks rupa dan berfungsi sebagai buku sketsa perangkat lunak dan alat produksi profesional. Processing mengintegrasikan suatu bahasa pemrograman, lingkungan pemrograman, dan metodologi pengajaran ke dalam sistem terpadu.

Processing merupakan suatu projek yang dinisiasi oleh Ben fry dan casey reas. Berkembang dari ide-ide yang dieksplorasi di Aesthetics and Computation Group (ACG) di Mit Media Lab. Projek ini kini terus diperbaiki dan dikelola oleh sejumlah Tim Voluntir.


·         Game Maker
Game Maker adalah software yang bisa membantu anda menjadi pengembang game komputer tanpa menggunakan coding sedikitpun. Dapat digunakan untuk membuat 3 dimensi dan Multiplayer. Game Maker dapat menjadikan hak penuh dari software (game) yang anda buat termasuk dapat menjual gaAme tersebut, bahkan bisa mendownload musik, efek suara, gambar, script, serta background.


·         Unity 3D
Unity 3D adalah sebuah game developing software. Dengan software ini, kita bisa membuat game 3D yang seru. Game developer ini sangat mudah digunakan, dengan GUI yang memudahkan kita untuk membuat derta mengedit script untuk menciptakan sebuah game 3D. Selain bisa untuk build game PC, Unity juga dapat digunakan untuk membangun game console seperti Nintendo Wii, PS3, Xbox 360, juga Ipad, Iphone, dan Android. Namun masing-masing membutuhkan biaya lisensinya sendiri. Unity kurang lebih sama dengan Blender game engine, namun unity lebih ringan dan diintegrasi lebih dalam suasana grafik.

Kelebihan Unity terdapat pada multiple platform, artinya banyak platform yang disupport oleh unity, seperti Windows, Mac, iPhone, iPad, Android, Nintendo Wii, dan juga browser. Untuk browser, kita memerlukan sebuah plug-in, yaitu Unity Web player, sama halnya dengan Flash Player pada browser. Pada unity, kita tidak bisa melakukan desain/modelling dikarenakan unity bukan tool untuk mendesain. Jadi jika kita ingin mendesain, dibutuhkan 3D editor lain seperti 3Dsmax atau Blender, kemudian kita export menjadi format .fbx.

untuk unity sendiri saat ini sudah supprot dalam penerapan teknlogi VR dan AR. Baru-baru ini IBM tengah mengembangkan game Sword Art Onlineterbaru dengan teknologi virtual realitySword Art Online: The Beginning tidak akan dimainkan menggunakan controller, tapi dengan menggerakkan tubuh pemainnya secara langsung. Sebuah sistem kecerdasan buatan bernama IBM Watson digunakan dalam game ini. IBM Watson memungkinkan sebuah program komputer untuk berinteraksi dengan menggunakan bahasa sehari-hari layaknya seorang manusia.
Sword Art Online: The Beginning juga memanfaatkan teknologi cloud computing milik SoftLayer Technologies (anak perusahaan IBM). Kekuatan komputasi ini dimanfaatkan untuk membuat simulasi lingkungan yang mirip dengan dunia nyata. Teknologi yang digunakan mungkin belum secanggih NerveGear dalam cerita Sword Art Online, tapi ini semua sudah terasa sangat revolusioner. 

Berikut merupakan tampilan game terbaru yang di kembangkan IBM dengan menggunakan teknologi VR.



Berikut merupakan contoh game yang pernah saya kembangkan dengan menggunakan Strawberry Prolog :

“Andro-Matches”


INITIAL STATE

Andro-Matches merupakan sebuah game yang dikembangkan dari permainan matches.  Dimana masing-masing player dituntut untuk mengalahkan AI yang telah di buat. Kita harus menentukan langkah yang benar untuk bisa mengalahkan AI, jika kita salah langkah, maka kita akan kalah melawan AI. Perlu diketahui disini AI pada game ini sangat sulit di kalahkan, kemungkinan untuk di kalahkan yaitu sekitar 10%. Di game ini ada  2 pilihan, yaitu computer terlebih dahulu, atau player yang maju dahulu. Jika kita ingin menang melawan AI, di haruskan kita tidak boleh mengambil ikon paling terakhir, atau kita akan kalah dari AI.

Permainan dimulai dengan menekan tombol pilihan, disitu akan terlihat pilihan, computer dahuli atau kita yang terlebih dahulu. Disini saya memilih untuk maju terlebih dahulu, player pertama akan memilih salah satu ikon yang akan dihilangkan. Berikutnya untuk CPU yang memilih untuk ikon mana yang akan dipilih untuk maju. Jika player yang mengambil batang terakhir, maka pemain akan kalah, tapi jika AI yang mengambil batang terakhir maka AI akan kalah. Namun disini AI sangat sulit dikalahkan. Kita bisa mengambil berapapun batang yamg kita inginkan tapi harus berada dalam satu kolom, begitu juga komputer.
Tampilan Menu Utama
Tampilan splash screen dan loading bar

Tampilan menu utama dalam game


RULES

Identifikasi ruang keadaan, permasalahan ini dapat di lambangkan dengan sebuah field dengan background sebuah gambar, di field itu terdapat 5 tingkatan yang terdiri dari ikon-ikon yang tersusun berbentuk piramida. Pemain hanya terdiri dari player dan AI (CPU).
Keadaan awal dan tujuan.
Keadaan awal = papan  permainan.
Keadaan tujuan = bagi yang terakhir meng-klik ikon, dialah yang kalah (kebalikan nya jika memilih mode ambilo trakhir menang)

Aturan-aturan:


  1.  Pilihan bagian option, disitu kita akan memilih siapa yang akan maju terlebih dahulu, player atau AI
  2. Dimainkan dengan 2 pemain, player pertama dan yang kedua adalah AI, player memulai langkah awal permainan dengan memilih salah satu ikon yang telah disediakan. Baik dari atas atau dari bawah.
  3. Kita hanya bisa mengambil ikon secara kolom, yang terakhir memilih adalah yang kalah (kebalikan nya jika memilih mode ambilo trakhir menang).
  4. Tidak ada perbedaan ikon antara player dengan CPU.


GOAL

Goal (tujuan) untuk menyelesaikan games Andro-Matches adalah membuat dimana kondisi ambil mengambil terakhir (jika mode default). Namun jika kita mengaktifkan mode mengambil terakhir =  menang, maka siapa sajat yang mengambil di akhir akan menang.
Di game ini juga terdapat timer. Dimana jika timer telah abis maka pemain akan kalah.
Dan terdapat pula papan score untuk menghitung menang player dan AI.

Tampilan ketika player menang

Tampilan ketika player kalah

Tampilan ketika timer habis



KONSEP AI


Konsep permainan yang di pakai dalam permainan ini adalah (baik user ataupun AI) harus berjalan secara bergantian. AI akan selalu berjalan dan memberikan perlawanan kepada kita sehingga tidak akan begitu mudah dapat memenangkan game tersebut, pada saat memainkan permainan ini akan mendapatkan hasil akhir berupa kita menang atau kita kalah melawan komputer, karena prinsipnya game ini ingin anda yang kalah. Kesimpulan dari permainan ini ialah bagaimana cara untuk memenangkan perlawanan dari komputer dengan tidak mengambil icon yang paling akhir (don’t take the last), jika pengguna (user) dapat tidak mengambil icon yang terakhir maka pengguna tersebut ememnangkan permainan game Matches dan jika pengguna (user) mengambil korek api yang paling akhir maka pengguna (user) tersebut dinyatakan kalah dalam permainan game Matches ini.



GLOSARIUM

Algoritma

Algoritma minimax merupakan salah satu algoritma yang sering digunakan untuk game kecerdasan buatan yang menggunakan teknik depth first search (DFS) dalam pencariannya pada pohon dengan kedalaman terbatas (Kusumadewi, 2003). Algoritma minimax digunakan untuk memilih langkah terbaik, dimana kedua pemain akan saling berusaha untuk  memenangkan permainan. Selain itu, algoritma minimax ini bekerja secara rekursif dengan mencari langkah yang akan membuat lawan mengalami kerugian minimum. Algoritma minimax mendeskripsikan kondisi apabila terdapat pemain yang mengalami keuntungan, pemain lain akan mengalami kerugian senilai dengan keuntungan yang diperoleh lawan dan sebaliknya.
Algoritma minimax akan melakukan pengecekan pada seluruh kemungkinan yang ada, sehingga akan menghasilkan pohon permainan yang berisi semua kemungkinan permainan tersebut (Jannah, 2010). Dengan pohon permainan ini setiap pemain mengetahui langkah-langkah yang mungkin diberikan pada situasi permainan saat ini. Sehingga untuk setiap langkah dan semua langkah selanjutnya dapat diketahui. Dalam repersentasi pohon pada algoritma minimax, terdapat dua jenis simpul, yaitu simpul min dan simpul max. Max akan memilih langkah dengan nilai tertinggi dan min akan memilih langkah dengan nilai terendah (Kusumadewi, 2003). Dalam penentuan keputusan max/min tersebut dibutuhkan suatu nilai yang merepresentasikan kerugian atau keuntungan yang akan diperoleh jika langkah tersebut dipilih. Untuk itulah disini digunakan sebuah fungsi heuristik.
Fungsi heuristik yang digunakan algoritma ini adalah fungsi heuristik statis (Kusumadewi, 2003). Fungsi heuristik digunakan untuk mengevaluasi nilai sebagai nilai yang merepresentasikan hasil permainan yang akan terjadi jika langkah tersebut dipilih. Dari nilai-nilai heuristik inilah komputer akan menentukan simpul mana dari pohon permainan yang akan dipilih, tentunya simpul yang akan dipilih tersebut adalah simpul dengan nilai heuristik yang akan menuntun permainan ke hasil akhir yang menguntungkan bagi komputer (Akbar, 2007).

Contoh heuristic pencarian

Referensi :
  1.  http://dinyfr.blogspot.co.id/2013/10/3d-engine-dan-scene-graph_20.html
  2. http://andriyanaade.blogspot.co.id/2015/04/teknologi-game-dan-bisnis-game-dalam.html
  3. https://id.techinasia.com/ibm-membuat-game-sword-art-online-dengan-virtual-reality






Tidak ada komentar:

Posting Komentar