|
News
14th Feb 2001
The
targetting system is working, and the bots now have some limited combat
skills. This includes weapon selection, aiming and defense use. There
is no combat movement yet, and they cannot use the blade. If you want
to just watch them at play, they will not target you in god mode. They
also react to weapons fire in their vicinity, and can hear and react to
items being picked up and shrines being used.
I
have been testing them extensively on dedicated servers, and unlike the
original GrinBots, they seem very stable. I have had a server running
for several hours with 12 bots, and not a single crash. There may be some
'body-snatching' issues to overcome, but I've not looked into that yet.
The
spawning system has been changed to allow pre-defined bots to be loaded.
Bots now have a range of definable characteristics to give them some personality,
and this information is stored in the .bot files in grinbots2\bots\. So
to spawn a bot using the information stored in the file geri.bot, use
the command sv bot spawn geri. If
you don't specify a name, a random bot will be spawned. Not all of these
characteristics are in use yet. Bots will also auto re-spawn into a map
after a level change.
Debug
mode is now toggled using set botdebug 1/0
and defaults to 0. This can be specified from the command line when the
game is loaded, or ingame. When botdebug is 0, loading a map will auto-load
the route file and re-spawn any bots ready for play. Setting botdebug
to 1 and loading a map will not load any route data, or spawn any bots,
so node-files can be manually created/edited/manipulated as before.
Some
things have changed with the route files too. The original .grn files
which contain node and link information now live in a folder called gribots2\nodes\.
These files are now only used during the route creation process. When
the route is finished, and paths have been built, saveroute
will output a .gr2 file to the grinbots2\routes\ directory. This is the
file that contains the complete pre-calculated reachspecs and node data
for the level, and is loaded by the bots at the start of a level. Having
these two files should make it easy to debug and re-create routes. I have
re-written some of the route tutorial to
reflect these changes.
I
have also included the source code with this release. This can be compiled
using Visual c++ 5 or above. These bots are the work of a happy amateur,
so don't be too picky with it. It may not be the prettiest code, and it
contains some resource hungry stuff, but it is fairly stable and does
exectly what it says on the tin.
You
can get both the sourcecode and the compiled dll from the downloads
page.
News
4th Feb 2001
Version03beta
is now available. This fixes the path-generation bug that was causing
lock-ups with v01. The teleporter weightings have been changed to stop
the bots continually choosing to travel by teleport if the option was
available. Any routes built using v01 that contain teleporters need to
have the teleporters re-linked to use the new weightings. To do this,
load the old route, and type relinktele
into the console, then re-save the route.
Platforms
are now useable by the bots (func_plat entities only), and they have some
simple AI to deal with this. Water is also supported, so routes can now
be made for most maps. Place nodes in water the same way you would place
nodes anywhere else. You will find it easier if you go into god-mode before
doing any under-water work, or else you will probably drown.
I've
also tweaked their movement routines, and they can get to some awkward
places now pretty well. An example is the ovum in Mosque, which they can
usually reach after a couple of tries (using the new route for mosque
which is included in the zip).
An
experimental targetting system is also in place, but they don't do anything
with it yet. I'm using this to simulate reaction times, and also to give
them some short-term memory of recent encounters. The way they see a player
is now a combination of various things such as where the player is in
their field of view, whether the player is moving, the light-level of
the area the player is standing, and other stuff such as ghosting and
spells. All these things are combined to produce a sort of visual-stimulus
signal, and if this signal exceeds a threshold, then the bot registers
an enemy. So, it takes the bots a lot longer to see a player standing
still in shadows than it does to see a player running around in a well
lit area.
Please,
look hard for bugs in this version, so I can get rid of them quickly.
Hopefully, the next release should see some combat :)
News
29th Jan 2001
GrinBots
MKII are coming to Parthoris!!
I
have started work on GrinBotsII. These are not an upgrade or enhancement
of the original GrinBots, but a completely new project. So far, I have
written a set of utilities that allow for the easy creation of route-files
for the bots, and also the AI that deals with their low-level path finding.
There is also a very basic spawning system, and some simple AI for goal-selection
and movement.
Version01beta
can be used to generate and test routes. Bots can then be spawned and
will navigate the level and pick up items. You can also watch them thinking
as they do this. There is support for both standard and 'blade-style'
shrines, recognition of all standard game items, and also support for
ropes. AI dealing with platforms and water is not implemented yet, so
they should not be used on maps containing deep water or platforms.
I
have written a tutorial that covers the
basics of route creation, using DMLight as an example, and the finished
route is included in the zip. There are also routes for DMCloud, Mosque
and DMZardoz. These can be edited and tweaked as much as you like. Hopefully,
by the time the bots have learned to fight, there will be plenty of routes
ready for them.
Please
email me with reports
of bugs and any other issues.
Grin
out.
|