Allegro.cc - Online Community

Allegro.cc Forums » The Depot » Development Progress

This thread is locked; no one can reply to it. rss feed Print
 1   2   3   4 
Development Progress
Dario ff
Member #10,065
August 2008
avatar

I did already. >_< Open source FTW.

TranslatorHack 2010, a human translation chain in a.cc.
My games: [GiftCraft] - [Blocky Rhythm[SH2011]] - [Elven Revolution] - [Dune Smasher!]

Shravan
Member #10,724
February 2009
avatar

<offtopic>
@Dario ff:From what I have observed(Elven revolution and the animation demo) you are excellent at art work.You learnt that by yourselves or what.
</offtopic>

Dario ff
Member #10,065
August 2008
avatar

video

;)

TranslatorHack 2010, a human translation chain in a.cc.
My games: [GiftCraft] - [Blocky Rhythm[SH2011]] - [Elven Revolution] - [Dune Smasher!]

LennyLen
Member #5,313
December 2004
avatar

Dario, That looks great.

I'm currently rewriting the ladder manager to allow for multiple ladder types as well.

Dario ff
Member #10,065
August 2008
avatar

Thanks. :)

There's one little bug though(or a bug in the original game that you wanted to recreate?): If you try to walk against the borders of the screen, the player gets limited because of its width(15 on the left, and 624 on the right). However, if I jump facing those sides, I can bypass that limit and it turns into 0 for the left and 639 for the right.

Setting the proper limits in void game::check_jumping() fixed it.

TranslatorHack 2010, a human translation chain in a.cc.
My games: [GiftCraft] - [Blocky Rhythm[SH2011]] - [Elven Revolution] - [Dune Smasher!]

LennyLen
Member #5,313
December 2004
avatar

Oops, I'd just never noticed that happening. I've fixed it here, so it will be taken care of in future releases.

update: I converted the code and graphics to PNG with alpha support. It probably took longer to convert the graphics over than it did to modify the code.

Dario ff
Member #10,065
August 2008
avatar

