Another builder - UG227
Posted: Mon Apr 20, 2020 5:30 pm
Primary lab prototype it looks like it was successfully created. I checked script from NavigationPoint class which UnrealGold 227 has. It's pretty much entertaining, for UT we don't have a simple NavigationPoint with extra-properties as an add-on. In exchange we can use some natives for creating paths EXACTLY how we need and compatible with UT after saving map from UT and filtering extra bytes. ReachSpecs data are remaining in map available for UT devs but created by... HUMAN BEING.
Initial "PathsLinker" builder which I never solved now it comes to reality and... I'll add more wrapping - including for a "removal" of a reachspec - in fact it's about editing it... This is what works so farI'm not having a clue why we don't need such a "smart" node, not for mapping, but for properly editing/creating a reachSpec...
Edit: I got here a small paths network RED because I specified 20×40 Collision requirements and a single jumpy connection... entirely done point by point manually and later I linked NavigationPointList. So far it works in UT perfectly... Here I've done more lab test-crashes for BOT's function findViewSpot from state Hunting, if that is called outside of "hunting" it will crash game, also if FallingState gets called a lot, it does a recursive crash, crusher nodes have been replaced for doing/testing a normal game - it works. Here is what I've done. You can figure what happens at pressing button "paths rebuild" from UT Editor - go figure differences. Here are only 22 reachSpecs.
Note:
Nice Unreal Gold Assets can do a great thing for UT... but I don't know how much can do UT for Unreal Gold...
Initial "PathsLinker" builder which I never solved now it comes to reality and... I'll add more wrapping - including for a "removal" of a reachspec - in fact it's about editing it... This is what works so far
Code: Select all
final function GeneratePath(NavigationPoint N1, NavigationPoint N2)
{
local int i, j;
local int RIdx;
if ( N1 == None || N2 == None || RFlags == 0 || CRadius == 0 || CHeight == 0 )
{
log ("Cannot create a null reachSpec, please specify all path parameters.",'SpecGenerator');
return;
}
for ( i = 0; i < 16; i++ )
{
if ( N1.Paths[i] > -1 )
continue;
else
{
N1.Paths[i] = N1.GenReachSpec(N1,N2,VSize(N1.Location-N2.Location),CRadius,CHeight,RFlags,False); //Yeehaaaw !
RIdx = N1.Paths[i];
break;
}
}
for ( j = 0; j < 16; j++ )
{
if ( N2.upstreamPaths[j] > -1 )
continue;
else
{
N2.upstreamPaths[j] = RIdx;
break;
}
}
}
Edit: I got here a small paths network RED because I specified 20×40 Collision requirements and a single jumpy connection... entirely done point by point manually and later I linked NavigationPointList. So far it works in UT perfectly... Here I've done more lab test-crashes for BOT's function findViewSpot from state Hunting, if that is called outside of "hunting" it will crash game, also if FallingState gets called a lot, it does a recursive crash, crusher nodes have been replaced for doing/testing a normal game - it works. Here is what I've done. You can figure what happens at pressing button "paths rebuild" from UT Editor - go figure differences. Here are only 22 reachSpecs.
Note:
Nice Unreal Gold Assets can do a great thing for UT... but I don't know how much can do UT for Unreal Gold...