Unreal Tournament v469 Official Patches

Discussions related to Unreal Tournament.
Nelsona
Posts: 1754
Joined: Sat Sep 30, 2017 5:03 am

Re: Unreal Tournament v469 Official Patches

Post by Nelsona »

Checked 469d + MonsterHunt613... and Bots.
I got some new stuff...

Code: Select all

Log: Breadth path list overflow from PathNode40
DevPath: 2000 navigation nodes searched from PathNode40!
The thing is that map has 251 Navigation Actors and... 543 ReachSpecs aka Paths...
Too simple is now too complex ? If map has only 251 nodes how comes that were checked over 2000 Nodes ?

I tested/played previously the same map in my private external server 440 + XC_Engine 24 and.... XC_MonsterHunt. I did not see any errors for hours...
After doing more extra checks concerning more poorly coded MH versions probably I'll drop it in public - I'll think about it. First version was indeed just some plain MH garbage but... I did some polishing and... it looks like 469d and newer MH version are having other opinions concerning simplicity...
Or... it happened in the moment when I quit the game - engine was still processing something during exiting stage ?

The same map - subject Queen class.
Queen to me was badly messed up by EPIC's "idea" - dumbly tele-fragging monsters and even eliminating themselves. I worked time ago for fixing that misery and here I see a roll-back. When in my server I could gain some extra-score for killing them - pretty challenging, here I killed only the last one because the rest of them got vanished during their lousy teleporting habits.
To me it seems that a potential final version of 469 patch will need the same fixes more or less using a XC_Engine if such a version will be available and functional.
If I'll be out of these extra-options which I'm already using... then I simply can forget about any update. A bunch of tweaks and fixes are simply out without XC_Engine. This is not what I need.
UncodeX Stuff
Not often maintained
My UT Mapping works...
Learn the rules like a pro, so you can break them like an artist.
- Pablo Picasso -
Nelsona
Posts: 1754
Joined: Sat Sep 30, 2017 5:03 am

Re: Unreal Tournament v469 Official Patches

Post by Nelsona »

Info-bump
Higor has sent me privately a version of XC_Engine v26 targeting UT Patch 469d. This way I could have some MH party using XC_Monsterhunt which I've done in past years...
A random alleged "map" which was a misery disregarding what are saying hands clappers, which I polished and applying some fixes at those dumb settings and properties was a candidate for tests - I played map tens of times without a problem and then I picked it for testing.
The deal goes as follows. I hit Queens Area capturing their attention over me. They started Teleporting as they usually do when enemy is not around. There things went into a big noise, their teleporting noise went very loud - any they were really far. I don't remember other monsters making such noise. All was spam, I could not hear even guns fire... I don't get what was about that Teleporting noise but right now this way is no way... Me one I don't play only CTF and DM. The patch looks nice, it is featured, XC_Engine seems to work correctly but at sound subject things for me are screwed up. The two drivers which are working for me Galaxy and OpenAL have the same results and honestly I don't like OpenAL how does it render sounds. The rest of sound drivers are missing, I'll look if something is available. Either way I don't understand why missing options are listed for being chosen but... that's it.

The very good thing is that now I can use my builder in Editor, it seems that a few checks were not having any problem.
UTEd469d.PNG
UTEd469d.PNG (550.83 KiB) Viewed 58809 times
UncodeX Stuff
Not often maintained
My UT Mapping works...
Learn the rules like a pro, so you can break them like an artist.
- Pablo Picasso -
Nelsona
Posts: 1754
Joined: Sat Sep 30, 2017 5:03 am

Re: Unreal Tournament v469 Official Patches

Post by Nelsona »

While I was doing some checks concerning Textures... Builder checker has crashed Editor while was trying to reveal some properties of Textures...
It's understandable that game has to be wrapped for Windows 10 + but altering initial integrity it's not such a good idea - it should be compiled with newer compilers and nothing else... I did big Textures without to mess up rendering...
Let's see what we have in 436... Recommended "shouldn't be modified"...
BitMap_436.PNG
BitMap_436.PNG (27.07 KiB) Viewed 57790 times
And, of course this was NEVER MODIFIED... Suuuure. Somewhere I posted an image with a Texture that was unavailable for 436 allowing player to see through that "wall". What a coincidence...
BitMap_469.PNG
BitMap_469.PNG (34.53 KiB) Viewed 57790 times
Disregarding what EPIC asked, Bitmap object has now another formula... I don't get what has to do with "Windoze" 10 compatibility ? Clearly what was not as target to be changed... suddenly went changed... Tell me the story with backward compatibility when Texture has unknown format for 436...
UncodeX Stuff
Not often maintained
My UT Mapping works...
Learn the rules like a pro, so you can break them like an artist.
- Pablo Picasso -
User avatar
D13GO_{HoF}
Posts: 343
Joined: Thu Sep 21, 2017 11:23 pm
Location: Costa Rica