Just in time I was going to report something. Here's a screen:
{"name":"601017","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/1\/6\/16d9d0081cd8266e5d28be872b977058.jpg","w":250,"h":110,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/1\/6\/16d9d0081cd8266e5d28be872b977058"}601017

As you can see, I can't go down in the ladder on the left side because of the 2 pixels. This would be solved by making the stair 2 pixels taller?

EDIT: I was just about to post this when you posted the update. :-X

TranslatorHack 2010, a human translation chain in a.cc.
My games: [GiftCraft] - [Blocky Rhythm[SH2011]] - [Elven Revolution] - [Dune Smasher!]

LennyLen
Member #5,313
December 2004
avatar

Ah yes, I'm still deciding exactly what I'm going to do in that situation. If I make the ladder go higher, then it will be visible at the top of the floor tile, which never happens in the original.

I'm toying with the idea of altering the on_ladder(x, y) routine so that its tolerance is two pixels less, but then if there's a map that has a three pixel difference in such a situation, it still won't register. This is still the most likely solution I'll use however, and the onus will be on level designers to not span the top of a ladder between two tiles where the y positions are too far apart.

Another solution is to check when somebody presses down if they're on top of a tile, and if so, to check if that tile overlaps a ladder.

Next update:

I've added support for the chutes (slides):

{"name":"601031","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/9\/a\/9aa54af605c282494730b5a76a869f93.png","w":656,"h":517,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/9\/a\/9aa54af605c282494730b5a76a869f93"}601031

I need to go back and play the original game to see if they used the jumping sprite for the sliding as well, which I suspect they did.

I also modified the code so that if you jump and land so that you're standing on two tiles, both get cleared, instead of just one of them. There were probably a few other revisions I made, but that was last night, and I've forgotten already. ;)

Dario ff
Member #10,065
August 2008
avatar

Sounds cool. Just in case, did you notice a bug where the player might go through a diagonal platform while jumping? I have been able to reproduce it, here's a pair of coordinates:
601032

When you get to that exact position(1 x less or 1 x more won't work) do this:

  • Jump in position. (Do this so you get more time to press the left key without moving the character).

  • While in the air, hold the SPACE key and the LEFT key.

  • If you did it right, you will jump and pass through the floor.

How to get to that exact position? Move with pixel-perfection, or hack the position, you're the coder after all. ;)

TranslatorHack 2010, a human translation chain in a.cc.
My games: [GiftCraft] - [Blocky Rhythm[SH2011]] - [Elven Revolution] - [Dune Smasher!]

LennyLen
Member #5,313
December 2004
avatar

Yeah, I know about that bug too. It happens infrequently enough that I haven't bothered to fix it yet, though I'm pretty certain I know what's causing it.

For small bugs like this, I'm going to wait until I have all the gameplay elements done before I go back and fix them. It's only major bugs that I'm fixing as I go along.

Update:

I've been working a lot the last couple of days, but managed to get some time in today to work on the enemies. At the moment, they are created when their data is read from the level file. There is an enemy_manager class that takes care of initializing, moving and drawing the enemies. Again, I've tried for flexibility, and have extended the class capabilities beyond the original game. In the original, ever monster in the game was identical, and all of them could be switched from a dangerous to safe mode. In BBE, you can specify different properties for every enemy as well as making them either only dangerous or only safe.

I still have to implement the collision detection between the player and the enemies, and when I do that I will also implement player death.

I've made a short video to show how the engine is looking so far:

video

The state changing from dangerous to safe, or vice versa, is implemented but is triggered when the player picks up an item, so isn't visible yet.

I'll make the next code release when I've implemented the collision detection and player death.

Trent Gamblin
Member #261
April 2000
avatar

That looks good Lenny.

Dario ff
Member #10,065
August 2008
avatar

What kind of enemy is that? Some kind of walking squid? :-X It's hard to recognise with only some big pixels from a little video. Just looking to make a custom sprite for it. :)

Nice progress BTW.

TranslatorHack 2010, a human translation chain in a.cc.
My games: [GiftCraft] - [Blocky Rhythm[SH2011]] - [Elven Revolution] - [Dune Smasher!]

LennyLen
Member #5,313
December 2004
avatar

They're supposed to be radioactive mutants, apparently. This is what they look like in the safe mode, which is when you can walk into them to collect points:

{"name":"601059","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/0\/0\/00cff4723c83972183545ee01baecf1b.png","w":646,"h":506,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/0\/0\/00cff4723c83972183545ee01baecf1b"}601059

edit:

Here's some comparative screenshot of the original game and my engine about 5 seconds into the level. The positioning of the enemies is a little off as I have to tweak the starting positions and movement speed a little more.

Original:

{"name":"601060","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/e\/7\/e758b8cd07d82609ef3335efac07b9c3.png","w":694,"h":622,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/e\/7\/e758b8cd07d82609ef3335efac07b9c3"}601060

Remake:

{"name":"601062","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/6\/5\/655fd4b5709e9be4b7ce57b1cbead1bf.png","w":640,"h":480,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/6\/5\/655fd4b5709e9be4b7ce57b1cbead1bf"}601062

Dario ff
Member #10,065
August 2008
avatar

LennyLen said:

This is what they look like in the safe mode, which is when you can walk into them to collect points

Kind of like eating ghosts in Pacman? I guess I'll probably let my imagination fly and see if I can get a good sprite for it.

They're supposed to be kind of short aren't they? They seem like they walk with four legs like an animal.

TranslatorHack 2010, a human translation chain in a.cc.
My games: [GiftCraft] - [Blocky Rhythm[SH2011]] - [Elven Revolution] - [Dune Smasher!]

LennyLen
Member #5,313
December 2004
avatar

Dario ff said:

Kind of like eating ghosts in Pacman?

Yup. just like that. And, like in Pac-Man, there's only a limited time to get them while they're safe.

Quote:

They're supposed to be kind of short aren't they? They seem like they walk with four legs like an animal.

They need to be short enough that you can jump over them. You can create multiple animation sets, as the engine supports them.

Dario ff
Member #10,065
August 2008
avatar

Ok, I had some fun with this.

A random critter I drew. It's a mutated lizard, capable of walking in two legs. Random yellow stains for decoration.
601073

He turns into "safe" mode:
601072

While in safe mode, he's scared:
601071

It might be a bit overloaded though, and I tried with another lighter model:
601074

BTW, why are small images turned into links? Is there any way to override it?

TranslatorHack 2010, a human translation chain in a.cc.
My games: [GiftCraft] - [Blocky Rhythm[SH2011]] - [Elven Revolution] - [Dune Smasher!]

LennyLen
Member #5,313
December 2004
avatar

Those look great. :D

Striker
Member #10,701
February 2009
avatar

I loved "The Castles of Dr. Creep" on C64. It was similar, but with Frankensteins to avoid and electricity, switches and keys. There was a two player mode with two joysticks, both player must work together to solve the problems. My favorite game on C64! And there was "Loderunner" too. This one later appeared on PC - with so much levels... 8-)

Dario ff
Member #10,065
August 2008
avatar

Quote:

Those look great. :D

Thanks, I really thought the scared lizard one was pretty funny. ;D Do they stay in the place while in "safe" mode or they run around like in Pacman?

TranslatorHack 2010, a human translation chain in a.cc.
My games: [GiftCraft] - [Blocky Rhythm[SH2011]] - [Elven Revolution] - [Dune Smasher!]

LennyLen
Member #5,313
December 2004
avatar

They continue to move.

Trent Gamblin
Member #261
April 2000
avatar

Hi LennyLen.

LennyLen
Member #5,313
December 2004
avatar

I've added a new video now that I've added collision detection and level respawning:

video

The collision detection works by first doing a bounding box collision check, and if that returns true, it then does a pixel-perfect check using the alpha channel of the images.

I reworked the level loading routines. Previously, when play started, all of the data was read directly from the level file. Now I've split this into two steps, the first of which loads from the file to a struct that holds the level for the data, and the second which builds the level from the struct. This way, when I reset the level on death, I only have to reload from memory, not from disk.

The level reset function gets passed three flags, one to say whether to reset the floor pieces, one for resetting the enemies, and one for resetting level items. In the original, these all get reset, so I'm passing true for all of these, but these options can be reconfigured to create new games.

I've also spent a bit of work improving communication between game elements.

Trezker
Member #1,739
December 2001
avatar

Looks really good. I may want to play this when it's done.

LennyLen
Member #5,313
December 2004
avatar

I've just created some item graphics, so I can get to work on the item management now. Once this is done, all the gameplay elements for the first two levels will be complete so the first two levels will technically be playable. There's a bit of polish missing still (no death animations or sound), mostly because these are the areas that get me away from the IDE.

I have a pretty busy weekend ahead, but I should be able to find time to get the item management done at least.

edit:

I just made and uploaded a video of the same engine, but using Dario's gfx:

video

The enemies are a little big at this point, which actually makes it impossible to jump over them without hitting them, but it gives an idea of what's possible.

Trent Gamblin
Member #261
April 2000
avatar

Looks cool. Is the point of the game to step on every spot in the map?

 1   2   3   4 


Go to: