Allegro.cc - Online Community

Allegro.cc Forums » Off-Topic Ordeals » Collaborators for Allegro Demo Game Competition?

This thread is locked; no one can reply to it. rss feed Print
Collaborators for Allegro Demo Game Competition?
Neil Walker
Member #210
April 2000
avatar

also,
while i'm there, you seem to have put in #include "allegro.h" now. I don't know about anyone else, but this doesn't work for me, I have to change it to #include <allegro.h>

Neil.

Neil.
MAME Cabinet Blog / AXL LIBRARY (a games framework) / AXL Documentation and Tutorial

wii:0356-1384-6687-2022, kart:3308-4806-6002. XBOX:chucklepie

Evert
Member #794
November 2000
avatar

Quote:

while i'm there, you seem to have put in #include "allegro.h" now. I don't know about anyone else, but this doesn't work for me, I have to change it to #include <allegro.h>

:o
Man, does MSVC suck or what? ;) As far as I know, the only difference should be the order in which directories are searched for include files... obviously not.

Neil Walker
Member #210
April 2000
avatar

ah well thats just me, MSVC lets you add search paths if you wish, i don't have allegro in my search path. I always include libraries i use all the time in the MSVC include directory, that way i don't get mixed up with using the wrong version of anything.

and remember, when you run 'make install' that is exactly what it does, so all i was saying is #include<allegro.h> will always work for an allegro build.

but what about strtof not being in the standard string library?

Neil.

Neil.
MAME Cabinet Blog / AXL LIBRARY (a games framework) / AXL Documentation and Tutorial

wii:0356-1384-6687-2022, kart:3308-4806-6002. XBOX:chucklepie

Evert
Member #794
November 2000
avatar

strtof() is a C99 function.

Neil Walker
Member #210
April 2000
avatar

fine. i changed it to strtod. and there's a bug,naught Thomas ;)

:no initialisation for Finished:

struct Level *LoadLevel(char *name)
{
  int Finished;
...
  while(!Finished)

anyway, attached is a screenshot.

Neil.

Neil.
MAME Cabinet Blog / AXL LIBRARY (a games framework) / AXL Documentation and Tutorial

wii:0356-1384-6687-2022, kart:3308-4806-6002. XBOX:chucklepie

Thomas Harte
Member #33
April 2000
avatar

Yeah, that's from my moving around of variable declarations. Damnit!

Now that it'll build in C89 I can get on with adding proper character movement...

Jakub Wasilewski
Member #3,653
June 2003
avatar

Thomas said:

Any chance of inheriting the ground texture from SWB?

No problem, you can take it. Along with the grass texture, I assume?

Also, I could do the other textures you mentioned (marble, ice), and those coins and fruit. I have a few questions though.

  • I figure 128x128 for textures is OK?

