How to make Bots go through a Warpzone?

Tutorials and discussions about Mapping - Introduce your own ones!
Post Reply
User avatar
Barbie
Godlike
Posts: 2808
Joined: Fri Sep 25, 2015 9:01 pm
Location: moved without proper hashing

How to make Bots go through a Warpzone?

Post by Barbie »

How to make Bots go through a Warpzone? Is it enough to have connected NavigationPoints nearby?
WarpZone1.jpg
WarpZone2.jpg
Last edited by Barbie on Wed Nov 01, 2023 11:19 am, edited 1 time in total.
"Multiple exclamation marks," he went on, shaking his head, "are a sure sign of a diseased mind." --Terry Pratchett
Buggie
Godlike
Posts: 2749
Joined: Sat Mar 21, 2020 5:32 am

Re: How to make Bots go through a Warpzone?

Post by Buggie »

Nav point must see WarpZone actor. That enough.
During debug proccess, on WarpZone spawned WarpZoneMarker, which link both zones.

On your pics it already connected. Monsters with brain and bots can use this nav link.
User avatar
sektor2111
Godlike
Posts: 6413
Joined: Sun May 09, 2010 6:15 pm
Location: On the roof.

Re: How to make Bots go through a Warpzone?

Post by sektor2111 »

If Bot has NO routing through a Warp-Zone there can be other reasons for not doing it:
- missing links "before" warp;
- missing the "target" through warp;
- missing links "after" warp.
Plain Warp ReachSpecs indeed are aiming Pawns with "BRAINS_HUMAN". Here clearly are accepted stock pawns - even a Titan if is being adjusted with a higher intelligence because... these "special paths" are overriding original size of 70×70,
UnPath.h wrote:

Code: Select all

....
#define MAXCOMMONRADIUS 70 //max radius to consider in building paths
#define MAXCOMMONHEIGHT 70
....
this way Epic demonstrating that WIDER paths are fully functional if "ReachFlag" is accepting Pawn's physics capabilities and how engine does things against itself.
UnPath.cpp wrote:

Code: Select all

....
	if ( node->IsA(ATeleporter::StaticClass()) || node->IsA(AWarpZoneMarker::StaticClass()) )
	{
....
....
		newSpec.Init();
		newSpec.CollisionRadius = 150; //Finger to MaxCommonRadius
		newSpec.CollisionHeight = 150; //q.e.d.
		newSpec.reachFlags = R_SPECIAL;
		newSpec.Start = node;
		newSpec.End = Actor;
		newSpec.distance = 100;
		int pos = insertReachSpec(node->Paths, newSpec);
Finally you can adjust these "Special" paths if your map has Monsters delegated to patrol around warps - manual control over these defined ReachSpecs. Map "CTF-300k-I_C_U" - or such, (and others too) are demonstrating that Bot can deal with such stock paths without more problems if nearby nodes are placed as they should.
User avatar
EvilGrins
Godlike
Posts: 9744
Joined: Thu Jun 30, 2011 8:12 pm
Personal rank: God of Fudge
Location: Palo Alto, CA
Contact:

Re: How to make Bots go through a Warpzone?

Post by EvilGrins »

It is kinda funny how bots frequently get stuck in the middle of warp zones, isn't it?

Looks like they've been cut in half.
http://unreal-games.livejournal.com/
Image
medor wrote:Replace Skaarj with EvilGrins :mrgreen:
Smilies · viewtopic.php?f=8&t=13758
Post Reply