New experiment

Reading Time: 2 minutes

Recently I neglected this blog a bit; I was working on content for Uplezz’s blog and, of course, on our new idea. This week is different, though: on November 1st, Github started this year’s Game Jam, Game Off 2020. One of the workmates at my workplace mentioned it, and we thought, why not? I asked this colleague and one more to join, so we had three people planned for three main areas: Graphics, Music & SFX, Coding.

However, my goal is not exactly a finished, submitted project: what I’m interested more is to try out various ideas on the management side, also after we figured out our game idea based on the announced topic (which is “Moonshot”). More on that in another article. I’ll share below my progress from the week on the development.

To start working on the basic mechanics (eg.: movement, weapon shots), I started with creating some dev-art. As I never worked with Unity 2D, I had many things to learn throughout the process:

  • importing Sprites
  • Creating armature in Unity Sprite Editor (including weight painting)
  • Creating basic animations in Unity
  • Using Tilemaps in Unity to build some platform levels
  • Using URP and 2D Lighting in Unity
  • and so on… 🙂

So the first step was to create a dummy character in PS and import it to Unity and create the armature:

Bones, autogenerated geometry and weights

After that I started to create the first animations which looked like this:

To create the Movement in Unity, two ways can be used: CharacterController component, RigidBody2D component. I started to use the RigidBody2D and setting up the constraint that I don’t want my character to rotate on the Z-axis. It turned out like this:

With that done, my next step was to get familiar with Universal Render Pipeline and 2D Lighting to start to set up a testing environment. It doesn’t look great, but this was my first result:

In the game there’ll be some mechanical changes which are out of the scope of ordinary, for example we need to reverse the movement:

From here, the next step was to start the implementation of jumping. With the help of many videos on youtube and the tools which are provided by RigidBody2D, there are many ways to do this. After some thinking, I decided to use a solution where the jump height depends on how long the player presses the jump button, and it turned out extremely well.

As you can see there is a big problem: the player hangs on the side of the platform/wall. This will be solved later.

If you’re interested in seeing the progress, I’ll share whatever I can about our game for this jam. Come back to see more 🙂

Leave a Reply