This is a simple RPG game built mostly from scratch using Phaser 3
. Not sure what it's going to be like yet, but I'm sure it will be fun!
- In-game cutscenes
- How to manage game animation creation and management
- Dialogue storage location
- ⬇️ Animated tiles
- Movement controls go 💥 if you pause the game (and prob is you unfocus browser)
- NPCs with movementCommands won't
- play interact animations
- change their movement commands
- Dialogue stopping movement breaks on scene tranisition
- Set up Phaser 3 + TypeScript
- Add webpack
- Static maps from tiled
- Get a character working
- movement
- animations
- idles
- Lock character movements to 16x16 grid
- took a lot longer than I expected...
- mirrors Annoraaq's grid engine
- Add babel 🤷 seems like not needed for our purposes
- Dialogue system
- get something working
- make box spawn at the right position even when you have moved away
- layer multiple scenes: TOOK ME FOREVER... didn't know how default draw order was determined. didn't know it was even a thing
- dialogue spawning interaction
- many dialogue boxes can be spawned at once !?!?!?!? 🤯🤯🤯
- Should all this logic be in the TestScene?
- after creating the TestScene, it is clear that it should not be. Refactor time!
- Many refactors to be made 😰
- after creating the TestScene, it is clear that it should not be. Refactor time!
- Did some TODOs
- Interactables still hardcoded in ObjectManager
- NPCs
- generated by code
- walk around randomly
- w collisions
- w animations
- talk to them
- make NPCs not all the same
- Many things to consider.
- lots of TODOs
- reconsider approach to composition
- ❌ Couldn't get TS mixins to enforce the proper constructor for chained mixins
- organize an order of initialization and dependency bind timings
- typing interactionCommands & movementCommands
- Party
- narty members follow you
- not collidable to you or eachother, but are to everything else
- Party class to abstract party logic from game input manager
- Scene transitions
- saving scene state
- load scene diffs based on save file
- 🦗 Activating Dialogue
- twice doesn't work
- space keyup wasn't registering when inputs were disabled
- thrice works but breaks your controls
- the end dialogue callback was never updated to the proper one past the first
- twice doesn't work
- Different interactions
- enter dialogue
- stops your movement
- cause animation
- transition scene
- move self
- trigger other objects to do something
- e.g.
- move the player
- make other play animation
- e.g.
- do muiltiple above actions
- enter dialogue
- Pause menu
- inventory
- GameManager
- ❌ I don't remember what this was about
- Dialogue system
- comb over code again
- multi-slide dialogue
- can go through dialogue without mouse
- can skip through dialogue
- can respond
- can offer different responses
- Door, Sign, Photo -> InteractableObj
- BaseObject Class
- ❌ Try some sort of mixin strat again
- did a do all approach
- ❌ Try some sort of mixin strat again
- ObjectManager registers objects based on non-null abilities
- Other refactors 🤭
- Depth sorting
- Easy scene creation
Based on:
Pixel art: