Search Unity

  1. Unity 6 Preview is now available. To find out what's new, have a look at our Unity 6 Preview blog post.
    Dismiss Notice
  2. Unity is excited to announce that we will be collaborating with TheXPlace for a summer game jam from June 13 - June 19. Learn more.
    Dismiss Notice
  3. Dismiss Notice

[RELEASED] TopDown Engine by More Mountains [new v3.0 : damage types, damage resistance, and more!]

Discussion in 'Assets and Asset Store' started by reuno, Oct 9, 2018.

  1. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,956
    @GesserX > You can see an example of exactly that in the WeaponItem class, which also extends InventoryItem and overrides its Equip method (in this case to just change a sprite on the character in the demo). Extending that class, overriding that method and of course using that item class in an item definition is all you need to do, there's nothing else.

    I'm afraid it's all a bit vague right now to tell what you may have done wrong, if your issue persists don't hesitate to use the support form and provide precise repro steps.
     
  2. GesserX

    GesserX

    Joined:
    Dec 21, 2016
    Posts:
    8
    Yeah, that's exatly what I've done.
    Seems I'm making some silly mistake again. I will try to remake all my steps again, if no luck again I'll use a support form, thank you.
     
  3. christougher

    christougher

    Joined:
    Mar 6, 2015
    Posts:
    558
    Got a request for 3d Character dash that I'd made a few years ago. With 2d dashing if the character hits a wall at an angle it will continue to dash along the wall. Could this be an option implemented in in the 3d dash so that if it hits a wall the dash will continue along the direction of the wall? Thx.
     
  4. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,956
    @christougher > That's a good suggestion! Please use the support form if you have feature requests. They get automatically sorted and the ones with the most votes make it into a release.
     
  5. Stranger-Games

    Stranger-Games

    Joined:
    May 10, 2014
    Posts:
    393
    Was this autofire ever created?

    I have the latest version of topdown with 2022.3.4.
    I couldn't aim with the right joystick until I enabled 'Force Weapon Mode' then set it to secondary movement. Of course then I lose aiming with mouse.
    I am not sure if there's a more elegant way to enable aiming with right joystick and if there's a cleaner way to switch between the mouse aiming and the right joystick aiming.

    Thank you for advance.
     
  6. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,956
    @Stranger-Games > Yes, you can use ForceWeaponMode, or simply set a mode on your WeaponAim, as explained in the docs https://topdown-engine-docs.moremountains.com/weapons.html#weapon-aim
    The feature you quote wouldn't be autofire, that's threshold fire, and that's been in the engine for quite some time. That's something you can set on the CharacterHandleWeapon ability, via the UseSecondaryAxisThresholdToShoot.
    The next update comes with gamepad/mouse schemes autoswitch based on last device used.
     
    Stranger-Games likes this.
  7. Stranger-Games

    Stranger-Games

    Joined:
    May 10, 2014
    Posts:
    393
    Thank you very much for the info.
    Yes, the gamepad/mouse schemes autoswitch would be great.
    I appreciate the great effort you put into the asset development.
     
    reuno likes this.
  8. christougher

    christougher

    Joined:
    Mar 6, 2015
    Posts:
    558
    Hi, I did create some Control Freak touch controllers that work with players 1-4... here's the dropbox link. I believe it had the threshold shoot set up, but it's been a while since I played with it...

    https://www.dropbox.com/s/l1qgrl7xl7fzrad/CF2-TopDownEngine-Players1-4.unitypackage?dl=0
     
    Stranger-Games and reuno like this.
  9. Stranger-Games

    Stranger-Games

    Joined:
    May 10, 2014
    Posts:
    393
    christougher likes this.
  10. wechat_os_Qy02e7QmxUOkN3IFPtncBdCdY

    wechat_os_Qy02e7QmxUOkN3IFPtncBdCdY

    Joined:
    Jul 20, 2023
    Posts:
    1
    hi,i can not buy it in unity..what should i do next?i am in china ,and it says i shoudle wait sales to connect me .what is wrong with it?
     
  11. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,956
    I'm not aware of any issue with the store at the moment, but Unity handles it, not me, so you'd have to check that with them directly. If they say to wait until sales contact you, I'd recommend waiting, or you can try contacting them via their other channels.
     
  12. wechat_os_Qy02ksFgNR5OVetgRxJq1Hcx8

    wechat_os_Qy02ksFgNR5OVetgRxJq1Hcx8

    Joined:
    Mar 26, 2021
    Posts:
    2
  13. wechat_os_Qy02ksFgNR5OVetgRxJq1Hcx8

    wechat_os_Qy02ksFgNR5OVetgRxJq1Hcx8

    Joined:
    Mar 26, 2021
    Posts:
    2
    I tried to create an empty project in versions 2020.3.48, 2021.3.27, and 2022.3.3 and imported this package. However, all the demos are showing missing scripts. I am a beginner, so I don't know what's going on
     
  14. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,956
    It's a bit hard to tell from such a cropped screenshot, but my guess would be this is a Camera, in one fot he demos maybe? If that's the case, looks like you're missing Cinemachine.

    This may be because you declined to import dependencies on install. I'd recommend creating a new empty project and making sure you import them (see install instructions at https://topdown-engine-docs.moremountains.com/install.html). You can also install dependencies manually if you'd like (in this case, Cinemachine).
     
  15. huulong

    huulong

    Joined:
    Jul 1, 2013
    Posts:
    225
    Hello, I was about to buy TopDown Engine on the Asset Store at -50% sale, when I realized the sale was over (the -50% disappeared from my page). I checked my home page again, the summer sale is still on, apparently end on August 17, 2023. Maybe this asset is not part of summer sale, but it is still showing at -50% on my "Your favorites on sale" and "Popular assets" > "On sale" lists!

    upload_2023-8-2_18-26-29.png

    Whereas the asset page indicates the standard price:
    upload_2023-8-2_18-26-46.png

    I will wait for confirmation on whether it's a bug of the asset store still showing the old sale, or a bug on the page not showing it (I put it in my cart just to be sure, and the actual price is still standard, so it's not just a display bug).
     
  16. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,956
    @huulong > That'd be a question for Unity (they handle the store and sales, I don't), but I do see the same thing. My guess would be the sale has ended, my understanding of the sale based on what's on the store is that it's waves of assets, different every week, TDE was on sale for a week.
     
  17. kdgalla

    kdgalla

    Joined:
    Mar 15, 2013
    Posts:
    4,697
    If you're talking about the "Dev Days of Summer" sale, the sale is going on until August 17th (so I hear), but it's going to be different items on sale each week. They just switched recently, so whatever was on sale yesterday may not be on sale today. I've heard the last week of the sale id going to be the "best selling" items of the previous weeks, so it may go on sale again. I'm not 100% certain, though.
     
    Last edited: Aug 2, 2023
  18. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,956
    I do see TDE at half price again, but my guess would be it's just the price changes being propagated to their various servers, it should stabilize soon. I think kdgalla above is right about the sale, the initial store notification did mention TDE being on sale for 7 days, and that was 7 days ago.
     
  19. Stranger-Games

    Stranger-Games

    Joined:
    May 10, 2014
    Posts:
    393
    I have updated to 3.3 · July 27, 2023. Does this update include the autoswitch feature?
    How can I activate it?
    I have enabled it like below and it works, but I want to increase the threshold to shoot a little bit, where can I set that threshold?
    upload_2023-8-11_0-15-41.png
     
  20. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,956
    @Stranger-Games > Yes, as mentioned in the release notes, v3.3 comes with the WeaponAimMouseOverride component, which you can add to a WeaponAim. As for the axis threshold, that's something you define on your InputManager.
     
    Stranger-Games likes this.
  21. barrmy

    barrmy

    Joined:
    Apr 26, 2020
    Posts:
    3
    Hello @reuno , is there a way to combine the weaponbar and weapon switcher input? I noticed the PixelRogue demo only allows for pressing 1/2/3/4/5 as inputs to switch weapons.

    What I want: ability to still be able to press 't' and go to the next weapon in the inventory
    What's happening: pressing 't' alternates between slot 1 and 4 (index is 0 to 4, total of 5 items) when all 5 items are picked up, ie items 0, 2, 3 are never selected

    't' is bound to the Player1_SwitchWeapon
    current build setting is windows/mac/linux

    Screenshot 2023-08-15 at 10.27.49 PM.png Screenshot 2023-08-15 at 10.28.16 PM.png Screenshot 2023-08-15 at 10.28.36 PM.png
     
  22. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,956
    @barrmy > There's no built-in way to do that, but you can implement it, of course. I'd suggest extending InventoryInputActions for that.
     
  23. Fopix

    Fopix

    Joined:
    Dec 27, 2019
    Posts:
    3
    Hello, I switched to a new input system, and my weapon stopped turning, as did my character towards the mouse. I use the InputSystemManager class, all other buttons work except, direction
     
    Last edited: Aug 17, 2023
  24. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,956
    @Fopix > I'd need a bit more info to be able to help. Is your weapon aim set to mouse aim? Do you have a mouse recognized as the current one by Unity? If your issue persists, please use the support form and provide a bit more info about what version of Unity you're on, what version of TDE and what exactly you did, I'll be happy to have a look for you.
     
  25. Fopix

    Fopix

    Joined:
    Dec 27, 2019
    Posts:
    3
    I just worked hard and could not find the answer, in the weapon you need to additionally configure the input system. Everything is working now
     
    reuno likes this.
  26. kdgalla

    kdgalla

    Joined:
    Mar 15, 2013
    Posts:
    4,697
    @huulong It's back on sale again!
     
    reuno likes this.
  27. huulong

    huulong

    Joined:
    Jul 1, 2013
    Posts:
    225
    Indeed, I got it! After buying it I unlocked -73% on FEEL (no idea if it's a combination of -50% sale + ownership discount or if Unity calculates the maximum discount among all active ones) so I also got it!
     
    reuno likes this.
  28. al_kung

    al_kung

    Joined:
    May 21, 2021
    Posts:
    2
    Hello @reuno, I'm using Odin Inspector Along with Topdown Engine's Inventory Engine,Try to make my scriptable object's property look clear in the Inspector. However, the attributes from Odin doesn't work on any scripts that inherited from "InventoryItem" script.
    I used some attribues from Odin, and it works fine when I inherit from "ScriptableObject" class
    upload_2023-8-31_2-40-17.png
    It look like this in the Inspector.
    upload_2023-8-31_2-43-18.png
    However when I inherited from "InventoryItem" script, those attributes from Odin doesn't work:
    upload_2023-8-31_2-46-33.png
    I thought maybe It is because of Assembly definition asset ,so here is something I had tried, but the result is same.
    1. Put my "EnemyData" script in the folder:
    "Assets/TopDownEngine/ThirdParty/MoreMountains/InventoryEngine/InventoryEngine/Scripts/Core/"
    Which is the same folder with "InventoryItem" script.
    2. Delete 2 Assembly definition asset (MoreMountains.InventoryEngine &MoreMountains.InventoryEngine.Editor)
     

    Attached Files:

  29. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,956
    @al_kung > I already answered you via email 9 hours ago, but again : don't put your own scripts inside the engine's folders, put them in yours, that way they won't be under the engine's asmdefs (just like you don't put your own scripts in packages or in unity's core). And that particular class (InventoryItem) is using a custom editor, I don't know if Odin can impact those, looks like it can't.
     
  30. al_kung

    al_kung

    Joined:
    May 21, 2021
    Posts:
    2
    @reuno Initially I put my scripts in my own folder, just put them in engine's folder for testing, but both don't work.
    Perhaps, as you mentioned, it didn't work because it was using a custom editor and Odin can't impact those.I'll see if there were some forums talked about it.
    Thanks for your help!

    Update:
    The problem is just as you mentioned.
    I delete the " InventoryItemEditor" script, and Odin Inspector works.
    thx again.
     
    Last edited: Aug 30, 2023
    reuno likes this.
  31. xacarana

    xacarana

    Joined:
    May 12, 2015
    Posts:
    27
    Hello @reuno I want to create a Tower Defense Game, so I'm working in enemies ai. I'm using AIActionPatrol2d, I created a path using MMPath, and the enemy follow the path. So I want to change character status at the end of the path, but I can't do it. I got the pathelements and then verify when the character reach the last point, but I don't know if there is and event, or a way to remove the patrol action. I tried to remove the script, then I look if there is somenthing in AIBrain to stop the Patrol Action, but nothing. The character stay in the last point and moves wrong. Could you please help me figure out how to do it in a proper way. Thank you!

    imh2.gif
     
  32. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,956
    @xacarana > Simply have your AI Brain transition to a different state. You'll find examples of patrolling enemies doing that across most demo scenes with patrol AIs.
     
  33. Bagazi

    Bagazi

    Joined:
    Apr 18, 2018
    Posts:
    611
    Great Assets.And is there any plan for supporting DOTS (ECS) in the top-down engine?:)
     
  34. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,956
    @Bagazi > Yes, if and when DOTS becomes production ready, I'll happily add support for it. My last project at work used DOTS, it's not there yet, and not something I'd force on all users.
     
    Bagazi likes this.
  35. Bagazi

    Bagazi

    Joined:
    Apr 18, 2018
    Posts:
    611

    It seems that Unity has now transitioned DOTS (Data-Oriented Technology Stack) from the experimental stage to the production stage. Would you consider creating a dedicated branch for ECS (Entity Component System) ?
     
    Last edited: Sep 5, 2023
  36. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,956
    @Bagazi > Unfortunately Unity saying something is "in the production stage" has very little value these days. Having shipped two games with it myself at this point, I think I have enough knowledge of it to say DOTS is far from being usable, and I don't know many serious studios that would still try it. Again, if and when that changes, I'll be happy to add support for it.
     
    Bagazi likes this.
  37. Bagazi

    Bagazi

    Joined:
    Apr 18, 2018
    Posts:
    611
    What do you think is the reason for DOTS not being mature yet? Is it because of many bugs, or is it more complex to write programs using it? Just curious :)
     
  38. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,956
    @Bagazi > It'd be a long list, I'm not sure this would be the place for it. Bugs, lack of documentation, API that keeps changing/breaking retrocompatibility, missing features, entities package not supporting BiRP, still no news on animation, UI, navmesh, audio, etc. Your mileage may vary of course, but I'd recommend attempting to ship at least one (small, even) game to get an actual idea of the state of DOTS/ECS. If you find it works for you, by all means go for it!
     
    Bagazi likes this.
  39. xacarana

    xacarana

    Joined:
    May 12, 2015
    Posts:
    27
    Hello @reuno , thank you for your repely, I'm starting with TopDownEngine, so I have a lot of questions :)

    I was reading on the documentation and I understand better AI classes, but I don't know how, for example stop the character. I create an AIDecision to check if the character hit a wall, and then change to another state, for example do nothing. The thing is that the state I want to set in the character is for example stop walking animation, I tried to do it using Character State but then I realize that I have to trigger and event or somenthing like that. So I'm reviewing AIUnityEvent, but I don't know how to use it propertly, because I don't know if I have to configurate and event or just a function in a empty game object. So please let me know if there is a demo that has this AIUnity event feature implemented.

    The other option that I'm exploring is just create another AIAction, but I still want to know how to use AIUnityEvent,

    Thank you!
     
  40. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,956
    @xacarana > AI Actions are not in charge of controlling animations, abilities are. Simply transitioning to a do nothing state will stop your walk animation. You can verify that on most demo AI characters.
     
  41. xacarana

    xacarana

    Joined:
    May 12, 2015
    Posts:
    27
    Hello @reuno I did what you suggest, I created an Action to patroll, and create a AIDecisionHit, I suppose if the character hit the walk goes to TrueState with another action DoNothing. I'm not sure if hit is the same as a collision with the wall. I tried also with AIDecistionDistanceToTarget, but I don't know how to indicate that the character is going to calculate distance with a specific object like the wall. Also remember please point me out to a example when I could see how to config AIActionUnityEvent.

    Thank you!

    imh3.gif
     
  42. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,956
  43. xacarana

    xacarana

    Joined:
    May 12, 2015
    Posts:
    27
    Thank you!

    That's was i was thinking, I solved it. Also with AIUnityEvent and with AIDecicionDetectTarget2D, sorry but for me is confuse, why the actions for example is called AIUnityEvent (I don't have to use an Event :oops: ). And take time to figured out how the system work. Sorry
     
    Last edited: Sep 9, 2023
    reuno likes this.
  44. xacarana

    xacarana

    Joined:
    May 12, 2015
    Posts:
    27
    @reuno Could you please help me, I want to restart a MMPath in an AIActionMovementPath2D, I tried with MMPath methods, but I can't found a method to set the current position to the 0 element. Please let me know how I could do that. Thank you! I'm doing a respawn to the initial position, but the character when dies for example remember the lastcurrent point, and respawn but start moving to the last point in the Path.
     
  45. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,956
    @xacarana > You can do so by resetting position, and calling the init methods for the path and action, like so :

    Code (CSharp):
    1. this.transform.position = _startPosition;
    2. _mmPath.Initialization();
    3. InitializePatrol();
     
  46. Bagazi

    Bagazi

    Joined:
    Apr 18, 2018
    Posts:
    611
    In the top down engine, I noticed that both the new and old input systems are supported. I would like to understand if there are any differences in functionality between the two systems in topdown engine, especially in terms of compatibility with different platforms, such as consoles, PC, and mobile.
     
  47. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,956
    @Bagazi > If you're asking this about TDE, there's no difference, both are supported and work the same, on all platforms.

    If you're asking this in general, there are many, many differences between the old and "new" input system, and it's too vast a subject to answer here. The old one is simple but limited, the new one is not finished and still packs quite a lot of issues. You may want to look at Rewired or similar assets if you're looking for a good and robust input solution.
     
    Bagazi likes this.
  48. alexgemini002

    alexgemini002

    Joined:
    Jan 15, 2020
    Posts:
    24
    dear developer,
    1. when I import TDE into a new created unity 2022.3.7 urp project, after agree to "install/upgrade", the project version changed to unity 2020, I reopen the project and upgrade to 2022.3.7, it has 5 errors said TDE/ThirdParty/NavMeshComponents has some method not included in some scripts. It didn't have error when I import TDE to a new created stardard renderer project in unity 2022.3.7. I think unity 2022.3.7 have already unity AI navigation version 1.1.4. can I safely delete the TDE/ThirdParty/NavMeshComponents folder ? the TDE seems working properly after I delete TDE/ThirdParty/NavMeshComponents and AI navigation 1.1.4 is installed. can developer verify that?
    2. the unity new inputsystem package seems not working in unity 2022.3.7. unity 2022.3.7 has inputSystem 1.6.4 version.when I create a new gameObject add component InputSystemManagerEventsBased to it, unity editor cannot find this script. after checking TDE/common/ScriptsInputSystem/MoreMountains.TopDownEngine.InputSystem.asmdef file. it say MOREMOUNTAINS_TOOLS asmdef and MOREMOUNTAINS_FEEDBACKS asmdef have some missing definition. when I check MOREMOUNTAINS_TOOLS and FEEDBACKS assembly definition it both have 4 missing definition missing.can developer verify that on unity 2022.3.7?
    3. when importing TDE to a new created unity project,TDE seem assume the project is created using unity 2020 and ask for install/upgrade . after accept "install/upgrade" , in 2 step of importing process,the projectVersion file is marked as new . I think this projectVersion file should not included in TDE package , otherwise other people always need reopen the project and upgrade to unity version highter than unity 2020.
     
  49. alexgemini002

    alexgemini002

    Joined:
    Jan 15, 2020
    Posts:
    24
    also is there any change TDE can add localization support with unity3d offcial localization package?
     
  50. reuno

    reuno

    Joined:
    Sep 22, 2014
    Posts:
    4,956
    @alexgemini002 > You can safely delete navmesh components, yes.
    But how exactly are you installing the engine? None of that happens when following the install steps in the docs, and downloading the latest version from the package manager.
    If your issue persists, don't hesitate to use the support form and provide a bit more info about how you're installing, I'll be happy to help you figure out what may be wrong here.