Unreal Tournament 469

Discussions about UT99
Post Reply
User avatar
PrinceOfFunky
Godlike
Posts: 1200
Joined: Mon Aug 31, 2015 10:31 pm

Re: Unreal Tournament 469

Post by PrinceOfFunky »

papercoffee wrote: Tue Oct 08, 2019 9:52 pm
PrinceOfFunky wrote: Tue Oct 08, 2019 6:35 pm 14) If I zoom with a sniper and I throw it, if I don't have any other weapon then SwitchToBestWeapon() won't do anything and I will end up stuck with the zoom FOV until I pick up another weapon (which is difficult with a tiny FOV);
Oh interesting... didn't notice this.
Have to test it.
You need a gametype that has no default inventory, or you won't be able to drop the default inventory items.
"Your stuff is known to be buggy and unfinished/not properly tested"
User avatar
OjitroC
Godlike
Posts: 3601
Joined: Sat Sep 12, 2015 8:46 pm

Re: Unreal Tournament 469

Post by OjitroC »

PrinceOfFunky wrote: Tue Oct 08, 2019 6:35 pm 14) If I zoom with a sniper and I throw it, if I don't have any other weapon then SwitchToBestWeapon() won't do anything and I will end up stuck with the zoom FOV until I pick up another weapon (which is difficult with a tiny FOV);
I'm really intrigued why you would want to drop your only weapon.
User avatar
PrinceOfFunky
Godlike
Posts: 1200
Joined: Mon Aug 31, 2015 10:31 pm

Re: Unreal Tournament 469

Post by PrinceOfFunky »

OjitroC wrote: Tue Oct 08, 2019 11:10 pm
PrinceOfFunky wrote: Tue Oct 08, 2019 6:35 pm 14) If I zoom with a sniper and I throw it, if I don't have any other weapon then SwitchToBestWeapon() won't do anything and I will end up stuck with the zoom FOV until I pick up another weapon (which is difficult with a tiny FOV);
I'm really intrigued why you would want to drop your only weapon.
If the weapon is considered strong, has few ammo and you throw it to the enemy, there are chances the enemy will automatically switch weapon with the one you threw, ending up with a disadvantage.
Even worse can be done with the redeemed:
15) If I AltFire with the WarheadLauncher and, meanwhile I'm controlling the GuidedWarshell, I throw it and then I make the GuidedWarshell explode, anyone who will pick it up will have the static texture all over the screen until it switches weapon.
"Your stuff is known to be buggy and unfinished/not properly tested"
Higor
Godlike
Posts: 1866
Joined: Sun Mar 04, 2012 6:47 pm

Re: Unreal Tournament 469

Post by Higor »

I'll deal with those later, noted.
User avatar
gattovicentino
Average
Posts: 58
Joined: Sat Feb 16, 2019 4:07 pm
Location: Vicenza (Veneto - Italia) / Santa Catarina (Brasil)

Re: Unreal Tournament 469

Post by gattovicentino »

very interesting, anth !

Remembering some problems I have encountered over time, it would be interesting to:

- allow many more serverpackages lines in unrealtournament.ini (if I want a multiplayer home LAN game with dozens of models/skins/mods installed)
- help with some occludebsp/occludeframe "general protection fault" issues causing crash, expecially using some mods and sophisticated weapons (U4E et cetera) in some maps.
- allow more than 32 bots in multiplayer games for the biggest maps.
- better managing of memory on newer hardware (yes, this would require a 64bit executable to be "perfect", but maybe something can be improved even using a 32bit one, avoiding "out of memory" issue).

OK I know that some of the above-mentioned issues/suggestions can't be done simply releasing a new patch, but...
Last edited by gattovicentino on Thu Oct 10, 2019 11:24 pm, edited 1 time in total.
User avatar
PrinceOfFunky
Godlike
Posts: 1200
Joined: Mon Aug 31, 2015 10:31 pm

Re: Unreal Tournament 469

Post by PrinceOfFunky »

