Search Unity

[RELEASED] Corgi Engine - Complete 2D/2.5D Platformer [new v6.0 : game feel, Cinemachine, and more]

Discussion in 'Assets and Asset Store' started by reuno, Dec 18, 2014.

  1. jasonxtate66

    jasonxtate66

    Joined:
    Nov 21, 2017
    Posts:
    132
    Sorry to ask... but where is the controller for gravity? Sorry for asking. I read the documentation but I don't need to implement a gravity zone do I?
     
  2. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    3,022
    @jasonxtate66 > As I've just said, the gravity can be set on the (Corgi) Controller :
    upload_2018-8-15_21-58-41.png

    That's the very first field. It's explained in the documentation in many places and in much more details.
    Or in the tiny help text at the top of it :)
    You could also implement a gravity zone but that seems a bit overkill?
     
  3. jasonxtate66

    jasonxtate66

    Joined:
    Nov 21, 2017
    Posts:
    132
    Sorry for asking. Thanks for the help. I don't know how I overlooked that. I've been messing around for hours and when I looked at the documentation I was looking at the gravity zones and gravity points. I lost my old project in a crash so I'm just now rebuilding everything from scratch.
     
  4. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    3,022
    @jasonxtate66 > No problem :) The engine has tons of features now, it's easy to miss some stuff.

    When in doubt though, here are a few things you can do :
    - Google it. The engine's documentation is quite well referenced now
    - Use your IDE's search. If you look for Gravity you'll quickly find that CorgiController's value as it's used in many places.
    - Use the search engine in the API documentation (that CorgiController's Gravity parameter is the first result there)
    - and of course use the support email or this forum if you can't find the info :)

    I'm not saying this just for you of course, this can be helpful to anyone who'll read this and wants to get things done faster :)
     
  5. knuppel

    knuppel

    Joined:
    Oct 30, 2016
    Posts:
    90
    Hello, maybe it's a unity problem. I made my own walking sprite sheet and an animation. So i have walking_0 to walking_29. In existing rectangle.animator i replaced the walk animimation with my own walk animation. But when sprite is walking only walking_0 is active.
     
  6. steelhamsterstudio

    steelhamsterstudio

    Joined:
    Mar 15, 2018
    Posts:
    29

    Hi! I finally made my "roll" ability script and start using Corgi 5.0, and its amazing! The new AI system is so flexible I was very surprised, even without any modifications I can provide pretty smart enemies without writing any code!

    But still, I develop my own damage system with few types of interactions and "hit" reactions to give my game more "brawler/slasher" gameplay looks like.

    @reuno your asset is the best!
     
  7. RAIN_proger

    RAIN_proger

    Joined:
    Aug 31, 2017
    Posts:
    16
    Can u tell me how I can find direction of the slope? Would be good if u show example. Thanks!
     
  8. RAIN_proger

    RAIN_proger

    Joined:
    Aug 31, 2017
    Posts:
    16
    Hi! That's cool! Do u use rig animations?
     
  9. steelhamsterstudio

    steelhamsterstudio

    Joined:
    Mar 15, 2018
    Posts:
    29
  10. Mindjar

    Mindjar

    Joined:
    Aug 13, 2013
    Posts:
    26
    I think it's a handy feature, I also wanted to have something like this in the engine.
     
  11. Mindjar

    Mindjar

    Joined:
    Aug 13, 2013
    Posts:
    26
    Nice! I'm keeping eye on your game, it's looking great, maybe the best made on Corgi engine ;) Do you have a devlog?
     
  12. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    3,022
    @knuppel > I'd suggest reading Unity's documentation about animations at this point :)
    @RAIN_proger > As explained in the documentation, that'd be the CorgiController's State.BelowSlopeAngle value. And the engine already includes multiple examples of its use. The CharacterSlopeOrientation ability for example.
    @steelhamsterstudio > I'm glad you like the new version :) It's always a blast to see the progress on your game!
    @Mindjar > It's on the todo list. It's just got way less votes than the top 20 items on the list for example. Slope sliding's got 16 votes right now, item #20 is at 487 for comparison. If more people request it, it'll get more votes and will find its way into a release.
     
  13. henkesky

    henkesky

    Joined:
    May 23, 2015
    Posts:
    36
    Hello guys, i really like this asset but i want to know if there is any other asset integrated with corgi engine that offers features like xp points, leveling up and quest system, since corgi engine doesn't seem to have these features.
     
  14. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    3,022
    @henkesky > I don't provide support for any third party (impossible to maintain). And I don't know of any asset that does that. I'd be curious to know if other people have had experience with such assets, that question pops up once in a while.
     
  15. Boom_Shaka

    Boom_Shaka

    Joined:
    Aug 31, 2017
    Posts:
    95
    I've used XPManager before....that would probably work on Corgi. That said, the engine includes a points system as well as achievements and events - pretty sure you could hack something using those.
     
  16. Boom_Shaka

    Boom_Shaka

    Joined:
    Aug 31, 2017
    Posts:
    95
    your game looks great. thanks for posting updates...it gives me some ideas for my own.
     
    steelhamsterstudio likes this.
  17. steelhamsterstudio

    steelhamsterstudio

    Joined:
    Mar 15, 2018
    Posts:
    29
    @Mindjar Thank you! Right now I don't have any devlog because there is a lot of unknown stuff in-game mechanics. I'm going to make some streams maybe in future when I finish all core gameplay aspects. I can provide at any time iteration/drawing/animation because I can, but C# modifications, creating new abilities, implementations of the corgi engine and deep learning how it works taking a lot of time from me.
    @reuno Thanks! I hope the next video will be more mind-blowing. ;)
     
    reuno likes this.
  18. henkesky

    henkesky

    Joined:
    May 23, 2015
    Posts:
    36
  19. Mindjar

    Mindjar

    Joined:
    Aug 13, 2013
    Posts:
    26
    I know the pain :) I'm also struggling with writing new scripts... Graphics are the easiest part. By the way - how did you managed to make the roll ability? I've tried, but I get wierd results... :(
     
  20. steelhamsterstudio

    steelhamsterstudio

    Joined:
    Mar 15, 2018
    Posts:
    29
    @Mindjar It takes some time but I took dash ability and replaced all distance checks by 1 Timer - time for roll animation. and I removed all gravity blocks and slope/wall collision reset function. And it starts work well without any frizes, Ow and I added invincible for the roll to avoid any damage.
     
    Mindjar and reuno like this.
  21. Mindjar

    Mindjar

    Joined:
    Aug 13, 2013
    Posts:
    26
    @steelhamsterstudio Thanks for the answear. I've tried to make something similar and used:
    Code (CSharp):
    1. _characterHorizontalMovement.SetHorizontalMove(_computedDashForce);
    but I have strange behaviour - the roll is short when the character is on the ground and very long and fast when used from higher ground...
    @reuno - what am I doing wrong or what would be the best approach?
     
  22. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    3,022
    @Mindjar > I don't know. Out of context that line doesn't mean much so it's hard to answer.
    I'd suggest following @steelhamsterstudio's approach, it's probably how I would have done it as well.
    Look at the Dash ability for reference, and experiment.
     
  23. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    3,022
    Good news everyone, I just submitted v5.1 of the Corgi Engine to the Asset Store.

    This new version comes with a bunch of new features, the biggest of them being the ability to now switch your character for another at runtime, either by swapping just the model, or by swapping the prefab itself. It'll also introduce an ability to handle a secondary weapon, abilities and actions to have characters follow a path, and more.

    Here's a video tutorial that explains most of the new stuff :



    Here are the full release notes :
    - Adds a new CharacterHandleSecondaryWeapon ability, that allows for easy handling of two weapons at once. Can serve as a basis to handle more than that if needed.
    - Adds the CharacterFollowPath ability, allowing a character to move while following a path made of multiple nodes. Offers the same settings as a moving platform.
    - Adds a new AI action : AIActionFlyPatrol, allowing your character to move along a path made of nodes and change direction when hitting a wall/obstacle.
    - Adds a new class, the CharacterSwitchManager, allowing you to switch between different character prefabs
    for your playable character at runtime, just by pressing a button.
    - Adds a new ability, CharacterSwitchModel, allowing you to switch your character's model (not the prefab, just the visuals) at the press of a button, at runtime.
    - Adds a new scene, the MinimalCharacterSwitch scene, showcasing how you can switch between prefabs by simply pressing P.
    - Adds a new scene, the MinimalModelSwitch scene. This one showcases how to switch model (not prefab) at runtime.
    - Adds an option to rotate a character's model when it changes direction instead of playing on its scale
    - Adds an option to have a movement multiplier applied while a Weapon is equipped (and not just used)
    - Improves slope stickyness when StickToSlopes is enabled on the Corgi Controller. Now handles "peaks" much better.
    - The SoundManager's MusicOn/Off methods now also mute any currently playing music if needed
    - Adds overridable methods to determine whether an object can be equipped or used
    - Adds bindings on the mobile buttons to trigger interactions.
    - Adds default values to some AnimationCurves that didn't have one (MMProgressBars in particular)
    - Fixes a case where a weapon's multiplier wouldn't be properly reset if the weapon was in auto mode
    - Fixes a bug that could cause erroneous binding to multiple animators with combo weapons
    - Prevents a bug that would allow a character to jump while in a tunnel instantly after entering it
    - Fixes the mouse cursor setting on the CorgiMachineGun
    - Fixes weapon initialization issues in some edge cases
    - Forces cursor visibility in the GameManager to prevent cases where the cursor would remain hidden.
    - Fixes a case where the melee weapon's setup gizmo wouldn't be shown in scene view
    - Fixes a bug where an unequipped weapon wouldn't be removed from the character properly
    - Fixes a missing component in the RetroAdventure demo scenes that prevented proper pause management

    As usual, expect a few days/weeks for it to be accepted. I hope you'll like this new version!
     
    Meowx, Grafos, NEHWind2 and 4 others like this.
  24. steelhamsterstudio

    steelhamsterstudio

    Joined:
    Mar 15, 2018
    Posts:
    29
    Holy Moly! @reuno Did it mean I can finally merge Magic/Melee/Throwing Weapon/Guns in one fully customizable Fight system? I Just can't believe in all of this new features! Thanks for such a big and useful update!

    I almost finished damage system so when it will be ready I start learning this new multipleWeapon ability! And I think new gameplay video will be brutal!:D
     
  25. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    3,022
    @steelhamsterstudio > Technically the secondary weapon thing is nothing new, it was already doable, but now you'll have an example. I got so many requests for that example (more than 400) that I didn't really have a choice but to include one :)
    Can't wait to see what you'll do with it!
     
  26. ralphyua

    ralphyua

    Joined:
    Mar 28, 2017
    Posts:
    20
    Your game looks pretty nice. I like the character designs and animation. It'll be great once you get the backgrounds in.
     
    steelhamsterstudio likes this.
  27. ralphyua

    ralphyua

    Joined:
    Mar 28, 2017
    Posts:
    20
    I am getting close to finishing the first beta version of my game. Just trying to polish things here and there.

    I was wondering if anybody was having the same issue with checkpoint respawning that I am currently having. My character goes into the fall animation state when he is not grounded and the vertical speed is negative. So in order to have him grounded on the respawn, I copy the Y-axis value of my player while he is standing at the checkpoint respawn point. I then paste that value into the Y-axis value of the checkpoint. Since there is no Y-offset in the boxcollider on the player (Boxcollider should be centered) the player should respawn with his feet firmly on the ground. However, I find that sometimes the player respawns firmly grounded. Other times he respawns slightly off causing the fall animation to play for a single frame. I guess it's not a big deal, but it is annoying and amateurish seeing that stutter sometimes when the player respawns.

    Has anyone else dealt with this problem? If so, how did you deal with it?

    Thanks

    Edit: Well, I figured out a dirty solution. I simply set a bool condition "preventFall" for the fall animation to not play if it is true. Then I turn "preventFall" to true on the revive and turn it to false again after the player is firmly grounded. It gets the job done, but I dislike doing things this way, so if somebody has a better suggestion, I'm all ears.
     
    Last edited: Aug 20, 2018
  28. ralphyua

    ralphyua

    Joined:
    Mar 28, 2017
    Posts:
    20
    Almost forgot to mention. If anyone is looking for an asset that will work with the Corgi Engine for controller mapping, I would definitely go with Rewired. I looked into this a few weeks ago, and even though Rewired is one of the more expensive options I think it is well worth it.

    Documentation wise, I didn't see anything else that came close to Rewired. I was also having a problem doing button swapping with the control mapper, and Augie spent a week with me going back and forth on trying to fix the problem. In the end, he did find a bug and fixed it promptly. That's great customer support.

    Rewired saved me a bunch of time and effort that would have been spent on self programming an inferior alternative. The only thing I would recommend is that you install it only if you are near the end of finishing your game, not at the beginning. For some reason, Rewired makes it so that when you make changes in your code, it takes longer for the code to update in Unity which means more staring at that spinning progress wheel. It is a known but I think unavoidable issue. Other than that, it's worked for me really well as far as keyboard input is concerned. I will test it with a game pad soon.
     
  29. guavaman

    guavaman

    Joined:
    Nov 20, 2009
    Posts:
    3,800
    Thanks for the kind words! (If you haven't already, posting them as a review would be nice! :)

    The issue is documented here:
    http://guavaman.com/projects/rewired/docs/KnownIssues.html#increased-compile-play-time-editor

    And in a nutshell, it's really nothing more than a consequence of the ridiculous number of controllers Rewired supports. Double-edged sword. You support every controller under the sun, turns out it has a cost when using Unity's serialization system is used to store that data (in the editor only). The only way I could fix this is to completely rewrite all data storage to not use Unity's serialization system and rewrite all editors to work with my new system and not Unity's. Big job, requires data converters for anyone who has made custom definitions too. I want to do it at some point because I absolutely hate this thorn, but there are other more pressing things on the to-do list.

    I would not recommend adding Rewired late in the project. There's a way better solution to making development time faster. Just pare down the list of supported controllers until you're ready to release. The fewer controllers supported, the less the delay when the app domain is rebuilt. Just click the "ControllerDataFiles" field in the Rewired Input Manager inspector which will take you to the default ControllerDataFiles object in the Rewired directory, copy the existing ControllerDataFiles, move the copy outside the Rewired folder, link the new ControllerDataFiles in the Rewired Input Manager inspector, then go to the new ControllerDataFiles inspector and remove all the controllers you don't need while doing your development. You can pare this down to like 10 controllers (Xbox, DS4, etc.) and Rewired will add zero extra startup time.
     
    Kelgand and reuno like this.
  30. ralphyua

    ralphyua

    Joined:
    Mar 28, 2017
    Posts:
    20
    Actually, that sounds like a much better solution. I think I will do that. Keep up the good work!
     
    guavaman likes this.
  31. GrooGadgets

    GrooGadgets

    Joined:
    Apr 2, 2009
    Posts:
    60
    Hey Reuno,

    I bought Corgi a few months ago and am only just getting into it now, i've gotta say it's fantastic, job well done!

    I'm working on a platformer with strong melee play so i've been playing around with the melee weapon prefab. I'd like to reproduce the basic gameplay from Hollow Knight where if you point the joystick up and hit fire you swing your sword up and when pointing down while in the air you swing down.

    I've had a look at the melee weapon script and i'm not sure where to start, can you give me some details on what the best approach would be?

    Thank you,

    Simon
     
  32. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    3,022
    @avrigus > So that's not something that is built in right now (it's very, very specific), you'll have to implement it yourself.
    I guess you could have two different weapons, or a weapon to which you send a parameter of high or low and that acts differently based on that. It's really up to you.
     
  33. RAIN_proger

    RAIN_proger

    Joined:
    Aug 31, 2017
    Posts:
    16
    Hey, Reuno, I discovered that when fps sags some actions like dash start to work very badly. How to fix it? Is physics system linked to fps?
     
  34. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    3,022
    @RAIN_proger > I wouldn't know about physics, it's a non physics based engine. But if your game goes low enough in FPS that this becomes an issue, I'd say you have more pressing things to fix :)
    Anyway, it's usually easily solved by playing with the raycast length. What (probably) happens in the case of the dash is that if you're at extremely low FPS, and dashing left to right, you'd be left to the wall at frame A, and right to the wall at frame B. Short raycasts would never have the chance to hit the wall.
    If the problem persists please use the support email.
     
  35. tysonwills

    tysonwills

    Joined:
    Oct 30, 2016
    Posts:
    14
    Hi Reuno
    this may sounds like a stupid question , if i have already started creating a game and you release an update to the engine how do i update my project to use the new features without doing a full import again and wiping out my development so far.
     
  36. NAiLz

    NAiLz

    Joined:
    Apr 17, 2013
    Posts:
    88
    @reuno hey man. I'm running into a strange problem I've never had before. I'm literally just cloning projectiles that are already working and changing the sprite for new projectiles but for some reason, this one particular projectile just stays in place and I get this error:


    Code (CSharp):
    1. transform.position assign attempt for 'SurgerProjectile-0' is not valid. Input position is { NaN, NaN, NaN }.
    2. UnityEngine.Transform:Translate(Vector3, Space)
    3. MoreMountains.CorgiEngine.Projectile:Movement() (at Assets/Middleware/CorgiEngine/Common/Scripts/Agents/Weapons/Projectile.cs:117)
    4. MoreMountains.CorgiEngine.Projectile:Update() (at Assets/Middleware/CorgiEngine/Common/Scripts/Agents/Weapons/Projectile.cs:108)
    5.  
    I wondered if you might know what's going on.
     
  37. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    3,022
    @NAiLz > I've never seen this before. I'm guessing you didn't just change the sprite though (might be in how you bind the projectile to the weapon?), as it doesn't seem to be related to the sprite. It's hard to tell what the error could be without more details though.

    @tysonwills > The best way to not lose your stuff is to not modify the asset's files, but rather extend them. You'll find tons of info on that on Unity's website, and a few guidelines in the documentation as well (in the "creating your own game" section).
    If however you've modified the core files, I'm afraid I don't have any magic trick, apart from using a version control tool and diffing all files for changes, and deciding what you want to keep (I'd strongly recommend sticking to the "good way" here).
     
  38. tysonwills

    tysonwills

    Joined:
    Oct 30, 2016
    Posts:
    14
    can i just import the new script files like the enemy on paths and will they work
     
  39. kevin_Leo

    kevin_Leo

    Joined:
    Mar 20, 2018
    Posts:
    15
    Love the new-and-improved 'stick to slope' feature in 5.1! Works very well. Great job. Makes the whole thing feel truly 'tight' and much more Mario-like. Thank you!

    I'd like to put in a vote for ledge-grabs, please. :)
     
  40. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    3,022
    @kevin_Leo > I'm glad you like the new version. And I've added your vote to the ledge grabs :)
     
    kevin_Leo likes this.
  41. Boom_Shaka

    Boom_Shaka

    Joined:
    Aug 31, 2017
    Posts:
    95
    +1 for ledge grabs
     
    kevin_Leo likes this.
  42. xpachin

    xpachin

    Joined:
    Feb 6, 2014
    Posts:
    46
    +2
     
    kevin_Leo likes this.
  43. bravery

    bravery

    Joined:
    Mar 26, 2009
    Posts:
    270
    Hi,
    Has anyone tried to utilize the art assets of 2D Game Kit (which look professional ) inside Corgi?
     
  44. Boom_Shaka

    Boom_Shaka

    Joined:
    Aug 31, 2017
    Posts:
    95
    Yes
     
  45. claudiorodriguescampos

    claudiorodriguescampos

    Joined:
    Jun 23, 2017
    Posts:
    94
    Is it possible to create a game like that using Corgin Engine?
    https://store.steampowered.com/app/647280/Pixel_Shooter/

    Based in the video, is it possible to create an AI that is similar to the AI used in this game. One enemy shoot againt the player, another enemy jump towards the player direction and the third enemy flies in the player direction without collide with any obstacles.

    Is it possible create AI like that using Corgin Engine?
     
  46. lufutu

    lufutu

    Joined:
    Aug 23, 2014
    Posts:
    1
    Hi,
    Can it make melee attack with "combos" and fire arrow by bow with new version of Corgi ?
    Thanks.
     
  47. myrkraverk

    myrkraverk

    Joined:
    Aug 3, 2018
    Posts:
    5
    Hi Reuno,

    I managed to work around my previous problems, thanks for the answers.

    This time, I'd like to "pause" an AI. So far I'm using the AI Walk script, and I'd like to know if there's a simple way to stop the enemy sprite from walking for a few moments? I already have have the functions to start/stop the sprite, I just need to know what to call, if anything.

    Enabling and disabling AI Walk didn't seem to have any effect, the AI keeps walking.
     
  48. Boom_Shaka

    Boom_Shaka

    Joined:
    Aug 31, 2017
    Posts:
    95
    Suggestion for future release: update character animator parameters from AI Brain

    If AI Brain State = existing (bool) parameter >>>> set parameter to "true/false" as needed
    If not, add AI Brain state to animator as (bool) parameter and set to "true/false" as needed

    Or something along those lines.
     
  49. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    3,022
    @claudiorodriguescampos > I don't see anything too complex in this video, it shouldn't be a problem. I'd suggest looking at the list of features and the documentation and deciding for yourself if it's a good fit for your project or not :)
    @lufutu > There's combo support, yes. As for fire arrrows... It depends on what you mean, it seems quite specific. You can shoot whatever projectiles you want if that's the question.
    @myrkraverk > There are examples of that in the engine. Look at the RetroAI scene for reference.
    @Boom_Shaka > Suggestion noted!
     
  50. bravery

    bravery

    Joined:
    Mar 26, 2009
    Posts:
    270
    Can you please explain to m how, and what changes you made the these assets to make them match with Corgi?