bobbobowitz

LD19

first time

my first time.

im not sure ill do the compo, maybe the jam. but i will use

emacs
kate
the GIMP
g++
allegro
sfxr
maybe garageband…?
i dont hav a windows computer tho. is that ok not 2 submit an exe?
im rly nervous and a bit confused.

if i do make a game.

i only have a computer running kubuntu tho… is it ok 2 not have a windows executable?

Comments

Jerm
14. Dec 2010 · 05:44 UTC
Yes that’s fine. Although most people here seem to use Windows, but there’s probably enough people who run Linux (or both) that you should get some useful feedback. Also, you’re allowed to port your game after the deadline. Or just hope that someone ports it for you :)

gotta post mah basecode…

#include <allegro.h>
#include <iostream>
#include <string>
using namespace std;

const int PLAYER_H = 10;
const int PLAYER_W = 10;
const int NUM_PLATS = 200;
const float GRAVITY = 0.2;
const int STRENGTH = 6;

class Rect {
public:
int x, y, width, height;
BITMAP* image;
Rect(int _x, int _y, int _width, int _height, BITMAP* _image) {
x = _x;
y = _y;
width = _width;
height = _height;
if(_image != NULL)
image = _image;
else {
cout << “Image was not loaded properly.” << endl;
exit(1);
}
}

Rect(void) {

}

void draw() {
//blit(image, screen, 0, 0, x-1, y-1, width+2, height+2);
rect(screen, x-1, y-1, x+width+1, y+height+1, makecol(255, 255, 255));
}

protected:
bool collision(Rect rect) {
if(x > rect.x+rect.width || x+width < rect.x)
return FALSE;
if(y > rect.y+rect.height || y+height < rect.y)
return FALSE;
return TRUE;
}
};

class Player : public Rect {
public:
float dy; //delta x/y
int dx;
bool up, down, left, right;
bool jumping, can_jump;

Player(int _x, int _y, int _width, int _height, BITMAP* _image) {
x = _x;
y = _y;
width = _width;
height = _height;
image = _image;
}

Player(void) {

}

void draw() {
blit(image, screen, 0, 0, x, y, width, height);
}

void move(Rect plats[]) {
if(key[KEY_UP] && can_jump) {
dy = -STRENGTH;
can_jump = FALSE;
jumping = TRUE;
}
if(key[KEY_RIGHT]) dx = 2*right;
else if(key[KEY_LEFT]) dx = -2*left;
else if(key[KEY_HOME]) {
width–;
height–;
}
else if(key[KEY_END]) {
width++;
height++;
}
else dx = 0;
down = TRUE;
up = TRUE;
right = TRUE;
left = TRUE;
can_jump = FALSE;

y += dy;
for(int i = 0; i < NUM_PLATS; i++) {
if(collision(plats[i])) {
if(dy > 0) {
y = (plats[i].y – height) – 1;
down = FALSE;
can_jump = TRUE;
}
if(dy < 0) {
y = (plats[i].y + plats[i].height) + 1;
up = FALSE;
}
dy = 0;
}
}

x += dx;
for(int i = 0; i < NUM_PLATS; i++) {
if(collision(plats[i])) {
if(dx > 0) {
x = (plats[i].x – width) -1;
right = FALSE;
}
if(dx < 0) {
x = (plats[i].x + plats[i].width) + 1;
left = FALSE;
}
dx = 0;
}
}
if(y > SCREEN_H) {
y = -height;
}
dy += GRAVITY;
}
};

int main() {
allegro_init();
install_keyboard();
install_timer();
set_gfx_mode(GFX_AUTODETECT_WINDOWED, 640, 480, 0, 0);
set_window_title(“Platform”);

srand(time(NULL));

BITMAP* loading;
loading = load_bitmap(“Loading.pcx”, NULL);

bool regenerate = FALSE;
do {
blit(loading, screen, 0, 0, 0, 0, loading->w, loading->h);

Player player((SCREEN_W/2)-PLAYER_W/2, (SCREEN_H/2)-PLAYER_H/2, PLAYER_W, PLAYER_H, load_bitmap(“Player.pcx”, NULL));
Rect plats[NUM_PLATS];
for(int i = 0; i < NUM_PLATS; i++) {
plats[i].x = (((rand() % (SCREEN_W-PLAYER_W)*2)/(PLAYER_W*2))*(PLAYER_W))+1;
plats[i].y = (((rand() % (SCREEN_H-PLAYER_H)+PLAYER_H)*2/(PLAYER_H*2))*(PLAYER_H))+1;
int num = rand() % 4;
if(num == 1) {
plats[i].width = (PLAYER_W*2)-2;
plats[i].height = PLAYER_H-2;
}
if(num == 2) {
plats[i].width = (PLAYER_W*3)-2;
plats[i].height = PLAYER_H-2;
}
if(num == 3) {
plats[i].width = (PLAYER_W*4)-2;
plats[i].height = PLAYER_H-2;
}
else {
plats[i].width = PLAYER_W-2;
plats[i].height = (PLAYER_H*3)-2;
}
plats[i].image = load_bitmap(“Platform.pcx”, NULL);

//string text;
//textout_ex(screen, font, text, 0, 0, makecol(0, 255, 0), int bg);
}
clear_bitmap(screen);

regenerate = FALSE;
while(!key[KEY_ESC]) {
clear_keybuf();
player.move(plats);

clear_bitmap(screen);
player.draw();
for(int i = 0; i < NUM_PLATS; i++) {
plats[i].draw();
}
if(key[KEY_R]) {
regenerate = TRUE;
break;
}
rest(10);
}
} while(regenerate);

return 0;
}

