Learn Computer Blog

Andreas Eko Widodo's Blog.

Learn Computer Blog

Andreas Eko Widodo's Blog

Learn Computer Blog

Andreas Eko Widodo

Learn Computer Blog

Andreas Eko Widodo

Learn Computer

Andreas Eko Widodo

Senin, 25 April 2016

Artificial Intelligence Pada Game

Kecerdasan buatan atau Artificial Intelligence adalah salah satu bagian dari ilmu komputer yang membuat mesin (komputer) dapat melakukan pekerjaan seperti manusia dan komputer dimungkinkan untuk dapat berfikir. Salah satu unsur yang berperan penting dalam sebuah game adalah kecerdasan buatan. Dengan kecerdasan buatan, elemen-elemen dalam game dapat berperilaku sealami mungkin layaknya manusia. 


Game AI adalah aplikasi untuk memodelkan karakter yang terlibat dalam permainan baik sebagai lawan, ataupun karakter pendukung yang merupakan bagian dari permainan tetapi tidak ikut bermain (NPC = Non Playable Character). Peranan kecerdasan buatan dalam hal interaksi pemain dengan permainan adalah pada penggunaan interaksi yang bersifat alami yaitu yang biasa digunakan menusia untuk berinteraksi dengan sesama manusia. Contoh media interaksi ialah:
  •  Penglihatan (vision)
  •  Suara (voice), ucapan (speech)
  • Gerakan anggota badan ( gesture)
Dalam video game, kecerdasan buatan digunakan untuk menghasilkan perilaku cerdas terutama dalam karakter non-pemain (NPC), sering simulasi kecerdasan manusia-seperti. Teknik yang digunakan biasanya memanfaatkan metode yang ada dari bidang kecerdasan buatan (AI). Namun, permainan istilah AI sering digunakan untuk merujuk kepada serangkaian luas algoritma yang juga mencakup teknik dari teori kontrol, robotika, komputer grafis dan ilmu komputer pada umumnya.

Orang-orang mengeluh bahwa "AI" dalam istilah "permainan AI" melebih-lebihkan nilainya, karena permainan AI bukan tentang kecerdasan melainkan beberapa tujuan dari bidang akademik AI. Sedangkan "nyata" AI membahas bidang pembelajaran mesin, pengambilan keputusan berdasarkan input data sewenang-wenang, dan bahkan tujuan akhir dari AI kuat yang dapat alasan, "permainan AI" sering terdiri dari setengah lusin aturan praktis, atau heuristik yang hanya cukup untuk memberikan pengalaman gameplay yang baik. Secara historis, akademis proyek game-AI telah relatif terpisah dari produk komersial karena pendekatan akademis cenderung sederhana dan non-scalable. Commercial permainan AI telah mengembangkan menetapkan sendiri alat, yang sudah cukup untuk memberikan kinerja yang baik dalam banyak kasus.

Meningkatnya kesadaran pengembang game AI akademik dan minat yang tumbuh dalam permainan komputer oleh masyarakat akademik yang menyebabkan definisi apa yang dianggap sebagai AI dalam game menjadi kurang istimewa. Namun demikian, perbedaan yang signifikan antara domain aplikasi yang berbeda dari AI berarti bahwa permainan AI masih dapat dilihat sebagai subfield berbeda AI. Secara khusus, kemampuan untuk secara sah memecahkan beberapa masalah AI di game oleh kecurangan menciptakan perbedaan penting. Misalnya, menyimpulkan posisi obyek tak terlihat dari pengamatan masa lalu bisa menjadi masalah sulit ketika AI diterapkan untuk robotika, tetapi dalam permainan komputer NPC hanya dapat mencari posisi di permainan adegan grafik. kecurangan tersebut dapat menyebabkan perilaku yang tidak realistis dan tidak selalu diinginkan. Tapi kemungkinan yang berfungsi untuk membedakan permainan AI dan menyebabkan masalah baru untuk memecahkan, seperti kapan dan bagaimana menggunakan kecurangan.

