content top

Cameras, Pythagoras and faking it

A decision every game developer must face at one point or another is which camera angle to use in their game. Even in the case of 2D games, developers will have to choose between different perspectives (top-down,  side-scrolling, isometric, etc.), but this is particularly true for 3D games. Since Okhlos takes place in a 3D environment our case was not different. We started with the camera at a somewhat arbitrary position and rotation. Then, as time went by, we tried different angles and positions until we found something we liked. It wasn’t as easy as it may sound since we had two competing factors: on one hand we wanted you to be able to accurately see the mob and its immediate surrounding  as easily as possible, on the other hand we wanted to showcase the game’s art, the units, the enemies, buildings, the landscape etc. Gameplay wise the best perspective seemed to be top-down, clear and simple, but the top down perspective meant that you would be looking at roofs most of the time, and let’s not speak of how horribly incompatible it was with the billboard characters we had planned. The solution we found was the camera you can see in Okhlos’ current build: it lets you appreciate the art as well you give you a decent chance to spot those pesky Cyclops before they crush you.


A screenshot with the current camera position and rotation

Best camera ever


Happy ending, then? Not quite. There were a couple of issues. The first one was immediately evident. With the current camera perspective, people and enemies, could get blocked from the line of sight by buildings in front of them. It was a problem the top-down camera would have avoided but we now had to deal with. Luckily we were not the first ones to venture into the dangerous seas of isometric perspectives so we resorted to a solution many others have used in the past when faced with the same conundrum: making the objects that block the view transparent while there is something you need to see behind them.


A gif showing a building fading out when the leader goes behing it



So now everything is settled and we can all move to happy land, no? Wrong again. Even though the view-blocking-buildings crisis was averted there was a new problem in the horizon. And this time, the problem at hand was not so evident. In fact we spent months without even noticing it. Throughout many version we played the game with the feeling that there was something odd about the way the mob moved, but not quite able to pinpoint which was the problem. Finally, during one playtesting session we came to the realization that the mob seemed to be moving more slowly when moving upwards or downwards than when moving to the sides. Once again this was due to the camera angle we had chosen. The mob did move in every direction at the same speed but the camera angle gave the illusion that it was the mob was moving at different speeds. Our solution here was to do something that would seem to be the problem in the first place, make the mob move at different speeds depending on the axis you are traversing.

So now, the mob and its leader now move 40% faster when they are going towards the bottom or the top the screen, than when they are moving to the sides. Why 40%? That’s when our good old and soon-to-be-in-the-mob Pythagoras comes to the rescue. The main camera in Okhlos is tilted 24°, and we know, thanks to Pythagoras, that by calculating the sine of that angle how much the view is distorted by the camera, and therefore how much we need to compensate. Hooray Pythagoras!


A screenshot showing the camera's angle and position in the editor

Here you can not only see the camera’s position, you can see the frustrum too! Delight in the wonders of the frustrum!


If we learned something from all this (and I hope we did), it was that dealing with the camera is an important issue. But we kind of knew that already. What we didn’t know was that sometimes the solution to a problem may be something completely counterintuitive. We ended up with a mob that moves at a one speed in an axis and at a different speed in another, which seemed to be the problem itself. However, it feels much better now, so this largely compensates the fact that you can traverse the levels faster by moving vertically (and by the way, now that know this, don’t exploit it!).

And so we come to the end of this week’s update.  This was not the last time we had to do something apparently counterintuitive to solve a problem, nor it was the only problem we had with the camera, but we will leave those stories for another time. Until next next week!

Read More

Introducing Sparta!

These past weeks, we’ve been working on Sparta, a brand new world for Okhlos.

We decided to work on a new world, despite not having finished Delphi, because we thought that introducing more levels will give us a better idea of how the game as a whole will be .


So, in Sparta you will find:


Lots of enemies. Most of them, cyclops. Also, some of these cyclops will attack constantly the mob’s leader, so you will have to try and dodge them while controlling the mob.


A new kind of enemy will be the Shield Bearer (not a bear), which can only be attacked from the back (and that meant doing back sprites again… which is a pain).



The main boss in Sparta is Ares, the god of war. He will spawn in a sort of Colosseum, and the battle with him will be very melee oriented.



Also, he will spawn with his sons, Phobos & Deimos.

Phobos is the personification of fear (the word phobia comes from him), particularly, the fear in battle. So his powers will affect the mob morale and cohesion.

Deimos, on the other hand, is the personification of terror. It’s something a little more abstract, so that’s why we went with a more mystical approach for him



This was the original concept art. Deimos in the left, Phobos int the right. Below is the pixel art version. As you can see, lots of changes happen when we translate from concept to pixel art.




Also, Phobos and Deimos are (appropriately) the names of Mars’ (which is the Roman name for Ares) two satellites. All of this makes searching for them a little more annoying (luckily, is not even remote as annoying as Electra).


We wanted to re use a lot of assets to be able to test it quickly, but we made some new things in order to give Sparta a distinctive look. We changed the terrain, we made new buildings, and we changed the roads.



We still have lots to do in Sparta, but this will give us enough to test the new world and see how it feels!


That’s all for this week! Let us know what you think!

Read More

More heroes!

These past few weeks, we’ve been working on lots of new stuff. Among them, there are new levels, enemies, and heroes! But since we were already in the tpoic of heroes, in this update, we will be introducing the rest of the heroes we have been working on.


Andromeda is a very interesting character. She was held to a cliff to feed some monster, but Perseus ruined the day. At least for the monster.

In Okhlos, Andromeda will boost the mob’s overall hp.

At first, I drew her with green hair, as a very obvious nod to a certain character also representing Andromeda, but it was way too obvious.

The cool thing about Antigone, is that she hasn’t been much explored  in popular culture. It’s not one of the classic characters you find in every Greek-mythology-based thing. Also, it’s amazing she didn’t came out plain stupid, because of her mother and grandmother were the same person.

In Okhlos, Antigone will give the mob more cohesion.

In this screenshot, you can see how more or less cohesion will affect your mob.

So far, the Dioscury, are the only hero that are technically two. They were guest stars in a lot of myths, like the Calydonian boar hunt, and the Argonauts expeditions.

In Okhlos, they will boost the overall attack of the mob.

My first intention, was to make her clothes red. That was obvious and inaccurate, so I turned into more research. Finding reference images of Electra was very annoying because of  the saturation of other Electras (And trust me, Google images is FULL of pics of them).

Electra has bad reputation because of Freud (technically, Magneto), but it has nothing to do with the original myths. As Antigone, which is the daughter of Oedipus, a hero already in Okhlos, she is the daughter of Agamemnon.

In Okhlos, she will make the mob move and attack faster.

Finally, Helen played a fundamental role in the Trojan war. Also, she is one of the first characters of the Trojan war we introduce! The Trojan war it’s likely to be a real conflict, with some poetic licenses, triggered by her running away with Legolas.

Also, she is the sister of the Disocury, so this week, we introduced a lot of family members in the game.

In Okhlos, she will raise up all the attack stats in the mob, BUT also will reduce your cohesion a lot!


So that’s it for this week! Next week, we will show you our first steps into the new levels!

Read More
content top