Week 4 Progress

Hey, Jack here with the fourth update to the Wizard Tower Game. I’m happy to share that the player is now able to launch projectiles radially from the end of their magic staff.

By utilizing some projectile placeholder assets, I can also say with confidence that any projectile object can be swapped out with the fireball object, meaning the projectiles that the player launches can be whatever I set it to.

In older 2D platform shooters, a genre which is known as a “run-and-gun shooter”, the player is typically only able to shoot in 8 directions: North (or Up), South (or Down), East (or Right), West (or Left), and the 4 diagonal directions. Some run-and-gun games only allow the player to shoot in the 4 cardinal directions but will move through a diagonal direction when changing which way the player is looking, allowing the player to fire a few shots in a diagonal direction as they turn. I like run-and-gun games, but I felt that this kind of control scheme was too limiting, and so I really wanted the player to shoot in any direction. I don’t know the proper name for this desired control scheme, but I like to call it “Radial 2D Shooting” or “Radial Shooting.”

Now that radial shooting is implemented, there are two big challenges I’ll need to handle next:

  • A variety of spells – This is more trouble than it seems, as I’ll need to build a system to define what a “spell” is and what characteristics all spells share, and then I’ll have to give each spell different movement logic and effects.
  • Enemies – Enemies are common to any video game, but the challenge here is that the enemies I create will have to behave appropriately when hit with any of the variety of spells.

The spells and enemies will have to be created together, and they’ll likely influence each other as I get a better idea of how I want them both to behave.

That’s what I have for now. The next blog will probably be out a bit sooner than normal.

See you in about half a week.






Leave a Reply

Your email address will not be published. Required fields are marked *