iRDS - Intelligent Race Driver System Available on Asset Store

We are happy to say that we have released iRDS - Intelligent Race Driver System to the Asset Store for $150.00.

This is an AI Systems with also its own Car Physics and right now it is on Version 2.0.2.2a

It also is now compatible (the same version and package) with Edy's, Unitycar and also with CarX (thanks to Emerson for doing the test) (this feature is for V2.0+).

Features included:

AI System

Compatible with Edy’s Car Physics

AI steering

Breaking

Overtake

Braking if opponent in front

Collision prevention - if opponents on sides

Track limits (left and right limits of the track)

Different AI behavior

Pitting

Counter steering if the car drifts

Compatible with Easyroads, the system creates the track limits from the EasyRoads marker and road width information

Racing line

Grid positions

pit line

Road cameras position (for using on road camera view mode)

The AI cars are configurable about the following:

You can set how fast they would take curves by changing a single value

You can set when the AI should enter pits by changing 2 values, min fuel to go to pits (value from 0 to 1), min tire wear before enter pits (value from 0 to 1)

You would be able to save AI drivers, so they could be randomly chosen for race

You could set how aggressive the AI would be braking on curves, by changing a single value (this would make the AI brake earlier or later)

You could set the overtaking capabilities of the AI, like how much faster than the opponent it should go to overtake it.

The AI are capable of avoiding side collisions with other cars

Configurable sensitivity of the AI for making maneuvers (You could set amount of overtaking maneuver, side collision avoiding and getting out of track avoidance)

Set the Fuel tank capacity

Set the distance for the AI to look forward on another cars to make avoiding maneuvers

Set the min sides distance to make avoiding maneuvers from other cars

Set the min Height distance to lookup on other cars to avoid them

For each waypoint, you could be able to set an speed override for the AI to Slow down on some part of the tracks

Counter steering if the car drifts, set this value too.

The max speed of corners is automatically calculated from the race line

