A Simple How-To on Making Mid-Range-Only NERO Agent
By Danek Jovax :2)
July 15, 2005
(Version notes at
bottom of document)
This training method was developed with the version 1.0 of NERO.
This training may be best used when applied to a batch of new agents that have already received navigational training, and it’s always best to have this navigational training set as a milestone before applying this training methodology, so as to prevent the time wasteful task of retraining forgotten skills.
[Disclaimer]
First of all, I’ll say that these findings are only after only a couple days’ research, and most likely not the most efficient or the most effective method in making agents that have a tendency of attacking from mid-range. Furthermore, I have observed on occasion some unwanted side effects in agent behavior from this method of training that may be detrimental to its overall effectiveness, so use at your own discretion.
[/Disclaimer]
That aside, I’ll now share a little of the insight that I’ve gleaned from NERO agent training – making a NERO attack a target primarily from mid-range distances.
I’ll basically describe the steps I took in making a particular ‘batch’ of agents with this ability. Overall this took about 30 minutes of training, and about 8 convergences.
Why make agents with this ability? Well, if you’ve played around at all with NERO the game, then you’ve likely run across the “Grove – Death From Afar” team, and noticed their peculiar way of fighting, along with their tendency to stomp the crud out of whatever agents you’ve pitted against them by hanging back and attacking from a distance, typically in a line, making a deadly firing line on anything that would approach. I found this to be a very effective tactic, and very difficult to defeat (at present at least). So why not find a way to emulate this skill in your own agents? Well, here’s my first discovery in my playing around with NERO.
Anyways, read on and take notes, but most of all, enjoy. ;2)
To start, I created a training game, loaded the “sandbox” level, shown here:

Then, I placed a static enemy in the center of the field,
then selected the circular spawning pattern,
.
Now for the sliders. I set them initially to this setting:

I am aiming for the agents to focus mainly on getting within mid-range of the target and to open fire on it, while staying generally away from one another and not becoming too ‘jumpy’, as I had set the stand-in-place setting to a modest setting. True, it isn’t really recommended to train agents to more than one slider, but I’ve found that at least a little nudge in a couple other sliders helps a little towards more dynamic training behaviors aside from the sliders that I’m primarily focusing on.
15 seconds is sufficient time for the more aggressive approaching agents to get within firing range, with a few spare seconds to allow them time to shoot and for us to conduct a little behavioral review (smiting and converging).
As an aside, it will be helpful to have the ID# HUD display on over the agents’ heads, as it will be important to note certain ones during this process to know which to pick for smiting and/or converging with.
After setting the sliders as shown above, point to a spot next to the target and right-click, selecting ‘Launch Team’. With the circular formation, and the large size of the sandbox, the spawning pattern will neatly fit inside the training area:

At this point, just watch and observe for a few minutes, and allow the first-generation agents to ‘get the clue’ and start approaching the target with some amount of gusto. Watch the new ID’s come in, and wait until at least ID #80 is generated before starting to look for an agent with a good approach habit. This starts Phase 1 of training:
1 – Finding a Good Enemy-Approaching Agent
Once you see several of the new recruit agents approaching the target with some level of eagerness (you can slide the reward up to max if you’d like to speed this part of the training, but make sure you put it back to no more than 25% after this first convergence), select an agent exhibiting a good, consistent tendency of approaching the target and getting within firing range. Whether it fires off a shot or two – or even hangs back at mid-range - isn’t really the focus here, but if you see it happening, then more power to you. All we need right now is a good approaching skill.
Once you’ve found a good ‘approacher’ agent, pause the training (press P) and right-click the agent and select ‘Converge’. You should see all the agents disappear from the field at this point. This remakes all of the agents into a copy of the agent you converged on – hopefully making all of them assume the approach pattern of the one you’ve converged on.
This helps to make the next few steps of training a little more efficient, even if it removes genome variety from the other agents (at least for now).
Un-pause (press P again) and watch the new ‘brood’ of agents. Make sure most of them (at least 75% or more) heads towards the target without much hesitation. If for some strange reason you get a ‘bad brood’ with that convergence, simply right-click and select “Undo Converge” and let the training pick up again with the prior brood, picking a better candidate for the necxt convergence.
After you get a good brood, lets move on to Phase 2 of training:
2 - Seeking the ‘mid-range stopper’.
At this point, watch carefully on the approach styles of the oncoming agents, and use the following logic to deal with them:
a) If they get closer than approximately 8 units (measured in diameters of the colored circle, or halo, around each agent), briefly pause the game and smite each agent for getting too close. Remember, smiting is an effective way (hopefully) of specifically punishing an agent for unwanted behavior – a good smack on the metal posterior, so to say.

