Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

AI based game with some minor RTS elements - Asset suggestions

Discussion in 'General Discussion' started by Pronoia, Sep 16, 2017.

  1. Pronoia

    Pronoia

    Joined:
    Feb 2, 2014
    Posts:
    4
    Hi all (apologies for the thesis),

    I hope this is the right forum to post this in. I am seeking guidance as to the most appropriate assets to get to help to develop a pet project of mine. A summary of my situation would be that I am a non-programmer non-artist (low poly Blender) who will purchase the assets/talents where necessary (seemingly everything so) to develop a game with mechanics similar to Majesty 2: The Fantasy Kingdom Sim (albeit on a much smaller, less humourous, buggier and seemingly non-optimised scale). Previous experience is basic 2D stuff so timeframe for completion of this is presumably years trending towards eternity.

    An overview of desired functionality:

    1.The core of the game: Heroes (and minions) have behaviour trees and go about their daily business according to these.
    • Heroes may explore their world, visit points of interest, hunt, fight enemies, spend money on upgrades, join and quit parties with other heroes, recover at home (lazy feckers!), gamble and flee in fear from strong enemies. Some of the more advanced stuff may be implemented later e.g. inter hero activities such as healers, interdependancy activities (one hero plants something another uses) and conversion of enemies to friends through charming etc.
    • Minions prioritise work tasks and may attend performance enhancing buildings e.g. inns.
    • Enemies will guard locations, roam and/or have specified targets e.g. the castle, the loss of which causes the player to lose. Again, if talent permits more advanced activities such as spawning/kidnapping/conversion of minions (read zombie horde) may be looked at.
    • Neutral entities will roam but may have enemies outside of the player e.g. wolves killing livestock.
    2. Player interaction is through:
    • Structure placement e.g. homes for the heroes, provide resources to the heroes, generate a resource for the player, provides rudimentary defense to the kingdom e.g. towers and spells/abilities.
    • Reward/deter flags.
    • ****Crazy Experimental Add-On Day 1 DLC****: 1st person view, probably never see the light of day and would be the last thing I'd look at but something akin to the original dungeon keeper ability to inhabit your creatures.
    3. Finisher animations (the devil is in the detail):
    • Reminisce of the kill animations from Dawn of War 1. Generating the animations will be outsourced (I can barely model but animation is completely out of the question) but looking to understand if Playmaker is sufficient to implement this from a 'script' perspective.

    The question of assets:
    Current:

    • Playmaker
    • A* Pathfinding Project Pro
    • Village Interiors
    • Village Exteriors
    • Progrids 2

    Outstanding (need help determining what's most suitable having never used them):
    • Behaviour Designer (Behaviour designer, ICE, Easy AI, Emerald AI, Love/Hate)
    • RTS basics (Unity RTS Engine, RTS Battle Kit, uRTS Toolkit) - (building placement, unit movement, camera, resource collection)
    • Terrain/Scene generator (Gaia/Gena/?) - Remember how you enjoyed getting lost in Skyrim discovering new and wonderous things? Multiply that by a whole host of heroes and a lot more gruesome endings....
    • Any other suggestions (other than try something smaller)?

    Many thanks for your time, particularly if you got this far!



     
  2. ShilohGames

    ShilohGames

    Joined:
    Mar 24, 2014
    Posts:
    3,015
    Your project is out of scope for a "non-programmer non-artist". I would suggest learning some programming basics before attempting this project, because programming will be required to solve some of the complex challenges. Don't assume you can use a bunch of different assets together without some programming skills.

    Start with the Learn section on the Unity site. Try to build a simple project from scratch where you can move a block around using the keyboard. I fully understand that starting smaller is not the advice you want to hear, but it is the correct advice. Start really small, build something simple. Then try something slightly bigger, and repeat. That is how you can develop the skills you need to tackle a larger, more complex project.
     
  3. Pronoia

    Pronoia

    Joined:
    Feb 2, 2014
    Posts:
    4
    Hey ShilohGames. Many thanks for your response and I fully understand and appreciate your insight. I believe RTSs rate in the top 3 hardest style of games to develop so I'm not doing myself any favours in that regard. My primary interest though is in seeing what I can accomplish in the AI space with the tools available in the asset store and then tagging the rest on as I go.

    This isn't my first rodeo. I've done all of the starter style activities, made little games following tutorials and even some simpler ones without. Some of this was 3D but not worth mentioning so I didn't. However I quickly decided that scripting was not going to appeal to me (this is a hobby, not work! ;)).

    I know it will be detrimental to the project when it gets a bit bigger but visual scripting is the preferred route at this point. I'm not entirely adverse to becoming more familiar with C# (unrelated I know but I did Java in college many aeons ago so am familiar with context but the syntax is lost to me at this point).

    This thread is just me just looking for devs who might be familiar with the asset store who might be able to give me insight into the assets so I single out the most beneficial. There's also a sale on I'd like to take advantage of.:)
     
  4. Martin_H

    Martin_H

    Joined:
    Jul 11, 2015
    Posts:
    4,436
    I don't know what numbers of units you want to have in your game, but if it's high, I don't think any assetstore solution is gonna cut it. Learning to code and rolling your own solution would be my advice based on trying to achieve something much simpler and still finding all solutions I looked at a bad fit for what I need exactly. I'm starting to believe it's just impossible to both have such a solution modular and isolated enough to be sold on the assetstore, and still be tightly enough integrated into your game to get good performance.
    But buying AstarPathfindingProject in the current sale might be worth a shot, even if it's only to get inspiration for your own system. It's well documented and offers a lot of features for pathfinding. Doesn't cover any "behaviour" though.
     
  5. Pronoia

    Pronoia

    Joined:
    Feb 2, 2014
    Posts:
    4
    Hey Martin_H. Cheers for the information, particularly as you've attempted something similar.

    At this point I have primarily looked at the behaviour functionality and confirmed that of the basic stuff I listed a large percentage of it can be generated out of the box with some tweaks in Behavior Designer and the add-ins. However it's probably the most expensive route, I'm unsure of its performance and I believe the likes of ICE is more capable. However I'm hoping someone with experience with the asset store like yourself can clarify the differences between these and the other assets I've listed.

    As far as pathfinding goes, I still have to do the bulk of my research on this. I already own A* which I believe is the preferred asset for implementations with larger number of units. In terms of unit count, total per map would be around 80 with half of these featuring more advanced behaviours. I believe my biggest challenge in this regard will be balancing the freedom of the AI with the number of pathfinding calls they make.
     
  6. frosted

    frosted

    Joined:
    Jan 17, 2014
    Posts:
    4,044
    I'd be interested to know how far you can get off 'kit bashing' assets without being a programmer.

    My instinct is: "this is a disaster and going nowhere". But I'm not familiar with any of the kits you've listed, and I don't know your capabilities.

    If you actually succeed at making something remotely playable, I'll be very surprised.

    I kind of feel like this is not really a year long project, it's more of a "if this stuff works more or less out of box" then you're good to go very quickly. If it doesn't then you will never have something playable. Or at least, not something worth playing.

    Keep in mind, stuff might seem like "I'm half way there in 2 hours!" but that can be very deceiving.

    Thinking about stuff like "execution animations" is way, way over your head and extremely premature.
     
    Pronoia, Martin_H and Ryiah like this.
  7. snacktime

    snacktime

    Joined:
    Apr 15, 2013
    Posts:
    3,356
    Once you go down the visual scripting path, you won't be able to come back/recover from that. You can get pretty far with visual scripting. It will just take forever and create a huge freaking mess. And get progressively more difficult to add to and manage. And once you realize oh crap I really need a programmer, no programmer worth anything will touch it with a ten foot pole.

    That is a common scenario with people who try to avoid programming and use visual scripting.

    But if you do go forward, do yourself a favor and verify that the key things you want, can actually be done via visual scripting. Isolate those to their bare minimum and test them, before you go building out everything else around it. It's the principle of solve the hard problems first, even if just to the point you know yes that can work.
     
    Pronoia, Martin_H and Ryiah like this.
  8. EternalAmbiguity

    EternalAmbiguity

    Joined:
    Dec 27, 2014
    Posts:
    3,144
    Love Hate is probably not what you're looking for. I fully support everything Pixel Crushers, but it's more for relationships between characters, as far as I know. You could probably incorporate other types of variables, but I don't think it's really worth it unless you're doing some type of reputation system.

    I have Emerald. I haven't used it recently. It seem usable but limited. If the fundamental basis of your game is going to be AI you should probably go with something with a lot more customization, like Behavior Designer (which I do NOT have, just going off of what I've heard about it). I know nothing about ICE.

    I have TerrainComposer 2, which can be used for procedural terrain generation. I'm not sure of the differences between that and Gaia, but I've found TC2 to be more than sufficient for my needs (admittedly few thus far).

    And yeah, there's no need to worry anything about animations right now. Just make a prototype with cubes-as-units. I did this recently with a vaguely similar type of game (autonomous units moving on a map).
     
    Pronoia, TonyLi and Ryiah like this.
  9. eXonius

    eXonius

    Joined:
    Feb 2, 2016
    Posts:
    207
    Truth is you won't get anywhere with this project and it's only a matter of time until you realize that. As has been mentioned it is indeed impossible to just purchase a bunch of assets and expect to make a game without even coding experience. You will have to learn programming. It's very unwise yet also very typical to want to do a very large project when being just a beginner.

    I really don't say this to discourage you. But you need to start in the right end and start with learning to do things you will have to know. And you will win in the end by taking time to learn how to do things properly now rather than trying to hack a big game together when you're inexperienced.

    Even if you somehow manage to keep motivation to keep working on the project what will happen is once you're somewhere into the development and learnt how to do some things correctly you'll realize how complex your project has become because of bad design from the beginning, since you were inexperienced, and moving forward will be hopeless. I can guarantee you.

    Instead start with the most simple project you can think of (that could still become a simple fun game) and learn to do it right. And choose the project so that it incorporates something of what you want to have in the big project you really want to make. Thus when you complete the small project you'll have learnt new things so the next one will be better, you'll have a sense of accomplishment because you actually finished something and you'll have a piece of code or a system or an asset in place or whatever it is that you later can use for your big project.

    And then you make another small project. Eventually after a few small projects you'll actually have a chance to really get somewhere with that big project you want to make.
     
    Last edited: Sep 17, 2017
    Pronoia, frosted and Ryiah like this.
  10. frosted

    frosted

    Joined:
    Jan 17, 2014
    Posts:
    4,044
    Ask yourself if you would be capable of modding WarCraft 3 in total conversion into the game you want. If you aren't capable of this, then you won't be capable of building it in Unity.

    If you think that it will be easier to build in Unity than mod an existing game because of the Asset Store, then ... well... no.

    One day maybe, but not today.
     
    Pronoia, Martin_H and Ryiah like this.
  11. Pronoia

    Pronoia

    Joined:
    Feb 2, 2014
    Posts:
    4
    Hey all, cheers for all the feedback. I went with Behavior Designer, Gaia and RTS Engine in the end.

    While I appreciate the consideration of failure going after a larger project like this, it is a pet project and if it results in failure I look forward to analysing where I went wrong, remapping and giving it another shot. Again, I'm not trying to remake Majesty 2, I'm simply looking to implement similar mechanics (giving units behaviours that dictate their activity and object spawners (resource/unit)) into something I can have fun/stress with messing around with. It's an inevitability that I'm going to frequently grind to a halt but will class that as part of my learning process. Not how others may approach it and they may be right not to but its the route I have chosen to follow.

    Regarding animation, I was simply wondering if there was an asset I should look to get as part of my spending spree that should be integrated from the beginning to avoid future compatibility issues even it was not going to be used until the end.

    As to what's possible with the assets, I'm as interested in determining that as I am in exploring what I can do in this project but then I suppose both are intrinsically linked. In terms of what I have accomplished so far with the assets (minor in the grand scheme of things but a first step none the less):

    Generated the world, buildings, 1st and 3rd person cameras and controllers, added the first agents (currently spawn/look for player/wander/damage player), resource collection, damage/health, building placement.

    I've some time off work during the week which is when I plan to really start getting into the more interesting and orders of magnitude more difficult to implement stuff.

    So thanks again and see ya all in the forums!
     
  12. frosted

    frosted

    Joined:
    Jan 17, 2014
    Posts:
    4,044
    good luck.

    I'd be interested to see the progress made with off the shelf assets. I use a number of asset store models, and a couple tools/shaders. I've never actually used any of the kits or stuff with game play.

    I'd be interested to see how far you get - might be worth posting a WIP or an update every now and then in general.

    As for animation - most animation isn't that complex, especially RTS - but animations involving two or more characters is much more complex. Making this look correct will require very, very specific placement and often IK blends. How hard this would be will depend on the level of quality you're going for, quality levels you see in commercial games is very difficult. The animation itself is not the only thing, there are also other characters respecting the process, camera work, etc.
     
    theANMATOR2b and angrypenguin like this.
  13. EternalAmbiguity

    EternalAmbiguity

    Joined:
    Dec 27, 2014
    Posts:
    3,144
    Agree with frosted, I'd love some type of WIP thread.

    How are you doing all post-world creation? I don't know if this is what you're looking for so much with an RTS (rather than some kind of open-world game with villages and such), but I know in TC2 I can create zones where the generator automatically plunks down objects of a certain type (like a building, or custom trees, or anything really).

    How are you doing building placement, resource placement? Manually or proc gen?
     
  14. Joe-Censored

    Joe-Censored

    Joined:
    Mar 26, 2013
    Posts:
    11,847
    This isn't going to work unless you do considerable programming on this project. Even with using a wide variety of assets you should expect at least 90% of the actual work to be coding. The majority of assets on the store having to do with any kind of game logic are really programming interfaces for your code to access. If you're not going to be coding then you can't use them.

    Yes you can make cool looking terrains, and manually place monsters across it, but there won't be any actual "game" to play without programming the game yourself, even if a lot of it is accessing the interfaces exposed by helper assets.

    You should really start with something easy like just trying to control a ball, bump it into other balls, etc, and then take the programming effort it took to get that working and multiply the time it took by about 1,000 at least to get an idea the amount of programming involved in the project you're proposing.
     
    eXonius likes this.
  15. frosted

    frosted

    Joined:
    Jan 17, 2014
    Posts:
    4,044
    I would mention that RTS is probably one of the more programming heavy genres you could potentially take on.

    Again, I have zero knowledge of the quality levels of kits or what kinds of things they will allow or not but unless the kits do more or less everything - you will have a very tough time without knowing how to code.
     
    theANMATOR2b likes this.
  16. theANMATOR2b

    theANMATOR2b

    Joined:
    Jul 12, 2014
    Posts:
    7,790
    Although I agree with most about the premise of an RTS game being very complex - if the guy is dedicated he can make it happen, even without programming. The extreme difficult part beyond the complexity of the genre will be any type of networking desired. Not easy without knowing how to code.

    That said - don't be dissuaded on your quest - we all have to learn our own way, even if that way might be the hard way. ;)

    And check out some of the quality products created using Playmaker
    https://forum.unity.com/threads/wip-cryptarium-dark-dungeon.280202/page-4#post-3223897
    https://forum.unity.com/threads/playmaker-visual-scripting-for-unity.72349/page-48#post-3226521

    Also might consider other visual scripting solutions available on the store, some more robust than others.

    Good luck on your journey.
     
    frosted likes this.
  17. NDance

    NDance

    Joined:
    Oct 17, 2017
    Posts:
    3
    I know this thread is a couple of years old but I was wondering how far you got with this project Pronia?

    I loved Majesty and have I been playing it today thinking I would love to work out how to make a game similar type of game :) Just been googling to see if anyone has made anything similar and found this post :)
     
  18. AndersMalmgren

    AndersMalmgren

    Joined:
    Aug 31, 2014
    Posts:
    5,358
    I can almost guarantee you its dead. It was completely out of scope for the OP skill level. But maybe OP will come and school me :D