[OpenSource] PlaTENG 0.7 (Platform TileENGine) Joystick support added

Started by abstauber, Tue 18/05/2010 14:11:46

Previous topic - Next topic

abstauber

Hey,

looking for a tile based platform engine inside of AGS?

Look no further, here's PLATENG !




Download including source:
http://shatten.sonores.de/wp-content/uploads/2012/11/jumpnrun.zip

Once the game has started, you can hit F1 to see/change the keymapping and F2 to configure your gamepad/joystick.

I've also put Mappy ( http://tilemap.co.uk/mappy.php ) in the zip, so you can take a look how I've made the first level. The second level and the demo level are done in ProMotion. So if you want to take a look at it, download a trial from here:
http://cosmigo.com/promotion/index.php


More side-notes:
The enemy movement is really basic, and I'd love to see pathfinding in it. So if any of you likes to add jump'n run A* , be my guest :) 
(please?)

Thanks to all how helped my with it and especially to dkh, Khris and Calin who provided lots of code.
Thanks guys!  :-*


Revision History
// Version: 0.5
// - initial release
//
// Version: 0.51
// - raised the particle limit
// - fixed scrolling bug
// - dust is removed if the player dies
//
// Version: 0.52
// - fixed repeating enemy death animation
// - changed blocking load/save functions
// - hopefully fixed player getting stuck after enemy collision
// - fixed platforms with a speed > 1 (and updated the demo level)
// - added a FPS counter
// - reduced mouse-aiming refreshrate
//
// Version: 0.6
// - frame rate optimizations
//
// Version: 0.7
// improved mappy script
// native Joystick support

Scarab


Rocco

very very cool.  :)
great functionality, allows to make giana sisters-mario clones and a lot more, with the mouseaiming.
i'm really impressed, outstanding job.

DoorKnobHandle

That is absolutely brilliant. Marvelous work there, that must've been a hard task! Love all the details and the death animation of the pig!!

Mehrdad

congratulation.Excellent job.
please continue this project for release another versions.

Thanks a lot  :D
My official site: http://www.pershaland.com/

Kweepa

Ugh! Too much Mario-inspiration!

Awesome job. I particularly like the climb onto block and the slide.
Still waiting for Purity of the Surf II

tzachs

This is mucho impressivo, well done!
It's a shame you can't shoot the girl, though   :P

abstauber

#7
Thanks for your comments so far :D


In the meantime I've fixed two more bugs, just in case you're running into these.

Jim Reed

Nice job abstauber!
There's a glitch though, you can't destroy blocks if you hit them closer to the edge, you need to ht them near the center.
But, anyway; WOW!

abstauber

QuoteThere's a glitch though, you can't destroy blocks if you hit them closer to the edge, you need to ht them near the center.
Oh, that's on purpose and also applies to this bonus boxes. It somehow felt wrong when barely scraping the block triggered the action.


On a side note: If anyone likes to try out mappy, don't directly mirror an imported tile, but instead create a copy of it first. Otherwise the tilecode will get discarded.

Wyz

Good show! That didn't take you long either. ;D
Life is like an adventure without the pixel hunts.

abstauber

Quote from: Wyz on Tue 18/05/2010 21:54:57
Good show! That didn't take you long either. ;D
Hehe, that's mostly because I didn't have to reinvent the wheel all over again (and also the reason for the "special thanks" section being so long ;) )

Shane 'ProgZmax' Stevens

FUCK YEAH!  Now if CJ allows dinput gamepads, we'll be well on our way to having old school jump and runs's!

Wonkyth

"But with a ninja on your face, you live longer!"

abstauber

#14
Yeah, direct input would be cool indeed. At least this would put AGS in favour of Gamemaker 6 ;D

Anyway, somehow I regret that I made this family compatible concept art and not some blood dripping, cementary zombie bashing stuff :\ But maybe I'll safe this for a later game.

The few of you who had a try with this: could you tell me something about your frame rates? I'm a bit worried, that PlaTENG might be too slow for serious entertainment. I've uploaded a new version, featuring some bugfixes and a fps counter.


Khris

I've mentioned this before; there's a free utility called JoyToKey; it maps gamepad input to keys and will run fine in the background while an AGS game is running.
And of course it's still possible to change the key mapping inside AGS.

Damn nice work btw, I'm going to download the newest version now!

abstauber

Updated to 0.6 thanks to Kaputtnik, who did some great testing.

@Khris
JoyToKey would of course do the trick for most of us, but I'm afraid you can't sell it to the masses ;)
Not that I would have such plans, but for most casual gamers "plug'n play" is pretty important.

Khris

True, but you could "hide" it and use a bat to run the game. The downside being of course, that running the game by winsetup wouldn't work any longer.

Since many people seem to have difficulties with choosing the best options for running a lowres game windowed or fullscreen, I sort of decided that, should I ever publish a serious game, I'd probably use two batchfiles, one for full screen, one for windowed (which simply overwrite acsetup.cfg before running the game).

On the other hand, native joypad support would be a great addition to AGS, of course.

abstauber

Using batch files is a neat idea.

Once I wanted to write my own replacement, but then I couldn't decide which language/toolkit to use without have the player to install runtime environments.

So batch could come pretty handy - would this work with as a vista standard user?

