2021- 2022 Enklu

Enklu was a platform built to work with AR and VR on the web and on various devices. I was a designer on a lot of projects meaning I would create designs for clients and present slideshows for review, then I would work with contracts and assist to ensure the experience went well. I’d work on also creating art and code for the various projects I worked on using Enklu’s amazing platform and Unity.

BTW that wasn’t the owner in the video just a manager 😅

There were a lot of fans like the above who created videos on some of the shows we ran.

We spent most of our energy working with Hololens and Oculus.

Yeah, this is a quick demo of a demo I was building 😅 This is an unofficial recording.

I worked on various things in the Unity-like platform. I would set up a lot of assets in Unity and then move them into Enklu for various scenes. Things like animation state machines you’d have to set up in Unity then you’d reference them by script. Enklu had a custom scripting language that was javascript-like with C# and HTML aspects depending on how you used it. Most text and UI aspects could use their special HTML-like code.

You can see how things slowly improved over time with the Unreal Garden below.

Above are various videos of the unreal garden in development (hence debug menus in the back), sometimes the mouse didn’t work quite as well as a hand movement would with HoloLens 2.

2016 – Organize It

Organize It was a tool to make it faster to organize your workflow in Unity. I built out different features like playing animation at different speeds, testing sounds together, a quick note tool, a unity scene helper, etc… It was mostly directed towards level designers but could be used for anyone. I lost my work from someone stealing my laptop among other things from a break in. But I still learned a lot and thankfully recorded some of my work during that time. I just wish I was better at version control back then… Since I didn’t have a laptop for a while after that I ended up borrowing a Linux laptop – later learning Krita so that helped in other future projects.

I really liked creating tools and I hope to make a better version of this one day.

Video showing different features

I have more features than just this, you can look at the video to see everything else

2013 – Dark Echoes

Video showing Dark Echos

Play as a blind monk and save your village.

Use sound and echoes to discover your environment.

Avoid enemies creeping through the cave.

Find bellflowers to cure the villagers.

Use your voice, staff, and rocks to get through the dark.

I worked on scripting the Mecanim animations, controls, and save system.

2020 – Birdboys

Brief

A multiplayer first-person shooter practice project. I focused on improving my rigging/modeling and doing some game UI work. We sat down, went over the design, and I got to work.

Problem Statement

How can I design a UI that fits a cowboy theme but is simple enough to be understood at a glance? How can I go about creating and modeling a bird character as a player?

Solution

The end result for my UI is below. While it could use further UX testing it worked well enough for a starting screen.

Menu screen

Process

Fonts

To get started the first thing I did was work with the programmer to find a font we agreed on. We looked at many free fonts on Google Fonts and settled on Rye and later Smokum. The programmer then set up some placeholder stuff for now.

It functioned but didn’t look that great.
I thought a lot about how text should look..
I would play around with ideas on how to make it feel more punchy

Assets

3D model and rig

From here I started to work out some basic models that could be used for characters. I created a very simple bird in Blender.

The original bird model

I would go back and update it further and you can see a video below of me trying out a later version.

My bird in progress

With a working model, I handed that off for my programmer to use as I got back to the art assets for the menu.

Spritesheet

I created my first mock-up

And yeah, went through a variety of versions until I settled on a style I liked.

I made a lot of this in Affinity Design and Photoshop and was still figuring out the best way to display things

Originally I quickly painted some wood but it didn’t have the effect I wanted… So I just made a simpler version.

painted wood

I would work on various art elements.

Icons and UI

Not all my ideas were that great but I thought the different hats could be used for teams or player identifers…

I thought about different ways to display the score…And yeah they were too complicated but it was fun to think about nonetheless.

I thought about other more complicated cases…

I don’t think we even ended up using a scoreboard in the end lol. It was still some decent practice on game UI and rigging and would later help me feel more comfortable setting up rigging for other more complicated models.

2022 – Chapter 1