Keterbatasan utama untuk AI yang kuat adalah kedalaman melekat berpikir dan kompleksitas ekstrim dari proses pengambilan keputusan. Ini berarti bahwa meskipun akan maka secara teoritis mungkin untuk membuat "pintar" AI, pengambilan masalah akan mengambil keputusan pemrosesan yang cukup rumit.

Nah, setelah kita membahas sedikit tentang apa itu AI pada game, saya akan menunjukan beberapa contoh game yang telah dimainkan atau mungkin masih kita mainnya sekarang ini. apalagi dulu mungkin banyak yang tahu tentang game pacman, bomberman dan juga tic tac toe. rasanya seperti nostalgia kemasa kecil dahulu yaa. sebagai contoh saya akan menjelaskan beberapa game yang dibuat menggunakan AI, sebagai berikut.
TOWER DEFENSE
 Tower defense adalah sebuah genre game dimana tugas kalian adalah mencegah musuh untuk mencapai tujuannya. Kalian akan dibekali dengan berbagai macam alat atau pasukan yang mempunyai kegunaan masing-masing. nah ini dia genre game yang paling saya sukai dahulu ketika saya masih smp. pasti tahu tentang dota 1 kan, atau juga disebut Defense of the Ancients. itu adalah awalnya dota berawal dan hingga sekarang masih banyak yang memainkan.
FPS (First Person Shooter)
Game First Person Shooter (fps) adalah salah satu jenis game (genre) yang digemari menggunakan pandangan orang pertama di mana pemain seolah-olah menjadi karakter utama dalam game yang berpusat pada permainan di sekitar senjata-senjata dan peluru tempur. First Person Shooter  jenis 3D game shooter yang menampilkan orang pertama sudut pandang dengan pemain yang melihat aksi melalui mata karakter permain. Tidak seperti orang ketiga penembak yang terlihat dari bagian belakang atau samping, yang memungkinkan gamer untuk melihat karakter mereka mengendalikan. Elemen desain utama adalah pertempuran, terutama yang melibatkan senjata api. Orang jujur pertama dapat dianggap sebagai genre yang berbeda dalam dirinya sendiri, atau jenis permainan penembak, pada gilirannya sebuah subgenre yang lebih luas permainan aksi genre.
RPG GAME
Role Playing Game (RPG) atau permainan peran adalah permainan di mana player memainkan tokoh peran khayalan dan berkolaborasi untuk melanjutkan ceritanya. Jadi, game ini para pemain memilih aksi tokok-tokoh mereka berdasarkan karakteristik tokoh tersebut, dan keberhasilan aksi mereka tergantung dari sistem peraturan permainan yang telah ditentukan. Asal tetap mengikuti peraturan yang ditetapkan, para pemain bisa berimprovisasi membentuk arah dan hasil akhir permainan ini. 
 KESIMPULAN
Menurut pendapat saya, peranan AI dalam dunia game sangatlah membantu kita dalam memainkan suatu game dengan genre yang kita sukai, saking pentingnya peranan AI bisa jadi melatih kita agar lebih termotivasi agar lebih bisa melebihi AI yang sulit. Jadi keberadaan AI dalam teknologi game sangat lah membantu. Yang pertama AI dapat menjadi lawan bermain yang cukup tangguh. Lalu yang kedua AI dapat melatih otak kita untuk berpikir keras lagi dalam menyelesaikan game yang kita mainkan. Dengan adanya AI kita juga tidak perlu repot untuk mencari lawan bermain jika memang kita sedang tidak ada lawan bermain. Sebagai contoh kita dapat bermain Counter Strike dimana yang menjadi musuh kita merupakan Bot (komputer) yang memiliki kecerdasan yang cukup tinggi. Dia dapat menemukan pemain lalu menyerangnya. 