Oh hey:
16) Give write access to dynamic arrays.
17) Let functions accept arrays as parameters.
"Your stuff is known to be buggy and unfinished/not properly tested"
User avatar
PrinceOfFunky
Godlike
Posts: 1200
Joined: Mon Aug 31, 2015 10:31 pm

Re: Unreal Tournament 469

Post by PrinceOfFunky »

18) exec commands from within HUD override those with the same name within PlayerPawn.
EDIT: 19) Coronas shouldn't be visible when outside of canvas.DrawPortal() rectangle.
EDIT 2:
20) vect() and rot() should accept referenced values instead of just literals.
21) It would be cool if we had full canvas access within ScriptedTexture.
EDIT 3:
22) When bots have no weapon "Botpack.Bot.Roaming.PickDestination", "Botpack.Bot.TacticalMove.PickRegDestination" and "Botpack.Bot.TacticalMove.Timer" give Accessed None's cause "Weapon" is None.
"Your stuff is known to be buggy and unfinished/not properly tested"
MetzelMade
Novice
Posts: 11
Joined: Mon Dec 08, 2008 1:45 am
Personal rank: Oldschooler
Location: Germany

Re: Unreal Tournament 469

Post by MetzelMade »

XC_Engine [20] - XC_Core [7b] - XC_IpDrv
viewtopic.php?t=5624
User avatar
sektor2111
Godlike
Posts: 6402
Joined: Sun May 09, 2010 6:15 pm
Location: On the roof.

Re: Unreal Tournament 469

Post by sektor2111 »

PrinceOfFunky wrote: Tue Oct 15, 2019 9:24 pm 22) When bots have no weapon "Botpack.Bot.Roaming.PickDestination", "Botpack.Bot.TacticalMove.PickRegDestination" and "Botpack.Bot.TacticalMove.Timer" give Accessed None's cause "Weapon" is None.
It's a pity, use custom Bots - yeah, those with various other tweaks because Bot has X+Y problems not only weapon problem:
- locking a path temporary if is trying harder to reach there and no hopes - mappers are doing such trashes;
- randomly jumping when a knee obstruction locks them in place;
- moving at RouteCache[1,2] if these are nearby, Pruning the closer route just because of Loops caused by Editor - configurable decision;
- Preventing to run in place when has no MoveTarget - Monsterhunt here... + those MH-*.unr files called wrongfully maps;
- Jumping from Lift - yeah, Barbie, that code is actually very real and not a guess... and very cool;
- Sitting on horizontal Lifts moving without jumping to early and falling down;
- Seeking pawns in a DeathMatch when inventory is loaded well instead of mooing at the same already collected items :loool: ;
- ETC.

As for memory issue perhaps old player will gonna facing an "Impossible to join server" which will demonstrate that updated UT'99 won't be UT'99 any more because an update doesn't mean changing structures because we don't know to build servers... and we need 21575 ServerPackages.
Such an update would be domestic in XC style "AddToPackagesMap..." functions and allowing people to run this way 200 game-types - IF THEY do have Players... instead of downloading for ages a mountain of useless packages for playing 5-20 minutes.
If this UT 469 will break all backward compatibility then I will ask for a download for UT468...
User avatar
PrinceOfFunky
Godlike
Posts: 1200
Joined: Mon Aug 31, 2015 10:31 pm

Re: Unreal Tournament 469

Post by PrinceOfFunky »

23) An Actor shouldn't be able to have a state named after its class, as GetStateName() gives its class name before BeginPlay() is called on it.
"Your stuff is known to be buggy and unfinished/not properly tested"
User avatar
anth
Adept
Posts: 257
Joined: Thu May 13, 2010 2:23 am

Re: Unreal Tournament 469

Post by anth »

PrinceOfFunky wrote: Wed Oct 02, 2019 5:37 pm 5) bItems, which is set as parameter for Level.ServerTravel(), should be accessible outside of that function. Basically, it sets an internal variable which if True lets the server travels the player's inventory and if False does nothing. The only way of setting it is by attempting to switch map;
Can't you just set bNextItems directly? I don't really see the issue here.
PrinceOfFunky wrote: Wed Oct 02, 2019 5:37 pm 9) Multiple HUDs, maybe with a "nextHUD" chain;
I think that the 1-HUD limitation was a conscious design choice... To extend the HUD functionality, you're supposed to use HUDMutators.