b) If you see an agent start to approach more cautiously, or even hold back and stay at a moderate distance of at least 8 halo diameters away (hopefully shooting too), take note of the agent’s brain ID and continue watching that agent until it ‘spawns away’. Sometimes even though an agent may hold back for a moment or two when it comes into view of the enemy, they may then start dashing at full speed at the target (another unwanted trait). If that becomes the case, follow step the advice in part a.
At this stage you want to find an agent that’s at least approaching the target and mostly holding back from the target at some distance. Note its ID and watch it do this at least two more times. There’s a chance that the agent you watch gets culled from the next respawn because of poor healthiness; that’s ok… wait until you find one that sticks around; those are the ones that are being more consistent. Once you’ve spotted an agent with good stopping abilities at-range, pause the game, then converge on that agent.
As a final bit of advice on converging, do not try to converge on any agent with ID numbers 1-50 during each convergence – wait until you see new ID’s show up on the map (past #50), and select one of those for each new convergence step. This will help ensure that you’re selecting agents that have evolved somewhat, likely improving on your previous brood of agents, and hopefully becoming better through the converging process.
This starts phase 3 of training:
3 - Refining the mid-range skill
The third phase is a little trickier, and I’ve already screwed it up a few times, so I can explain it here in this article to keep you from screwing it up like I did. :2)
In short, even though you find an agent that holds off at a distance, there may be reasons other than the target being there as to why it held back – it’s time to try and cull out the agents with these unwanted reasons and make sure it’s only paying attention of the target (at least for now).
Un-pause the game again, and continue to carefully observe the way the new brood of agents approach the target. Don’t forget to act out as you did in the previous phase with the smiting and observing of hopefuls.
Here’s a screen I took at this point, and you can see that some of them are already exhibiting the skill we want here:

The area I circled are the agents I’ve observed that are already staying at-range.
This particular step may take some time, as you want the agent that *only* does the following:
1) Consistently stays at mid-range and does not fall back out of firing range or suddenly rush (face hug) the target during its lifetime. At least 2 re-spawns with this characteristic demonstrated is the minimum with me to fulfill this requirement.
2) Fires at the target while at range. Whether it hits the target or not isn’t really that important – just that it’s attempting to fire at the target at least once is good enough at this point. You may need to zoom in on the action a little (like the above picture) to see the shots being fired.
Again, once you’ve found the appropriate agent fulfilling these requirements, pause and converge with that agent.
Repeat this process at least one to three times with the next ‘brood’ of agents, making sure to select from the ‘new ID’s’, and being good about smiting the ‘face huggers’, to help keep new agents being generated with the desired traits we’re looking for.
Now, lets move on to the next phase:
4 - Locking down the mid-range
With the settings I have suggested from the start of training, you should have been seeing the bots “bobbing” forward and back some as they were settling into the midrange you’ve been selecting. With any luck, at this point in the training, this bobbing should be getting less pronounced, as well as their tendency to crowd one another be less of a problem than it was in the beginning.
Remember, with collisions set to ON (read: in battle mode), line-of-sight and friendly fire situations cause battle inefficiencies and damage amongst friendly bots, so the punishment setting I have there is to help minimize this (it may need to be set higher, but further experimentation will only tell if that is needed).
Now that you’re getting a decent batch of agents that stand off at-range and attack the target, its time to, as Emeril the chef says, “Crank it up a notch!”
Here’s a screen I got after about 3 refinings:

note the ‘ring’ forming around the target now, along with the very pronounced explosions around the target. Nice. ;2)
This next phase of training will help us find the agents in our batch that exhibit this ‘maintain mid-range’ characteristic, as well as help us pinpoint the most aggressively trigger-happy of the bunch:
5 – Training the “Fight and Flight” Nature
Now, as you’ve most likely observed from the ‘grove-death from afar’ (GdfA) team (you know, the one that usually mops the arena with your agents time and time again most likely) is that they maintain a consistent firing range, regardless of the enemy’s movements. If the enemy advances, they retreat, maintaining that distance, and conversely if the enemy retreats, these agents advance to keep the distance back to their desired attack range. These bots appear really tough, but I believe they are still beatable, and that’s the aim of this training – to make your agents be able to bet them or at least fight them on equal footing. The finer details on how this is done I’ll reserve that for you all to discover; I don’t want to spoil all the fun here! ;2)
Phase 5 will require a little hand-eye coordination on your part, as now you’ll be taking a much more active role in the range training of your agents. This time, you’ll be moving the target around and at the same time looking for agents showing range-maintenance behaviors - all the while still enforcing the training you’ve done in the previous phases (read: smite, smite, and smite some more!)
Now, before you un-pause the game and start, select your target with a right-click and select “move”. Now un-pause. You may want to zoom out if you’ve zoomed in, so you can see more of the field. You’ll want to move the target like a real enemy agent – don’t try to jerk it around the field (you don’t want to confuse the sensor information of your agents, hindering their learning!); you need to see the reactions of the agents as they react to the prospect of a moving target.
I decided this method over the use of the ‘rover’ target because I wanted to control the direction of the target’s movement. This is important because you need to move the target towards your agents and then away from them in a back-and-forth motion, carefully observing their reactions.

It was interesting to point out that some of the reactions of the agents were varied, and a little unexpected at first. Where you saw them obediently staying at mid-range in the end of the previous phase, when pitted with an enemy suddenly heading right towards them, some of them forgot their standoff training and became face huggers again (like 589 above). Still others would obediently fall back at first, but then when I suddenly started to move the target away from them, they’d look ‘spaced out’ and keep falling back, effectively disengaging from combat. Both of those actions warranted a hefty smite or ten.
Above all, keep a sharp eye out for the agents that fall back when you approach them with the target and also advance when you pull the target away. Make note of the agent’s ID at this point (even pause and jot it down if necessary); this agent is definitely worth watching after it re-spawns.
Make sure you see your hopefuls consistently do this at least two more times, and also start to make note of approaching them with different parts the target facing them (front, sides and rear). I’ve recently found out (the hard way) that agent’s sensors seem to tell them what side of the enemy they’re seeing, and because of this information, they act differently depending on what side they are seeing.
You need to be careful of this part, because your agents may be trained to hold back only if they are in front of the target, where they’ll still rush from the flanks or rear. Of course the agents’ behavior will ultimately rest with your tactical recipe in mind, but to make true mid-range specialists, you’ll need to train your agents to stay at-range regardless of their angle to the enemy.
Again, once you’re pleased with a particular agent’s actions concerning your target, converge with it, and repeat this phase two to three more times, selecting agents with ID’s higher than 50 for the next ‘brood’ each time, until you see a very satisfying ‘ring’ of agents faithfully staying at-range, and hopefully pummeling the #*$@* out of the target in the process, with none of the agents falling off or suddenly ducking in for a little in-fighting.
Congratulations! You now have your first batch of anti-death-from-afar agents!
At this point, it would be a great idea to milestone your group, and then save your team off to a file, before training them in other skills.
As you read this, I’m already trying out variations on this mid-range training regimen, as well as looking for more subtle variations of the behaviors of maintaining mid-range, and any helpful findings I’ll be sure to share here. But of course, I wouldn’t want to just give away all of my secrets, would I? ;2)
Lastly, let me know if you’ve tried any the things from this article and what your results were from trying them. Feedback is very appreciated!
Thanks for bearing with me, and I’ll see you all around!
--- DanekJovax
Version 1.1 changes:
- Split phase 4 into two phases to make it easier to follow.
- Added distinct phases for each step of training, and fleshed out concepts in several of them.
- Corrected some grammatical errors.
- Cleaned up the overall readability of the document.
- Added some formatting for improved readability.