About BlueShaman
Entries
Ludum Dare 22 | Ludum Dare 21 |
BlueShaman's Trophies
Archive for the ‘LD #22’ Category
After Uploading
I’m pretty sure my game is fun, which is what I’m happy about, because last time my game wasn’t nearly fun enough.
Fun is good. It’s the entire purpose of making a game. No greater beauty or artistic or realistic value qualifies something as a good game. Games are art, but I don’t think art is a game. This time, I’m pretty sure my game is a bit of both (although highly lacking in art, it does make up for it in back death/snake related jokes).
I’m glad I finished two hours early. Sort of. Oh well, it doesn’t make much of a difference.
Linky: http://www.ludumdare.com/compo/ludum-dare-22/?uid=4891
I guess I’ll have more to talk about
Throwing it all together
I added more witty jokes for the end of the game (heh heh) and did some tweaking.
I am putting ‘music’ into it right now.
Then I need to upload… Processing.org > Applications > Web as far speed goes, so that’s the order I’ll suggest people to try…
Finishing Up
I still need to add music…
I made Big snakes. They can eat through walls (stone and wooden).
I made it compensate for lag (somewhat).
But I added treasure, which makes the game quite more purposeful.
The snakes tend to guard the treasure. It’s still dangerous at day, which is new.
“Finished”.
But not enough… I suppose it’s fun. But there’s no particular reason to keep playing because the middle game is entirely consistent for eternity.
So now what? I need suggestions!!!!! D:
Very slow demo at themage.x10.mx/LD22
Level Gen
I have a basic level gen working (I need to tweak it.).
It basically layers boxes to clear / add outlines, and ends up working pretty well with the snakes and all.
Now I need to make day and night do something, namely, affect the snakes’ behavior. I also need to make fruit-bearing palm trees to provide the sustenance of the game, and also possible for building walls / buildings and stoof.
Basically wrapping up for tonight
Well… Revising from my original more abstract idea, I want to make this a more peaceful, ambient game.
So I took the rough looking walls I had coded and made them look stony; then I added grass, and, tada, you’re on an island.
This game is going to play pretty straight forward. Basically, you’re surviving on an island where largely the elements as opposed to enemies are the danger. Most of the game will consist of searching for food.
Preliminary screenshot attached. I should post more updates throughout the compo, so you’ll see it evolving. That is, if I finish.
Which this looks fun enough that I will.
I plan on having the world be constantly regenerating, so the island won’t be very similar after a few days.
Putting ideas down
What I have so far as my idea is a basic topdown shooter.
I’m thinking of procedurally generated levels, because I can make it considerably more complex that way and focus on the feel and art of the game. Also because I was expecting randomly generated to win and I’m ignoring the fact it didn’t. 20 votes is very close.
So in my first half hour of coding I’ve drawn a scalable gear… I’m not sure if this is relevant. We’ll see.
I should be doing this LD…
I don’t think any of the themes should catch me totally off guard…
I’m sort of happy with my game from last LD, but not nearly enough. I hope to do a lot better in executing a FUN game. To do that I’m going to abolish plans of storyline unless it’s really excellent and I can turn it into mechanics as well, and add it in after I have a fun game.
Hallo.
Last compo I wrote a platformer.
This took an unusually long amount of time.
This worries me for the next one coming up, so I’ve decided I might commit myself to simply using old code (as allowed by ‘base code’, although I’m going to try to confirm this specifically with as many LD’ers as I can before the compo).
Code:
player_x and player_y are float values, of the center of the player (which is a 16×16 box).
player_vspeed and player_hspeed correspond to the vertical and horizontal speed of the player (in pixels/frame).
current_map is a two dimensional boolean array, where true corresponds to a block and false not.
(Written with Processing.org in mind; any math functions such as min / max can be referenced through the Math java library, or really any programming language’s math library).
Up/down/left/right are booleans corresponding to the pressed-state of the cardinal keys, used for movement.
int LX = int((player_x-5)/16);
int LY = int((player_y+12)/16);
int RX = int((player_x+5)/16);
int RY = int((player_y+12)/16);
int MY = int((player_y+5)/16);
int TY = int((player_y-8)/16);
if ( (current_map[RX][RY] || current_map[LX][LY]) && player_vspeed > 0 )
{
player_vspeed = 0;
player_y = RY*16-12;
}
if (current_map[RX][RY] || current_map[LX][LY] )
{
//On ground.
if (up)
{
up = false;
player_vspeed = -5; //Jump speed.
}
if (!left && !right)
{
player_hspeed = player_hspeed * 0.8; //Horizontal velocity damping.
}
if (left)
{
player_hspeed = max(-3,player_hspeed - 0.3); //Accelerate to the left, with a maximum speed.
}
if (right)
{
player_hspeed = min(3,player_hspeed + 0.3); //Accelerate to the right, with a maximum speed.
}
}
else
{
player_vspeed = player_vspeed + 0.3; //Gravity. Accelerate down.
//In air.
if (left)
{
player_hspeed = max(-3,player_hspeed - 0.1); //For, in the air, horizontal acceleration from arrow keys.
}
if (right)
{
player_hspeed = min(3,player_hspeed + 0.1);
}
}
if (current_map[RX][TY] || current_map[LX][TY] )
{
player_vspeed = 0;
player_y = player_y + 2; //Hit the floor.
}
if (current_map[int((player_x+8.1)/16)][MY] && player_hspeed >= 0)
{
player_x = int((player_x+8.1)/16)*16-8.2;
player_hspeed = 0; //Hit a wall.
}
if (current_map[int((player_x-8.1)/16)][MY] && player_hspeed <= 0)
{
player_x = int((player_x-8.1)/16)*16 + 24.2;
player_hspeed = 0; //Hit a wall.
}
player_y = player_y + player_vspeed; //Accelerate the player.
player_x = player_x + player_hspeed;
player_vspeed = min(player_vspeed,5);