The pits includes a two sections where you could set different max pit's speeds, in example, the entrance could have a max speed of 80Kph and when the car enters the pit's itself, the cars (including the player's cars) could only drive at a maximum speed of 50 kph(you can set the desired speed limit also).

The system sets the positions on the race grid randomly

The system assigns each car a pit stop available.

The system includes its own physics (to support the tire wearing and the automatic calculation of maximum speed of corners).

When the race is finished, the AI system takes control of the player car

Choose if the race would use pits or not.

Also works on sprint race Tracks (single laps too)

Car Physics

The Tire wears during race, by making the car loose grip and heats (for maximum grip)

Added support to the camera follow the CameraViews Objects instead of the car

You can now add or delete the objects that are children of CameraView object on car, so you can customize those.

Added on the Class IRDSCarCamera a method to get back to players cars at once, this is helpful when the player just cycled on opponents cars to see them in action and want to get back the camera quickly to his car, see CameraControll for an example (it is assigned there to keyboard key "B") the method is called ChangeToPlayerCar().

We did test it on mobile, but was on Android, we have not tested yet on iOS, but we really think it should work fine. I'm going to think on a way to test it on iOS, maybe i could borrow my brothers mac and give it a try.

That would be cool, let us know how it goes, it would be good for you as well to add iOS ready to your product description if it is. Although to be iOS ready it would need touch input

Click to expand...

Hi ProjectOne,

Thanks for the advice, we are going to add Android Ready on the description, as it does work on Andriod, and when we test it on iOS we would let you know and add it too.

About the touch input, this could be done in a very simple way, the system has 4 methods to pass to the IRDSCarControllerInput Class the inputs from any source you could have from unity, including touch, this methods are:

IRDSCarControllInput.setBrakeInput: This is a non-static method, so the best way to retrieve this is by using GetComponent< IRDSCarControllInput >() and then accessing the method, this method sets the brake input as a float, from 0 to 1 (it is also clamped).

IRDSCarControllInput.setThrottleInput: This is a non-static method, so the best way to retrieve this is by using GetComponent< IRDSCarControllInput >() and then accessing the method, this method sets the Throttle input as a float, from 0 to 1 (it is also clamped).

IRDSCarControllInput.setSteerInput: This is a non-static method, so the best way to retrieve this is by using GetComponent< IRDSCarControllInput >() and then accessing the method, this method sets the brake input as a float, from -1 to 1 (it is also clamped).

IRDSCarControllInput.setHandBrakeInput: This is a non-static method, so the best way to retrieve this is by using GetComponent< IRDSCarControllInput >() and then accessing the method, this method sets the Handbrake input as a float, from 0 to 1 (it is also clamped).

Will your plugin look really good but i have some simple questions for you ( sorry if they look primitive ):

Now what i understand is that your package is an Ai for oppenant (enemies) racing cars so it will control the cars and make them challanging the player car, but does it have also controller for the racing track to set roles and also racing types? If yes plz explian that

Also if i want to use ur plugin for no player controlling cars what do u suggest me to use for controlling my car i mean the car that the player is controlling?

Will your plugin look really good but i have some simple questions for you ( sorry if they look primitive ):

Now what i understand is that your package is an Ai for oppenant (enemies) racing cars so it will control the cars and make them challanging the player car, but does it have also controller for the racing track to set roles and also racing types? If yes plz explian that

Also if i want to use ur plugin for no player controlling cars what do u suggest me to use for controlling my car i mean the car that the player is controlling?

Click to expand...

Hi bravery,

Yes the AI system controls the AI cars, and also it has it's own Car Physics and Player controller, so it is a complete package for making racing games.

The second question I understand that you ask if you don't want to use the scripts from the system to control the player car and you want to user your own? If that is the case, yes you can create your own script for controlling the player car and pass the values to the script that send those values to the engine and tire scripts. The System is also compatible with Edy's Car Physics, and would be soon with Unity Car.

The system itself doesn't include right now the Script for mobile to control the car (The system has the methods required to make any type of controller for the player car, since those methods are just value pass-through for steering, throttle, brake, hand brake, shifting, so you can invoke those methods with any type of input), but we have one custom script made for testing it on android and it worked, and we can share it if you need it, or we could help you out to make one for yourself if you want too.

What does the AI do if it drives head first into a barrier or into a tricky piece of road?
Or it can't go forward and the only way out is backwards?
Does it reverse and try to figure a way out or how does it resolve that?

What does the AI do if it drives head first into a barrier or into a tricky piece of road?
Or it can't go forward and the only way out is backwards?
Does it reverse and try to figure a way out or how does it resolve that?

Thanks

Click to expand...

Hi Meltdown,

If the AI gets stuck it would drive in reverse, the AI right now supports obstacle avoidance, so if the barrier is considered or added as obstacle, the AI would try to avoid it.

I'm trying to play the demos you have in the first post, either the AI Demo, or the Car Physics Demo, but these two demos does not responed to keybaord controlls, I mean they load correctly and i can see the web-player start but I can't control the cars at all nighther using W,A,S,D, nor the arrow keys?

I'm trying to play the demos you have in the first post, either the AI Demo, or the Car Physics Demo, but these two demos does not responed to keybaord controlls, I mean they load correctly and i can see the web-player start but I can't control the cars at all nighther using W,A,S,D, nor the arrow keys?

I tried it on IE, and firefox and found the same problem.

Can you please fix this strage issue.

Click to expand...

Hi bravery,

I have just tested the Web demos and they work with the arrow keys, for the Car Physics Demo, you should click on the toggle at the left bottom of the screen to enable digital inputs.

I'm going to be on Holidays for this week (April 7 to 14) so i' wont be able to answer here on the forum or the email for this time, as soon I get back, i would be answering any questions or comments you may have.

I have been following this thread and the previous one and finally I have bought iRDS. I have been playing around with it but I haven't been able to load the track limits from EasyRoads. Maybe someone of you guys could help me and correct me if I am doing something wrong.

Here is what I'm doing:

* I make a simple track with EasyRoads 2.5.1
* I add to the scene the AI System and the Level Settings
* In iRDSManager I open the Waypont Manager Settings and set in "Marker Container" the "Markers" Object of the EasyRoads track.
* I set the road width and press "Load Markers" button but nothing happens.

One thing to ask in your system is to improve the overtake behaviour in the straights, The vehicles are braking too much to don't collide the car in front but don't try to overtake first, I've played a lot with the Overtake speed difference and overtake increase min and max values but, it don't help to have a better overtake behaviour in the straights.

One thing to ask in your system is to improve the overtake behaviour in the straights, The vehicles are braking too much to don't collide the car in front but don't try to overtake first, I've played a lot with the Overtake speed difference and overtake increase min and max values but, it don't help to have a better overtake behaviour in the straights.

Your system is looking nice. I've played a bit with the demos but there are still some huge bugs, maybe you've already fixed them but in the demo they still exist.

1) Some cars were blocked in front of the boxes on the road. They would just turn back for 5 meters, drive in front, stop before the box, then drive back for 5 meters, drive in front, box still there, and so on, forever (even though there is enough room for the car to avoid the box).
2) Some cars would get stuck on the walls (side walls on the road) without me actually driving into the AI car (they might collide with each other during the race). Do you have a system in place that at least resets the car at the last way point if it gets stuck (as in, if it stays in the same place) for X seconds or something like that?
3) You've talked about agressivity in your AI. Do you have a demo with this? I didn't see any of the cars trying to do this (Get you off the road, hit you, avoid you, etc). They mostly keep the distance and that's it.
4) What about a police chase mechanism? Is this something in the making or that you are at least considering?

