So, on top of the usual daddy duties, the chores involved with running a house, keeping track of a wife, 2 kids and a neurotic housecat – I also have had a battery of medical tests done due to my advancing years. I’ve dubbed them, ‘The Ol’ Man Tests’
In addition to wrangling with doctors over prescriptions, I’ve ha multiple blood draws and a delightful little procedure that required me to not eat solid food for almost 48 hours straight.
I’m beginning to think there was a reason God smote Job’s offspring first. There is nothing worse than being tortured with hunger while a growth-spurt five year old is demanding food be shoved in his gullet every 4.25 zeptoseconds. I won’t torture you with the details, but the procedure I had to undergo after starving myself was the perfect degradation to cap a long two days of kwashiorkor.
And of course, it cut into my dev time on top of it.
I’ve been trying to round out my 3-level demo with a mini-boss fight, trying to add some ‘platformer’ elements, including the persistent question: How do you ‘fight’ a boss monster when your only game mechanic is jumping?
What I’m coming up with is trying to use an old asset; The Launcher, and have him lob projectiles at the boss. I want to set up a button for the player to jump on; trigger the launcher and then have a cool-down time before the button resets and can launch again.
Hopefully, the player will find a challenge in trying to avoid being hit by the bosses projectiles while trying to knock him down. The rest of the level will be a slow steady climb, with random jump scares, obstacle avoidance / jumping and random knockbacks – here is how its shaping up:
So, shortly before bedtime, my eldest asks to play our game, and how can I possibly say no to that??
So I plop him in the chair, strap on the Vive, hand him the controller and explain that I’m making a boss level – and as my official playtester, he tries things I never though of; like jumping and trying to scale the tower the boss creature is on.
After a bit more playtime, we go through the nighty-nite routine of teethbrushing, potty, tucking in and he drifts off to sleep.
In the morning – I’m plugging away at the game when he wanders in, sleepy-eyed and plops down at his sketchpad, just kinda doing his own thing until he asks me for the scissors, which I distractedly hand him and go back to trying to wrap my head around quaternions. Suddenly he’s by my side with this:
and says, “Daddy, its a BOSS”
“Wait,” I ask, “do you want me to put this in the Boss level”
“Yep.” he replies, spins on his heel a full 360 and starts opening the flatbed scanner. Oh – he wants it NOW.
So I scan, crop, draw it out in Inkscape, pull it into Blender – extrude and texture – he finally loses interest when I start rigging it and is drifting off when I ask questions about it. Are those things sticking out supposed to be hands? Who is this? What is this?
He’s not very forthcoming with answers, so I’ll have to draw my own conclusions. But, its looking pretty sweet:
So, in addition to dealing with 2 demanding kids, a cat with a sensitive stomach who barfs if you look at her cross-eyed, a wife with a new job and a 100+ year old house that can’t decide to fall apart piece by piece or collapse all at once – I also have old man duties, which entail fun things like giving all my blood to a surly nurse after starving myself for some 13 hours (on top of fasting for Ash Wednesday)
In my woozy blood drained delirium, I also manage to lose my car keys, right when I have to go pick my kid up from preschool AND I’ve been ignoring my intern, who is probably grateful I’m not overburdening her with tons of modelling requests as she’s getting back into the swing of school and my poor houseplants who are debating crawling outside into the Hoth-like Ohio winter and taking their chances on their own. In the middle of all these fun dadding adventures – it occurs to me that I haven’t written a single sentence about the game in over a month.
I AM plugging away at it though. I’m still trying to get a full-fledged demo ready for release on Steam- including some sort of mini-boss battle that takes place after the player completes the mini quest and finds all 5 socks, rides the boat to the flower island and figures out all the ‘kaboings’ to get to the castle up top and enter its forboding gates…
So, I’m taking a photogrammetry experiment that I did – my youngest built a Lego tower and asked me to put it into the game – which I’ll oblige, until lawyers start pounding on my door with copyright notices and surly attitudes. I’m adding other elements that I’ve created, such as a cute ghost and floaty platforms and other neat things kiddo has drawn – but never had and real place in previous levels. One of which is the character above with a unusually large arm – I think I’ll have him throwing the glowing orbs at the player until 4 supports are jumped on and broken – then his tower will fall and the demo will end.
Which forces me back to thinking about my game mechanics – will there be damage? Player loses a life? How does my game provide a challenge if there is no penalty? When I do get any spare time, I’m trying to soak up as much game design theory and videos about level breakdown as I can. It also help that my kids are heavily into Super Mario Galaxy on our old Wii console – they get to play, I get to study level design from a developers perspective. And it shows I’ve got a lot to learn.
We’ve been stuck indoors with bone chilling temps outside, so its led to a lot of cabin fever, very little dev time and short tempers. Not to mention a case of shingles that left me sore and irritable. What kept me going was a nice big batch of home brewed ales and the promise that school would resume. It hasn’t helped that with this horrific weather, my hibernation reflex has kicked in, making my usual early mornings tougher than ever to face.
BUT – what dev time I have been granted has been spent figuring out things that DON’T work. Yay.
I’ve determined that my old way of animating my character is less problematic than using Anima 2D. Booper would keep moving (and animating) even when the player would stop pressing any input. A lot of times animation events wouldn’t trigger. And for unknown reasons, the speed would ramp up. Or stop. Yay.
I’ve also determined that whatever method I try to get footsteps / different surfaces I just cannot get the concept of quicksand to work on a game level. I’ve tried putting colliders on Booper’s feet, I’ve tried raycasting – neither seem to work. Yay.
So, I’m scrapping the level beyond the Socks Quest Castle in favor of a mechanic that does work – my ‘kaboing’ that is inside the caves. I had this flower-esque level I sculpted in Oculus Medium floating around, moved my Bad Plants to the various platforms and started adding ‘kaboings’ to them.
Here is a sample of gameplay – ignore the little cubes when he lands, those are placeholders for his landing spots, easy to see; easy to move:
One of the ‘mechanics’ people seemed to love at GDEX was the ‘whoa’ feeling from making a big jump off the giant steps leading to the clock and this (hopefully) will add more to that feeling.
I’ve started to reach some functional limitations using Spriter Pro and my character animations. It seems that every time I try to insert new sprites; namely, I want to add different faces for different clips, it does weird things. Like make my faces fly off.
So, in my quest to make things as best as I can, I was scanning the Game Development Resources list and came across Anima 2D. After a bit of reading and watching some tutorials, I decided to give it a try and see if I could get a bit more out of my admittedly basic player sprite.
I was thrilled that I could take my simple ‘stick-like’ arms and legs and bend them. I was even more thrilled that I could swap out sprites at runtime and change faces. I could add bones to the faces and animate those. I’ve always loved the blink I added, and now happy smiles and worried face are added in. Next will be a ‘Machinarium’ styled thinking, when the character idles too long.
Not to say it doesn’t have its difficulties. I’ve been trying to work out why my jump animation plays twice when he jumps. Or why it seems that FPS in animation doesn’t quite sync time-wise to actual game time. But, I am getting there – just got things working with adding the animation events for footsteps back in and left / right animations are next.
When I was exhibiting at GDEX, a college student was impressed with the game and very bluntly asked, “Do you need an intern?”
I wasn’t sure – DID I need an intern? In the blur that was the conference, I asked for a business card and said I would think about it. And of course, promptly forgot with the excitement of the expo and getting right back into the cyclone of daddy dev days (not to mention the added stress of getting our attic renovated and dealing with contractors)
During a frantic cleanup session, I came across the paperwork I had collected during GDEX. In it was a stack of business cards I had collected – and a flood of memories came back. Including an offer I had yet to think about. So, I dug into Cartoonie’s portfolio and was impressed. Good 3D modelling skills, draws waaaay better than I did when I was that age. Decent illustration chops.
So , I decided to see if that offer was still on the table.
After a bit of back and forth on Facebook, we quickly determined that this is a ‘for experience & portfolio pieces’ type internship – but as soon as I get any funding, I’ll pay for any work done. Right now its exciting because I offered a challenge: make a 3D model out the drawing above and send me a model.
Well the model came back and its impressive – Cartoonie did a bang up job putting in details I would have ignored. And offered to texture it over the weekend. I’m impatiently waiting to see what comes back.
Well, I think I’m finally coming to the conclusion that it was my RX 480 that was causing my woes lately. Numerous times I’d try to update drivers only to get a bluescreen caused by ‘Atimdag.sys’ – or they’d install and my Vive would suddenly take over as the main monitor. Or they’d install and I would get nothing but black screen upon reboot. I got a really helpful chap on reddit, who sorted out a whole bunch of issues and for a bit everything seemed to work – until EVERYTHING started strobing like I was in a 70’s disco – then a (thought this was a bit of made up fluff, until I saw it) real life Snow Crash.
Nothing I did could get the darn thing to stop flashing (even on boot up, so it wasn’t a driver issue) so I yanked it and pulled out my old R9 280 from the wifeys computer – and ye gods I thought I’d never have to wrestle with THAT beast ever again – and GUESS WHAT?? It just works. Drivers picked it right up, its a little slow in VR and some programs like Oculus Medium show some banding / artifacting, but its working just fine.
Now that THAT is dealt with – time to get back to work AND go shopping for a new card, one that has at least 2 HDMI ports and not so many Displayports.
One thing I’ve been tinkering with: Post Processing Stack – particularly the Depth of Field. Done right, it really gives the level a tilt-shit photography look, ie: everything looks small. I really feel it adds a ‘look’ that compliments the game, since its based on a child and their perspective, I know that kids have a narrower field of focus, which is why when you are scrambling to get their shoes on because you’re running late for school drop off – THEY are focused solely on THAT ONE TOY WHO CAN’T BE LEFT BEHIND.
I’ll eventually get the proper focus, right now its very shallow and I’d like more distant objects to be blurred out. But I’m also focused on a new NPC / prop – THE TANK:
I made it on a whim, just to test my Inkscape / Blender skills and it worked out quite nicely. The turret rotates to face the player and I can slap one of my moster / bee AI routines that I made in Playmaker for movement / attacking the player. The wife did express some concerns regarding the violence and shooting parts – which, I’m also concerned about. What message do I want to convey in a ‘kids’ game?
The answer came from the hivemind: I posted the screenshot on Facebook and my dear friend Angela from NYC said:
‘Because it typically represents violence?
If so, have it shoot rainbows, chocolate kisses, happy emojis, or paint. ‘
Since GDEX, I’ve been trying to implement some of the suggestions that people gave me during the course of their play sessions. One of the ones that had stuck was people mentioning the style of the terrain didn’t quite match that art style of the props and characters. Since my son drew most everything in crayon, it seemed natural to make the terrain look like it was colored in crayon as well.
The trick is how to make it look that way.
I tried a number of Photoshop and Krita filters and combinations of filters and layers to try and approximate a crayon look. Which looked pretty lame, in the end. Most of them had a very fake, algorithm digital plastic feel. Trying to do it by hand with crayon or pastel brushes in Photoshop would take a long time. Almost wish I could unwrap the mesh and have the kids color it.
Then I realized I could.
I realized that if I exported the UV’s from Blender, opened it in Photoshop, used the wand tool to select the empty area around the UV islands, expand the selection, invert and clear – I had a pretty good outline that I could color with Prismacolor pencils, sharpened to a fine point and scanned back in, would look like crayon.
The above video gives a pretty good idea of where this is going – after asking folk online, it seems the crayon concept agrees with a lot of people. When I started adding effects from the Post Processing Stack (vignette and Depth of Field) its starting to give the whole game a brand new look and feel – more on that in the future.
So, I’m back from an amazing experience. And waaay too much to do and get caught up on.
So, after a frantic 2 weeks of polishing and planning, getting promo materials printed, cleaning up my PC so its ‘show worthy’ and with a ton of help from the wife, who helped with details I wouldn’t have even thought of – I hit the road, mind ablaze with plans, possibilities, and hopes. Its only about 40 minutes into the 2 hour trip that I realize I left without a friggin’ monitor.
So, quick call to the wife to confirm I left it – yup, I did. And the amazing woman she is, grabs kiddo, monitor and hops in the car to meet me on the road and get the screen safely in my hands – and me back on the road. Whew. Dodged that one. Until I get there. My GPS is insisting I go down the ONE road that is closed for repairs and cannot find an alternate route to the loading dock so I can get my stuff into the convention center. I end up on a frantic phone call with Keith, the CLE Game Co-op leader, who with the help of the convention center staff help confirm that GPS and Apple maps cannot find the alley we need to get me to the docks. After a few back and forths, we finally get me in, set up and I slouch my way to the bro-in-laws, tired, embarrassed and hoping this isn’t a sign of how the weekend will turn out.
I could not have asked for a better weekend. The drive in was quick, easy and my GPS let me to the parking garage with zero hassle. As I’m coming in off the escalator, I’m greeted by a string trio softly playing ‘The Imperial March’ (Darth Vader’s Theme) if that ain’t a good sign, I dunno what is. I proudly put on my exhibitor badge and wander over to my booth, and am surprised to see someone looking intently at my poster. I see that he’s a fellow dev and I introduce myself. His name is Leonard and he’s at a nearby booth and likes the look of my character – I explain that its the work of my son, which he really enjoys. So I fire up the Rift and give him my elevator pitch and he’s off and running; my 1st ‘customer’!
And I am off and running. The rest of the day is a complete blur – I’m seeing a ton of people and getting a lot of good feedback – smart gamers are trying to break my demo and I have just about 90% of them covered – except for some reason Unity still considers the quest complete upon level reload. I’ll have to quit the demo and restart it each time. I also notice I get a lot more traffic when the headset is active and people can see movement on the screen, so I leave the demo on the loading screen and rig up small box & piece of paper to keep the Rift sensor active and people can see my lil’ guy ready to go.
I’m go grateful the organizer of the booth got this shot – this kid was my biggest fan. His dad is a dev at Bitmen Workshop and he had gotten a taste of my game the day before and brought his son over to give it a spin. The kid had a lot of feedback and ideas, guess it helps have a dad in the business. After the day got started, he surprised me by coming back and having another go at my game before he had to leave. To say the least, I was touched, especially since he’s the same age as my little guy – whose birthday I had missed the day before to come do this show.
Being my 1st show, I obviously had a lot to soak in- but I did have the forethought to bring a notebook and record ideas as they came to me: here are a random sampling.
The booths next to me used coat hangers with pants clips to hold up banner signs.
Having an ‘attract mode’ on my monitor brought people in more quickly
Business card went quicker than the pins I had as giveaways
Watching the booth across from me (a multiplayer game) they did a ‘mini-tournament’ winner from 5 round-robin got a small trophy, but it did generate a huge crowd
Even though it was noisy – speakers are a must, I had to explain to onlookers that the game had sound effects done by the kids
All in all- it was a fantastic experience, everyone was supercool, had a lot of encouraging advice, and suggestions. I’m hoping to involve the whole family next year and get them day passes to explore while I try and push this a little further, and having my kids come by every so often and play will probably garner more attention. Out of the whole experience, I walked away with one thing that I thought I would never have to do:
Welp, GDEX is right around the corner and I’m hammering out the last details, so instead of prose, I’m opting for the screengrab dump. Hopefully I’ll have some feedback, photos, sketches and otherwise good news about it next week!