The RealBot 'Source' Discuss things about the source code. You can here point out bugs, share ideas and code. Assign to become an 'official team member' and so on!
Suggestion --- (if not already implimented, too lazy to check nodemachine.cpp)
If a node is about to be placed, but another node is within X units on the X or Y axis (not Z, for obvious reasons... Although a Z check of 64 would cover jumping nodes too) DO NOT PLACE the new node.
This would prevent the issues of having 75 nodes in each spawn area, which I am finding to be the case on a couple maps. (cs_office, my default map)
Well this would be solved if you could place rects about the map on command with specific properties, such as spawn. Thus a 'ctspawn' supernode would tell them -get out of the spawn-. And they would. A 'hostage' supernode would tell Ts where to camp and CTs where to go. A well-programmed 'supernode' type system would probably operate much better than simply important-node areas because it would be rather dumb for Ts or CTs to camp in certain areas.
OT: Its not bad to report as many bug reports or features as you want; in fact i like it because its constructive critism and only in order to help to get the bot better.
I will update the source shortly, although the new source update contains very experimental behaviour.
If a node is about to be placed, but another node is within X units on the X or Y axis (not Z, for obvious reasons... Although a Z check of 64 would cover jumping nodes too) DO NOT PLACE the new node.
From my reading of NodeMachine.cpp, this is already the case. A node is not added by a player/bot move if it is closer than NODE_ZONE (45 units if not mistaken) of an existing node.
Hm. I think the bot should learn himself where a good or a bad point is.
If you give him important areas, sniper points, camp points and so on, he plays like a bot, not like a human. and he plays the stategie, which the "Waypointer" gives him. ...
i ahve noticed that if you place 'important' nodes in areas that the bots dont go to often, they will start going there a lot. then if you remove all the 'important' nodes, the bots choose their paths more randomly. i am guessing it is becuase they have experience in different areas, instead of just the shortest path to each other.
of course i dont know exactly how the bots choose their paths, so i really dont know. but thats the way it looks from here.
But if you do not give them preset locations, they will never learn the proper way to camp, where to aim while camping, or attempt to mimic human camping!
Let's face it, having a bot camp facing a wall is not very effective!
Give them aim-to areas, give them camping nodes, give them regions where all the nodes within the region should have specific properties. I am not telling you to get rid of the nodes WITHIN the region, simply to apply the same -properties- to every node. Put a 'region' where the snipers nest is on Dust2 with camping properties and tell them to aim down to the underpass, above the underpass where tunnel entrance is, and down towards tunnel doors. They will perfectly mimic human camping!
The point is to make them more human, yes? Well real humans dont bluntly charge eachother until they are all dead. Some camp, some snipe, some hide, some rush, and some defend the bombsite or hostages. It happens, its what humans do. But right now the bots do not know the difference between an important area near a camping site, an important area at a bombsite, or an important area at a hostage site. Do they need to know the difference? Yes!