Introduction
In this document, we provide you with the challenges we faced and how we solved to reach our first milestone. In our current beta version, we provide character movements along the Y-Axis and action move in a 3d environment. Two players movements can be controlled using the keys (A & D), (J & L) for first and second players respectively. The action move (punch) can be controlled using keys (E & O). The effort we put in to bring live action-packed combat game is not only limited to character animation, static camera, support controls for two players and environment for this combat game. With this current version, we strongly feel that we have laid the required framework to build the additional features.
Demo:
Implementation Details:
Let breakdown the completed work into four buckets and then pick each category and talk about challenges and knowledge gained.
- Level Design
- Character Design
- Player Action
- Two Players
Level Design:
Axis Restriction: As you know by now, we are creating a 3d two player combat game. That requires one level and two controls for the players. Usually 3d person starter package in UE4 comes with three dimensional axis movement. But in our case, one dimensional axis is sufficient. We have solved this by refraining the axis along X and Z. Even though we have restrained the axis the character’s direction while walking is yet to be solved.
Below are the screenshot:


References:
Camera Control: In the starter package of UE4 the camera is focused on the player.
But in our case, we wanted a static camera that focus on both players. This needed some changes in level blueprint and creating target points for characters.
Below are the screenshots:


References:
Health Bar: Our game demands use of a progress bar denoting the health of the players in the game. We have started with basic implementation and will eventually will make improvements to make it fully functional.

References:
Character Design:
Imported characters and animation using mixamo: The heart of any combat game is the character design and animation. With the limited time, we wanted to use the resources that are available over internet. Mixamo: . We used mixamo to import our character and animations. It was big hurdle to import into UE4.



References:
Stitching of characters and animation: Once we have imported the character into the game, the animation and character mesh weren’t displayed as expected. So we had to fix those issues before bringing them to the game:

References:
Player Actions:
Action Mapping: We have our desired characters in the game. Now we need to work on the action mapping to both the characters. Animation Montage is a multipurpose tool which allows us to create animations that can switch between two actions, logic based animations etc. Since every action of the player demands a specific state, understanding each animation and creating a breakpoint where we can trigger an event that ensures proper gameplay is a challenging part.
References:
Using Blendspaces: Blendspaces is a helpful tool to blend the animations by giving desired inputs. We are using blendspaces to our game characters which will be implemented in a free style combat if time permits.
References:
Players:
Character Controls: By default, UE4 3d game comes with one primary control and character. But in our game we wanted to have two separate controls for the corresponding players. This was a biggest hurdle to solve, which requires instantiation of second player controller from the primary control. Below are the list of changes needed in the controller blue print below and also list of references that were helpful to solve this.

Mapping animations for the players: Since both the players are using the same animation blueprint, we had to come up with the method to animate the corresponding character.