Re: Unreal Tournament v469e Official Patches

Post by D13GO_{HoF} »

Unreal Tournament new version v469e - Candidate Release 4 got released

https://github.com/OldUnreal/UnrealTour ... s/releases
This is a release candidate for Unreal Tournament v469e. This version is stable and compatible with the most recent versions of ACE.

Notable changes since Unreal Tournament v469d include:

We added dozens of major quality-of-life features to Unreal Editor
Our Windows patches now include two great DirectX 11-based renderers: Metallicafan212's ICBINDx11 and dpJudas' D3D11Drv. These renderers offer great performance, low input latency, and lots of features. However, they will only work on recent versions of Windows and require a somewhat recent GPU
Apple users rejoice! This patch includes a brand new renderer that will talk to your machine using Apple's Metal API. You can enable this new renderer by setting the GameRenderDevice option in the [Engine.Engine] section of your game ini to Frucore.FrucoreRenderDevice. Please note that we couldn't call this renderer MetalDrv because that name is still taken by the renderer that targets S3's Metal API
The Windows and Linux patches now ship with dpJudas' VulkanDrv
By popular request, we added widescreen FOV scaling to the game (thanks Masterkent!)
The in-game server browser now needs much less time to populate the server list

A full change log is available here. We look forward to your feedback.

