• Steam recently changed the default privacy settings for all users. This may impact tracking. Ensure your profile has the correct settings by following the guide on our forums.

[WIP] Platformer Game

dan369

Member
You might remember this
http://pspupdates.qj.net/PSP-Homebrew-PGELUA-Platformer-demo/pg/49/aid/126620

It was my very first attempt at a platformer, it was ok but lacked graphics. But now, i'm re-doing the whole thing to make it better. And this is a little thread to show you my progress, to keep you informed. I'm also willing to suggestions & any ideas you may have but anyway. Lets show you my progress:

Progress 1
My main problem with my game was the Levels, they were a pain in the ass. Thats why there's only one. To make a level took ages & it was very time-consuming & you easily get bored.
So i decided to make a level-editor. I have never done ANY tool beforehand so i did a bit of research looked at how other people did their level editors & found it quite easy. So i set about making my own.
he main problem i faced was the output, many (nearly all of them) used the tale.save() & table.load() functions from the Lua-users wiki. I didn't at all like the output, i wanted a simple 2d array. I finally made my own system which you can find
Here Note: this is old it has since been improved
This again was an ahievement for me.
So i finally got the output how i wanted & finally got everything working.
The map editor itself has two layers: Normal layer & a collision layer & runs in LuaplayerHm7.
But anyway here's a video of it in action
[YT]http://www.youtube.com/watch?v=MMKufzWUJaA[/YT]

And here's some pics of the map-editor in progress:
shot0.png


shot1i.png


shot2h.png


shot3.png


shot4.png


I'll have some videos of the game soon :)
 

dan369

Member
Can't wait. :)

The PSP could do with a home-brew platformer.

I'd add 'original' to that because there has been sum good ports, SuperTux for example.
Tomorrow i should have another update, i'll be revealing some of the concept, game designing i've done. Also some WIP sprites made by my spriter. I'll also explain why i've come to some conclusions.
Note: I'll post some images of the collision layering as-well. Which i forgot to show.
 

dan369

Member
Progress 2
So, i did say that i would have a new update but my computer like crashed completely, i've had to re-install everything, back-up important files (The actually program & other stuff), along with things from my PS3 because that also crashed. Heck, last night i checked windows update.....i had 124 updates avaible to install :cry:
So that is my reason for not updating, (if anyone was wondering). But back to the game.
I realised that i didn't show you the actually collision layering system. I had a few screenies ready but (do i need to explain any more^^). So they got deleted, so once i get a free moment i'll re-do them.
The main drive of a game is it's design. I could go into a huge lot of detail about the game mechanics & how i want it to work out but it's basically a jump n' run game. You jump, you kill things. Pick up power-ups, all the usually stuff that makes it this genre.
So what's unique about my game? What's its selling point (term of speech, i'm not gunna make any profit of this)?
Normally, in most platformers. You play the hero, the good guy. In my game, You DON'T!.
Now, i could tell you loads of my ideas, every thought that is/has gone through my made but that would be really long & after a while boring to read.
So i'm gunna keep it short & sweet.
You play as Steve, you are a squirrel. A bad ass squirrel, you are the bad guy 'killing' the good guys, you take no shit of anyone & like to beat up people for the fun of it :).
Here is a little mock-up off him,
26044693.png

So that's the basics. For now, as you can see i'm using tiles from the sprite lib. I think there very good + it's easier and saves time. So i'm debating on keeping them.
I would have more but (^^above), my time has been split. Hopefully next week i'll have LOADS to show you :D
 

Cryox

Bro.
this looks like it might be pretty fun. You should release the map editor as part of the game, so once you beat the game it unlocks.

but looking forward to trying this out.
 

dan369

Member
Progress 3
Sorry it's taking long, but i finally hve some progress :).
Firstly, i've been busy trying to port the map editer, to PGE. It's just my luck that some of the bugs PGE still has, i've come across.
The first one is very weird, for some reason when writing to a file, it writes a float point number instead of an int. Using string.format() solved this & now it writes an int. Though because it has to format the string, i ain't sure if it will have a effect on the speed. If it does, i'll just use pge's file module which will hopefully make it faster but i'll have to do a few tests.
The second error, is one to do with the control state. I'm no C/C++ genius so i don't really no the full details on this but calling say pge.controls.pressed(PGE_CTRL_LEFT) twice it corrupts the state.
I also found a bug with my map editor when trying to create a map smaller than nine (nine * 32) in height, it gives my an error. I have solved this know & it works fine :)
Unfortunately i'm going put the port on hold until (0.03), becuase then there'll be no bugs left.
I've also started to implant the virtual floor into my game along with the classic jumping again i haven't done enough progress to show yet but i'm working on it. Though i don have two things to show, i've made a nice little animation mini-lib for my game, hears the actuallly functions
[highlight=lua]
function pge.gfx.animate(ATime, MaxTimePerFrame, NumOfFrames)
local bool = true;
if bool then
ATime.AnimTime = ATime.AnimTime+1;

if ATime.AnimTime >= MaxTimePerFrame then
ATime.AnimTime = 0;
currentFrame = currentFrame+1;

if currentFrame >= NumOfFrames then
currentFrame = 0;
end
end
end
end

-- Advanced Animation function
function pge.gfx.animateadvanced(ATime, MaxTimePerFrame, SFrame, EFrame, Constant)
Constant = true or Constant;
local bool = true;
if bool then
ATime.AnimTime = ATime.AnimTime+1;

if ATime.AnimTime >= MaxTimePerFrame then
ATime.AnimTime = 0;
SFrame.startFrame = SFrame.startFrame+1;

if SFrame.startFrame >= EFrame.endFrame and Constant then
SFrame.startFrame = SFrame.oldFrame;
end
end
end
end

--function to display the animated image
function pge.texture.displayanim(Image, X, Y, Width, Height, StartX, StartY, EndX, EndY, Rotation, Alpha)
--optional arguments
Rotation = 0 or Rotation
Alpha = 255 or Alpha
--Activates the Image for drawing
pge.texture.activate(Image)
--draws the image
pge.texture.draw(Image, X, Y, Width, Height, StartX, StartY, EndX, EndY, Rotation, Alpha);
end
[/highlight]
It took me about a day to make it & if anyone else wants to use it feel free :)
Oh i also have the pics of the collision layer in my map editor, here they are
shot5.th.png

shot6.th.png

shot7w.th.png
 
Top