Ok I just found the original q1A075 compressed dl file, and botai.qc has this at the top:
======================================
FrikBot version 0.09 REVISION B
======================================
However in electro's accompanying readme, he added:
- Upgraded to Frikbot 0.09a (special unreleased revised version)
-revised frikbot includes: better avoidance of being pushed into lava
-fixed angle calculations ? (not sure if he is saying he fixed angle calcs or the new bot has fixed them)
More or less this bot is "as is" except I had to fix some weapon_range problems where he was using Vanilla Quake weapon floats for the bot code and not using the new ones
Electro put in the mod, say for the Railgun etc - hence the RJ issue mentioned in the other thread. I also experimented with the vectors it returned hoping to improve some, at least for the railgun,
which was returning the vector used for the sng since its the same weapon float now. I'll have to peek at your code to see if you have improived any of them.
Dr. Shadowborg wrote:
It's likely at most a modified FBXC then. You'll probably be wanting to look at upgrading some things. Off the top of my head:
- bot_angle_set (upgraded greatly from the original fbx code)
- some stuff relating to going through teleporters (a few maps have teleporter problems with frikbots going through them that I fixed)
- Using the wrong weapons for certain situations, for example using the rocket launcher at pointblank to open a secret door
- Some code to prevent shooting when there's no clear shot to what they want to hit (some is in bot_angle_set, the rest is in bot_fight_style)
- Some stuff to help prevent falling and dying in maps voidmaps like coagula2, also improves some other maps with lava / slime
- Some latency code that would cause them to fail at certain jumps, I forget where exactly this was, maybe BotAI()?
So I have perhaps v 09a slightly modified to a b to fit Electros mod, unless Electro modified it to a b himself. Or perhaps you would know?
The dl can be gotten here [
http://www.quakewiki.net/download/2837/ ]
Respawning problems I am experienced with, and have coded a few different solutions of my own that seem to work good, but have not yet put them into q1 Arena.
Did you put his item hunting code in your new version or was it worth including?
Not sure what you mean by mapcycles, unless you mean picking random maps? If so, I just finished making code using Orions sample code on this other thread:
[
http://forums.inside3d.com/viewtopic.php?f=2&t=5369 ]
Basicly I have it using Frik file to read the text file of Lightning Hunters 500 map names , so far working ok. Will probably post the code in that thread soon.
Im using DP and its edict limits are I believe 6K, though right now the number of gibs flying around tends to somewhat give a FPS hit depending on how many bots are Gibbing ,
Im managing it on so far with the remove() time code, and also as an added trick if the gib goes into the lava, I sometimes turn it into a fireball.
Havent peeked at your new version just yet, but I suppose I will just compare function to - function or I guess diff them to see what needs to be changed.
Dr. Shadowborg wrote:
FBX and FB009 were very easy to tell apart because they were radically different.
FBXB pretty much just had bugfixes for FBX / FBXA IIRC, FBXC has an option to dump waypoints via frik_file that the previous versions didn't.
Igor9's FBX+ had broken mapcycles, more randomized spawning / respawning (and limited telefrag avoidance), some amusing de-satanification of the pent in a telefrag message, and tweaks to item hunting / thisp. Somebody over on quakeone.com did a FBX++ that basically just fixed the broken mapcycles in FBX+.
The latest version was in collusion with Lightning Hunter, incorporating FBX+, his own tweaks, and my bugfixes / upgrades for the AI. It should also have the revised dm1-6 QC waypoints Lightning Hunter did, though they should only be used with an extended limits engine, as there are lots more waypoints eating up limited edicts. DM3 will usually crash to console from a lack of edicts in vanilla winquake during normal gameplay.