Thursday 21.7 | Even More Animations & Testing Combat

Platformer Prototype

Finishing up the "required" animations and testing what combat style I wanna go with. I've missed some days due to catching a minor cold and some travelling, but should be able to start working more consistently from now on.


Testing combat

I'm continuing work on the animations and almost done with the ones I really need. Starting to test different animations for the combat, I was trying out a combat style similar to what's in the Dark Souls games. This style is slow, calculated and movement is almost fully root motion based, which could be easier to balance and make the players think twice about facing the guards head on. I tried it and I can't get it to go well at all with platforming, so I will probably scrap this idea. Next I will try finish up the main character animations.

CombatTesting

Day's Work

  • Combat
    • New Air attack
      • Prevent parachute from opening
    • Testing if root motion or free movement when attacking is better
    • New secondary attack
  • "New" Climbing animations
    • Ledge grabbing
    • Jumping/Leaping
  • Fixing non existent step sounds

Tuesday 19.7 | More Main Character Animations

Platformer Prototype

Creating the animations that I couldn't just yoink and twist from Mixamo.


Adding IK to the rig from Mixamo

The character's rig is from Mixamo's auto rigger and it's of course just a barebones forward kinematics rig, making animating extremely time consuming. So to save some time in animating I added inverse kinematics to the arms and legs.

MainCharacterIKBlender

Copy/Pasting flipped poses with a Mixamo rig

