Search Unity

[WIP] Platformer Pro

Discussion in 'Works In Progress - Archive' started by JohnnyA, Jan 19, 2014.

  1. JohnnyA

    JohnnyA

    Joined:
    Apr 9, 2010
    Posts:
    5,041
    LATEST VIDEO


    This thread will track progress via video updates.

    WIP 1 - A look at some of the improved movement for ladders and passthrough platforms.

     
    Last edited: Aug 5, 2015
    Croomraider and earthcrosser like this.
  2. JohnnyA

    JohnnyA

    Joined:
    Apr 9, 2010
    Posts:
    5,041
    Mobile users will be pleased to note ... v2 has no allocation (at the minor usability sacrifice of using layers instead of tags).

    I'll try and ensure this stays true for all the capabilities, although I expect along the way there may be a few where this isn't the case.

    (The on mouse stuff is the Unity editor)
     

    Attached Files:

  3. JohnnyA

    JohnnyA

    Joined:
    Apr 9, 2010
    Posts:
    5,041
    Platforms and triggers:

    [video=youtube_share;Ly071isZG0A]http://youtu.be/Ly071isZG0A​
     
  4. Orpheo

    Orpheo

    Joined:
    Jan 29, 2014
    Posts:
    1
    I'm confused about the pricing - If I were to buy the 2d platform control asset now, will I still have to pay an upgrade cost when the Platform PRO is released? Or am I incentivized to purchase it now and get this future upgrade for free?
     
  5. JohnnyA

    JohnnyA

    Joined:
    Apr 9, 2010
    Posts:
    5,041
    Updates:

     
    Last edited: Jul 29, 2015
    earthcrosser likes this.
  6. Aldwin

    Aldwin

    Joined:
    Feb 18, 2013
    Posts:
    12
    Hi Johnny,

    I'm really thinking about buying your package but I have a few questions :

    - I'm using 2D Toolkit package to handle sprites and I'm wondering if you have it and already tried to use your controller with ? I guess there's no reason they won't work well together but it's always good to ask if you know any incompatibility.

    - Is your controller able to handle a "square collider" (no "capsule" one) on righ-angled edge ? My game is a "retro/pixel" platformer and this "sharp" and precise collision feeling is very important.

    - If yes to the previous question, is the "square collider" able to walk on slope ? Without rotation ?

    Thanks !

    PS : I remember you comment my article on Gamasutra about my "hobbyist coder" approach for a 2D platformer controller. Your work looks definitely stronger and more optimized than mine so I would probably save a lot of time using it :)
     
  7. JohnnyA

    JohnnyA

    Joined:
    Apr 9, 2010
    Posts:
    5,041
    Hi Aldwin, loved your article. As to your questions:

    1. The existing version includes a 2D sample built with 2DTK. Play it here: http://jnamobile.com/samples/2DPlatformController/AlienSample.html

    2. It can be set up in a square shape and has pixel perfect falling off of the edges. The new version is even better as it corrects some of the minor issues in the previous version (e.g. snapping to the top of a passthrough platform). It also makes things ten times easier to set up.

    3. Collider can walk on slopes in the existing version but no rotation requires a little extra code. In the new version its handled natively... see the video above from 45 seconds onwards.

    Cheers,

    John A
     
  8. Aldwin

    Aldwin

    Joined:
    Feb 18, 2013
    Posts:
    12
    Hi Johnny, thanks a lot for your quick answers !

    But I have some few new ones, actually :

    - Is your jump system using some kind of "input call tolerance" ? I mean is a jump call registered when not grounded but very close to be ?

    - Do you implemented a tweakable "reactivity factor" when changing direction to avoid the "walking on ice" feeling ?

    - Is it possible (and easy) to just use your "collision system" and combine it with a custom "move/jump system" ? This his is the most important for me (if yes, no matter the 2 first questions actually!)

    Sorry fo all these questions ^^

    Cheers,

    Yoann
     
  9. JohnnyA

    JohnnyA

    Joined:
    Apr 9, 2010
    Posts:
    5,041
    Again it depends if you mean now or in Platformer PRO.

    1. Yes in both but better in PRO.

    2. I'm not quite sure which feel you mean. There are different movement systems in 2DPC. In 2DPC the PHYSICS_LIKE system has friction and acceleration which are configurable. The DIGITAL system applies velocity immediately. The DIGITAL_WITH_SLIDE system slides to a stop like a physics system but changes direction immediately when the user presses a key. For pro see 3.


    3. In Platformer PRO the movement system is completely pluggable. If you follow a specific pattern your movements will appear in the custom editor as first-class citizens exactly like the mvoements that come with the kit. You can also short-cut the process and implement only the movement part in which case you can drop the movement on the character and have it work, but it wont be quite as pretty :)

    Basically the main controller asks relevant movements if they want control. If they do they are given control until they decide to give it back. They can also optionally choose to apply base collisions (i.e. don't go through walls) if they want (amongst other things).

    So you could turn your character in to a tilt controlled ball until they go down a certain hole and then turn them back in to a normal person if you wanted.

    Here's the base movement class for reference (subject to change although probably wont):

    Code (csharp):
    1.  
    2. namespace PlatformerPro
    3. {
    4.     /// <summary>
    5.     /// This is the basic behaviour from which all movement behaviours are derived. To create your
    6.     /// own movement extend this class.
    7.     /// </summary>
    8.     public abstract class Movement : MonoBehaviour
    9.     {
    10.         #region members
    11.  
    12.         /// <summary>
    13.         /// Cached reference to the character.
    14.         /// </summary>
    15.         protected Character character;
    16.  
    17.         #endregion
    18.  
    19.         #region properties
    20.  
    21.         /// <summary>
    22.         /// Gets a value indicating whether this <see cref="PlatformerPro.Movement"/> expects
    23.         /// gravity to be applied after its movement finishes.
    24.         /// </summary>
    25.         virtual public bool ShouldApplyGravity
    26.         {
    27.             get
    28.             {
    29.                 return true;
    30.             }
    31.         }
    32.  
    33.         /// <summary>
    34.         /// Gets a value indicating the current gravity, only used if this
    35.         /// movement doesn't apply the default gravity.
    36.         /// <seealso cref="ShouldApplyGravity()"/>
    37.         /// </summary>
    38.         virtual public float CurrentGravity
    39.         {
    40.             get
    41.             {
    42.                 return 0.0f;
    43.             }
    44.         }
    45.  
    46.        
    47.         /// <summary>
    48.         /// Gets a value indicating whether this <see cref="PlatformerPro.Movement"/> expects the
    49.         /// base collisions to be executed after its movement finishes.
    50.         /// </summary>
    51.         virtual public bool ShouldDoBaseCollisions
    52.         {
    53.             get
    54.             {
    55.                 return true;
    56.             }
    57.         }
    58.  
    59.         /// <summary>
    60.         /// Gets a value indicating whether this <see cref="PlatformerPro.Movement"/> expects the
    61.         /// rotations to be calculated and applied by the character.
    62.         /// </summary>
    63.         virtual public bool ShouldDoRotations
    64.         {
    65.             get
    66.             {
    67.                 return true;
    68.             }
    69.         }
    70.  
    71.         /// <summary>
    72.         /// Gets the animation state that this movement wants to set.
    73.         /// </summary>
    74.         virtual public AnimationState AnimationState
    75.         {
    76.             get
    77.             {
    78.                 return AnimationState.IDLE;
    79.             }
    80.         }
    81.  
    82.         /// <summary>
    83.         /// Returns the direction the character is facing. 0 for none, 1 for right, -1 for left.
    84.         /// </summary>
    85.         virtual public int FacingDirection
    86.         {
    87.             get
    88.             {
    89.                 return 0;
    90.             }
    91.         }
    92.  
    93.         #endregion
    94.  
    95.         #region movement info constants and properties
    96.        
    97.         /// <summary>
    98.         /// Human readable name.
    99.         /// </summary>
    100.         private const string Name = "Movement";
    101.        
    102.         /// <summary>
    103.         /// Human readable description.
    104.         /// </summary>
    105.         private const string Description = "The base movement class, you shound't be seeing this did you forget to override MovementInfo?";
    106.        
    107.         /// <summary>
    108.         /// Static movement info used by the editor.
    109.         /// </summary>
    110.         public static MovementInfo Info
    111.         {
    112.             get
    113.             {
    114.                 return new MovementInfo(Name, Description);
    115.             }
    116.         }
    117.        
    118.         #endregion
    119.  
    120.         #region public methods
    121.  
    122.         /// <summary>
    123.         /// Initialise this movement and retyrn a reference to the ready to use movement.
    124.         /// </summary>
    125.         virtual public Movement Init(Character character)
    126.         {
    127.             this.character = character;
    128.             return this;
    129.         }
    130.  
    131.        
    132.         /// <summary>
    133.         /// Initialise the movement with the given movement data.
    134.         /// </summary>
    135.         /// <param name="character">Character.</param>
    136.         /// <param name="movementData">Movement data.</param>
    137.         virtual public Movement Init(Character character, MovementVariable[] movementData)
    138.         {
    139.             Debug.LogError("The Movement class shouldn't be initialised with movement data. Did you forget to override the Init method?");
    140.             return this;
    141.         }
    142.  
    143.         /// <summary>
    144.         /// Moves the character.
    145.         /// </summary>
    146.         virtual public void DoMove()
    147.         {
    148.  
    149.         }
    150.  
    151.         /// <summary>
    152.         /// If this is true then the movement wants to maintain control of the character even
    153.         /// if default transition conditions suggest it shouldn't.
    154.         /// </summary>
    155.         /// <returns><c>true</c> if control is wanted, <c>false</c> otherwise.</returns>
    156.         virtual public bool WantsControl()
    157.         {
    158.             return false;
    159.         }
    160.  
    161.         /// <summary>
    162.         /// Determines whether this character is grounded. Only applied if ShouldDoBaseCollisions returned false this frame.
    163.         /// Else the IsGrounded() method from the base collisions will be used.
    164.         /// </summary>
    165.         /// <returns><c>true</c> if this character is grounded; otherwise, <c>false</c>.</returns>
    166.         virtual public bool IsGrounded()
    167.         {
    168.             return false;
    169.         }
    170.         #endregion
    171.     }
    172.  
    173. }
    174.  
    Thats all you need for simple movement. If you want editor integration then instead extend a specific moment class like (Ground, Air, Wall, Ladder, Ledge, Damage, Water, etc). These add movement specific methods and proeprties as well as plug in to the editor. An example:

    Code (csharp):
    1.  
    2. using UnityEngine;
    3. using System.Collections;
    4. using System.Collections.Generic;
    5.  
    6. namespace PlatformerPro
    7. {
    8.     /// <summary>
    9.     /// A wrapper class for handling the characters movement (or lack thereof) when the character is dying.
    10.     /// </summary>
    11.     public class DamageMovement : BaseMovement <DamageMovement>
    12.     {
    13.  
    14.         #region movement info constants and properties
    15.        
    16.         /// <summary>
    17.         /// Human readable name.
    18.         /// </summary>
    19.         private const string Name = "Damage Movement";
    20.        
    21.         /// <summary>
    22.         /// Human readable description.
    23.         /// </summary>
    24.         private const string Description = "The base damage movement class, you shouldn't be seeing this did you forget to create a new MovementInfo?";
    25.  
    26.         /// <summary>
    27.         /// Static movement info used by the editor.
    28.         /// </summary>
    29.         new public static MovementInfo Info
    30.         {
    31.             get
    32.             {
    33.                 return new MovementInfo(Name, Description);
    34.             }
    35.         }
    36.  
    37.         #endregion
    38.  
    39.         /// <summary>
    40.         /// Information about the damage sustained.
    41.         /// </summary>
    42.         protected DamageInfo damageInfo;
    43.  
    44.         /// <summary>
    45.         /// Is this being used as a death movement.
    46.         /// </summary>
    47.         protected bool isDeath;
    48.  
    49.         /// <summary>
    50.         /// For damage the default is to not apply gravity.
    51.         /// </summary>
    52.         override public bool ShouldApplyGravity
    53.         {
    54.             get
    55.             {
    56.                 return false;
    57.             }
    58.         }
    59.  
    60.         /// <summary>
    61.         /// Start the damage movement.
    62.         /// </summary>
    63.         /// <param name="info">Info.</param>
    64.         /// <param name="isDeath">Is the movement being used for death.</param>
    65.         virtual public void Damage(DamageInfo info, bool isDeath)
    66.         {
    67.  
    68.         }
    69.     }
    70.  
    71. }
    72.  
     
  10. JohnnyA

    JohnnyA

    Joined:
    Apr 9, 2010
    Posts:
    5,041
  11. TheValar

    TheValar

    Joined:
    Nov 12, 2012
    Posts:
    760
    Wow this is looking really superb! I'm excited for the release!

    I'm interested in how you got mecanim animations to play without using transitions. For 2D games I find transitions to be a hassle more often than not, it would be great if you could share something about that.
     
  12. JohnnyA

    JohnnyA

    Joined:
    Apr 9, 2010
    Posts:
    5,041
    Code (csharp):
    1. myAnimator.Play(args.State.AsString());
    Where args.State.AsString() resolves to a state name in the mecanim animator. There were a few tricks though... making sure the animation isn't skipped (because mecanim is stupid) requires something like this:

    Code (csharp):
    1.  
    2.  
    3. void Update()
    4. {
    5.     // Ensure we played the state for at least one frame, this is to work around for Mecanim issue where calling Play isn't always playing the animation
    6.     if (myAnimator.GetCurrentAnimatorStateInfo(0).IsName(state.AsString()))
    7.     {
    8.         hasPlayed = true;
    9.         // Now play the queued state
    10.         if (queuedState != AnimationState.NONE)
    11.         {
    12.             myAnimator.Play(queuedState.AsString());
    13.             state = queuedState;
    14.             queuedState = AnimationState.NONE;
    15.             hasPlayed = false;
    16.         }
    17.     }
    18. }
    19.  
    AnimationState is my own enum of possible animations which maps to the state name in mecanim.
     
    Last edited: Feb 17, 2014
  13. TheValar

    TheValar

    Joined:
    Nov 12, 2012
    Posts:
    760
    Cool thanks for the info! I kinda like mecanim but most of the time it seems to get in the way.
     
  14. JohnnyA

    JohnnyA

    Joined:
    Apr 9, 2010
    Posts:
    5,041
    Sometimes doing something simple is frustratingly complex, on the other hand doing complex stuff with it is often quite simple ;)
     
  15. JohnnyA

    JohnnyA

    Joined:
    Apr 9, 2010
    Posts:
    5,041
    New video:

     
  16. JohnnyA

    JohnnyA

    Joined:
    Apr 9, 2010
    Posts:
    5,041
    Latest Platformer PRO update, I really like this one:

    [video=youtube_share;1JiXksq7eXc]http://youtu.be/1JiXksq7eXc​
     
  17. awejk

    awejk

    Joined:
    Oct 13, 2012
    Posts:
    32
    When do you plan to release a new version?
    I recently learned about GC.Collect in 1.9, because of which it is impossible to use it on mobile platforms, very upset.
     
  18. JohnnyA

    JohnnyA

    Joined:
    Apr 9, 2010
    Posts:
    5,041
    1.9 is fine on mobile, the only core controller function called each frame that allocates is using RaycastAll which is only a few hundred bytes (depending on number of colliders). At that rate you might get a slight pause every 10 minutes. Of course you can always trigger a garbage collect at a suitable time like when the user dies or finished a level.

    On ropes and ladders you get a bit more allocation but again its due to raycast all. If somehow this is causing you issue I have an alternate implementation of RaycastAll which doesn't allocate which I can share if you submit a support request.

    Note that GetComponent allocates in the editor not in the runtime.

    Platformer PRO version has no fixed released date, I expect it in a few months.
     
    Last edited: Mar 12, 2014
  19. Drowning-Monkeys

    Drowning-Monkeys

    Joined:
    Mar 6, 2013
    Posts:
    328
    Hey Johnny,

    Didn't see this implemented in 1.9 so I thought I'd ask for a feature request: I'm working on Castle Kong and one of the things i'm trying to mimic is rigid movement. For example, I don't want the player to be able to reverse course after jumping. Whatever his initial jump velocity is stays the same through the course of the jump, rather than being affected by gravity. Should be fairly easy to implement, and this way I don't have to overwrite your code and track changes on every update.

    Thanks!
     
  20. kritchie

    kritchie

    Joined:
    Mar 17, 2013
    Posts:
    7
    Hey Johnny,

    Big fan of your work on this asset. I was able to get fantastic controls running in a matter of minutes. Really looking forward to Platformer Pro.

    I've got two questions:

    1. I've done a few modifications to mine to add Xbox controller support (including analog movement). Is Platformer Pro going to support this out of the box? If not I'm sure I can integrate my changes to the new version without too much trouble.

    2. My character occasionally tunnels through collision geometry. I have the controller movement speed cranked up pretty high (think Super Meat Boy). This higher speed is almost certainly the cause. But I really like this control style and do not want to sacrifice speed for collision stability. Can you suggest anything I might do to prevent the character from tunneling through my collision geometry (collision is primarily BoxCollider2D and PolygonCollider2D triangles for slopes).
     
  21. zurov

    zurov

    Joined:
    Mar 24, 2014
    Posts:
    1
    Hi Johnny,
    am new to unity, but been very interested in buying PP/2dPC, but I have a couple of questions...

    1) it's a bit confusing....are you developing the various features for both 2.5D and 2d?....meaning all the various character setups/etc....and do they work with the 2d tools straight out of unity 4.3, or does one have to have 2d toolkit?

    2) what kinda of documentation do you have for all of this?....for someone that's new to unity, it would be great to have some kind of intro to your setup...

    please let me know, as I look forward to getting 2dPC and PP when it comes out..
     
  22. JohnnyA

    JohnnyA

    Joined:
    Apr 9, 2010
    Posts:
    5,041
    1. It would be hard to develop for 2D and not for 2.5D :) The only difference is the class I call the "animation bridge" which turns the animations in to commands to whichever animation system you want to use. You don't require 2D ToolKit.

    2. 2DPC has a fairly slim user manual which covers the basics, and a document auto-generated from the code comments which defines all the settings. Its not comprehensive, more like adequate. Platformer PRO wont have a heap of documentation initially although I will expand it. But it will be all wizards and custom inspectors with inline help. It tells you if it thinks you are doing something wrong and provides suggestions to fix.
     
  23. JohnnyA

    JohnnyA

    Joined:
    Apr 9, 2010
    Posts:
    5,041
    You can do this in 2DPC in your input - if (!grounded) x= 0;
     
  24. TheValar

    TheValar

    Joined:
    Nov 12, 2012
    Posts:
    760
    I just got around to watching the latest update video and I have a couple questions.

    1) Will the combat system support combos out of the box?

    2) Will the example scenes included be dependent on also owning your new 2D character system asset?
     
  25. vidjo

    vidjo

    Joined:
    Sep 8, 2013
    Posts:
    97
    Hey Johnny! The new system is looking amazing! Any ideas when it will be released?
     
  26. JohnnyA

    JohnnyA

    Joined:
    Apr 9, 2010
    Posts:
    5,041
    1. Maybe... might not make it in first release but should get there eventually.

    2. No. The system can bake the layers into sprites and these baked sample sprites will be included in Platformer PRO.
     
  27. JohnnyA

    JohnnyA

    Joined:
    Apr 9, 2010
    Posts:
    5,041
    I need to take a week or two off of work to really focus on this, but work is so busy at the moment that I can't (particularly after just taking a bunch of time off when I snapped my achilles).

    So its definitely a few months away at least.

    Existing users (of 2DPC) can get a preview version, and I hope to be releasing a new preview version soon (the current preview is pretty behind feature wise).
     
  28. vidjo

    vidjo

    Joined:
    Sep 8, 2013
    Posts:
    97
    I'm a current owner of 2DPC; I am definitely interested in a preview version. I'd love to test it out.

    Also, sorry to hear about your achilles!
     
  29. vidjo

    vidjo

    Joined:
    Sep 8, 2013
    Posts:
    97
    Will the new system still allow you to parent the raycasts to objects?
     
  30. JohnnyA

    JohnnyA

    Joined:
    Apr 9, 2010
    Posts:
    5,041
    In the new system the raycast colliders themselves are extensible, they don't even have to be raycasts if you want to get crazy!
     
  31. vidjo

    vidjo

    Joined:
    Sep 8, 2013
    Posts:
    97
    Oh man. Care to elaborate? I can only imagine what that entails!
     
  32. JohnnyA

    JohnnyA

    Joined:
    Apr 9, 2010
    Posts:
    5,041
    Nothing that complex, the raycast expose virtual properties and methods for all of the information used in the movement code. It allows me to write different code for side/feet/head which has been very useful. Theoretically you could override the methods and populate with data that came from something other than raycast (not sure what, maybe a collider or maybe some kind of internal representation of the level).

    The reality is that 99% of people wont ever look at it. It's mainly to allow me to add new features easily :)
     
  33. JohnnyA

    JohnnyA

    Joined:
    Apr 9, 2010
    Posts:
    5,041
    Ranged/projectile attacks:


    [video=youtube_share;1XuDRr4a_QM]http://youtu.be/1XuDRr4a_QM​
     
  34. EddieChristian

    EddieChristian

    Joined:
    Oct 9, 2012
    Posts:
    725
    Any update on when this will be available? And if not soon, is there a new preview version that I would be allowed to use on a job for a client yet??
     
  35. JohnnyA

    JohnnyA

    Joined:
    Apr 9, 2010
    Posts:
    5,041
    A new preivew (3) will hopefully be out next weekend, or maybe this weekend if I work on my birthday :)

    It still is not generally available for use on a client project BUT individual permission can be granted if we can align our expectations.

    - John A
     
  36. Mad_Fox

    Mad_Fox

    Joined:
    May 27, 2013
    Posts:
    49
    Hi Johnny, im a 2DPC user, can you send me the PRO preview? i would like to start getting comfortable with the new modular system, thanks!
     
  37. yuewahchan

    yuewahchan

    Joined:
    Jul 2, 2012
    Posts:
    309
    I just purchased 2DPC, how can I get a PRO preview ?
     
  38. EddieChristian

    EddieChristian

    Joined:
    Oct 9, 2012
    Posts:
    725
    Will be sending you an email today. Hopefully we can get it going so I can port this title to the preview code.
     
  39. Atmey

    Atmey

    Joined:
    Nov 3, 2012
    Posts:
    88
    Hey Johnny,

    Looking forward to this, will it use mecanim or legacy animations? Is there an upgrade to the AI as well?

    And happy birthday.
     
  40. JohnnyA

    JohnnyA

    Joined:
    Apr 9, 2010
    Posts:
    5,041
    Platformer PRO update (power ups):



     
  41. yuewahchan

    yuewahchan

    Joined:
    Jul 2, 2012
    Posts:
    309
    JohnnyA, I just purchased 2d platform controller recently, however, you said stop sending the platformer pro preview to new customer. Would you please send me, not a latest preview is also acceptable, I am willing to help fixing bug, and don't brother you until you release it.
     
  42. robinball

    robinball

    Joined:
    Jan 1, 2013
    Posts:
    48
    Hi Johnny. Has there been any more progress with Platformer Pro?

    I've been playing with the preview and it's looking really promising, but I'm finding not everything works yet (which is to be expected considering it's only a preview) :)

    My current problem is that the projectiles I fire hit my character and get destroyed immediately I fire them, as if he was scenery. I tried messing about with layers (everything seems to be default, I may have missed something about the setup) but it doesn't really seem to make any difference unless I turn off collide with scenery on the projectile. Then it goes through both character and scenery which isn't ideal. I was wondering how this is supposed to be set up.

    I'm also not sure how to make projectiles emit from a point other than the centre of the character. If I could do that I could emit them from a game object mounted at the point of his gun.

    I really wanted eight way aim, but that looks like it's not written yet.

    It also doesn't look like the double jump and wall cling type stuff is in pro yet. It would be cool to see the old functionality restored.

    Thanks
     
  43. JohnnyA

    JohnnyA

    Joined:
    Apr 9, 2010
    Posts:
    5,041
    Yes its not finished many things not in there.

    Projectiles hitting the character means the layers are not set correctly. I usually have layers for: character, projectiles, enemies, hazards, etc

    Projectiles layer should be set up in Unity physics to not collide with character layer.

    This may not have been exported in the preview package, as I had to remove some third party assets and thus couldn't export all of the project.

    Emitting from point other than centre is not done yet. 8-way aiming would be similar to the mouse aimer but again isn't done yet.
     
  44. robinball

    robinball

    Joined:
    Jan 1, 2013
    Posts:
    48
    Ah. Thanks Johnny. It was the Physics 2D settings I didn't know about. Should be all good now.

    Are you interested in bugs at this stage? The attack I've made (a projectile) doesn't go anywhere if I don't first move the player, it just gets spawned static and hangs in space. I guess it doesn't know to start moving right unless you move first. I'm not using the mouse look, just shooting straight ahead.

    Also it doesn't inherit the rotation of the character and the direction facer script doesn't work on it, so it always faces right.

    It's probably too early to be bothered about that sort of thing. It's no big deal.

    Thanks. I'm enjoying playing with it and looking forward to any further developments. :)
     
  45. KidSicarus

    KidSicarus

    Joined:
    Feb 3, 2014
    Posts:
    35
    Hey, Johnny.

    Will you be implementing a falling-speed or negative-force variable (just "gravity" down) in PRO?

    Thanks.
     
  46. kilik128

    kilik128

    Joined:
    Jul 15, 2013
    Posts:
    909
    any new here please
     
  47. robinball

    robinball

    Joined:
    Jan 1, 2013
    Posts:
    48
    Yeah I'm hoping this will develop further. I've had fun messing with the preview. I'd hate to see it abandoned.

    On another point, I was wondering what tile editor might be suitable with this? I'm thinking about Rotorz. Or maybe Sprite Tile. I guess so long as it makes colliders it should be fine for the most part, but I'm not sure about setting layer or tag properties per tile. Anyone used either? Any problems?
     
  48. kilik128

    kilik128

    Joined:
    Jul 15, 2013
    Posts:
    909
    it's nothinks i'am sure it's only user forget give him pressure
     
  49. vidjo

    vidjo

    Joined:
    Sep 8, 2013
    Posts:
    97
    Agreed. I REALLY hope this hasn't been abandoned. I'd gladly pay full price again for the update.
     
  50. garrido86

    garrido86

    Joined:
    Dec 17, 2013
    Posts:
    233
    Any news?