Description

This collection contains the Actor SBPropertyChanger for Unreal Tournament. 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 SBPropertyChangerV2.u to the SYSTEM directory of UT; all other files of this package are optional and can be deleted.
Then add SBPropertyChangerV2.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 arrays may contain gaps.

The SBPropertyChanger has to be activated by an Event; for example generated by a Trigger or the death of a ScriptedPawn.
If a WantedActor is not found or a property could not be set, a warning is written to the log file.
See Maps\TestSBPropertyChangerV2.unr for an example.

If you release your map to public don't forget to add the file SBPropertyChangerV2.u to your package and set bDebug to FALSE.

Usage Details

All relevant settings are at "PropertyChanger":
NameData TypeDefaultDescription
bDebugBooleanFALSESet to TRUE to get information in log file what is done.
bTriggerOnceOnlyBooleanFALSEAs the name says: if TRUE, SBPropertyChanger only reacts on the first time triggered.
Properties[…]Name(empty)The names of the properties. Gaps are allowed (and ignored) between array members.
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. See also Special Cases.
PropertyValues[…]String(empty)The 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.
WantedActorName(empty)The 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_Tag
WASB_NameWhat does WantedActor mean: the Name of the one Actor (WASB_Name) or a Tag (WASB_Tag) of one or multiple Actors. Former can be used if only one Actor should be treated. If you want to look up the name with UnrealEd, 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. Also this variant should be slightly faster than looking up by name.

Data Types

Boolean
Literally allowed values are "True" and "False". The case doesn't matter.
Name
A Name 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
A String may contain any except the NULL character. The length is limited to 1023; on network games even less.

Special cases

Some properties can only be set with function calls, not by assigning a value. I added support for setting the following properties respectively functions: If you need other special handlings, let me know.

What you cannot do

Examples

About

Contact: SeriousBarbie AT Barbies MAKEADOT World

Changelog

SBPropertyChangerV2, Release 16 Feb 2025

Main reason for changes was that SBPropertyChanger should be able to be added and controlled by code.

Filelist

NameSizeDateSHA1 hash
./Help/SBPropertyChanger.htm110152025-02-16(this file)
./Help/SBPropertyChangerProperties.jpg423552020-02-179be1afd3d4698d0906b2b6bd803572ae4d26f059
./Maps/TestSBPropertyChangerV2.unr76062024-08-186863363ffb265141ebe8ae77fd65df3e70ce23e5
./redirect/SBPropertyChangerV2.u.uz54622024-09-20f3502dcbe14b26712190db9f73be6f376987cce1
./Sourcecode/Classes/SBPropertyChanger.uc76162024-09-203ea68cc8071528f833ca132de3b58d7d36e77d91
./Sourcecode/copyleft.txt962025-02-1602daefffdd3898e3512c19361e83fbfd41dfce71
./Sourcecode/make.ini2852024-07-26ec667d982fa2c5883ef79134911534b397e90acc
./Sourcecode/readme.txt822016-08-211cbd672638085e4b53142ebdd86454b23e79cb69
./System/SBPropertyChangerV2.u142292024-09-2003bbe75236cc122a83bf64e1e22f63266809ef05

SBPropertyChangerV1, Release 30 Mar 2020

Filelist

NameSizeDateMD5 sum
./Help/SBPropertyChanger.htm70472020-03-30447985ae53b20b5177115fbbce8bf85b
./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