UnrealScript Source
Unreal Tournament 2003
Original UnrealScript sources and .u files compiled for debugging support (obtained directly from Epic Games).
The most convenient way to browse and search the source files is by using a dedicated class browser such as UnCodeX.
These sources are for reference only. Never attempt to compile default packages – that's not the way modding works with the Unreal engine. Instead, derive your own custom classes from the game's default classes and use an INT file to hook them into the game.
- Build 2225
- [UT2003 Patch 2225 Sources] (1.4 MB, download from Epic Games)
- [UT2003 Patch 2225 Debug Packages] (14.8 MB, download from Epic Games)
- Build 2199
- [UT2003 Patch 2199 Sources] (1.37 MB, download from Epic Games)
- Build 2186
- [UT2003 Patch 2186 Sources] (2.41 MB, download from Epic Games)
- [UT2003 Patch 2186 Debug Packages] (7.96 MB, download from Epic Games)
- Build 2166
- [UT2003 Patch 2166 Sources and Debug Packages] (9.6 MB, download from Epic Games)
- [UT2003 Patch 2166 Sources and Debug Packages] (9.6 MB, download from BeyondUnreal)
- Build 2136
- [UT2003 Patch 2136 Sources] (1.7 MB, download from BeyondUnreal)
- [UT2003 Patch 2136 Sources and Debug Packages] (9.6 MB, download from BeyondUnreal) – contains UDebugger update
Note: The debug .u files can only be used for exactly that: debugging your code. They will not allow you to connect to internet servers. Backup your original .u files before installing the debug packages to test your code and restore your original files if you want to play online games.
Other Unreal Engine Games
The source files can be exported with UnrealEd's Actor Classes Browser (File → Export All Scripts) but they might be incomplete in the newer builds due to missing subobjects in the default properties. This is one reason for Epic to make the UT2003 sources available for download.
Note that exported sources do not contain subobjects, but this isn't a problem for older engine builds like v436, because at that time subobject definitions in default properties were not supported.
Some compiler directives (those specifically pertaining to native code) are also often lost when decompiling the built-in packages instead of downloading the sources.
Also, some Unreal Engine based games have the source code removed from the shipped packages. America's Army and XIII are two such examples. When this is the case the Unreal Script code cannot be exported.
Related Topics
- Setting Up UnrealScript – simple tutorial showing how to get started. One of a series of UnrealScript Lessons.
- Class Wikifier
- Class Tree – the full hierarchy of classes
- UnrealScript
Discussion
Also, some Unreal Engine based games have the source code removed from the shipped packages. America's Army and XIII are two such examples. When this is the case the Unreal Script code cannot be exported.
pgibbs: surely you can use UTPT to grab the source from the packages?
Foxpaw: Not only would that be extremely illegal (acually, I'm making the assumption that that is expressly forbidden in the EULA) but also I think that they tweaked the package format slightly to prevent that. If you try to load a map from America's Army into UEd, for instance, it doesn't seem to work.
pgibbs: by "source" I meant Unrealscript, not a level. I wouldn't expect taking a level from one game into another to work (unless you've got and satisifed all actor, texture, sound refereneces, etc).
Foxpaw: Ahem, well, that was just an example. Texture packages, etc. can't be loaded either - they crash with an assertion error in some file interface header - which to me strongly implies they've made a simple modification to the package format to foil any attempt to access things in the packages.