-MERGED-
PrinceOfFunky wrote: Tue Oct 08, 2019 6:35 pm 13) TimerCounter should increase accordingly to Level.TimeDilation;
The current behavior is consistent with Unreal 227 and Unreal Engine 2. Modders often multiply the timer interval by TimeDilation themselves if they really want an interval consistent with the wall clock time.
Last edited by papercoffee on Mon Oct 21, 2019 8:32 pm, edited 1 time in total.
Reason: Double Posts
User avatar
papercoffee
Godlike
Posts: 10441
Joined: Wed Jul 15, 2009 11:36 am
Personal rank: coffee addicted !!!
Location: Cologne, the city with the big cathedral.
Contact:

Re: Unreal Tournament 469

Post by papercoffee »

Even the Hero of the UT community ... please avoid double posts.
User avatar
PrinceOfFunky
Godlike
Posts: 1200
Joined: Mon Aug 31, 2015 10:31 pm

Re: Unreal Tournament 469

Post by PrinceOfFunky »

anth wrote: Mon Oct 21, 2019 7:02 pm
PrinceOfFunky wrote: Wed Oct 02, 2019 5:37 pm 5) bItems, which is set as parameter for Level.ServerTravel(), should be accessible outside of that function. Basically, it sets an internal variable which if True lets the server travels the player's inventory and if False does nothing. The only way of setting it is by attempting to switch map;
Can't you just set bNextItems directly? I don't really see the issue here.
"native event ClientTravel( string URL, ETravelType TravelType, bool bItems );" is the function declared in PlayerPawn, the only way to modify bNextItems is to switch level by calling "event ServerTravel( string URL, bool bItems )" in LevelInfo. Assigning a value to bNextItems will be useless since ServerTravel will always override it.
anth wrote: Mon Oct 21, 2019 7:02 pm
PrinceOfFunky wrote: Wed Oct 02, 2019 5:37 pm 9) Multiple HUDs, maybe with a "nextHUD" chain;
I think that the 1-HUD limitation was a conscious design choice... To extend the HUD functionality, you're supposed to use HUDMutators.
Only PostRender() is called within the mutator, all the other functions are not called and there's no possibility to use exec functions.
anth wrote: Mon Oct 21, 2019 7:02 pm
PrinceOfFunky wrote: Tue Oct 08, 2019 6:35 pm 13) TimerCounter should increase accordingly to Level.TimeDilation;
The current behavior is consistent with Unreal 227 and Unreal Engine 2. Modders often multiply the timer interval by TimeDilation themselves if they really want an interval consistent with the wall clock time.
[/quote]
Multiplying the timer interval by TimeDilation won't make it consistent with the level time dilation as it can change at any moment.
"Your stuff is known to be buggy and unfinished/not properly tested"
Higor
Godlike
Posts: 1866
Joined: Sun Mar 04, 2012 6:47 pm

Re: Unreal Tournament 469

Post by Higor »

Timer is engine timer, not game timer.
If timer was game timer, then GameReplication and GameInfo derivates wouldn't use TimeDilation in either of all Unreal Engine games.
User avatar
sektor2111
Godlike
Posts: 6402
Joined: Sun May 09, 2010 6:15 pm
Location: On the roof.

Re: Unreal Tournament 469

Post by sektor2111 »

In my last mutator HalfCTFTime I had to adjust that "Half timer" deal exactly because of this Level.TimeDilation and game timer from DeathMatchPlus - I did it and it won't need any UT update, just a guy with minimal coding skill, simple as that. If admins are changing game-speed because they like to demonstrate their power in front of player I don't care, so far no one was tester volunteer so I'll keep it for me, me which I'm not changing game-speed for no reason.
For speed changing will need another sort of timer running for control (state code probably is suitable or a tick) capturing GameSpeed vs Timer used by mutator and correcting it accordingly, once again No UT update is required here, just some math and programming (skill, free time, testing and all that stuff).
Post Reply