Difference between revisions of "227 release notes"

From Oldunreal-Wiki
Jump to navigation Jump to search
 
(81 intermediate revisions by 3 users not shown)
Line 1: Line 1:
== '''Oldunreal Patch Version 227''' ==
{{Navbox Release Notes|game=Unreal}}
== '''OldUnreal Unreal Patch Version 227''' ==
This patch was created to offer all Unreal players a new, completely overhauled and fixed version for our old "love". Although the main target was bug-fixing, many improvements have been made, and a lot of additions found their way into this new version. The general gameplay and the game itself were not modified and should remain 100% compatible with old mods and maps. It is possible to join older servers with this version (provided these servers do not use an anti-cheat system which doesn't recognize 227 yet). 227 can be used as Server for older Clients, such as 224, 225 and Unreal Gold.


This patch was made to offer all Unreal players a new, completely overworked and fixed version for our old love. Although the main target was bugfixing, many improvements have been made and a lot of additions found their way into this new version. The general gameplay and the game itself was not touched and it should remain 100% compatible to old mods and maps. Also it is still possible to join older servers with this version (as long these servers are not using some kind of anticheat system which doesn't know 227 yet). 227 can be still used as Server for older Clients like 224, 225 and UnrealGold (more details can be found in the FAQ: [[Oldunreal_227_FAQ]]).
New graphic renderers (all based on UTGLR with permission), such as D3D8, D3D9, and two heavily improved versions of OpenGL have been added, as well as new sound devices like OpenAL and SwFMod. Legacy devices, such as D3D, MeTaL and Glide renderers, as well as Galaxy for sound have been kept for compatibility reasons.
New renderers like D3D8, D3D9 and a heavily improved OpenGL (all based on UTGLR with permission) and new sounddevices like OpenAL and FMod have been added but the "old" versions like D3D and Glide for graphics and Galaxy for sound have been kept.
All other additions are optional, don't interfere with the older versions and may or may not be used in future maps and mods. Thats up to the community.
All this should ensure that the game stays like we all know it and love it- just "fixed" and for those who want- enhanced.


----
Many security fixes have been implemented for both clients and servers. A new check has been built-in to detect hacks, bots and other cheats.


If you like those updates you can visit www.oldunreal.com and help me to
There’s also a Linux port available, with input and display support via SDL2Drv, and hardware-accelerated rendering with OpenGL for graphic output. It supports OpenAL and SwFMOD for sound and music. This version is completely native and can run Unreal as client and server. Although advanced options are not available, every setting can be adjusted by editing UnrealLinux.ini, and the game is fully functional. No UnrealEd support exists or is currently planned, as it would require rewriting the editor from scratch. It mostly works through Wine, but is currently unusable due to several bugs. Due to legal reasons, Linux users have to install the basic version and the patch with Wine, but once the installation is complete, the game fully and natively works under Linux.
keep it alive with a donation, its not easy for me nowadays, and with a little
bit help you can help me improve these drivers, to buy new hardware for
testing purposes, and it allows me to spend more time for it and the page
itself.
This package was created with knowledge and permission of Epic MegaGames, Inc.
This package is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
These updates are made by Oldunreal, and are completely free.
The package may be redistributed without the author's prior permission,
and must remain unmodified, but if you offer them for download somewhere please refer to
my page.


This package can be offered for download everywhere as long it is of no charge. This means
Almost all other additions are entirely optional. They don't interfere with older versions and may be toggled on and off in future maps and mods. The choice to use them or not is up to the community. This ensures the game remains the way we all know and love it, just "fixed", and, for those who want, improved and enhanced.
especially those filesharing pages in which you have to register (and maybe pay) to get it. If
you can't offer it for free don't put it on your page.
The license for OpenAL (www.openal.org, made by Creative Labs, Inc,
www.creativelabs.com) and the license for Fmod (FMOD Sound System, copyright ©
Firelight Technologies Pty, Ltd., 1994-2005, www.fmod.org) which are used and shipped
with these patches forbid a commercial use in any way too.


'''Related Topics:'''
The current v227j patch can be applied on any existing Unreal version, including base Unreal, Unreal Gold and Unreal Anthology, as well as previous versions of this patch (v227a-i). The installer may not always find the correct path to your Unreal installation, so make sure to correct it manually. Note: unless specified, it will not add the "Return to Na Pali" mission pack to the base version.


New features implemented in Oldunreal 227 patch - not complete yet, more features in the release notes below.
Due to its massive scope, despite all code updates, fixes to provide support for modern OS, 64-Bit functionality and safety, the 227j patch may contain errors.
We invite everybody to try it out and give us feedback on the changes, code updates and fixes.


[[OpenAL]]
The release notes are very long (therefore, they’re available in a separate entry, we provide solely this version’s TL;DR version), but we’ll give you a short overview: Windows 10/11 support (32-bit and 64-bit), Linux support (32-bit and 64-bit), Linux ARM (Cortex-A72 64Bit like RasPi)) support, a completely new future-proof renderer (XOpenGL) with new features, as well as many new functions and improvements in UnrealEd 2.2.


Feature details and settings in OpenAL Sound
== Version index ==
* [[227 release notes/v227a and v227b|v227a and v227b]]
* [[227 release notes/v227c|v227c]]
* [[227 release notes/v227d|v227d]]
* [[227 release notes/v227e|v227e]]
* [[227 release notes/v227f|v227f]]
* [[227 release notes/v227g|v227g]]
* [[227 release notes/v227h|v227h]]
* [[227 release notes/v227i|v227i]]
* [[227 release notes/v227j|v227j]]


[[FMOD]]
== Special Thanks & Credits==
See [[Unreal v227 Manual|the U1 v227 manual page]] for the credits.


Feature details and settings in FMOD Sound
== Report Bugs ==
Report bugs and add comments in the [https://www.oldunreal.com/phpBB3/viewforum.php?f=47 Oldunreal forums]


[[OpenGL / D3D8 / D3D9]]
== Related Topics ==
* [[Unreal v469 Manual]]


Feature details and settings in the included renderer
[[Category:Release Notes]]
 
== [26.12.07 / 10.02.08] Initial 227a and 227b release information ==
 
A native Linux port is now availible, which runs with OpenGL and SDLSoftDriver for grafix and FMOD for sound.
Built in SuSE, works on LFS as well, but needs glibc2.3.
* New renderers have been added:
OpenGL, D3D8 and D3D9 are completely reworked and heavily improved with the files from UTGLR:
http://cwdohnal.home.mindspring.com/utglr/
These renderers support S3TC Textures and make Unreal compatible with most recent grafix cards.
* New Sounddrivers OpenAL and FMOD:
 
OpenAL:
Provides hardware support for recent soundcards (best for creative cards), EFX (EAX) reverb soundeffects and full
support for multispeaker setups.
 
FMOD:
Provides hardware support for recent soundcards, original Unreal reverb soundeffects and full support full support for multispeaker setups.
 
* For ban and kickban there are the following commands:
uhelp: Prints the explanations below
uplayers: shows for all players the name, ID, IP-Address, IdentNr and Identity
ukickid: kicks a player with a given ID
ubanid: kicks and bans a player with a given ID (full ban by IP and Name, even after a restart of the game/server)
ubanlist: shows a list with all banned players
uunban: unbans a player with the number X (see in banlist for the ban-number)
utempbanid: kicks and bans a player until server is restarted
utempbanlist: current list of temp-banned players
utempunban: unbans a tempbanned player with the number X (see in tempbanlist for the ban-number)
utempunbanall: unbans all tempbanned players
 
* Supports footstepsounds and footprints
but to use these new features, the texture properties need to be changed, there are now 4 slots for different sounds
(FootStepSound) the texture produces when walking on, and one variable (Footprint) which defines if, or if not, the
texture shows a footprint when walking on.
 
* UI-FX added:
Particle Emitters, Weather Simulator, Vegetation Generator and many things more. Details can be found in the forums.
 
* Supports skeletal meshes like in UT
 
* Supports HTTP-redirect for downloading maps (like in UT)
 
* Widescreen adjustment added:
Widescreen users can now adjust the FOV to adjust Unreal better for their screens (Maybe some mods will override this setting).
 
* Added a new setting in NetDrv:
AllowOlderClients True/False
If set to True, 224,225 and UGold Clients can join the server, if False, they will get the Upgrade Message. But either way, there is a problem. Since the upgrade URL is defined in UpgradeMenu.uc, old clients will be redirected to the old dead upgrade page, and there is nothing I can do about that.
 
* Added Coop options for easy configuration of Weapon, Items, Flares and Seeds spawn time:
 
bInstantWeaponRespawn
 
bInstantItemRespawn
 
bHighFlareAndSeedRespawn
 
FlareAndSeedRespawnTime
 
* A new and fully working quadshot has been added
replaces the old unusable and unfinished quadshot
 
* Decals have been added to all Unreal weapons (including the monster weapons):
Decals can be added to custom mods as well, but can be turned off if wanted
All weapon decals{or subclasses of Scorch} will have a configurable variable called: DecalLifeSpan.
This variable effects ONLY clients. Servers need not apply.
 
Default is -1.
-1 = default behavior, the effects will disappear upon not being rendered for some amount of time.
 
0 = infinite. Decals will NEVER disappear. use at your own risk.
 
>0 = time in seconds, 1.1 is 1.1 seconds. 30 is 30 seconds.
 
this is located under "Decal" then "Lifespan" in preferences
 
* Supports new difficulty levels (up to 6) for Coop & Singleplay:
Needs to be set with command-line parameter ?difficulty=X (X=4,5 or 6)
 
* Added a new parameter for commandline: -timestamplog
which will force Unreal to put a Timestamp after the logfile name.
So if you would simply startup unreal with -timestamplog, the logfile will be:
 
UnrealYear_Month_Day_Hour_Minute_Second.log
 
If you start it up with -log=server.log -timestamplog, the logfile will be:
 
ServerYear_Month_Day_Hour_Minute_Second.log
 
* New Blood effects:
Gibs now have blood impact decals. If enabled on client and the server is 227, dynamic blood splatter will occur on all standard(and most mods) pawns/carcasses.
If enabled on server, bleeding will occur, damage is optional.
Blood pools will spawn for killed pawns.
 
* Added 2 new engine consolecommands:
GameInfo.ConsoleCommand "GetPreLoginAddress", can be used during Event Prelogin call for retreiving the
connectioning client's IP
PlayerPawn.ConsoleCommand "UGetIP", smilar to GetPing but returns instead the Client IP.
 
* Zoneinfos
If a new damage type and zoneDamageString is supplied in a damaging zone, players will now recieve that death
message.
 
* Updated UBrowser Server browser:
Bigger default vertical size of that window to show full info of all servers (servername, players, ping, IP, port etc...),
without having to resize it.
Added server version number to appear on server list like in UT.
Added a "Join with password" button option when you right click at a server from the list.
"Join with password" window has an ability to save the password so next time you normally connect to that server
(through UBrowser) it automatly uses that password.
When connecting to an "unknown" server (one where you havent desired any password for) it will join with a randomly
generated password to protect you from password stealing.
 
* Added a "U227GameRules" class:
can enhance serverside mutator;s, such as modifing player spawn point, modifing damage, preventing deaths,
blocking/modifing chat messages etc...
But note that some of these functions may *not* work with some custom game types that modifies the game.
Also using this class will force your mod to be for 227 use only, so try to keep it in use only on server (a nondownloadable
package) so older clients can still join the server aswell.
 
* Added a new JumpPad class, UJumpPad
 
* Added a new setting for Mousehandling to enhance precission with high-resolution mice:
Mouse smoothing can be turned off.
 
* Now 2 menus are availible:
Unreal classic-style and new UMenu (Unreal Gold) style.
 
* Naliplayer can now be played ingame
 
* New implementation allows to use localized chars such as "ö,ä,ü" or other language specific symbols while using
"say"
 
* uses UED2 for Map-Editing
 
== [30.03.08] 227c release ==
 
* Fixed quadshot accessed nones.
* Fixed Player "fell out of the world!" when walking over decorations.
* Fixed SoftwareRendering didnt work in fullscreen mode.
* Fixed coop server item respawn bug.
* Fixed Cant find ByteProperty'VoicePitch'.
* Fixed Vortex2 Bug (Playerstart).
* Fixed Sound pitch changes.
* Fixed ExtremeLab tubeportals (warpzones) are to slow .
* Fixed OldWeapons.u didnt make it into 227b although promised - (sorry for that one).
* Fixed The widescreen support is not being applied online.
* Fixed UMenu HUD no preview .
* Fixed Error handler not working.
* Fixed UMenu - Playersetup - Teamcolor wasn't read out of user settings.
* Fixed error not being able to see PreLogin error on Mid-Screen (just as server is at capacity).
* Fixed player spidering movement issues.
* Fixed player spidering animations to better one.
* Fixed NaliPlayer to use UT'99 NaliPlayer model (one which has weapon triangle).
* Fixed "shift" key not working by default in linux (ini setting).
* Fixed possible coopgame server crash when monster is attacking a player while leaving.
* Fixed bug with skaarj not behaving correctly in vortex2.
* Fixed SDLGLDrv for Linux. Although maybe a bad idea to use it for playing (it lacks many features and is really not very
far advanced), it may be useful for debugging or for some low-end systems. To use it, you need to start it with
"./UnrealLinux.bin -noforcesdldrv".
* Fixed UBrowser select input keys not working in linux.
* Fixed and added SDLSoftDrv for Linux - Now there are OpenGL and Software rendering for Linux version.
* Fixed UWindow Win95 LookAndFeel some rendering errors (with menu backgrounds and buttons).
* Fixed some problems with older clients and mods.
* Fixed "Never switch on pickup" option, so client can chose whatever they automatly switch to best weapon on pickup.
* Fixed TraverseForm crash (on some maps).
* Fixed OpenAL: some sounds not playing correctly.
* Fixed some weird warpzones crashing Unreal when playing online.
 
* Added EngineSubVer variable to LevelInfo to define version number (1=a, 2=b, 3=c).
* Changed ServerQuery to add EngineSubVer for GameVersion number (227 + a/b/c/d etc..).
* Added that older 227 clients (227a, 227b) can't join newer 227 version servers (227c).
* Removed "SpawnPlayActor" and "Incoming travelling actor" logging.
* Console set to ";" key in linux
* UMenu player class selection mesh scale - adjusted to work for naliplayer as well.
* another few server fixes for reported crashes (details of these wouldn't help anyone here :) )
* Enhanced the UWindow EditBox to make it possible to select text with mouse and Copy/Paste text in it.
* Added a Music Player Menu (now default key to open it on F8), which lets you listen to custom musics while playing. Be
aware that many anti-cheat mods may not like the custom musics!
* On UMenu.UnrealConsole, you can enable UWindow debug mode (Tools > Debug mode) to debug your own menus
while making them.
* UMenu: Added Win 95 "LookAndFeel" as selectable GUI interface option now.
 
== [05.04.08] 227d release ==
 
* Fixed Slithprojectile not vanishing on dedicated servers.
* Fixed Spawning many Skaarj Player Bots may crash Unreal.
* Fixed Server wandering port - essential fix for server admin
* Fixed DmRetrospective not showing gibs
* Fixed Inventory HUD bug, charge being drawn from one side to another
* Fixed Quadshot: Pickup sound and switch to other weapon if 0 ammo. Not being able to select/deselect when 0 ammo but still ammo loaded in the barrels, size adjusted.
* Fixed Black screen bug caused by division by 0, an obscure bug, will help a few mods.
* Fixed Client not directly connecting after downloading a map
* Changed console behavior to display messages without calling it once first
* Added Translator message for hints
 
== [19.07.08] 227e release ==
 
* Fixed OpenAL in Linux version
* Fixed loading savegames in Linux version crashed game
* Fixed UBrowser Menu (classic) for Linux
* Fixed Galaxy reverb crashes.
* Fixed bleeding damage ignoring settings
* Fixed slow download speed for server without redirect. Added a new option: AllowFastDownload:
True = Speed like older servers
False = Reduced speed like pre 227e servers for low bandwidth connection Servers
* Built-in ban manager has been changed to save all bans in a new file called "Security.ini"
* Fixed so last jump dosent cause an "ghost" jump in online games.
* Fixed support with multiple jumpboots (custom mods).
* Fixed broken shield effect on online games.
* Fixed UED2 crashed when using MyLevel
* Fixed UED2 crashed when closing it
* Fixed UED2 group browser checkbox was inverted
* Fixed UED2 after you load script with longer name, with first letter of script with name you are trying to load you CANT
load it (for example, you cant loading Male after loading MaleOne)
* Added support for playing special Nali/Male 1/Female 2 skins.
* Added support for importing and playing Ogg Vorbis music files (in editor on Music Browser or in game as map music).
(For OpenAL and FMod use only!)
FMod:
Added in ALAudio alike "AStat Audio" and "AStat Detail" commands.
Fixed the reveb issue with maps like QueenEnd.
Added in a new option to enable Sound Attenuate (sounds that are played behind walls are heard in lower volume).
* Added IP/Name/ID playerlogger for Servers and messaging it for server admins/server log which will stored in
Security.ini too if GameInfo bMessageAdminsAliases/bLogNewPlayerAliases are true. Like the banning system, this
feature is only available for 227 clients.
* Added Web-Administration support
A WebServer administration page.
Features:
-Restart map - Restart currently playing map.
-Switch map - Switch map to selected map/game/mutators (note that maplists configure must be enabled to access maplist).
-Current game - You see list of players (ID/Name/Ping/Score/IP) and controls to Kick/Ban them.
-Server console - See a list of chat messages in server aswell a command line where you can chat with the players to
execute a command on server.
-Banlist - See a full list of all banned clients, also lets you unban them.
-Defaults - Server configure page:
* Main Game config - Lets you configure basic game rules (such as max players/server packages/server actors/redirecting
etc).
* ServerInfo config - Lets you configure public server rules (such as server name/admin name/MOTD).
* Maplists - lets you configure maplists (for DeathMatch based games, NOT for Coop).
* Mod Configures - Custom mods configures page (by default it contains configures for DeathMatch, TeamGame,
Cooperative).
-Changed to little better interface and added a config option for the new 227e "AllowFastDownload" flag.
Read the included UWebReadme.txt for more info.
* Added in an "OverridePrelogin" function for GameRules to modify prelogin allowance or something (its called directly
after GameInfo Prelogin).
* Added in a new class 'PlayerClassManager' which allows custom mods to temporarly adding in to player settings some
new player classes/skins for that game only.
* Actor:
Added a new variable "bNetNotify" and a new event "PostNetReceive", can be used by mod authors for notifing whenever
a replicated variable has been changed on client (whenever bNetNotify is True).
* UBrowser:
Added in a config option to set initial startup page (Advanced Options > Networking > UBrowser > InitialPage).
* Added some new native functions to enhance UScripting:<br>
'''Object:'''<br>
native final function Object FindObject( Class ObjClass, string ObjectName );<br>
''-Find an object based on object name/class.''<br>
native final function Class GetParentClass( Class ObjClass );<br>
''-Get Parent class of a desired class.''<br>
native final iterator function AllObjects( class BaseClass, out Object Obj );<br>
''-Iterate through all objects in game.''<br>
native final iterator function AllFiles( string FileExtension, string FilePrefix, out string FileName );<br>
''-Iterate through all Unreal Package files (u, umx, utx, uax...).''<br>
'''Actor:'''<br>
native final function Actor SpawnAct( Class ActClass, vector Loc, optional rotator Rota, optional name ActName, optional Actor Own, optional Pawn Instigat, optional Actor Template, optional bool bMayColFail );<br>
''-Spawn an actor class with some additional parameters.''<br>
native(1722) final function bool CanReachPoint( vector Start, vector End, float ColRadius, float ColHeight, float JumpZ, float XYSpeed );<br>
''-A point reachability function for AI use.''<br>
static native final function NativeExec( string Cmd );<br>
''-Pretty much same as 'ConsoleCommand' except it's static function.''<br>
'''LevelInfo:'''<br>
static native final function byte GetConState( NetConnection Other );<br>
''-Get connection state out of a net connection.''<br>
static native final function string GetConIP( NetConnection Other, out int Port );<br>
''-Get net connection IP aswell as Port.''<br>
static native final function string GetConOpts( NetConnection Other );<br>
''-Get net connection options (?Name=(Leader)-Dante?Class=UnrealShare.Male3?etc...).''<br>
native final function bool HasDownloaders();<br>
''-Fast check if current game has some downloaders.''<br>
native final iterator function AllConnections( out NetConnection Connect );<br>
''-Iterate through all connections currently on server.<br>
native final iterator function AllDownloaders( out NetConnection Connect, out string File, out int Sent, out int
TotalSz );''<br>
''-Iterate through all downloaders on server.''<br>
native final function PointRegion GetLocZone( vector Pos );<br>
''-Get the zone out of a desired location.''<br>
native final function Object AllocateObj( Class ObjClass );<br>
native final function FreeObject( Object Obj );<br>
''-For storing temporarly objects/actors that can be reused later.''<br>
'''NavigationPoint:'''<br>
native final function int GenReachSpec( Actor Start, Actor End, int Dist, int ColR, int ColH, int RchFlgs, bool
bPruned );<br>
''-Generate reachspec for current map.''<br>
native final function bool EditReach( int Idx, optional Actor Start, optional Actor End, optional int Dist, optional int<br>
ColR, optional int ColH, optional int RchFlgs, optional bool bPruned );<br>
''-Edit an excisting reachspec in current map.''<br>
native final function bool RemoveReachSpec( int Idx );<br>
''-Remove a reachspec from the current map.''<br>
'''Canvas:'''<br>
native final function Draw2DLine( Color Col, vector Start, vector End );<br>
''-Draw a 2D line on the screen.''<br>
native final function Draw3DLine( Color Col, vector Start, vector End );<br>
''-Draw a 3D line in world.''<br>
native final function vector WorldToScreen( vector WorldPos );<br>
''-Convert world coordinates to screen coordinates.''<br>
native final function vector ScreenToWorld( vector ScreenPos );<br>
''-Convert screen coordinates to world coordinates.''<br>
native final function DrawPathNetwork( bool bOnlyWalkable );<br>
''-Render current map's path network (with 3D lines).''<br>
native final function coords GetCameraCoords();<br>
''-Get the current camera location and rotation.''<br>
* Added a new command for server admins : admin UGetConnections it shows current connection ips, player names, and
downloading status
* Added a new emitter particle system (Emitter.u/Emitter.dll) which is handeled 99 % in C++ scripts (giving a huge speed
boost), with realtime preview support in Editor.<br>
For full features list, check [[Particle Emitter]] page.<br>
 
== [not officially released yet] 227f release ==
* Fixed dynamic array accessing bug: Code: local array<string> SomeArr; SomeArr[0] = "Value 0"; <br>
* Fixed bugs in banning system and allowing IP-range banning.<br>
* Fixed additional crashes from AI navigation on maps with broken path network.<br>
* Fixed TeamChat messages to show sender player name aswell as show the message in yellow rather than white.
* Fixed Volumetric lighting to not mess up when being "overused" (as example with Aura weapons).
* Fixed a script warning that Fly and SinglePlayer(game) would sometimes cause.
* Changed GameRules to have different flags for different functions to be called on it (in order to save server resources).
* Upgraded banning/temp banning/client logger to be based on a dynamic array to support unlimited amount rather than some static amount (such as max 1024 log entires).
* Fixed banning so its possible to ban older clients by IP address aswell as it supports IP range banning (i.e: 1.2.0.0-1.3.255.255).
* Changed music menu musics list and favorites server list to be based on dynamic arrays as well for same reasons as above.
* Changed music menu file browser, when you double click music file it will automatly load the package and search for musics in them.<br>
* Fixed a bug with player skin selection menus, when you have skeletal mesh skins and switch between 2 that have different animation sets, their animation sets could go wrong.<br>
* Fixed OpenGL selection problems and S3TC support in UED2. Please note that WetTextures, IceTextures and ScriptedTextures are not supporting S3TC! <br>
* Fixed for UED2 red selection brush and movers can't be seen through walls in OpenGL<br>
* Fixed if ghosting out of a mover (such as nali boat) you were still "bound" to it<br>
* Fixed Linux bug: new resolution setting was not saved in ini when using ubrowser console or setres command<br>
* Fixed some MasterServer issue with "Unknown Error Processing Port" <br>
* Fixed old console causing "out of memory error". <br>
* Fixed squid not attacking correctly <br>
* Fixed D3D in UED2 does not show Zoning or BSPCuts <br>
* Fixed ANIM NOTIFY for skeletal meshes <br>
* Fixed Linux client crashing when disconnecting from server<br>
* Fixed D3D8, D3D9 and OpenGL are not updating mover lighting (f.e. in Naliboat) <br>
* Fixed OccludeBSP in-game crashes in very large maps<br>
* Fixed feature: LightEffect LE_Spotlight and LE_StaticSpot lits up meshes correctly now<br>
* Fixed WarpZones from generating odd errors in offline/online games when walking through them<br>
* Fixed Linux lightmap bug<br>
* Fixed Linux version crashing if wet/ice/scripted textures were made with S3TC textures.
 
* Added new options for renderers:<br>
FullMeshRendering (True/False) - This solves the problem with disappearing meshes (like Trees if you are very close) - could be a heavy performance drain on low end machines, so it's optional.<br>
 
* Dynamic Array support has been improved:<br>
Added dynamic array length accessing functions:<br>
native(640) static final function int GetArraySize( ArrayProperty ArProp ); <br>
native(641) static final function bool InsertArrayIdx( ArrayProperty ArProp, int Offset, optional int Count ); <br>
native(642) static final function bool RemoveArrayIdx( ArrayProperty ArProp, int Offset, optional int Count ); <br>
 
* Added so server downloaders info is automatically broadcasted to all admins (+ all other players if enabled). <br>
* Added for GameRules modifier to desire whatever if client is allowed to download some file off server or not. <br>
- Which can be used like this:<br>
function TestFunction()<br>
{<br>
local array<int> TestArr;<br>
Log(GetArraySize(ArrayProperty'MyMod.MyClass.TestFunction.TestArr'));<br>
}<br>
 
* Added 3 new commandlets:<br>
Editor.StripSource - strip the text buffers from script packages.<br>
Editor.DumpInt - generate a *.int file out of some desired package. <br>
* Added "OpenGL" into UED2 selection menu for rendering devices<br>
* Added a new menu "Admin menu" which lets server admins get an easier control over kicking/banning/listing.<br>
* Added "Grab", "AdminMenu" and "Toggle Behindview" keys in "configure keys" menus.<br>
* Added that Servers now reports server OS on serverinfo (Windows/Linux).<br>
* Added support for ALAudio/FMod to set Ogg music looping points.<br>
* Added UWindow menu kick message support (using clientmessage and message type 'Networking').<br>
* Added math functions for Coords (for advanced rotation support)<br>
* Added UScript preprocessor:<br>
In order to use preprocessor you have to call ucc with following parameters:<br>
ucc uengineppc.parse project=[<project_dir>/<project_file>]  [-option...] [-globals...]<br>
Details: [[UE1PreProcessorCommandlet]]<br>
<br>
* Added distance fog support for mappers to use (you can simply define in ZoneInfo distance fog start/end distance and color).
* Added a new page to the setup wizard which allows to chose the sounddevice at first start (OpenAL/FMod/Galaxy)<br>
* Added "Change audio device" button to Unreal recovery mode (for windows), just in case some audio device causes trouble.
* Added bSoundAttenuate [True/False]:Attenuate Soundsources which are behind walls etc. for OpenAL <br>
* Dynamic Corona: a corona which can be spawned/moved/deleted in game aswell as has some additional properties (ideas from UT2004; such as directional corona, close/ranged distance colors, max size).<br>
* Sunlight Corona: another corona but it renders as sunlight corona, the direction of actor defines sun position in sky (only renders when you have direct contact with the sky. As in addition you can add lensflares with it.<br>
* ZoneInfo->ZoneTimeDilation: lets you slow down/speed up the actors locally within 1 zone only.<br>
* A new query method has been implemented to speed up serverbrowsing when multiple masterservers are used.
* Added new admin command: uknownnames: prints out known and used names from players currently on server <br>
since some string length limitation its not able to use it for ingame admin purposes (except directly on the server console), but for mods.
* Added a "Dynamic" ZoneInfo actor, which is basicly a zoneinfo actor which can be spawned/destroy/moved in game. It works using simple zone shapes. This will allow mod authors to make some summonable lava/water blocks or mappers to make some rising water effect easy. <br>
<br>
* Added "Master of the Woods" also known as Woodruff. Small addition to have some alternative for the bandage. Its a small and fast growing plant with +5 healing.
'''New UnrealScript native functions'''<br>
- Native(643) Final Function AppSeconds(Out Float OutTime);<br>
Returns how long the application has been running in seconds, ie 1.1 = 1.1 seconds. This can be useful for server uptime, I could see that being used in a gametype.
Usage is as follows: [[AppSeconds]]<br>
- native(197) static final function    float Acos  ( float A );<br>
The missing Acos function, also known as "ArcCos".<br>
- native(126) static final function int  InStr  ( coerce string S, coerce string t , optional int Start );<br>
If Start is not defined, less or equal 0 or greater then number of characters in S, then standard InStr is performed (if the string T is found inside S, the number of characters in S before the first occurance of T is returned). If Start is greater then 0 and less then number of characters in S then function will try to find T in S after first Start characters. If function fails to find T in S, then -1 is returned. It will not break backward compatibility.<br>
- native(1718) final function bool AddToPackagesMap( optional string PackageName, optional bool bSkipSecurityCheck );<br>
Adds some package to sandbox (server packages) temporarly for current map only (very much alike UT2004' one).<br>
- native(1719) final function bool IsInPackageMap( optional string PackageName );<br>
Check if some package is current available in sandbox (server packages).<br>
- native(1720) final function vector GetVertexPos( int iVert, bool bAnimatedFrame );<br>
Return world position of a single vertex on meshed actor.<br>
- native(1721) final function int GetVertexCount();<br>
Return the amount of vertexes in single mesh actor.<br>
- native(1722) final iterator function AllFrameVerts( out vector iVertex, bool bAnimatedFrame );<br>
Iterate through whole frame of vertexes in a mesh actor.<br>
- native(1723) final function int GetClosestVertex( vector CheckPos, bool bAnimatedFrame, out vector ResultVert );<br>
Get the closest vertex to some point in world position.<br>
- native(1724) final function int GetBestTraceLineVertex( float MinDot, vector CheckPos, vector CheckDir, bool bAnimatedFrame, out vector ResultVert );<br>
Check for best vertex result in line check.<br>
- native(1725) final function bool MeshTrace( vector Start, vector End, out vector HitNormal, out vector HitLocation ); <br>
Perform a 3D mesh line check, returns False if did not hit.<br>
- native(636) static final iterator function AllLinkers( out name PackageName, out string FileName, out string GUID, out int NmCount, out int ImpCount, out int ExpCount, out int FileSize );<br>
Iterate through all linkers and get some general information about the packages (very much alike 'Obj Linkers' but in a faster method).<br>
- native(637) static final function Object GetDefaultObject( Class<Object> ObjClass );<br>
Get the default object of some object/actor.<br>
- native(635) static final function int Ceil( float f );<br>
Returns f rounded off to the next higher whole number.<br>
- native static final function bool Divide( coerce string Src, string Divider, out string LeftPart, out string RightPart ); <br>
Divides a string and returns the two parts.<br>
- native static final function bool ExtractString(string Src, string LeftDivider, string RightDivider, out string MidString, optional bool bAdvanced); <br>
Returns a string from between Left and Right Divider:<br>
if bAdvanced is false:<br>
Src = string1(string2)string3<br>
LeftDivide = (<br>
RightDivider = )<br>
result MidString = string2<br>
<br>
if bAdvanced is true it takes occurance of LeftDivider into account:<br>
Src = string1(string2(string3)string4)string5<br>
LeftDivide = (<br>
RightDivider = )<br>
result MidString = string2(string3)string4<br>
- native(257) static final function bool LoadPackageContents( string PackageName, Class<Object> ListType, out array<Object> PckContents );<br>
Load an enitre package and give out the contents of it (returns false if package failed to load).<br>
 
== Special Thanks ==
 
Here is a small list with people that helped me in this project (no special order, without any single person of them It would
have been much harder if not impossible).
Please forgive me and gimme a notice if I missed someone, but over all the time my tortured brain is maybe failing...
 
* Epic for giving me this chance!
* UTPG for their work in UT which helped me very much
* Shambler - native coding, anticheat, many things more and being patient with my stupid questions :)
* .:..: Script fixes, lots of native Coding additions (such as native Particle-Emitter), bug hunting, bug fixing many other additions
* Wolf - Anticheat and help in Uscript, help in adding features, advices and being there for me and this project anytime
* Chris Dohnal aka UTGLR  for his great OpenGL, D3D8 and D3D9, and advices in native coding.
* Kerilk for FMOD and helping me with OpenAL and being patient with my stupid questions also :)
* Asgard12000 for tons of script fixes
* Zombie for script-fixes, security issues
* []KAOS[]Casey Script fixes, blood Effects, testing, bug hunting
* Bozo, for tons of fixed meshes- maybe not that obvious as other things, but must have been a hell a lot of work, and can be seen if you watch all the lovely details.
* Raven for nice addons and new features like script based ParticleEmitter and UE1PreProcessorCommandlet
* Krull for his 227 map DMRetrospective
* SA-Digimes for hosting my Oldunreal-Serpentine server, which I needed badly for testing
* DieHard for his great High-Resolution Textures, which make 227 more beautiful than ever
* HyperNL for his Enhanced ServerBrowser and for his intense server testing
* Turboman for his skeletal mesh testing and UMenu background
* My ex-girl for helping me with decals and especially for being patient
* Shivaxi for bughunting, some footstepsounds
* Pitbull for a nice chat in the night
* All friends who offered me mirroring
* The community here which helps me to find and fix the bugs
* And of course all I may forgot now and all who donated to Oldunreal, helping me to pay and maintain Oldunreal
 
== Report Bugs: ==
Report bugs and add comments in the [http://www.oldunreal.com/cgi-bin/yabb/YaBB.pl Oldunreal forums]

Latest revision as of 15:42, 3 July 2022

Unreal v227 Release Notes
v227a and v227bv227cv227dv227ev227fv227gv227hv227iv227jUED 2.1

OldUnreal Unreal Patch Version 227

This patch was created to offer all Unreal players a new, completely overhauled and fixed version for our old "love". Although the main target was bug-fixing, many improvements have been made, and a lot of additions found their way into this new version. The general gameplay and the game itself were not modified and should remain 100% compatible with old mods and maps. It is possible to join older servers with this version (provided these servers do not use an anti-cheat system which doesn't recognize 227 yet). 227 can be used as Server for older Clients, such as 224, 225 and Unreal Gold.

New graphic renderers (all based on UTGLR with permission), such as D3D8, D3D9, and two heavily improved versions of OpenGL have been added, as well as new sound devices like OpenAL and SwFMod. Legacy devices, such as D3D, MeTaL and Glide renderers, as well as Galaxy for sound have been kept for compatibility reasons.

Many security fixes have been implemented for both clients and servers. A new check has been built-in to detect hacks, bots and other cheats.

There’s also a Linux port available, with input and display support via SDL2Drv, and hardware-accelerated rendering with OpenGL for graphic output. It supports OpenAL and SwFMOD for sound and music. This version is completely native and can run Unreal as client and server. Although advanced options are not available, every setting can be adjusted by editing UnrealLinux.ini, and the game is fully functional. No UnrealEd support exists or is currently planned, as it would require rewriting the editor from scratch. It mostly works through Wine, but is currently unusable due to several bugs. Due to legal reasons, Linux users have to install the basic version and the patch with Wine, but once the installation is complete, the game fully and natively works under Linux.

Almost all other additions are entirely optional. They don't interfere with older versions and may be toggled on and off in future maps and mods. The choice to use them or not is up to the community. This ensures the game remains the way we all know and love it, just "fixed", and, for those who want, improved and enhanced.

The current v227j patch can be applied on any existing Unreal version, including base Unreal, Unreal Gold and Unreal Anthology, as well as previous versions of this patch (v227a-i). The installer may not always find the correct path to your Unreal installation, so make sure to correct it manually. Note: unless specified, it will not add the "Return to Na Pali" mission pack to the base version.

Due to its massive scope, despite all code updates, fixes to provide support for modern OS, 64-Bit functionality and safety, the 227j patch may contain errors. We invite everybody to try it out and give us feedback on the changes, code updates and fixes.

The release notes are very long (therefore, they’re available in a separate entry, we provide solely this version’s TL;DR version), but we’ll give you a short overview: Windows 10/11 support (32-bit and 64-bit), Linux support (32-bit and 64-bit), Linux ARM (Cortex-A72 64Bit like RasPi)) support, a completely new future-proof renderer (XOpenGL) with new features, as well as many new functions and improvements in UnrealEd 2.2.

Version index

Special Thanks & Credits

See the U1 v227 manual page for the credits.

Report Bugs

Report bugs and add comments in the Oldunreal forums

Related Topics