My program doesn't have bugs. It just develops random features.

User:Wormbo/OnslaughtSpecials

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

Contents

The Onslaught Specials package contains some improved versions of Onslaught-specific actors. Below is a list of placeable actors and their new properties.

See this thread at the Omnip)o(tentS Forums for download and an example map.

General usage considerations

I recommend embedding the package in your map via the command load file=OnslaughtSpecials2.u package=myLevel at the UnrealEd console. Make sure it is not yet loaded when you use that command.

For consistency you should use ONSPowerCoreSpecial and ONSPowerNodeSpecial for either all or none of your power cores and nodes. The other classes have been generalized as much as possible, so they will also work correctly without the special power cores/nodes.

Credits

Thanks go out to:

  • Crusha K. Rool who started to create a bunch of useful mapping tools and not only inspired me to create this package, but also forwarded useful feedback from testers.
  • iwanpompier who wrote the DirectionalNode, a power node class that works correctly even if not placed upright.

Class descriptions

ACTION_DamagePowerNode

UT2004 Object >> ScriptedAction >> ACTION_DamagePowerNode (custom)
Package: 
OnslaughtSpecials

Damages a power node or core directly, even if it is protected or belongs to the instigator's team.

bAttackNotification

Type: bool

Whether to generate the regular attack notifications. (radar map, announcement)

Default value: True

DamageAmount

Type: int

How much health to remove from the node or core.

Default value: 100

NodeTag

Type: name

The node/core Tag name. Only the first matching node or core is damaged.

ACTION_IfNodeShielded

UT2004 Object >> ScriptedAction >> ACTION_IfNodeShielded (custom)
Package: 
OnslaughtSpecials

Enters the following section only if the specified node is shielded.

NodeTag

Type: name

The node/core Tag name. Only the first matching node or core is checked.

ACTION_IfSidesSwapped

UT2004 Object >> ScriptedAction >> ACTION_IfSidesSwapped (custom)
Package: 
OnslaughtSpecials

Enters the following section only if sides are switched on an Onslaught map.

bSidesSwitched

Type: bool

Whether the section should be executed when sides are swapped or when they are not.

Default value: True

ForcedDirVolume

UT2004 Object >> Actor >> Brush >> PhysicsVolume >> ForcedDirVolume (custom)
Package: 
OnslaughtSpecials
This class in other games:
UDK, UT3

A simple port of the UT3 ForcedDirVolume. Since it doesn't support blocking other types of actors it is suggested to combine it with a BlockingVolume (or HitScanBlockingVolume) with bClassBlocker set to True and BlockedClasses containing UnrealPawn, PlayerController and Projectile (or at least TranslocatorBeacon) and whatever else mustn't enter that area.

bDenyExit

Type: bool

If set, drivers will not be able to exit the vehicle while it is affected by the volume.

bDontBlockRedeemers

Type: bool

If set, guided Redeemer missiles are allowed to pass through the volume unaffected. (default: False)

TypeToForce

Type: class<ONSVehicle>

The vehicle class to affect. Vehicles of this class or any subclass will be pushed by the volume. Set to None to disable effects on vehicles. (default: ONSVehicle)

VehiclePushDir

Type: vector

The push direction. Unfortunately there's no way to visualize this in the editor.

Alternatively you can set this to zero and modify Movement->Rotation instead. This will rotate the entire volume, but if you set Advanced->bDirectional=True you get an arrow at the volume's origin that points in the push direction.

VehiclePushMag

Type: float

How much to push vehicles and Redeemer missiles. (default: 4000.0)

NodeWeaponLocker

UT2004 Object >> Actor >> Pickup >> WeaponLocker >> NodeWeaponLocker (custom)
Package: 
OnslaughtSpecials

A special version of the weapon locker that only provides weapons to players of the team owning the closest power node or core. You can add it to the ForcedCloseActors of an ONSPowerNodeSpecial or ONSPowerCoreSpecial to forcibly associate it with that particular node or core even if it's actually closer to another node or core.

bNeutralIfNodeDisabled

Type: bool

If set, the NodeWeaponLocker behaves like a regular weapon locker if the closest power node is disabled.

ONSCountdownNode

Package: 
OnslaughtSpecials

Countdown functionality was merged into ONSPowerNodeSpecial. The countdown node class only still exists for compatibility reasons and can no longer be placed in UnrealEd.

ONSPowerCoreSpecial

UT2004 Object >> Actor >> NavigationPoint >> JumpDest >> JumpSpot >> GameObjective >> DestroyableObjective >> ONSPowerCore >> ONSPowerCoreSpecial (custom)
Package: 
OnslaughtSpecials

A standard Onslaught power core with a few additional features. Custom node names can be set via GameObjective -> ObjectiveName.

bCoreBeamAlwaysUpright

Type: bool

If the power core itself isn't upright (i.e. Rotation.Pitch/Roll changed), should its sky beam be?

CoreHealth

Type: int

How much health the core initially has. (default: 4500)

ForcedCloseActors

Type: array<name>

A list of actor names that should be associated with this core and not any other core or node. Any PlayerStart, ONSVehicleFactory, ONSStationaryWeaponPawn, ONSTeleportPad and xTeamBanner with a matching name or Tag will be affected.

ONSPowerlinkOfficialSetupSupplement

UT2004 Object >> Actor >> ONSPowerlinkOfficialSetupSupplement (custom)
Package: 
OnslaughtSpecials2

Specifies additional information about an official link setup for the map.

ActivatedActors

Type: array<Actor>

Modifiers: edfindable

Actors that should be activated in this link setup.

ActivatedGroups

Type: array<name>

Actor groups that should be activated in this link setup.

CloseActorsOverrides

Type: array<TCloseActorsOverride>

Override settings for forced close actors.

DeactivatedActors

Type: array<Actor>

Modifiers: edfindable

Actors that should be deactivated in this link setup.

DeactivatedGroups

Type: array<name>

Actor groups that should be deactivated in this link setup.

PowernodeSettings

Type: array<TPowernodeSettings>

Additional information about nodes in this link setup.

SetupName

Type: string

The link setup name these options apply to.

ONSPowerNodeSpecial

UT2004 Object >> Actor >> NavigationPoint >> JumpDest >> JumpSpot >> GameObjective >> DestroyableObjective >> ONSPowerCore >> ONSPowerNode >> ONSPowerNodeNeutral >> ONSPowerNodeSpecial (custom)
Package: 
OnslaughtSpecials

This is a modified Onslaught power node with several additional features.

Property group 'CountdownAnnouncements'

BuiltAnnouncements

Type: array<TAnnouncement>

Announcement to play when the node has finished construction.

Default value, index 0:

Member Value
AnnouncementSound Sound'A_StatusAnnouncer_RedControlsTheCountdownNode'
AnnouncementText "Red Controls the Countdown Node!"

Default value, index 1:

Member Value
AnnouncementSound Sound'A_StatusAnnouncer_BlueControlsTheCountdownNode'
AnnouncementText "Blue Controls the Countdown Node!"

DestroyedAnnouncements

Type: array<TAnnouncement>

Announcement to play when the node was destroyed before the countdown completed.

Default value:

Member Value
AnnouncementSound Sound'A_StatusAnnouncer_CountdownNodeDestroyed'
AnnouncementText "Countdown Node Destroyed"

HalfTimeAnnouncements

Type: array<TAnnouncement>

Announcement to play when half of the node's countdown time has passed.

SuccessAnnouncements

Type: array<TAnnouncement>

Announcement to play when the countdown has completed.

Default value, index 0:

Member Value
AnnouncementText "Red Countdown Node Completed!"

Default value, index 1:

Member Value
AnnouncementText "Blue Countdown Node Completed!"

TenSecondsLeftAnnouncements

Type: array<TAnnouncement>

Announcement to play when only ten seconds of the countdown time are left.

Property group 'CountdownEvents'

BlueCompletedEvent

Type: name

Event to trigger when the blue team completes the countdown.

RedCompletedEvent

Type: name

Event to trigger when the red team completes the countdown.

Property group 'ONSPowerNodeSpecial'

bCatchLinkBeamEnd

Type: bool

Whether to hold on to a link beam, similar to players and vehicles.

Default value: True

bNodeBeamAlwaysUpright

Type: bool

If the node is not upright, should its skybeam be?

bSphereBlocksPlayers

Type: bool

Whether players are blocked by the rotating energy sphere above an active node.

Default value: True

bUntriggerActivationEvent

Type: bool

Whether the construction event should be untriggered when the node is destroyed.

Default value: True

ForcedCloseActors

Type: array<Actor>

Modifiers: edfindable

A list of vehicle factories, turrets, playerstarts, teleporter pads, team banners, node weapon lockers and other compatible actors, that should be considered closest to this node even if other nodes are actually closer. (You should use only special nodes/cores for this feature to work properly.)

ForcedCloseActorTags

Type: array<name>

Matching actors are added to the ForcedCloseActors list.

IsolatedDamagePerSec

Type: int

How much damage this node takes while it's isolated.

Default value: 30

LinkHealMultiplier

Type: float

Multiplier for linkgun healing.

Default value: 1.0

NodeHealth

Type: int

The node's health.

Default value: 2000

ShieldedHealingPerSec

Type: int

The node will regenerate this many hitpoints per second while it is shielded.

SphereHeight

Type: float

How high above the node should the energy sphere be?

Default value: 370.0

ONSWithTranslocator

UT2004 Object >> Actor >> Info >> ONSWithTranslocator (custom)
Package: 
OnslaughtSpecials2

Forcibly enables the Translocator in this map. Can be disabled for specific link setups via link setup supplements. It is recommended to use the Translocator as replacement for vehicles, not in addition to them.

bEnabled

Type: bool

Whether Translocator is enabled by default.

Default value: True

TriggeredWeaponBase

UT2004 Object >> Actor >> xPickUpBase >> xWeaponBase >> TriggeredWeaponBase (custom)
Package: 
OnslaughtSpecials2

A weapon pickup base that only spawns a weapon when triggered.

Properties

bShouldRespawn

Type: bool

Should the weapon respawn automatically after being picked up? If not, the pickup base deactivates automatically after the weapon was picked up.

States

TriggerControl

Triggering activates the weapon base, untriggering or reset deactivates it.

TriggerToggle

Triggering activates the weapon base, triggering again or reset deactivates it.

TriggerTurnOn

Triggering activates the weapon base, reset deactivates it.

xTeamMaterialSwitch

UT2004 Object >> Actor >> Decoration >> xTeamBanner >> xTeamMaterialSwitch (custom)
Package: 
OnslaughtSpecials

Creates a MaterialSwitch with 4 materials and picks a material based on who owns the associated node or core.

MaterialSwitch

Type: MaterialSwitch

The MaterialSwitch to assign the various materials to. Whenever you create or duplicate a xTeamMaterialSwitch actor, a new MaterialSwitch object will be created to prevent conflicts with other xTeamMaterialSwitchs. The default MaterialSwitch contains 4 materials (0: red, 1: blue, 2: neutral, 3: disabled).

TeamSymbolCombiners

Type: Combiner

Array size: 2

Combiners to assign the owning team's symbol to. (index 0: red, index 1: blue) The symbol texture will be assigned to Material2 of the corresponding Combiner when a team owns the node. It will not be removed again if the node is destroyed or taken by another team.

xTeamMonitor

UT2004 Object >> Actor >> Decoration >> xTeamBanner >> xTeamMonitor (custom)
Package: 
OnslaughtSpecials

An Onslaught-compatible version of the xMonitor.

BlueTeamShader

Type: Material

Material to use as Skins[2] while the blue team owns the node.

DisabledShader

Type: Material

Material to use as Skins[2] while the node is disabled.

NeutralShader

Type: Material

Material to use as Skins[2] while no team owns the node.

RedTeamShader

Type: Material

Material to use as Skins[2] while the red team owns the node.

TeamSymbolCombiners

Type: Combiner

Array size: 2

Combiners to assign the owning team's symbol to. (index 0: red, index 1: blue) The symbol texture will be assigned to Material2 of the corresponding Combiner when a team owns the node. It will not be removed again if the node is destroyed or taken by another team.

Structs

TAnnouncement

Describes an announcement for a countdown node.

Sound AnnouncementSound 
An announcement sound to play.
name AnnouncementName 
Name of an announcement to play. This will be ignored if an announcement sound is set.
string AnnouncementText 
A localized text to display on the HUD as part of the announcement.

TCloseActorsOverride

Close actors override for a single actor in the map.

Actor Actor 
The actor to associate with a different node or core.
ONSPowerCore ClosestNode 
The node or core to associate the actor with.

Only works with special cores and nodes, including countdown nodes.

TPowernodeSettings

Information about a single power node.

ONSPowerNodeSpecial Node 
The power node to apply these settings to.
ONSPowerCore OwnerCore 
The power core of the team initially owning this node.

(This doesn't receive any further checks, so you could create isolated nodes that will die soon after the match started.)

bool bIsStandalone 
Whether the node should stay active even if it's not connected to the main

power network. If this is applied to a networked node, the node can always be captured and attacked by both teams and will power other connected nodes even without a direct link from any power core.

bool bNeverShielded 
Whether the node can always be attacked by the enemy team.
bool bNotShieldedIfIsolated 
Whether the node becomes attackable when it gets isolated.
bool bKeepVehiclesWhenDestroyed 
Whether nearby vehicles should stay around if the node is destroyed.
byte MinPlayerCount 
The minimum player count required to activate this power node.

The node will be disabled and potentially removed from the network if less players are in the game.

bool bCountdownDamagesEnemyCore 
AI hint that a successful countdown will damage the enemy team's power core.
name RedCompletedEvent 
Event to trigger when the red team completes the countdown.
name BlueCompletedEvent 
Event to trigger when the blue team completes the countdown.
byte CountdownTime 
How long the node must be held for the countdown to complete.
bool bStopCountdownIfIsolated 
Should the countdown stop if the node is isolated while not standalone?
array<ONSPowerNodeSpecial.TAnnouncement> BuiltAnnouncements 
Announcement to play when the node has finished construction.
array<ONSPowerNodeSpecial.TAnnouncement> HalfTimeAnnouncements 
Announcement to play when half of the node's countdown time has passed.
array<ONSPowerNodeSpecial.TAnnouncement> TenSecondsLeftAnnouncements 
Announcement to play when only ten seconds of the countdown time are left.
array<ONSPowerNodeSpecial.TAnnouncement> SuccessAnnouncements 
Announcement to play when the countdown has completed.
array<ONSPowerNodeSpecial.TAnnouncement> DestroyedAnnouncements 
Announcement to play when the node was destroyed before the countdown completed.