Sumber : 
https://asywitri.wordpress.com/2010/03/03/30/
https://en.wikipedia.org/wiki/Artificial_intelligence_(video_games)
http://rafiqamalyah.blogspot.co.id/2013/05/kecerdasan-buatan-pada-teknologi-game.html
http://www.eocommunity.com/Pengertian-Game-RTS-FPS-RPG-MMORPG-Hybrid-dan-3rd-Person-Shooter






Jumat, 15 April 2016

Mobile Computing Dan Aplikasinya

Pengertian
Mobile Computing adalah sebuah paradigma baru dalam kemajuan teknologi yang dapat melakukan komunikasi dengan jaringan  nirkabel sehingga user mampu melakukan perpindahan.
Kelas tertentu dalam sistem terdistribusi dimana beberapa node dapat bergerak bebas dan melakukan koneksi pada jaraingan yang berbeda.

Prinsip/cara kerja dari mobile computing
Secara singkat, mobile computing berarti menyatukan seluruh sumberdaya TI ke dalam sekumpulan layanan yang bisa digunakan secara bersama-sama untuk memenuhi kebutuhan komputing perusahaan. Infrastruktur mobile computing secara kontinyu menganalisa permintaan terhadap sumberdaya dan mengatur suplai untuk disesuaikan terhadap permintaan tersebut. Dimana data disimpan atau computer mana yang memproses permintaan tidak perlu dipikirkan. Sebagaimana arus listrik; untuk memanfaatkannya, tempat pembangkit atau bagaimana proses pengkabelan jaringan listrik tidak perlu diketahui. Dalam menyelesaikan masalah system monolitik dan sumberdaya yang terfragmentasi, mobile computing bertujuan menciptakan keseimbangan antara pengaturan suplai sumberdaya dan kontrol yang fleksibel
Dua prinsip kerja utama mobile computing yang membedakannya dari arsitektur komputasi yang lain, seperti mainframe, klien-server, atau multi-tier yaitu virtualisasi dan provisioning.
  •  Virtualisasi 

Setiap sumberdaya (contoh komputer, disk, komponen aplikasi dan sumber informasi) dikumpulkan bersama-sama menurut jenisnya, lalu disediakan bagi konsumen (orang atau program software). Virtualisasi berarti meniadakan koneksi secara fisik antara penyedia dan konsumen sumberdaya, dan menyiapkan sumberdaya untuk memenuhi kebutuhan tanpa konsumen mengetahui bagaimana permintaannya bisa terlayani.
  • Provisioning 

Ketika konsumen meminta sumberdaya melalui layer virtualisasi, sumberdaya tertentu di belakang layer didefinisikan untuk memenuhi permintaan tersebut, dan kemudian dialokasikan ke konsumen. Provisioning sebagai bagian dari mobile computing berarti bahwa system menentukan bagaimana cara memenuhi kebutuhan konsumen seiring dengan mengoptimasi jalannya sistem secara keseluruhan.

Perangkat Mobile Computing
  • Laptop 

Merupakan komputer portabel, kecil dan dapat dibawa kemana saja dengan sangat mudah yang terintegrasi pada sebuah casing. Berat laptop berkisar dari 1 sampai 6 kilogram tergantung ukurannya, bahan dan spesifikasi. Sumber listrik berasal dari baterai atau A/C adaptor yang dapat digunakan untuk mengisi ulang baterai dan untuk menyalakan laptop itu sendiri. Laptop kegunaannya sama dengan Komputer desktop, yang membedakannya hanya ukuran sehingga memudahkan pemakai untuk membawanya kemana-mana.
  • PDA(Personal Digital Assistants) 

