Search Unity

  1. New Unity Live Help updates. Check them out here!

    Dismiss Notice

[RELEASED] Corgi Engine - Complete 2D/2.5D Platformer [new v6.3 : throw objects, pressure pads]

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

  1. Muppo

    Muppo

    Joined:
    Sep 28, 2016
    Posts:
    237
    You already can do that with the rooms system.
    Maybe it's not 100% obvious as RetroVania scene is made of Unity tiles, true, but if you make the level with standard assets, just a simple script to disable the whole room may do that.

    Ok, this may not be exactly what they did back in the SNES era but you can use this method and add even more stuff per room than they were able to as you don't have such limitations on current machines.
     
    reuno likes this.
  2. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    3,380
    There was a loading screen every time you went through a door in super metroid. I never looked at the code myself but it seems pretty clear that's actually what the doors were for : https://external-preview.redd.it/4x...p4&s=09a7ecf835dcdb7e42c8257c738020ceeb51cb98

    Again I'd recommend reading a bit more on optimization techniques, especially in the context of your game. I'm sure you'll have a clearer picture of what you want after that.You'll likely run into harder issues to solve than just disabling objects. Again, really happy to discuss that with you once you've done a bit of research and have engine related questions in that regard.
     
    shyamarama and Meowx like this.
  3. christougher

    christougher

    Joined:
    Mar 6, 2015
    Posts:
    484
    If you could add features to your engines that fix Unity's underlying performance issues that'd be great.
     

    Attached Files:

    reuno likes this.
  4. Reactorcore

    Reactorcore

    Joined:
    May 19, 2011
    Posts:
    98
    Thats the thing, I do not know how to make such a script. I am relying on Corgi and its workflow because I lack the ability to do this myself. Can you please make it if it is so simple?

    Come on, you know what I mean. Please don't play dumb.

    I get it you're working on this project alone, among many other responsibilities and have a need to ease the load on yourself. At the same time I'd like a bit more understanding from you to see my point of view. I am making the game completely within the limits of the corgi engine and I would appreciate if the Room System included a simple enable disable script that only kept one room active.


    Thats not okay for you to do that. Please be more respectful and do not belittle others.
     
  5. Reactorcore

    Reactorcore

    Joined:
    May 19, 2011
    Posts:
    98
    I get a feeling like I'm being spat on here. : (
     
  6. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    3,380
    @Reactorcore > I don't think Muppo was implying that optimizing a game is simple. And I'd appreciate it if you didn't suggest I was playing dumb. And no, I don't know what you mean. I've been patient, and have tried to explain to you that optimization is a bit more complex than what you mention in your messages, and have suggested ways you can learn more about it. It's a vast subject, dependent of many, many parameters, and a subject I find very interesting. As far as I can tell, everyone's been respectful of what you've said and have just tried being helpful, and have tried pointing you in the right direction.

    But at this point I'm not sure what else to do. I've asked you to submit your improvement requests via the support form, as far as I can tell, you haven't. You won't be able to optimize your game if you refuse to do either research, code, or listen to advice.

    Enabling or disabling stuff is actually already doable with the Actions per teleporter, without code :

    upload_2020-1-26_17-2-44.png

    I can make a dedicated list for that at the Room level, if you request it via the support form. But once again, please understand that this may not have the impact you think it will, and that efficiently optimizing a game without writing a single line of code is gonna be hard.

    Edit : had missed the part where I ease the load on myself. That's cute.
     
    Last edited: Jan 26, 2020
    MudPuppet likes this.
  7. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    3,380
  8. javi_unity402

    javi_unity402

    Joined:
    Nov 29, 2018
    Posts:
    20
    Please, suggest a feature and wait for @reuno response (or any other). If you need freelance programmer, contact him by private.

    We are more using the forum.
     
  9. piccolodmq

    piccolodmq

    Joined:
    Jan 7, 2020
    Posts:
    7
    Hi there, I was looking to edit the Jump Script, with my limited c# knowledge and have not been successful. I tried to emulate old nes game "rigid" jumping. For example, Castlevania when Simmon jumps forwards, he cannot change his direction mid-air. I tried looking at the scripts for crouching and melee weapons that does this, so I could try to adapt the stop movement in mid-air once it jumps (but keeping the direction and inertia) with no luck. Any advice on what to do?
     
  10. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    3,380
    @piccolodmq > I believe I just answered you via email, no need to ask twice :).
    In any case, as explained in the documentation, you can set MovementForbidden to true on CharacterHorizontalMovement to stop movement.
     
  11. Reactorcore

    Reactorcore

    Joined:
    May 19, 2011
    Posts:
    98
    @reuno I think you're being evasive here.

    My whole point is that you created a feature which introduces a way to chop a level into smaller chunks (rooms) and making an elaborate camera transition between them... but not actually having any practical benefit to it.

    Its like you built a car without wheels. Just a chassis on the ground that isn't going to move anywhere.

    I'm saying the room system is useless and it makes more sense to build levels without it.
     
  12. Reactorcore

    Reactorcore

    Joined:
    May 19, 2011
    Posts:
    98
    That screenshot doesn't explain anything. Do I stick the room game object into it or what do I do?
     
  13. Muppo

    Muppo

    Joined:
    Sep 28, 2016
    Posts:
    237
    @Reactorcore , I'm not saying optimizing is simple at all. Hope it was.
    If you just wanted to disable the rooms where there's no player, one way to do that is with the Actions on the teleporter as the pic he posted show, no code need for that, just setting things right.

    I'll assume you're not use to this if you allow me for. Here is a video showing how to set stuff on Unity Events (the "Actions" on reuno's pic)



    Anyway, current room system let you chop level in isolated rooms as near or far as you want and it's useful because gives you more control on the camera behaviour than previous one.

    upload_2020-1-27_12-50-27.png
    (I just place it near because I don't want to zoom out too much)

    As graphic artist myself, I can understand the initual frustration on dealing with such things, but gathering knowledge about how the engine -and I mean Unity in this case- works will help you to get your own solutions eventually.

    Hope this helps.
     
    Meowx likes this.
  14. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    3,380
    @Reactorcore > No, I'm not being evasive. The feature you're after is already supported. I've showed you how. Didn't know you didn't know what actions were, I thought you just didn't know how to code. Muppo explained more. But please check that attitude, just because you don't understand a feature doesn't make it a car without wheels. At best it makes it a car without a driver.
    And again, if you want changes and updates, just like everyone else, you can request them via the support form. I get tons of request on a daily basis.
     
    MudPuppet and UnityMaru like this.
  15. Reactorcore

    Reactorcore

    Joined:
    May 19, 2011
    Posts:
    98
    Thank you, this atleast clarifies what the role of the Actions thing was.

    I didn't ask about whether optimization was simple or not. You said a room disabling script is simple to do. How to make one and how do I use it with the rooms in the room system specifically?

    Also thank you for the empathy about being frustrated with a complicated system. I do feel this strongly and I'm trying my best to chart out the clarity and limits that I should abide by when making my project, so that I know what I'm doing. Anything that goes beyond that is not something I can not afford at this moment.
     
  16. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    3,380
    @Reactorcore > You don't need a script, you can just drag a subpart of your room (the part you want to activate/disable) into the actions in my screenshot above, and enable/disable on entry/exit from there.
     
  17. Reactorcore

    Reactorcore

    Joined:
    May 19, 2011
    Posts:
    98
    It just doesn't make sense to me.

    You truly believe the way Castlevania or Metroid worked with their own respective room systems was because they thought it just looked cool and were not simply using that system because there was no other way for them to achieve a persistent open world gameplay that had minimal stops in momentum?

    As it stands, the room system in corgi engine simply artificially pauses the game and switches cameras for no real benefit what so ever. Might as well change the whole scene than fiddle with it, since atleast that way the rest of the map gets unloaded and you get a new camera anyway.

    Labeling it as a metroid/castlevania room system gave me the impression you added a real solution for a single-scene persistent open world map, because that was the entire point of those things in their original games.


    Individually?

    What about if my room has 80 objects in it? Would it work if they all were simply grouped under a parent gameobject and I only disable that one?
     
  18. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    3,380
    @Reactorcore > I'm gonna say this one last time : Castlevania and Metroid don't work like you think they do. I'm all for positive criticism, but being schooled on optimization and having my system criticized by someone who doesn't know how to code and has no idea how the systems he's referring to actually work, it's a bit too much, especially with that attitude. And once again, I (and others) have shown you how the system you seem to think is so bad lets you do exactly what you want (even if, as explained before, you're completely misguided as to the consequences of what you're after). And sure, you can group all your 80 objects under a parent, why not.

    Yes, creating a game without coding is hard. It's super hard. I believe it's impossible. I understand it is very frustrating. But you made that choice, not me, not others. Please don't blame us for that choice of yours.

    Personally, I'm done here. If you have more questions, as others have asked you before, please use the support form, thanks.
     
  19. Takiden

    Takiden

    Joined:
    Oct 29, 2018
    Posts:
    1
    Hello Reuno and/or others willing to help. First of all, thanks for this sweet engine as it has saved me a ton of time.

    I am an intermediate coder, so i struggle with your work a little. In your tutorial about switching characters you mention you can activate it when picking an item and that's almost exactly what i need. My player character can summon sort of minions and i want him to be able to absorb those minions and change the current player to a different one with a different look and abilities. So basically each minion should switch the character to a different character. I figured i can make those minions have an pickable item script, so i can pick them up and trigger a character switching.
    I have tried around for 3 days now and i can't find a solution. I can't even make it that you pick an item by the press of a button instead of the default of walking over it.
    So, if someone is willing to help me out, i would really appreciate it.
     
  20. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    3,380
    @Takiden > I guess I wouldn't try repurposing classes that have little in common with the goal in this case.
    It might be faster (and easier) to create dedicated classes for this specific task.
    And I'd recommend breaking the problem into manageable chunks to make it less daunting. I suppose you could try creating a class you put on your minions, that detects input and only "activates" when at a certain distance of the character. That's two ifs and one line to "activate". Maybe start with that and go from there. If you have questions directly related to the engine, don't hesitate to use the support form and I'll be happy to help. This seems to be more standard Unity for now.
     
  21. Quinn221

    Quinn221

    Joined:
    Oct 16, 2017
    Posts:
    21
    reuno likes this.
  22. andrin_man

    andrin_man

    Joined:
    Mar 9, 2014
    Posts:
    11
    Oh man! I just spent the last two hours building this same functionality out myself. Glad to know we are on the same page.
     
    reuno likes this.
  23. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    3,380
    @andrin_man > I usually don't announce stuff before it's finished, but the next update may (or may not) contain pressure pads like that, and the ability to grab and throw stuff (ala Mario Bros 2). Potentially on top of said pressure pads. Potentially enemies as well.
     
    Quinn221 likes this.
  24. piccolodmq

    piccolodmq

    Joined:
    Jan 7, 2020
    Posts:
    7
    I was just trying to do the Mario 2, carry objects, things on my own. Don't forget to consider the Jump forward, and cant chance direction thing :) (Castlevania 1 style). I am also working on a soccer-like function, where I can kick a ball. I was wondering if I could get the results, with the "Knockback" Functions, that weapons have on enemies, on a ball. I have been trying with no success.
     
  25. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    3,380
    @piccolodmq > I think I'd go with a dedicated class for something like kicking a ball, it's too specific to try to use the knockback for this.
     
  26. eNm2

    eNm2

    Joined:
    Oct 28, 2017
    Posts:
    2
    Hi Everyone,

    i want to play a new Animation if my Player reached the LevelEnd ( i have a Trigger Object here)..

    I have added the Animation to the RectangleAnimatorController and add a new Bool to the ParameterList.

    What i must do next to play my Player my new Animation...

    thx
     
  27. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    3,380
  28. eNm2

    eNm2

    Joined:
    Oct 28, 2017
    Posts:
    2

    I know how to trigger Animation Parameters but it dont works ,, i dont know why

    here is my Code:

    public class CharacterLevelEnd :MonoBehaviour


    {

    private Animator anim;


    void Start()
    {
    anim = GetComponentInChildren<Animator>();
    }



    private void OnTriggerEnter2D (Collider2D other)
    {
    if (other.CompareTag ("LevelEndBlock") )
    {
    anim.SetTrigger("LevelEnd");

    }
    }

    }
     
  29. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    3,380
    @eNm2 > Without context, I don't know what could be wrong with that piece of code. But it's really nothing specific to the engine, I'm sure you can ask around anywhere. Personnally I'd recommend using debug tools to try to see why it's not doing what you designed it to do.
     
  30. hjh965

    hjh965

    Joined:
    Nov 26, 2015
    Posts:
    2
    Hello, I just bought Corgi Engine and imported all of its assets into an empty 2D project.
    However, I can't play the demo because of 2 errors. And since the document recommends not to modify the script, I decided to post the problem here to get help.
    upload_2020-2-2_17-46-11.png
    What should I do? Am I missing something? I did exactly what the Overview section told me to do, so I'm a bit lost here.
     
  31. Muppo

    Muppo

    Joined:
    Sep 28, 2016
    Posts:
    237
    As you can see, the errors are from Unity itself, not Corgi. Reuno had recommend not using 2019.3 versions several times due to this.
    Can you can try again with a 2019.2.x Unity version?
     
    reuno likes this.
  32. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    3,380
    @hjh965 > This looks like a package issue. Try updating the pixel perfect package to its latest version.
     
  33. hjh965

    hjh965

    Joined:
    Nov 26, 2015
    Posts:
    2
    @reuno I updated the package and the demo now plays without any error. @Muppo Thanks, both of you.
     
    Muppo and reuno like this.
  34. zemanek86

    zemanek86

    Joined:
    Feb 4, 2020
    Posts:
    2
    dobrý den,
    prosím pomozte.
    Level RetroClouds uložit jako le1 upravit přidat do LevelSelection.
    err: odkaz na objekt není nastaven na instanci objektu
     

    Attached Files:

    • 1.jpg
      1.jpg
      File size:
      324.5 KB
      Views:
      50
    • 2.jpg
      2.jpg
      File size:
      342.2 KB
      Views:
      53
  35. Muppo

    Muppo

    Joined:
    Sep 28, 2016
    Posts:
    237
    @zemanek86
    Sorry but we speak english here.
    The problem you show on the screenshots means you have to add that "lev1" scene to the build meanwhile it is open.
    Every scene you create should be on the build if you want it to be loaded, there's nothing wrong with the script :)
     

    Attached Files:

    reuno likes this.
  36. zemanek86

    zemanek86

    Joined:
    Feb 4, 2020
    Posts:
    2
    Thank you
     
  37. daniloamf

    daniloamf

    Joined:
    Jan 5, 2020
    Posts:
    1
    Hello, I am recently using the corgi engine, I would like to know, is there any compatibility with unity's 2D Sprite Shape feature?
     
  38. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    3,380
    @daniloamf > Sure, the engine is independent from how you render stuff. As long as your colliders are properly setup, it'll work :)
     
  39. marcarasanz

    marcarasanz

    Joined:
    Aug 23, 2019
    Posts:
    14
    Hi,
    First of all, i bought your asset, and i just implemented in to my game. Am using last Unity version with Universal Render Pipeline, and seems that my game works fine in everything, and am enjoying your asset and is helping me a lot , so thank you for your job. Am a person that i don't know how to code, but i have a little skills with Unity, and am having some troubles figuring how to achieve some implementations, so i want to ask for help or guidance in my doubts, i appreciate it if it's possible.

    -I am creating a 2d sci-fi shooter, and am having trouble how to implement the aim system with the animations etc. to fit all well together. As you can see, in the image, i have a character, and that gameobject have 3 sprites that are attached to the character object that are the first arm the head and de off arm, what i want is that the 3 objects follow the mouse cursor, so that gives the sensation the sprite is pointing all time where we point with the mouse. The trick part is here, i need that when the mouse pass the 180º the player flip, and if the player is running to the left but pointing to the right, i have an animation of my player running like backwards, can be implemented this animation in some way? I used the handle weapon rotation, but i would ask if you can guide me to how to achieve this.

    -My other question is about Doors and platforms, i want to have some kind of doors and platforms, that can be opened with a button in game but don't need any key. I could make this things with other scripts i have, but am tryin to use your engine in almost everything if I can.

    Well, thank you for your attention, and my english is not so good so I hope you can understand my post.
     

    Attached Files:

  40. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    3,380
    @marcarasanz > 1. I suppose that's something you'd fix at the animator level. Not sure how that relates to the engine though, it's quite specific and looks just like a Unity issue. Look at the documentation to learn more about what the engine exposes as animation parameters. Or you could use IK, it's up to you really, without knowing your context it's hard to tell.
    2. Have you looked at the documentation? The doors section in particular?
    If you have more questions please use the support form, thanks.
     
  41. marcarasanz

    marcarasanz

    Joined:
    Aug 23, 2019
    Posts:
    14
    1. I think i need to explain with more detail what i mean, sorry about posted here, i thought this was the only corgi forum.
    2.I have looked at the documentation, just followed the tutorial videos, but i didn't read the key operatedZone part, now it's all fine my doors are working.

    Thank you for the attention.
     
    reuno likes this.
  42. Sofiel

    Sofiel

    Joined:
    Aug 6, 2017
    Posts:
    32
    Hello @reuno quick question.

    I’m tweaking the water dynamic similar to Super Mario World SNES where if on the ground the walk speed is reduced. That’s fine but when I run (which I also did an override and reduce speed) when letting go of the button the walk speed goes back to normal bypassing the override.
    Should I instead disable running while in the water so it doesn’t reset or should I go another route? Thanks for your time.
    Awesome update (as usual) by the way.
     
  43. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    3,380
    @Sofiel > There are multiple ways to do that : force a speed modifier, disable run, all of these would work.
     
  44. Sofiel

    Sofiel

    Joined:
    Aug 6, 2017
    Posts:
    32
    Thanks @reuno !
     
    reuno likes this.
  45. piccolodmq

    piccolodmq

    Joined:
    Jan 7, 2020
    Posts:
    7
    Hi there. I was trying different ways to make a different animation, appear only when attacking (shooting projectile) while jumping or in the air. I tried different Animation Parameters reading through this material,https://corgi-engine-docs.moremountains.com/animations.html#animation-parameters, + I tried different conditions (jumping, name of the melee attack condition triggers, not grounded, etc) with no success. Anyone here could point me in the right direction?
     
    Last edited: Feb 10, 2020
  46. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    3,380
    @piccolodmq > It's not done any differently than in any other Unity project. Grounded false + melee > air attack, grounded true + melee > ground attack.
     
  47. kraulim

    kraulim

    Joined:
    Mar 22, 2019
    Posts:
    3
    Good morning people!
    I am started learning Unity a few weeks ago. And sorry my poor english, because it´s not my main language.
    I Would like to Know if Corgi Unity have integration with Playmaker. I got Corgi last week now i would like to buy Playmaker and use that inside Corgi Engine.
     
  48. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    3,380
    @kraulim > I don't provide support for it (you can see a full list of features on the assets page, if it's not listed, it's not in the engine), but you can of course use Playmaker with the engine.
     
  49. kraulim

    kraulim

    Joined:
    Mar 22, 2019
    Posts:
    3
    Hello,
    I have tried install Corgi, following the video in youtube at the official channel, but didn't work ... I have Unity 2020 in my computer:

    Corgi-Erro.png

    I tried do that:
    "copy the manifest.json file, located at the root of the Corgi Engine folder, and paste it into your project’s Packages folder"

    However didn't work ...
     
  50. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    3,380
    @kraulim > Unity 2020 is in alpha right now. I wouldn't recommend using it if you're new to Unity.
    And in this case you just have to update the pixel perfect package, as mentioned in the error.
     
unityunity