Description

This collection contains the Actor SBTriggerableSpawnPoint for Unreal Tournament. When this Actor is triggered, it spawns its given Prototype at its location and with its rotation, like a one-shot-ThingFactory and one SpawnPoint combined. Example for SBTriggerableSpawnPointV2 in an Actor Property Window

Usage for Mappers

Add the file SBTriggerableSpawnPointV2.u to the SYSTEM directory of UT; all other files of this package are optional and can be deleted.
Then add SBTriggerableSpawnPointV2.u to UnrealEd's Actor Class Browser, navigate to Actor > NavigationPoint > SBTriggerableSpawnPoint, add it to your map, set its Prototype and optional one or more properties and their values in the array Properties. The array may contain gaps.

The SBTriggerableSpawnPoint has to be activated by an Event; for example generated by a Trigger or the death of a ScriptedPawn.
If the prototype cannot be spawned or a property could not be set, a warning is written to the log file if LogLevel is set at least to LOG_Error.
If something does not work as you expected, set LogLevel to a higher level and inspect the file UnrealTournament.log in the System directory of UT.

See Maps\TestSBTriggerableSpawnPointV2.unr for examples.

If you release your map to public don't forget to add the file SBTriggerableSpawnPointV2.u to your package and set LogLevel of all SBTriggerableSpawnPoint to a low value.

Source code is included.

Detailed Description

If a spawn was successful, its Event is fired.
You can set up to 16 properties to the spawned Actor.
All relevant settings are in section "SBTriggerableSpawnPoint" of Actor Properties window (see picture):
NameData TypeDefaultDescription
bTriggerOnceOnly BooleanFALSE As the name says: if TRUE, SBTriggerableSpawnPoint only reacts on the first time triggered.
LogLevel ELogType LOG_InfoChoose higher log levels from the list to gain more information in log.
Properties[…] > Name String (empty) The name of a property.
Not all properties of an Actor can be changed, for example const values (e.g. "Base"), or members of a struct or arrays in general. But a few array properties can be changed, see Special Property Cases for details.
Properties[…] > Value String (empty) The value of the property. 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, SBTriggerableSpawnPoint writes a warning message to the log file. This may not be really an error, because for example if you assign an ugly string "40 blah" to a float property, the converted Actor value will be "40.000000" and because the values do not match, a (false) warning will be shown in log.
See Data Types for a detailed description of data value types.
Prototype Actor (empty) What should be spawned? The case does not matter.

Data Types

For all fixed literal strings upper and lower case does not matter.
ELogType
Use one of the following:
LOG_NoneNothing will be logged.
LOG_ErrorAn error is a condition where the code cannot proceed further sensefully.
LOG_WarningIf something is unexpeced, a Warning is issued, but the code will proceed.
LOG_InfoVersion info or a summory of actions will be logged.
LOG_VerboseTell me more than LOG_Info.
LOG_DebugLog what is done.
LOG_AllEven log what is NOT done.
Boolean
Literally allowed values are "True" and "False".
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 - (not recommended) and the space character (not recommended). A Name may not exceed 63 characters. The case doesn't matter.
Float
A number that may contain a decimal separator. Also scientific notation is possible (e.g. 1.2e3).
See https://wiki.beyondunreal.com/Types#Float for details.
String
A String may contain any except the NULL character. The length is limited to 1023; on network games even less.
White Characters
White Characters create empty space to format text layout. Examples are Space, Tab, Newline.
Array
An Array is string followed by an integer index, embraced in square brackets. White characters around the integer value are NOT allowed.
Example: MultiSkins[2]
Tupel
A Tupel is a set of strings, embraced in round brackets, and contains at least one member. Multiple members are separated by comma. White characters around members are allowed. SBTriggerableSpawnPoint supports up to 8 members per Tupel.
Examples for Tupel
ValueTupel results in
(test)'test'
(1,2, 3)'1', '2', '3'
(1,,2,3)Error: empty value in second position
(1, ,2,3)'1', ' ', '2', '3' (notice the white space between member '1' and '2')
()Error: Tupel without member
EPhysics
Physics may contain one of the enumeration EPhysics values:
PHYS_None
PHYS_Walking
PHYS_Falling
PHYS_Swimming
PHYS_Flying
PHYS_Rotating
PHYS_Projectile
PHYS_Rolling
PHYS_Interpolating
PHYS_MovingBrush
PHYS_Spider
PHYS_Trailer

