Pages

Wednesday, April 27, 2016

Building the world of Hellenica

Hey everybody, it's been a while!

Lately I've been living inside our homebrew level editor, putting together the huge number of combat environments that make up Hellenica's world. Obviously it would be rather selfish to keep all of the fun to myself, so here we are. Let's go on a journey of creation!

First stop: the end! What? Here's what a finished level looks like in the editor in full, indecipherable, debug glory:


Well, that's not helpful. What say we break this down a bit?

Here's a shot of where things usually start: the level geometry.


Ok, I lied. I typically start in a notebook, but this comes immediately after!

If you've ever built a tower out of legos, you have the requisite skills to build a Hellenica level. That little blue block near the bottom is the cursor, and I move it wherever I need to place a new piece. Most of the time that piece is a rectangular block, but sometimes I bring out more specialized pieces (see the roofs and columns).

Each piece has a texture assigned to each of its faces. When I drop a new piece in, its sides are all set to the same texture (mostly true). In cases where that's no good, I can also paint individual faces using the mouse. Here, I wrote you a message:


Instead of picking a color from a palette like an artist would usually do, I pick a whole texture. Call me greedy. Here's a sample of my palette:


One neat addition we're making to the genre is moving platforms; think elevators, conveyor belts, and magical... platforms. After the player's actions resolve, all the platforms will move a step (which means different things for different types of platforms).

Coupled with Hellenica's repositioning abilities, this opens up opportunities for some exciting new decisions. Do you send your ranged attacker up a lift for a better vantage point at the risk of separating her from the party? Should you push a tough enemy onto a moving conveyor belt to postpone dealing with her instead of focusing your damage on her?

Athens has gone through a serious transformation since the steam revolution, and most levels in the city will feature steam-powered elevators and conveyor belts throughout. This level has a couple elevators and two conveyor belts, one of which wraps around the entire left side.


The squares drawn in the editor are actually just the 'slots' for the platforms. Each platform individually represents a single space in the level, and they move from slot to slot. Squares with a red highlight will start with a platform.

The white arrows indicate the orientation a platform will assume when it enters a slot. The texture we use for the tops of platforms indicates directionality so that a player can quickly grasp how the platforms will be moving in the future. This is a huge help, especially in some of the later levels. ;)

Once the level layout is fairly locked down, I start dropping in the actors that will populate the scene.


Different actor 'groups' are represented by different colors. Typically, these are groups like 'party', 'barrels', 'bad guys'. Sometimes extra groups are defined for special cinematic reveals or triggering logic. More on that later!

Oftentimes, there will be special level logic associated with certain positions. In Hellenica, I'm calling these gadgets. There are two in this level:


These guys spawn barrels and amphoras to keep the moving conveyor belts populated. In other levels, gadgets are used to place hot steam pipes that cause damage, magical traps that probably also cause damage, or friendly abilities that improve your combat effectiveness.

We're most of the way there now, but first we have to make sure the player doesn't cause us any trouble.

By default, the top of every piece is a visitable space for an actor. Unfortunately, trees don't like it when actors stand inside them, something about personal space. So, to avoid complaints I mark certain spaces as untraversable:


In this case, I don't want people walking underneath the elevators or disturbing the trees. Pesky Nephele also likes to vault onto the outer walls, which is probably not Icarus-approved, so that's a no-no.

Ok, it's on to trigger volumes!


On some levels, I don't want all of the enemies to charge at the player's party right away. Everything in moderation, right?

By marking out certain areas, I can link the activation of certain actor groups to the movement of the player's actors. In this way, the player can (hopefully) indicate that she is ready for a fight by moving close to the enemies. (Hopefully.)

Not so bad, was it? Here's a shot of the final product:


(This is an early level, so I don't feel too bad spoiling it for the faithful. Forgive me!)

Truthfully, my process is nowhere near as linear as I've laid it out here. As with any creative endeavor, large portions of time are usually spent wandering the harrowing depths of uncertainty. Lots of experimenting, lots of failing, but hopefully in the end I come up with something great. Having good tools certainly helps.

Hope you enjoyed this write-up! Let me know if there's anything else you'd like more info on.

Monday, January 25, 2016

Monday Update #7 - Pixel art and camping

Hey everyone, I think we're probably overdue for a sign of life. We're still pushing towards launch, and I've got some fun new art to show for it.

We're closing in on being art complete in the combat department. Here's an example of some new spell effects Valery put together for an unannounced enemy:


We're also starting to pixelize some of the characters that are only involved in story moments. You can see a few here, as well as some familiar faces.



The latest thing I've been working on is designing the title screen and intro process. The plan is to give the player a quiet moment with her party as they camp for an evening during their quest. The scene will also be a reflection of your current location and make-up of your party as you browse your save files.

Each party member is going to have a custom animation as they rest around the campfire. Here's the first pass at Brasidas preparing his latest victim:


'Til next time!

Monday, November 16, 2015

Monday Update #6 - Gameplay iteration and a new character reveal

Howdy folks. Aside from some technical difficulties this week, I've been busy designing and iterating gameplay lately, tweaking hero abilities, level layouts, and enemy stats. Once these are all feeling good, I can be confident about moving forward with final combat art assets, and then we can ship this thing!

Now that we're getting closer to the finish line, we finally moved forward with a couple of the remaining character portraits we required. I don't feel too bad spoiling this one, as he shows up very early on in the game.

This is Sisyphus, one of the early big baddies you'll encounter throughout the world of Hellenica.


For the unacquainted, Sisyphus was a dastardly king sentenced to eternal torment by the gods for his deceitful, sometimes disgusting deeds. As punishment, Sisyphus was required to push a boulder up an impossible slope, endlessly stuck in a loop as the boulder always rolled back down before reaching the summit.

In Hellenica, Sisyphus has found a way to finally crest his impossible obstacle thanks to some supernatural assistance. However, his curse is not entirely broken, as he is still eternally burdened with the remains of the boulder.

In typical villain fashion, he has converted the source of his torment into a weapon, which he will happily use to defeat your party if they get in his way. Coupled with some new supernatural powers related to his curiously transformed legs, he is a force to be reckoned with.

The original sketch YDY put together was pretty spot on. The hair and face communicated the frenzied craze that we expected of someone previously mired in eternal, divine torment. His brute strength developed over years of continuous labor was obvious. His supernatural aspects are tricky to talk about in detail here without spoiling the story, but we were shooting for a craggy, ancient forest vibe. I think it works pretty well.

After some tweaks to the chains, we moved on to coloring. The first pass was good, but we felt there wasn't enough contrast between the leather bands and the boulder. Switching over to the green of the cloth also reduced some complexity which we thought helped to tie things together.


Let us know what you think of Sisyphus in the comments!

A Development Tale

This won't be my usual post, but as this is a development blog, it felt relevant to touch on this.

Finding myself in a particularly agreeable mood one evening this week, I surrendered myself to the update Windows had been proffering for weeks. Pleased with my munificence, I skipped off to bed eager to see what treats would await me, nestled under my keyboard.

Imagine my surprise when my poor laptop's screen flickered furiously between full black and the Windows load screen upon first boot, never to reach the login prompt. Surely, safe mode would reveal the culprit? Nope! Stuck in the same, interminable loop.

After some technical voodoo, I was able to wrangle important files onto a separate drive and reinstall Windows. Balance is restored and peace reigns across the land once again.

The importance of this story isn't that Windows' desperately urgent security patches must never be trusted (though my recent moratorium on patches now feels powerfully justified). The takeaway should instead be that if you are working on anything important, you should ALWAYS be backing up your changes to an external repository!

In my experience, similarly unexpected events occur at least once per project, but they're usually harmless with a little daily diligence. This time, file extraction was still possible for me, but had that not been the case, I would have only lost a couple days of work (and my carefully curated gallery of hilarious ungulate gifs).

There are a number of free solutions available to you.

If you're working on any creative work and the incremental changes are important to track, I highly recommend using bitbucket. They provide free, private repositories and support git and mercurial (my personal choice). There are numerous tutorials available for using these technologies.

If you need to store documents or final assets, I've found Google Drive to be a convenient tool. Sharing controls are robust, and if you use gmail, the integration trivializes a number of tasks.

So take control of your destiny friends. Back-up your data regularly!

Tuesday, September 29, 2015

Monday Update #5 - Feedback and visual polish

It's been about a month since my last update here, and you're probably wondering what we've been up to!

Our focus has been on bringing the player experience closer to final polish, which means we've now got a good chunk of new visual stuff that I can actually show off!

Here's a quick breakdown of things we've updated/added:
- Final combat UI!
- Combat objectives and progression system
- Icons for all playable character skills
- Effects system to drive visual and aural feedback effects
- Lots of WIP visual/aural effects
- Final skills for all ally and enemy characters
- Lots of juice added to the character animations

We've also finished creating all of the city location music and the narrative outlines for all the possible endings! Hopefully we'll be wrapping up the final script in the coming weeks.

Here's a quick peek at some of the party skill icons before they get stamped into brass buttons for our UI:

Can you tell which party members correspond to which icons? We're curious to see how closely you can guess what each skill does from the icon alone!

Here's a shot of the objectives screen:



The current design calls for each combat level to have three objectives. The first is the main objective, to be announced with great gusto: "Defeat all of the enemies", "Escape the bad place", etc. Completing this objective will allow you to progress further in the story. You'll also gain some favor from the gods, which can be used to upgrade your party's skills and impress your friends.

The second objective is a bonus objective that's meant to help teach the player a tactic they may not have considered. Completing this objective should hopefully make the level easier for those that are struggling, while also providing some bonus favor to spend towards skill upgrades. Sometimes this objective may call for a specific skill that the player hasn't unlocked yet, hinting that they should replay it after they've unlocked that skill.

The third objective is the elusive challenge objective, and it is unlocked once the player has completed the main objective. Currently, there's no explicit reward for completing the challenge objective, though I will be thrilled if you complete all of the challenges. These challenges are meant to satisfy those players that are looking for some added difficulty, the achievement hunters and expert tacticians out there.

Each objective is loosely associated with a Greek god or goddess. Since you're on a quest from Artemis, hers is the main objective (the moon). Apollo provides the second, more teaching-oriented objective (the sun). The final challenge objective (the shield and spear) is a challenge from Ares, the god of war himself.

I'll be doing some streaming later in the week to show off some of the other improvements we've made to the visual/aural feedback. Once I get a recording made I'll be plopping it on here for you guys to watch at your leisure. Stay tuned!

Tuesday, August 25, 2015

Hellenica sound update

Hey everyone!

This week I'm down in LA finalizing some story details with Victor and his new puppies! It's good to be back in the same space working on Hellenica again.

Between the game updates and dog distractions, I put together this short video that hops around a few of the cities the party will visit along their journeys.


It showcases some of Bob's awesome work bringing these places to life with music and ambient sounds. What do you all think?

Tuesday, August 11, 2015

Monday Update #4 - Combat UI and Usability

Hello!

This update I've focused mostly on working with Andrea to get the new combat planning UI in, along with some other usability improvements.

Here's a WIP shot of the new UI:


We're trying to reinforce the mechanics throughout each stage of combat.  To that end, during planning the damage type/armor type relationship is called out immediately, in addition to any other bonuses or penalties that affect your attack. In this case, Brasidas deals piercing damage, but that doesn't do any bonus damage against light armor. He does gain a damage bonus for attacking the rogue from the side (flanking), but takes a damage penalty for attacking her from below.

Andrea's planned out mechanical sequences for how these panels will slide in and out. Once the various bits are in place and animating, I'll get some more gifs up here for your ogling.

One of the other usability improvements worth mentioning is the actor outlining:


Not only is it handy for finding actors that are blocked by terrain, it also increases player confidence when it comes to clicking on the actors in the world.

Meanwhile, Bob's whipped up a bunch of new music and ambience tracks for some more of the story locations. Pretty soon they'll all be aurally enhanced! And Victor's still diligently fleshing out the end game narrative and writing more dialogue.

I'm going to be spacing these updates out a bit more than every week, as you may have noticed, just to keep the content interesting. Sometimes we're all in the middle of bigger features, and there's not quite enough publishable content for a decent update. Hopefully we can find a good balance between depth and regularity over time.

Thanks for stopping by!