  • What size are the coins/fruit supposed to be? 16x16, 32x32?

Also, the clouds for the background, and the water seem an easy task. I'll take a stab at it and attach the results.

---------------------------
[ ChristmasHack! | My games ] :::: One CSS to style them all, One Javascript to script them, / One HTML to bring them all and in the browser bind them / In the Land of Fantasy where Standards mean something.

Richard Phipps
Member #1,632
November 2001
avatar

This is sounds very advanced. Perhaps this should be an advanced demo game alongside a simpler demo game?

Thomas Harte
Member #33
April 2000
avatar

Quote:

No problem, you can take it. Along with the grass texture, I assume?

I'll have to think about the grass texture. All polygons are drawn using the polygon function and non-solid fill mode, which means at present that using any sort of grass texture with a deliberate fringe wouldn't work.

Quote:

Also, I could do the other textures you mentioned (marble, ice), and those coins and fruit.

Do any textures you can think of that are interesting! The level isn't designed yet so I can work around whatever you come up with.

Quote:

I figure 128x128 for textures is OK?

Any (power of two) by (power of two) is fine.

Quote:

What size are the coins/fruit supposed to be? 16x16, 32x32?

They don't have to be power of two, so just pick anything that you think would look good alongside a 32x32 sprite!

Quote:

This is sounds very advanced. Perhaps this should be an advanced demo game alongside a simpler demo game?

I thought this might become an issue. I've tried very hard to come up with the simplest thing I can think of that uses a good range of the Allegro drawing functions (including vectors and sprites). The choice of vector levels was also intended to reduce data size so that the thing wouldn't be too much of a burden for the Allegro distribution.

Perhaps it might be smart to see what people actually finish as potential demo games and then pick the most appropriate of those? I'll consider throwing in a simple Pong clone or something on the main menu, ala Commander Keen.

Richard Phipps
Member #1,632
November 2001
avatar

Quote:

Perhaps it might be smart to see what people actually finish as potential demo games and then pick the most appropriate of those?

Good point.

I still think a series of demo games (increasing in complexity) would be a good idea as long as the total size wasn't too big.

Neil Walker
Member #210
April 2000
avatar

Well I read his code and couldn't understand a single line of it.

Neil.

Neil.
MAME Cabinet Blog / AXL LIBRARY (a games framework) / AXL Documentation and Tutorial

wii:0356-1384-6687-2022, kart:3308-4806-6002. XBOX:chucklepie

Richard Phipps
Member #1,632
November 2001
avatar

I just had a look, and I'm afraid I agree. It's far too mathematically orientated for my mind. :(

Jakub Wasilewski
Member #3,653
June 2003
avatar

Oh right, I've done the water, one type of cloud and some cherries. Attached it, just let me know if you like it.

The water is a 192x192 (128x128 and 256x256 were either too tall or too... um, short for a 640x480 screen) tile, repeated horizontally. The cloud is antialiased and would pose a problem if the color of the background was unknown/variable/non-uniform. I can probably do pixelled clouds, but that is bound to take loads of time.

The cherry is 24x24, and other bonuses/items would be of the same size.

Richard said:

This is sounds very advanced. Perhaps this should be an advanced demo game alongside a simpler demo game?

I don't really know. The previous demo game wasn't much of a reference. You could tell someone to look at it to learn the very basics, but if you wanted to explain most aspects of framework design, diving functionality between functions, structuring your data - it was useless. This one would allow us to say: "See, that's how you want to structure your code in a game".

If it was a pong game, it wouldn't even be worth splitting it into several files, not to mention resource management and that sort of stuff.

[EDIT]
Well, you can't do texturing (even in 2d) without maths, now can you? But I agree it might be a little too complex for real newbies... I don't really know.

Oh and about the grass - I probably could do a solid texture that would just appear to have a rough edge, while really being an 8x8 (16x16) block. I'll try that now...

---------------------------
[ ChristmasHack! | My games ] :::: One CSS to style them all, One Javascript to script them, / One HTML to bring them all and in the browser bind them / In the Land of Fantasy where Standards mean something.

Richard Phipps
Member #1,632
November 2001
avatar

While I agree that 2D and 3D models are the future, for someone just getting into programming I would introduce them to 2D tilemaps first. If you haven't got a maths background it's easier to understand. Games like Sonic just used tilemaps and they work fine.

Evert
Member #794
November 2000
avatar

Quote:

Perhaps it might be smart to see what people actually finish as potential demo games and then pick the most appropriate of those? I'll consider throwing in a simple Pong clone or something on the main menu, ala Commander Keen.

Bear in mind, all submitted games will be made available for download anyway. Even if it would be too complex, it would still be available as an extra `advanced' demo game.

Quote:

Well I read his code and couldn't understand a single line of it.

Last I looked, it still needed a lot of comments anyway. That's also part of the problem with the current demo game: poor commenting.

Quote:

"See, that's how you want to structure your code in a game".

Correction: `that's how you not want to structure your code' ;)
The problem was that although it did things like timers, seperating logic and drawing and handling multiple update methods, it didn't do so in a clearly readable and intelligable way.

By the way, do you have a main character sprite yet? Would it be a bad idea to ask Johan Peitz for an Alex sprite for that? Afterall, Alex is Allegro's mascot...

Jakub Wasilewski
Member #3,653
June 2003
avatar

Quote:

Correction: `that's how you not want to structure your code' ;)

I was talking about how it should be with the new one :). I'm aware that the old one was an Allegro 2.0 relic ;).

[EDIT] A stab at the grass texture attached.

---------------------------
[ ChristmasHack! | My games ] :::: One CSS to style them all, One Javascript to script them, / One HTML to bring them all and in the browser bind them / In the Land of Fantasy where Standards mean something.

Thomas Harte
Member #33
April 2000
avatar

Quote:

Well I read his code and couldn't understand a single line of it.

Quote:

I just had a look, and I'm afraid I agree. It's far too mathematically orientated for my mind.

Well it isn't commented yet! All you really need to understand mathematically is the dot product so once it is all commented up and some of the struct members given slightly less arcane names it should be very straight forward. I consider making the code readable an integral part of producing a meaningful Allegro Demo Game, so I was hoping to get some people to specifically check it for readability and to spend time editing it from that point of view.

Quote:

I don't really know. The previous demo game wasn't much of a reference. You could tell someone to look at it to learn the very basics, but if you wanted to explain most aspects of framework design, diving functionality between functions, structuring your data - it was useless.

A quick show of hands - did anybody here ever actually look at the old demo game? When I was starting out I considered the ex* sources to be helpful and once I'd conquered them I didn't find the demo program at all helpful.

Quote:

While I agree that 2D and 3D models are the future, for someone just getting into programming I would introduce them to 2D tilemaps first. If you haven't got a maths background it's easier to understand. Games like Sonic just used tilemaps and they work fine.

That's why it was intended that the background would be composed of a tilemap.

And Sonic used a tilemap for display only. Collisions/etc were done on vector versions of all the tilemap pieces. Which is even more 'complicated'.

EDIT:

Quote:

By the way, do you have a main character sprite yet? Would it be a bad idea to ask Johan Peitz for an Alex sprite for that? Afterall, Alex is Allegro's mascot...

If Alex the Alligator has at some point been accepted as the Allegro mascot then nobody bothered telling me about it. I've never played the thing and Google image search just reveals some ugly looking Gameboy style graphics. From where would I learn about the thing?

NB: Firefox acting oddly & won't let me use the clipboard. Or the cursor keys. Need to post & edit.

Neil Walker
Member #210
April 2000
avatar

Quote:

A quick show of hands - did anybody here ever actually look at the old demo game?

Call me old-fashioned, but i love a simple shootemup :)

But I think real demos as well as specific targetted examples are ideal as it both introduces a full game coding exercise and shows how the library can be used in various ways to achieve similar goals (e.g. blitting, etc).

Maybe alongside this mathematical orientated game, we could put Phipps' tile mapping game, and possibly a simple non-scrolling single screen game (e.g. robotron).

If external libraries are allowed then maybe something using allegrogl (not openlayer as it requires far too many external libs)?

Plus, I don't really think a competition to choose one demo game is very good. If it were a case of a few demos of different types of game (as above) were released and a separate demo download of other submitted games were provided then I bet more people would be willing to contribute a simple game.

Neil.

Neil.
MAME Cabinet Blog / AXL LIBRARY (a games framework) / AXL Documentation and Tutorial

wii:0356-1384-6687-2022, kart:3308-4806-6002. XBOX:chucklepie

Jakub Wasilewski
Member #3,653
June 2003
avatar

Neil said:

If external libraries are allowed then maybe something using allegrogl (not openlayer as it requires far too many external libs)?

It's an Allegro demo. Hence, it should use Allegro and only that.

Thomas: No comments on the art?

---------------------------
[ ChristmasHack! | My games ] :::: One CSS to style them all, One Javascript to script them, / One HTML to bring them all and in the browser bind them / In the Land of Fantasy where Standards mean something.

Thomas Harte
Member #33
April 2000
avatar

Quote:

Thomas: No comments on the art?

They were lost to Firefox oddness. Now some comments on the art:

I was going to implement the water as a SNES Mode 7 type affair but I guess a tilemap is a smarter idea firstly for educative purposes and secondly because you've already prepared the artwork!

Cherries are good and will go in.

The cloud I will probably use and blit in various sizes to produce a rolling clouds style thing.

I've clearly not explained the grass thing very well. The problem is that the grass texture isn't currently aligned to anything. That's easy to fix. But it's also not rotated. Think of the grass regions as windows into a background realm of infinitely tiled texture. So anything that even implies an edge may look odd.

Anyway, I think I've got friction going correctly now. My only problem is that a fix to edge collisions so that a character standing precariously on the edge of a platform does the expected platform game thing causes some weird effects.

I've also started formulating some ideas for the level. I'd like to get a level editor going but I'm not sure its going to happen so at the minute I'm drawing things out on graph paper :)

EDIT: latest version attached. Player control is now pretty much as I imagined it would be, with the exception that the 'player' doesn't slowly return to vertical while freefalling.

Main remaining problem is that collision edges are extrapolated from input triangles and are not properly checked for intersections yet. This is often noticeable when interacting with the sharp corners at the top right and top left of the little half pipe. Sometimes the player will appear to stick on them.

This is easy to fix in that I know exactly where and how to implement the fix. It's just one of those closed implementational boxes that may temporarily break everything and I right now can't be bothered to begin.

Once that is in + background & collection of cherries I think the main part of the programming will be bug squashing and number tweaking so I can get on with separating everything out exceptionally cleanly and commenting it all up. Are there any volunteers for proof reading?

krajzega > I took your soil texture by grabbing a 128x128 block from an SWB screenshot as I have no way of getting into the installation executable and as a result I've inherited some of your subtle brightness shading that shouldn't be in the texture. Any chance of sending me a clean copy?

Jakub Wasilewski
Member #3,653
June 2003
avatar

Sure, attached is a picture containing:

- soil texture and ice texture, along with "floor textures" for them. The latter are useless though if there is no aligning/rotation, so disregard them.
- five bonus objects (random yummy foodstuffs)
- water tile
- antialiased cloud

Pretty much everything I've done so far. BTW, have you contacted amarillion about the character sprite?

---------------------------
[ ChristmasHack! | My games ] :::: One CSS to style them all, One Javascript to script them, / One HTML to bring them all and in the browser bind them / In the Land of Fantasy where Standards mean something.

Thomas Harte
Member #33
April 2000
avatar

Quote:

Sure, attached is a picture containing: ...

Thanks! No doubt I'll have to grapple with the grabber any moment now.

Quote:

BTW, have you contacted amarillion about the character sprite?

No, I've been focussing on getting the character moving correctly. The frame limiter in the code last uploaded wasn't working particularly well (those of you not using the slower than treacle Mac OS X version of Allegro will undoubtedly have noticed), so I've fixed that and am retweaking various values. I've also made the scrolling follow the player (as opposed to being on the WSAD keys as previously) and discovered what I think is a rounding bug and one I thought I had crushed which allows the player to pass through surfaces in extreme circumstances.

I'm quite enjoying just the little pseudo-halfpipe at the minute, so I hope a whole level will be fun.

If you're declining creation of a main sprite, I'll get in touch with him immediately.

Quote:

along with "floor textures" for them. The latter are useless though if there is no aligning/rotation, so disregard them.

I'll just implement aligning. I'll switch to an ATEX polygon3d and everything should be cool.

Jakub Wasilewski
Member #3,653
June 2003
avatar

Thomas said:

If you're declining creation of a main sprite, I'll get in touch with him immediately.

Well, I could try and do that, but... I can handle pixelling objects, but people are above my head. Every character I tried to pixel and animate ended up in the trashcan.

After all, I think I'll try. I'll let you know when and if I manage to produce something worthwhile.

---------------------------
[ ChristmasHack! | My games ] :::: One CSS to style them all, One Javascript to script them, / One HTML to bring them all and in the browser bind them / In the Land of Fantasy where Standards mean something.

amarillion
Member #940
January 2001
avatar

At the moment I'm too busy not getting anything done for pretty hack, but as soon as that is over I'll start on the main character sprite.

Jakub Wasilewski
Member #3,653
June 2003
avatar

http://behappy.boo.pl/temp/running.gif

Alright, this is an 8-color sketch of the running animation. If you're happy with the quality of animation I'm capable of, I can pixel over this sketch to make a real character. If you're not happy with that quality (I know I'm not entirely happy with it :)), we'll have to wait until Amarillion will be available.

By the way - the sprite is 36x36, not 32x32... hope that doesn't spoil everything :).

---------------------------
[ ChristmasHack! | My games ] :::: One CSS to style them all, One Javascript to script them, / One HTML to bring them all and in the browser bind them / In the Land of Fantasy where Standards mean something.



Go to: