Skills audit
This is week 1 of the module “game development”. This week’s challenge activity is a skills audit, and the spark forum prompts us to think about the roles within game development, which I reflect on in a separate post.
Skills audit
Questionnaire
The first 13 skills were provided, but then I also add my own skills which I think I need to learn.
1 👍 I can take mouse, keyboard, touch screen or gamepad inputs and use them to control objects in a game engine of my choice.
This is something I’ve implemented in a few engines and SDKs over the years.
2 👍 I can set up physics components (such as colliders and rigid bodies) in my game engine and trigger an event to happen when two game objects collide.
I’ve implemented physics and collision in a few engines over the years, in engines like Unity and Godot, to more esoteric packages like Quil.
3 👍 I can use code to spawn new objects while the game is running (eg create bullets).
A more recent example of spawning objects is shooting balls for a small bricks crusher game I made with Godot.
4 👍 I can set up an animation in my chosen game engine and control it with code and / or with a state machine.
The first version of Contumacious Commuter back in 2016 had idle/action animations, implemented in Unity.
5 👎 I can use level design tools to block-out a level in my chosen game engine.
All of my games thus far has had procedurally generated levels (e.g. puzzle configurations) or were custom jobs (e.g. generating a puzzle layout from flat file configuration), save for the small game I made over Xmas, which has a map editor built into the database called CastleDB. But otherwise, no 3D experience, or any of the more well-known tools. An old collaborator of the Haxe guys (who makes CastleDB) made LDtk, which I’d like to use for a game soon.
6 👎 I can use my game engine’s pathfinding system (if it has one) to create enemies and NPCs that chase or follow the player.
I’ve studied path finding algorithms like A*, and have coded boids which exhibit “follow” behaviour, but not yet used anything offered by a game engine.
7 👍 I can code basic game logic (eg comparing two numbers) to create win and lose conditions.
Oh, yes. I compared my first 2 numbers on a computer some time in 1991 or 1992 using Basic.
8 👍 I can configure particle systems to create different visual effects (eg fire, snow).
Every good engine has a particle system! This maths game prototype for the previous module’s first game jam shows particles if you answer correctly.
9 👍 I can use appropriate software to create appealing character sprites or models.
I’ve been drawing sprites with GIMP or Clip Studio for a long time.
It’s only this Xmas that I tried my hand again at a 3D modelling app for the first time in years.
To the tune of Aqua's Barbie Girl:
— Juan Uys (@opyate) January 28, 2021
"I'm a 3D man, in a 2D wo-o-orld!"#GodotEngine #blender #earworms #indiedev #lowpoly pic.twitter.com/KMijb2hoHQ
10 👎 I can use appropriate software to create atmospheric environment sprites or models.
I’ve never made environment sprites or models (crates, anyone?), but I’m sure the skills from the previous point is transferable.
11 👍 I can create character animations, such as walking and jumping, and bring them into my game engine.
Yes, see the second-previous point. Look at that little man strutting.
12 👍 I can use appropriate software to design clear user-interfaces.
I’ve made user interfaces as a web developer for almost 20 years, but have made menus etc for games.
13 👍 I can find / record / edit, sound effects and music.
I created a bunch of custom SFX for Corn Wars.
Recording more crash SFX by stacking some random crap from the shed and pushing it over. pic.twitter.com/5IjHXIggAG
— Juan Uys (@opyate) May 29, 2020
And music, more recently for the previous module’s first rapid ideation session.
14 👎 I can implement any visual FX as a shader in an engine of my choice
This comes back to a SMART goal I set last year to become more fluent with shaders. I’ve been learning more about shaders using the Book Of Shaders and having a blast implementing it:
Some call this Shaders101.
— Juan Uys (@opyate) January 28, 2021
I call this OMG I just implemented a cel + outline shader in Godot. pic.twitter.com/tSFCNKGV3Z
Shaders are crucial IMHO.
15 👎 I can design an interesting game mechanic that is balanced and leads to interesting player choices
Again, a SMART goal to be a better designer. I’m aware design spans more than just game mechanics, but this is the area I want to focus on this module.
I’ve been dipping in and out of a lot of books on the subject.
I’ve been playing a variety of games and paying special attention to game mechanics. This includes video games on my PC, and card/tabletop games with my family.
I’m a big lover of books, and a bit of a book hoarder, so I’ve got a library to draw from, including design, illustration, art history, comics/cartoon anthologies, and even books not entirely focused on art and design, to hopefully make me a more well-rounded individual.
Roles in the industry
We’re asked to rate ourselves on the seven game-development skills we cover in this module:
- Game design
- Programming
- Narrative design
- Art
- Animation
- Level design
- Sound design
Using this logarithmic scale to rate myself, I get a shallow T shape: