—    —  Home

   JLJac on June 12, 2012, 09:47:20 AM:

It turns out the crocs are eating as much framerate as they are players. A single croc takes 8-9 milliseconds to draw on the screen, and then the math is simple, with a framrate where one frame can take no more than 25 milliseconds there can be no more than two crocs on the screen at the same time. I did some investigation, and it turns out that the problem is the legs I worked so much on. They're drawn as vector lines, and obviously take quite some time to draw. I'll look into one other solution before I discard them, but it seems there might be no avoiding going into time consuming pixel animations here.





   JLJac on June 12, 2012, 11:30:02 PM:

Update 56
Made the croc's legs work the same way as the player's arms, they're a pixel animation that changes picture depending on distance while the software does the rotation. It looks ok, though not as good as the previous vector solution. But, it released a lot of milliseconds per frame, which can be used for other cool stuff.

As you who have played the alpha know the croc used to just pop out of existance when entering a shortcut. I made a ten frame phase where the body is sucked into the opening before it's taken out of play, hopefully creating a smoother look (and also giving you a slight advantage, since a croc will now be delayed ten frames when pursuing you through a shortcut). The player already had an animation like this, and the fly don't need one as it is already entirely covered by the shortcut graphic once the popping out of the level occurs.





   JLJac on June 13, 2012, 10:10:41 PM:

Update 57
Made a pixel animation for the rotation of the croc's head. It looks nice, I think! It seems that only the head will in the end consist of four sprites, the head, the lower jaw, the teeth of the lower jaw and also one sprite with the teeth of the upper head and the eyes. Phew.

Preferably the lower jaw sprite will be below the player, so that when the croc carries you it'll look like you're really pinched in between the jaws. Because of the separate teeth sprites these can too be placed below the player, hopefully making it look like they're inside the players body (to those who play the game through a magnifier glass).

I'm sorry about those boring graphical updates, but remember that they lead to something everybody loves, exciting graphics!





   JLJac on June 14, 2012, 10:38:14 PM:

Update 58
Gave the croc teeth and eyes. Also started to do the pixel animation for its arms, but there was a bit of lag in photoshop causing me to rage quit before I was done. Once I've restarted the computer it'll go away and I can finish it, but there's an "important update" looming, making me unwilling to go through that process.

Those updates are never important, are they? The fact that you can't postpone it indefinitely is extemely irritating, and that once you've postponed it an unknown number of times it just suddenly shuts down you computer makes me commit horrible acts of violence towards everyday objects in my surroundings. Now that I've already derailed I want to say that I think the main problem with Microsoft products aren't that they're bad, it's that they're irritating. Msn messenger popping up from minimized mode every time you put the computer to sleep, the "important updates", IE moving the cursor from the adress field to the page halfway through a word, "checking for solutions" even though obviously nothing at all is happening, and so on and so on... The stuff works, but by little means it's making you slowly drift towards insanity.





   JLJac on June 17, 2012, 09:45:47 PM:

Here you can see a little bit of it!
Update 59
Worked some on the animation, and made the arm for the pink croc:



The way this works is that the sprite changes animation state depending on the distance between the hand and its socket in the croc's body, and the software rotates the sprite. The location of the sprite is determined by the hand position, not the socket position, making even one pixel movements visible despite the animation having a resolution of five pixels per frame.

The hind legs will have a separate animation, but now I have a template to work from and that should be quickly dealt with.





   JLJac on June 18, 2012, 06:21:15 AM:

Update 60
For some reason I decided to re-open the huge can of worms that is the croc AI. As those of you who have played the alpha might know, there's a weird quirk where if a croc spots you, it doesn't turn towards you but instead hurries off in another direction, making a huge detour before finally arrive to the place you were once at.

This is because I had the following system set up: The paths are calculated from the goal position towards the croc. When the path reaches the croc, a new path is started up, with whatever new place is the croc's target as a source.

