Warpers – Unreal Saving and Loading

SaveSystems

I’m currently taking the course Big Game Project at Uppsala University – Campus Gotland, where the goal is to have, after 10 weeks, a working vertical slice of a game which might have the potential to become a product worth selling at a later stage.


We’re now one week from exhibiting Warpers at the Gotland Game Conferance weeks into the production of the game Warpers and this time I’ll write a little about how we save and load custom spaceships. Warpers is a game where the core focus is aimed at players creating their own space ships and using them to traverse the different galaxies through the universe.

We use Unreal Engine 4’s save-game system which makes it easy to save all the kinds of data that we want to preserve between sessions.

There are a number of moments where the ships need to be loaded and saved. After a player have created a ship design that they’re happy with they probably want to Continue reading

Advertisements

Warpers – Incremental Rotation

Incremental

I’m currently taking the course Big Game Project at Uppsala University – Campus Gotland, where the goal is to have, after 10 weeks, a working vertical slice of a game which might have the potential to become a product worth selling at a later stage.


We’re now six weeks into the production of the game Warpers and this time I’ll write about a small feature called “incremental rotation” or “rotation interpolation“. Say you have a top-down character which you want to have facing a particular direction. It will look really unnatural if the character immediately snaps to that direction. What you want to have it do is to rotate towards the target angle at an number of angles per frame basis. All characters in Warpers have this function and makes the game feel so much more polished.

How did we accomplish this behavior then? Well Continue reading

Warpers – Dynamic Cameras

DynamicCamera

I’m currently taking the course Big Game Project at Uppsala University – Campus Gotland, where the goal is to have, after 10 weeks, a working vertical slice of a game which might have the potential to become a product worth selling at a later stage.


We’re now five weeks into the production of the game Warpers and this time I’ll write about the camera system which gives Warpers a smoother feel than more traditional top-down cameras. Warpers have multiple scenarios where a cameras’ movement help the player understand what’s going on in front of them.

Focus Points

The camera location is determined by the average of a number of focus points. The focus points are three-dimensional vector locations which have a boolean state which decides whether the point should be considered or not then finding the final location where the camera should be. This true or false state for points makes it easy to create dynamic camera transitions when aiming or turning around to Continue reading

Warpers – Depth with Parallaxes

SpaceParallax

I’m currently taking the course Big Game Project at Uppsala University – Campus Gotland, where the goal is to have, after 10 weeks, a working vertical slice of a game which might have the potential to become a product worth selling at a later stage.


We’re now four weeks into the production of the game Warpers, and this time I’ll write a little about how the composition of the objects in space is handled. Since Warpers is a 2D game, it can get quite difficult to render a scene which doesn’t look flat. The solution to that particular problem is called “Parallaxes“.

Parallaxes can be explained as:

“The method of displacing objects by a different amount depending on what depth they are considered to be in”

This is no real quote, but my own definition so take it with a grain of salt.

That means that when the camera moves, objects that are further away from the camera moves slower and can almost be seen as static while objects closer to the camera move as fast or faster than the camera depending on if the camera’s view target is closer or further away from the object that is a parallax.

Continue reading

Engine Design – Debug Console

I’m currently working on my own game engine and while it’s no where near from being finished, I’ve applied a couple of design patterns when creating the different systems. In the coming weeks I’ll go through a system each at a time and write about how I have implemented them and what problems I might have stumbled upon.


This week’s system is the debug console which I regularly use when debugging or changing stuff on the fly in-engine.

The debug console is one of the first systems which I created in the development of the engine. As such the debug console haven’t been planned out as well or optimized as other systems. But since it’s mostly used during the development process I think that optimization can be focused on other areas of the engine instead.

Now, this is how I have it set up currently.

Continue reading

Engine Design – Input Commands

Command

I’m currently working on my own game engine and while it’s no where near from being finished, I’ve applied a couple of design patterns when creating the different systems. In the coming weeks I’ll go through a system each at a time and write about how I have implemented them and what problems I might have stumbled upon.


This week’s system is the input system which enables the player, may it be everything from a tank to a warrior with an axe, to move and perform all their desired actions.

When first starting on the development of the input system i set out two goals which needed to be met in order for it to be a successful implementation.

  • First, all actions needed to be rebindable, players should not be forced to use a specific layout. Forced mapping layouts cause trouble when users don’t have that particular region layout on their keyboard and it certainly makes it difficult for physically disabled persons to enjoy a great game.
  • Second, when checking whether an action should be called there should be a simple way of doing so. An easy to use interface which is as simple as an if statement.

The current solution works like this.
Continue reading

Haunted Light – Automatic Tiling

This week have been a really productive one in terms of features completed. First off, I’ve done some finishing touches on the Pathfinding algorithm which I wrote about in last weeks’ post and all that remains now is to give each enemy it’s AI-logic.

One of Haunted Lights more prominent feature is its re-generation of levels. Because of that particular feature we need to have the level to be updated whenever the generation happens. In case we didn’t update the sprites when the level generates we would get something that look something like the screenshot below.
Continue reading