Adalah sebuah alat elektronik yang berbasis komputer dan berbentuk kecil serta dapat dibawa kemana-mana.  Menurut  sepengetahuan saya PDA banyak digunakan sebagai pengorganisir pribadi pada awalnya, tetapi karena perkembangannya, kemudian bertambah banyak fungsi kegunaannya, seperti kalkulator, penunjuk jam dan waktu, permainan komputer, pengakses internet, penerima dan pengirim surat elektronik (e-mail), penerima radio, perekam video, dan pencatat memo. Selain dari itu dengan PDA (komputer saku) ini, kita dapat menggunakan buku alamat dan menyimpan alamat, membaca buku-e, menggunakan GPS dan masih banyak lagi fungsi yang lain. Bahkan versi PDA yang lebih canggih dapat digunakan sebagai telepon genggam, aksesinternetintranet, atau extranet lewat Wi-Fi atau Jaringan Wireless. Salah satu ciri khas PDA yang paling utama adalah fasilitas layar sentuh
  • SmartPhone 

Adalah ponsel yang menawarkan kemampuan canggih, boleh dikata kemampuannya menyerupai kemampuan PC (komputer). Umumnya suatu ponsel dikatakan sebagai smartphone bila dapat berjalan pada software operating system yang lengkap dan memiliki interface dan platform standar bagi pengembang aplikasi. Sementara itu ada yang mengatakan smartphone adalah ponsel sederhana dengan fitur canggih seperti kemampuan mengirim dan menerima email, menjelajah internet dan membaca e-book, built in full keyboard atau external USB keyboard,atau memiliki konektor VGA. Dengan kata lain, smartphone adalah miniatur komputer dengan kemampuan ponsel .

Kelebihan Mobile Computing
  • Aplikasi yang luas
  • Bergerak/berpidah lokasi secara bebas
  • Bebas berpindah jaringan
Kekurangan Mobile Computing
  • Minimnya Bandwith
Akses internet pada peralatanini lambat jika dibandingkan dengan akses dengan kabel, akan tetapi dengan menggunakan teknologi GPRS, EDGE dan jaringan 3G, LAN Nirkabel berkecepatan tinggi tidak terlalu mahal tetapi memiliki bandwith terbatas.
  • Konsumsi tenaga
Mobile computing sangat bergantung pada daya tahan baterai.
  • Gangguan Transmisi
Jarak dengan pemancar sinyal dan cuaca sangat mempengaruhi transimis data pada mobile computing.
  • Potensi Terjadinya Kecelakaan
Beberapa kecelakaan akhir2 ini kerap disebabkan oleh pengendara yang menggunakan peralatan mobile computing saat berkendara.

