Unreal Tournament 2004 Patch 3 Release notes.
This patch is completely compatible with the retail version - servers and
clients of any flavor can connect with each other.
This patch will not overwrite your ut2004.ini and user.ini files, except to
update settings as necessary. This patch includes all changes made in Patches
1 and 2.
Here is the full change list for Patch 3:
- Onslaught Map window clearly shows what team you are on
- The green vehicle crosshair no longer off centered from the main crosshair.
- Drivers don't take drowning damage while driving vehicle
- Made Vehicle.tick() functionality native (for performance).
- Added LockWarningInterval property to Vehicle.
- Fixed vehicles taking water damage when their driver gets out while they are
in the water
- Fixed Onslaught Vehicles so their reset time is reset to at least 10 seconds
- fixed AVRiL fired by bot sometimes changing to target vehicle bot is getting
- reduced bot accuracy with the Onslaught turret
- limited how far Scorpion web projectiles can fall before dissipating, to
prevent them being used for spamming
- Fixed link projectiles not doing extra damage to vehicles when linked up
- Fixed bots teleport looping in Onslaught
General Game play:
- Fixed low skill bots using lifts
- CTF defender AI improvements (pursuing flag)
- Optimized splash effects
- Junkyard magnet now works again
- Fixed AS-Junkyard exploit
- Don't preload skins with botuse=0
- Only precache Epic skins unless xDeathMatch.bCustomPreload is true
- Various script warning fixes
- SkipMatch cheat gives you credits as well
- MutNoSuperWeapons no longer in "arena" group.
- Fixed CTF-TwinTombs wrong team playerstart
- "Movie" tab is no longer empty in other languages
- Fixed some script warnings in UT2K4Tab_OnslaughtMap
- Fixed alignment bug in the Filters menu
- Fixed manually adding a favorite server overwriting the selected favorite.
- Fixed various options in the filters menu not being set to read only.
- Fixed Onslaught turrets so that their weaponmesh doesn't get hidden in demo
- Fixed Onslaught 2nd/3rd weapon orientation craziness during demo play back
- Fixed behindview resetting when preview another player in 3rd person during
- Fixed the Onslaught mini-map so it appears in demo playback (but not 100%
- Fixed Auto-Demo Recording
- Fixed setting spaces in MOTD via webadmin
- Fixed "weapon not firing" bug, caused by reliable bunches from client getting
queued up on server under certain packet loss conditions.
- Improved low net bandwith (modem) client net performance:
. improved vehicle turret replication at low net bandwidths
. improved old pawn replication at low net bandwidths
. Added bWasSaturated flag to PlayerController - set on server side when
connection was saturated the previous tick
. if connection saturated and low bandwidth, use terrain traces for
. Lowered netpriority and netupdatefrequency for onsweaponpawns
- Made super shock beams not bNetTemporary (so you always see your shots even
w/ packet loss)
- Added MaxClientFrameRate configurable property to LevelInfo. Add
MaxClientFrameRate=xx to the [Engine.LevelInfo] section of your UT2004.ini to
change this property. It only works if your netspeed is above 10000 (LAN
games, or as negotiated between server and client - increase the servers
MaxInternetClientRate above 10000 to use this feature in internet games).
Increasing this value will increase upstream bandwidth use, possibly causing
problems for ADSL and cable modem users with low bandwidth upstream pipes, and
will also increase server CPU utilization.
- Improved server performance by removing some expensive (and never tripped)
- Fixed speaking beacon to be green if have link out
- Fixed network jitter at low game speeds (gamespeed mutator)
- Speed hack checks enabled when flying redeemer
- Colored names exploit fixed again
- Fixed Web Response exploit
- Fixed server crash exploit
- Improved handling of packet loss of initial actor replication bunch
Mod Author Related:
- Fixed compile error/warnings with -mod= to point to the right directory.
- Made manifest transient, so it doesn't prevent saving games
- Fix for bInstantRotation weapons so they support having the same yaw and
- Added 2 commands to the security actor to return all aliases and bindings,
and added example code to XPlayer showing how to use them.
- Pawns using PHYS_Spider play walking anims
- Added dumpframes command for dumping raw frames as a movie. In the console,
type "dumpframes start" to begin the process, and "dumpframes stop" to end the
process. It should be using the current screenshot mask.
- Adjusted Scripted textures to use the character 'Q' for height, not char #0
- Integrated particle system editor (under the tools menu).
- Fixed NaNs in model render data (caused rendering issues on some hardware).
- Fixed crash bug in USkeletalMesh::GetCollisionBoundingBox()
- 64-bit fix.
- Fixed corrupt maps crashing upon .UCL generation
- MoveActor() performance optimization (avoid going through attachment list if
- Don't write "xx moved without proper hashing" warning to client logs.
- fixed rare (mod only) karma physics crash
Here is the full change list for Patch 2:
- Added bSmoothKarmaStateUpdates to Actor to control whether Karma interpolates
- Added bRepulseWater to KRepulsors and enabled this for Hovercraft
- Added bFlyingKarma to Pawn to indicate PHYS_Karma is active but pawn rotation
should still be handled like PHYS_Flying
- SVehicleFactories now store a reference to their marker as MyMarker
- Added bCanHover to Vehicle to indicate a vehicle that can use HoverPathNodes
to fly over water.
- Added water damage support to Vehicle so that vehicles will take damage when
- Karma now collides correctly with inverted terrain - courtesy James Golding
- Increased the extra linear dampening for Karma in water from 0.8 to 2.5 and
angular dampening from 0.1 to 0.4
- Moved RepulsorsShouldHit function to ONSVehicle where it should be.
- Added support for PowerCores and PowerNodes triggering events when created
- Cleaned up PowerCore energy beam effect when PowerCores are not present in
- Added bDriverCannotLeaveVehicle flag in ONSVehicle for vehicles you can't get
out of but instead will try to flip you upright when you press USE if the
vehicle is flipped.
- Added bNeverActivate to ONSVehicleFactory that can be set by mods that want
to use Onslaught maps but not factories.
- Fixed a bug in ONSWeapon that used the primary fire projectile class for
alt-fire instead of the alt-fire version.
- Moved daredevil code server-side to avoid horrible cheating and the ability
to mod/mutate features based on daredevil tricks.
- Reversable vehicle factories will work correctly when sides are swapped.
- Fixed midgame menu popping up when watching an Onslaught demo if the viewed
- Fixed camera rotation being changed when switching between first and third
person view in a manta
- Fixed target/ion painter ammo issues
- Fixed bug in stunt mutator where vehicles would be accelerated in their local
downward Z when holding the jump warmup while in air.
- Onslaught turrets cannot damage PowerCores or PowerNodes
- Onslaught vehicles take a very small amount of damage over time when on fire
and there is no driver
- Fixed players always spawning at own PowerCore after sides are swapped.
- Fixed problem where bots weren't spawning at the nodes they are defending.
General Game play:
- More script warning fixes
- Fixed armor loop in GameInfo.ReduceDamage() properly handling armor getting
destroyed while absorbing damage
- Invasion monsters never use default character mesh
- Fixed CTFSquadAI.FindHidePathFor()
- Make sure always add armor using Pawn.AddShieldStrength()
- Fixed ShieldAbsorb() armor damage absorption to produce consistent results in
- Fixed spawning of physicsvolume entry and exit actors, as well as splash
sounds, and made them client side.
- Added WaterSplash, used for projectiles and pawns
- Added SplashEffect property and CheckForSplash() function to
WeaponAttachment, so instant hit weapons can cause splashes
- Added BulletSplash, used for trace weapons
- Landing sounds no longer stomp on splash sounds
- Added WaterRing - spawned while pawn is walking in water, or center of pawn
enters water (new PawnEntryActor property in PhysicsVolume)
- Fixed pawn visible rotation lagging too far behind actual rotation (because
of head/torso twist support)
- Fixed bots going after nearby dropped inventory that they couldn't pick up
- Fixed some dynamic uploads (which could cause occasional hitching during
- Fixed getting proper ammo count when picking up dropped weapon and already
have ammo but no weapon of that type
- Fixed SquadLeader getting set to none if everyone in squad is in a turret
- HUD weapon bar bShowMissingWeaponInfo now config, so is properly saved
- Fixed CTFSquadAI finding flagholder when holder is in vehicle
- Fixed "Use Map Defaults" for bots can result in uneven teams in some maps
- [USE] will only bring up the mid-game menu in ONS games
- Fix for custom models crashing the single player game.
- Fixed TracerProjectile location setting after near miss sound effect
- Fixed BR bomb trail position in multiplayer
- Added Instagib CTF as standalone gametype
- Allow chatting when the game is paused.
- No longer catch own weapon when thrown while running forward
- Fixed weapons checking if they were out of ammo when they weren't the active
weapon (which was causing undesired switching to best weapon)
- Server browser filters have been reworked to be easier to use.
- Localized "New News" message
- Added localized IRC channels for French and German.
- Added a flashing messages when there is new community news.
- Movie Panel.
- Various Web Admin style fixes
- Don't load non-default voicepacks on dedicated server
- Fixed server enforcement of maxresponsetime, and make sure clients don't trip
- Fixed speedhack detection false positives
- Increased NetPriority of controlled ONSWeaponPawns
- Fixed client-side game time getting screwed up
- Improved jumping/dodging/etc. not getting lost when there's significant
- Fixed Cheat protect to view most voicepacks as ok
- Fixed *hopefully* the ServerBrowser locking packages and tripping cheat
- Don't spawn votinghandler and votingreplicationinfos for servers which don't
have voting enabled (slight performance improvement for those servers)
- TeamInfo and SquadAI have lower netupdatefrequency (for server performance).
Set NetUpdateTime whenever a replicated property is updated to get it
- Make sure that mutators are properly reported to master server
- Made ServerShortTimeout() replicated function reliable
- MasterServerUplink now caches calls to GetServerInfo and GetServerDetails.
- Onslaught server performance improvements:
- vehicle packed state struct updates don't set bNetDirty
- don't update vehicle SoundPitch on dedicated servers
- improved WebProjectile net performance
- added bIsAwake and bHasBeenAwake flags to ONSVehicle, used for packed
- Fixed replication conditions for a bunch of vehicle/projectile
properties, changed from bNetDirty to bNetInitial
- Fixed NetworkStatusMessages once and for all
- Reenabled temp. MD5 database generation for loaded packages on a server
- Fixed "flying player" exploit.
- Fixed keeping high translocator trajectory persistent across online level
Mod Author Related:
- Fix for the UCL not exporting bug.
- Fix for .INT files in mod hierarchy, Removed Temp MD5 Warning Message.
- Call PostRender2D() on own pawn as well (mod authors can decide not to render
- Added LevelInfo native function GetPhysicsVolume() - returns the physics
volume at a specified location
- Added actor property bTraceWater. If true, trace() by this actor returns
collisions with water volumes
- Added support for strafing while on ladders, if the LadderVolume property
bAllowLadderStrafing is set true (still false by default)
- Fix for log files and -MOD= switch
- Fix for cache manager exporting ucl files when it shouldn't
- Fixed LoadDecoText
- Use CrouchedPct instead of WalkingPct for crouched pawns
- Vehicle function NumPassengers() now simulated so it can be called on
- Made Destroy() function call in ONSVehicle state code indirect (for
- Fixed localization for mod support
- Now support multiple music directories
- Save Games fixed, with the following limitations:
- ragdolls aren't serialized
- animations aren't serialized (but uses simanim to save channel 0)
- must run UT2004 with -makenames option, or set bSupportSaveGames true in
- added Actor events PreSaveGame() and PostLoadSavedGame()
- Render hud overlays on DM_Low clients also
3D Buzz Editor Enhancements (Thanks to our friends at www.3dbuzz.com ! Check
out their UT2004 mod author video tutorials at
- Maximize Viewports fixed
- Static Mesh Create From Selected added
- Splitter bar between Viewport and props in SM viewer fixed.
- Button to snap view to frame the current mesh added
- Option to auto-snap view on mesh change
- Added realtime preview to the SM browser.
- New Array tool for quickly adding actors.
- Fogging is based on camera position rather than pawn head position (important
for third person camera while pawn is submerged)
- Removed D3D9Drv.dll and default.ini from patch
- Fixed bug reporting address for Italian, Spanish, and French localized
- Fixed "Intersect Function" crash from first patch.
- Fixed mousewheel input on Win64.
- Removed some pre-release debugging that was still enabled
Here is the full change list for Patch 1:
- Teams will now swap sides after each Onslaught round by default. This is
configurable in the game settings menu.
- Fixed flying Leviathan exploit where Leviathan can be based on another
- Fixed Leviathan pushing exploits by limiting the Leviathans max speed.
- Fixed Tank pushing exploits by limiting max speed unless falling.
- Node location names show up correctly in network games.
- Fixed terrains with a negative scale not showing PowerNodes.
- RadarMap can no longer be moved off-screen using the HUD configuration menu.
- Fixed possibility of ion cannon volume in ONS-Severance killing someone
entering it without giving them warnings first
- Fixed bots getting stuck next to a vehicle because they didn't think they
were close enough to enter
- fixed players getting out of vehicles into water
- Fixed Invasion ammo not replenishing at end of wave
- Fixed Invasion's ScoreKill() not notifying GameRules when monster kills a
General Game play:
- fixed which anim is played during sniper zoom (removes log warnings)
- fixed redeemer reticle being affected by HUD opacity setting
- fixed skaarj playing taunt anims
- make sure no wrap around on multikill numbers
- call takefallingdamage() on wall dodge to prevent it being used as an exploit
for avoiding damage on long falls
(can still use wall dodging anywhere you could before, you just take damage if
you are falling too fast).
- fixed miscellaneous game code log spam.
- UTClassic Rocket fix for delay before can fire again after loading up 6
- fixed zoom instagib beam positioning
- improved hidden lightning gun beam positioning
- fixed bioammo positioning
- force correct default character, even if PRI hasn't been replicated yet
- force same character as player is using - players using
bForceDefaultCharacter must use a valid forced character as their own model
- improved team balancing in network games
- added profile fix to unlock chars (where due) for "old" profiles
Map and Kick Voting:
- Fixed incorrect map voting gameconfig at startup
- Reenabled map, kick voting.
- Removed Voting filter combos on server filters page.
- Added "None" selection in the map voting web admin config.
- Edit only 1 line at a time in map voting web admin config.
- Cleaned up/ fixed map voting menus
- DefaultMapListLoader loads prefixes from GameConfig settings by default.
- Added UseMapList property to PlayInfo
- Disabled the MapListLoaderType PlayInfo property
(disables MapListConfigPage - makes it simpler to configure)
- Fixed wrong map types showing for default selected game type in voting
menu. Only happens if GameConfg.GameClass is not set with the same case.
- Implemented exec ShowVoteMenu
- Map voting defaults to ONLY server startup gametype and maps if not
configured. (Auto-detect configuration)
- Added extra check for invalid gametype/maps votes.
- Sort maps in MC ListBox on map voting page by name by default
- Changed to descending sort order in vote count MC ListBox
- Fixed weapon custom crosshair menu problems, whiched caused you to sometimes
lose crosshairs entirely.
- Fixed correctly displaying VOIP key bindings in control config menu.
- allow mouse sensitivity settings as low as 0.25 in menus
- made blue player text brighter in server browser player list box
- fixed menu range for idle kick timer
- Add bFixedMouseSize to lock the size of the cursor
- Fixed GUIPage closing issue (Thank Wormbo)
- Fixed Sorting issue with Map Lists
- Fixed issues with the OwnageMap page and older clients.
- Demo->AVI menu uses proper resolution settings
- Fixed auto demo recording
- fixed DIVx demo movies being recorded at too high a frame rate
- Fixed bug in UT2K4NetworkStatusMsg causing incorrect status message to be
- Don't display join/leave messages for standard voice channels
- Listen servers pinged last?
- Security updates
- Server browser news page now supports clickable hyperlinks.
- If master server doesn't respond, still pings official servers
- Fixed projectiles don't have dynamic light on clients connected to dedicated
- give client correct kick message when kicked for idling
- improved and enabled speedhack detection
- send message to client warning about speed hack detection
- servers won't send more than 8 packets out to client before getting a
response (DOS attack blunting)
- fixed netmode conditions for preloading player skins
- improved character skin precaching speed (less unnecessary skin precaching)
Server Admin Related
- Optimized webadmin initialization, noticable improvement in the time between
map changes (if webadmin enabled)
- Fixed interface-related bug in gametype drop down
- In the Defaults - Map page, fixed bug with adding/removing multiple maps at
the same time
- Webadmin no longer overwrites custom URL parmeters that have been manually
added to maplist entries
- Fixed webadmin bots page layout & accessed nones
- Fixed bugs in SortedStringArray sorting (affects bots / admins / groups pages
- New map & mutator packages no longer require server restart to appear in
webadmin mutator/map lists.
- fixed webadmin and menu idle kick time range
- added MaxTimeMargin, MinTimeMargin, TimeMarginSlack configurable properties
for tweaking speedhack detection to [Engin.LevelInfo] section of UT2004.ini
- admins don't get kicked for idling
- To prevent DDOS attacks by UT2004 servers against subnets, added
LimitConnPerIPRangePerMinute property to [IpDrv.TcpNetDriver].
- pkg_official packages can be downloaded, and guid must be matched for them
- Added bKickLiveIdlers to [Engine.LevelInfo]. If set true, players with pawns
can also be kicked for idling.
Mod Author Related
- Impersonator support integrated (see http://www.oc3ent.com/home.htm for
details). Provides support lip synching to spoken phrases, with UnrealEd
Tools and examples to come soon!
- Reorganized placement of webadmin functions to be more linear, easier to
- Added more comments to webadmin code
- Fixed crash in BatchExport commandlet when attempting to export .uc for
packages which contain purely native classes
- Properties marked as 'noexport' will no longer be ignored when batchexporting
- Added Vehicle.Bulldog to CacheManager default packages (cacheexempt), and
marked Bulldog cache exempt so that it isn't exported to .ucl file
- Fixed bug in classname matching which caused two classes that began with the
same name (such as ClassBase & ClassBaseDerived) to be interpreted as the same
- Automatically export to .ucl file when package is compiled.
- Automatically export to .ucl file when map is saved.
- Custom webadmin skins no longer required to provide every .inc file that
- Webadmin now searches main /ServerAdmin directory for .inc & .htm files that
cannot be found in skin path
- GUIController now correctly cleans up custom styles that use the same keyname
as default styles
- if .upl files exist in mod directory, ignores the .upl files in the system
- INT files no longer have to be in UT2004System.
- UCC no longer gives an error when using -mod= switch with 'dumpint' and
- Can specify a Paths= for music (.ogg) and karma data (.ka) files, so they can
be included in the mod's directory structure.
- Config variables properly save to UT2004ModNameSystemWhatever.ini instead
- No longer get "ERROR: Could not open whatever.u for reading!" in UT2004.log
for mod packages.
- Gracefully handle lack of tooltips in mod menus.
- fixed USoundExporterWAV to not try to export procedural sounds and sound
- Added AddToPackageMap() native function to Actor. This function adds
PackageName to the packagemap (as if it was in GameEngine's ServerPackages
or, if omitted, adds the package of the actor it was called on. This function
is only valid during initialization (between GameInfo::InitGame() and
GameInfo::SetInitialState()) If called outside of that window, or anytime on
a client, the function returns without doing anything.
- Fixed bAddToServerPackages mutator flag
- Mutator config menus:
-Fixed handling of arrays
-Support for advanced and multiplayer only options
- Fixed config class properties not being saved to .ini properly
- fixed BroadcastHandler AcceptBroadcastText() parameter
- Added IconFlashMaterial to Ammunition, to allow mod ammunition classes to
work right on HUD.
- AdrenalinePickup amount no longer hard coded
- Added support for a mod based KarmaData directory
- Fixed bug with disappearing actors after lighting rebuild
- Sped up ALAudio initialization in editor by not precaching sounds
- fixed memory leak in caching system
- fixed crash in GUIToolTip::Draw()
- fixed bug in cache loading for crosshairs (custom crosshairs now appear
correctly in menus)
- removed temporary sanity checks in projector code and pathfinding code (small
- gracefully handle negative delta time
- properly set GCurrentTime in UTV
- fixed resource induced memory leak in PixoResource
- more debugging to track down infrequent FALVoiceModule::Decode crash
- bForceSkelUpdate no longer true by default for pawns (still true by default
for vehicles). Performance improvement (especially for servers),
but mod authors relying on this feature may need to change the value for
- fixed memory leak in swiming physics code
- many spelling/grammar error fixes
- friendly error messages for file loading problems caused by overheating or
- don't crash if non-Emitter has DT_Particle
- removed some VOIP log spam
- fixed installing korean version on Windows 98
- CD/DVD not required to play
- fixed CacheRecords.ucl handling on Linux
- Various client and server crash fixes
- fixed Mac clients reporting incorrect MD5s for packages and tripping security
- Make MacOS version prevent user from ejecting the game DVD while game is