Chapter 1 is a classic adventure game where you solve riddles and complete mini-games to try and save a princess. There are many ways to fail but few ways to succeed. This is one of the most ambitious team projects I have personally tried to run. I created all the gameplay, cutscenes, and animation and had my team help where they could.

– 16 min reading estimate –

Skills: Unity, Animator, PlasticSCM, Project Management, Level Design Tools, Teaching

Table Of Contents

The Product

During this game jam, I created a game called The Adventures of Sir Kanon Chapter 1 with a small team. It’s an adventure game you can find here:

It features:

  • Voice acting by a lot of folks around the world
  • 8 3D levels
  • Riddles
  • Puzzles where you may get lost 😉 I’m not telling you the answer!
  • New gameplay toward the end if you can get there

It was a project to help me work on improving my management skills and leadership skills. I learned a lot from it. This project was created in roughly 2 weeks’ time with folks from around the world I knew. Almost all of the game was built in one week. One week was just for prep and understanding the tools. The training I offered was before the game jam started.

And yes, yes if you look at the details we do have 2 versions of it. Pick which one you prefer. The less silly version has fewer bugs and is easier to play through.

The Backstory

I’ve worked on numerous game jams and thought I’d work on leading a game jam with a team of people with no game dev experience. I thought I could at least improve their lives by giving them an opportunity to grow and learn.

Teaching a Team

So from the very beginning, I expected to do this entire project by myself if I had to. I would make sure no matter what happened we would have something to deliver.

But I also hoped… Maybe I could teach my team how to do stuff and they would go out of their way to learn more in their free time and magically get good. Well, … Yeah no that didn’t happen. I spent a lot of time building tutorials and learning about this and that, I spent so much time just working on what I would teach that I didn’t end up teaching very much. I tried to create a short one-hour training every week by streaming on Discord. A short intro to scripting, a little about UI, some general stuff on animation… A variety of tutorials. I thought well, it’s much faster if I just make a video instead right?! Video editing won’t take that long… 

Well… After making an hour-long video that took me at least a week to set up, film, edit, cut, and then realize it still needed a lot of work I was disappointed. I realized my goal of teaching my team everything before the jam would not happen. But it was a nice idea and I actually like doing this sort of stuff even though I would need more time to do it right.

Here is the video I ended up spending so much time on :/

Tools to Save Time

Okay so. I knew a lot of this project would fall on me. What do you do if you worry about time? Yeah, use tools, obvious answer. A master is only as good as their tools and I figured it was the perfect time to learn new ones to master! So last year I bought piles of assets, tools, mini engines, and things of that sort. I had something perfect for an adventure game jam though: 

Adventure Creator

Here is a video preview if you want.

A new fancy tool. It’s basically a visual scripting tool with nice built-in adventure features so you can very quickly build out a game. I spent a lot of time reviewing videos and going through the documentation. More than I really planned but it worked out enough in the end. It is set up really well for a game jam! It would have been helpful if I knew this tool better before the game jam but you can learn a lot when forced to lol.

I can talk about the plus and minus of why coding should not be your go-to when designing a product and it even became an issue later when a newbie Unity programmer did use some code… To future-proof their work. Well, the code had to be dropped at some point which I expected, but he was able to address the issue and fix the problem later on. One reason straight-up code should not be introduced as an all-in-one solution is you might think you may fix one problem but you may just introduce a new problem by doing so and that was what happened later. So, you might have solved a problem but other users might not use your code how you expect… Also, visual scripting is good for folks just getting started with Unity. While I can script just fine in C# it can be much slower to reinvent the wheel. I needed to focus on speed so I used pre-built tools and options as much as possible.

Visual Scripting Example
Granted no one likes visual scripting going everywhere XD

I was pretty proud of how I was able to use the design and make work it both animation-wise and script-wise (granted the animations I did were a little hacky)

My favorite scenes in the game because of how complicated they were.

