Enemy spawner in Skullkeys – Game dev blog

Skullkeys – enemy spawner

Hey fellow gamers / developers and music lovers!

Here’s another sneak peak video from the gameplay of Skullkeys. Nothing is carved in stone yet, but we are designing game assets and events which will later be used to create the final levels. So consider all this as WIP…you know the drill during game dev. 😋

New features in Skullkeys game engine?

Some new features in the Skullkeys game which will be seen in the video:

  • Main menu (rough idea)
  • Enemy spawner asset (spits out bats…max 2 out at a time)
  • The bats can now go into a “found player”-state and a hunting-state which makes them feel more alive and dangerous.
  • Bomb collectible.

In the new demo the camera is a bit wacky (zooming out way too much) in this latest video, but that’s because we have experimented with the camera in our multiplayer mode. We will fix the camera asap.

Enemy spawner asset

We’ve created an enemy spawn asset to the game engine. At the moment (as seen in the video) the enemy spawner spits out bats to hunt the player. Furthermore, the spawner can be used (alternatively) instead of placing individual enemies on the level. A quick helper to throw enemies into a level.

The enemy spawner is customizable with the follwing parameters:

  • Sprite – the graphics of the spawner. It’s currently a kind of “cage” / hive. 😉
  • Entities (list) – a list of objects (monsters) that the spawner can create.
  • TimeBeforeSpawn (int) – how many secs between each new entity will spawn. The type of entity to spawn is randomly selected from the list.
  • MaxEntitiesOut (int) – So we can limit the amount of entities the spawner will spit out. When this limit is reached at least one of the enemies need to be defeated before new ones will spawn.
  • TotalEntitiesToSpawn (int) – a max amount of entities the spawner can spit out during it’s lifetime.
  • CanBeKilled (bool) – Can the spawner be defeated?
  • IsAlive (bool) – only spawns when it’s alive
  • Health (int) – how much damage can the spawner take before it’s killed?

There’s obviously more rules and parameters on the spawner asset. But these are a few rules to show the flexibility of this asset.

We can basically throw in any kind of monster into it, or a variety of monsters and the spawner will start to spit out these during gameplay. Fun isn’t it?

We also started to dress the levels with some more foley like spider-web, chains, pillars etc. to suite the dungeon theme.

Until next game dev update! Have a good one!

// Mattias

How to design a game main menu

how-to-design-a-game-main-menu
Designing a main menu for the game Skullkeys!

In this article I’m going to describe the process of designing a main menu for a game. While the look may be very different from game to take, the approach I use is similar and usuable across genres.

Don’t over do the designs. Simple, is most of the time also the most effective and best solution (In my opinion).

How to design a game main menu

Firstly, I always try to follow the general design mood of the game.

Skullkeys is a game about dungeons, secrets, skeletons…whips. 😉 We have already established a logo with a some colors. Luckly we also already have a few characters, tilemap designs to draw inspiration from.

Color scheme for our main menu

Let’s work with a simple color scheme or greyish blue to a more purple blue in the shadows. The game is also quite retro pixelated, so let’s also make sure we keep the pixel aspect. As always, this is by no means any rules. But rather a design choice to get a chohesive design in our game, menus, buttons and overall impression.

Main menu options for our game Skullkeys

The selectable buttons we need for the main menu (for now) are:

  • Story (Main game play mode)
  • Bomb match (multiplayer game)
  • Settings
  • Credits

The main menu button design

So a few simple square buttons close to our color scheme, I “break apart” the buttons slightly with some pixel engravings / carvings in the button-plate. It fits the theme and gives the buttons a more orgranic touch! I also made the shadow slightly more saturated on the buttons and more towards blue for that dramatic effect. Subtle but effective. 🥳

Make your menu part of the “game world”

I remember playing Dead Space for the first time. The character health meter was on the actual character in the game, tightly integrated with the visuals. No distractions. A beautiful execution of great UI/UX. 🤩

Somehow we need to tie the buttons to the image so they just don’t float in the air. Therefore I added some vines behind, I weighted the image by adding a few more “darker” vines at the right side. Balance is always important. And I also wanted to give the screen a sense of depth.

Animating the main menu of the game

This design can also be animated, so the vines can carry the menu buttons down into the screen when it’s displayed. We could replace the vines with chains too if we wanted another more shiny design. Yes, I know it’s not revolutionary, but it works! 💀

Final words

So that’s how to design a game main menu!

Now, if this is our final version that actually makes it to the final version of the game… Who knows!? But it’s always a start.

And that’s how we work with creative decisions. We begin with something. And maybe it’s good enough…or we go back and refine. But now we have a very good solid start.

Let us know if you like these posts!

