Hey there !
Came up with an interesting feature during this week of holidays. I finally created the Identity Maker, which is a a software that enables making and editing Identities. This means that creating identities from a text file is no longer needed, the software I made provides a graphical way to do it, it can be considered as an enemy ‘editor’. Again, the identity do not specify the behaviour of the enemy, but rather how it moves and how it looks like. Behaviours are hard coded in the game engine, and as for now I can’t think of any other way without complicating things.
Well, the software itself do not add something new to the game, however, what’s interesting is what the Identity Maker can provide in the future ( when I will be sitting designing enemies and levels), that’s where the software will feature its utility. Here’s a screenshot :
( the size of the window is 1280×680)
The editor basically consists of the following :
- The Grid :
A 2D space that simulates the game window: the inner green rectangle represents the game window ( which is natively 300×300 pixel size ( without scaling)), the other remaining space around is off-screen space, which also usable ( theoritically infinte size). The user can create dispalcement targets using the left mouse button, delete them using the right button, and select them using the middle one.
- Some options related to the Grid :
Show DT Indices : show the indices of each displacement target
Show DTs : show the visual representation of a displacement target on the Grid ( usually circles, as shown in the screenshot)
Show Links : show lines linking the whole movement pattern
Show Enemy Preview : generates an enemy based on the inputted properties and show it in the Grid ( as a preview of how enemies with the created Identity will move and look like)
- Settings of a single dispalcement target :
The position of the displacement target
The speed at the displacement target
isFireSpot ( boolean) : whether the enemy has to shoot at that displacement target ( the displacement target where this boolean is true gets an orange ‘F’ letter in its representation on the Grid ( as shown in the screenshot))
isDeletionSpot ( boolean) : the enemy disappears upon reaching this displacement target ( the enemy fulfilled his duty and is now ready to retreat !). I always specify the deletion spot outside of the window ( in the off-screen space) so that the player do not notice the enemy’s disappearance ( in the Grid, it’s represented as a square with a blue ‘E’ letter ( stands for End))
isRelative ( boolean) : nothing exciting here, it’s related to the game engine…
- Main properties of the enemy :
The enemy’s spritesheet filepath
How much damage does he inflict.
- Save Button :
Save the identity in the hard disk under the specified name. We can then copy the file in the Assets directory of the game, and load an enemy with that identity, et voilà, the enemy now uses the identity we created.
There’s a bunch of other things I still want to add in the Identity Maker, but I’ll leave it as it is for now. I’m satisfied with the result done so far, so I’ll move to other parts of the game engine, probably the Command List editor ( will enable making levels…)
I’ve already prepared a load of enemies’ behaviours designs on paper, so as soon as I finish off with fundamental game engine utilities ( looking at you Command List editor), I will head towards the game content, and will eventually start making the Skywalk I see in my mind.