Aplikasi Mobile Computing
Waze
Di kota-kota besar di Indonesia, terutama di Jakarta, kemacetan adalah masalah yang tidak pernah usai. Dan ditambah dengan sulitnya mencari sebuah lokasi yang belum pernah dikunjungi sebelumnya (akibat luasnya ukuran kota dan rumitnya sistem jalan raya yang ada), maka bepergian dengan kendaraan pribadi adalah sebuah kegiatan yang memerlukan persiapan dan antisipasi tersendiri.
Tapi, dengan semakin canggihnya teknologi saat ini, masalah seperti itu bisa diatasi cukup dengan membawa sebuah smartphone dan meletakkannya di dekat Anda. Dan itulah hal yang Anda perlukan untuk menggunakan Waze saat berkendara. Waze sendiri adalah aplikasi yang membantu Anda mencari rute, memandu Anda mengikuti rute tersebut ketika berkendara, serta melaporkan kondisi lalu lintas di sekitar Anda dan di rute yang akan Anda tempuh secara real-time.
Navigasi dan pencarian rute yang dimiliki Waze pada menu “navigate” sangat mudah dan bisa memenuhi kebutuhan Anda dengan cepat. Untuk mencari rute tempat-tempat yang akan sering Anda kunjungi seperti rumah atau kantor, Anda bisa menyimpan alamat atau lokasinya sejak awal untuk kemudian diakses kapan saja Anda mau. Anda juga bisa menambahkan lokasi-lokasi lainnya untuk bisa diakses secara cepat.
Selain itu, Anda juga bisa mencari rute lokasi tertentu berdasarkan kategori yang ada pada menu tersebut. Kategori yang disediakan antara lain pom bensin, tempat parkir, bank atau ATM, bengkel, dan semua kategori yang memang sering Anda cari dan butuhkan. Ini tentunya sangat membantu karena terkadang penduduk kota besar cenderung tidak tahu sebuah alamat dan rute sebuah tempat secara persis.
Yang unik dari menu navigasi ini, Anda juga bisa mengetahui lokasi teman yang ingin Anda jemput dengan mengirimkan SMS atau email kepada teman Anda. Setelah di-klik, maka Anda akan diberikan lokasi dan rute menuju lokasi teman Anda, sementara teman Anda bisa memantau perjalanan Anda secara real-time.
Oh, dan jika Anda ingin sedikit berpetualang dan bosan dengan rute yang itu-itu saja, Waze menyediakan rute alternatif untuk mencapai sebuah lokasi. Perubahan rute ini juga bisa dilakukan di tengah perjalanan jika Anda melihat terjadinya masalah di rute yang Anda tempuh saat itu.
Setelah mendapatkan rute yang sesuai, Anda tinggal meletakkan smartphone Anda dengan speaker dan aplikasi Waze yang tetap aktif, dan mengikuti instruksi suara dari aplikasi ini.
Tapi, fitur yang membuat Waze menarik dan sangat berguna adalah pengawasan kondisi lalu lintasnya. Dan sesuai dengan tagline-nya, ”outsmarting traffic, together”, semua laporan kondisi lalu lintas tersebut berasal dari Anda dan pengguna lainnya.
Pada peta Waze, Anda akan melihat berbagai icon dan warna pada jalan. Jika jalan tersebut berwarna merah, orange, atau kuning, itu berarti jalan tersebut sedang macet dengan merah menandakan macet parah dan kuning menandakan macet yang ringan. Warna tersebut tercipta dari kecepatan tiap pengguna ketika berkendara menggunakan Waze, dan dilacak oleh sistem Waze sendiri.
Selain warna, pada peta juga terdapat berbagai macam icon, terutama icon mobil berbaris.Icon tersebut adalah laporan langsung yang dimasukkan oleh pengguna ketika dalam perjalanan. Jika Anda juga ingin melaporkan kondisi jalan yang Anda tempuh, Anda juga bisa melaporkannya melalui pilihan “report” yang tersedia di pojok kanan bawah. Pada “report”, Anda bisa memilih laporan Anda antara lain1:
  • Traffic Jam, melaporkan kemacetan pada lokasi Anda. Tingkat kemacetannya bisa dilaporkan dalam tiga tingkat: moderateheavy, atau standstill.
  • Police, melaporkan bahwa ada polisi yang terlihat ataupun tersembunyi di lokasi Anda.
  • Accident, melaporkan kecelakaan besar (major accident) atau kecelakaan kecil (minor accident) di lokasi Anda.
  • Hazard, melaporkan adanya kerusakan atau masalah pada jalan (on road) atau bahu jalan (shoulder), atau cuaca buruk pada lokasi Anda.
  • Camera, melaporkan bahwa ada kamera CCTV untuk menangkap kecepatan (speed), kamera pada lampu merah (red light), dan kamera palsu (fake).
  • Closure, melaporkan adanya penutupan jalan. Anda bisa melaporkan secara detil arah jalan mana yang ditutup, dan sistem Waze akan menyimpannya dan menyesuaikan pembuatan rute mereka.