Skullkeys gameplay video teaser

Skullkeys in-game video teaser #1

We can finally reveal a little bit of gameplay teaser of Skullkeys! Hope you enjoy the clip! The level is not finished by all means. This is all work in progress as we develop game functionality, logic and content!

But you get to see some blocks blown away by bombs, enemies killed, skeleton bones flying all over the place and some bats. 😉

Until next vlog, blog! See ya!

// Mattias

Another teaser clip…just for you. 😉

Skullkeys gameplay video teaser #2

Upgrading Skullkeys to Godot 3.3

Today we updated our project to Godot 3.3 which wasn’t really “hasslefree”…Don’t hassel the hoff as they say. It’s always a bit shakey updating development environments in the middle of a project.

Object removal in Godot 3.3

Godot 3.3 changed the way objects were removed so we bumped into some issues when comparing our removed objects == null. 😉

We quickly came up with a workaround so it isn’t a big deal. But annoying nontheless.

Nicklas fixed some player reset issues which caused the player to fall from the tilemap, so to speak.

I’m gonna extract the animation I did on the Skullkeys logo and redo it in Godot. Until then I added some smooth movement to the 3d logo which sits ontop of our game screen.

I replaced some code on the platforms so they can now be more dynamic in their movement.

Spawner object

We also discussed some new “spawner” object which will give our levels a more dynamic enemy handling. Our spawner will have some nice parameters like;

  • typeOfEnemyToSpawn (maybe a list of different enemies!?)
  • amountOfEnemies (to spawn in total)
  • startSpawnTime (when to instantiate the first enemy)
  • timeBetweenSpawns

Oh, don’t forget to check our recent in-game videoclip of Skullkeys!

Until next time!

Published
Categorized as News

Early access of Skullkeys!

Hi, me and Nicklas begun the development of Skullkeys in april 2021 with the vision to make an awesome metroidvania / dungeon crawler game. We wanted to build the kind of game we grew up with. You know like; Castlevania, Metroid, Faxanadu, Blaster Master etc.

Skullkeys is in very early development, but we aim to release early access releases VERY SOON as we want to get input from the community and get the word going.

We are talking about setting up a build server and let users download the latest test builds from our website to try out. All while we develop the game for a full official release…in the future. 🥳

The tools we are using to reach our game development goal is mostly free / open source solutions:

GODOT – game engine. It’s such a wonderful game engine. In my opinion it’s up there with the mighty Unity / UE in many ways. Godot is lightweight, accessible and supports both 2D and 3D in intuitive ways. For us it’s a great collaborative tool.

Blender – for overall 3d graphics and some image processing. I made the Skullkeys logo, and sculpt the skulls in Blender app. Blender is free / open source and is so smooth for general modelling, shading. The accessible nodebased system can quickly create powerful graphical setups.

Affinity Designer – pixel & vector graphics / image processing. Affinity makes the best graphic tools on the market and while it is a payed product, the price (subscription free!!!) is just a bargain – $24.99 on Mac/Win….and only 9.99 on iPad! Highly recommended app!

TexturePacker – for packing sprites into neat spritesheets.

Bitbucket / GIT – for source code version control. Our safety and collaboration environment.

Logic Pro – Digital Audio Workstation (DAW) is used to create the music and sound effects you hear in SkullKeys. We use a mixture of real world (recorded) foley sounds with synthesized sound effects to create the atmosphere of Skullkeys.

Bitwig Studio – another DAW which Mattias use to create the music of Skullkeys.

FL Studio – yet another DAW which is used to create music and sound effects. FL has a very intuitive sound editor (Edison) which is great for overall noise cleanup and audio file processing.

Both me and Nicklas are avid codes and game designers so we are splitting the development work between us to make the most of our skills where needed.

Today I (Mattias) animated the logo with some dramatic lighting and subtle movement to make the skulls feel more hostile and eerie. Yes, it’s a simple Blender scene with a 1 logo, 3 skulls, 2 light-sources (yellow key-light, and a blue light from the bottom). Dramatic!

Nicklas have been implementing destructible tiles so you can blow up some of the blocks in the world and it looks smashing! He is also working on some of the traps in the game. We love to play with physics so there will be plenty of bones breaking in Skullkeys. And many objects will interact in intuitive ways to make the world come alive!

We are aiming for accessible game objects, enemies and traps which can easily be placed while designing levels.

Here are some very early screenshots.

skullkeys_screenshot_02
Bombs away, yes there will be bombs and many pickups in Skullkeys!
skullkeys_screenshot_01
Bats, oh how lovely they bite…in swarms!

Make sure to bookmark skullkeys.com so you get the latest news. Very soon we will add some videos of the actual gameplay in action.

…to be continued…