Your system is looking nice. I've played a bit with the demos but there are still some huge bugs, maybe you've already fixed them but in the demo they still exist.

1) Some cars were blocked in front of the boxes on the road. They would just turn back for 5 meters, drive in front, stop before the box, then drive back for 5 meters, drive in front, box still there, and so on, forever (even though there is enough room for the car to avoid the box).
2) Some cars would get stuck on the walls (side walls on the road) without me actually driving into the AI car (they might collide with each other during the race). Do you have a system in place that at least resets the car at the last way point if it gets stuck (as in, if it stays in the same place) for X seconds or something like that?
3) You've talked about agressivity in your AI. Do you have a demo with this? I didn't see any of the cars trying to do this (Get you off the road, hit you, avoid you, etc). They mostly keep the distance and that's it.
4) What about a police chase mechanism? Is this something in the making or that you are at least considering?

Thank you for your time

Click to expand...

Hi gringo2012,

Thanks for your comments, and here are the answers to your questions:

1) This has been fixed, we have to upload the new version of the web demo, since that one is from version 1.02, and we are right now on version 1.06, so I apologize for not having the demos updated with the current System version.

2) Same as the first one, this has been fixed, and also we can include the option of resetting the car in X amount of time if it is not moving.

3) The aggressiveness we talked about is for breaking, right now the AI system is not intended to be used for that purpose, it could be implemented too in future releases.

Several more questions, I hope I'm not taking too much of your time:
1) I saw it's compatible with Edy's vehicle physics. It's what I use for the moment. Was it thoroughly tested? Can I use your system in production along with Edy's VP?
2) How well does it work on mobile devices? With about 5-6 AI cars on a track. Do you have a sample APK that we can copy on an Android device so that we can test it? (with FPS, memory consumption stats)
3) How does your system handle variable length tracks (from side to side)? Does this matter at all? Your test tracks are very wide (20 meters or more). I have tracks which can be about 6 meters wide on some sections (so in 6 meters you'd barely have enough space for 3 cars side by side) or 8 to 10 meters wide on other sections.

I want to thank @Rhodnius for helping me to figure out the overtake behaviour, I was with two variables with the wrong values and now everything is working fine.

@gringo2012, I'm helping Rhodnius on testing the Edy's vehicle physics, it works very fine!, anyway, I don't think that you need to use Edy's instead of the "out of box" physics that comes with the iRDS system, the physics is great and, I have created a very good gameplay with it!

Several more questions, I hope I'm not taking too much of your time:
1) I saw it's compatible with Edy's vehicle physics. It's what I use for the moment. Was it thoroughly tested? Can I use your system in production along with Edy's VP?
2) How well does it work on mobile devices? With about 5-6 AI cars on a track. Do you have a sample APK that we can copy on an Android device so that we can test it? (with FPS, memory consumption stats)
3) How does your system handle variable length tracks (from side to side)? Does this matter at all? Your test tracks are very wide (20 meters or more). I have tracks which can be about 6 meters wide on some sections (so in 6 meters you'd barely have enough space for 3 cars side by side) or 8 to 10 meters wide on other sections.

Thanks again

Click to expand...

Hi gringo2012,

Don't worry about asking, is my pleasure to answer your concerns and questions.

Here are the answers:

1) Yes the system is compatible with Edy's VP and has been tested too, and yes you can use the iRDS System with Edy's VP.

