• K A I

Dive into a fantastical underwater adventure with KAI.

In this 2.5D casual sidescroller, cast spells and avoid deadly sea creatures as you travel deeper into the ocean. KAI features a colorful cast of 3D animated creatures, painted backgrounds, deep-sea level design, and water dynamics.

June 13th, 2017: Development updates: 90->100% completion.

KAI has been completed! For our final demo, we chose to finish only the coral level, and polish it to completion.

Chelsea worked on damage animations for the main character, fixing the main character's jumping behavior, changing the main character's states upon damage and death, implementing animations for the manta ray, readability for the main character's attacks (firing rate and cooldown animations), the speed of the main character's death, implementing all monster animations, and locking the axis of the enemy characters horizontally.

Allison worked on compiling all the final files, cleaning up the map, lighting, caustics, light shafts, sound implementation, particle effects, debugging the AI, projectile debugging for the main character, jump velocity, creating maya animations for the manta ray, and camera adjustment programming. She also whiteboxed the movement and combat controls and adjusted them to feel more natural.

Kayleigh worked on sound design, all the animations for our enemy characters - including walking, attacking, and a death state, rigged all our monster models, implemented a spin animation on our octopus, applied a HUD color change when the character's health reached a critical state, creating a walkable tutorial for playability, and swapped controls for the game based on our playtest feedback.

Sabrina worked on level design, completed the implementation of all our remaining art assets, fixed our end goal, created landscaping, updated our HUD, made pitfalls (and the according death trigger when the player falls in them) as an additional obstacle, and signs to indicate pitfalls as dangerous (implemented according to feedback from our playtesters).

See below in bug fixes for more detailed updates.

Bug Fixes

  • Implemented dying animation for the octopus (Chelsea, animations by Kayleigh)
  • Implemented dying/walking animations for sea urchin (Chelsea, animations by Kayleigh)
  • Ensure actor doesn't fall through ray on jumps due to launch velocity (Chelsea)
  • Added stripe to main character's poncho (Chelsea)
  • Implemented animation for the manta ray (Chelsea, animations by Allison)
  • Debug issues with AI/navmeshes, battling enemies (Allison)
  • Camera adjustment blueprints to keep camera from clipping under landscape (Allison)
  • Trigger box for end goal (Allison)
  • Noticable caustics, re-applied light function (Allison)
  • Additional lighting, light shafts around pirate ship (Allison)
  • Implemented the full map (Sabrina)
  • Retopologized the landscape (Sabrina)
  • Rigged the octopus and urchin models (Kayleigh)
  • Rigged the manta ray (Allison)
  • Redid the jump and fall rate (Allison)
  • Particle effect on ink orbs, monster death, and double jump (Allison)
  • Changed mesh for the end goal (Sabrina)
  • Main character animations for low health, low ink, double jumping... (Chelseaa)
  • Monsters drop ink/health orbs when enemy dies (Chelsea)
  • Ink/health orbs hover (slight animation) (Chelsea)
  • Whiteboxed movements and combat (Allison)
  • Fixed animation for cloth (Chelsea)
  • Make projectiles disappear after certain distance and on hit (Allison)
  • Added delay so projectiles cannot be spammed (Allison)
  • Fixed projectile's particle effect with added velocity so it looks like it's shooting while you move (Allison)
  • Added small mesh in projectile for readability (Allison)
  • Sound design (Kayleigh, implemented by Chelsea and Allison)
  • Swapped controls according to our playtest feedback (Kayleigh and Chelsea)
  • Debugged the end goal (Sabrina)
  • Created pitfalls and added a death blueprint for character death upon falling in one (Sabrina)
  • Created and placed a sign to indicate pitfall danger (Sabrina)
  • Moved ink and health orbs to a base class for ease of access and programming (Chelsea)
  • Created reusable assets for environment coral and rocks (Sabrina)
  • Created a walkable tutorial section at the beginning of the level according to playtest feedback (Kayleigh)
  • Sped up the death animation for the main character (Chelsea)
  • Fixed the shooting angle for the main character (Chelsea)
  • Fixed the projectile for the sea urchin, updated the mesh of the urchin projectile (Chelsea, Allison)
  • Debugged some ink consumption problems (Allison)
  • Typed the enemy characters to the horizontal axis so projectiles and pawn sensing works correctly (Chelsea)

Our final gameplay video. Everyone did a great job!

Chelsea's work adding different states to the player for more readability (red on damage, grey on death/dying).

Sabrina's work on implenenting additional environment assets and the end goal mesh.

Kayleigh's work on tutorial text and the HUD in order to better guide our player through the level.

Allison's work on lighting and particle effects, as well as the manta ray's animation.

Allison's work implementing the particle effects for the projectile and double jump. Implementation, adjustments, and debugging for these components were done by both Chelsea and Allison.

To test the controls and ensure they felt natural, Allison created a "whitebox" map for battle testing and made appropriate adjustments.

Chelsea's work implementing death and damage states for the character. The main character's poncho turns red when the character has been damaged. It turns grey when its health falls below a certain percentage. Animations for hits and the character death were done by Chelsea. Animations for the octopus were done by Kayleigh: the octopus has a spin attack when it gets close, and an idle movement animation. Base coding for taking damage, and hitboxes for the enemies were done by Chelsea, Kayleigh, and Allison.

