RealBot
RealBot copied to clipboard
Improve the mechanism that creates node connections
There is a function Reachable which plays an important role for connecting nodes. Improving this should reduce the need for #17 . For example, in as_oilrig it learns some connections that are impossible to make:
This is typical on as_oilrig for instance, it also messes up the connections here:
The same symptom - although you don't see any connections drawn here.
I believe it has something to do with improper usage of point_hull. Perhaps we should use a crouched hull (head_hull?).
This will probably also reduce the errored connections in #17 for cs_italy.
should the
UTIL_TraceHull(Start, End, ignore_monsters, point_hull, NULL, &tr);
check use human_hull ?
RCBot uses the following method

- traceline from origin1 to origin2. If flFraction < 1.0, fail
- traceline from origin1 - cross product normalized * 16 to origin2 - cross product normalized * 16 (width check 1). If flFraction < 1.0, fail
- traceline from origin1 + cross product normalized * 16 to origin2 + cross product normalized * 16 (width check 2). If flFraction < 1.0, fail
- divide component into eight sections, check ground between each section by tracelining to ground after each component. If no ground (flFraction >= 1.0) then fail.
(mspaint image attached) ha
code here
https://github.com/rcbotCheeseh/RCBotSven5/blob/master/BotManager.as
bool UTIL_IsReachable ( Vector vFrom, Vector vTo, CBaseEntity@ ignore = null )
Yes probably something like that. Thanks for the pointers! :)
Although, in some cases you could argue that no ground being there in between could be jumpable, so the distance and height might make a difference. Ie something close enough and not too high is still jumpable. Think of the crate->window in cs_italy from CT spawn. Although, I'd rather have not that connection but other better connections than have only that one working and bad connections all over the place :)