Sugeno Fuzzy for Non-Playable Character Behaviors in a 2D Platformer Game

  • Authors

    • Ridwan Rismanto
    • Rudy Ariyanto
    • Awan Setiawan
    • Melcinsiasih Elinggar Zari
    https://doi.org/10.14419/ijet.v7i4.36.29005
  • Sugeno Fuzzy, Platformer game, Unity Game Engine, Artificial Intelligence
  • One aspect for a platformer game to be challenging to play is the NPC (Non Playable Character). An NPC is often placed as an obstacle for player to finish at each level. However, an effort must be done to create a behavior of an NPC to be challenging enough and not monotonous. Creating random behavior is one way. But the problem with this approach is a less interactive NPC behavior because of its inability to respond from the game state accordingly. In this paper, we propose an implementation of Sugeno Fuzzy to create behaviors for the NPCs. This methodology takes player’s state and NPC’s state to determine what action will be done. The inputs are player to NPC distance, NPC’s health and player’s weapon ammunition. The outputs are retreat, defense and attack. We applied this methodology in an educational game about Rubela virus vaccination “Healthy Hero†for its boss enemies. Evaluation shows that by applying Sugeno Fuzzy, the NPC behavior can responds to player’s state and its own state. The real-time execution resulted in 100% correct behavior according to the predefined rules, therefore increasing the behavior interactivity for the NPC.

     

  • References

    1. [1] Yannakakis G., Togelius J. (2018) Artificial Intelligence and Games, Springer.

      [2] Pirovano M. (2012) The use of Fuzzy Logic for Artificial Intelligence in Games. Technical report, University of Milano, Milano.

      [3] Yunifa M.A., Ady W., Fachrul K., (2012) Pergantian Senjata NPC pada Game FPS Menggunakan Fuzzy Sugeno. Seminar Nasional Competitive Advantage.

      [4] Purba, K., Hasanah, R., & Muslim, M. (2013). Implementasi Logika Fuzzy Untuk Mengatur Perilaku Musuh dalam Game Bertipe Action-RPG.Jurnal EECCIS, 7(1), pp.15-20.

      [5] Naba, Agus (2009), Belajar Cepat Fuzzy Logic Menggunakan MATLAB, Yogyakarta, Andi Offset.

      [6] Kusumadewi, Sri, Sri Hartati. (2010). Neuro- Fuzzy Integrasi Sistem Fuzzy dan Jaringan Syaraf. Yogyakarta: Graha Ilmu.

      [7] C. W. Reynolds (1999), Steering behaviors for autonomous charachters. In Proc. of Game Developers Conference, pages 763–782. Miller Freeman Game Group, San Francisco, CA.

      [8] Treanor M, Zook A, Mirjam P. Eladhari, Julian Togelius, Gillian Smith, Michael Cook, Tommy Thompson, Brian Magerko, John Levine, and Adam Smith. (2015), AI-based game design patterns.

      [9] Riedl, M., and Stern A. (2006), Believable agents and intelligent story adaptation for interactive storytelling. Technologies for Interactive Digital Storytelling and Entertainment, pages 1–12.

      [10] Mitasari, Fajar, dkk (2017), Implementasi Logika Fuzzy pada Pembuatan Karakter Musuh untuk Game Single Fighter Berplatform Android. Jurnal SINUS Vol. 15 No. 1.

      [11] Griffin D.E (2001) Measles Virus, in Fields Virology. Knipe DM , Howley PM, Griffin DE, Martin MA, Lamb RA, Roizman B, Straus SE, editors. 4th edition. Lippincott Williams & Wilkins.

      [12] Unity Technologies (2018), Vector3.Distance. Unity Documentation, available online: https://docs.unity3d.com/ScriptReference/Vector3.Distance.html

      [13] Abdiansyah, Primanita A. and Muliawan F. (2014) Fuzzy Logic Implementation on Enemy Speed Control to Raise Player Engagement. Proceeding of The 1st International Conference on Computer Science and Engineering, Vol. 1 No. 1.

      [14] Hooshyar, D., Yousefi, M., & Lim, H. (2017). A systematic review of data-driven approaches in player modeling of educational games. Artificial Intelligence Review, 1-21.

  • Downloads

  • How to Cite

    Rismanto, R., Ariyanto, R., Setiawan, A., & Elinggar Zari, M. (2018). Sugeno Fuzzy for Non-Playable Character Behaviors in a 2D Platformer Game. International Journal of Engineering & Technology, 7(4.36), 14447-1452. https://doi.org/10.14419/ijet.v7i4.36.29005