2) We have tested it on Android, but with high poly car models, we are going to make some other test with low poly models.

3) Yes, the system can be configured to have variable length on the track side to side, so you can have some part of the track with a width of 6 and another with a width of 20, and so on. The iRDS System calculates the space between the opponent to overtake and the side of the track, if it fits it would overtake, if not, it won't, just like any racer would.

@emergki - Thanks for the messages. I still prefer Edy's VP as I can configure it any way I want and I always had good results with it. I am not that impressed by the physics behavior in the demo but of course, maybe tweaking it can give good results too. Anyway, since it works wity Edy's VP, it's fine for me.

@rhodnius - Thanks for your replies. Is there a LITE free version available that we can use to test your system before actually buying it? Maybe with a watermark or something to prevent us from using it in production. I've already developed a basic AI waypoint system with respawns for my game that works quite well, but of course your system would add a lot more variation and realism to the game if it works as advertised. I don't know if I should continue work on my system or should I just buy yours and start implementing it. I wouldn't want though to pay 150$ just to find out that the system does not work according to my needs.
Has your system already been used in a game that has been released or that will soon be released (link to blog or development page if available) for Desktop or mobile? (mobile preferred, as I can also see how it performs this way)

@emergki - Thanks for the messages. I still prefer Edy's VP as I can configure it any way I want and I always had good results with it. I am not that impressed by the physics behavior in the demo but of course, maybe tweaking it can give good results too. Anyway, since it works wity Edy's VP, it's fine for me.

@rhodnius - Thanks for your replies. Is there a LITE free version available that we can use to test your system before actually buying it? Maybe with a watermark or something to prevent us from using it in production. I've already developed a basic AI waypoint system with respawns for my game that works quite well, but of course your system would add a lot more variation and realism to the game if it works as advertised. I don't know if I should continue work on my system or should I just buy yours and start implementing it. I wouldn't want though to pay 150$ just to find out that the system does not work according to my needs.
Has your system already been used in a game that has been released or that will soon be released (link to blog or development page if available) for Desktop or mobile? (mobile preferred, as I can also see how it performs this way)

Thanks

Click to expand...

Hi gringo2012,

For now we don't have a lite version, but off course we could make a simple demo with an environment you want it to be tested on, so you could see how it performs and works, also we have been implementing new features to the system by client request, so you could ask them how they feel about the support and the system itself. If you need something in particular to be achieved by the AI system, please let me know and we would answer if it is implemented or not, and if we could implement it for you.

Right now, emergki is developing a racing game, so you can also ask him about it.

this is a AI Demo where I select the digital input and when I press in the up arrow in my keyboard as you can see the KPH meter never move up and the car still standing in it's place, however the other two meters (RPM and turbo) are going up (that's mean they are responding to my up arrow press), so can you please advise why this is ahppening with me?

I tried it on IE, firefox and chrom browser but it's always the same, my OS in windows vista 32-bit, can you please advise?

I need to change the gears and the car can move, actually there is no where in the demo or in the thread tells you what is the controlling keys so it's left for guessing.