Special Property 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 or events:
Property nameProperty Value TypeRemark
bBlockActorsBoolean
bBlockPlayersBoolean
bCollideActorsBoolean
CollisionHeightFloat
CollisionRadiusFloat
Enable/DisableNamethe name of the function
GotoStateNamethe name of the state
InitialStateString
Log/WarnString
MultiSkins[integer value]Stringname of the Texture
PhysicsStringEPhysics
RotationRate3-Tupel
Velocity3-Tupel
If you need other special handlings, let me know.

What you cannot do

A warning is written to the log, if a property cannot be set.

About

Author contact: SeriousBarbie AT Barbies MAKEADOT World

Copyright

No copyright claimed, do whatever you want.

Changelog

SBTriggerableSpawnPointV2, Release 08 Feb 2026

Filelist

NameSizeTime StampSHA1 hash
./Help/SBTriggerableSpawnPoint.htm148482026-02-08 21:59(this file)
./Help/SBTriggerableSpawnPointV2.jpg891712026-02-01 20:00:04d1b77a9d3b8a70f99e348ed8264a71544da46343
./Maps/TestSBTriggerableSpawnPointV2.unr2501032026-02-01 18:04:423496d00e876d3b631e7a07359a44b66fcccb6fbf
./Sourcecode/Classes/SBTriggerableSpawnPointInfo.uc1722026-02-08 21:58:175cfe2c4ceda368fee840c2b9eb7fb92f8634b9c9
./Sourcecode/Classes/SBTriggerableSpawnPoint.uc208332026-02-08 21:53:01bc0bba33650957245b2262d18e9fbe0224c60999
./Sourcecode/copyleft.txt962023-07-09 12:43:3202daefffdd3898e3512c19361e83fbfd41dfce71
./Sourcecode/make.ini2982026-01-29 22:29:57cbf2c4931be29c804947eb7455dd984ce0fba0a9
./Sourcecode/readme.txt822016-08-21 20:17:081cbd672638085e4b53142ebdd86454b23e79cb69
./Sourcecode/Textures/SBTSP.pcx14472026-02-01 18:13:1080784757ccc67aa56e3c58b542208db51ae407ec
./System/SBTriggerableSpawnPointV2.u358552026-02-08 21:58:23f7358f0a8b8fba9e6a2eee2e5aa1512a44b95f0e

SBTriggerableSpawnPointV1, Release 07 Dec 2025

Filelist

NameSizeTime StampSHA1 hash
./Help/Changelog.txt2142026-01-29 22:26:423c13f76393904383c261fad28eb5ea156e783671
./System/SBTriggerableSpawnPointV1.u174922025-12-07 12:27:10dd67bec6487c547f5f6d6e09f64df9c31a66b656

SBTriggerableSpawnPointV0, Release 10. Jul. 2023

(first release)

Filelist

NameSizeTime StampSHA1 hash
./Sourcecode/Classes/SBTriggerableSpawnPoint.uc32862023-07-10 11:21:14aa4add6b482ae4d7335a3f2ed1cb7ac37b1517fb
./Sourcecode/copyleft.txt962023-07-09 12:43:3202daefffdd3898e3512c19361e83fbfd41dfce71
./Sourcecode/make.ini2982023-07-09 12:47:350fcc1c0658fb2c02b1595574caec6702b37d82e3
./Sourcecode/readme.txt822016-08-21 20:17:081cbd672638085e4b53142ebdd86454b23e79cb69
./Sourcecode/Textures/SBTSP.pcx13992023-07-10 11:18:42ff96604199bd9bc64f9d1932f0cae3db77e44d55
./System/SBTriggerableSpawnPointV0.u83112023-07-10 11:21:24f77d13b1ef1b1c9adaf4d086d5f5573b33095585