Implementation of Finite State Machine in Flowchart-Based Visual Programming Game

Main Article Content

Iqbal Al Mahdi
Saiful Bukhori
Muhammad Ariful Furqon

Abstract

This study explores the implementation of Finite State Machines (FSMs) in a visual programming game based on flowcharts, aimed at enhancing the learning experience of programming concepts. Traditional programming education methods often struggle to engage beginners, leading to the development of interactive and intuitive approaches such as visual programming games. In this context, FSMs are integrated to manage the behavior of game units, allowing for dynamic state transitions based on user-defined flowcharts. The research adopts the Game Development Life Cycle (GDLC) approach, focusing on initialization, pre-production, production, and alpha testing stages. The primary objective is to implement and validate the FSM's effectiveness in controlling unit behavior within the game. Users can design strategies through a drag-and-drop interface, creating flowcharts that translate into FSM models, which dynamically control unit actions during gameplay. Results from the alpha testing indicate that the FSM implementation successfully manages the transitions and behaviors of game units according to the conditions specified in the flowcharts. This demonstrates the technical feasibility and effectiveness of the approach. Although the study does not extend to beta testing and release stages, the alpha testing provides a solid foundation for future research and development focused on user experience and broader feedback.

Dimensions

Article Details

Section
Articles

References

[1] S. Schez-Sobrino, D. Vallejo, C. Glez-Morcillo, M. A. Redondo and J. J. Castro-Schez, "RoboTIC: A serious game based on augmented reality," Springer Science+Business Media, LLC, part of Springer Nature 2020, 2020.

[2] S. Grey and N. A. Gordon, "Motivating Students to Learn How to Write Code Using a Gamified Programming Tutor," Educ. Sci. 2023, 13(3), 230, 2023.

[3] A. Vahldick, P. R. Farah, M. J. Marcelino and A. J. D. Mendes, "A blocks-based serious game to support introductory computer programming in undergraduate education," Computers in Human Behavior Reports, 2020.

[4] J. P. Silva, I. F. Silveira, L. Kamimura and A. T. Barboza, "Turing Project: An Open Educational Game to Teach and Learn Programming Logic," in 2020 15th Iberian Conference on Information Systems and Technologies (CISTI), Seville, 2020.

[5] C. Schrader, "Serious Games and Game-Based Learning," in Handbook of Open, Distance and Digital Education, Singapore, 2023.

[6] H. Kayakoku, M. S. Guzel, E. Bostanci, I. T. Medeni and D. Mishra, "A Novel Behavioral Strategy for RoboCode Platform Based on Deep Q-Learning," Complexity, 2021.

[7] B. A. Noval, M. Safrodin and R. Y. Hakkun, "Battlebot : Logic Learning Based on Visual Programming Implementation in Multiplayer Game Online," in 2019 International Electronics Symposium (IES), Surabaya, 2019.

[8] N. Bak, B.-M. Chang and K. Choi, "Smart Block: A visual block language and its programming environment for," Journal of Computer Languages, 2020.

[9] K. Charntaweekhun and S. Wangsiripitak, "Visual Programming using Flowchart," ISCIT 2006, 2006.

[10] Sugiyanto, G. Fernando and W.-K. Tai, "A Rule-Based AI Method for an Agent Playing Big Two," Applied Sciences, 2021.

[11] I. Millington, AI for Games, Boca Raton: CRC Press, 2019.

[12] Z. Hu, C. Fan, Q. Zheng, W. Wu and B. Liu, "Asyncflow: A visual programming tool for game artificial intelligence," Visual Informatics, 2021.

[13] E. W. Hidayat, A. N. Rachman and M. F. Azim, "Penerapan Finite State Machine pada Battle Game Berbasis Augmented Reality," Jurnal Edukasi dan Penelitian Informatika, 2019.

[14] M. A. Kuhail, S. Farooq, R. Hammad and M. Bahja, "Characterizing Visual Programming Approaches for End-User Developers: A Systematic Review," IEEE Access, 2021.

[15] G. Huang, P. S. Rao, M.-H. Wu, X. Qian, S. Y. Nof, K. Ramani and A. J. Quinn, "Vipo: Spatial-Visual Programming with Functions for Robot-IoT Workflows," in CHI '20: Proceedings of the 2020 CHI Conference on Human Factors in Computing Systems, New York, 2020.

[16] W. E. Susanto and A. Syukron, Logika dan Algoritma untuk Pemula, Yogyakarta: Graha Ilmu, 2020.

[17] A. B. Chaudhuri, Flowchart and Algorithm Basics: The Art of Programming, Virginia: MERCURY LEARNING AND INFORMATION, 2020.

[18] G. N. Yannakakis and J. Togelius, Artificial Intelligence and Games, New York: Springer, 2018.

[19] R. Ramadhan and Y. Widyani, "Game development life cycle guidelines," in Conference: 2013 International Conference on Advanced Computer Science and Information Systems, Bali, 2013.