I managed to play the physics car demo, and looks nice but I have a couple of comments:
1- There is many camers in the game (I switch between them using x key), however some of these cameras do go thruogh different obejcts like ground, or hills or different objects in the road, and this sometimes look like a defect in the system, the camera should collide or slide when touching the environment something similar to master camera plugin.
2- There is no camera to show the car from inside and this is really strange as this is an important camera to simulate the racing games.
3- Also there is no bird eye camera to simulate top-down racing.
4- The controlling of the car looks nice but when you start facing the curves the car start looking out of control like for example on curves when I try to turn the car, the car turn too much and start rotating around itself, and it's really diffcult to balance the car on curves? how should the player handle that?
5- Can I make the gear chaning automatic and not manual?
6- Can we make a more of arcade racing game where control is more flexable and the gameplay is more fun?

I notice in the package there is a .dll files, and as I understand that .dll files is only for windows OS, so will these dll's affect creating the game on andriod or iOS, or any other os other than windows?

@bravery - I speak in my own name, you will get an official reply from rhodnius too but here is what I think and that makes sense to me

1) - The scene is just a demo. It is up to you to setup the cameras and it's up to you how you want to setup these cameras. The package just deals with AI and Physics for the cars. As a sidenote, you just place them in strategic points so that cars do not get obscured by other objects.
2) - Also, this is up to you. You just place a camera inside the car or outside right above the hood and you change to this camera when you press a key. This is more general unity stuff, not necesarily related to iRDS or any other AI system. Anyway, it's an easy task.
3) - Same as point 2. Anyway, regarding cameras, these are just my general opinions. They might decide to add this as a functionality as they usually do with new requests.
4) - I noticed this too, but normally you should be able to tweak it as you want. Speed, car grip, etc so that you get to a desired result. I use Edy's vehicle physics and it allows you to do this
5) - I think you should but I'll wait for rhodnius to confirm.
6) - Same as 5, i'll wait for his answer, although if it's a physics simulator I guess not, unless you tweak the car handling a lot

Regarding the dll, it will work on any system. Unity just compiles data differently for every system. I guess in these dll's you only have Unity calls and not system (Windows) calls.

The downside is that since you don't have access to the sourcecode, you can't dig deeper and modify anything as you'd like, or fix bugs, etc. You'll have to wait for the creators to do this for you.

thanks for your effort in answering my questions, from your own experiance, now regarding your answers:
1- I'm talking about the car cameras that when it's rotating around the car it do go through grounds, or even objects and it looks like a bug so I suggest them to look in Mater camera plugin because it do handle this problem perfectly, anyway it's just a suggestion, hope they can overcome this problem.

2- regarding the camera inside the car, usually it's not only a camera but when there is a camera inside the car that's mean you can see the driver mirror, and a small part from the car inside ... etc.

thanks for your effort in answering my questions, from your own experiance, now regarding your answers:
1- I'm talking about the car cameras that when it's rotating around the car it do go through grounds, or even objects and it looks like a bug so I suggest them to look in Mater camera plugin because it do handle this problem perfectly, anyway it's just a suggestion, hope they can overcome this problem.

2- regarding the camera inside the car, usually it's not only a camera but when there is a camera inside the car that's mean you can see the driver mirror, and a small part from the car inside ... etc.

Remaining points I believe RHod can answer it better.

Thanks for all your efforts.

Click to expand...

I managed to play the physics car demo, and looks nice but I have a couple of comments:
1- There is many camers in the game (I switch between them using x key), however some of these cameras do go thruogh different obejcts like ground, or hills or different objects in the road, and this sometimes look like a defect in the system, the camera should collide or slide when touching the environment something similar to master camera plugin.
2- There is no camera to show the car from inside and this is really strange as this is an important camera to simulate the racing games.
3- Also there is no bird eye camera to simulate top-down racing.
4- The controlling of the car looks nice but when you start facing the curves the car start looking out of control like for example on curves when I try to turn the car, the car turn too much and start rotating around itself, and it's really diffcult to balance the car on curves? how should the player handle that?
5- Can I make the gear chaning automatic and not manual?
6- Can we make a more of arcade racing game where control is more flexable and the gameplay is more fun?

Click to expand...

Hi bravery,

First of all i want to apologize for not posting the control mapping on the first post, they have been added now.