Ya, laporan yang Anda bisa berikan sangatlah detil. Sebagian pilihan laporan tersebut bahkan bisa disertakan informasi apakah kejadian yang dilaporkan terjadi di ruas jalan Anda atau ruas jalan lainnya, memasukkan teks, dan bahkan memasukkan gambar (jika Anda memang sempat melakukannya). Selain itu, Anda juga bisa melaporkan masalah peta pada Waze, dan juga mengajak pengguna lain chatting. Tapi saya ragu Anda mau membahayakan hidup Anda dengan chatting di saat berkendara.
Untuk melihat laporan-laporan yang ada di jalan ini, Anda bisa melakukannya dengan dua cara. Yang pertama adalah dengan melihatnya langsung pada peta. Yang kedua adalah melihatnya pada menu “report” (pada pilihan menu, bukan pojok kanan bawah aplikasi). Dalam menu ini Anda bisa melihat semua laporan yang ada di sekitar Anda, atau hanya laporan yang ada di rute yang Anda tempuh.

Referensi


Sabtu, 02 April 2016

Konsep Pembuatan Script Game Computer

Apa itu game?

Dalam kamus bahasa Indonesia “Game”diartikan sebagai permainan. 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 bagaimana jalannya permainan. Game bertujuan untuk menghibur, biasanya game banyak disukai oleh anak-anak namun saat ini orang dewasa pun banyak yang bermain game yang artinya penikmat game tidak dibatasi oleh umur demikian pula gender karena saat ini game banyak pula dimainkan oleh wanita. 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 memiliki sisi negative yang dapat merugikan karena jika kita sudah kecanduan game kita akan lupa waktu dan akan mengganggu kegiatan atau aktifitas yang sedang kita lakukan
Game berasal dari kata bahasa inggris yang berarti dasar permainan. Permainan dalam hal ini merujuk pada pengertian kelincahan intelektual( Intellectual Playability Game) yang juga bisa diartikan sebagai arena keputusan dan aksi pemainnya. Dalam game, ada target-target yang ingin dicapai pemainnya.
Terdapat beberapa komponen-komponen di dalam game dan diantaranya:
1. Grafik
Grafik merupakan suatu hal yang penting dalam game, dimana grafik ini akan membuat game menjadi daya tarik user untuk memainkan game. pada awalnya game menggunakan grafik monokrom dengan layar hitam putih sampai sekarang sudah menggunakan teknologi 3D,  semakin bagus grafik maka game tersebut semakin seperti dalam  dunia nyata.
2. Suara
suara menjadi komponen game karena dengan adanya suara pada game maka game tersebut akan menarik sehingga kita dapat merasakan kondisi dalam game tersebut. selain itu, dengan adanya suara, kita tidak bosan bermain game.
3. AI(kecerdasan Buatan)
Kecerdasan buatan atau AI(artificial Inteligence) menjadi komponen game karena dengan hal tersebut game menjadi lebih menantang. Dengan menggunakan AI, game dapat berpikir untuk mengalahkan pemain sehingga membuat game lebih seru.
4. Skenario Game
Skenario game menjadi komponen game karena dengan adanya skenario dalam game, si pemain seolah-olah bermain sesuai dengan petunjuk yang ada di game tersebut, sehingga dapat dikatakan game tersebut memiliki cerita sehingga membuat pemain lebih asyik memainkan game tersebut
5. Multiplayer
Multiplayer bisa menjadi komponen  game  karena dengan hal tersebut, pemain dapat bermain dengan teman-temannya dan orang lain sehingga game itu dapat dimainkan lebih dari 1 orang. dengan kata lain, multiplayer adalah sebuah mode dalam game dimana game dimainkan oleh pemain lainnya sehingga bermain game secara bersama-sama.

 Apa itu game engine?

Game Engine adalah sebuah sistem yang dirancang untuk penciptaan dan pengembangan video game. Ada banyak Gam Engine yang dirancang untuk bekerja pada Video Game Console maupun PC. Fungsionalitas inti yang biasanya disediakan oleh Game Engine  mencakup mesin rendering (“renderer”) untuk grafis 2D atau 3D, mesin fisika atau deteksi tabrakan (dan tanggapan tabrakan), suara, script, animasi, AI, jaringan, streaming, Memory Management, Threading, Localization, dan grafik adegan.
Tujuan Penggunaan Game Engine
Game engine menyediakan seperangkat alat pengembangan visual di samping komponen software. Kebanyakan Game Engine menyediakan fasilitas yang memudahkan pengembangan, seperti grafik, suara, fisika dan fungsi AI. Game Engine ini kadang-kadang disebut “middleware” karena, seperti dengan istilah naluri bisnis, mereka menyediakan sebuah platform perangkat lunak yang fleksibel dan dapat digunakan kembali yang menyediakan semua fungsionalitas inti yang dibutuhkan, langsung untuk mengembangkan sebuah aplikasi permainan sambil mengurangi biaya , kompleksitas, dan waktu.
Seperti solusi middleware lainnya, Game Engine biasanya menyediakan abstraksi platform, yang memungkinkan permainan yang sama untuk dijalankan pada berbagai platform termasuk Console Game dan PC. Seringkali, Game Engine dirancang dengan arsitektur berbasis komponen yang memungkinkan sistem tertentu dalam mesin yang akan diganti atau diperpanjang dengan lebih khusus (dan sering kali lebih mahal) komponen middleware game seperti Havok untuk fisika, Miles Sound System untuk suara, atau Bink untuk Video.
Beberapa Contoh Game Engine Open Source :
– 3Dgame Studio
– Delta 3D
– UnrealEngine
– Panda3D
– Torque
– Quake Engine

Pemilihan Bahasa Pemrograman
1. Speed
Bahasa scripting untuk game harus mampu berjalan secepat mungkin. Jika kita berniat untuk menggunakan banyak script untuk perilaku karakter dan kejadian di level game, maka script akan perlu untuk mengeksekusi sebagai bagian dari loop game utama. Ini berarti bahwa script yang lambat akan memakan waktu yang kita butuhkan untuk membuat suatu adegan,menjalankan mesin fisika, atau menyiapkan audio.
2. Kompilasi dan Interpretasi (penyusunan dan penafsiran)
Bahasa scripting secara luas diinterpretasikan,melalui susunan serangkaian byte. Penafsiran bahasa diambil melalui format teks. Interpreter melihat setiap baris, penyusunan bekerja sesuai yang maksud dari script, dan melakukan tindakan yang spesifik. Bahasa byte-terkompilasi dikonversi dari teks ke format internal, yang disebut byte code. Kode byte biasanya jauh lebih padat daripada format teks.Karena kode byte dalam suatu format dioptimalkan ketika dieksekusi, agar dapat berjalan lebih cepat.
3. Ekstensibilitas dan Integrasi
Bahasa scripting perlu memiliki akses kefungsi yang signifikan ke dalam game. Sebuah script yang mengendalikan karakter, misalnya harus mampu untuk menanyai game untuk mencari tahu apa yang bisa dilihat dan kemudian membiarkan game tahu apa yang akan dilakukan sebagai aksinya.
4. Re-Entrancy (ikut serta ulang)
Fungsi ini sering berguna untuk memanggil script menjadi diikut sertakan ulang. Mereka dapat berjalan untuk sementara waktu, dan ketika anggaran waktu telah habis script akan dapat ditunda. Ketika script selanjutnya mendapatkan beberapa waktu kembali, maka akan dapat menjalankan kembali script yang ditunda sebelumnya. Hal ini sering membantu untuk membiarkan kontrol hasil script saat mencapai jeda normal. Kemudian sebuah algoritma penjadwalan dapat memberikan lebih banyak waktu untuk meminimalisasi penggunaan sumber daya. Sebuah script untuk mengendalikan sebuah karakter, misalnya, mungkin memiliki limatahapan yang berbeda (memeriksa situasi, memeriksa kesehatan, menentukan gerakan, rencana rute, dan melaksanakan gerakan). Ini semua dapat dimasukkan dalam satu script yang menghasilkan penyekat antara setiap bagian. Kemudian masing-masing akan berjalan dengan setiap lima frame, dan beban dari eksekusi AI akan didistribusikan.

Embedding (Penanaman)
Embedding berhubungan dengan ekstensibilitas.Sebuah bahasa yang tertanam dirancang untuk dimasukkan ke dalam program lain. Ketika kitamenjalankan bahasa scripting dari workstation, biasanya akan menjalankan program khusus untuk menafsirkan file source code. Dalam game, sistemscripting perlu dikontrol dari dalam program utama.Game yang menentukan jalannya script harusdijalankan dan harus dapat memberitahu mesin terkait bahasa scripting yang cocok untuk memproses script tersebut.
Tahapan Pengolahan bahasa
Memulai sebagai teks dalam sebuah file teks, script biasanya melewati empat tahap: tokenization, parsing (penguraian), kompilasi, dan interpretasi. Keempat tahapan membentuk sebuah jalur, masing-masing memodifikasi masukan untuk mengubahnya menjadi format yang lebih mudah dimanipulasi.
1.    Tokenizing
Tokenizing mengidentifikasi unsur-unsur dalam teks. Sebuah file teks hanya berisi serangkaian karakter (dalam pengertian karakter ASCII). Hasil tokenizer keluar sebagai kumpulan  byte tertentu dan jenis dari kelompok tertentu yang membentuk mereka. Sebuah string dalam bentuk : 1 a = 3.2;


2. Parsing
Makna dari sebuah program adalah sangat hirarkis: nama variabel dapat ditemukan dalam sebuah statement pemberian nilai, ditemukan di dalam pernyataan IF-, yang ada di dalam tubuh fungsi, di dalam definisi kelas, maupun di dalam sebuah deklarasi namespace. Contoh : 1 if (a < b) return
dapat dilakukan proses parsing seperti pada bagan di bawah ini :


3.    Compiling           
Compiler mengubah parse tree ke dalam kode byte yang dapat dijalankan oleh interpreter. Kode byte  biasanya berbentuk data biner berurutan.
Contoh :

4.    Interpreting
Tahap akhir dari serangkaian ini ialah menjalankan kode byte. Dalam sebuah compiler untuk bahasa seperti C atau C++, produk akhir akan menjadi mesin instruksi yang dapat langsung dijalankan oleh prosesor.
Bahasa Yang Sering Digunakan
Lua
Lua adalah bahasa prosedural sederhana yang dibangun dari dasar ke atas sebagai bahasa embedding. Desain bahasa didorong oleh ekstensibilitas. Tidak seperti kebanyakan bahasa embedded, hal ini tidak terbatas untuk menambahkan fungsi baru atau tipe data di C atau C + +. Cara kerja bahasa Lua juga dapat men-tweak.
Python
Python adalah bahasa yang mudah dipelajari, bahasa scripting berorientasi objek dengan ekstensibilitas  baik dan dukungan embedding. Python menyediakan dukungan yang sangat baik untuk  pemrograman bahasa campuran, termasuk kemampuan untuk secara transparan memanggil C dan C + + dari Python.
Tools Lex dan Yacc
Lex dan Yacc adalah dua tool utama yang digunakan dalam membangun tokenizers dan parser. Masing-masing memiliki implementasi yang berbeda dan kebanyakan disediakan untuk platform UNIX (namun tersedia versi untuk platform lain juga). Varian Linux yang sering digunakan contohnya adalah Flex dan Bison.

Sumber : 
https://chikhungunya.wordpress.com/2011/05/26/definisi-game-dan-jenis-jenisnya/
https://hafidsun.wordpress.com/2012/03/11/apa-itu-game/
https://tito0809.wordpress.com/category/tugas-kuliah/pengantar-teknologi-game/
http://www.academia.edu/3875722/Scripting_dalam_Pembuatan_Game
Les Pradew,”Beginning Illustration and Storry Boarding for Games”, Thomson Course Technology, 2005
Christy Marx, ”Writing for Animation, Comics and Games”,Elsevier,2007.