Post release notes: exe version of patch broken and removed. Use zip version instead.
User avatar
SC]-[WARTZ_{HoF}
Site Admin
Posts: 431
Joined: Wed May 10, 2017 7:08 am

Re: Unreal Tournament v469 Official Patches

Post by SC]-[WARTZ_{HoF} »

I updated my first post adding 469c and 469d official releases. Looks like another candidate release here for version 469e https://github.com/OldUnreal/UnrealTour ... /v469e-rc7
Nelsona
Posts: 1754
Joined: Sat Sep 30, 2017 5:03 am

Re: Unreal Tournament v469 Official Patches

Post by Nelsona »

RC7 it's working here... without a lot of changes regarding to what I tested - so far its usage was postponed as long as I don't have the corresponding XC_Engine version.
Previously released 469d has an Editor which it's slower even than 436/440 - speaking about working with UScript in custom builders.
viewtopic.php?p=5383#p5383
UncodeX Stuff
Not often maintained
My UT Mapping works...
Learn the rules like a pro, so you can break them like an artist.
- Pablo Picasso -
Nelsona
Posts: 1754
Joined: Sat Sep 30, 2017 5:03 am

Re: Unreal Tournament v469 Official Patches

Post by Nelsona »

Adding a small note: If you want to record a local game against Bots (perhaps custom ones) in my stage the demo-record doesn't include a lot of Bots - they are INVISIBLE and then... they show up "killed" which means a "Carcass" it's being shown but not the Bot. It happens disregarding PLAY options 1st view 3rd person view, it's the same - My Enemies and Friends are just simply not shown.
Edit:
Next: Native Actor function PlayerCanSeeMe also works behind player - exactly like that crap from EPIC, it was fixed some crash but the lousy code it's the same as it was since day 1 - ZERO improvements.

PS: Yes, it was 469e RC7...
UncodeX Stuff
Not often maintained
My UT Mapping works...
Learn the rules like a pro, so you can break them like an artist.
- Pablo Picasso -
Nelsona
Posts: 1754
Joined: Sat Sep 30, 2017 5:03 am

Re: Unreal Tournament v469 Official Patches

Post by Nelsona »

Next talk (perhaps to the walls)...

Some Performance Notes - previously I figured out not very funny slow downs in scripted executions used in UT Editor - talking about that "Please upgrade to" 469d version.
Let's consider that I did some tests out of Editor - in run-time. A small mutator using XC_Engine support with clocking feature was supposed to count Navigation Point Actors in three different maps using 4 methods: "foreach AllActors" native C++ iterator from Engine, then UScripted methods based on NavigationPointlist as follows:
"for" cycle, "while" and "do-until".
Such as:

Code: Select all

function Mutate(string MutateString, PlayerPawn Sender)
{
	local navigationpoint n;
	local float Time[2];
	local int np;

	if ( MutateString ~= "nodes" )
	{
		class'XC_CoreStatics'.static.Clock(Time);
		foreach AllActors ( class 'NavigationPoint', n )
			np++;
		log("Foreach Interator counted "$np$" nodes in"@class'XC_CoreStatics'.static.UnClock(Time)@"seconds.");
			np = 0;
		class'XC_CoreStatics'.static.Clock(Time);
		for ( n = Level.NavigationPointlist; n != None; n = n.nextNavigationPoint )
			np++;
		log("For Cycle counted "$np$" nodes in"@class'XC_CoreStatics'.static.UnClock(Time)@"seconds.");
			np = 0;
		class'XC_CoreStatics'.static.Clock(Time);
			n = Level.NavigationPointlist;
		while (n != None)
		{
			np++;
			n = n.nextNavigationPoint;
		}
		log("WHILE Linked list counted "$np$" nodes in"@class'XC_CoreStatics'.static.UnClock(Time)@"seconds.");
			np = 0;
		class'XC_CoreStatics'.static.Clock(Time);
			n = Level.NavigationPointlist;
		do
		{
			np++;
			n = n.nextNavigationPoint;
		}
		until ( n == None );
		log("DO-UNTIL Linked list counted "$np$" nodes in"@class'XC_CoreStatics'.static.UnClock(Time)@"seconds.");
		np = 0;
	}

	if ( NextMutator != None )
		NextMutator.Mutate(MutateString, Sender);
}
Notes - Now it's clear that a linked list with many elements works actually slower than "foreach AllActors" iterator - mid finger at PawnList in MonsterHunt with 1000+ creatures - it doesn't help at all.

Resuming - results from these maps (counting Navigation Nodes) comparing UT 440 with UT 469d.
PerfChecks wrote: Performance Clocking Tests

UT 440
ScriptLog: Foreach Interator counted 180 nodes in 0.000015 seconds.
ScriptLog: For Cycle counted 180 nodes in 0.000026 seconds.
ScriptLog: WHILE Linked list counted 180 nodes in 0.000012 seconds.
ScriptLog: DO-UNTIL Linked list counted 180 nodes in 0.000011 seconds.

ScriptLog: Foreach Interator counted 562 nodes in 0.000027 seconds.
ScriptLog: For Cycle counted 562 nodes in 0.000084 seconds.
ScriptLog: WHILE Linked list counted 562 nodes in 0.000042 seconds.
ScriptLog: DO-UNTIL Linked list counted 562 nodes in 0.000038 seconds.

ScriptLog: Foreach Interator counted 751 nodes in 0.000025 seconds.
ScriptLog: For Cycle counted 751 nodes in 0.000100 seconds.
ScriptLog: WHILE Linked list counted 751 nodes in 0.000044 seconds.
ScriptLog: DO-UNTIL Linked list counted 751 nodes in 0.000040 seconds.

UT 469d

ScriptLog: Foreach Interator counted 180 nodes in 0.000016 seconds.
ScriptLog: For Cycle counted 180 nodes in 0.000027 seconds.
ScriptLog: WHILE Linked list counted 180 nodes in 0.000014 seconds.
ScriptLog: DO-UNTIL Linked list counted 180 nodes in 0.000014 seconds.

ScriptLog: Foreach Interator counted 562 nodes in 0.000028 seconds.
ScriptLog: For Cycle counted 562 nodes in 0.000080 seconds.
ScriptLog: WHILE Linked list counted 562 nodes in 0.000036 seconds.
ScriptLog: DO-UNTIL Linked list counted 562 nodes in 0.000035 seconds.

ScriptLog: Foreach Interator counted 751 nodes in 0.000028 seconds.
ScriptLog: For Cycle counted 751 nodes in 0.000103 seconds.
ScriptLog: WHILE Linked list counted 751 nodes in 0.000049 seconds.
ScriptLog: DO-UNTIL Linked list counted 751 nodes in 0.000046 seconds.
In a single case linked list in UT469d was faster a bit - in the most of cases it's not faster than UT 440, and that's all for run-time checks.

Drawing conclusion:
In the age when machines were slower and optimizing codes would be very needed, EPIC did not bother to do the fastest methods.
"for" cycle compared to "While" and "do-until" it's clearly slower. On a PIII in 1999 this was not the best ever solution - these linked lists are widely used in BotPack for finding PlayerStarts, sorting "AlternatePath", etc. to not forget "PawnList"... Yeah, truly great...
UncodeX Stuff
Not often maintained
My UT Mapping works...
Learn the rules like a pro, so you can break them like an artist.
- Pablo Picasso -
Post Reply