I encountered some problems with pasting the flipped poses (only animating other hand then copy pasting a flipped pose tot the other side). Pasting flipped poses to the IK target bones worked well but any bones that had the Mixamo naming scheme didn't (literally nothing happened). I thought about making a driver for this (slider from open palm to closed fist) but I don't have enough animations to justify the time that would be spent on that, maybe later though (haven't done it before so it would take a little extra time).

All this, just means that the arm is easy to animate but when making a fist I have to pose every single finger bone (also I can copy it now that I've done it once), which isn't bad enough to start messing with the rig, possibly breaking it in the process. I'm pretty cautious with the rig because it breaks easily for the purpose of importing animations from Mixamo.

MixamoRig

For baking the constrained (IK, copy rotation etc.) animations I used the same method that I've used before explained in this post.


Day's Work

  • Blender
    • IK version of the rig from mixamo
      • Did it twice because I accidentally recalculated roll on the bones halfway into animating
    • Animated using the IK Rig then baked to baked FK
      • Parachuting idle animation
      • Parachuting open animation
      • Climbing slipping animation

Friday 15.7 | Starting to Swap the Character in Unity

Platformer Prototype

Importing the new character into Unity and getting most of the necessary animations for the new model.


Day's Work

  • Character to Unity
    • Animations from Mixamo
    • Tweaking the animator controller for the animations
    • Copy the old character and replace with new (Model, Weapon, Animations)

Thursday 14.7 | New Character Model

Platformer Prototype

Creating a character model and weapon for the main character.


Character Model

NewCharacterModelBlender

Weapon

NewCharacterWeapon

Day's Work

  • Weapon
  • Character Model (Modified from the enemy model)

Tuesday 12.7 & Wednesday 13.7 | Story

Platformer Prototype

I now have whipped up some story, which I feel like took way longer than it should've.


Coming up with the story

Didn't feel like posting tuesday's progress on it's own, because I was figuring out how to come up with ideas, learning and was distracted by music the whole time. I had to really concentrate with zero distractions to come up with the simplest of ideas, but eventually I got something that should be just enough. I thought I'd write some bigger story that I would use a part of for the prototype mission, but that would be a waste of time and this prototype is not to test if the story is engaging. So I just wrote short character profiles and a mission that I can easily build upon to use the mechanics I have.


Character backstories

Nick
An over qualified mall security guard who took an extra job from his boss at the time Eddie Callous, thinking it would be an opportunity to further his career. Unknowingly he had taken part in a large gang's gun trade that was orchestrated by Eddie. Nick had been assigned to watch their back and thought it was way too shady, but kept at it just to keep his job at the mall. Eventually the trade ended in a jogger being murdered by the paranoid Eddie, for seeing the operation take place. After hearing the gunshots from Eddie's gun he ran towards them, finding an empty parking lot with a deceased jogger. He felt guilty for having been part of it but more angry towards Eddie and made it his mission to stop this from happening again. First he would have to look into the gang's operations further and for this he would need help.

Chip
Chip went to the same security guard training as Nick did but dropped out because he had an issue with the authority of the instructors, thinking they hadn't seen any real action in their life and therefore unqualified to boss him around. So he went to the military and became a sniper. He got real good at it but his attitude kept him from getting any further after graduating. Now lost, left only with his sniper skills and sense of humor he was more than ready to do anything that gave him a sense of purpose. That purpose was found when his old friend hit him up and asked for help with a gang he was trying to stop.

Eddie Callous
Bad childhood left him very paranoid. Got into gang activity by being recruited as security for black market trades. He took over the security firm that now covers his equipment as legal and that funds his luxurious lifestyle.

Mission

Chip has been gathering information on Eddie by stalking his vacation home in the mountains. He has seen a meeting take place that Eddie and his partners had participated. They have left the transcript of this meeting on the table. Nick is on his way to the residence. His mission is to steal these documents containing details about Eddie's plans that he hopefully can use to stop them and map out the scale of his operations.


Next

Next up is creating the main character's appearence. This probably just means heavily modifying the current enemy model, making it look like Nick, clearly a former security guard. Maybe a bulletproof vest and a new weapon might do it.


Monday 11.7 | Brainstorming Ideas for a Story

Platformer Prototype

I'm starting the week off by researching narrative design and brainstorming ideas for a story.


In the quest for a story

To start designing a level, I think I'm going to need a story for the character that I can use as a guide for many design decisions. I started the day with research into narrative design, then played Sly 2 Band of Thieves to see what kind of flow they had for the starting sequence. It gave me some ideas about how I should introduce the mechanics and how the pacing should be. Though it may have made brainstorming ideas for characters a bit trickier because a lot of ideas "I came up" with, I later realized came straight from Sly.

I came up with some characters I think could be interesting and fitting for the mechanics. I'll write a small plot for them tomorrow. Then take a small part of this plot to use for the mission later. Mainly I'm creating the story so I can have the elements of the game belong to a theme, which should give inspiration and guidance on many decisions.


Day's Work

  • Narrative design research
  • Research into a starting sequence of a similar game
  • Brainstorming story ideas
    • Characters
    • Locations (For the mission)

Weekend 8-10.7 | What Next? #2

Platformer Prototype

Having a hard time trying to figure out if I have what I need to start designing a simple level.


Research, Level Design & Research into Level Design

I've been having trouble figuring out the next steps. I'm not sure if I have enough complexity for the platforming or enough stealth mechanics to make it interesting. So I've been doing research, reading about level design, gathering my thoughts and trying to design a simple tutorial area with little success. Despite this I think I have enough to create a tutorial area and/or a small mission, I just need to take my time designing it and not rush into Unity.


Sunday's Rushed Level Design Attempt

This is a tutorial area I tried creating today but after realising I would have to change literally everything, I gave up and started doing some research into the level design process. Every part of it is unfinished in every single way possible, but I thought I'd show it anyway because it is part of the journey.

TutorialAreaDesign

This is my first time designing this kind of level so I think the best thing to do right now would be spending the next week researching, designing, blocking out and playtesting, basically utilizing the mechanics I already have to create a small mission. After this I will hopefully have a better idea on how to move forward.

TutorialAreaUnityIso

Work Done

  • Research
  • Level Design
  • Launch Platform

Thursday 7.7 | Parachuting

Platformer Prototype

Being hesitant about implementing parachuting but ending up very happy with the result.


Hesitant start

Trying out parachuting which at the beginning felt weird with no effects and just the gravity adjusted. It essentially did what a parachute should and that is to slow down falling and give a bit of control, so I was a bit hesitant on moving forward after it feeling a bit out of place. I thought I'd give it a good effort though, because it had been on the todo list for some time now.

ParachutingSitting

Finding confidence in the idea

After smoothing out the rotation and sudden movements it all of a sudden started feeling like parachuting even with the character basically in a sitting pose. With some additional tweaking I started finding new routes through the level and found myself fiddling with it a little too much which of course gave me a lot of confidence in the idea. This made adding the effects very interesting because I wanted to see how satisfying I could make it.

ParachutingFinal

Final thoughts

In the end I'm very happy with the feel and possibilities this opens up in level design.


Day's Work

  • Parachute
  • Character
    • Parachuting open animation
    • Parachuting idle
  • Parachuting input
    • Left trigger
  • Save System
    • PersistenObject id to the name not instance id

Wednesday 6.7 | Double Jump

Platformer Prototype

Now that I've gotten a better picture of what everything is going to look like, I'm going to be adding some actual platforming. Today was mostly about adding double jumping, some effects and platforms.


Double Jump

I've decided to test how the double jump would feel. Now that I have it and after adding a little spice to it, it feels great. I might make it so that you get extra height if you hold but that would be the only tweaking I'd do anymore.


Day's Work

  • Platforming
    • MovingPlatformAnimated
      • Move and rotate the kinematic controller when on platform that is animated with Animation component
    • Double jump
    • Leap (Climbing jump) particle and sound effects
    • Ledge grabbing fixed (crazy position snapping)
  • Combat
    • Special attack when in air (Currently just the combo attack for testing)
  • Level
    • Adding some platforms to try the jumping and moving platform

Tuesday 5.7 | Save System

Platformer Prototype

Implementing a simple saving system, that handles the state of objectives and killed enemies.


Save System

The objective manager loads state at Start and invokes the OnCompletion event if an objective has been completed before. This causes all the effects to play but fixing that is a job for another day. This script also gives the last item received from an objective back to the player at start.

Quick Save Unity Package

I decided to go with a free add-on for the saving systems backbone to save some time. I grabbed the one that looked the easiest to implement. Documentation was good and it worked like a dictionary which made it feel familiar.

Debugging

I also added a handy helper text box to the Game Manager.

GameManagerSaveSystemTools

Day's Work

  • Interactable objective
    • Interact button fixed gets reset when entering trigger
  • Tip manager fixed
    • Dictionary for timers of tip texts
  • Fixed floating enemy with enabling heightmesh when baking nav mesh
  • Fixed enemy movement bug (Speed not updating correctly)
  • Save System | Using Quick Save by Clayton Industries
    • Completed Objectives
      • Loads state at Start and calls Complete() method if the objective has been completed before. This causes some problems with all the effects also playing but that's a job for another day.
      • At start gives the player an object that was gotten from the last "Give Item" type objective.
    • class PersistentObject
      • class PersistentObjectState
        • bool destroyed
      • Loads state at start and disables the object if it has been destroyed
      • Currently only holds if the object has been destroyed but other things can be easily added
      • Can be used on pretty much anything. Only the OnDestroyed method has to be called.
    • Helper text in GameManager
    • "Reset Save" button on GameManager