News | Forum | People | FAQ | Links | Search | Register | Log in
The Definitive Frikbot Waypack
The Definitive Frikbot Waypack, by Lightning Hunter:

After working on this for nearly 6 months on and off, I give you the Definitive Frikbot Waypack! Get ready for hours of bot fragging fun!

Description:
This pack adds bot support for nearly 400 user created Quake maps, all extensively tested and perfected by the biggest bot perfectionist (me). It is for use with the Frikbots. Around 167 of these were created from scratch, while the rest were improved by me. When I say improved, I mean that I basically spent so much time updating waypoints by other authors that it probably would have been easier creating them from scratch. I was very meticulous about making sure each and every map had the best bot support possible. I didn't slack off in any one map! For this very reason, I have titled this pack the Definitive Frikbot Waypack. You will not find a more comprehensive archive of Frikbot waypoints - all of them the very best quality. Nothing has been left out, so stop your waypoint searching here.

Please visit the thread here for downloads, more information, YouTube videos of the bot navigation abilities, 24-bit texture packs, and more.
http://quakeone.com/forums/quake-mod-releases/finished-works/5154-definitive-frikbot-waypack.html

NOTE: The waypoints do not currently work with Quakeworld (Quakeworld needs a different format). I am looking into making a QW version in the future. These should work with every other engine, however.
First | Previous | Next | Last
Teknoskillz 
Have you tried Omicrom bots? They are quite good and do not need way points generated (although you can optionally.) I could not get the Frikbots waypoint editor to work in Quakespasm or Darkplaces so I gave up on them.

http://mrelusive.com/oldprojects/obots/obots.html 
FBCA 
-099.zip, thats the one that crashes darkplaces engine on a makevectors problem. SRC wont compile because it seems the numpr_globals has been reached. Im using a newer verion of FTE compiler.

I did find an older version - fbca092kt, which does work ok. Frogbot sure does seem like it "cheats". Not sure if its the code, but it decided to spam me with grenades when I was hiding unseen just below the bot..angled in a bunch of grenades on a whim I guess?

Too bad Bakers not continuing with it, if I knew how to port Frogbot into other mode, you can possibly have more than one kind of bot opponent.

Omnibots, yes, I have them. I also contacted Mr Elusive a while ago, he says hes got no src code and is not interested in Q anymore apparently

