110 likes | 267 Vues
This project by Adrián Ahuatzi Ayala explores the creation of a State Machine Tool designed to streamline game development, focusing on game mechanics and NPC behavior using C++. The tool integrates Lua scripting for greater flexibility, enabling developers to register state machines and implement dialogue systems effortlessly. The project discusses the overall architecture, including both the game and tool sides, and presents a demo to illustrate functionality. This initiative aims to fill the gap in game project development by providing a comprehensive solution for state management in interactive applications.
E N D
State Machine Tool A research project For CS580 By AdriánAhuatzi Ayala
What? • Why? • How? • Demo • Questions
What section .text global _start _start: movedx,len movecx,msg mov ebx,1 mov eax,4 int 0x80 mov eax,1 int 0x80 section .data msgdb ‘Woof, woof!',0xa lenequ $ - msg
Why No game project, yet… Create a tool
How?The big picture Compiled Interpreted
How?Game side (C++) 1. NPC behavior 2. Lua friendly S.M. 3. Register with Lua 4. Start State
How?Tool side 1. UI & S.M. Logic 2. Talk “Lua” 3. Lua script
How?Lua S.M. GoSouth GoEast
Demo! • demo
Questions & References • Buckland, Programming Game AI by Example • Mascarenhas, LuaInterface: User’s Guide