Platformer Starter Kit Pro
by Phillip O'Shea · 02/06/2009 (3:54 pm) · 21 comments
Welcome to my first blog post this year! I was recently relieved of my day job, so I have decided to focus on full-time game/tools/kit development for a while. Fingers crossed I survive!
Onto the matter at hand!
Some of the current PSK users will have already noticed that the actors used in the kit basically run a form of collision detection via Torque Script. It is definitely not the most ideal solution around, as it is incredibly inefficient to perform. Another area that requires considerable improvement is spawning objects. At the moment each spawn point performs an update each frame and determines how far the camera is away from the underlying object. Another nasty piece of work right there!
I am going to take this time to stress that the current PSK works well on PCs and Macs, but it is when we move to some of the less powerful devices like the Wii, Xbox360 or the iPhone that it struggles.
In light of this, I solved some of these issues by converting a number of behaviors to source. This spawned the Platformer Starter Kit Pro! There are 13 source files used, 4 new objects and a number of tweaks to the engine code:
My two biggest concerns with the efficiency of the kit have been taken care of with the above changes. But what does this mean for non-pro users? An update is now available which contains the binary executables (TGB 1.7.4 + PSK Pro) and relevant scripts so that you can reap the benefits, without having to upgrade! Remember though, you will not have access to the source, unless you upgrade!
You can pickup the upgrade from the regular PSK product page here. The PSK forum is open to the public as well, so if you have any comments, questions or concerns feel free to pop on over and plug away!
With all of that out of the way... PSK v1.1.0 is here!
With the exception of basic pathing mechanisms, most of the above changes are minor, but were needed. As always, I love criticism, so feel free to give me any suggestions for future releases (either bug fixes or added features).
I'd like to give a shout out to Derek B. and Ken, you guy are awesome! Thanks for making this possible!
Documentation
Thankfully, many of the processes of creating a level or actor remain unchanged and if you are familiar with the PSK at the moment, you shouldn't have too many issues with it. I am still in the process of updating the documentation and will be talking to Michael Perry about what I am doing to them very soon. So, if you can just hold off for a few days, I should hopefully have a full outline of what has changed in the creation process and updated docs.
Futher Announcements
I have a number of PSK related, yet to be announced projects. I really enjoy working with the PSK and will continue to do so. When I have more to show for my work, I will let everyone know!
A networkable version of the PSK is still coming, I promise. Hopefully I will be able to talk more about that over the next few months... *shifty eyes*
Update
The preliminary documentation page is now up. It covers the most pertinent changes you may need to make when upgrading the PSK.
You can view the doc here.
If anything needs clarifying, let me know and I will get onto it!
Onto the matter at hand!
Some of the current PSK users will have already noticed that the actors used in the kit basically run a form of collision detection via Torque Script. It is definitely not the most ideal solution around, as it is incredibly inefficient to perform. Another area that requires considerable improvement is spawning objects. At the moment each spawn point performs an update each frame and determines how far the camera is away from the underlying object. Another nasty piece of work right there!
I am going to take this time to stress that the current PSK works well on PCs and Macs, but it is when we move to some of the less powerful devices like the Wii, Xbox360 or the iPhone that it struggles.
In light of this, I solved some of these issues by converting a number of behaviors to source. This spawned the Platformer Starter Kit Pro! There are 13 source files used, 4 new objects and a number of tweaks to the engine code:
* Actor Behavior has been moved to a new t2dSceneObject class "pskActor".
* Animation Manager has also been moved to source.
* Spawn Point Manager detects which spawn points need updating.
* Spawn Point Behavior has been moved to Component form.
* Platform Behavior has been moved to Component form.
* Source based Finite State Machine.My two biggest concerns with the efficiency of the kit have been taken care of with the above changes. But what does this mean for non-pro users? An update is now available which contains the binary executables (TGB 1.7.4 + PSK Pro) and relevant scripts so that you can reap the benefits, without having to upgrade! Remember though, you will not have access to the source, unless you upgrade!
You can pickup the upgrade from the regular PSK product page here. The PSK forum is open to the public as well, so if you have any comments, questions or concerns feel free to pop on over and plug away!
With all of that out of the way... PSK v1.1.0 is here!
[Version 1.1.0]
[Bug Fixes]
- ActorBehavior:
Now correctly handles "AllowBounceJump"
- GameMethods:
Fixed the creation of a rotation matrix
[Improvements]
- GameMethods:
Added a number of functions to help interface with PSK Pro
Added the parallax alternative method
- ActorBehavior:
Added basic pathing:
ActorBehavior::pathToPoint(%targetPoint, %autoStop, %callBack, %targetMargin);
ActorBehavior::updatePathTarget();
ActorBehavior::processPathTarget();
Added reference functions for getting and setting Animation States.
Added functions to clear various states
ActorBehavior::clearOnGround();
ActorBehavior::clearClimbing();
ActorBehavior::clearGliding();
Added a bounce function:
ActorBehavior::bounce(%force, %angle);
Added X/Y axis movement for ladder climbing
Changed the way gliding is handled
- ActorAnimationBehavior:
Reduced Animation code.
- AreaDamageBehavior:
Added "onAreaDamage" callback
- FallingPlatformBehavior:
Reduced update complexity, now works on a single schedule timer.
- PlatformBehavior:
Added function to determine the surface point of a world coordinate:
PlatformBehavior::getSurfacePosition(%worldPositionX);With the exception of basic pathing mechanisms, most of the above changes are minor, but were needed. As always, I love criticism, so feel free to give me any suggestions for future releases (either bug fixes or added features).
I'd like to give a shout out to Derek B. and Ken, you guy are awesome! Thanks for making this possible!
Documentation
Thankfully, many of the processes of creating a level or actor remain unchanged and if you are familiar with the PSK at the moment, you shouldn't have too many issues with it. I am still in the process of updating the documentation and will be talking to Michael Perry about what I am doing to them very soon. So, if you can just hold off for a few days, I should hopefully have a full outline of what has changed in the creation process and updated docs.
Futher Announcements
I have a number of PSK related, yet to be announced projects. I really enjoy working with the PSK and will continue to do so. When I have more to show for my work, I will let everyone know!
A networkable version of the PSK is still coming, I promise. Hopefully I will be able to talk more about that over the next few months... *shifty eyes*
Update
The preliminary documentation page is now up. It covers the most pertinent changes you may need to make when upgrading the PSK.
You can view the doc here.
If anything needs clarifying, let me know and I will get onto it!
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.
#2
02/06/2009 (6:55 pm)
There is nothing platform dependent in the source mods.
#3
I know your trying to survive, we all are :) but does charging another $50 for slapping the word Pro on a few new changes really justify the price hike? To me, I say no, and will continue working with the non pro side of this kit. But thanks anyways for letting us know there is a new version out, I wish you the best and continued success with the kit. Hope you get back on your feet soon with a new job.
Will
dlstorminc@yahoo.com
02/06/2009 (8:13 pm)
Sorry to hear about your day job, every one seems to be losing their job now. As far the pack, with as little as seems to be updated to this pack, the price jump from non pro to pro seems a bit steep I think. Shouldn't the full update been released for free to us non pro users? Don't get me wrong but paying out another $50 (to bring the tally to $100) for the kit with the way money is right now for most everyone, just seems a bit steep for what you get in the end with the source.I know your trying to survive, we all are :) but does charging another $50 for slapping the word Pro on a few new changes really justify the price hike? To me, I say no, and will continue working with the non pro side of this kit. But thanks anyways for letting us know there is a new version out, I wish you the best and continued success with the kit. Hope you get back on your feet soon with a new job.
Will
dlstorminc@yahoo.com
#4
I'm not pushing people to buy it, I just want to address some of the outstanding issues with the product.
There may not be much added, by way of features, but I honestly feel that this is a valuable change not just for those who pay for it either.
02/06/2009 (10:00 pm)
Not everybody is going to need to update to the pro version, but everybody will benefit from it. The original version is definitely appropriate for the majority of users, and my efforts will focus on extending the usability of the kit for all users. The fact that everything had to be done in script was a huge limitation. It also meant that a lot of people looking to use the PSK on the iPhone simply couldn't. But for those users who are looking to release a game using the kit, having access to such efficiencies will be of value.I'm not pushing people to buy it, I just want to address some of the outstanding issues with the product.
There may not be much added, by way of features, but I honestly feel that this is a valuable change not just for those who pay for it either.
#5
Melv.
02/07/2009 (6:54 am)
It'll never get done if you spend so much time chating online with me. *shifty eyes*Melv.
#6
I think the upgrade cost is justified, and I look forward to helping out with the documentation aspect. Make sure you post in the iTGB forums, if you haven't already.
@Melv - *shifty eyes*
02/07/2009 (12:11 pm)
@Phil - Nice release! I can't wait to try this out in iTGB =)I think the upgrade cost is justified, and I look forward to helping out with the documentation aspect. Make sure you post in the iTGB forums, if you haven't already.
@Melv - *shifty eyes*
#7
@Michael - The iTGB port isn't complete, I'll let everyone in on the action when I get it working properly.
02/07/2009 (3:42 pm)
@Melv - Its your fault, thats my story and I am sticking to it.@Michael - The iTGB port isn't complete, I'll let everyone in on the action when I get it working properly.
#9
A networkable version of the PSK is still coming, I promise.”
Rest assured we will hold you to these promises! ; )
02/09/2009 (7:08 am)
“I have a number of PSK related, yet to be announced projects. I really enjoy working with the PSK and will continue to do so. When I have more to show for my work, I will let everyone know! A networkable version of the PSK is still coming, I promise.”
Rest assured we will hold you to these promises! ; )
#10
(as long as it follows real soon {not "DAZ soon". ; ) } )
One can get things started and get more familiar with the system when the docs come out.
As for getting the Pro version, I will have to put that off as I was "relieved" some time back. So until I get "burdened" again I have to make due with what I have. : )
02/09/2009 (7:59 am)
There are those that will complain about releasing an item and not the documentation at the same time. I feel it is fine to release an update with the promise of updated documentation to follow real soon,(as long as it follows real soon {not "DAZ soon". ; ) } )
One can get things started and get more familiar with the system when the docs come out.
As for getting the Pro version, I will have to put that off as I was "relieved" some time back. So until I get "burdened" again I have to make due with what I have. : )
#12
The high price of the pro update is somewhat disappointing.. :(
Of course there was alot of work for you, but if it continues like this, the PSK will be more expensive than the TGB itself.
02/18/2009 (1:46 pm)
"In my opinion, a networkable version of the PSK will justify the $50 price tag. Just remember that all future upgrades will be free to all TGB PSK users!"The high price of the pro update is somewhat disappointing.. :(
Of course there was alot of work for you, but if it continues like this, the PSK will be more expensive than the TGB itself.
#13
02/18/2009 (4:26 pm)
Any update on when the package will be ready for iPhone?
#14
Simon: I have something working now, the project really needs tidying up though.
02/18/2009 (4:32 pm)
Micha: I certainly hope that that isn't the case!Simon: I have something working now, the project really needs tidying up though.
#15
02/18/2009 (5:09 pm)
Do you have an ETA?
#16
03/05/2009 (12:53 pm)
Any update Phillip on a release date for iPhone?
#17
My port does some of this at the moment, but I don't have a release date for it.
03/05/2009 (12:56 pm)
You could actually run the PSK Pro on the iPhone now. You would have to make some adjustments here or there, as well as work out a control style.My port does some of this at the moment, but I don't have a release date for it.
#18
Adjustments, what and where?
What kind of frame rates are you getting on the iPhone?
03/05/2009 (1:07 pm)
Adjustments, what and where?
What kind of frame rates are you getting on the iPhone?
#19
03/05/2009 (1:48 pm)
Simon, throw me an email, [snip]
#20
06/02/2009 (5:12 am)
Hi Phillip, is this port done and is there any documentation how to set things up for iPhone? 
Torque 3D Owner Dave Young
Dave Young Games