[Development] Exon

Level 24
Joined
Mar 29, 2004
Messages
1,998
About eight years ago, I stopped modding WC3 and went stand-alone. (Well, until a recent little side project.) For me, "going stand-alone" is literal in more ways than one: I have been working alone on a single game for all of those eight years, built in Unity (because I may be crazy but I'm not that bad).

It's called Exon and you can now play a demo: download Exon: Fragment at itch.io


Exon is a narrative-driven sci-fi hack 'n' slash RPG, inspired by Westwood's forgotten classic Nox, mixed with a heady dose of Baldur's Gate, Unreal Tournament, Deus Ex and, of course, classic WC3 SPRPGs -- because obviously, as a solo developer I had to set my sights on the most complicated genre-busting mash-up I could imagine. Go hard or go home, right?

If you've played any one of my maps, you'll probably recognise most of its elements (I'm still thrashing out a lot of fundamentals, so I'm sticking to the comfort zone -- for now). Big robots, swords and shields, conversations, wild animals and bandits; it might look like a gritty sci-fi but it's a heroic fantasy at heart.

I've been documenting the development process as it's progressed, so if you're interested in game development or Unity in particular you can read about all the trials and tribulations and false starts and dead ends on the Official Website: www.raodaozao.net/exon

The demo is only a very small piece of what I am intending to build, so there's still a long way to go before it's "real" -- but I figured I had a self-contained chunk and it was time to stop dissembling and put my money where my mouth is. Maybe you'll enjoy it? Only one way to find out...
 
Level 24
Joined
Mar 29, 2004
Messages
1,998
Since releases are a bit few and far between, I'm going to start posting my dev diaries on here too. So!

Today, the upcoming Friendly Arm Waystation will have a blacksmith and -- yep -- crafting!
 
Level 24
Joined
Mar 29, 2004
Messages
1,998
I always wanted Exon to be able to run on the oldest possible computers, but then I got caught up in the physics engine and dynamic shadows and... well... Unity won't let me compile against DX9 anymore anyway, so it has to be Windows 7.

You can still get small computers with modern operating systems, though, so I have been trying to find a way to squeeze it right down.
 
Level 24
Joined
Mar 29, 2004
Messages
1,998
I have been working on a direct Milkshape 3D file importer for Unity to help streamline my content development processes and... actually got it working.

Do I now have the skills to make a WC3 MDX importer? Probably! Am I tempted? Absolutely! Will I do it? ... probably not. Unless...

 
Level 24
Joined
Mar 29, 2004
Messages
1,998
Isn't it lovely when you're trying to work on new content and get massively side-tracked? "The Milkshape importer will let me tidy up some stuff," he said. "It'll be done in a week or two," he said. Well, he's a god damn fool. Here's a tip for free: don't mix your art and your gameplay logic, it never ends well. (The best time to unwind a mistake is yesterday, the second best time is today.)

 
Level 24
Joined
Mar 29, 2004
Messages
1,998
Sometimes Unity just sucks and you have to do something utterly miserable to avoid falling into one of its traps. This time, it's dynamically loading stuff at runtime -- swapping out the clean and intuitive Resources.Load API for the abject nonsense of Asset Bundles.

 
Level 24
Joined
Mar 29, 2004
Messages
1,998
The long march to finally introduce some new content to the demo finally has an end in sight. (Well, the secret level that came out last time is so hard to access that it barely counts.) The Friendly Arm Waystation has loadsa different shops that all needed new systems, but I think -- at long last -- it might be ready to go.

 
Level 24
Joined
Mar 29, 2004
Messages
1,998
Yep, I'm at it again -- I'm getting side tracked. But there's a good reason for it this time! I'm going to be showing Exon off at a real live local game dev event! Which means that I need something a little more eye-catching than traditional RPG meandering. It's time... to add a new game mode.

 
Level 24
Joined
Mar 29, 2004
Messages
1,998
Probably a bit of a long shot, but you never know -- I'm going to be exhibitng Exon at the Edinburgh College Games eXpo this week! It's on Wednesday the 31st from 5pm 'til late and it's free to attend, so if anybody's in Edinburgh and fancies popping over for a chat (and to play loadsa cool games), I'd be delighted to see you!

Yep, I've been saying I'm going to take Exon out on show for the last seven years and it's finally happening. Wonders never cease.

Sweet deets: ECGx 2023 - Edinburgh College Games eXpo
 
Level 24
Joined
Mar 29, 2004
Messages
1,998
Yep, Exon survived first contact with the general public -- people actually seemed to enjoy it! Which means it's now available on itch for the rest of you to play! v0.06 has loadsa new features, from overhauled art to the new Waystation shopping zone. Get it now from itch.io! :ogre_love:


 
Level 24
Joined
Mar 29, 2004
Messages
1,998
My home-baked terrain editor has always been a source of jank... but it was also bewilderingly complicated to build so I've been reluctant to touch it ever since. Alas, eventually the irritation at jank overwhelms the fear of a new approach and you have to dive in. Looks like it's time to cut that shit up and replace it with Marching Cubes.

 
Level 24
Joined
Mar 29, 2004
Messages
1,998
Every day is another excuse to get distracted. While refining the Milkshape importer I kept bumping up against the spectre of some code for doing ragdoll physics -- used by a single unit, this seemed like a lot of energy for not a lot of benefit (also it didn't even look that great). But if you've pathologically unable to make a "fall over dead" animation, what's the alternative...?

 
Level 24
Joined
Mar 29, 2004
Messages
1,998
Have I ever mentioned that Exon is really just a dress-up game? One of its primary features is the ability to paint your mech in a bewildering array of colours and patterns... but I have been slightly annoyed at how patterns overlay for a while now, as they vary in repetition and scale when they really shouldn't. As usual, thinking about a problem for over a year eventually leads to an answer...

 
Level 24
Joined
Mar 29, 2004
Messages
1,998
As if things weren't exciting enough, I appear to have been accepted to exhibit the latest version of Exon at the Scottish Games Week Industry Conference in Edinburgh! I'll be in the "indie zone" at Dynamic Earth on the 30th and 31st this week if anybody is about! (And probably at the after party on Monday, and definitely the pub quiz on Tuesday.)

Details: Scottish Games Week
 
Level 24
Joined
Mar 29, 2004
Messages
1,998
When I applied to have an Exon demo stall at the Scottish Games Week Industry Conference, I fully expected them to say "who is this clown?" and tell me to get lost. Somehow I got in and had a pretty successful day, where Exon did not crash horribly despite being left running unattended for hours at a time.

The good news is I have uploaded that build for you all to try. It includes a new "easy" stand-alone scenario in Instant Action mode... I say "easy" in scare quotes because only two people actually managed to finish it. Clearly my definition of easy needs some work.

Get the latest version on itch: Exon: Fragment by Rao Dao Zao

And read the obligatory blog post: Blog 902: Going Public (Again)
 
Level 24
Joined
Mar 29, 2004
Messages
1,998
Physics engines were a mistake. I hate them and everything they stand for. In unrelated news, I have just rebuilt Exon's character controller system... again. This is apparently round 4, which to be fair, is only a rewrite once every 2.5 years on average. Doesn't sounds so bad when you put it like that...

 
Level 24
Joined
Mar 29, 2004
Messages
1,998
It's true, I am physically incapable of entering game jams -- even ones that give you two weeks. However, one of my pals hosted one recently that got me thinking about quest design. Is Exon actually a puzzle game obfuscated by swords and explosions? Is there space in its design for missions that involve a little more thought than just who to blow up next?

 
Level 24
Joined
Mar 29, 2004
Messages
1,998
New year, new systems. For the past five(ish) weeks I've been banging my head off the perennial problem of getting a character to move reliably and intuitively over arbitrary terrain geometry. This is a Very Hard Problem and I don't really understand why Unity doesn't just come with a built-in solution (the CharacterController is only a small part of the solution). Alas, without movement I don't have a game, so it's once more into the breach dear friends...

 
Level 24
Joined
Mar 29, 2004
Messages
1,998
I think character movement might genuinely be the hardest problem in game development. I've been hammering away at this unit collision system for at least two months now, and every two steps forward comes with two steps back. I finished implementing moving platforms and conveyor belts only to walk into another problem which revealed something much more rotten at the core...

 
Level 24
Joined
Mar 29, 2004
Messages
1,998
I don't dare to think how long I've now been working on Exon's new movement system. It might well be coming up for six months (although progress has slowed since I'm now splitting time between it and Shattered By Light). It feels worse because for the last month -- or two? -- I've been stuck behind a problem that did not actually exist... or rather, a problem that existed due to a single stray line of code that was just... wrong. Sigh. Who'd be a game developer? It's not worth it. (It's totally worth it.)


 
Level 24
Joined
Mar 29, 2004
Messages
1,998
With the movement system finally over (?!), it's obviously time to move onto the next major system. The knock-on effect of having the movement system dependent on manual collision detection is that my unit navigation logic can go out the window -- it was doing a load of bonus collision detection that's now redundant. Naturally, passing through that data revealed a bucket of other flaws so it's... ah... back to the drawing board...

 
Level 24
Joined
Mar 29, 2004
Messages
1,998
Programming enemy AI is hard, but it sure helps make the game better when it works. Turns out that new movement system helps to make it work, because bots now have access to much more reliable information about their movements and surroundings. Complex and interesting but adaptive behaviours that are also fairly predictable? God damn, it's finally happening.

 
Level 24
Joined
Mar 29, 2004
Messages
1,998
I have so many regrets. I knew that making a character movement/collision entirely from scratch using only raycasts would be difficult, but I never thought that at the last moment I'd get hit in the face with the physics engine just... being a bit inaccurate and shit. It's definitely not my fault this time, but that's small consolation in the fact of things not doing what they're supposed to in a few small but irritatingly important edge cases.

 
Level 24
Joined
Mar 29, 2004
Messages
1,998
Have I ever mentioned that Exon is actually just a massive dress-up simulator? Although it has up until now allowed you to select your mech's paintwork from a list of preset colour schemes, that's not good enough -- it's finally time to bring back proper, chunk-by-chunk paintwork. So you can make your mech as cool... or as wacky... as you dare.

 
Level 24
Joined
Mar 29, 2004
Messages
1,998
Turns out if you spend the best part of a year rebuilding movement, navigation and enemy behaviour routines, that tops out a fuckload of code. Apparently I've ripped through a full third of Exon's codebase (5k out of 15k lines of (executable) code). Even more hilariously, all of these reworks are entirely behind the scenes -- while you might feel the improved enemy behaviours, you're not really going to notice that you just don't get stuck in corners anymore. Movement is one of those little things we take for granted in video games that is obscenely complex to do "right", so please be thankful that I care enough not to give you the Skyrim treatment of getting wedged into the ground or sailing away into the sky at the slightest provocation!

 
Level 24
Joined
Mar 29, 2004
Messages
1,998
You know when I said I was finally done with the new movement system? I lied.

