MH Mappers interested at not doing only shitty empty cubes but willing to help OFF-Line Players playing with Bots. I'll try to explain some facts as much as I can. If explanations are not great I will ask Heston to fix grammar here if he wants to help a little bit.
This is not an exact Goal about doing paths assuming you know to do well connected paths and what are those "A.I. paths", if not stop reading and don't waste time ...
Starting with something...
So as a forgotten target, MonsterEnd is another secondary objective in default MonsterHunt by Shrimp - here and there I'll explain what does XC_MonsterHunt and other MH2 types by self person VS original MonsterHunt.Shrimp wrote: - If you want to add bot support to your map (very highly recommended), you can use the MonsterWaypoint actor (found in the classe-browser: Keypoint -> MonsterWaypoint). Just put the MonsterWaypoint actors wherever you want a bot waypoint to be, like near a button or a lever, or just along the path through the level. Set it's Position property to tell the bots in which order the waypoints must be visited. Set the first one at 1, the next at 2, then 3, and so on. You can also enter the Event tag of a particular actor so when the bot gets to the waypoint, something can be triggered to happen.
...
Mapper should take in account simple factors for MonsterHunt according to Bot power in finding these MH goals or not finding them. We don't have here default games based on a NavigationPoint - Flag from CTF is based on FlagBase, Domination is based on ControlPoints, Assault has a guide "nearestPathnodeTag" as a target location for nasty located Forts (AS-Mazon - chains), DeathMatch has InventorySpot actors which are guiding Bot based on natives (engine and bot code). MonsterHunt has a keypoint and a trigger as goals for Bot. These are limitations but... not impossible to do some Bot support if we understand term "Reachable" in UnrealEngine1.
Reachable = moving pawn from his current location to a nearby Actor/Goal using current locomotion method and capable of camping touching that spot probably at 640 UU distance if not 512 UU for safe case but I think it might go up to 800 UU according to original docs if map is not a bad-ass big one ruining DevPath. Now imagine a higher goal if it will ever be reachable... Also speaking about Target location VS Navigation Network - Reachable doesn't happen if any nearby node cannot be seen directly and passes through a mover - doesn't matter if is a NON-Solid Mover - it won't be reachable.
A CaveAt for MonsterHunt - when a MonsterWayPoint is touched, Bot won't roam anymore in that area unless has something triggering it there - so to speak objective goes completed after a single touch. In other versions by myself, Bot cannot touch this actor if has an enemy, so it has to eliminate monster for completing the goal...
Protecting MonsterWayPoint with a mover might be a good idea or a bad one depending on situation. MonsterWayPoint needs a nearby NavigationPoint accessible using "current locomotion needed" - swimming included, which is way more easy. Bot can swim up-down as wants.
Sampling now through a few lousy images - what - how - when - etc. Bot while is seeking for such a goal will trigger engine to do some processing. Engine will compute nearest NavigationPoint to our target actor if has a Reachable way to this target. If yes, will process paths up to pawn's seeker location pointing Pawn to a nearby node which is heading to that last PathNode nearby Target point by point. Even a BlockedPath is good here when it's the LAST one before reaching at target. Let's go to "protecting target" task - mover opens AFTER killing connected monster. What is the deal if monster is still alive and door closed/open and options: For:
- Default MH - Bot won't find this MonsterWayPoint - unreachable to last PathNode - there is a Mover on the way.
- XC_MonsterHunt - Bot will go to nearest Pathnode trying to open door - using NATIVE hunting feature from Engine.
- Other MH2 type - Bot blabbering around last PathNode - still moving to this area.
________________________ Strategy "Last Node Inside"
Since last PathNode is very closer Reachable to goal, definitely Bot will push door trying to do everything for reaching there - GOOD CASE.
________________________ Mover is Open or it's no longer blocking access - Completely reachable in all versions.
________________________ Mover Is open but we do have a higher location - Pawn will never camp there = UnReachable.
For:
- Default MonsterHunt - no target found = roaming map as in a DM if exist paths and Inventories.
- XC_MonsterHunt - if this MonsterWayPoint is not in a very high spot, Bot will still move into area having even chances to touch this;
- Other MH2 - the mostly crawling area trying to touch it - might be successful.
_______________________ Definitely a bad idea but still good for XC_MonsterHunt, and some MH2 types depending on FastTrace response (XC_Engine... ??)
_______________________ For next goal as MonsterEnd - final trigger ending game. Location:
- Cannot be found in Original MonsterHunt - Mover is blocking route;
- Can be found in XC_MonsterHunt and Bot will attempt to reach at End pushing mover - so to speak will roam in this area;
- Other MH2 types - depending on versions can be or not found - at a moment, Ending map by Bot was not a goal for me making player to camp and waiting Bot to do the job.
_______________________ Definitely this is a BAD idea but... XC_MonsterHunt might still be useful if location is not insane higher.
_______________________ Mover open or no mover - due to placement, this End will not be found in original MonsterHunt but the Bot might have access to routes in XC_MonsterHunt once again if placement is not crazy higher.
_______________________ Here is a screwed cylinder for special touch but placed correctly according to Bot's height (middle of Body) and then, because there is no occlusion on the way This actor can be found because is reachable from a nearest PathNode.
_______________________ This situation is a map goofing. MonsterWayPoint is reachable from nearest Node but... one of PathNodes on the way cannot be reached by running in this case (not water case) so Bot will NEVER find any route in ANY MonsterHunt version. Such nodes might be shown in blue in Editor because a pawn can fall from high Node to lower Nodes very easy but not reversal.
_______________________ Mover is open or unused - Last Nearest Pathnode exist on the way but... Goal is over a hole. I did such a testing map for XC_MonsterHunt during coding stage. Definitely in original MonsterHunt such a location cannot be found but this is a cake for XC_MonsterHunt where Bot will move to this goal trying to touch Actor and jumping for reaching there.
And let's quote a few samples adds where maps could be or they have started as good ones and going to trash later.
ICRedone(Rex) - if MonsterWayPoints actors would be properly counted and routes properly connected map would be navigable Up to end zone. After touching last MonsterWayPoint - good bye attack. Even if human is helping with monsters End will go UnReachable due to a sudden "portal" Mover covering End - cya Bot, you are stupid because mapper doesn't know Bot Pathing.
If map MH-Freeky+SBfix would have good Bot routes (broken nearby train station for sure), if closer Bot is killed while the last Queen is dead (Queen LOL) - A mover like a Portal will cover End making it UnReachable because last nearest PathNode is outside of Portal and will accomplish a bad situation sampled. Tracing codes are not asking collision - if mover is there chances to end map by Bot is mainly NONE but can still work in XC_MonsterHunt.
MHBotyMan4 is a tester mutator which I did for testing purposes acting exactly as default MonsterHunt. Probably version5 will have some extra features explaining better if way found is a default good or an XC forced one. It's better to see mappers learning "HowTo" for default MonsterHunt. Human player tester is a Pawn in this game and then, several routes can be found like in Bot case when XC_Engine is unlocking JumpSpot which won't accept seekers different from UT BOT class in plain UT.