Notifications
Article
Summit Conquest
Updated 4 years ago
607
6
Summit Conquest (Unity CwCL Prototype 4) Version 1.0

1) Overview:

Based on the course prototype, I made a full game adding a lot of features built from the ground, learning A LOT in the process.
Play WebGL version: https://connect.unity.com/mg/other/summit-conquest Download a better build (windows executable) at: https://gdisalvo.itch.io/summit-conquest
(from Course description): Unity Course: Create with Code Live Week 5: Gameplay Mechanics | Apr 20 - 24 (2020)
This week, you will program an arcade-style Sumo battle with the objective of knocking increasingly difficult waves of enemies off of a floating island, using power ups to help defeat them. In creating this prototype, you will learn how to implement new gameplay mechanics into your projects, which are new rules or systems that make the game more interesting to play. On one hand, you will learn to program a powerup, which give the player a temporary advantage. On the other hand, you will learn to program increasingly difficult enemy waves, which make survival more challenging for the player. A good balance of powerups and increasing difficulty make for a much more interesting gameplay experience.

2) Game Instructions:

Survive continually increasing enemies for 2 minutes. You have 3 lives to get the highest score.
Pick up Powerup X (multiply): Super Push for 10 seconds. Pick up Powerup Flame: Charged Bomb. No time limit, detonate with space while jumping. +1 life with each 20000 points mark.
Score: Small Enemy 100 Big Enemy 2000 Cannon Ball 50 Super Push collect 200 Charged Bomb collect 300 Level win 5000 (+ 10 points x seconds)
Move Forward: (keyboard) W or keyUp / (mouse) LeftClick Move Backward: (keyboard) S or keyDown Turn Camera: (keyboard) A+D or keyLeft+keyRight / (mouse) LeftRight Axis Jump: (keyboard) Space / (mouse) RightClick Keyboard On/Off: (keyboard) F1 Mouse On/Off: (keyboard) F2
Statistics: Player: HIST: hiscore / total score added / levels passed / seconds survived / lives lost Enemy beaten (big, small, cannonball): Current game / total Powerup collected: idem

3) Project work (features, modifications, settings):

  • Project Settings: Graphics High (Tier 3) unchecked Cascade Shadows (recurring issue detected with objects' visible border).
  • Environment: Lighting changed. FX_Mist particle system color and other modifications.
  • UI: Added keyboard+mouse icons, input devices can be both set active/inactive through keys F1 and F2.
  • UI: Complete information added: level, time, score + high score, lives. Save data locally.
  • Statistics: collect and read/write from local system. Shows info in menu.
  • Game Manager: built a "Control" idea before learning about a "Game Manager" :)
  • Player: respawn when fall down, lives control + extra lives
  • Game: time survive gameplay
  • Enemy: Added enemy spawn frequency. Added different enemies (Small: fast, weak, pushable, heavy spawn / Big: slow, strong, few spawn, fire Cannon Balls).
  • Enemy: Design, Textures and Animations finished.
  • Powerups: Two powerups
  • Game: physics tuning for different masses and forces applied. Completed for player, enemies, powerups actions including explosions.
  • Sound: Background music and Sound effects for almost every player and enemy actions.
  • Menu: full options control with graphic design, shows full statistics, save data locally. Restart/Exit.
  • Confirmation Dialog: hard work that can be improved, but a useful tool for all projects
  • Title screen with Game Instructions.
  • Documentation, version control, public release.

4) To Do:

  • Code: Use Object Pooler for instantiate prefabs.
  • Game: Difficulty progression (more time to survive, less powerups?, IA?).
  • IA: Bigger enemies try to avoid falling down.
  • Sound: some missing sounds (player/enemy entry, player fall, high score, victory, game over)
  • Powerups: timer float counter.
  • Instructions + Statistics: add icons and better design
  • Control: tweak for gamepad control (assign rotate view to right stick)
  • Fix:
  • .Enemy: too much aceleration sometimes.
  • .Audio slider not always plays sample sound right.
  • Known Issues:
  • .Physical forces in screen sometimes produces weird movements.
  • .Enemies spotlights strange effect (covering a large area) at some angles
  • .Statistics panel slow mouse wheel scroll
  • .Code: some twisted code, product of learning on the go (mainly with parallel "Update" routines)

5) Code/Screenshots:

(GitHub full code link below)

6) Resources and Links:

# Font

https://www.1001freefonts.com/data-control.font

# Sounds and Music:

https://freesound.org/people/montblanccandies/sounds/271623/ -- Music Background https://freesound.org/people/Raclure/sounds/483602/ -- Bump https://freesound.org/people/Cman634/sounds/198784/ -- Powerup Collect https://freesound.org/people/evan.schad/sounds/463214/ -- Jump https://freesound.org/people/kennysvoice/sounds/158372/ -- Powerup Push https://freesound.org/people/pumodi/sounds/150205/ -- Powerup Explode https://freesound.org/people/ProjectsU012/sounds/340960/ -- Enemy Big Fire https://freesound.org/people/JohanDeecke/sounds/369529/ -- Cannon Ball Explode https://freesound.org/people/KeyKrusher/sounds/154953/ -- Beep

# Particle Effects:

(Explosion) Dust, Shockwave and Shower, from Unity Standard Assets

# Mouse and Keyboard Icons

https://www.pngfuel.com/free-png/guvkk https://www.clipartmax.com/png/full/114-1148459_%C2%A0-keyboard-icon-png-blue.png

# Kenney Assets (https://kenney.nl/). Icons:

audioOn/audioOff musicOn/MusicOff grey_sliderUp/grey_sliderHorizontal grey_box grey_button03 grey_checkmarkWhite red_cross
YouTube: https://youtu.be/kkSuaYNGmhg GitHub: https://github.com/GusDS/Summit-Conquest Unity Connect: https://connect.unity.com/p/summit-conquest-1 Play WebGL version: https://connect.unity.com/mg/other/summit-conquest