Here are the answers for your questions, and thanks gringo2012 for his comments.

1.) We are going to check on what you pointed out and work on a solution for that, the AI System comes with the Main Camera for the scene, and it is part of the system, so we definitely would make that better.

2.) The System has a driver camera, which shows the car from inside, it is not enabled for all cars on the demos, since not all the car models have interior to show, this demonstrates that you can modify the camera positions as you prefer them.

3.) This one could be simulated easily with the current options available on the System, since you can modify the height you want the camera to be from the target, and the camera would always look at the target, it would be just a matter of setting a higher value on the height, we can test this one for you.

4.) On the Physics Car Demo, this was intentionally made, since we setup this demo for a guy who wanted to see and test if the Car Physics could simulate a very powerful car (Toyota Supra with around 800 HP) that could drift, so what we are going to do is to create a new Car Physics Demo with more options, so you could for example setup your car before testing it.

5.) Yes, the Car Physics allow manual and automatic gear shifting.

6.) Yes, there are lots of different setups you could make, also there is a Grip Coefficient for the tires, which is a multiplier of the resulting forces from the pacejka formula that can be used to have a more arcade feeling when driving the cars.

Can you please elabortate more on how to achive the aracde style? or what is the best values to use to achive that?

Also I was reading manual and I can't see how I can change the main menu options?, or the track selection theme ... etc, so can we change that in the system, like for example I want to have 6 tracks on the game and only the first track is unlocked where the remaining tracks will be locked till the player fiishied the first track then the second track will be unlocked ... etc, so how can we ahcive that?

Also can I use something like nGUI to build my own user interface or not?

Last question is that regarding the dll's I believe gringo2012 has answered me, however I want a confirmation from your side as well, that I can use your system(which is based on dll's) to build my game for any other OS that unity3d support, like mac, iOS, Andriod ...etc?

I was looking for some way to contact you to ask a question about the iRDS. I am looking for an AI for a driving sim. Not a racing Sim. It needs to mimic other people driving while the player is driving through a city. Randomly the AI should make a poor driving decision and run a red light or stop sign or speed so the player can react appropriately. Also this Driving sim will also support multi player networking support. There will be 1-4 players many NPC automobiles. Is the iRDS something that can accomplish that?

I would like to purchase this package for my own projects, but I'm worried about the constant and continual number of updates and revisions being made on a nearly weekly basis. For $150 US, one should expect a more finished project along the likes of Megashapes, Megafiers, NGUI, etc.

Can you please elabortate more on how to achive the aracde style? or what is the best values to use to achive that?

Also I was reading manual and I can't see how I can change the main menu options?, or the track selection theme ... etc, so can we change that in the system, like for example I want to have 6 tracks on the game and only the first track is unlocked where the remaining tracks will be locked till the player fiishied the first track then the second track will be unlocked ... etc, so how can we ahcive that?

Also can I use something like nGUI to build my own user interface or not?

Last question is that regarding the dll's I believe gringo2012 has answered me, however I want a confirmation from your side as well, that I can use your system(which is based on dll's) to build my game for any other OS that unity3d support, like mac, iOS, Andriod ...etc?

Thanks for the co-operation.

Click to expand...

Hi bravery,

The Demo should be for this next week, or maybe the next one, since we are working on developing new features asked by our current customers to be included on iRDS, and also to make it compatible with UnityCar.

For arcade style, there is a setting called Grip Coefficient, which is a multiplier of the resulting forces from the pacjecka Formula, if you use a value of 1 it won't affect the resulting forces, if you use values greater than 1, it would create a bigger resulting forces, which would result in more grip from tires, so that way you can simulate an arcade style gaming.

The Selection options and track selections included in the demo is not part of iRDS, it was made for demo purpose and it can be custom made by the User-Developer of iRDS, so in other words the selection of the cars, and tracks is handled by the developer that is using iRDS independently.

You could use nGUI for creating the user interface of your game, independently of iRDS.

About the dll's, those are pure C# compiled dll's, they are not native (C or C++) so they would work on any platform, it is that way just to keep under our control the source code and modifications.