This meant that when a croc saw you, it would first of all continue calculating how to get to some random place on the map it was headed for, start off in that direction, then start to calculating how to get to you (quite often while literally outrunning it's own thought process by moving in the opposite direction faster than the pathing could catch up with it), then turn around and try getting to you.

An easy solution for this, which is now implemented, is that upon spotting a player the target position is reset. With this new behaviour a croc that was previously idle or searching, which now spots a player, will stop in its tracks for a second to calculate how to get to you, and then set off.

The problem with this however, was that during a hunt the player will appear and dissapear repetedly from the croc's view, and when the croc resetted its pathing process every time it spotted a player it didn't get very far at all. Finally this was solved, by making it so that this stuff only applies to a croc that is actually changing from idle behaviour to hunting behaviour.

As a part of looking at the AI again I noticed that a croc that has lost track of a player will investigate the area two times instead of one, which isn't very good as a search like that might take upwards 30 seconds, and two of them might mean that a croc is confined to a small area more or less for the rest of the game.

I have an idea of what's causing this, and will look into it tomorrow.

Furthermore, the arms are coming together. I had to make three animations like the one above, because the arm needs to be able to rotate... inwards so to speak, but I think that it right now looks OK, or at least has the potential to look OK.





   JLJac on June 18, 2012, 11:19:23 PM:

Update 61
Hopefully managed to solve the searching twice problem.
The arms and legs ended up needing quite a lot of sprites.



What you see here is the arm, in 0-8 extension modes and three different degrees of rotation towards the viewer, where the topmost is a profile where you see the bend of the elbow, while the third row is the same arm viewed from "above". Rows 4-6 are the same thing, but for the leg.

I have also worked a little bit on the stats for the crocs, starting to differentiate them from each other. The fifth and final(?) species is in now, which is the white croc. This makes them five:

Green - Big, strong, dumb, easy. Lazy, is mostly staying still unless it sees a player.
Pink - Standard. Can climb poles, decently smart, OK hearing.
Blue - Wall climber. Prefers to hang around walls or ceilings rather than floors and passages.
White - Stealthy. Can climb walls but not ceilings. Sits still and changes color to blend into its environment.
Red - Hard. Fast, smart, superb hearing. Never stops, but is constantly moving around the map.

The white lizard will behave a little differently, because its tactic is not pursuing, but ambushing. It sits completely still on a wall, and blends into the background so that it's barely visible. When a player comes by it makes a rush. When moving it's white.

While the other lizards benefit from searching an area where they've lost a player, the white lizard is better of staying still and waiting, because the longer it stays blended the easier you forget where it is. This means that the white lizard will be considerably less persistent in pursuing you, it will instead give up pretty quickly when it loses visual contact and instead go back to stealth mode.

Hopefully this will bring some fun variety to the game, if not it might be thrown out or changed.





   JLJac on June 20, 2012, 10:43:09 PM:

Update 62
Today I finally started to make changes to the different lizards' bodies. It's fun to see how much difference it makes to just make small adjustments such as making them fat/skinny, short tail/long tail and things like that. I also started on making different heads for them. I think the graphics will help giving them fun different personalities. Pics soon.





   JLJac on June 21, 2012, 10:09:45 PM:

Here is a video of what the crocs looks like now, just to give you and idea what I've been working on lately.

http://www.youtube.com/watch?v=8QnWjkKgwdw&feature=youtu.be





   JLJac on June 24, 2012, 02:23:19 AM:

Glad you liked it!

Update 63
Today I worked a bit on the level editor again. Added another effect, old electrical cords. They come in 1px, 2px and 3px thickness. Also note how the new shadow palette blends the cast shadow with the self shadowing on the tiles.



There's a little fog going on as well right now, I'm debating with myself wether or not to keep it. It seems cleaner with flat color surfaces, but it looks a little better with gradients, maybe? It adds a little deptht to the image.






   JLJac on June 25, 2012, 08:19:03 AM:

Update 64
Improved the way creatures are displayed when moving in shortcuts. Now they are also visible against "back walls", meaning that you won't lose track of your character for a few frames the way you used to.





   JLJac on June 25, 2012, 11:23:16 PM:

Update 65
Added another layer of background, to create more depth and sense of place in the levels. The process was surprisingly painless.



This doesn't in any way affect the game itself, which still just loads a two-dimensional image and has no idea about how it was rendered or what it looks like.






   JLJac on June 27, 2012, 03:48:47 AM:

The flashing heads are odd, but I still consider keping them. As the world starts to take shape they will hopefully make more sense style-wise.

Update 66
Graphical baby steps... Some work with the palettes and fog code.



The third layer is almost faded away here, which I'm happy with, but the light on the second layer is too sharp. Also I think the palette is still a bit too saturated, I want it to appear more black-and-whitish than colored, but while maintaining some of the juicyness that a little bit of color gives it. It's a hard balance. The palettes will of course differ between levels, but I'm trying to set up a general set of rules for how they'll work.





   JLJac on June 27, 2012, 11:32:57 PM:

Thank you!

Update 67
More playing around with palettes. I made a palette to be used for underground areas, with the main difference being that instead of close objects being darker and faraway ones being light it's the other way around.



I also added a system for having a little blur effects going on, but it'll be used rather sparesly as I don't want to stray too far from the pixel art style.

I'm hesitating to start making actual levels for the game, as I suddenly find myself doubting whether the game layout I had imagined would be the best one possible. The idea was that there would be a small hub world in which you could move freely, and that you'd visit the different levels from there. Moving around freely is always fun, but the question is how much it actually adds. If I make the game linear I can do a lot more interesting things such as changing light and weather conditions, and in the end show off more of my world. In an open world where you can move back and forth as you please it's very weird if one area always is during the sunset, while the neighbouring place has broad daylight. Instead the whole world would have to have more or less the same conditions, as there's no way I could render all the levels during all the light conditions times all the weather conditions....

So, moving around freely in a more bland world, or play a linear game in a more interesting and diverse one? Hmm...





   JLJac on June 29, 2012, 02:35:57 AM:

The idea has always been that the game will be free of charge. I might open a donation account though.

Update 68
A lot of progress on the level editor today, all invisible. I made the light tracer bigger than the level, so that light can fall in on the level from outside of it.

The tile editor had some work done on it as well, mostly stuff that made it work better with the new three-layer geometry. Now you can also force place a tile in a position where it's actually illegal, by holding F. This messes stuff up, but when creating levels you might sometimes want to place a solid tile halfway out in the air for one or another reason, and this lets you do that.

In order to give you some visuals, here are some chains:



Note how the sky has a little blurred light going on. That's an option you can turn on and off (or which will be automatically triggered by certain palettes). The other option is that lit surfaces glow like this, like in the last screenshot i posted.

Still haven't really decided on the linear/open world thing, but am leaning towards linear.





   JLJac on June 29, 2012, 11:09:00 PM:

Update 69
Managed to implement the correct formula for hanging wires and chains, so that their arcs are actually accurate to what a real rope hanging in constant gravity looks like. The difference is not really visible, but it brings peace of mind.





   JLJac on June 30, 2012, 10:18:07 AM (Last Edit: June 30, 2012, 12:34:16 PM):

Gah... I'm actually stuck. The next step would be to start making levels, and then further development of the level editor and creation of graphical assets would depend on the demand of the levels created. However, the layout of the levels are dependent on what kind of overall game layout I'm going with, which I can't decide on.

Here are the options in more detail:

Hub world layout:
The game is set up around a lair where the bear(s) hide out during bad weather. Around this lair is a small inter-connected hub world (3x3 levels) in which you can move freely. Surrounding this hub world are seven "levels", which contain hives.

The game is consisting of seven "hunts". A hunt is a short persiod of clear weather, during which the bears go out in the world, find their way to a level, and hunt some flies. As a level is once hunted on the swarm stops, and the next hunt you'll have to go somewhere else. This means that you have to go further and further, making for increasing difficulty, maybe even with less and less time at your disposal. Still there is some possibility for variation, as you can take different routes and visit the levels in different orders.

The premiss also states that a bear needs one fly in its belly for each day it's going to hibernate, and the clear weather is more and more sparse as the wet season continues. This means that during early hunts you might only need two or three flies to win, but in the later ones you might need a lot more.

The game is about surviving one wet season, the highscore consists of how many extra flies you've caught, and how little time you've managed to do so in.

Pros: Open world, feels free and makes it feel more like an actual little world, not just a series of levels. Replayability! Once you've played it once it might be fun to try different approaches, different routes and orders and so on, in order to catch extra flies and break the highscore. "What if I take the faraway level first, then the closest one..." Many many possible ways to complete a game, making the game last longer when you for example want to play co-operative.

Cons: Visual blandness, if you can move freely, all the levels should have about the same light and weather conditions. Technical difficulties, the game should probably keep track of crocs on levels you've just left, or maybe even allow crocs to move between levels. Same goes for flies. A bit of difficulty when two players are moving around, which level will it go to if both players jump into different exits? Boring parts where you are too far away from the lair with too little time, and already know you're going to die but still have to wait it out.

Story layout
Basically the game premiss is the same, but it's "faked" rather than incorporated into actual gameplay. First there's one or a few platform levels that are about getting to the hunting ground, then there's the hunting and then maybe there's a getting back. The next hunt is a similar scenario, but with other levels.

There are also "custom levels" such as those you make yourself, which are like the ones in the alpha, short, one-level scenarios you play against your own highscore or against a friend. These you can also make yourself with the level editor.

Pros: Much more possibilities visually. I can show what the world looks like during sunset, day, night, thunder, have some levels that are just there to set the mood. I can create more cineastic events such as ~ I dunno, fleeing in a pipe with drain water chasing you, some part of the terrain falling over, customly scripted stuff like that. Halway through the game the lair might be flooded and the bears need to find another one - a lot of custom scenarios decided by me.

Cons: A linear platformer... have we seen it before, maybe? It's done to death. Replayability plummets, once you've gone through a campaign like that you're done with it. These two are very serious cons.



In conclusion, I can either make a fairly simple and bland little world, but it is actually a little world that works in and of itself, or I can show off a more grand, complicated world with many different things happening in it, but it's fake and pre-destined. This is the common mainstream approach today, I guess.

A game like pac-man or tetris is a very simple world, but everything that is said to be possible to happen in the world can actually happen in the world, even if it's only units moving around. A game like.. say, gears of war has a lot of things that are said to be able to happen, such as building collapsing and the like, that are not actually able to happen inside of the functionality of the game, but are artificially added to make the experience more exciting.

I wanted to go with the old-school approach of a self-contained world, but am now thinking about going more towards the modern movie/game kind of style.

This decision is not easy.





   JLJac on July 24, 2012, 10:39:44 AM:

Hi there!
Contrary to what you're all probably thinking by now neither I nor the project is dead. Things have actually happened, even!

Yesterday the above decision was made final by me implementing the framework for moving between levels, and setting up two different game types, "custom" and "world". This means we have a hub world layout.

Pretty much every game these days do the kind of cop-out I was thinking about, where they promise something dynamic and interesting, only to cut all the corners and provide a linear movie-game. I don't wanna do the same.

Things that have happened, just the few at the top of my head:
1-lizard AI of course.
2-Graphics for the A creature, and additional behaviour
3-Started to implement sound(which I'm not very good at)
4-framrate stuff
5-level editor stuff
6-connecting levels so that you can move between them
7-endless tinkering with the palettes
And quite a lot of other things that had to be done but are not very interesting. There's more stuff, but instead of listing it all it'll be nice surprises for you when you notice it. Think of it as "free progress" you didn't think it was happening, but it was~

I hope I'll be able to get back to regular updates shortly.
Thank you for having patience!





   JLJac on July 24, 2012, 11:40:57 PM:

Update 70

Today I successfully connected a couple of placeholder levels together to a hub world.




You can move freely between the levels, and there's consistensy in which entrance leads where, and if you go back you'll appear out of the same entrance you left through. Hopefully.

Soon, I'll start to actually build the world. I do have a map of what levels connect where, but will improvise the layout of the actual levels.





   JLJac on July 25, 2012, 11:52:12 PM:

Today I once again struggled with making camstudio, divx codec and windows 7 work together. After two hours I had gotten nowhere, and messed up my computer horribly. Now I'm working on restoring it. I guess there won't be videos, simply. :/