An example of meeting the snake
Behind the scenes of the snake scene

One of the complications was simply handling the lighting. I did a few tricks here to make it appear the lighting was changing and had to make some things time correctly… There are better ways to handle this but I had to take some shortcuts.

Shark cutscene
This puzzle was very hard for most players, it had 2 solutions but still many got lost in it

I was scratching my head on how to build out the design on this cutscene for a while. I was able to make it work, but I was unsure of how to make it appear something was coming up from below you for quite a while.

Version Control

I’ve worked with and without version control before and I knew what I did not want to use. My go-to GitHub Desktop proved to be too slow so I ended up using:

Plastic SCM

Originally I was going to use some *free* type of version control. I was going to use GitHub with GitHub Desktop and well it sucked even with LFS (Large File Support) setup. It was painfully slow, I literally spent 3 days just trying to upload some basic files and I got mad and was like this isn’t going to work (stuff kept timing out, breaking, etc, etc). Yes, I did have some help from someone who uses Git and he didn’t have any luck either.

I need something that lets me batch-upload hundreds of large files at a time that are likely a few gigabytes. So I really compared my options and decided to try Plastic SCM and man! This was smooth as butter!

In past experience I knew a lot of places where projects fail, get corrupted, and lose data, I’m used to using frustrating tools! Unity Collab was awful, it was so slow in the past that I shutter to consider all its limitations. I have used Sourcetree, TortoiseSVN, personal servers, and more.

I know the pain of merging, uploading, and everything else that comes up. I guess when working I take extra care to avoid merging whenever possible. First mainly because I have more experience failing than succeeding with version control and second because it feels like better work quality in a way. But I ended up merging things well, and fixing merge issues that came up (cough newbies were still learning how things worked)

XD Merging and zigzagging everywhere when learning to use the tool, it got smoother later. But you see my teammate sure tried hard to learn to use the tool.

Finally don’t worry about mistakes! 🙂 I actually, even liked merging and working with different branches, it made me a lot more fearless and more confident working with this tool and it says a lot about the tool. I actually started to feel like more of a leader sorta being in control of this section XD

Also wanted to mention it was cheaper than Github with LFS pricing. I ended up paying $5 for my whole 30GB project and used the free plan that includes 3 team members.

PlasicSCM compressed the 30GB down to 14GB which is awesome 😀

I was willing to pay $10 though if I had to. GitHub cloud storage charges by the download (and a few other things) and I had… quite a lot of team members redownloading the project so I’m glad I didn’t go with that. Not everyone really understood how to use the tool leading to a lot of downloading…

Tools I Ended Up Not Using

Well… I had a nice animation tool I found for free and I recommend it… But due to time I just manually handled adding talking animations to some characters takes about 5-10 mins easy peasy and I didn’t want to download another tool…Though I spent time learning it before the jam just in case.

An example of creating talking animation

Don’t overthink animation when you are on a deadline, almost all decent animation is just a few keyframes anyway.

Now if I needed to move a lot of his body and add in the more subtle gestures I would highly recommend UMotion Community since it’s free and gives you bones to animate with. The paid version includes IK which is really nice for advanced animation controls.

Besides that, I had a ton of asset packs. So I guess in the end I used 2 tools but you don’t need much to make something cool.

Voice acting

So this was interesting and all over the place. I spent a little time helping to coach some members on voice acting and I recorded a few lines myself. I don’t think I’m the best voice actor but I can put some stuff together. I tried to sorta go for Zelda’s voice from Botw for the princess. It was good enough. I originally was going to play other characters but like 2 days before it ended I met a kid who wanted to do voice acting and he did an amazing job. 

Now you might ask about music and sound effects. Did I prepare for that? Yep. Did I forget all about that yep… 😅 I’m only one person, but if I planned better I would have been able to get that in.

Design + Scope

