Been a while since you commented. Are you still with ORK or have you moved on to something else?
I took a break from ORK for a bit while I tried prototyping my own turn-based combat system. Plus there was the whole Christmas thing last week.
I was mostly wanting to try out gridless movement with my own prototype, and I got to the point where I could have
n player-controlled characters taking turns moving up to an arbitrary 12m per turn, with a visual indicator of the path they would take that updated as you moved the mouse around. I was using Unity's Navigation API for this. I didn't get further than this because I needed to develop more of the basic framework (AI turns, attacks, etc) as well as a smoother switch back to "exploration" movement. At that point I felt like I was mostly just duplicating functionality that I could already get through ORK.
So I started looking at ORK again to see if it would be possible to add tactical movement to the existing turn-based combat (instead of the default "run to target, attack, run back" nonsense). Hopefully the team-buy for the tactical grid-based combat feature will be successful, but if it isn't, I don't want to be stuck having to decide between the 90s JRPG style combat or real-time combat.
The answer to that question is YES, thankfully. It's easy enough to add a "Move" ability to ORK and include it on the battle menu. In the event for that ability, I run the raycast to get the destination point and then set the navmesh destination for that combatant. I've got a rudimentary check in there to constrain movement to a specified distance -- which isn't actually precise right now, as it's just using ORK's built in distance check (which is a straight line), rather than the actual length of the calculated path. I've already written all of the code to handle calculating a potential path (as well as rendering that path visually), but I need to add a couple of things to make it accessible to ORK's events.
The major issue right now is that the turn-based combat mode only allows a combatant to take one action per turn. There are a couple of potential ways to get around this. One ORK user had developed his own
Playmaker Actions for ORK for use by his own team, and he recently polished them up and released them on the Asset Store. It's primarily a set of wrappers around ORK event steps, but it makes it a lot easier and cleaner to integrate those event steps with your own code or third-party assets. If I had to, I could probably run a combatant's entire turn through these Playmaker FSMs. I'd rather not do that, but if the tactical combat "module" never comes to be, it's at least an option.
As for the collaboration issue which I have mentioned several times, I asked the author of ORK about whether or not he had any plans to improve this aspect of the framework. He said that he does have plans to address this issue, but it will have to wait until ORK 3 (TBA) due to the massive changes it will require to the data structures -- which will break backwards compatibility. He does have some import and export functionality on his to-do list, which would help considerably. I mean, it's not like I have a team of 3 or 4 people (in the same time zones) working full-time on a game. The guy who made the Playmaker Actions for ORK has mentioned that he has written an internal tool to export the ORK database to Google Sheets and then import the changes, which his team uses regularly. He's thinking about polishing it up and releasing it.
So it looks as though in the relatively near future there will be some sort of import/export functionality, which would be good enough to make collaboration among 3 or 4 developers relatively pain-free.
I found another one called RPG Kit Lite. I was told the code base is messy, but the guy seems to like it regardless. Looks to me like its for online action games.
https://www.assetstore.unity3d.com/en/#!/content/19644
I've seen that one in the Asset Store, but never considered it seriously, as it does look like it is primarily oriented towards multiplayer action RPGs. It doesn't look like it is anywhere near as flexible as ORK (for example). Sure, it has a 5-star rating, but that's only across 14 submitted ratings, whereas ORK has a 5-star rating across 110 submitted ratings. For comparison, plyGame is at a 4-star rating across 247 submitted ratings.
It also doesn't appear to have much of a community around it, given the state of its forum.
Something else about plyGame its for single player games. So you could make a game like Fallout 1 where your followers are controlled by script AI, but taking control of followers with mouse and keyboard is not what it was made for. I'm looking at the source code, hopefully I can hack it, otherwise I'll look at ORK or RPG Kit Lite.
I grabbed a copy of plyGame when it was on sale recently and fiddled around with it for a little bit. My impression is that it's somewhat feature-lite compared to ORK. It's a bit easier to use, at least at first. My primary concern with using plyGame is that the author continues to state that it is a finished product feature-wise and he will only be updating it to fix bugs and address compatibility issues with new version of Unity. On the other hand, Gaming is Love continues to update ORK with new features (many requested by his customers) on a monthly basis -- sometimes twice in a month. It looks like plyGame might have more users, but the ORK forums are more active than plyGame's. The level of support he provides for ORK is outstanding, and that's worth a lot right there.
As for taking control of followers -- you can do that in ORK very easily. I had that working in those screenshots I posted previously; when you click on one of the HUD portraits on the left, that character is selected and becomes the party leader with the others following behind.
Keldryn How easy is it to switch ORK from level based to point based RPG system?
I'll have to get back to you on that.
Out of the box, it gives you the option to have the player spend experience points to level up Abilities; in ORK, Abilities are either distinct actions that a character can take (a melee attack, an individual spell, etc) or passive effects that grant bonus Status Values or Status Effects. Status Values are designed to improve as you level up, either using a formula to determine how much it increases or simply by applying a growth curve to each Status Value.
You might be able to emulate a point-based system by:
- setting up a Character Points status value as an "Experience" type, no auto level up, and using smaller numbers
- creating status values for all of your attributes and skills and setting their development to None
- creating passive Abilities for each attribute and skill and setting them to increase by spending Experience on them
- setting up each of those passive Abilities to add a bonus value to the corresponding status value. You can have different settings for each level of an Ability, so you can specify how many Character Points each level of that Ability will cost.
I
think that this would give you something pretty close to what you get with GURPS or Hero System, but I can't say for sure without trying it out. It's not pretty, and setting it all up would be a bit labor-intensive (but still a lot less time than having to code your own framework for doing so).
The current prototype I'm working on with ORK more or less emulates the d20 core mechanics; not because I think they're wonderful, but simply because I wanted some placeholder mechanics that were different from the ORK tutorial and I didn't want to put much thought into it right now, because I want to see just how much I can get out of ORK without having to do any custom coding (which I'm fine doing).