Search Unity

[RELEASED] Corgi Engine - Complete 2D/2.5D Platformer [new v8.0 : advanced damage system]

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

  1. SupremeSmash

    SupremeSmash

    Joined:
    Nov 30, 2018
    Posts:
    30
    Corgi Engine is AMAZING!!

    I have added Pixel Crushers Dialogue System which is working well and I also got it working with the inventory engine which is awesome. In the guidance the image shows the conversation being played in the Corgi Engine dialogue zone

    How would I go about achieving this?
     
  2. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,694
    Hi @SupremeSmash - That looks like a screenshot of the Dialogue System's Corgi integration. The integration instructions are here: Dialogue System Corgi Integration

    If you get stuck or have questions, please feel free to post in the Dialogue System forum thread or the Pixel Crushers forum.
     
    KOPEW and reuno like this.
  3. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
    @SupremeSmash > About achieving what exactly? You seem to say it's all working well, I'm confused :)
    Edit : oh ok now I get it, it's a screenshot from the documentation. Thanks @TonyLi!
     
  4. SupremeSmash

    SupremeSmash

    Joined:
    Nov 30, 2018
    Posts:
    30
    Sorry for the confusion
     
    reuno likes this.
  5. SupremeSmash

    SupremeSmash

    Joined:
    Nov 30, 2018
    Posts:
    30
    Just added MMFeedbacks to my project and got an error

    Assets\CorgiEngine\ThirdParty\MoreMountains\MMTools\Tools\MMDebugMenu\Scripts\Tabs\MMDebugMenuDebugTab.cs(89,58): error CS0426: The type name 'DebugLogItem' does not exist in the type 'MMDebug'
     
  6. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
    @SupremeSmash > MMFeedbacks are already included in the Corgi Engine, there's no need to add anything.
    If the issue persists, please use the support form and provide more info about what you did, what versions you're using, etc.
     
    SupremeSmash likes this.
  7. mhrfrht

    mhrfrht

    Joined:
    Dec 15, 2018
    Posts:
    1
    Hello,
    Is it possible in the future to support photon.
    I think that the only thing missing to Corgi is online multiplayer
     
  8. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
    @mhrfrht > Unfortunately it's quite hard to provide a universal solution that'd work for all the possible gameplays that the engine accomodates.
    Plus, having done it once before, with the Highroad Engine, I'm not too eager to do it again. Network programming requires quite a lot of effort and experience, and I got a lot of feedback from users that bought it thinking it'd magically make them network programmers. Unfortunately, it doesn't, and it's still quite hard to deal with matchmaking, load balancing, server architecture, sync strategies, etc. The engine part is only a tiny fraction of what's needed to accomplish on a network based project, and the easiest by far.
    But I've noted your interest!
     
  9. masak

    masak

    Joined:
    Aug 14, 2011
    Posts:
    52
    hello,

    I tried to implement push and pull a box.
    But a 3d character could push the box with no push animation without pushing button even if i checked "ButtonBased".
    And I could not pull the box.
    (Strictly speaking, the character looked like pulling at 1~2 frame. I uploaded a movie.

    How can i implement to pull action?
     

    Attached Files:

  10. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
    @masak > Pull (and push) is already built-in, there's nothing to implement.
    You can see an example of it in the RetroPush demo scene, and a few others. The documentation and the ability's inspector explains how to set it up. If your issue persists, please use the support form and provide repro steps to it, I'll be happy to check it out for you.
     
    masak likes this.
  11. piccolodmq

    piccolodmq

    Joined:
    Jan 7, 2020
    Posts:
    34
    Hi there, this is more of a Unity questions, but hopefully I could get some help. I updated my project to 6.5 with Unitys latest version. Problem is that in my previous version instead of making my own Palette, I keep on adding new tiles to the Retro Palette that is default con Corgi Engine. So when the project its imported to 6.5 this Retro Palette prefab, goes back to its original default form. What could I do so I can bring back, the Retropalette, from 6.4 of my previous project ( I still have the backup). I tried just replacing the old with new, but I cannot see the new tiles i added after doing this.

    Thanks!
     
  12. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
    @piccolodmq > Ideally you wouldn't modify any of the engine's files, like with any other framework. Instead it'd be best to create your own palette. If that's too late for that, I suppose you should be able to backup the old palette file, as well as all its dependencies (target sprites, meta files) and paste that in the new version of the project. As you say it's more of a Unity question, and maybe the tilemap team could help better, but unless I'm mistaken, palettes are just text files, you should be able to pinpoint all its dependencies by opening it with any text editor.
     
  13. FeboGamedeveloper

    FeboGamedeveloper

    Joined:
    Feb 2, 2014
    Posts:
    47
    Hi I see that the corgiController is in the update, could I put it in a fixedUpdate or will it ruin everything? I need a specific time in my game because I calculate the intensity of some forces based on time.
     
  14. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
    @Amalfi-Prozen > The CorgiController is not physics based, so it wouldn't make much sense to have it run on fixed update. That doesn't mean you can't have other components working on fixed update, or do computations based on time, it's unrelated. You'll find examples of both in other classes of the engine.
     
  15. piccolodmq

    piccolodmq

    Joined:
    Jan 7, 2020
    Posts:
    34
    Not all the Tiles where in there so its easier to remake them in their own separete section. Thanks for the reply!
     
    reuno likes this.
  16. jjkrr

    jjkrr

    Joined:
    Dec 3, 2018
    Posts:
    23
    Trying to create a pushable block. Dragged the prefab from the retro demo into my scene, its sorting layer is "pushables" and its sprite renderer sorting layer is foreground.
    Firstly, what is the key binding for the push ability? I walk up to the block but my player can't push it, he just walks behind it.
    Thanks
     
  17. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
    @jjkrr > As explained in the documentation, or as you can see if you open your input settings, the default binding is "3" on your keyboard, feel free to change it to whatever you prefer :)

    upload_2020-6-24_16-31-53.png

    And of course there's an option to make push independent from the press of a button if you'd like.
     
  18. jjkrr

    jjkrr

    Joined:
    Dec 3, 2018
    Posts:
    23
    @reuno Ah sorry, I don't know how I missed that in the input settings.
    Thanks for the response. :)
     
    reuno likes this.
  19. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
    @jjkrr > There's quite a lot of them now :)
     
  20. jjkrr

    jjkrr

    Joined:
    Dec 3, 2018
    Posts:
    23
    @reuno If you wouldn't mind, if I have the character push component on the player, what has to happen to collide with the pushable block and push when the key is pressed? He still walks behind it.
     
  21. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
    @jjkrr > Does the problem happen in the demo scene? If not, have you tried comparing with it?
    My guess would be a wrong layer setup, but without more info it's very hard to tell.
    If the issue persists, please use the support form and provide repro steps of what you did, I'll be happy to help you out.
     
  22. jjkrr

    jjkrr

    Joined:
    Dec 3, 2018
    Posts:
    23
    @reuno > it works in the demo scene with the corgi. In my scene, my player is on sorting layer 'player,' to repicate the layer setting on the retro corgi player. The retro prefab block from the demo is on 'pushables.' I thought it was because I didn't have a rigid body attached to my player, but that didn't do anything.
    I'll try to gather more info, but I have everything set up like the demo as far as I can see.
     
  23. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
    @jjkrr > If it behaves differently, there has to be a difference somewhere.
    As I said, aside from a wrong layer setup (not having pushables in your platform mask, or having modified the collision matrix) I can't think of anything that'd prevent collision with your pushable object.
    Again if you can provide repro steps I'm sure I'll be able to sort this out for you quickly.
     
  24. jjkrr

    jjkrr

    Joined:
    Dec 3, 2018
    Posts:
    23
    @reuno > What do you mean by collision matrix, and how would I have modified it?
     
  25. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
    @jjkrr > The physics collision matrix is this matrix in the physics (2D, in our case) settings :



    You can modify it by clicking on any of the checkboxes.
     
  26. Boom_Shaka

    Boom_Shaka

    Joined:
    Aug 31, 2017
    Posts:
    141
    sorting layer is for rendering (i.e. which objects will be on top of other objects).

    collisions are handled in regular layers. check there first
     
    reuno likes this.
  27. marcovito

    marcovito

    Joined:
    Feb 18, 2019
    Posts:
    2
    Hi there,
    First of all, this is an amazing tool. It has a lot of great functionalities and the code is really decoupled, which makes it easy to expand and modify for particular needs.
    But I would like to suggest some improvements to the way Corgi engine handles audio. As far as I can see (please, tell me if I'm wrong), the intended workflow is using MMFeedbacks to instantiate sound effects when certain conditions are met. This is a really simple workflow, and I like the concept. But MMFeedbacks audio tools are limited; they don't allow you to choose if the sound is going to be 2D or 3D, as an example, and this is a must for a proper sound editing. The Sound Manager also seems to have some trouble in dealing with Unity's regular Audio Source component (not sure why, since I'm writing this before checking the code, a task that can always take a long time); just adding regular Audio Source components with 3D sounds don't allow us to have the desired 3D effect (actually, we have no sound at all).
    Anyway, there might be something I'm missing, and actually the best outcome is if it's just dumbness from my side. But I didn't find anything on the demos or the documentation about 3D sound, and this is already a basic resource I miss on Corgi Engine.

    Another sound design improving is letting the user choose an array of sound clips, and while in loop play then randomly (the random an option can be a boolean). This is a standard way to make walking sounds feel more varied and natural (by putting different step sounds and instantiating one of the sounds from the array in a random order).

    Anyway, I'm just now getting to the analysis of the sound on the engine, but it was the biggest disappointment I had so far, I think that's also because everything else works in an amazing way.

    Thanks!
     
  28. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
    @marcovito > You can simply not use the built-in Sound Feedback if you'd like, but instead use the AudioSource Feedback. This will let you target already setup audio sources, with the full control that the native audio sources provide. It's not Wwise level, and may not be enough for most productions, but if that works for you, there's absolutely no limit to what you can do, and everything you described can be setup that way :)

    What I see happen on most productions is people create their own feedback to feed audio into their audio pipeline of choice (whether it's wwise, or any of its competitors, or an in house solution). It's not built-in as it's not possible to cover them all (not even mentioning the dependencies it'd generate), and it's quite easy to implement once you know what solution you're going with (these APIs are usually quite simple), and once you have the examples provided in MMFeedbacks.

    As for random sounds, they are already built-in in the Sound Feedback :

    upload_2020-6-25_9-1-4.png
     
    Boom_Shaka likes this.
  29. piccolodmq

    piccolodmq

    Joined:
    Jan 7, 2020
    Posts:
    34
    Quick Question Reuno, I am using the crush-able assets, in the retrovania room system, but I can hear and "feel" the sounds and impulse feedbacks from the stomping even if I am even 2 rooms far from the crusher. Any way to fix this?
     
  30. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
    @piccolodmq > In a fresh install of v6.5 that shouldn't be the case. Did you modify anything from the base demo?
     
  31. PhantomFox128

    PhantomFox128

    Joined:
    May 22, 2019
    Posts:
    157
    Hi there!
    I'm making a linear platformer and was wondering if there's a way to add a kind of shop system in between levels where the player can get upgrades that last for the duration of the next level (things like increased max health, defense, attack power, etc.) and then have those go back to their original values when the level is completed, the player is defeated, the player manually quits the game, etc.
    On a similar note, I'm also wondering if it's possible to change those depending on the mode the player chooses. For example, if the player chooses a harder difficulty, they get less max health.
    Is Corgi capable of doing these?
     
  32. Boom_Shaka

    Boom_Shaka

    Joined:
    Aug 31, 2017
    Posts:
    141
    you'll have to write some code, but the core mechanics for those things are in the engine.
     
    PhantomFox128 likes this.
  33. piccolodmq

    piccolodmq

    Joined:
    Jan 7, 2020
    Posts:
    34
    Hi there, I took the demo level copied and added other assets, (mainly other tilesets), and copied the crusher prefab 3 times in the same room. But, is is supposed to only function when I am in the room where crushers are right?

    I moved the Crusher prefab to Room 7 (its a clone of yours, with different sprites ), and made 2 copies, of it.
    https://drive.google.com/file/d/18NVRtj9giuOiiGNvO14RGtgYve5OFvCy/view?usp=sharing
     
    Last edited: Jun 26, 2020
  34. DrNeko

    DrNeko

    Joined:
    Oct 5, 2012
    Posts:
    9
    Unity version: 2019.3.7f1
    Corgi Engine version: v6.5

    Hello @reuno.
    I upgraded to Crogi Engine 6.5, and tested out the crusher in RetroVania (first room to the right when entering the level). The crusher works as expected by falling on top of the character. However, when the character jumped on top of the crusher, I expected to be crushed when hitting the ceiling. Unfortunately, the character got stuck in the ceiling. I've tried a few times and got the same result. Can't figure out how to resolve this. Any idea? Thank you.

    corgi.jpg
     
  35. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
    @piccolodmq > Again, does the problem happen in a fresh install? If it does, please let me know (it shouldn't). That'd help narrow down the issue :) The effects of the crusher (sound, cam shake) should only be felt in the room where it is.
    @PhantomFox128 > There is no shop in the asset at the moment (it focuses on platforming), but you can of course add one. And you can absolutely have more/less health, each ability has public APIs you can use to tweak its settings, at runtime or directly per prefab.
    @Dr-Neko > I just gave it a try in a fresh install of the engine, and I die as soon as I hit the ceiling. Did you make any change maybe?
     
  36. DrNeko

    DrNeko

    Joined:
    Oct 5, 2012
    Posts:
    9
    Hello @reuno.
    Thank you for the quick response.

    I created another project (2D template), imported the latest version of the engine, and got the exact same result. What's odd is sometimes the character dies when hitting the ceiling, but most of the time goes through it and I'm able to see the dust particles running on the ceiling.

    I also upgrading to Unity 2019.4.1f1, created two blank projects (2D template, 3D template), imported the engine via Package Manager (another trial via Asset Store), and got the same result. To double check if it's my PC (Windows 7), I repeated the steps on another computer running Windows 10 and got the same issue.

    Is there anything I can collect/upload to help? Don't know if the manifest.json files (one per template) would be a start. Thank you.
     

    Attached Files:

  37. piccolodmq

    piccolodmq

    Joined:
    Jan 7, 2020
    Posts:
    34
    I had the same trouble, 1/5 tries, it got stuck in the ceiling, a partial solution was to decrease the speed of the Crusher object and my character didnt go through the ceiling (or floor again).
     
  38. piccolodmq

    piccolodmq

    Joined:
    Jan 7, 2020
    Posts:
    34
    The problem is that somehow I deleted the objects that represent the doors/tunnel thing (but I could still use the teleporter objects to between rooms... Thanks!
     
    reuno likes this.
  39. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
    @Dr-Neko > I don't think the manifest has anything to do with it. I'll try and run automated tests to repro the issue.
     
  40. KOPEW

    KOPEW

    Joined:
    Jul 30, 2019
    Posts:
    27
    Everytime I have the same problems but also with a polygon collider) I have a "curve" platforms, like symbol ~ , so easiest and fast way to make a floor - is to place polygon2d. Otherwise I need to connect boxes (box2d col) pixel by pixel, or my character makes "micro-jumps" at the edges of connections, means he playing 1 frame of jump animation for like 0.1s
     
  41. SupremeSmash

    SupremeSmash

    Joined:
    Nov 30, 2018
    Posts:
    30
    I installed Universal pipeline renderer 7.4.1 and 2D renderer for 2D lighting in my project, the only issue I am having now is the UI camera now has a solid blue background in the Game view.

    Any advice on what/where I should be looking or learning about would be awesome

    Edit* the 2D lighting works fine in the game view if I disable the UI camera

    Capture.PNG ui.PNG
     
    Last edited: Jun 27, 2020
  42. jjkrr

    jjkrr

    Joined:
    Dec 3, 2018
    Posts:
    23
    For damage feedbacks and the MMfeedback component, I want to put a damage feedback animation on an enemy. I used auto build AI character and created a child of the enemy, called it damage feedbacks and added the MMfeedback component. What do I drag into the bound animator field?
    I have an animator for the damage animation, but it won't let me put that in the field.

    Thanks
     
  43. DrNeko

    DrNeko

    Joined:
    Oct 5, 2012
    Posts:
    9
    Hello @reuno,
    Thanks again for taking a look at this. I was wondering if it's possible to change the speed of the crusher at each direction (fall fast, but slowly climb up) and have it activate when a player is from a certain distance (similar to spiked crusher from Metal Man in Mega Man 2) or below from raised crusher (similar to Thwomp in Super Mario). I tried tweaking it but been unsuccessful at either.


    @piccolodmq I changed the speed but doesn't seem to make a difference (tried speed of 20 and 10).
     
  44. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
    @SupremeSmash > That's one of the many issues of URP. You can find more info about it online, or in this post : https://forum.unity.com/threads/rel...-crush-detection.286289/page-128#post-5572327
    @jjkrr > MMFeedbacks and animations are two completely different things. I'd recommend reading the documentation on feedbacks to learn more about how they work, and look at the many examples in the asset (most characters, if not all, have feedbacks setup on them).
    @Dr-Neko > You can do that by extending its script, for sure, or by creating a new class that triggers it based on proximity (or when entering a certain trigger). You can even use some of the MM classes that let you bind that.
     
    SupremeSmash likes this.
  45. SupremeSmash

    SupremeSmash

    Joined:
    Nov 30, 2018
    Posts:
    30
    reuno likes this.
  46. PhantomFox128

    PhantomFox128

    Joined:
    May 22, 2019
    Posts:
    157
    Hey guys, bit of a noob question, but I've tried reading through the documentation and playing around with some stuff, but I cannot for the life of me figure out how to change the size of the camera in the Minimal Level scene. It's permanently stuck at 5 and will not go anywhere else. Is it even possible to change it and if so, how?
    And on a similar note, is there an easy-to-understand explanation on how to setup ProCamera2D with Corgi, if that's possible?
     
  47. piccolodmq

    piccolodmq

    Joined:
    Jan 7, 2020
    Posts:
    34
    Reuno, first of all thanks for this amazing project. Thanks for listening to our many questions and requests, this is what makes the difference between a good engine, and an awesome project, like yours.

    Having said that, is there a proper way tom make suggestions for future updates?

    1- Something that could be fun is a way to make melee attacks that go in different directions ( think of Link on Zelda 2, upward and down slash attack) where, depending on what key combinations (up down), you are having. I have tried, unsuccessfully to make this myself.

    I know you can customize the current melee system, to aim anywhere, and another way is what you suggested to implement an external keybind system, to the corgi engine( I tried this with some buggy results). So yea there is that.

    2- Another request would be, extending an option for when you Stop Movement while using an attack, to exclude while you are not grounded, (currently if you are jumping forward, and use an attack with this option you physics stop and you fall like a rock mid air).

    Again I know this are personal requests, but hopefully you can think on adding them in the future.

    Do you keep up to date with update on all your other, engines as you do in this one?

    Thanks for your work!
     
    mladenmarkov likes this.
  48. SupremeSmash

    SupremeSmash

    Joined:
    Nov 30, 2018
    Posts:
    30
    Changing the the Orthographic size in the CinemachineVirtualCamera game object worked for me
     

    Attached Files:

    PhantomFox128 and reuno like this.
  49. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
    PhantomFox128 likes this.
  50. KOPEW

    KOPEW

    Joined:
    Jul 30, 2019
    Posts:
    27
    Yeah man, you need to change settings at Cinemachine Virtual Camera, not on default)