There is no spoon

Legacy:Tribes Vengeance

From Unreal Wiki, The Unreal Engine Documentation Site
Jump to: navigation, search

UnrealScript changes[edit]

Fully qualified names[edit]

You will have to use fully qualified names (package.class) to refer to classes in external packages.

New macros[edit]

#define NAME [1|0]
#if <expression>
  //... if code
#else
  //... else code
#endif

The expression is evaluated to true (1) or false (0).

The macro line can contain a single line comment, that should be ignored.

For example:

#define THIS 1
#define THAT 0
 
#if (THIS && THAT) // only if this and that are true
  DoStuff();
#endif

The following operators are allowed in the experssion: && (and), ! (not), || (or)

These macros can not be used in the defaultproperties section.

Unknown:

  • are these defines global to the system, or only to the current class and subclasses
  • when is it parsed, on the spot or pre-compile

Script latent functions[edit]

New latent functions can be defined in UnrealScript.

Variable descriptions[edit]

var(Display) bool bVolumetricShadowCast "If true, lights with bCastsVolumetricShadows=true will cast volumetric shadows from this actor";
#

The string after the variable declaration contains a description about this variable. These are referred to as Editor Tooltips, as they are used inside of the Editor when click the ? beside a variable in Properties.

El Muerte: Just found out this is part of the stock engine.

Mychaeel: Indeed, this syntax compiles in UT2004... too bad there's no "?" button to click on to display this tooltip. I remember an idea like that having been mentioned on Epic's 2002 Mod Summit.

New variable modifiers[edit]

var() editdisplay(displayActorLabel)
  editcombotype(enumTeamInfo)
  TeamInfo  team  "The team that the base belongs to";

Interfaces[edit]

interface IInterestedActorDestroyed
    native;
class SoundEffectsSubsystem extends IGEffectsSystem.EffectsSubsystem
    implements Engine.IInterestedActorDestroyed
    config(SoundEffects)
    native;

Unknown:

  • Multiple implements allowed?
  • Only native code?

Importing[edit]

import class Engine.Actor;
import class Engine.Pawn;
import class Engine.LevelInfo;
 
import enum AlertnessLevels from Rook;
import enum ACT_ErrorCodes from ActionBase;

Unknown:

  • what does this do? import declarations from these classes (maybe working implementation of the #import macro)

Constructors[edit]

overloaded native function Construct();
overloaded native function Construct( actor Owner, optional name Tag, 
				  optional vector Location, optional rotator Rotation);

Function overloading[edit]

Used by the contructors.

Unknown: is this limited to constructors?

dec 26, 2004- dont think it is, its implicit in regular function calls.

Constructors[edit]

Seems like constructors can only use functions, not variable declarations.

Grabbing an instance of Level[edit]

Has anyone been able to do this from within a hud, or some sub class trickery?

Despite the nerfing of "client-side scripting" seems like a lot could be done if we

could just an instance of the damn object.

Interactions[edit]

I haven't really looked into how these are used so far, but I'm very interested

if any can explain how they are used in T:V.

IGEffectsSystem[edit]

Whats the story here.

New iterators[edit]

native final iterator function AllProperties ( class FromClass, class TerminatingSuperClass, out Name PropName, optional out string PropType );
native final iterator function AllEditableProperties ( class FromClass, class TerminatingSuperClass, out Name PropName, optional out string PropType );

Includes properties for super classes up to but not including "TerminatingSuperClass"

'None' returns all properties including those in class "Object"

Tribes Vengeance Resources[edit]

  • irc.dynamix.com #tvscripters
  • irc.dynamix.com #tvmappers
  • www.house-of-style.com (3 tribes scripting forums)
  • www.tribalwar.com (scripting/modifying forum and tribes talk, beware general discussion)

Related Topics[edit]


El Muerte: Yes, it's a mess, but it's a start

Pachacutec: hardly, nice work! i can't find constructors in other unreal documentation, just this page. that tells me we got the cooler set up! seems like all unreal has is a very rigid "defaultproperties" box where can they set instance variables.


Category:Legacy Game
Category:Legacy To Do – Convert to common page layout. See UT2003 for the layout.