Everyone knows design determines the scope, so keep your design small. Anticipate for expansion sure, but keep your design small to reduce scope. You can always add more or work on polish when you finish your original scope. But it’s always sad to cut projects that get too big. Less scope is better time management etc… And well. The project started off that way… But I made a lot of very very bad assumptions. 

Themes

Yeah, I just was dumb and assumed this would be like all other game jams, that a theme would be announced and we would work out some design after the theme. Boy was I wrong and that set off the whole project on the wrong foot. The great leader there not reading the directions. For this game jam, they wanted you to plan in advance and work out your design BEFORE the jam. So yes, despite a teammate asking me what my plans were and assuming they just misread I was completely wrong in this regard. Sometimes doing something so often can make you blind because assume you are right. 😅

So I scrambled to ask some folks about some design ideas and we wrote up a short idea, I expanded it slightly. It didn’t make much sense but was sort of funny. I was trying very hard to include a lot of people in this game jam, for better or worse. It would make it harder for me to add so many random folks without much game dev experience. But I always want to give people the opportunity to prove themselves and help them build confidence in themselves even if it may cause me some headaches. So there was this silly design, not well fleshed out but something I could work with.

Learning Tools & Scope

I was also trying to learn Adventure Creator during this time too. And then a family holiday came up and I ended up losing 3 days of work because I had forgotten about it eariler. I let someone work out the design of the script and flesh out the gameplay ideas further and would review some of it now and then. I didn’t have time to review it thoroughly but figured that I figured, like everything else we can always cut. I figured we would likely not get halfway through this new design. It was a huge and ambitious 10 levels with a variety of gameplay, cutscenes, and animation. I knew it was far more than we could achieve but for some reason, I was like A-okay we will do as much as we can. I wanted to see how far we would get. I also knew it would fall on me to make it happen so I thought, yeah sure I’ll tell cut later once I have a good idea of my pace.

And yes. I ended up cutting. The last two levels not only had me do a lot of voice acting which I was running out of time for but it required new gameplay elements and I hadn’t finished the new QTE (QuickTime events) yet and more left to do in another level. So I cut them. I just didn’t have time to do every role. (I did finish those QTE BTW.)

Also, that code bug did cause a last-minute headache and we were scrambling to work around it and I lost time from that as I quickly taught my teammate how to visually script that section instead. So I’m glad I cut early enough to leave room for this because I needed that buffer to address unexpected issues. I should have cut even earlier for a better product though.

Now lucky for me I also set up the website page earlier because I had no time towards the end. I knew time would be an issue. I was biting my nails metaphorically because it took like 15 mins to upload the thing and then I realized there was a bug and it was very much down to the line. I literally got everything set up 2 mins before submission time was over! 

Retrospective

So what would I do differently?

  • Plan earlier + cut earlier
  • Maybe work with people who know what they are doing so I don’t have to review as much. (also avoids some drama, as newer folks can’t understand why their ideas are not feasible in the timeframe) Reviewing work and assigning work is a job all on its own. I’m lucky I was able to assign someone to do part of that and delegate what I could. Then I had someone review their review before it got back to me to give me a little more buffer.

Realistically though I’d probably be even more ambitious though… I almost created 10 levels in 1 week… Just imagine if I had the proper time and training to do this right…

2019 – The Hand Of Death

Grim Reaper with glowing eyes

The Hand Of Death (HOD) is a grim reaper trying to get to a poker game. It’s a 2.5D point-and-click adventure game about trading lives for a game of poker. I created the 2D and 3D art in a 3-day time span, you can play it here. I didn’t create all the art but I created the majority. Not all of it is shown below. I really think the hand was required on that death-dealing tool there.

I created a simple logo pretty quickly in 10 mins and you can see where I cut corners but we were debating who should do the logo for a while so I was running out of time towards the end.

screenshot
models in progress
models with no time left
Talking with folks

2014 – OmegaTech

Omegatech was a Mobile shoot-em-up action RPG of Cats in Mechas fighting against an interplanetary invasion.

