Emerald AI 1.2 Status Update – 2/05/2016

Updated ETA

Everything is looking great with Emerald 1.2. However, we have had some occasional snags that push our submission date back. This is why we tend to refrain from posting ETAs because, as developers, we can’t always predict them. We always get them resolved, but they require time. It is our job to provide our customers with improved functionality and new features. With Emerald 1.2 we have done just that. We want a flawless bug free AI system. For that to happen, every portion of the system must be tested, thoroughly. I’d say it’s safe to say that it shouldn’t be too much longer until we submit Emerald 1.2, but we won’t give an exact ETA. We can assure everyone it’ll be worth the wait and we appreciate everyone’s patience with the Emerald 1.2 update.


Performance and Clarification about Animal and NPC

To help with some clarification with the Animal and NPC portion of the system, we will explain. Emerald 1.2’s animals will function the way they did with Emerald 1.1, with the addition of the improved editor, features, bug fixes, and improvements. NPC and Animals are separated using the Editor. The code from these 2 categories don’t even run unless one or the other is selected. So, if your AI was set to Animal, none of the code for the NPC would be running in the script. This is to help ease the concerns of anyone thinking that extra features means less efficient. In fact, Emerald 1.2 performs better than Emerald 1.1 even with all the extra features we have added.


New System Included with Emerald 1.3

To show our appreciation, we will also be including a free copy of our new system with the Emerald 1.3 update. This new system will be a dynamic Animal/NPC spawner. We are currently taking feature requests for this. If you have questions regarding the details, just comment here.


Example Loot System

We will be including a simple example loot system with Emerald 1.2.


Improved Fleeing Algorithm

With that being said, we have a quick new video demonstrating Emerald 1.2’s new fleeing algorithm. Animals, and NPCs, will no longer get stuck or generate waypoints they can’t access. AI will continuously generate waypoints away from the target that is chasing them. AI will also no longer get stuck. Emerald can detect when an AI sets a waypoint that’s inaccessible or will get them stuck and regenerate a new one.


Improved Animal AI Functionality

The Animal portion of Emerald has also been improved. The Alpha of a herd or pack will now better lead their group better and more intelligently than before. Part of this is due to the improved fleeing algorithm and dynamic waypoint generation.


Turn Animation Support

We have also added support for turning animation, as requested. This feature is completely optional. Turning animations will play when a an AI needs to take a turn that’s sharper than ~60°. This also applies when an AI is attacking and chasing its opponent. The results are much better than they were with the Emerald 1.1.


Improved Player Weapon and Health System

We have been working on improving the player weapon and health system. The player weapon system now supports multiple hit and attack sounds. We have also added hit delays and receiving hit delays to help better match animations from the player and other AI. We will also be including a health and stamina system with bars for the new FPS system like below, minus the hand and weapon. UFPS was used below.


Improved Fighting Algorithm

Emerald 1.2 has also improved the way AI fight. AI will generate new targets, within range, after their current target has died. We will be demonstrating the below with a videos also, but here’s some screenshots for now.


 Animal Fight
We tested this with Guard AIs set to defensive. These guards guarded their area until the attackers were all dead.
 Defensive AI
A Defensive AI attacking a player after they were hit by them. Defensive AI can generate targets to their attackers if they are attacked first.
 Defenive Attacking Player

Leave a comment

Your email address will not be published. Required fields are marked *