END_OF_MAIN()

Comments

Flyboy
18. Dec 2010 · 00:42 UTC
Pastebin that.

Game idea

I think I’ll do a puzzle game. Basically, you have to discover the way to get to the next level. Some levels have doors, some don’t, some have doors that send you to the first level, etc. I’m using allegro and c++.

Right now I’m doing level design… my least favorite part of game design. I wrote a simple level editor (click to add, right click to delete, when u quit, gives u a level array) but some levels dont really have a design, they’re more thinking types of levels.

I’ve never attempted this big of a project in c++, and I just learned allegro this week… and I’m still in middle school.

Happy gamemaking and holidays.

I’m practically done. Just need to do a bit more polishing with some really good polish…

I drew a four directional sprite for the player, 1 tile (not a tileset) a title screen, a background… and I finished all my (painful) level design!!!!

I HATE level design. Very boring.

I’m doing a puzzle game where you “discover” the way to the next level. I only have 20 levels. If needs be, I can add some more tommorow.

A screenshot of the game. This level isn't so puzzlish, but its just a kind of intro level.

LD22

I’m in!

I did the compo once before (19), but this time I think I’ll stick with the jam. Or the peanut butter.

Hopefully can get together with a friend to make this happen! Looking forward to it!

BTW, I’m using:

-Gimp

-C++

-sfxr (cfxr actually)

…and I think that’s it!

Cannot wait!

This is really exciting and I can’t wait for the Jam to start. Last time I managed to finish with a not-so-good game, but this time I’m gonna spend more time and effort on my LD. I’ll also make progress posts and the like.

Using:

-Allegro/C++

-Kate (Kubuntu text editing tool)

-The GIMP

-sfxr

-Audacity perhaps

-Friend will use Famitracker

 

I’m not going to actually participate in Warmup Weekend (if I still can), but I will try to write some code with C++/Allegro, make sure I got everything working. Time to get out my clunky, really old Gateway laptop. Gotta be ready for this weekend!

 

LD is really exciting, can’t wait to start!

Allegro

Just coded a simple game skeleton in allegro. It opens a window, has all the timing routine code set up, and allows you to move around a small square using the arrow keys, and quit by pressing escape. Now I feel more familiar with allegro. Maybe this week I’ll make it into a platformer engine and add sprites. I’m definitely more prepared than last time.

I’m curious: Which libraries/coding platforms are the most popular? I’ve been seeing a lot of Java, Flash, Python, C++… but it would be cool to somehow assemble a graph of the most popular choices.

Comments

GreaseMonkey
13. Dec 2011 · 00:57 UTC
I think the most popular would have to be the greatest abomination of an idea ever: Flixel. Possibly Flashpunk. Both of those are quite common.
Darkhogg
13. Dec 2011 · 01:11 UTC
For Java there are some libraries. I’m going with Slick2D this time, which is built on top of LWJGL. There’s JGame, which I tried once but wasn’t enough for me, and jMonkeyEngine, again over LWJGL. A lot of people (including myself on past LDs) just use the Java SDK, with the Java2D API, and use it as is. It’s not slow at all and allows a lot of flexibility.
ericdpitts
13. Dec 2011 · 01:30 UTC
I work as a Java programmer for my day job, so I wanted to get away from that for this LD and try something new, so I’m going with Game Maker. I think for the next one, I’m going to stick with Java and try out Slick2D, as that does seem to be a popular choice. Or maybe I’ll finally get around to learning Unity? I don’t know, I kind of prefer making 2D games and from my understanding Unity is not the best for 2D games.
13. Dec 2011 · 14:34 UTC
I used to write in allegro and C++. It is a very good library for this sort of thing. I have done the past few LD’s in Unity because it supports alpha layering and deploys to the web. It is not as easy to use as allegro for simple sprite functions, but it has many nifty built in tools.

Submissions

