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. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
    @dmauldin > Yes, the dynamic gravity will work but it has its limits (you've found one in these small bumps on every angle change). Creating a dedicated ability that detaches the player from gravity/normal movement, but instead moves it left/right on that spline, changing its model angle would probably be safer.
     
  2. luigi7

    luigi7

    Joined:
    Jun 30, 2015
    Posts:
    99
    Hello, I'm having this timing problem:
    * Enemy with AIBrain
    * Melee Weapon used by that enemy, everything seems to work (the animation plays, the attack fires)
    * the weapon animation needs to be looped while the player is close: it's essentially a bite so the enemy charges and then bites
    ->If I just make it Auto and tune the timing with Melee Damage Area Timing to damage according with animation and the attack loops for a while, the damage area goes out of sync with the animation.
    I played a while with auto/semiauto and the animator's transitions but I could not find a good solution to loop seamlessly without losing damage sync
     
  3. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
    @luigi7 > I'm not aware of any "loss of sync" between damage systems and animation (and I don't see how it could be possible, both are synced at the frame level). You can see an example on the RetroSwordsman in the RetroAI demo scene, I just let it run for 200 attacks, it's still going in sync. If your issue persists, please use the support form and provide steps to reproduce it, from a fresh install, I'll be happy to run more tests for you.
     
    luigi7 likes this.
  4. bwlgeo

    bwlgeo

    Joined:
    May 10, 2022
    Posts:
    13
    Trying to make it so that the player normally flips to face direction, but doesn't when certain melee weapons are equipped, but the "Flip Character To Face Direction" isn't in the list in the unity inspector when trying to call an event. Any other way I can switch that Bool through an event or maybe some code?
     
  5. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
    @bwlgeo > FlipModelOnDirectionChange is a public bool, you can access it from anywhere, as simple as this :
    Code (CSharp):
    1. aReferenceToYourCharacter.FlipModelOnDirectionChange = false;
     
  6. xacarana

    xacarana

    Joined:
    May 12, 2015
    Posts:
    27
    Hello @reuno I want to setup and Archievement, that I could call several times during a level, like a notification System, but using The Archivement feature in Corgi Engine.

    What do you think? I only see progress and unlock in Achivements Rules, I want to use somenthing like push, or a setInterval (a notification each time). Ok I hope there is somenthing interesting to do. Thank you!
     
  7. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
    @xacarana > I think it'd be easier to create a new dedicated system for that, achievements and notifications have different specs, it'll be harder to modify a system designed for a completely different purpose, and will lead to more issues, but sure, it's doable, if you implement it, everything's possible.
     
  8. xacarana

    xacarana

    Joined:
    May 12, 2015
    Posts:
    27
    @reuno Thank you for clarification about that.
     
  9. xacarana

    xacarana

    Joined:
    May 12, 2015
    Posts:
    27
    @reuno Hello, I want to know if there is some parameter or somenthing that controls, how many Archievements message shows during a level. Because I have only 4 achivements maximun does it, no more. I test it several times, the same. I was looking for a parameter to control this maximun, but I can't find anyting. Please help. Thank you!
     
  10. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
    @xacarana > It depends on the size of your UI elements. Make the container bigger, you'll be able to display more.
     
    xacarana likes this.
  11. xacarana

    xacarana

    Joined:
    May 12, 2015
    Posts:
    27
    reuno likes this.
  12. xacarana

    xacarana

    Joined:
    May 12, 2015
    Posts:
    27
    Hello again @reuno I have a question about Pause feature. Whe the game is paused the
    StartCoroutine also stop? What is your recomendation to close a window during pause after waiting for a few seconds? Thank you!
     
  13. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
    @xacarana > You'll want to look into unscaled time, I suppose. If you have more questions, please use the support form, thanks.
     
    xacarana likes this.
  14. xacarana

    xacarana

    Joined:
    May 12, 2015
    Posts:
    27
    @reuno Thank you!, I had to changed for realtime instead, because pause affects waiting for seconds. Sorry bother you with so many questions. And thank you for your help, also today FEEL is with discount

    Solutions, maybe someone need it:

    Code (CSharp):
    1. public IEnumerator EsperarXSeg(int sec)
    2. {
    3.         yield return new WaitForSecondsRealtime(sec);
    4.         CerrarVentana();
    5. }
     
  15. AndreaFantasia

    AndreaFantasia

    Joined:
    May 12, 2014
    Posts:
    2
    Hello @reuno ! What is the method to speed up the character while climbing the stairs? I am referring specifically to "stairs" not "ladders". I tried changing all the possible values from the respective scripts (horizontal movement, character run etc) but for any change to the speed I make, the speed of the stairs always remains the same.
     
  16. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
    @AndreaFantasia > There's nothing to change the speed on stairs specifically. That would be impacted by the slope speed curve, but that would impact all curves, not just stairs. The easiest way would be to create a new ability that applies a multiplier while on stairs.
     
  17. Dumpling007

    Dumpling007

    Joined:
    Dec 13, 2018
    Posts:
    32
    Hi reuno,

    I have a problem about saving coin points, I save the points and load the points successfully with "EasySave Plugin",but the UI always display "000000", I think the problem from "UI Manager/Points Pattern", it will Overwrite the displayed points of UI;
    I don't know how to resolve it.
     
    Last edited: Dec 9, 2022
  18. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
    @Dumpling007 > You'll need to call the RefreshPoints method on your GUI Manager for the points to refresh.
     
  19. Eyehawk

    Eyehawk

    Joined:
    Dec 24, 2012
    Posts:
    288
    Hi Reuno, really enjoying the pack and the multitude of awesome demo scenes!
    I had a bit of a simple question: is it possible to alter the camera so that when the player reaches the edge of the screen, it shifts the camera one screen-length to the right? A little bit like the old metroid games when you went through a door.
     
  20. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
    Eyehawk likes this.
  21. Eyehawk

    Eyehawk

    Joined:
    Dec 24, 2012
    Posts:
    288
    Oh wow! That's exactly what I'm looking for - massive thank you! :)
     
    reuno likes this.
  22. Dumpling007

    Dumpling007

    Joined:
    Dec 13, 2018
    Posts:
    32
    Thanks very much reuno!!
     
    reuno likes this.
  23. fertel

    fertel

    Joined:
    Jul 3, 2018
    Posts:
    10
    Hi, how can i round damage min/max float to int? Pls check uploaded images.
     

    Attached Files:

  24. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
    @fertel > You can do so as mentioned in your first screenshot, by selecting a rounding method on your floating text feedback. That's if you have the latest version of Feel. If you don't, you'll need to wait for the next update of the Corgi Engine, coming soon, that will bring it up to speed on that feature.
     
    fertel likes this.
  25. fertel

    fertel

    Joined:
    Jul 3, 2018
    Posts:
    10
    After imported latest Feel, this happens on console. Any tip to solve? Thank you
     

    Attached Files:

  26. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
  27. bwlgeo

    bwlgeo

    Joined:
    May 10, 2022
    Posts:
    13
    Having a bit of an interesting issue. I have a character object, then two nestled ability objects, and I'm using the ability node swap ability to switch between the two nestled objects. Only problem is, when I switch abilities, it turns invulnerability on, on the main character object's health component. Switching again doesn't turn it off, and none of the nestled objects have health components or any other type of invulnerability that I could see interfering with that main health component. Any wonder what might be causing this?
     
  28. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
    @bwlgeo > I would need more information to be able to help. The issue doesn't seem to happen when setting things from scratch, or when testing in a demo.

    Here are simple steps to verify this :
    - fresh install of CE 8.1 on 2019.4.40f1
    - open the BrobroLevel demo scene, press play in the editor
    - with the spine-brobro node selected, press P to swap ability nodes, notice that the Health doesn't become invulnerable

    If your issue persists, please provide similar steps, I'll be happy to have another look for you.
     
  29. bwlgeo

    bwlgeo

    Joined:
    May 10, 2022
    Posts:
    13
    I narrowed the problem down, strangely enough, to the character's Roll component. Even though Roll is bound to a different key, it seems that switching ability nodes triggered the roll and its invincibility, but because I was switching ability nodes, the invincibility didn't go away. Unchecking "Prevent Damage Collisions During Roll" made it so I could switch without making the character invulnerable.
     
    reuno likes this.
  30. EarlyDarkEntertainment

    EarlyDarkEntertainment

    Joined:
    Oct 8, 2018
    Posts:
    15
    Hello minor fix for teleporter if you want to include in an update.
    (in my case the teleporter was to the right of the player and I wanted her to face right before she teleports)

    Added to function SequenceStart

    if (!player.IsFacingRight) {
    player.Flip();
    }
     
    reuno likes this.
  31. tosvus

    tosvus

    Joined:
    Dec 27, 2016
    Posts:
    44
    This is probably a very stupid question, but.... I am trying the Corgi3d demo-scene, and wanted to see what happened if I put in my own custom background. I tried dragging a large png (5000x1000 approx) and place it right behind the objects. This creates a sprite. I also tried to create a material and assign it to a plane, but both approaches give very blurry background. In my Scene view it looks great, as soon as I start it (or go to Game view) the background is completely blurred out. Is there some simple way of avoiding this? It appears to be the post process layer on the 3d camera that causes it. Turning off post process gives a sharp background but now everything in the front looks a lot worse. Thanks!
     
  32. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
  33. Helienio

    Helienio

    Joined:
    Sep 11, 2014
    Posts:
    29
    Hello, I have created an animation of the character that moves on the ladder, but while I climb to the character and stop in the middle of the ladder for example, the animation remains in loop without pressing anything on the keyboard, what could it be?
     
  34. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
    @Helienio > It's likely to be an issue in your animator. You can debug it at runtime to see what the problem is. You can also compare with any of the demo characters that have climbing animations (RetroCorgi for example) to see how they do it.
     
    Helienio likes this.
  35. Underline404

    Underline404

    Joined:
    Jun 7, 2022
    Posts:
    2
    Hi, does Corgi engine support multi ground layer depth? For example, player can switch from ground A (near screen) to ground B (far screen)
     
    Last edited: Jan 19, 2023
  36. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
    @Underline404 > There is no such feature at the moment. You can see a full list of features on the asset's website.
     
  37. Eyehawk

    Eyehawk

    Joined:
    Dec 24, 2012
    Posts:
    288
    Hi there, I have a problem with rooms at the moment. When I copy zones they seem to work, but at a later time, the wrong camera from another zone without the player will activate and take priority over the zone the player is current in at the moment. Is there anyway to prevent this?
     
  38. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
  39. Eyehawk

    Eyehawk

    Joined:
    Dec 24, 2012
    Posts:
    288
    Yes I based it on the Rooms demo scene. Thanks for the manual page link, I'll take another look and come back to you if I still have issues.
     
    reuno likes this.
  40. wechat_os_Qy0z_aF7Nfhquhava38GLxUWU

    wechat_os_Qy0z_aF7Nfhquhava38GLxUWU

    Joined:
    Dec 22, 2021
    Posts:
    56
    Hi renuo,
    I want to trigger feedback when using consumption items.I can make a better visual representation when character use items.So I am trying to modify some code.
    I added “MMFeedbacks Feedback = TargetInventory(playerID).Owner.GetComponent<MMFeedbacks>();”in
    InventoryEngineHealth.cs.Seems no feedback show up when character use this type item.
    Can you give me some advice?Thanks
     
  41. wechat_os_Qy0z_aF7Nfhquhava38GLxUWU

    wechat_os_Qy0z_aF7Nfhquhava38GLxUWU

    Joined:
    Dec 22, 2021
    Posts:
    56
    Should I create a custom character ability to trigger this consumable item usage feedback? But there are already have CharacterInventory.cs
     
  42. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
    @wechat_os_Qy0z_aF7Nfhquhava38GLxUWU > I'm not sure I understand that piece of code. Unless you have a MMFeedbacks at the top level on your Owner (which wouldn't be great), it won't do anything. And yes, ideally you'll want to have an ability to target, that'd be a better separation of concerns.
     
  43. wechat_os_Qy0z_aF7Nfhquhava38GLxUWU

    wechat_os_Qy0z_aF7Nfhquhava38GLxUWU

    Joined:
    Dec 22, 2021
    Posts:
    56
    Thank you, this is the first time I heard of this term< separation of concerns>.
    I am not a programmer, but I googled about it, it seems to be a kind of engineering system thinking method.
    This is very good, I will continue to learn.
    I think this kind of mentality method can be used in many fields.
     
    reuno likes this.
  44. Helienio

    Helienio

    Joined:
    Sep 11, 2014
    Posts:
    29
    thank you so much.
     
    reuno likes this.
  45. Helienio

    Helienio

    Joined:
    Sep 11, 2014
    Posts:
    29
    Hello, I come to bring feedback on my problem with the ladder in the 2.5D version. The player when standing on the ladder, does not stop moving and does not call the LadderClimbIdle animation correctly and what was the solution. The problem is that the Animator NewCorgi3DAnimatorController in the transition from AnyState to ClimbLadder animation is missing the comparison of LadderClimbSpeedY->Greater->0.2, with this I solved the problem that the character does not stop moving. This occurs in a clean version of CorgiEngine, so the creator could fix this detail in their next bug fix.

    However, I now have a new problem. I am trying to put a timer in my game using the mmcountdown.cs component. I added it to the UI and in the Countdown Complete Event() to run an action, I selected the player prefab and used the Kill() function of Health if the time is 0, but the player does not die, and what happens is that it deactivates the prefab. What am I doing wrong, how can I kill the player when the time is 0?

    I use the last version of corgi 8.2 and Unity 2021.3.17f1
     
  46. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
    @Helienio > Calling Kill on a Character's Health will kill it. That's how it's done. The character being disabled would be the expected result in such a case, that's what Kill does. You can see it in action across multiple classes, from the KillPlayerOnTouch to the LevelBounds ability, the CrushDetection one, or the SelfDestruct AI Action.
     
    Helienio likes this.
  47. Helienio

    Helienio

    Joined:
    Sep 11, 2014
    Posts:
    29
    But I need Kill the player if the countdown is 0. You have any sample to see how mmCoundDown work? I search for this but no have any sample.
     
  48. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
    @Helienio > No, there are no samples of it, it's a helper class, and is fairly straightforward. And while I wouldn't use one to kill a character after a while (definitely something that should live in its own system to avoid hard bindings), it's easy to do :
    - fresh install of CE 8.2 on 2019.4.40f1
    - open the MinimalLevel demo scene, drag a Rectangle in it, set the LevelManager's PlayerPrefabs array size to 0, put the Rectangle as the SceneCharacters[0]
    - add a new Text object to the UICamera's Canvas, position it at 0,400,0
    - add a MMCountdown to it, CountdownFrom:5, CountdownCompleteEvent:Rectangle:Health:Kill()
    - press play in the editor, after 5s, the Rectangle gets killed
     
    Helienio likes this.
  49. Helienio

    Helienio

    Joined:
    Sep 11, 2014
    Posts:
    29
    Yes, this way works, but only once, I also need the player to reappear again in the Star Point, and if I use the prefab of the rectangle it does not work because the function mmCountDown does not work with the prefabs and the events do not work. A basic function A Countdown Kill Player should be added in future versions, the MMCountdown is good and helps with many things but only works with objects in the current tree and not instances.
    Thank you very much for your time, Reuno.
    I will try to create my own function, since, with the current functions I have not been able to achieve my goal.
     
  50. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,923
    @Helienio > As I said, I wouldn't recommend using a countdown UI helper to implement such a feature, it requires its own system. The engine's API lets you do that, I'd recommend implementing it cleanly.
     
    Helienio likes this.