Hello everyone!
I've recently filled a 40 page notebook designing an open world RPG, and now it's time for implementation. What I need help with is figuring out what extensions to use for what area. Money is not a problem, but time is. So I would rather purchase 1k$ worth of assets than spend 3-5 more months coding since I'm just an average programmer. I already own the following extensions: TerrainComposer2, RTPv3, UBER shader, ORK (of course), and Opsive's Third Person Controller.
I'll let TC2, RTPv3 and UBER to take care of the terrain, probably get MCS to take care of characters (I'm a bit worried about finding good armors though) but that's not really related anyway. Disregard the other content related stuff, I designed with vagueness in mind.
Since ORK will be my basis, I need to know what extensions are easy and straightforward to use with it, what could make my workflow smooth and mostly painless. I've successfully got TPC to control an ORK-spawned main character, but then I ran into the simple problem of being unable to activate an event using the accept key (I suspect that ORK doesn't register that input since TPC controls everything now). My only options at the moment are either try and fix this somehow or ask on a forum and wait for an answer there. These are the kind of slowdowns that I want to avoid.
So, Hero Movement/Controls: should I keep TPC or find something with better integration? Suggestions? Also someone on this forum was doing an ORKsive integration, but it's not yet complete and I have no idea when it will be.
AI: should I grab Opsive's Behavior Designer as well or something else entirely? Any ideas?
Dialogue System: does ORK's dialogue system need to be replaced?
Cinematics: not sure at the moment that ORK supports this, so any suggestions or insight, please?
Inventory System: ORK's system, TPC's system or something else entirely?
Again, what I'm looking for are ways to save time, taking as little time as possible to integrate stuff together with the ORK Framework, especially since I'm not much of a programmer. Not sure if I should've posted this in the ORK Support section, so forgive me if I was wrong.
Thanks for taking the time to read this!
/Ashky
Keldryn has done an amazing job integrating Opsive's Third Person Controller with ORK, you might pm him for any help there. Unity's third person controller works fine as well.
I use Gaia for terrains--I find it easier to work with than Terrain Composer but that's just a choice.
I think you can find good armors in the asset store.
For the Cinematics, I don't know as I haven't used them.
I think you'll find that ORK works well for you in making the type of game you want to make, even if you aren't a programmer.
I use notebooks too to plan out a game. I usually fill about three or four per game.
Couldn't work without them. : )
I'm currently making a list of what needs to be done, so 2nd notebook incoming. Not sure I'll fill a 3rd one though.
Again, thanks for your answer. Cheers!
The primary advantage that BD has over NC is wider third-party support. But after looking at the code of a number of the third-party support packages, 95% of the custom Tasks are dead simple wrappers around a few function calls. It would be trivial to convert the vast majority of BD tasks to the NC equivalents. That depends on how much dialogue you intend to have and how complex your dialogue trees will be. If you're going for a PC-style RPG in the tradition of Fallout, Gothic, Elder Scrolls, etc then you might want to check out Pixel Crushers' Dialogue System for Unity, which is generally regarded as the best dialogue system available. It includes an integration package for ORK.
(I intend to use Dialogue System in my game). I haven't really looked into this, as I don't intend to using much in the way of cinematics. You can definitely create cinematics using ORK's event system, but it might be a lot easier to use a dedicated cinematics package.
I have heard good things about SLATE Cinematic Sequencer. It's from the same developer that created NodeCanvas, so it integrates smoothly with both his NodeCanvas and FlowCanvas assets. It also has a Dialogue System integration as well. If you're using ORK, it's best to stick with ORK's inventory system, as it's tightly coupled to the rest of the framework. I've looked at how one might use Inventory Pro with ORK, but the only solution that I see involves essentially creating parallel item databases in both assets and keeping them synchronized, which is way more trouble than it's worth.
The biggest issue with ORK's inventory system is that your options for how it is displayed might be more limited than you would like. I've looked at building a custom UI for the inventory, but I haven't gotten very far with it yet.
I'll second @Catacomber's mention of Gaia. Absolutely brilliant asset.
I would also caution you against investing anything into MCS until you've read the most recent posts on their Unity forum thread. There are a lot of people regretting their purchases and virtually nobody saying "this is wonderful; I'm so glad I spend my money on this." There are apparently serious performance issues, the in-game characters look nothing like the renders in the screenshots, and the support is virtually non-existent.
I'll take a look tomorrow at NodeCanvas and Dialogue System, but from what you're saying they should be quite useful.
Regarding MCS, does anyone have a better alternative? While money isn't a problem, I'd hate to just throw it out the window on an asset that won't be of much help.
No, Gaia can't do caves. It doesn't add any functionality to Unity terrains; it's just for sculpting terraing, spawning textures and foliage, and populating with various game objects.
I've got TC2, but haven't done much with it. Every time I try to follow the tutorial, something doesn't work the way it's supposed to.
Fuse and UMA are both viable alternatives to MCS. Fuse is great if you need modern-day clothing, but it's lacking when it comes to medieval/fantasy unless you create your own.
Regarding TC2, yes, it's quite glitchy since it's still a work in progress, but once I got the hang of it and understood how to avoid triggering bugs (worked in QA for a while, it's like 2nd nature to me) I became to be happy with the end result vs. time spent.
I just noticed something; if you're using the new ORK 2.80, the Accept key no longer starts interactions and there is. Ow an Interact key that performs that function. So you may want to check those settings.
You're probably right, ork's default is best.
I've toyed with Playmaker as the brain and had it talking to BD for ORK and back and forth, but after a good discussion with @Keldryn and more research, I have moved to NodeCanvas and Flowcanvas. There is an additional asset to use cInput for controls if you're into that. Node and Flow will let me get a lot more done across the board with better management of FSMs. It is worth nothing that I am using A*Pathfinding with it as well.
I still think that BD is good and if it fits your workflow better, then there you have it. The community drew me to it initially and the ease of integrating it with Playmaker.
I prefer building my terrains by hand, but I do have TC2 and I think it will develop into a solid asset in the future. TC2 is a great side effect of Gaia. Nothing like competition to spurn new versions of products.
I am using the Sectr Complete to help with optimizations. A mixture of their stream and vis. I like how its set up and it fits my style. That may be something to consider, but I don't know platform you're looking to release on.
youtube.com/j0hnbane
For optimization I am considering world streamer thanks to its tc2 integration. And tc2's creator also has world builder which seems to smooth out world building by providing a multitude of editing goodies like snapping to objects and duplicating and prefabing.
NodeCanvas doesn't have an integration package containing ORK specific nodes, so you would need to do some programming if you wanted it to be able to interact with ORK.
Exactly the same situation as with Behavior Designer.
However, NodeCanvas does allow you to use Reflection Tasks, which use .NET Reflection to generate a set of tasks based on a public API. So you could use this feature to generate a set of tasks for ORK. It basically creates a Task for each public property and method on a class. This isn't really an ideal way to do it, as it obviously can't know anything about how these classes are actually used and often you would want to combine several property/method calls into one higher-level task. But it might be enough to get started, and there are times when you are just setting or getting a property or making simple function call.
Behavior Designer doesn't have the capability to the best of my knowledge. Neither does Playmaker. So that's one big plus to the NodeCanvas + FlowCanvas combination, as both assets have the feature to use .NET Reflection to generate their respective nodes from a public API.
I will be using NodeCanvas in my game, so I will eventually need to build a set of ORK nodes -- or at least the ones that I'll be using. But I'm easily several months away from starting on that. Unless anybody wants to do a mini "team buy" for me to start on it now. I'm open to that sort of thing. ;-)