Game Development Community

New platformer tutorial on TDN

by Phillip O'Shea · in Torque Game Builder · 07/28/2007 (3:36 pm) · 31 replies

tdn.garagegames.com/wiki/TGB/CustomPlatformer

Hi Guys,

Above is the link to a new platforme tutorial I have been working on over the last week or so. Check it out, and give some feedback.

I'll write up more of a description later.

Phil

About the author

Head of Violent Tulip, a small independent software development company working in Wollongong, Australia. Go to http://www.violent-tulip.com/ to see our latest offerings.

Page«First 1 2 Next»
#21
10/28/2007 (1:33 am)
Edel, how about you ask questions in the forum?

The TGB docs are there to help you understand how to use the engine, which they succeed in. They do not, however, help you make a game. Since you are in this thread, I am guessing that you are frustrated at GG for not releasing a good platformer tutorial or starterkit. How about you try to think up methods of doing one yourself, thats half the fun and the most rewarding part about making games!
#22
10/28/2007 (9:46 am)
Well yes... you are right Phillip, guess I got a bit frustrated yesterday. Im back to normal now.
#23
10/29/2007 (6:18 am)
Phillip:
Very good comments. Your perspective is quite encouraging -- good job!

I can sympathize with Edel's feelings -- it's a sentiment with which I am not wholly unfamiliar.

I really do like the community support here at GG -- I guess what I feel like is missing is the "official" word from GarageGames on how to fix certain recurring issues. The community does a *fantastic* job of releasing tutorials and examples and case-by-case support -- the thing I feel that's needed is more official word as far as how to do certain basic tasks (such as a platformer). It's such a blazingly basic and standard game, it's a wonder to me that the community still has yet to be able to make a simple one properly. If it takes this many game developers this long to figure it all out (and they still fail without hack workarounds), perhaps it's time for GG to officially step in.

Even so, I can understand where GG has been on all of this. They can do a great job of releasing any number of tutorials (shooter, networked board game, adventure, whatever), and if they miss *one little issue* (such as wall-climbing in a platformer), then their docs somehow "completely suck". I think they're in a tough spot, and so I do sympathize with their conditions as well. I hope I don't expect GG to "write my game for me" -- I totally think you're right about what the most rewarding part of game development is (the *development* part). So I guess it's a fine balancing act we need to walk.

I think that MiniPlatformerTutorial and CustomPlatformerTutorial are both absolutely *fantastic* community-made resources -- though when something reaches this level of usage and prestige in the community, I think it would be excellent if GarageGames could take time to resolve the standing issues in the tutorial to make it the rock-solid-example that we all want it to be.



Thanks! :)

Respectfully,
clint
#24
10/29/2007 (3:06 pm)
Quote:How about you try to think up methods of doing one yourself, thats half the fun and the most rewarding part about making games!
By the way, this is how you will be able to finish a game with TGB. If you can't, you're in trouble.
#25
10/29/2007 (3:26 pm)
You bring up some very good points Clint. We would like to help in the areas that need the most help as well and it is sometimes hard to identify those. You obviously bring up one of those with the platformer tutorials.

For now, as a temporary solution, I am going to create a new thread called "Ask GarageGames"... From there I will try and parse out the good but difficult questions in which we can offer the best assistance. I will mirror it to a TDN page that holds the questions with the paired answers.

Feel free to post this exact question there.
#26
10/29/2007 (11:45 pm)
This is a great tutorial Phillip - I've learned a lot about TGB from reading it, particularly the pick line techniques.

I've found a few bugs which I'm trying to resolve myself, but any help would be appreciated:

1 - Changing the player's collision box affects how high he jumps. I know this sounds impossible, but that's what's happening.

2 - When falling diagonally, if the player clips a corner of a platform his horizontal speed is set to 0. Basically, if you jump while running towards the edge of a platform, and just clip the corner before falling off, there's a noticeable jerk as the player is slowed down on the corner. (This only seems to happen when the player's collision polygon is not a perfectly aligned rectangle).

3 - One way collision problems: while the player is inside a one-way collision platform, they can pass partially into a solid platform. Also, if the player passes through a one-way collision platform they can become stuck inside a solid platform.

4 - if the player is standing right on the edge of a platform, just 1 pixel from falling off, they cannot jump.

Here's a couple of images to better illustrate the bugs:

cokane.com/temp/tgb_collision01.jpg
cokane.com/temp/tgb_collision02.jpg
#27
10/30/2007 (2:27 am)
Hey Conor,

I'm glad that you like the tutorial and that you have got a bit of use out of it.

Quote:1 - Changing the player's collision box affects how high he jumps. I know this sounds impossible, but that's what's happening.

Actually, this is part of TGB! Each object has physical attributes that are assigned based on different aspects of the object. In this case, the object's mass is what is making your character jump differently. TGB will calculate the mass of an object based on its collision polygon. To change this, I think you can just tell you object to have its own mass rather than letting TGB calculate it for you.

Quote:2 - When falling diagonally, if the player clips a corner of a platform his horizontal speed is set to 0. Basically, if you jump while running towards the edge of a platform, and just clip the corner before falling off, there's a noticeable jerk as the player is slowed down on the corner. (This only seems to happen when the player's collision polygon is not a perfectly aligned rectangle).

I might take a look at this one, thanks for the tip.

Quote:3 - One way collision problems: while the player is inside a one-way collision platform, they can pass partially into a solid platform. Also, if the player passes through a one-way collision platform they can become stuck inside a solid platform.

I think this has something to do with flipping the object. I think what I have done is just just check wall object in front of the player. Flipping your object when moving left may resolve the issue.

Quote:4 - if the player is standing right on the edge of a platform, just 1 pixel from falling off, they cannot jump.

Yeah, this whole build has a rather big problem with small objects and small collisions.

I am working on a better build that is much less labor intensive than the current one. I have figured out how to get everything working nicely using TGB's physics, which means that it will resolve a few issues. However, in its current state, OneWay platforms will be unusable. You could check out the OneWay platform tutorial on TDN, this uses triggers to enable and disable platforms.

I've got a new build down to about 300 lines of code and so far I cannot find any real issues with it (no climbing up walls etc ;) ). I'll try to get around to posting it sometime soon, I have a lot on my plate at the moment though. If you are really interested I can give you the raw code without any explanation!

Cheers mate!
#28
10/30/2007 (6:11 pm)
Looking forward to this new physics based version Phillip. Did you go back to cast collisions or is it still using the pick line technique?
#29
10/30/2007 (11:10 pm)
@Conor
1-Check "gravitic" (in physics tab) for the object and the mass will be ignored...
#30
01/14/2009 (5:15 pm)
what is the difference between the platformer for TGB and TGBX?
#31
01/16/2009 (12:39 pm)
For the most part, it is the source code. The TX platformer kit is written in C# and the TGB one is in TorqueScript.
Page«First 1 2 Next»