Artificial intelligence library for html5 based games: DignityAI

Today, acceleration of internet and common use of web pages, revealed the necessity of work with any browser smoothly for each application without of requirement of any plug-in. Generally, HTML5 is a new body of standards which is formed with the combination of CSS and JavaScript. In this context, by analysing game engines developed for HTML5, their features and advantages are investigated. Although, these game engines are close to catch up with the level of popular game engines, it is seen that none of artificial intelligence library was developed for HTML5 based games up to now. In this study, DignityAI artificial intelligence library is developed to fill this deficiency. Developed library has ability to be integrated to all HTML5 games independently from game engine and to add artificial intelligence dynamics to these games.

Html5 tabanlı oyunlar için yapay zeka kütüphanesi: DignityAI

Günümüzde internetin hızlanması ve web sayfalarının yaygınlaşması, her uygulamanın her tarayıcıda herhangi bir eklenti gerektirmeden sorunsuzca çalışması gerekliliğini ortaya çıkarmıştır. HTML5 genel olarak, CSS ve Javascript'in birleşimi ile oluşan yeni bir standartlar bütünüdür. Bu noktada, HTML5 için geliştirilen oyun motorları incelenerek; özellikleri ve sundukları olanaklar araştırılmıştır. Bu oyun motorları; popüler oyun motorlarının seviyesini yakalamaya yakın olmalarına rağmen, herhangi bir yapay zekâ kütüphanesinin şimdiye kadar HTML5 tabanlı oyunlar için geliştirilmemiş olduğu görülmüştür. Bu çalışmada, söz konusu eksikliği gidermek amacı ile DignityAI yapay zekâ kütüphanesi geliştirilmiştir. Geliştirilen kütüphane, oyun motorundan bağımsız olarak tüm HTML5 oyunlarına entegre edilebilen ve bu oyunlara yapay zekâ dinamiklerini katabilme yeteneğine sahip bir kütüphanedir.

___

J. Wexler, «Artificial Intelligence in Games: A look at the smarts behind Lionhead Studio’s “Black and White” and where it can and will go in the future,» 2002. [Çevrimiçi]. Available: http://www.cs.rochester.edu/~brown/242/assts/t ermprojs/games.pdf. [%1 tarihinde erişilmiştir19 April 2016].

Z. Middleton, «Case History: The Evolution of Artificial Intelligence in Computer Games,» 2002. [Çevrimiçi]. Available: http://web.stanford.edu/group/htgg/sts145paper s/zmiddleton_2002_1.pdf. [Accessed 19 04 2016].

M. Stall, «My baby, the finite state machine,» 2006. [Çevrimiçi]. Available: http://blogs.msdn.com/b/jmstall/archive/2006/0 9/13/baby-state-machine.aspx. [Accessed 21 04 2016].

B. Schwab, AI game engine programming, Boston, Massachusetts: Cengage Learning, 2009.

P. Lubbers, B. Albers ve F. Salim, Pro HTML5 programming, New York: Apress, 2011.

A. Freeman, The Definitive Guide to HTML5, New York: Apress, 2011.

T. Parisi, WebGL: up and running, California: O'Reilly Media, 2012.

S. Rabin, AI Game Programming Wisdom, Newton Centre: Charles River Media, 2002.

K. Compton and M. Mateas, "Procedural Level Design for Platform Games," in In Proceedings Of The Second Artificial Intelligence And Interactive Digital Entertainment Conference, California, 2006.

D. Beirne, "Racing Game AI: An Investigation into AI Techniques for Motorsport Simulation Games," 2007. [Online]. Available: http://www.mygamedemos.com/Abertay/David %20Beirne%20CS%201130A%20Artificial%2 0Intelligence%20for%20Games%20- %20Racing%20Game%20AI.pdf. [Accessed 21 04 2016].

J. Gordon, «A finite state machine javascript micro framework. Github Repository,» 2011. [Çevrimiçi]. Available: https://github.com/jakesgordon/javascript-statemachine. [Accessed 21 04 2016].

J. Cowart, «js ex machina - finite state machines in JavaScript. Github Repository,» 2012. [Çevrimiçi]. Available: https://github.com/ifandelse/machina.js. [Accessed 21 04 2016].

X. Xu, «A comprehensive path-finding library for grid based games. Github Repository,» 2011. [Çevrimiçi]. Available: https://github.com/qiao/PathFinding.js. [Accessed 21 04 2016].

A. Subagio, Learning Construct 2: Design and create your own engaging, extensible and addictive game using Construct 2, Birmingham: Packt Publishing, 2014.

D. Cielen ve A. Meysman, HTML5 Game Development with ImpactJS: A step-by-step guide to developing your own 2D games, Birmingham: Packt Publishing, 2013.

B. Bibat, "HTML 5 Shoot’em Up in an Afternoon: Learn (or teach) the basics of Game Programming with this free Phaser tutorial," 2014. [Online]. Available: https://leanpub.com/html5shootemupinanaftern oon/read. [Accessed 21 04 2016].

P. Kashyap, «Investigation into the use of HTML 5 game engines to create a responsive social educational game for children,» 2015. [Çevrimiçi]. Available: https://espace.cdu.edu.au/eserv/cdu:46185/Thes is_CDU_46185_Kashyap_P.pdf. [Accessed 21 04 2016].

B. McInnis, R. Shimizu, H. Furukawa, R. Fushimi, R. Tanaka ve K. Kratzer, HTML5 Game Programming with enchant.js, New York: Apress, 2013.

B. Uslu, «DignityAI - AI Library for HTML5 Games. Github Repository,» 2015. [Çevrimiçi]. Available: https://github.com/berkanuslu/dignityai. [Accessed 21 04 2016].

B. Uslu, «DignityAI Demo 1: Tanx AI. Github Repository,» 2015. [Çevrimiçi]. Available: https://github.com/berkanuslu/dignity_tank. [Accessed 21 04 2016].