Khris

I tried it with a Win7 guest account and a 2.72 game (I'm at work).
Neither overwriting the cfg file nor running the game itself works without admin privileges, unfortunately.

The latter is a known issue; AGS tries to create the 999 savegame and fails.

abstauber

#20
Alright, thanks for trying. I'm glad that my game release will still take some time ;)

(damn those "new" OSes ;) )


Btw. has anyone already checked their frame rates?

tzachs

It was pretty steady for me on 40 FPS, when killing creatures and stuff it went down to 35 in the worst case and returned to 40.
When switching the inventory it goes down to 3 FPS and then comes back.

abstauber

Thanks for the feedback!
I bet you've tried it on a 486 DX/2 66 with a Tseng ET4000 *cough* ...   ;D

Great that it runs smoothly, a little more infos about your system specs would help even more :)

Btw. the "slowdown" on the inventory is because the FPS function runs in a ordinary rep_exec and the game pauses while the inventory is shown. So this should be no problem.

Wonkyth

Looked at the game yesterday, very neat!
There are a few things though, like not getting hurt while sliding...
"But with a ninja on your face, you live longer!"

abstauber

Not getting hurt while sliding is also on purpose :) Usually sliding means killing the enemies, but that made the game far too easy.
On the other hand hurting the player is highly annoying, because you can't control the player during the slide. It would also mean that you can get stuck while sliding underneath gaps. If you like to change that behaviour, just take a look at the function TENG::check_player_coll()


* abstauber wants to talk himself out of the other few things too ;D

tzachs

Quote from: abstauber on Mon 24/05/2010 20:18:51
Thanks for the feedback!
I bet you've tried it on a 486 DX/2 66 with a Tseng ET4000 *cough* ...   ;D
Be careful with what you say, I know where you live, and no aeronuts will be there to help you...
Quote
Great that it runs smoothly, a little more infos about your system specs would help even more :)
CPU Type:                Intel Pentium 4 630, 3000 MHz (15 x 200)  
System Memory:      2048 MB (DDR2-800 DDR2 SDRAM)  
Operating System:   Microsoft Windows XP Professional  Service Pack 2
Video Adapter:         NVIDIA GeForce 9400 GT (1024 MB)  

abstauber

QuoteBe careful with what you say, I know where you live, and no aeronuts will be there to help you...

When you do what? Drink all my beer? Be my guest :D

Quotecomputer specs
Oh... a frame drop by 5 even on this system  :o  Oh well, at least it seems to be playable.

Wonkyth

I'm getting a fine frame-rate on on the same as that, but without the graphics card, with one gig of RAM, and at 2.39GH, so there's nothing wrong with it at the moment, or for standard stuff anyway, it does seem to pause a little while inventorying.
"But with a ninja on your face, you live longer!"

abstauber

Good news!
I suppose when the first PLATENG featuring games are being released, most of today's netbooks are already broken ;D

abstauber

Just wanted to let you know, that I've included wiz' awesome joystick plugin.

If you hit F2 during gameplay you can choose your detected game controllers and assign the buttons. I've only tested it with my trustworthy Gravis Gamepad, so there are just "digital" movements.

I'm excited to hear how it works with your controllers!

(and by the way, this still doesn't run very well on Atom CPUs)

Wyz

Awesome!
I've tested it with my gamepad (Logitech Dual Action) and it works perfectly!
I've noticed a bug with the joystick indices in the plugin, so that's my fault really. I'll be fixing that. ;D
Life is like an adventure without the pixel hunts.

pl1x

Download is broken! Is there someone who have this engine? It is important! Have also written a PM to the Thread-Starter!

- Marcel / pl1x

abstauber


pl1x

Quote from: abstauber on Tue 02/04/2013 07:28:53
Here you go, I hope it didn't ruin your Easter Weekend

Nope, my Easter Weekend was great! Thank you!

- Marcel / pl1x

pixelincognito

I've been looking for an engine to develop a simple platformer concept idea and looked at Gamemaker and a few other alternatives but I've never noticed this. and seeing as I have a better understanding of AGS than most other engines I'm intrigued to give this a go :) I downloaded the PlatEng and when I try to compile the test game I get an error?

Failed to save room room1.crm; details below
MapJoy.ash(12): Error (line 12): expected variable or function after import, not 'Joystick'

I'm using AGS 3.3 and was wondering if that had anything to do with the compile error? I understand this is a very old thread and support for this probably no longer exists but I thought it was worth a punt.

M

abstauber

QuoteMapJoy.ash(12): Error (line 12): expected variable or function after import, not 'Joystick
That's because you need the joystick plugin in AGS. I've also made some more progress (way more to be honest) with this project, but nothing I released to the public yet.
Expect a PM soon :)





Two Tales

Quote from: abstauber on Thu 07/01/2016 09:54:34
QuoteI've also made some more progress (way more to be honest) with this project, but nothing I released to the public yet.
Expect a PM soon :)

This is very intriguing indeed.

I downloaded from the link a few posts up about an hour ago to check it out. I messed up some of the script while playing around and decided to download it again a few minutes ago and suddenly the link is broken...What's the chances of that!

Edit: link working again this morning <scratches head>.

SMF spam blocked by CleanTalk