Description

This collection contains an Actor for Unreal Tournament 99. When this Actor is triggered, it can change up to 8 properties of another Actor.
Source code is included.

Usage for Mappers

Add the file "SBPropertyChangerV1.u" to your SYSTEM directory of UT; all other files of this package are optional and can be deleted.
Then add "SBPropertyChangerV1.u" to the Actor Class Browser, navigate to Actor > Triggers > SBPropertyChanger, add it to your map and set its properties in section PropertyChanger and its Tag as desired. Both array may contain gaps.
The SBPropertyChanger has to be activated by an Event; for example generated by a Trigger. If a target Actor could be not be found or a property could not be set, a warning is written to the log file.
See the Maps directory for an example.

Don't forget to add "SBPropertyChangerV1.u" to your package if you release your map to public.

Usage Details

All relevant settings are at "PropertyChanger":
NameData TypeDescription
bTriggerOnceOnlyBooleanAs the name says: if TRUE, SBPropertyChanger only reacts on the first time triggered.
Properties[…]NameThe names of the properties. Gaps are allowed.
Not all properties of an Actor can be changed, for example const values (e.g. "Base") or members of an array are impossible to change.
PropertyValues[…]StringThe values of the properties. Although this data type is String, the string must represent the correct data type given by the property. If the data type does not match, the game engine tries to convert the string. If the property value could not be assigned literally, SBPropertyChanger writes a warning message to the log file. This may not be really an error, because for example if you assign "40" to a float property, the final value will be "40.000000". That's numerical the same but obviously not the same string value.
WantedActorNameThe Actor which properties should be changed. This value is required. You can either enter the name of that Actor or the Tag of the Actor(s) (see WantedActorSearchBy below).
WantedActorSearchByWASB_Name or WASB_TagWhat does WantedActor mean: the name of the Actor (WASB_Name) or the Tag (WASB_Tag) of the Actor(s). Former can be used if only one Actor should be treated. If you want to look up the name, this Actor must of course already exist at mapping time. The latter is useful if you want treat more than one Actor or if the Actor(s) do not exist at mapping time.

Data Types

Boolean
Literally allowed values are "True" and "False". The case doesn't matter.
Name
Names may contain the letters A to Z, both upper and lowercase, the numbers 0 to 9, the underscore character _, the hyphen character -, and the space character. It may not exceed 63 characters.
string
Strings may contain any character (except the NULL character). The length is limited to 1023.

Special cases

Some properties can only be set with function calls, but not by assigning a value. I added support for setting the following properties:

What you cannot do

Examples

  1. You want to finish a Thing- or CreatureFactory after a certain event: set the property Capacity of the factory to zero.
  2. A Mover should be activated by damage, but not before a certain event? Set Mover's bDamageTriggered to true.
  3. Play with Zone settings: change for example DamagePerSec, VPan, ZoneGravity, ...

About

Contact: SeriousBarbie AT googlemail MAKEADOT com

Changelog

SBPropertyChangerV1, Release 30 Mar 2020

Filelist

NameSizeDateMD5 sum
./Help/SBPropertyChanger.htm70472020-03-30(this file>
./Help/SBPropertyChangerProperties.jpg423552020-02-17cd69a6298812608f13f1ceb05e7ea561
./Maps/TestSBPropertyChangerV1.unr60982020-02-17af2b0cdf877e7d799310b38b7bd5bd9b
./redirect/SBPropertyChangerV1.u.uz31202020-02-1758fc67fa44387e05647926e15f666298
./Sourcecode/Classes/SBPropertyChanger.uc35632020-02-17652a4c058541afadccc706ffef5cff47
./Sourcecode/make.ini2712020-02-14f45a4eda401df9997524966ab8e4a9f0
./System/SBPropertyChangerV1.u68222020-02-1740270d667f08b6cbb63e2c07c9f69cb1

SBPropertyChangerV0, Release 10 Mar 2017

Filelist

NameSizeDateMD5 sum
./redirect/SBPropertyChangerV0.u.uz25162017-03-10777712592729c189197bb4b08afaf00a
./Sourcecode/Classes/SBPropertyChanger.uc26652017-03-103fac0a7ff0dfd26854380c1d1705b354
./Sourcecode/make.ini2712017-03-081438907e06dbcd63b79d29750400712f
./System/SBPropertyChangerV0.u53892017-03-10b8fa331982e5c3fb70fbc9023e4c06ee