:( 
If Only We Could 
code in bot pathing when we compile the map. I would love this level of support, like how you do it in UT '99 
Fifth 
There must be a way to read an entity class from .map, say an info_fbca_waypoint, to generate this .qc
That way, the level designer could set waypoints and generating FBCA data would be part of the map compilation. This is how it should be done for new levels or ones you have the .map


I posted it at quakeworld.nu months ago, but I don't think there are programmers there.

A tool would parse the map to get the entities, and generate a QC source. The map compilation batch/chain would do the rest. Is it possible? 
 
I have no idea whats possible. It would be lovely though if there was a way bot's were set up that had its own entity set that you can stick in the map file and compile it all together and just work. UT 99 had all these little apple things like path_corners that, if close enough together, the bots would follow like bread crumbs to each item. The bots were even smart enough to understand how to get to an item it wanted by following the bread crumbs to the item. Steve Polge is clearly a genius, it's just a shame that the Reaper Bot was never fully realised before he was stolen away to work at Epic. 
 
I have no idea whats possible. It would be lovely though if there was a way bot's were set up that had its own entity set that you can stick in the map file and compile it all together and just work. UT 99 had all these little apple things like path_corners that, if close enough together, the bots would follow like bread crumbs to each item. The bots were even smart enough to understand how to get to an item it wanted by following the bread crumbs to the item. Steve Polge is clearly a genius, it's just a shame that the Reaper Bot was never fully realised before he was stolen away to work at Epic. 
@Teknoskillz 
that mod has a LOT of vector immediates hardcoded. those immediates alone overflow the 65k globals limit.

fteqcc does have a feature that separates vector immediates into components, which allows them to be overlapped much more efficiently.
just add -Ovc on the commandline (or enable the 'vectorcalls' optimisation in the ui).
this will _massively_ reduce the number of globals needed in fbca, allowing it to fit within the limits imposed by the 16bit file format. the result will be less efficient, so only use it if you actually need it.


regarding parsing .maps to generate .qc files, it'd be better to just directly parse the entities lump from the mod...
of course, this might require some sort of actual cross-bot standard...
on the plus side, you wouldn't need to create a new version of the mod for each new map. 
 
Frogbot sure does seem like it "cheats". Not sure if its the code, but it decided to spam me with grenades when I was hiding unseen just below the bot..angled in a bunch of grenades on a whim I guess?

Definitely this is not a cheat, it's called 'prediction' 
Prediction 
So are you saying that it keeps track of every single client's positions, and if it does not see
the client after a certain period of time, it "takes a guess"? True the bot was not busy in combat, but as I moved to avoid the grenades, the aim seemed to adjust as if it knew what I was doing. 
Yeah 
its a common bot behavior since 0.13 ver. (prediction)
as a bot is trying to find the other client via makers zone(s) it always know where you hiding(running)

frogbot likes to throw grenades into the respawning spots and tele_dest just in case

theres a 'shot for luck' too, that's been added by some other modder 
Makers == Markers 
 
Frikbot 
Got a curious issue with my Frikbots. I ported them to work in Darkplaces using the new SpawnClient () built in so they dont need the included scoreboard logic. Seems they work great except once in a while, a map loads...its got waypoints, but the bots just stay put as if they dont wee the waypoints. Most the time a chengelevel command of the same map gets them going again. I thought maybe move the localcmd that loads the .way and wa1,wa2 files into startframe a few counts outside worldspawn would help, and it seems to but still the bots hang. Im using a olv version of Frikbot, I think its Frikbot 0.09b, or some of its functions are. Other functions may be Frikbot_X but Im not sure. 
Fixed ! 
Ok, this was one tough. Turns out I had to delay the function DynamicWaypoint() until framecount > 30. The regular ID maps, DM1-6 all use hard coded QC waypoints and these never fail, so I guess its something to do with the way files loading and perhaps multiple way / wa1..wa2 files that take longer.

I also found a good array of original ID map waypoint files in the last version of Frikbot_x. They mostly seem to work pretty well, except e1m2 has a problem where they always stop at the func_button near the grenade launcher. Any ideas on how to fix that issue? 
Create Waypoints? 
Ok, someone had said that all you do is just play and the waypoints get created by themselves? I dont seem to be able to locate that if its a seperate cvar or something? I did see impulse 104 brings up the editor, and I started to make some ways for a map, but seems this process can be kinda complex. Wasnt there a video or a tut showing how to make the waypoints someplace? 
They Need To 
Be made by hand, there's no automated system. 
 
Which makes this pack all the more impressive. 
It's 
pretty fun once you get into it, and the barrier to entry isn't so high.

The internal menu is pretty straight forward, the only tricky bit being dumping out the data to a legible .way format with -condebug.

A one time pipe dream was applying this to monsters. Not giving them bot strafing and stuff, just allowing them to navigate a level with it, if patrolling for example.

Which would allow them to patrol across lifts etc. anywhere you didn't want them to go, you just don't set up waypoints. 
 
That's a cool idea. It would also allow monsters to look more intelligent as they chase you down or whatever .. instead of randomly running into walls and feeling their way along like they're blind. 
And In Theory 
Not 'that' hard to implement either. The biggest task when setting up a node graph system like this is the legwork of creating the nodes and mapping them to your level.

But that's already been done! 
 
Waypoints should be something you can do in the editor 
If My Grandma Had A Beard She'd Be My Grandad 
In theory yes, but the waypoint in engine editor is actually pretty nice to use. Running around the map while setting it up also gives you a different viewpoint on where they should be. 
Condebug 
Always thought it was odd he opted to dump the ways like that and thought using Frikfile to just save them as files would have been alot better. Frikfile has been a engine built-in for a long while, so ought not be hard to do.

However I find the internal editor could use some improvements. For example linking ways, seems like you can spawn a way and not link it? What good is a non linked way to anything? Will the bot see it or only see it when all else fails? Things like that are unclear.

Also would anyone know how to fix that issue with the e1m2 way, makling the bot just hang out near the button near the gl ? 
 
i think frikbot far predates frikfile. 
Ways 
Well, apparently the version I am using DOES lay waypoints on empty maps as you move around the map that otherwise has none. I may have an older "B" version of the Frikbot here, I wanna say 0.2B ? Maybe the system is different on the older versions?

At any rate, I was able to dump them to a .way and .wa1 type file. They load ok on map load, however the bots dont react to them. At one point they seemed to, when I drew them out of the spawns for combat, but somethings not working - ugh. 
Some Progress 
So I found this code in bot_ed was commented out.

===============================================
if (cvar("pr_checkextension"))
{
if (checkextension("FRIK_FILE"))
SaveWays();

self.b_menu = 17;
self.b_menu_time = time;
}
=====================================
Uncommenting it seems to have let me save the ways using Frikfile at least.


However the bots still dont navigate on the map like they have the routes configured correctly, they seem to navigate, then stop, and some ways that I thought would be made never did get made.

Was also wondering if this code is maybe rounding the values down , in some cases isolating the waypoints so they cant be linked?

============================================
// 2001-09-10 FrikBot support by FrikaC/Maddes start
t.origin_x = rint(t.origin_x);
t.origin_y = rint(t.origin_y);
t.origin_z = rint(t.origin_z);
// 2001-09-10 FrikBot support by FrikaC/Maddes end
============================================= 
First | Previous | Next | Last
You must be logged in to post in this thread.
Website copyright © 2002-2024 John Fitzgibbons. All posts are copyright their respective authors.