To achieve the feeling of magical ink, Allison designed a particle effect for the ink orb. Chelsea animated the ink and health orbs to bob up and down as an idle state. The original base code for collectible orbs and their modifications on player status was created by Sabrina.

A brief example of a battle with an octopus enemy. When the player is in sight, it spins to attack. All animations and rigging for the octopus were done by Kayleigh. AI and navmeshes were implemented by Kayleigh and Allison. Upon death, the octopus drops a random orb - this was implemented by Chelsea. The monster's mesh was modeled by Kayleigh.

The manta ray moves up and down the map and brings a player to a "secret" - in this case, additional health orbs. Sabrina selected the way the ray would move in her level design. Chelsea implemented the ray movement and animation. She also debugged velocity issues (the character originally fell through the mesh when jumping while on the rray). Allison created the model, rig, and animation.

A brief example of a battle with an urchin enemy. When the player is in sight, it fires projectiles in the shape of spikes. Animations and rigging for the urchin were done by Kayleigh. AI and navmeshes were implemented by Kayleigh and ALlison. Chelsea and Kayleigh implemented the projectile firing behavior. The monster's mesh was modeled by Chelsea.

May 26th, 2017: Development updates: 50->75% completion.

Chelsea worked on better implementation of our moving platform (the manta ray), blending animation states for the main character's movements, and assisted in some simple animation of the octopus enemy. She also worked on projectile implementation for the main character.

Allison worked on compiling all the final files, the AI, some lighting effects, and the projectiles of the monster. Particle effects were added for the attacks, some health and ink functionality was added, and hitboxes were updated to improve playability. Monsters have small particle effects to indicate death when their health hits 0.

Kayleigh finished updating all the menus to a more finished state (start screen, try again after death, game over when health hits 0, win screen when goal reached), updated the UI, and added fixed win goal functionality.

Sabrina worked on level design. She also implemented collectible health and ink orbs to restore the character's health, an improved UI design, and on background assets.

See below in bug fixes for more detailed updates.

Bug Fixes

  • Because the cloth dynamics were buggy, we chose to use a different plugin to implement the cloth dynamics. (Chelsea)
  • Basic stucture of the final UI was added two orbs in the bottom left) (Sabrina)
  • UI was debugged and added to the final project (Allison)
  • New art assets and additional environment areas were implemented (Allison)
  • Main character used to fall through manta ray on jumps and launched in the air on double jumping - fixed by updating the jump velocity and double jump functionality (Chelsea)
  • Ink effects added using particle systems in Unreal Engine upon firing projectile (Allison)
  • Added health and ink globes to increase player statuses, made these items collectible (Sabrina)
  • Locked character movement to X axis, character can no longer shoot projectiles at the camera (Chelsea)
  • Camera "orb" implemented (moves camera when the main character enters certain boundaries) to keep the camera view from clipping through the landscape (Allison)
  • Added death animations for the octopus (Kayleigh)
  • Updated the menus to include art, updated the buttons to look more professional, fixed the "Try Again" and "Quit" buttons to redirect the player to the main menu (Kayleigh)
  • Created Maya animations for other states of the octopus, including attacking and moving (Kayleigh)

Allison's work on the particle effects for the projectile. As is visible, there are some bugs with the projectile! Fixes will be implemented later.

Kayleigh's work implementing all the menus with nicer buttons.

Sabrina's updated UI (bottom left) and health orb (right).

Kayleigh's work with the octopus rig.

Chelsea's work with the main character's cloth.

May 9th, 2017: Development updates: 25->50% completion.

Chelseaworked on implementing the cloth dynamics for the main character using PhysX and APEX cloth. She also implemented a collision in order to use the manta ray as a platform and the character attacks, internal health of the monster characters, and double jumping.

Allison worked on the AI and internal health of the monster characters, implementing the art assets into Unreal, lighting the scene, the character attacks, health and ink implementation, and double jumping.

Kayleigh worked on the AI of the monster characters, character attacks, health and ink implementation, the HUD, all the menu states of the game, and a win condition for the game.

Sabrina worked on level design, and rendering and animating final backgrounds.

Chelsea's work rigging the main character's poncho, which animates on a cloth simulation using PhysX and APEX cloth. See the playthrough video below to see it in action (still in progress!).

Allison's work implementing final art assets, lighting and monster AI into the game.

Kayleigh's work implementing all the menus and win/lose states.

Sabrina's work on the environment and art assets.

Everyone's work on the final compiled file. Things are shaping up!

April 25th, 2017: Development updates: 0->25% completion.

Chelseaworked on rigging and animating the main character, and implementing cloth dynamics for its poncho.

Sabrina worked on rendering the final backgrounds for the coral reef level and adding 2D-animated art assets.

Allison worked on implementing the background, lighting, and environment assets into Unreal Engine.

Kayleigh worked on adding behavior and interactions between the character and our enemy monsters.

Chelsea's work rigging the main character's poncho.

Sabrina's work on the final backgrounds.

Allison's work implementing the 2D assets into Unreal Engine.

Sabrina's 2D animation work.

Allison's work implementing the environment assets into Unreal Engine.

Allison's work applying caustics to the game's lighting to simulate an underwater environment.

April 12th, 2017: Website live, development updates.

Chelsea worked on rigging and coding the main character.
Kayleigh developed a functional HUD.
Sabrina started rendering final backgrounds for the coral reef level.
Allison developed the website and worked on implementing the environment assets in Unreal.