Search Unity

[RELEASED] Advanced Platformer 2D

Discussion in 'Assets and Asset Store' started by UPhys, May 14, 2014.

  1. UPhys

    UPhys

    Joined:
    Oct 30, 2013
    Posts:
    23


    Make your own 2D platformer!

    Advanced Platformer 2D is a complete toolkit package dedicated to 2D platformer video games using Unity game engine.

    For beginners and experienced users, it is made of a full set of features to help you creating your own 2D platformer.

    Use available sample objects or create yours. Quickly customize behaviors with user interface settings or do some scripting for more advanced customization.


    Please check Website for more information!



    Features
    • Optimized for 2D : it only uses Unity 2D native objects included from version 4.3 (physic, sprites, animations....).
    • Real kinematic character : movement is entirely controlled and mastered (not using physic dynamic motion).
    • a 2D character raycast "move and collide" toolkit => used to move a character in kinematic motion and collide properly with environment
    • a complete character controller for common behaviors : walk, jump, slide, crouch, wall jump...
    • many game objects & toolkits : camera, ladders, railings, moving platforms, parallax scrolling, finite state machine...
    • powerful and generic melee/ranged attack mechanism
    • full user interface setup : configure everything immediately
    • lots of prefabs objects to help you create your game quickly, including sprites & animations sets
    • samples scripts to initiate begginers and advanced users on how to create custom behaviors and interactive objects
    • EasyTouch asset support for touchpad management (only if bought, otherwise add your own plugin quickly if needed)
    • all Youtube demo and tutorial levels included
    • full C# accessible source code, optimized and documented
    • quick support and custom development

    Follow me on YouTube channel and have some play test on provided web player Demo levels.
    Don't forget to have a look at the full Documentation page and the Changelog for more details.
    Contact me for any needs, suggestions, bugs or remarks.


     
    Last edited: Jul 25, 2014
  2. p6r

    p6r

    Joined:
    Nov 6, 2010
    Posts:
    1,158
    Very very good asset !!!
    A lot of possibilities for any platformer.
    Great job...
    6R
     
    UPhys likes this.
  3. sefou

    sefou

    Joined:
    Aug 30, 2011
    Posts:
    287
    Work perfectly with famous terrain 2D editor : Ferr2D. :)
     
    UPhys likes this.
  4. UPhys

    UPhys

    Joined:
    Oct 30, 2013
    Posts:
    23
    Hi,
    Finally 1.3 is out !
    You can check it here : http://u3d.as/6A6

    New features :
    - Ranged attack mechanism
    - Force move
    - New level : Ranged Attack
    - New samples and prefab : GUI, Collectables (life, ammo)
    - Minor bugfixes reviews

    Check documentation on website for details.
    Please tell me if any mistakes encoutered during the update, some prefabs have been renamed.
    Enjoy the new ranged attack mechanism, any feedback will be greatly appreciated !
     
    Last edited: Jun 11, 2014
  5. msbranin

    msbranin

    Joined:
    Jan 19, 2009
    Posts:
    104
    This asset is getting better and better every time. Excellent job!!
     
    UPhys likes this.
  6. goranobradovic

    goranobradovic

    Joined:
    Mar 11, 2014
    Posts:
    16
    Fully agree with msbranin - this asset is getting better and better with every release. Hopefully touch support and one way platforms support are coming soon. Great asset.
     
    UPhys likes this.
  7. UPhys

    UPhys

    Joined:
    Oct 30, 2013
    Posts:
    23
    Hi all !

    New version 1.4 is released !

    New features :
    • Review inputs to handle plugin
    • Add support for EasyTouch asset plugin for quick and easy touchpad management
    • Camera review (v1)
    • Allows character rotation and ground alignment
    • Down slope sliding
    • Air/ground rotation setting
    • Review existing samples and add new ones (MovingObject, Spikes, CollectableCoin)
    • Start jump animation only when needed (allows in air up/down animation, see incoming Youtube tutorial)
    • Add crouch stuck escape feature (thanks to John)
    • Fix ranged attack bullet direction
    • Carrier script now handles properly fixed time step updates
    • Review some internal states management
    • Minor bugfixes and tweaks

    Please be aware of two things :
    1. Input management has been refactored. You must rebind you keys ! Sorry for this but this should not be too long for now. This was really needed to handle input plugins properly such as EasyTouch for touchpad management.
    2. I'm going on vacations for 2 weeks, so I won't be able to adress any issue with this new version. So please make a backup before updating !
    You can check new documentation page here : https://sites.google.com/site/advancedplatformer2d/doc
    Changes made to this page have an orange color background.

    New samples have been made too. I don't have time to document it, but simply check prefabs using it.
    From now, all prefabs using a Sample script are located in prefabs/samples directory.

    Enjoy this new release. I really hope you won't have any issue.
    And please take time to write a small review on asset store, this helps me a lot :D

    PS: Youtube tutorials with voice comments inside will come soon ;-)
     
  8. Ylex

    Ylex

    Joined:
    Apr 9, 2012
    Posts:
    15
    Hi, any plans for ropes in this asset?
     
  9. UPhys

    UPhys

    Joined:
    Oct 30, 2013
    Posts:
    23
    Hi

    This is planned in release 1.7.
    You can count on it in about 2 or 3 months. Sorry for this but many requests are still pending, I must keep users requests order.

    Thank you for your interest. Please stay tuned !
     
    Ylex likes this.
  10. UPhys

    UPhys

    Joined:
    Oct 30, 2013
    Posts:
    23
    Hi all !

    1.5 version is out !
    Lots of new features, samples and bugfixes in it :

    Version 1.5 :
    • Updates to Unity 4.5
    • Add character shifting ability (+ sample script for breaking crates with vertical down jump)
    • Add "OneWayGround" ability (i.e collide only from top of object) + down jumping
    • Add AirJump horizontal impulse ability
    • Add MaxSlope for ground align
    • Fix some jittering when using ground align with complex meshes
    • Add EventListeners class object for character events notification + add Audio management sample script
    • Refactorize APInput (add Holders & Releasers special buttons)
    • Review some samples scripts (optimization due to fix within Unity 4.5, bugfixes, new features)
    • Add new samples for fadeToblack and loading level feature
    • Unity inputs & plugin inputs can now be used at the same time during play mode
    • Review uncrouch minspeed feature
    • Review Standard state animations launching (now launch animation only once!)
    • Reorganize files and folders tree structure
    • Lots of bugfixes, refactorizations and tunings
    You can check new documentation page here : https://sites.google.com/site/advancedplatformer2d/doc
    Changes made to this page have an orange color background.

    Lots of people are looking for more tutorials and videos on Youtube, so then I will work onto this during next weeks (this will delay 1.6 release date).

    Enjoy!
     
    msbranin likes this.
  11. goranobradovic

    goranobradovic

    Joined:
    Mar 11, 2014
    Posts:
    16
    Hi,
    Plugin is getting better and better. Additions of EasyTouch and OneWayGround are awesome. Agree that more tuts and samples will help us beginners.

    Question - I could not find in the updated docs (for 1.5 release) what is the meaning of Holders and Releasers settings in Run Button settings. I have EasyTouch Button plugin connected and new input created for it. However I am not sure what the Size for holders/releasers settings should be.

    For regular horizontal movement I have connected EasyTouch Joystick and that works great on iOS devices.

    Thanks for all hard work and great product.
     
  12. UPhys

    UPhys

    Joined:
    Oct 30, 2013
    Posts:
    23
    Hi Goran,

    Thanks for your feedback, this is always great to see that people are happy :)
    You are right, documentation for Holders & Releasers in Input settings is missing.

    In fact this feature is still work in progress (but working for non native Unity inputs), but to explain it quickly, it is used to add conditions to your input button action.

    For example, if you need that an additional button is pushed while you are pushing your button in order to launch an action or on the opposite, you want the player to ensure that a certain button is not pushed (released) while acting a particular input.

    A nice example is the downjump action (shift down feature). You want player to launch shift down if pushing down axis and jump button at the same time while in air. On the other way, you wake to make sure that player is releasing down axis to allow him to do an air jump.

    Again, I will make tutorials and one will concern this part. Sorry for the delay, I'm quite busy these days but I promise that new stuff will come soon.

    Stay tuned !
     
  13. UPhys

    UPhys

    Joined:
    Oct 30, 2013
    Posts:
    23
    Hi all,

    There is a bug with Stand animation on 1.5.
    Sometimes the animations is not played and just stays at first frame.
    I will release a 1.5.1 soon to fix this issue.
    I'm very sorry for inconvenience.
     
  14. UPhys

    UPhys

    Joined:
    Oct 30, 2013
    Posts:
    23
    1.5b is out with urgent fixes.
    Please save you project setting files before updating as they will be overwritten by the update.

    Version 1.5b :
    • Fix invalid speed with Stand and InAir animations
    • Fix friction issues
    • Add StopOnWall feature for walk/run
     
  15. UPhys

    UPhys

    Joined:
    Oct 30, 2013
    Posts:
    23
    The first steps tutorial is done.
    Please be kind with my first "with french accent voice" tutorial ;)
    Now I know how hard it is to make a nice looking tutorial with voice in it.
    I hope new users will like it.

     
  16. UPhys

    UPhys

    Joined:
    Oct 30, 2013
    Posts:
    23
    Hey!

    New release is out today.
    Minor but important changes below.

    Version 1.5c :
    • Carrier script review (you may need to update your animation/script settings, please check online documentation)
      • now handle rotation properly
      • update is now done at fixed timestep
      • collision detection with environment is now valid (no more teleport)
    • Ground alignment review : more precise and smooth, prevent imprecision and unstable issues
    • Add animation parameters to be used by animator for custom animation behavior
    Cheers
     
  17. UPhys

    UPhys

    Joined:
    Oct 30, 2013
    Posts:
    23
    Hey,

    New hot fixes release is out.
    Some of you were having urgent issues to fix, so here it is :

    Version 1.5d :
    • Fix stuck sometimes in ranged/melee attack states
    • Add animation end detection for melee/ranged attack + remove useless LeaveXXX methods (you may need to update your attack animations)
    • Fix front blocking wall detection
    • Inputs plugins for PlayMaker
     
  18. Unimatrix

    Unimatrix

    Joined:
    Sep 15, 2014
    Posts:
    8
    Does this work with 2D Toolkit?
     
  19. UPhys

    UPhys

    Joined:
    Oct 30, 2013
    Posts:
    23
    Hey,

    Only native Unity 2D objects are supported. 2D Toolkit is not supported for the moment, i'm afraid this will not happen, unless lots of people request it.
    Sorry for this.

    Cheers,
     
  20. NoradZero

    NoradZero

    Joined:
    Apr 24, 2014
    Posts:
    95
    Sad. I would have been interested too for a 2D toolkit support.
     
  21. PeterShoferistov

    PeterShoferistov

    Joined:
    Sep 22, 2013
    Posts:
    59
    Hey!
    This controller looks great, thinking about using it in my new game. Hope to see the ropes support soon :)
     
  22. goranobradovic

    goranobradovic

    Joined:
    Mar 11, 2014
    Posts:
    16
  23. UPhys

    UPhys

    Joined:
    Oct 30, 2013
    Posts:
    23
    Hey,

    I know this is taking lot of times, don't worry i'm working on it.
    Some of new features needs some work in order to be really good, and I can't allow myself to release an incomplete or unsatisfying set of features. I hope this will be released in few weeks.

    Stay tuned.

    Cheers,
     
  24. pumpkinszwan

    pumpkinszwan

    Joined:
    Feb 6, 2014
    Posts:
    214
    This question is probably going to make me seem dumb ;), but how can I intercept (or act upon) certain inputs.

    Specifically I want to detect when the player pushes 'up' on their controller so they can enter a door. I'm new to character controllers and I'm having a hard time figuring out what is happening in the APCharacterController script.

    Awesome asset by the way. It has a great feature set.
     
  25. UPhys

    UPhys

    Joined:
    Oct 30, 2013
    Posts:
    23
    Hey,

    This is more a generic question than related to my asset.
    You will have to make a new script, and check inside when a particular input is pressed.
    Then at this time, you have to check if your character is inside a particular zone in order to launch a specific process.
    I think you will have to do some learning about gameplay programming. Start with Unity documentation (http://docs.unity3d.com/Manual/CreatingGameplay.html) and check if more samples are available.
    I'm sure you will find tons of tutorial for this kind of scenario. Come back to me if something is wrong with the character script, but normally this should be completely independent.
    Thank you for your feedback.
     
  26. pumpkinszwan

    pumpkinszwan

    Joined:
    Feb 6, 2014
    Posts:
    214
    Cool, thanks. I easily got it working in that way, but I thought you'd implemented something different to the 'Input.GetAxis' type stuff and didn't want my code to get in the way of the toolkit's code. I guess I overthought it!

    thanks
     
  27. xdotcommer

    xdotcommer

    Joined:
    Aug 20, 2014
    Posts:
    33
    Is it possible to place physics materials (bounce) on the ground so that the player bounces off surfaces? Especially angled surfaces... It appears that since the plugin uses raycasting traditional physics like this is not possible. Is that true? Is there anyway to emulate it with the appropriate angle of incidence and reflection for the player landing and bouncing off a surface?
     
  28. UPhys

    UPhys

    Joined:
    Oct 30, 2013
    Posts:
    23
    You can still use my API to access to internal inputs used by CharacterController :

    APCharacterController myCharacter => find a way to retrieve your character, with ref in your own script.
    float fVerticalAxis = myCharacter.m_inputs.m_axisY.GetValue();

    This will give you the current vertical axis value of the vertical inputs defined in Inputs settings of the character.
    Maybe this can help.
     
  29. UPhys

    UPhys

    Joined:
    Oct 30, 2013
    Posts:
    23
    You are right, if you want bounce effect you will have to code it yourself.
    But this is very simple, I just implemented a sample of Bouncy object (like jumper in Mario or Sonic), this will be included in release 1.6, which is almost finished and should be out soon. If you prefer a bouncy surface, I could implement a special material for this. Tell me if needed, I can put this feature in release 1.6a.
    Please keep informed.

    Cheers,
     
  30. xdotcommer

    xdotcommer

    Joined:
    Aug 20, 2014
    Posts:
    33
    Bouncey surface material would be awesome!
     
  31. UPhys

    UPhys

    Joined:
    Oct 30, 2013
    Posts:
    23
    Added in 1.7 (or 1.6a) backlog.
     
  32. Darkhitori

    Darkhitori

    Joined:
    Jan 7, 2015
    Posts:
    16
    Just wanted to know if you can add a Wall Run feature also!
     
  33. UPhys

    UPhys

    Joined:
    Oct 30, 2013
    Posts:
    23
    Hey,

    I will think of it for the next release.
    Please if you have any game sample of what you really need this would be perfect.
     
  34. UPhys

    UPhys

    Joined:
    Oct 30, 2013
    Posts:
    23
    New version 1.6 is out now!
    Sorry for this long delay, but the EdgeGrab feature took a lot of time.
    Please have a look on my Youtube presentation video for this release.
    I hope you will be happy with this.

    Version 1.6 :
    • Add Edge Grab feature
    • Add Jumper game object
    • Add Edge Sliding feature
    • Add backward animation support when autorotate is off
    • Fix rays penetration value after velocity/position correction on motor move
    • Fix jump max height ugly behavior
    • Fix camera Face Lead stiffness
    Now i'm thinking of the 1.7 release.
    Enjoy!
     
  35. xdotcommer

    xdotcommer

    Joined:
    Aug 20, 2014
    Posts:
    33
    Hey, just to check - Is the jumper game object the bouncy surface?
     
  36. UPhys

    UPhys

    Joined:
    Oct 30, 2013
    Posts:
    23
    No but this is a good starting point if you can't wait for 1.7 and want to do it yourself ;)
     
  37. Darkhitori

    Darkhitori

    Joined:
    Jan 7, 2015
    Posts:
    16
    @UPhys you know a cool vertical wall run that can connect to the new edge grab feature and also to wall jumping!!!
     
  38. xdotcommer

    xdotcommer

    Joined:
    Aug 20, 2014
    Posts:
    33
    @UPhys one more question. If I want the character's animations / sprite to be a little lower than the raycast - so the ground appears a little above their feet... how do I do that?

    I can adjust the APCharacterMotor's Ray Ground Penetration, but then the character won't move.
     
  39. AnonDreamer

    AnonDreamer

    Joined:
    Oct 28, 2014
    Posts:
    30
    @xdotcommer it should be fine if you change the "Render" gameObject y position (normally it's the child of your player)

    @UPhys do you plan on implementing pushable objects ?Do you have some advice on how i should implement them ?
     
  40. goranobradovic

    goranobradovic

    Joined:
    Mar 11, 2014
    Posts:
    16
    After many months with this asset and some experiments with other similar assets, this one is still the best 2D platformer asset. Now I would suggest couple of new features if possible:
    - jatpack with fuel management and particle effects
    - swimming or better say diving for main character
    - teleporter gates to move from one area of the level to the other.
    - procedural level generation or some hints how to make this and not use tiles
    - weapons management with multiple weapons (like you can "buy" or earn new weapons and tap a button to select the new weapon from your inventory). Or player can collect the new weapon in the level to acquire it.
    - simple enemy AI - for NPCs and obstacles (enemy wanders and than when it seas the player character it moves toward it and attack or fire)
    - Mission management - like find a key or other object (one or more) to get to the next level
    - Level checkpoints - like pass 3 checkpoints to get to the next level.
    - UI and HUD based on new 4.6 GUI system for health bars and collectibles. Basic menu system (start, pause, )
    - Inventory system, achievements, missions, in-game purchase.

    Of course most of this we (users of your asset) can make ourselves as maybe those are game specific you would say. However, we also have to understand where the asset is going and Trello roadmap is not always clear enough (and I have to admit not so rich anymore). In essence, if we do something, your next update can break it or have better solution for the problem. If possible let us know your thoughts and what to expect. Will help us know how to plan. And as I said, thank you for this asset. I still consider myself a beginner and your asset is of great help. Thanks.
     
  41. hcwork

    hcwork

    Joined:
    Sep 11, 2012
    Posts:
    72
    Having some trouble getting the Edge Grab to work. I am trying to use the prefabs included. I checked the layers and all looks right. Can you direct me?
     
  42. zwickarr

    zwickarr

    Joined:
    Nov 20, 2012
    Posts:
    28
    @UPhys Hello, I am enjoying your asset. I am trying to add downward attack (like Shovel Knight) and I created my animation and animation state and I am using that in the "In Air Down" field in the Animations section within the AP Character Controller but my animation is not playing. What am I missing?

    thanks,
    z
     
  43. zwickarr

    zwickarr

    Joined:
    Nov 20, 2012
    Posts:
    28
    to reply to my own post. Under "Melee Attacks" I just added another element, changed the Button name to "Down" and entered in the animation state in the "Anim In Air" field.
     
  44. Darkhitori

    Darkhitori

    Joined:
    Jan 7, 2015
    Posts:
    16
    @UPhys was wondering if you could implement a combo system with the Melee Attacks and also Blocking if possible!
     
  45. Charlie_T

    Charlie_T

    Joined:
    Feb 13, 2015
    Posts:
    58
    Hi,

    This package for both PC and mobile or only PC?

    Thanks
     
  46. zenGarden

    zenGarden

    Joined:
    Mar 30, 2013
    Posts:
    4,538
    Hi, the asset is really awesome , thank you for making it.

    I have some issue :
    When i scale up the rounded ball ennemy we can jump on it , if i scale physics collision shape also, when i launch the game the ennemy is returned to it's original side ? do you have some idea of the problem ?
    I tried to make a new prefab with only the size changed for the prite and it's collision shape, but it do'nt sacle up when i run game.
    I got this console error :
    NullReferenceException: Object reference not set to an instance of an object
    APSampleBlob.OnCharacterTouch (.APCharacterController character, RayType rayType, RaycastHit2D hit, Single penetration, .APMaterial hitMaterial) (at Assets/AdvancedPlatformer2D/scripts/Samples/APSampleBlob.cs:152)
    APCharacterMotor.MoveVertical (UnityEngine.Vector2& moveOffset, Boolean bDown, Boolean bCorrectPos) (at Assets/AdvancedPlatformer2D/scripts/APCharacterMotor.cs:427)
    APCharacterMotor.Move () (at Assets/AdvancedPlatformer2D/scripts/APCharacterMotor.cs:293)
    APCharacterController.UpdateController () (at Assets/AdvancedPlatformer2D/scripts/APCharacterController.cs:376)
    APCharacterController.FixedUpdate () (at Assets/AdvancedPlatformer2D/scripts/APCharacterController.cs:307)




    Also i have some suggestions and ideas to make it come more complete :
    - Player able to walk when in crouch mode (metroid , guacamelee etc ... )
    - Player able to glide in the air
    - Player able to shoot vertically up and down, also in 8 directions

    - grenade projectile behaviour
    - Fireball bouncing behaviour like in Mario games whe nmario has the flower costume

    - Hazard areas causing damage when the player touch them

    - Ennemies able to follow a path of points in a linear motion or smoothed curves motion
    - Ennemies able to shoot the player like turrets
    - Ennemies grounded and aerial able to follow when the player is coming near at some distance

    - Water areas with simple water simulation
    - Player able to swim and jump out of water


    Keep up the good work.
     
    Last edited: Aug 3, 2015
  47. xdotcommer

    xdotcommer

    Joined:
    Aug 20, 2014
    Posts:
    33
    @UPhys I am trying to implement a combination of a ladder and a carrier and I'm not sure how to do it. I want to be able to have balloons go by that you can jump and catch and ride. Do you have any suggestions for how to approach this?
     
  48. ULO

    ULO

    Joined:
    Aug 6, 2015
    Posts:
    17
    Hello! I have a question. I noticed the crate and cratex3 prefabs, and was trying to make a cratex2. I tried to figure it out but don't even know the name of what you did in the x3 crate is, nor did searching prefabs help. If you could point me in the right direction it would be much appreciated.
     
  49. UPhys

    UPhys

    Joined:
    Oct 30, 2013
    Posts:
    23
    Version 1.7.1 :
    • Add input for down jump on OneWayGround
    • Add setting to disable crouch
    • Fix OneWayground not working for slopes (i.e ignore a oneground if penetrating too much with it until we go out of it)
    • Add Axis constraints for Input buttons (needed with multi inputs actions, for example for down jumping with Jump button + Vertical axis down at the same time)
    • Fix player scaling not supported when building rays
    • Add options for Camera (FaceLeadMode + NoBackward)
    • Add ExplodeOnTouch option on Bullet
    • Add API for launching an attack manually by script at any time
    • Fix uncrouch detection zone
    • Remove Apply Root Motion as this can break ground alignment
    • Update to Unity 5.1.1
     
    jasonMcintosh likes this.
  50. FoxPT

    FoxPT

    Joined:
    Jul 5, 2012
    Posts:
    3
    I would really love to have this feature! Is there any way to do this at the moment?