I am determined to get this done by the end of the year because I am so tired of physics engine bullshit, but knowing my luck, Unity/PhysX will find some more jittery spanners to throw into my works just in time for crimbo.

 
Level 24
Joined
Mar 29, 2004
Messages
1,998
It's been over a year since I last released an update for the demo, and, well, what can I say? I couldn't release the new movement system half-cocked, nor any of the ancillary bot navigation, behaviour, or stealth system upgrades. One thing just kept rolling into another. But better late than never, right? Here's an early crimbo present for ya!

Get it here: https://raodaozao.itch.io/exon-fragment
Obligatory blog post: Blog 953: Fragment v0.08
 
Level 24
Joined
Mar 29, 2004
Messages
1,998
I've been wondering for a while if maybe there was more I could do with the sword and shield theme of Exon. Just like my old WC3 RPGs, Shields give a static percentage reduction merely for being equipped in the hand, but Exon isn't an abstract RTS where passive configuration of your character is just how it all works -- Exon is a close-in action game where every movement is precisely controlled by the mouse and every ability is activated exactly on a button press. So it feels a bit weird that your main way of avoiding damage (well, without just moving out of the way) is a bit boring and passive. Time to do something about that, I think.

 
Level 24
Joined
Mar 29, 2004
Messages
1,998
So I’m powering ahead with that plan to add Nox‘s blocking mechanic to Exon. If you’re carrying a shield, and you stand still and face somebody while they attack you, your shield will take the damage instead, and some projectiles will even be reflected.

This has necessitated a large-scale rework of how I even deal damage at all, and inspired some further additions… Because obviously I can’t just do the minimum amount of work required for anything. Sigh.

 
Top