๐ Live Game (Version 1.0):
https://priyanshi-singh.itch.io/2d-shooter-game-unity-v1
๐ Live Game (Version 2.0):
https://priyanshi-singh.itch.io/2d-shooter-game-unity-v2
๐ From Game Player to Game Developer. The only thing more fun than playing games is making them.
Built From Scratch๐ฉ๐ปโ๐ป Added my own notes below for understanding the development process ๐
- Creating 2D Game
- Working with 2D Sprites
- Create 2D Animations
- Implement 2D Mechanics
- Create a complete game loop
- Create UI elements that work across multiple resolutions and aspect ratios
- Build the game for multiple platforms
๐ฎ UNITY INPUT
- Input Manager (built-in)
- Input System (package) --- For this project, I used this input system.
- 3rd-party Input (ex: rewired)
๐งฑ Setting up 2D Game on Unity
- Assets
- Animation
- Animator
- Player Health & Damage Setup
- Physics Interactions: collider, RigidBody component, Custom Script Component
- Player Shooting Setup: added player effect, shooting component and audio, converted player object to player prefab for iterative use
- Camera Setup: created 2 camera prefabs - a large camera and a small camera with different sizes
- Level Setup: created borders, backgrounds and test movement around the space
๐งฉ Game Flow and UI Setup
- Created Game Manager and UI manager
- Created Canvas and EventSystem
- User Interface (UI): UNITY supports multiple methods for creating UI.
- IMGUI
- UI Toolkit
- Unity UI package (uGUI): using this in my project
- Created Score and High Score buttons in canvas
- Created pause and unpause button
- Added components on it and actions like escape and toggle when it appears during gameplay
- Created new Aspect Screen 4:3
- Set the 'score' and 'high score' static on the screen and fixed while moving around by: selecting anchor presets
- Adding 2 screens: one for when a player loses and one for when a player wins
- GameOverScreen
- LevelVictoryScreen
- Added a 'main menu' button on the pause screen as well
- Setting up the main menu within a new UNITY Scene
- Assets > _Scenes > MainMenu (scene created)
- Added all the scenes level1 and mainmenu on Build profiles > all scenes and tested the flow
- For scene Level1:
- Added 2 more enemies in the game
- Changed CANVAS > InGameUI and made it a prefab under UIpages
- Adding 2 music in one main menu and another on the game levels
- hierarchy > create empty > music name > added component 'audio source' > prefab drag drop music to component > done
๐ฏ Fiinal Development Version 1.0
- Duplicate Scene Level1 to Level2 and Level3 and add them to build profiles
- Goto Scene Leve1 > NextLevelScreen > set to Level2
- Same for Level2 > Level3
- Created new textmesh pro and applied changes like color, wraptext, and other relevant changes required in your text font
- Assets > Scripts
- Understanding how Unity attributes can be modified by both unity and by visual studio
- Build Game Profiles for MaC, Windows, WebGl
- Tested on Web and MacOS - Success
- Uploaded the game on itch.io for view (https://priyanshi-singh.itch.io/2d-shooter-game-unity)
๐งฉ Final Project
- Make three significant modifications to the original game.
- Choose a new name for the game and update the UI to reflect the new title throughout the game.
- Ensure there are no bugs, gameplay flaws, or look-and-feel issues before publishing.
- On Itch.io:
- For Windows and Mac builds, select "Executable" and specify the correct platform.
- For WebGL builds, check "This file will be played in the browser".
- Include a description of your three significant modifications.
- Add game credits: "Created by [Your Name]".
๐งฉ Modification In Version 2.0
- Create a complete, interesting, comprehensive, and coherent level.
- Add multiple additional levels and tie them in to create a logical progression in your game.
(NOTE: Each level should be unique in some way, such as different types of challenges for the player.) - Modify the out-of-game menus in some significant and meaningful way.
- Reskin the existing graphics in some significant way, such as changing the player or an enemy to a completely different character.
- Add additional significant and coherent graphical elements to the game, such as new enemies or environmental challenges, complete with animated states.
- Replace all sound effects in the game to update the sound design.
(NOTE: You must change all the sound effects for this to be significant.) - Add custom music to your game.
(NOTE: โCustomโ means music you created with a tool like Garage Band or Fruity Loops. Swapping tracks found online doesn't count as significant.)
- Add new player abilities, such as modified controls, additional moves, or additional power-ups.
- Add new enemies with their own behaviour.
(NOTE: This counts as two modifications if you create unique behavior and create the art and animation.) - Add new obstacles and challenges.
(NOTE: This counts as two modifications if you create unique behavior and create the art and animation.) - Modify the in-game GUI in a significant way.

