
Learn techniques to make side-scrolling action platform games more fun by applying simple changes to a basic template, and enhance gameplay while preparing to apply these ideas to future projects.
Explore a simple game scene where a player moves and shoots at wandering robots. Learn how bullets, enemy AI, health, camera, and spawning scripts enhance gameplay.
Project Files
Add a subtle up-and-down bounce to the player while moving and raise the animation's sample rate from 60 fps to 90 fps to create a livelier feel.
Add sound effects early by attaching jump and gun sounds to the player and playing them on jump or shoot to enhance game feel and feedback.
Speed up fire rate by shrinking shot delay to 0.1 seconds, increase bullet speed, and resize bullets; fix orientation so bullets face the correct direction.
Add a muzzle flash to the gun and toggle it on firing, then off the next frame, by parenting the flash to the gun and scripting activation.
Enhance gameplay with bullet spray and variable accuracy, making bullets deviate up or down in flight. Adjust spray range in the bullet controller to create deviation within range, boosting realism.
Trigger a white flash on damage by applying a custom shader material; loop through body parts' sprite renderers to set flash amount for a short duration.
Learn to make defeated enemies stay in the world by stopping their movement and animation, applying torque to spin them, and switching to a dead layer to avoid further interactions.
Transform robots into damaged sprites by swapping body parts when health reaches zero, using a broken parts array and a loop to explode them into scattered debris.
Add subtle camera lag behind the player for a more alive feel, using smooth interpolation toward the player on x and y with a fixed z and configurable speed.
Set the camera to follow ahead of the player, expanding space in front. Use a move ahead value tied to the player's facing direction to adjust the camera offset.
Implement player knockback, a sprite flash, and damage feedback. Block input during knockback. Reuse enemy knockback patterns, wire the health manager to trigger these effects, and set damage to 1.
Animate the player's death by having them fall, switch to a non-interactive dead layer, and use two animations driven by a dead trigger to end control.
Use slow motion on death by adjusting the time scale to three-quarters, then reset to normal when the scene reloads or the player revives.
Learn how to implement strafing while shooting. Use a shoot counter and input handling to move and shoot, switch directions, and ensure a steady bullet stream.
Set up and loop game music at start to control mood, tension, and volume balance with effects. Different tracks alter the feel from action to exploration, so plan music early.
Adjust gun and explosion sound effects by varying pitch with a random range to add depth and variety, improving the game audio feel and player enjoyment.
Push game variables to boost fun by tuning bullets per shot, enemy health and speed, testing changes with a for loop, and adjusting spawn rate with a single sound effect.
Enhance explosions in Unity with a smoky particle system, bursts, and zero rotation to keep effects visible, then instantiate smoke and adjust lifetime and velocity for weighty feedback.
Compare the final game build to the starting project to show how tweaks and visual effects sharpen shooting, provide visual feedback, and make gameplay more fun.
Apply the techniques learned to a new brick breaker project, adding music, animations, explosions, camera shake, and multiple balls to make the gameplay feel richer and more fun.
In this course we will take a simple 2D action platformer and you will learn a variety of techniques such as how to add screenshake, how to make damage seem persistant, the importance of player action feedback and much more, all to improve how your game feels to players and learn practical example of how to implement them in your games.
The course will be taught using Unity3D but these same principles and methods can be used in any system of development you choose. After completing the course you will also be given another starter project to apply the lessons learned throughout the course yourself, and see the effect these techniques can have in different game types.
Whether you are a beginner looking to expand your development knowledge or are just looking for ways to help make your game more fun to play, this course will help you gain a greater understanding of the importance of game feel.
Start learning today and let me help you become a game developer!