top of page

Coscoroba

poster_art_coscoroba_edited.jpg
Postcard.png
ezgif.com-video-to-gif.gif

The Swan Takes Flight

Jan 2020 – Apr 2020

A 2-player Alt-Control game in which players have to crank a pipe and hit a foot-pedal each to control the up-down and side-to-side motion and firing, for an all powerful Anti Aircraft gun setup on a spaceship

 

Cosocroba is a semester-long project undertook at Entertainment Arts & Engineering - University of Utah. In a team of 12 highly talented individuals:

@VishalNaidu - Gameplay Engineer | Gun Master

@HaydenGriffin - Producer | Cat Herder

@AidanOkeefe - Producer | Audio Wizard

@KaranGanesh - Producer | The Camera Guy

@BalajiGanesh - Game Engineer | The Hardware Guy

@JacksonKeller - Environment Artist | Likes Rocks

@XiaohangDing - Model Artist

@RajeshChilagani - Gameplay Engineer

@XingnanChen - Gameplay Engineer

@LinBao - Concept/Model Artist

@ErikaWood - Gameplay Engineer

@JinleiWang - Technical Artist

Coscoroba_-_Full_Playthrough_+_Gameplay_
ezgif.com-video-to-gif.gif
ezgif.com-video-to-gif (2).gif
ezgif.com-video-to-gif (1).gif
ezgif.com-video-to-gif (3).gif
ezgif.com-gif-maker.gif

I Am Gun-Master

How I contributed:

  • Game Engine: Unreal Engine 4.24
    Language Used: C++

     

  • Set up the Weapons System for the ship

    • Airburst Gun & Gatling Gun

      • Wrote the AnimBP & State Machines for the gun​

        • 4 round firing & cooldown​ (Gatling)

        • Spool up/down (Airburst)
           

      • Wrote the Firing Logic for the gun

      • Wrote Projectiles and used Particles from Paragon character packs

        • Muzzle Flash

        • Trail

        • Explosion/Hit
           

      • Wrote the Damage Logic to deal

        • Radial (splash) damage​ (Airburst)

        • Point damage (Gatling)
           

    • The Ring - allows the players to rotate around the ship, allowing the players to spot enemies from all directions
       

  • Designed the Hierarchy Structure
    To divide the player character's functionality into the following categoeies, allowing the engineering team to work in parallel and thus, faster:

    1. Base Character (Health | Damage Events | Shield)​

    2. Weapons System (Firing | Input Maps)

    3. Camera System (Weapon Station Rotation | Input Maps)

    4. Socket System (Getting Inputs From Raspberry Pi)

    5. Child Character Blueprint
       

  • Helped optimize the communication & physical controller input mapping from Raspberry Pi to in-game controller events​​

  • Made the Intro Cinematic in UE4, in the Water Level
     

  • Thanks to @HaydenGriffin & @JacksonKeller for the gun meshes & animation clips

  • Thanks to @EpicGames for the Paragon VFX assets

  • Tutorial Level​

    • Wrote the sequential event firing logic, based on player actions​

    • Designed the tutorial (water) Level

How do my guns work?

Gatling Gun:

  1. Get the following variables from the main CharBP:

    • IsFiring​

    • WeaponMode [Airburst / Gatling / BDG]
       

  2. If IsFiring is true, then start increasing a variable called RotationRate
    Which directly controls at what rate a variable called CurrentRotation climbs

  3. CurrentRotation directly controls what Roll value the Barrel bone has
    And is clamped between 0 and 360

     

  4. The AnimBP has just one state machine and every animation in it is an empty clip

    Why?

    • It's because I wanted the state machine to change states from Idle to Spooling to Firing based on RotationRate

    • Each state change would give me the AnimNotifies I want to toggle the Actual Firing Function, Firing and Overheat Sounds and Effects
       

  5. There's a ModifyBone node which controls the current angle of rotation of the barrel​

Airburst:

  1. Get the following variables from the main CharBP:

    • IsFiring​

    • WeaponMode [Airburst / Gatling / BDG]
       

  2. AnimBP graph has one main state machine to do the following:

    • Start from Idle

    • Move sequentially across 4 identical firing states (for a burst of 4 rounds)

    • Enter cooldown state

    • Provide AnimNotifies for Firing

      [No need to write a complex cooldown/firing control code | I can play stuff like MuzzleFlash, smoke, control the blue glowing reload indicator with ease]

This Beauty Won't Be Possible Without

Our Excellent Artists

The Team That Made It Happen

image.jpg
Image from iOS.jpg
IMG_20200211_124534.jpg
bottom of page