Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411507 Posts in 69374 Topics- by 58429 Members - Latest Member: Alternalo

April 26, 2024, 03:48:37 AM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsOKHLOS A very disgruntled group of people [Dev Blog]
Pages: 1 ... 7 8 [9] 10 11 ... 14
Print
Author Topic: OKHLOS A very disgruntled group of people [Dev Blog]  (Read 83059 times)
JobLeonard
Level 10
*****



View Profile
« Reply #160 on: August 11, 2014, 11:24:18 AM »

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.

Oh you :D
Logged
roketronz
Level 1
*



View Profile WWW
« Reply #161 on: August 22, 2014, 09:52:55 AM »

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:


Enemies!
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).



Ares
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).


Sparta
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!
Logged

rek
Level 7
**


View Profile
« Reply #162 on: August 22, 2014, 11:59:56 AM »



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. 

 

Their manic eyes are missing in the pixel versions! Concerned
Logged
SebastianGioseffi
Level 0
**



View Profile WWW
« Reply #163 on: August 25, 2014, 11:39:51 AM »

I have to agree. Roque, we want the manic eyes back!
Logged
SebastianGioseffi
Level 0
**



View Profile WWW
« Reply #164 on: August 27, 2014, 09:09:47 AM »

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.



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 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 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.

 



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!




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 the end of this week's update.  This was not the last time we had to do something apparently counterintuitive to solve, nor it was the only problem we had with the camera, but we will leave those stories for another time. Until next next week!
Logged
SimplyRivet
Level 0
**



View Profile
« Reply #165 on: August 27, 2014, 03:25:58 PM »

I don't have anything terribly constructive to say, I just wanted to give this log some much needed attention.

This is a very funny and interesting concept you've got going, and your dev logs are through and interesting. I am also loving the amount of research that you've been putting into this game.

Keep up the good work!
Logged
tinyDino
Level 1
*


Rawr


View Profile
« Reply #166 on: August 27, 2014, 03:40:58 PM »

ermahgerd!!!! this looks awesome!
Logged
Bada Im
Level 0
**


View Profile WWW
« Reply #167 on: August 27, 2014, 05:35:53 PM »

Wow Shocked it looks amazing Beer!
Logged

INDIE TRANSLATOR
saluk
Level 2
**


View Profile
« Reply #168 on: August 31, 2014, 09:58:46 PM »

What a bizarre solution to the problem. But if you design the levels around the "flaw" it balances out!

Pythagoras ftw again.
Logged

roketronz
Level 1
*



View Profile WWW
« Reply #169 on: September 03, 2014, 08:16:54 AM »

I don't have anything terribly constructive to say, I just wanted to give this log some much needed attention.

This is a very funny and interesting concept you've got going, and your dev logs are through and interesting. I am also loving the amount of research that you've been putting into this game.

Keep up the good work!
ermahgerd!!!! this looks awesome!
Wow Shocked it looks amazing Beer!

Thanks a lot for the comments! They really mean a lot for us!!

What a bizarre solution to the problem. But if you design the levels around the "flaw" it balances out!

Pythagoras ftw again.

Yeah!
Logged

roketronz
Level 1
*



View Profile WWW
« Reply #170 on: September 03, 2014, 09:36:37 AM »

Last week, we talked about our "outside the box" solution to a particular problem with the Y displacement.  It wasn't perfect, but we are almost proud of it (we don't actually know what being proud is, but we read about it).

Before that, we had started talking about Sparta,  the new world we are working on. We showed a few bits of Sparta, and this week we will continue presenting new stuff!

 