I was a level scripter on this project and helped to create levels. I volunteered to work with this group over the summer. I learned new tools, team building, and new source control tools (Tortoise SVN, and Sourcetree) .

Skills: Unity /C# Developer /Special EffectsLevel Scripter

I used Playmaker and C# in Unity to create different triggers and animate effects.

Some stuff I did:

  • Triggered enemies to spawn, bridges to move
  • Created particle effects that responded to how close you were
  • Created a lot of animation and animation triggers through code (rotate parts of a model etc)
Attack the enemy screenshot
Attacking an enemy
Playmaker screenshot
An example of Playmaker in use
Script example
Some animation script examples
The last update I know of the project

2015 – The Maze

The Maze is a game played with hand sensors (Leap Motion) so no controller or keyboard is required. This was my first and best solo game jam. I programmed and modeled a short game in a month (November) and learned a lot on the way.

Skills: Unity /C# Developer /AR3D Modeling

I just sat down and entered my first game jam. I worked by myself on an AR game using leap motion. I wanted it to feel artistic and created a fake shader on the camera itself so I rendered everything wobbly.

Get the key screenshot

This game requires leap motion to play.

Anyway I learned a lot, I setup maze generation, did some 3D modeling, and tried to work out mirror reflections with the renderer but only had it halfway mirror :/ I realized you could use the split mirror to sorta see around the level and decided to leave it, so on certain walls you can see other parts of the level. I didn’t have time to make it more spooky as figuring out the AR stuff was a huge pain. I think it turned out pretty well considering my timeframe.

Oh, and your hands control the lights in the game so you’ll want to keep them up so you can see what you are doing.

Spooky reflections
Maze Generation

2018 – Kova


The game is very different from the latest version.

Kova was a sci-fi Metroidvania game with puzzles, quests, crafting, and multiple weapon types and abilities.

I had a contract role for a few months helping to develop different systems for Kova.

They originally created this for a Kickstarter. They found someone to help sponsor it and I was hired on to help down the road. This was an Xbox project originally as well before it was later moved to Nintendo Switch etc.

Skills: Unity /C# Developer /AI /UI

Some of the systems I worked on included:

  • I worked on the enemy AI, creating their behavior and movement: Drones, pirates, flying bugs, rats, cyberpunks, Cicadalyte, Sandburster, etc
  • Various menu screens such as Map screen (with fog of war), Inventory screen, Log book, Ability Screen… Lots of UI setup and implementation
  • Puzzle setup – I helped set up puzzles and ensured they were functional
  • Mission setup – I helped setup various missions
  • HUD such as weapon selection and crafting, HP/Energy bars, etc, mini-map.
  • I helped set up some things on the game weapons: Shotgun, beams, Flamethrower, etc.
  • I helped the team learn about scriptable objects and better ways to handle save data with JSON.
Example of status check for Ammo, health etc
Taking damage from a fall
Menu screen
Select a weapon

After I left they decided to go in a multiplayer direction so it changed a lot, but you can see how it looks below.

2020 – Voice Of The Forest

Guess who is popular 🙂

Voice of the Forest is a simple game about planting seeds and growing a forest without letting your plants die from lack of nutrition. Work together with nature to improve your forest and grow strong.

Hey, in late December I decided to join a game jam. I joined a team and I worked as a technical artist, special effect artist, and general developer to help fill in the blanks for the team. I created a few particle effects, shaders and setup some of the UI in the game. I worked with another developer to fill in where I could and I worked with the artists helping them get their art into the game. I showed our UI/UX designer how to get his UI into Unity and how to set it up. I recommended a few changes to the UI and UX (Missing states the user would expect) and was overall happy with what our team achieved in such a short amount of time.

Skills: Unity / C# Developer / Special Effects

Scope ~ 1 week – Budget ~ NA – Role ~ UI Dev/ tech artist

Voice Of The Forest Preview Video
Ashley Hooper Skip to content