What are your thoughts on RAIN AI? How do you properly script in it?
Did you have significant reduction in development time down the road once you learned it fully?
Do you suggest implementing AI in Unity itself or do you suggest continuing with RAIN?
From your experience, do you have any suggestion to me (as a noob) to script custom decision and actions in RAIN?
My experience:
I had coded part of what was meant to be used as base functions for all NPC AI logic. Then I found out about RAIN AI, it’s the first AI solution I have tried, and after about a month (seriously) of playing around, trying to figure out, I finally managed to make the NPC move, follow path, detect.
It’s cool, but now I think that it’s biggest issue is: anything beyond those (calling Unity API, I don’t think you can do that inside Behavior Tree) is something the user has to code himself under RAIN’s conditions (it’s own custom action/decision), I would but I don’t get it’s custom action, custom decision things (the behavior tree doesn’t serialize the public class members either).
The documentation isn’t complete so I don’t know where to look anymore (thus expecting the suggestions from other users for Question 4)
I’m not that familiar with it yet, but apparently, for every custom action, it seems you need to create a separate class. in my code, I used to manage it by passing proper arguments and it all fit in one file.
I tried to set the Variable in AI’s Memory by Expression in Behavior Tree, it didn’t set it, it looked like I had to set my variables from custom action
and I had hard time figuring out how to raycast from inside RAIN, and I can’t imagine what I would have to do to re-implement other important functions.
(So that was my experience with RAIN, please tell me about your experience, I read that Unity Forums is full of thousands of developers who absolutely love RAIN)
thanks
This thread is only about RAIN AI. Please do not post Asset Store links to other AI / Behavior Assets – and Sorry if I posted in wrong section
I found the experience sub standard, and eventually gave up on the asset. Here were my issues.
The asset is built for FPS type AIs. Its difficult to adapt to different types of AIs
The work flow does not match the unity work flow at all. Its basically requires you to learn an entire new UI
The documentation was poor. At the time I tried it the docs were basically a few videos only
There was no compile time checking on the expressions. Nor any documentation to what expressions were valid. If you are going to make me write code, throwing me back into C# is better then some custom language for a single asset
And as a final blow the asset is difficult to uninstall. There is some bug that kept reimporting the .dll every time I deleted it. I ended up having to open a new project
Personally I can’t really recommend the asset. The idea had some nice potential. But there was a lot lacking in the execution.
There are a few who love it. But thousands is an exaggeration. The forum doesn’t have thousands of active users.
I used RAIN until Unity 5 came out. I now want something to replace it (even if it costs). The lack of up to date documentation is disappointing, but in Unity 4 it was brilliant.
One of our guys tried to use it for AI, but he’s not a programmer, so in the end we ended up using Behavior Designer instead and are quite satisfied. It’s a plus that BD has integration with our 2 plugins Master Audio and Core GameKit (and plenty of others), but it’s not a free product.
I say try out RAIN yourself if you can code and make up your own mind if you aren’t ready to spend $75.
I do appreciate rain, and offering it for free is very generous.
A lot of the stuff you have to do in the editor confused me though and I never really figured it out. All I really needed really was pathfinding, so I ended up just using A*
I will throw Unistorm into the same discussion. Both products are amazing. But I think both have grown too much and added so much that they left behind their target audience. They have become so complicated that you need to really be a programmer to use them, and at that point, it is just easier to program it yourself rather than learn someone else´s system. It took me way less time to recreate the functionality of Unistorm than it would have taken me to adjust it to my needs.
I had every intention of using both of them, but the hours of videos and tutorials you would have to watch to be able to use them, it was just easier to do it myself. And working with your own code is always easier than figuring out someone else´s logic.
I think both Rain and Unistorm would be well served if they released a ´lite´ version that was more friendly to non-programmers. I commend them greatly for constantly updating their products, but they need to realize that also makes them much more complicated for new users.