Another one of the new enemies introduced in Sparta is the Rock Thrower Cyclops. He will throw rocks at you (I bet you didn't see that coming). He may not be as tough as the armored cyclops or giants, but his rocks can do a lot of damage to the units.



Here he is, grabbing a rock to throw. Ah, the Rock Thrower.

Besides adding more enemies, there were a few things we tweaked in Sparta.

In the previous world, Delphi, you could find a lot of shops in the city, like a meat shop, a fruit shop, and so on. In Sparta, being a much more "war friendly" zone, you will be more likely to find war-related stuff . Which meant that, in addition to a change of materials and textures, there were lots of structural changes in the buildings.

For instance, instead of a meat shop, you will have an Archery Range.



Needs an awful amount of work, but you get the idea.

And the buildings were just a small part in the process. You can push a little further the idea of a heavy armed city with props.  For instance, having some training dummies around. It really suggests that the people there are constantly training.



Breakable dummies everywhere!

Also, to have a heavily armed city, you need lots of weapons.


You can feel like Neo here.

And finally, we used the directional light to change a little the mood and the time of day.



Well, that's pretty much it for this week, and probably for Sparta. Next week we'll be introducing a new world! (maybe)
Logged

SebastianGioseffi
Level 0
**



View Profile WWW
« Reply #171 on: September 11, 2014, 12:46:30 PM »

This week we are going to take the opportunity to show you the dirty secrets behind some of the mob's favorite enemies. We are going to make a little trip inside the minds of the Hosioi, the Shield Bearers and Phobos to tell you about a couple of little twitches we have used to improve their behavior.

It is much easier to make an AI with perfect accuracy than make it have a realistic chance to miss.  This is why I hate when robots and androids in movies miss their shots as if they were space cadets. Specially when shooting laser weapons, they don't even have to compensate for wind speed, direction and things like that! Who makes these purposely faulty robots!? Do they do this to give the humans a fighting chance in case they rebel? Okey, that could be a good argument, because they end up revolting against living beings a lot... But I digress. The point is that is easier, more even so in the case of a simulation where you control all the environmental factors too.

A lean, mean, fireballing machine

Back to Okhlos. Do you remember the Hosioi? Apollo's acolytes that shoot fireballs? Well, the Hosioi's first prototype had perfect accuracy, because they were put together very hastily. The code simply said, the target is at that point, shoot to that point. And since the fireballs were pretty fast there was little chance to avoid them. Our next step then was to make the Hosioi fallible. To do achieve this we did two things: first we added a little randomness to the shots. Not much, but just a chance that when the Hosioi shoots the fireball it comes a bit skew. The second thing we did was making the Hosioi track its target's position with a little delay. This way the Hosioi will have less chances to hit a moving target but will be more accurate against still targets. And so, with two little changes Apollo's acolytes went from relentless machines that never miss a shot to being fallible creatures just like you and me, having to aim their shots and sometimes experiencing the bitter feeling of wasting a perfectly good fireball.

Too fast for you, Mr. Hosioi!

Something quite similar happened with the Shield Bearers. You remember them, don't you? From Sparta, big shields, not bears? Well, they don't shoot anything (they trust their nasty shield bash to punish people) so the attack wasn't the problem here. The problem here was their movement. Shield Bearers hide behind their towering shields, making the only way to beat them to attack them from their backs, and if they see the enemies are moving to flank them they will turn and face their shields towards them. So if they can follow the enemies' movements accurately and respond immediately to them,  it becomes nearly impossible to hit them.

Yeah, you remember him!

We knew this from the start, so the Shield Bearers are one of the few characters in the game that have a "turning" animation. Everything happens so fast in the game, people are running from here to there all the time, that simply flipping or switching sprites is all that is needed most of the times, but in this case we wanted the Shield Bearer to take some time to turn around, hence the animation. But it wasn't enough. It takes time to maneuver the mob so the few moments the animation gave you were not enough. This is when we turned to one of the tricks we had learned with the Hosioi, tracking the enemies position with a little delay. This way you may get enough to get them before they face you again, and the idea of these giants hiding behind their massive shields being a little slow makes perfect sense too.

Shield me up, Scotty!

Last comes the story of Phobos. Not long ago we decided that Phobos would move around by leaping from place to place, kind of in a hulk-esque way. He is a big guy, bulky and mean, so it is pretty cool to see him land next to you and take a swing with his mighty axe. But, as you may have guessed, not everything was perfect at first. Deciding where to jump was the issue here. The easiest thing to do was just get the mob's position, either the center of the mob or the leader's position, and jump there. But that didn't feel good so we had to resort to some of our old tricks.

White gods can't jump

In this case we used randomness again. Adding some randomness to the jumping target position meant that sometimes Phobos would end up just ahead of the mob, seemingly anticipating the mob's movements, or a little behind them, giving them a chance to escape or head back and engage. The result was something much more interesting than having him always jump into the middle of the mob and attack everyone there.

 

Is there are morale to this story? Of course there is, thousands of hours of watching pre-Seinfeld sitcoms taught me there is always a morale at the end. It may be that little changes can make a big difference. Or it can be that one of the keys to making an AI more real is to make it fallible. Or that random numbers are awesome. But there is definitely a morale in there somewhere.
Logged
roketronz
Level 1
*



View Profile WWW
« Reply #172 on: September 17, 2014, 08:00:54 AM »

I'm a big fan of iteration. I love letting some time pass and then revisiting something. The problem with iterating, is that takes too much time. Sometimes you have to do the same thing two or three times.

In this sense,  ideally you want to do it right the first time. Of course, you can't plan on doing it right the first time. You can try, but it's very unlikely that you will have it right at first.

Time is another huge factor. Sometimes, you just want to see your work in game. Seeing things implemented, even when it's a draft, can help a lot to give you an idea of how it will look and feel in the game. Context is important.

This week, I will show you the difference between the first and second versions of a character. I think that a few of these tips are useful not just in pixel art, but in almost every creative field.

The important part: If you are not extremely happy with your result, do it again! 

Now, the example:

The last weeks, we've been showing you the Shield Bearer, an Ares warrior who takes cover behind a giant shield.



This is the original enemy design. If the character is looking forward, the only way to attack him is from behind, and vice versa if he is looking back. He always moves and attacks behind the shield, so you have to sneak from behind. We can start from here. 

Idle Animation:

IDLE - Old Version

IDLE - New Version

As you can see, the base gesture is not horrible, but it doesn't suggest action, and the stance is kind of boring because he is just standing there. The new version is much more dynamic. It has the same number of frames, but you can see that he is waiting for action! Also, you can see some shoulder deformation, almost like a hunchback. This was unintentional, but I thought that it added personality, so I left it. 

Attacking Animation:

ATTACK - Old Version

ATTACK - New Version

The new Attacking Animation preserves the same stance from the new idle animation. This version adds an extra frame, and that gives a little more momentum prior to the attack. Also, I reworked the cape, because the previous one was awful. 

Running Animation:

RUNNING - Old

RUNNING - New

This animation also derives from the idle stance.  Like in the other cases, there wasn't much I could use from the former animation, and I had to redraw a lot. 

Turn Animation:

TURN - Old

TURN - New

The turn animation had the same problem as the idle one. It lacked action. Using the idle animation as a base, we could do something much more dynamic. Also, we added a subtle movement in the foots, that helped. 

Back Animations:

RUN / ATTACK - Old

RUN / ATTACK - New

Back animations are a pain. A real pain. They are awful to do. They don't look good, and that was a perfect excuse to stop doing them for the mob units.

In some enemies, we still have to do it. This was the case of the Shield Bearer. The back animations are as important as the front ones, so we had to add some love to them. Also, with the new animations, it's much easier to read where he is facing at. 

Animating these enemies is a completely different task than animating the mob units. I've learned a thing or two animating these giants: It really helps drawing some guidelines on top of your character, and not to think so much about reusing every part. You might need to redraw an arm, or the torso for a particular pose, but that will give some life to your animations.
 

The little blue cross you see below the character is a small mark I do to know the absolute position the frame must have in the .psd file, since each frame will be automatically exported into .png.

The blue / red thing is to have a better reading of what's happening. You might need that when you are trying to understand a couple of strokes in a 50px canvas. 

So that's pretty much it for this week. It's a bummer to have to redo some things but, in the end, it's usually worth it.  

This dev blog is simultaneously posted here
Logged

roketronz
Level 1
*



View Profile WWW
« Reply #173 on: September 25, 2014, 09:10:51 AM »

Last year, we wrote about how we almost submitted Okhlos to the IGF. We were about to do it, but we decided to back off because we thought that Okhlos wasn't in proper shape for something like the IGF.

This year, we are much more confident. Okhlos is far from complete, but in its current state, it has lots of crazy things happening that we think are cool. Also, the visuals are on more solid ground. And that's without mentioning that the game has changed a lot from those days, when things weren't procedural, and we didn't even have a roguelike foundation.

That's why, this week, we are starting the "ROAD TO IGF" updates. They will all be very brief and straight forward, in order to make the most of our time from now on until the 22nd of October. The final update in this saga will be just two days before the deadline, and that will include a changelog from this version to whatever we have in a month.

Now, for this week:

The Displacement marker

There are certain GUI elements that are crucial in a game. In Okhlos, one of the most important elements is what we call the displacement marker, that little flag that shows you where are you directing your mob.

At first, this was a very difficult concept to explain. People didn't seem to grasp the idea of moving the mob alongside their character, or using the stick in order to attack.


Ye olde displacement marker. So long buddy...

So we solved this (at least for now) by changing the graphics according to the context.



So, if you need to move the mob, your displacement marker will show you where they  will move (approximately). But if you are near an attackable thing, the displacement marker will change. We think this will help tell what's interactive and what's not.



Right now, we drafted some ideas about how it should look, but we aren't quite sure about which direction should we go. They are very showy, that's for sure, but when you have 50+ people around, maybe you need showy. We still have to try something more subtle though.


Here, you can see the displacemen marker in context

Also, we prepared an alternative, which is the arrows rotating, and the swords pointing and scaling. Exactly the opposite of the previous one.


Here you can see the arrows rotating around the marker.


And the swords scaling down

We've just arrived at these options, so any comment or feedback about this is super welcome!

Finally, another thing we had to decide is to make the displacement marker a billboard or not. All the units in Okhlos are billboards, which means they always face the camera. Opposed to that, not being billboards means that they will be just stand there, and that they will not rotate according to the camera's position.

I think, in this case, the best solution is to not use a billboard. This will give the player a better sense of depth, and a better idea of the position of the marker.

It's veeery subtle, but it's there!

Anyway, that's it for this week! We will be working hard in order to have a cool build for the IGF. Wish us luck! 
Logged

SebastianGioseffi
Level 0
**



View Profile WWW
« Reply #174 on: October 01, 2014, 09:25:58 AM »

Let's talk about stats. Every creature in Okhlos, from the Gods to the bureaucrats, has a series of stats that describe how hard the creature hits, how fast it moves, and so on. We didn't want the game to revolve around micromanagement so these stats are mostly hidden from the player. They are there, and we are doing all kinds of jazzy things with them, but for the most part you don't have to worry about stats. However, if you do want to get a sneak peek of what goes on behind the curtains you can do so at the pause menu.


The mighty pause menu, featuring the stats of Eudokos, the warrior.

There, you will be able to see the stats for all the units in the mob.  Most of them are self explanatory: strength determines how much damage that unit will deal, morale determines how prone the unit is to leave the mob when things get too nasty (we'll see more about that later),  defense reduces the damage taken, etc. However, you may wonder about the values. Where do they come from? Is a twelve good or bad? How about that eight?

Well, to start, each type of unit will be better or worse at certain skills. The table below will show you:

CITIZEN             Attack: Med           Def: Med      HP: Med       Morale: Med      Speed: Med
WARRIOR           Attack: High          Def: Med      HP: Med       Morale: Med      Speed: High
DEFENDER          Attack: Med           Def: High     HP: High      Morale: Med      Speed: Low
PHILOSOPHER     Attack: Low           Def: Med      HP: High      Morale: High     Speed: Low
SLAVE                Attack: Med           Def: Med      HP: Med       Morale: Low      Speed: Med
LARGE ANIMAL    Attack: Med          Def: Med      HP: Med       Morale: Med      Speed: High
SMALL ANIMAL    Attack: Null          Def: Low      HP: Low       Morale: Med      Speed: Med
BUREAUCRAT      Attack: Null          Def: Med      HP: High      Morale: High     Speed: Med

Then to translate these low/med/high values into numbers we use this table, selecting random values from these ranges.

LOW         0-8
MED         8-14
HIGH       14-20
HEROIC    20-30

You can see that there is an extra tier, heroic, and you can guess what we use it for. That's right, heroes. Heroes can have stat values that go beyond that of regular men and women (and oxen), that is why they have their own tier in the stats table. Enemies also have stats that go beyond this table (specially gods, you don't even want to know the attack value a god can have). And then there is also the subject of multipliers and bonuses but we'll stick to regular stats for now.

Finally, the last step to generate the stats is to add a little extra deviation to make each unit unique. There is always a little chance that any unit may be particularly good at something they are not supposed to, or even better at what they are supposed to be good. So, this is how the mighty warrior Eudokos, ended up with an impressive 22 in strength (way above average). I hope I could say the same about the rest of his stats, but they are not so impressive. Low defense and hit points, he may not last very long...

And so we come to the end of this little tale of stats. I hope by now you can get a better idea of how the units in Okhlos work, and also that you can appreciate how messed up the image below is. Until next update!


Keep in mind that we do not approve the use of steroids
Logged
SebastianGioseffi
Level 0
**



View Profile WWW
« Reply #175 on: October 09, 2014, 10:38:40 AM »

If you are programmer this will post will most likely be too basic but we last week, while working on some the heroes, we ran into an almost a textbook example of the use of inheritance and we thought of sharing it. Perhaps you are just taking your fist steps at coding, or it is something you just dabble a bit in. In that case this may be useful, and also it is a chance to show you a bit of the game's code and structure.It all started with Orpheus. Quite a while ago we decided to add Orpheus as one of the heroes in the game, and that giving a boost the units nearby (the units that were close enough to hear him sing) would be a suitable ability for him. And so we did. Roque drew him, animated him, we added some code and voilà. Orpheus was in the mob, all was right with the world. However, some time later we thought about adding more musicians to the mob, and giving them the same ability as Orpheus. It seemed like a good idea, half the work was already done and it made sense that musicians would have similar abilities, so we created Elviros. You can see below a bit of the code for them.


A chunk of Orpheus' code


A chunk of Elviros's code ... which you can see was oddly similar to Orpheus' code


Unsurprisingly, since they both do pretty much the same, the only difference in the code were a couple of values (Orpheus is better at what he does, sorry Elviros). Not only this, our plan was to add a few other musicians as well, so we were probably going to have to copy that code a few more times too. Here is when inheritance comes to the rescue. We created a new class called HeroMusician, which contained all the code for the special abilities, and made Elviros and Orpheus inherit from that class.


One script to rule them all (or at least those two)

Now if we have to make any changes the musicians abilities we only have to change the code in the HeroMusician class instead of doing it throughout several classes. And Orpheus and Elviros' code is now much smaller, pretty much nothing but setting their stats and modifiers. The magic of inheritance.


Sparkly and shiny Orpheus' code


Brand new Elviros' code

The real trick while dealing with inheritance, however, is not learning how to use it, but learning how not to overuse it. Your code can soon become flooded with tons of classes that do almost nothing but look neat in a hierarchy tree. It is very tempting to start adding classes because it makes sense object-wise, to scrape a couple of lines of code from some method, or because you may need them in the future, but you should think carefully before doing so. Having a thousands little classes can make your code as unreadable as having classes with thousands of lines of code.This is why our policy has from day one adding classes only when needed, like in the example above. And based on that philosophy that we ended up with our current class hierarchy:


You can see the new class HeroMusician in the lower level, which means that Orpheus and Elviros not only inherit from Hero Musician but also from Hero, Unit and Destroyable. Is this the best way to do it? I can't tell for sure. The hierarchy may change in the future, but we will try to keep on working with the same strategy, without abusing the wondrous inheritance.
Logged
roketronz
Level 1
*



View Profile WWW
« Reply #176 on: October 15, 2014, 08:36:31 AM »

Hey there!

Just one week to the IGF! And we still have a lot to do! 

For starters, besides the IGF we have to give a talk at Tecnopolis on Saturday, so that will take some of our time.

Because we have to be there on Friday too, we must have the build almost ready by Thursday. After that day, we decided that we wouldn't add anything new to the build (so you can imagine how hurried we are).



As I said before, on Saturday 18 we will be giving a talk, so we can't work on Friday or Saturday. The next Wednesday we will have to  submit it to the IGF, so we have Monday and Tuesday to fix any issues that we may find in Okhlos' new version.



All of this is stressing us a lot, but we are glad that it's almost over! 

Anyway, as we have so little time, I think it's a good idea to brag about some new effects we are working on! The game still needs a lot of "

", so adding fx is a good way to give feedback to the player, letting them have a good idea of what's happening . We still need to push a little further the audio in that part, but Gordon is working on it. 

When you have done 3 different gods for Okhlos, you start learning things you will use for the remaining ones:

1.- Be consistent

2.- K.I.S.S. (Keep It Simple, Stupid)

Following these rules, one thing we decided last week, is that every god will fly. I was finishing Artemis walking loop, when I stumble upon these rules. We already had two flying gods (1), and is much easier to do a flying animation than a walking one (2). So I threw away the ongoing animation, made a new one, added a wind blowing fx below the gods, and voilá! They are flying.



There it is! (WIP!) 

Another thing we changed was the death animation. Ares was the first God I drew, so he had a lot of issues, and I learned a lot since I made him. For Apollo and Artemis I made a much more cool / powerful death animation,  so, following these two simple rules, I changed Ares' death animation.



This was the old death animation. 


This is the new one.

As you can see, there is a big difference between the animations. The second one is more "epic".  Also, it's just a little bit easier to animate. And finally, it's consistent with the rest of the gods. 

We learned a lot after working a few gods, and that gave us a better understanding of what we are doing.  The best advice we can give in this matter, is that if you have to make 12 Olympian gods in your game, make 3 or 4 together and that will give you a better idea of what you are up to. 

Next week, we will be writing the final post of ROAD TO IGF series! 
Logged

roketronz
Level 1
*



View Profile WWW
« Reply #177 on: October 22, 2014, 11:50:43 AM »

And so we come to the end of our five-part series, Road to IGF 2015. Just a few minutes ago we submitted a build to the IGF. The last few weeks were a bit hectic but they have also proven to be fruitful. There mere fact of setting the submission date as a deadline to have a new juicy version was a good idea, and it helped us make a lot progress. Plus, we are very excited to have a chance to show the game to the IGF judges. But, enough of that, to the changelog!


It has been a long time since last posted a changelog. We've actually had three small versions since the last post (0.3.3, 0.3.4 and 0.3.5), which were too small to deserve their own post, so we will be including them here along with the latest one: version 0.4.0. Here are the changes (in pseudo chronological order):

----------------VERSION 033
  • New Heroes: Theseus, Elviros, Jason and Achilles
  • Units in the mob don't have back animations any more
  • Zoom effect when the last philosopher dies
  • Several graphical fx added
----------------VERSION 034
  • New heroes: Drakularos, Pirithous and Pandora
  • Camera adjustments
  • Tutorial level implemented
----------------VERSION 035
  • New heroes: Pericles, Paris, Atalanta, Antigone, Andromeda, Helen, Castor & Pollux and Electra
  • A new way to generate the levels was implemented, which adds much more variety (and will save us a lot of work)
  • New defeat condition: You lose when the mob meter reaches zero and you have no more people in the mob
----------------VERSION 040
  • New worlds: Sparta and Ephesos
  • New enemies: Shield Bearer and Centaurs
  • Alpha transition for buildings
  • New hazards: Fire, Spikes, Giant Bear Trap and Cart with explosives
  • New bosses: Ares, Phobos, Deimos and Artemis
  • The finish moves system is now less lenient and has better feedback
  • HUD elements now fade out instead of disappear bluntly
  • Adjustments to tutorial level: we playtested it and made several changes based on that
  • Healers now regenerate other units health slowly over time and healing items (pork leg) heal a lot health at once
  • Heroes in the market are no longer random, they now follow a set of rules
  • A new unit's stat system implemented (as seen in this post)
  • New life bars for the bosses
  • Heroes that you can/can't buy are now highlighted in the heroes market
  • Random skill generator added
  • Difficulty adjusted in Delphi and Sparta adjusted (so as to have a difficulty progression throughout the three world)
  • New Sounds straight from Gordon, including but not limited to,  footsteps, attack/victory/death unit shouts, and sfx for all the enemies in Delphi (including Apollo)
  • More chunks (our level generator's main component) to add more variety in the levels
  • FMOD sound engine implemented
  • Hero markets now show up only between levels: Markets used to spawn randomly somewhere inside the levels, now there will always be a market at the end of each level
  • Minor performance optimizations (you can now get a larger mob without your cpu dying in the process!)
  • Brand new displacement marker sprites, as seen in part I of this series
  • New Heroes: Cadmus, Daedalus, Hippolyta, Medea, Meleager, Narcissus, Patroclus, Penelope, Gaspode and Midas
  • Poppy, catchy and flashy introductory animation added (with corresponding sound and music)
  • New fx for the bureaucrats, so that the unit they affect is easily recognized
  • New artwork for the gates that lead to boss levels
  • More fx added to all the gods (now a 76% more imposing!)
... and lots of minor changes, bug fixing, bug adding and polishing. As you can see, we have been pretty busy, but we still have a long way to go so we will keep on working. And hopefully, it won't be so long until we can show you a new changelog!And because you are worth it, spoil yourself with a few screens of the new version!








Logged

Rusk
Level 1
*


View Profile
« Reply #178 on: October 23, 2014, 09:33:00 AM »

Good luck at IGF. This is one of the best devlogs around, love all the details! Smiley
Logged
roketronz
Level 1
*



View Profile WWW
« Reply #179 on: October 23, 2014, 03:07:06 PM »

Good luck at IGF. This is one of the best devlogs around, love all the details! Smiley

We really appreciate the comment! Thanks!
Logged

Pages: 1 ... 7 8 [9] 10 11 ... 14
Print
Jump to:  

Theme orange-lt created by panic