UnrealScript
| This video game–related article may require cleanup to meet Wikipedia's quality standards or the Video Games project's guidelines. It should not contain unverifiable information, nor should it have gameplay instructions or excessive details. (May 2008) |
| Paradigm(s) | Object-oriented, generic |
|---|---|
| Appeared in | 1998 |
| Developer | Tim Sweeney |
| Typing discipline | Static, strong, safe |
| Influenced by | C++, Java |
| OS | Cross-platform (multi-platform) |
| Usual filename extensions | .uc .uci .upkg |
| Website | udn.epicgames.com |
UnrealScript (often abbreviated to UScript) is the scripting language of the Unreal Engine and is used for authoring game code and gameplay events.
Similar in basic design principles to Java, UnrealScript has object-oriented features but does not support multiple inheritance: classes all inherit from a common Object class and are defined in individual files named after each class. Unlike Java, UnrealScript is case-insensitive, and does not have object wrappers for primitive types. Interfaces are only supported in Unreal Engine generation 3 and a few Unreal Engine 2 games. UnrealScript supports operator overloading, but not method overloading, except for optional parameters.
The language was also designed for simple, high-level game programming.[1] The UnrealScript interpreter was programmed by Tim Sweeney, who had also created an earlier game scripting language called ZZT-oop.
By making the process of modifying the game easier, UnrealScript helped enable the growth of a large community of people on the Internet dedicated to modifying Unreal. This ability greatly added to the overall longevity of Unreal and provided an incentive for new development.
Contents |
[edit] Syntax
[edit] Code comments
UnrealScript uses two commenting styles, a single-line comment (beginning with // until the end of the line) and a multi-line comment (delimited by /* and */).
// Single-line comment class Foo extends Object; /* Multi-line comment */ var Object Foo;
[edit] Functions
UnrealScript uses functions similar to C/C++. Functions are declared by the keyword: function, the return type: int, the name: example_function, and finally the function parameters enclosed in parenthesis: (int example_number).
The body is enclosed in brackets { example_number = 5; }.
Before the final bracket, a return function can be called, returning the a value to the original caller.
function int example_function (int example_number) { example_number = 5; return example_number; }
This function takes the integer example_number, changes its value to 5, then returns its value to the caller.
[edit] "Hello, world" example
The following is a hello world example using the syntax of UnrealScript.[2]
class HelloWorld extends GameInfo; event InitGame( string Options, out string Error ) { `log( "Hello, world!" ); }
The following text will be printed to the output console when HelloWorld is initializing:
Hello, world!
[edit] See also
- WOTgreal - Integrated development environment for UnrealScript
- nFringe - A Microsoft Visual Studio plug-in for UnrealScript[3]
- UnCodeX - An application to browse source code of UnrealScript[4]
- Unreal Writer - A basic UnrealScript editor for Mac OS X[5]
[edit] References
- ^ http://udn.epicgames.com/Three/UnrealScriptReference.html#Design%20goals%20of%20_UnrealScript
- ^ http://udn.epicgames.com/Three/MakingACommandlet.html#How%20To%20Make%20a%20Commandlet%20in%20Script
- ^ http://wiki.pixelminegames.com/index.php?title=Tools:nFringe
- ^ http://udn.epicgames.com/Three/UnCodeX.html
- ^ http://www.apple.com/downloads/macosx/games/utilities/unrealwriter.html
[edit] External links
- UnrealScript Language Reference for UE2
- UnrealScript Language Reference for UE3
- UnrealScript Language Reference circa 1998 (Original Unreal)
- UnrealWiki: UnrealScript
|
|||||||||||||||||
| This programming language-related article is a stub. You can help Wikipedia by expanding it. |