After I’m done with the jam, I hope to submit a good executable. Last time I just submitted my source code and Linux executable, because I was too lazy to finish and submit my windows version (even though it worked). This time, I’ll be ready, and you can look for a windows executable to play. I don’t even have a copy of windows – just my iMac and a clunky laptop running Linux. But I have wine! And I can run Dev-C++ under wine on my Linux laptop to compile my C++ games for windows. Don’t worry, I’ve done it before. So – after the competition, look for my .exe submission. And please try it! I promise it will be fun. And if it’s not fun, then you can laugh at my fail.

I’m going into this competition armed and ready! Even though I’m actually doing the jam with a friend.

By the way – one of the best ways to feel prepared is to open sfxr and create some sound effects. You’ll feel really prepared.

Progress on familiarizing with Allegro

I added to my simple arrow keys move program. Now it has sprites and animation! Pretty pathetic really, but I just did it for the experience to save valuable time looking at docs later. The player is moved around by arrow keys, has momentum, and has an emoticon/smiley face 4-frame animation. I’m soooo ready for the jam!

Yay!

Alright! I was just able to compile and run my test program for windows. All this on my linux laptop. Whenever I use wine to make ends meet in situations like these, I always feel very evil…

I’m super hyped! Time to watch all the keynotes.

Alright!

Finally got custom fonts working for Allegro… been working on this like all day.

The competition is ALMOST HERE! LESS THAN ONE HOUR LEFT!!!!!!!!!!!! OMG

Concept

We have an idea for a concept! Unfortunately, I’m busy this morning, so I can’t do much work on it. After lunch, though, we will refine our concept and start working! I have my coding environment all set up, and pixelcake’s ready to do some spriting. He already has done some music for our game.

Even though we weren’t really able to utilize this morning, we’re still going to have a ton of fun and make an awesome game. Lucky for you, though, we can only enter in the Jam, so our game won’t pwn yours. Jk.

Progress

So far, we’ve made about half our tileset, I’ve coded the engine, and got most of the functional tiles working. We will soon be working on implementing the concept of our game (which we have changed).

Good luck everyone!

More progress

We’re getting really far along on our game. I’ve finished the engine, written a level designer, and we now have 77 tiles. However, my code is relatively short (only 638 lines), and I still have lots to do.

Just went outside to look at the stars, it’s 1:19 AM. The sky was really clear and we could easily make out Orion’s belt and some other cool constellations. Ludum Dare is fun.

More progress!

It’s Sunday morning, and I’ve added scrolling to the game, as well as fixed a LOT of bugs. I’m working on a windows port of the half-finished game right now, so I can port it quickly later.

Coffee

Time to put in that final sprint and get everything done and polished. It’s coffee time!

Comments

19. Dec 2011 · 03:34 UTC
Compo is over.

Success!

We finished our game! Whee! Download the windows package here.

Here’s a screenshot:

Even though it does say “Game Test”, this is the final version. If you’re running on Linux and want an executable, drop a comment on the game page and I’ll submit one. The game runs fine under wine too, I got it to run under wine on my mac and Linux laptop.

More updates!

I’ve just released yet another update for our game Follower (submission page here). Thanks to everybody who played and commented our game, I was able to patch in a few post-compo bugfixes and additions, so that you won’t jump out of a 12th-story window screaming after playing our game. Please feel free to play it and leave behind a comment or two! All of you who already did, we really appreciate it. Thank you Ludum Dare community members!

LD24

Hopefully in!

My first Ludum Dare was #19, which I did solo (lots of fun). The community is so helpful and not super-competitive, and it felt great to be part of the competition. I missed the next Ludum Dare, and stopped following the competition for a while. A friend of mine reminded me a week before LD#22 that it was coming up soon, and we ended up having lots of fun making a game together. I had to miss #23 because of other obligations, but I should be able to do #24, hopefully with the same friend!

Outside of Ludum Dare, I’ve been working on some other games. One is finished, and I’m writing a website to publish it and future games on. Once it’s finished and up, I’ll post a link so everyone here can check it out! We’ll have a free game or two, and others that have a set price so that we can pay for hosting and make some profit.
My tools for Ludum Dare and game development in general:
-The GIMP
-Either Xcode or KDE Kate for text editing
-C++ and SFML
-bash/g++ for compiling
-Code::Blocks for a Windows build (maybe I’ll use it the whole way through as an IDE)
-MilkyTracker and FL Studio for music
Hope to be a part of the wonderful Ludum Dare community again on the 24th!

Preparation

For my first LD, I was frantically trying to get some more experience with Allegro before starting so that I wouldn’t have to spend half the compo reading library docs. One LD later, I spent a couple weeks writing test programs so that I would be able to use custom fonts and particle effects in my game. This LD, I’m trying to learn a new game library and set up an uncooperative IDE to compile my game easily.

How prepared do you feel for LD#24?