XC_Engine megathread
- sektor2111
- Godlike
- Posts: 6420
- Joined: Sun May 09, 2010 6:15 pm
- Location: On the roof.
Re: XC_Engine megathread
Editor is doing this too ? The second copy logs nothing because file it's in use ? This should be the behavior for UCC too ?
Re: XC_Engine megathread
Default UT/UCC/Editor are simply unable to even start logging when file is in use, it was a feature I added that got broken in the middle of the porting process.
Re: XC_Engine megathread
So far so good on the experimental path builder...
Distance isn't fixed to 1000, but it has a tendency to go a bit higher. Can be up to ~1600 in some cases.
Distance isn't fixed to 1000, but it has a tendency to go a bit higher. Can be up to ~1600 in some cases.
- sektor2111
- Godlike
- Posts: 6420
- Joined: Sun May 09, 2010 6:15 pm
- Location: On the roof.
Re: XC_Engine megathread
Original DevPath what does is do ? Does it work properly in such case ? I suppose that one has the same limitations because it uses original code... or it's possible a better optimization helping even old code ?
Re: XC_Engine megathread
The main difference is A-B sorting.
My path builder will enumerate EVERY A<->B possible connection and then sort by distance.
That way it'll start building the short paths first, which then allows smart-pruning without filling the path lists.
The smart pruner uses a different 3d primitive to catch nodes inbetween A-B to see if A-B shouldn't be built.
========================
BOOM!, USER FRIENDLY PATH VISUALISATION!!!
Color codes (darker=only smaller pawns can use):
- Green > WALK
- Yellow > JUMP
- Red > AIR
- Blue > SPECIAL
-- Selecting the path will highlight it's reachspecs in blue-ish.
Lines:
- Back and forth lines separated (AND DON'T CROSS!)
- Arrow indicating direction.
My path builder will enumerate EVERY A<->B possible connection and then sort by distance.
That way it'll start building the short paths first, which then allows smart-pruning without filling the path lists.
The smart pruner uses a different 3d primitive to catch nodes inbetween A-B to see if A-B shouldn't be built.
========================
BOOM!, USER FRIENDLY PATH VISUALISATION!!!
Color codes (darker=only smaller pawns can use):
- Green > WALK
- Yellow > JUMP
- Red > AIR
- Blue > SPECIAL
-- Selecting the path will highlight it's reachspecs in blue-ish.
Lines:
- Back and forth lines separated (AND DON'T CROSS!)
- Arrow indicating direction.
- sektor2111
- Godlike
- Posts: 6420
- Joined: Sun May 09, 2010 6:15 pm
- Location: On the roof.
- papercoffee
- Godlike
- Posts: 10462
- Joined: Wed Jul 15, 2009 11:36 am
- Personal rank: coffee addicted !!!
- Location: Cologne, the city with the big cathedral.
- Contact:
- UnrealGGecko
- Godlike
- Posts: 2920
- Joined: Wed Feb 01, 2012 11:26 am
- Personal rank: GEx the Gecko
- Location: Kaunas, Lithuania
- Contact:
Re: XC_Engine megathread
This looks really helpful, nice!
(offtopic) link to the map plz?
(offtopic) link to the map plz?
My work for UT99: Counter-Strike VP, MaleOne+ (now updated), FemaleOne+ and the FemaleTwo220 voicepacks DM-XC-NaliTreeV2 (from the 2012 Xmas Contest mappack), DM/DOM-20AC-CastleGeorgeV3 (from the 20th Anniversary Contest mappack), DM-UFFO, DM-WreckingBall, (NEW!) CTFM-Sundial
my small spec of files at Google Drive
List of console converted maps, models & more!
Re: XC_Engine megathread
UT Forgotten Classics pack
This is the ONLY available link.
http://medor.no-ip.org/index.php?dir=To ... e5-ZIP.zip
This is the ONLY available link.
http://medor.no-ip.org/index.php?dir=To ... e5-ZIP.zip
- UnrealGGecko
- Godlike
- Posts: 2920
- Joined: Wed Feb 01, 2012 11:26 am
- Personal rank: GEx the Gecko
- Location: Kaunas, Lithuania
- Contact:
Re: XC_Engine megathread
... And I was looking for that pack a while back too, thank you!
My work for UT99: Counter-Strike VP, MaleOne+ (now updated), FemaleOne+ and the FemaleTwo220 voicepacks DM-XC-NaliTreeV2 (from the 2012 Xmas Contest mappack), DM/DOM-20AC-CastleGeorgeV3 (from the 20th Anniversary Contest mappack), DM-UFFO, DM-WreckingBall, (NEW!) CTFM-Sundial
my small spec of files at Google Drive
List of console converted maps, models & more!
- sektor2111
- Godlike
- Posts: 6420
- Joined: Sun May 09, 2010 6:15 pm
- Location: On the roof.
Re: XC_Engine megathread
As a deviation in off topic mode
Interesting this pack - goodies and plonks are available too. Reference: DM-AMariner][.
Ayeee, nice pathing job as a great home-work for this week-end...
Deviation ends.
Perhaps I have to wait Higor's newer builder for "dancing" a bit around... I really think that would be entertaining... or pathing in "oldskool" style might be very educative... Oh well, I can predict already too much fun...
Interesting this pack - goodies and plonks are available too. Reference: DM-AMariner][.
Oh, really ? Too bad. Which means I will have soon a new fresh DM Level, I do not have to mention that some route through a house around has no LINKS from any kind - once again: default PathNode is TOO BIG - too bad that people could not figure this after one decade of crapped ramps and small spots - date looks 2010. As for some Lift there - I don't get the presence of TWO LiftCenter actors for the same Lift...DM-AMariner.txt wrote: Known bugs : The two lifts aren't to hot, I gave up trying to get the bots
to use them. No head for hights I guess. They also flatly
refuse to use the two nice ice tunnels that lead to the sniper
position on the ice bridge, so I go up there now and again for
some supprise head shots, That'll teach em.
There is sure to be one or two more but I can't find them.
Ayeee, nice pathing job as a great home-work for this week-end...
Deviation ends.
Perhaps I have to wait Higor's newer builder for "dancing" a bit around... I really think that would be entertaining... or pathing in "oldskool" style might be very educative... Oh well, I can predict already too much fun...
- papercoffee
- Godlike
- Posts: 10462
- Joined: Wed Jul 15, 2009 11:36 am
- Personal rank: coffee addicted !!!
- Location: Cologne, the city with the big cathedral.
- Contact:
Re: XC_Engine megathread
I split the thread and put the discussion about the mover issue here viewtopic.php?p=110419#p110419
I just want to say keep your manners and talk on a mature level ...or I whack you with a ladle.
I just want to say keep your manners and talk on a mature level ...or I whack you with a ladle.
Re: XC_Engine megathread
Decided to finally implement the FerBotz route mapper into XC_Core.
A couple of changes in the algorithm and more features added and the results are more than satisfying.
For starters, the new route mapper can multi-map from multiple starting points, which means it can now be used to figure out which of many starting points is the nearest to one or more objective (nearest may vary on each case!), all while using a single query.
Secondly, the mapper can be set to stop as soon as a marked destination is found and refined for shortest distance, greatly reducing processing times (no need to process the entire map if you want to reach something that's nearby).
It also contains a somewhat expensive start point finder if you're lazy to do that yourself.
Here's the difference in cycle counters between FerBotz's improved route mapper and the XC one: Additionally, the size of the 'StartAnchor' array you can pass to the MapRoutes function isn't fixed!!!
It can be of any size you want.
A couple of changes in the algorithm and more features added and the results are more than satisfying.
For starters, the new route mapper can multi-map from multiple starting points, which means it can now be used to figure out which of many starting points is the nearest to one or more objective (nearest may vary on each case!), all while using a single query.
Secondly, the mapper can be set to stop as soon as a marked destination is found and refined for shortest distance, greatly reducing processing times (no need to process the entire map if you want to reach something that's nearby).
It also contains a somewhat expensive start point finder if you're lazy to do that yourself.
Here's the difference in cycle counters between FerBotz's improved route mapper and the XC one: Additionally, the size of the 'StartAnchor' array you can pass to the MapRoutes function isn't fixed!!!
It can be of any size you want.
//********************************
// *********** Route mapper
//
// Pass a list of Start Anchors (or autogenerate one based on 'Reference' position if not passed)
// - Start Anchors must have VisitedWeight preset to a value that indicates initial route cost (if you're not sure set to 0)
// - The list of anchors can be of any size!!
// Pass an event that optionally modifies the behaviour of the route mapper (base Cost set, bEndPoint marking)
// - The event must have no parameters or return type
//
// When the optional event is called, all path nodes have:
// - VisitedWeight = 10000000 (if normal paths)
// -** StartAnchors have this set to a different value that represents the initial route cost.
// -** StartAnchors automatically searched by the mapper (no list provided) have this value set as (Dist to Ref * 2)
// - Cost = 0 (ExtraCost/SpecialCost added to this)
// - bEndPoint = false
//
// Setting bEndPoint=True forces the route mapper to end if a short route has been found from start to end (not full mapping).
// Setting base Cost alters the weight of this path node.
// Setting initial VisitedWeight (on StartAnchor) will give additional starting weight/cost to the whole route starting from this point.
//
// When the mapping has finished:
// - The return value of the function is the nearest bEndPoint=True path (if provided)
// On path nodes after finished:
// - VisitedWeight = 'distance' from nearest StartAnchor.
// - VisitedWeight = 10000000 >>> unreachable.
// - StartPath = StartAnchor corresponding to this route
// - PrevOrdered = Previous path node in this route
// - Cost = Post-processed Cost (only calculated on demand!)Code: Select all
native /*(3538)*/ final function NavigationPoint MapRoutes( Pawn Seeker, optional NavigationPoint StartAnchors[16], optional name RouteMapperEvent); native /*(3539)*/ final function NavigationPoint BuildRouteCache( NavigationPoint EndPoint, out NavigationPoint CacheList[16]); //May skip start point if being touched by caller
- sektor2111
- Godlike
- Posts: 6420
- Joined: Sun May 09, 2010 6:15 pm
- Location: On the roof.
Re: XC_Engine megathread
Maybe it's good to be implemented, maybe an user will understand and use them - I've researched the old version of FerBotz and as I said before in a topic, I created paths through walls that did not help me. Yesterday, for example, I have produced a NavAdder plugin for DM-Curse][ map. There were places where those paths made by the Editor were sh!t. Not only I got rid of them, but I even managed to make some new connections, causing the A.I. to move through places where you do not usually see them.
If the "MapRoutes" function will be fixed, and no wall route will be created, these implementations can be useful.
If the "MapRoutes" function will be fixed, and no wall route will be created, these implementations can be useful.