Online multiplayer game with AI

With the rise of the online gaming industry, many game developers have taken tabletop games, such as Chess, Poker and Scrabble, which are traditionally played in person, to the online realm. By digitalizing tabletop games, it would enable players in the online realm to connect and play with one anot...

Full description

Saved in:
Bibliographic Details
Main Author: Teo, Sheryl Swe Zen
Other Authors: Chua Hock Chuan
Format: Final Year Project
Language:English
Published: Nanyang Technological University 2021
Subjects:
Online Access:https://hdl.handle.net/10356/149697
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Nanyang Technological University
Language: English
Description
Summary:With the rise of the online gaming industry, many game developers have taken tabletop games, such as Chess, Poker and Scrabble, which are traditionally played in person, to the online realm. By digitalizing tabletop games, it would enable players in the online realm to connect and play with one another even when they are not physically together. Enabling this digitization is critical, especially considering the recent pandemic. By avoiding the hassle of physically setting up actual game pieces and boards, more players would be attracted to give it a try. Nowadays, a game's live process is more important to a game developer than making a packaged and finished product. Artificial intelligence (AI) or similar technologies, such as bots that serve as antagonists or neutral characters, are used in the majority of online games, regardless of the game genre. AI and game development are growing with each other in various ways. Future AI advances and development can be accelerated by researching AI patterns in games and building on its algorithm. Determining the tabletop game to develop is important for this project to test the ability of machine learning agents (ML-Agents) in Unity3D. Therefore, Mah-jong, a game of strategy, skill and memory will be the tabletop game that will be developed in this project. The objective of this project is to digitalise the chosen table-top game using Unity3D and implement AI players. This would allow players to engage in the table-top game conveniently without the physical objects usually required in traditional table-top games. In this game, there are two parts to be covered – the game development and implementation of an AI player. However, only the game logic development and user interface (UI) design choices will be discussed here. The rest will be touched on by the author’s project partner, Siew Jun Leong. The author has developed a modified version of Singapore’s variant of Mah-jong on Unity3D. With the help of GameObjects components within the Unity3D game engine, such as UI elements, Colliders and Layout Group elements, combined with customized C# scripting, the author was able to develop a modified Singapore Variant Mah-jong game. Players can smoothly play the game with fundamental game moves like Chow, Pong, Gang and Game moves. Priority of game moves is also implemented in this game. Changing of the prevailing wind and rotating players with dealer role are also enabled to mimic a full game of Mah-jong.