A zone that forces the player to walk.
- bool enabled Controls whether or not this zone is enabled. It can be triggered to be disabled.
An animating decoration that I thought mappers might find useful or fun.
- name animationToLoop The animation to be looped. Make sure the mesh specified has the animation you desire.
An effect class for attachments to the FiretrucksPlayer.
For those times when you need to attach something on the fly, or when an attachment is misbehaving
- bool forceTick Whether or not to enable tick() when triggered.
- name childTag Optional tag of child Actor(s).
- Actor child A direct reference to the child. Needed by tick(), but not trigger().
- Actor parent A direct reference to the parent.
- bool enableTick Whether or not tick() is enabled at the start.
- editconst localized string warning "Tick() ignores childTag, must use child"
A sweet decoration for the drunkard in you!
Sometimes one bottle isn't enough;
An inventory item that resembles Bottle2
In case hard liquor isn't your thing I modeled this one to look like wine.
An inventory item that appears like Bottle3
An inventory item that looks like the Bottle
When triggered, switches the player's view to a specified camera for a period of time.
- FiretrucksCamera cameraToUse The camera to be used for the event.
- float duration The duration of the event, in seconds. If set to 0, it will last until retriggered.
When triggered, can toggle collision of a specified actor.
- name targetTag The tag of the target actor(s).
- enum ColliderType collideType Controls whether collision is enabled, disabled, or toggled.
- enum CollideTargetType targetType
Controls how this actor acquires its targets. Using tags or prototypes
is very slow and should be used sparingly. If there are ten things you
want to toggle collision for, it is faster during runtime to use ten
Collider actors set to TT_TARGET than it is to use one with a tag.
- Actor collideTarget The exact target, if the targeting mode is set to use an exact target.
- class<Actor> prototype The class of actors to toggle, if set to that mode.
Toggles the combat UI for the FiretrucksHUD
- enum TriggerAction onTrigger How this actor should behave when triggered
- bool enabled Whether or not it is enabled
- bool disableAfterUse should it disable itself after use?
When triggered, destroys the specified actor(s). It has
the option to spawn an effect in its place, if you desire. Unleash your
destructive side!
- name targetTag The tag of the target actor(s).
- enum DestroyerTargetType targetType
Controls how this actor acquires its targets. Using tags or prototypes
is very slow and should be used sparingly. If there are ten things you
want to destroy, it is faster during runtime to use ten Destroyer actors
set to TT_TARGET than it is to use one with a tag.
- Actor destroyTarget The exact target, if the targeting mode is set to use an exact target.
- class<Actor> prototype The class of actors to destroy, if set to that mode.
- class<Effects> effectToSpawn If set, this effect will be spawned after destroying the target.
The actor that started this pack. When triggered, the player enters a super dialogue mode.
- FiretrucksCamera cameraToUse If set, switches the player's view to the specified camera for the duration of the dialgoue.
- Actor speaker The actor who is speaking. Leave it as none if the player is speaking.
- enum DialogueType responseType
How the player will respond. RT_AUTO continues without a response.
RT_CLICK waits until the player clicks to continue. RT_CHOICE allows for
the player to choose a response from a list of up to five.
RT_RITA_PLEASE_RESPOND is like RT_AUTO, but does not fire an event at
the end, because there's no replies ;_;.
- localized string speakerName The name of the speaker. ie: "Weedrow" or "Gretal the Ripped"
- name speakerAnimation
The name of the animation for the speaker to perform. Kind of buggy to
pawns behaving badly but no good fix exists outside of reimplementing
every pawn. I'm not doing that.
- localized string prompt What is being said. example: "Takk-sempai no ecchi!"
- localized Sound promptAudio Audio to go with the text.
- localized float EventDelay
For RT_AUTO and RT_RITA_PLEASE_RESPOND it is the time until the
dialogue finishes. For RT_CLICK, is the the time until the "Click to
continue!" prompt appears. For RT_CHOICE, it is the time until the
choices appear.
- name autoAndClickEvent The event triggered by this dialogue under RT_AUTO and RT_CLICK
- localized responseChoiceStruct responses[5] The responses to the given dialogue. Each choice can have its own optionText, responseEvent, responseAudio, and responseDelay.
- bool disableAfterUse If you can figure out what this one does you get twenty points.
- bool enabled Whether or not this dialogue node is enabled
- bool turnToFace Whether or not the speaker should turn to face the player.
Enables, disables, or toggles DialogueNode actors.
- enum actionType disablerType Whether to enable, disable, or toggle a node.
- DialogueNode targetDialogueNode The DialogueNode to be toggled.
For handling input to the state machine. These are created automatically during runtime and not to be placed in the map.
Actor class representing a single state within the finite state machine.
- FSMState transitions[16] Transitions on an enumerated input. If an input is received with no listed transition it is ignored and discarded.
If you are unfamiliar with state machines this actor will
likely seem very foreign to you. Consider the chart below, which
corresponds to the state machine in the example map. The machine starts
in the state in the state indicated with the arrow, and the state with
the inner ring is the accept state (the goal). Whenever one of four
events is called, the state machine moves to a new state based on the
listed transitions for its current state. In this example, if the
machine is in the initial state and receives and event call of 'knife'
it will transition to state 6. Note: this state machine actually
pertains to the old example map and is also wrong. I'll fix it later.

This implementation of a state machine consists of a
single centralized actor (of this class), and a seperate actor of class
FSMState to represent each state of the state machine. When
transitioning to a new state, the event of a the new state is triggered,
such that your desired final state can trigger any event that it needs
to. This also allows for other states to trigger events if need be.
- FSMState startState The starting state for this state machine.
- name inputTags[16]
When these tags are triggered, the machine will attempt to transition
to another state along the corresponding number. For example, if tag 3
is triggered, it will transition to the state listed in slot 3 of the
current state's transitions.
A cleaner ThingFactor/CreatureFactory that also has additional functionality. It fires its event when finishing.
- class<Actor> prototype The class to be spawned.
- int numToSpawn The number of things to spawn.
- name spawnpointTag The tag of the spawnpoints.
- float spawnInterval The time inbetween spawns.
- bool enabled Whether or not this actor is enable.
- bool disableAfterUse Whether or not it should disable itself after use.
- Actor attachSpawnsTo I didn't test this feature.
Camera actor used by CameraEvent actors and DialogueNode
actors. It is invisible in-game, but has a mesh in the editor you can
tell which way it is pointing, even if it isn't selected.
- float fov The camera's field of vision.
Overrides footstep sounds for players within the actor's
collision radius. They are problematic if the player can touch two at
once.
- Sound Defaults[3] The
default player footstep noises. If used inside a
FiretrucksFootstepZone, you want these to match to zone's overriden
values.
- Sound Overrides[3] The new footstep noises to use.
- Sound DefaultLand If used inside a FiretrucksFootstepZone, you want this to match to zone's overriden value.
- Sound OverrideLand The new player landing noise. Leave as none to just use the default.
- bool forceThroughTexture Forces the footsteps, even if otherwise specified by texture and/or footstep manager settings.
Overrides footstep sounds for players within the zone.
- sound Defaults[3] The default player footstep noises. In most cases this should not be changed.
- sound Overrides[3] The new footstep noises to use.
- sound DefaultLand The default player landing noise. In most cases this should not be changed.
- sound OverrideLand The new player landing noise. Leave as none to just use the default.
Custom firetrucks gametype. Forcing the player is very
important. Extend if you want. WARNING: netplay probably doesn't work at
all. I don't care about trying to get it working. If you'd like to
care, have at it. I'm willing to answer questions you might have, I just
don't want to spend a milluon years choking to death in Unreal Engine 1
netcode. I think it actually be cool ifit all did work, but that's how
it is. I have put hundreds of hours intofiretrucks already, but you know
the saying: "If you really love her you have to let her go."
A new HUD class.
- localized string clickMessage the message to be displayed when waiting for a click
- localized string playerName The name of the player.
- float invShowDelay Controls the behaviour of some UI elements.
- Color accessoryColor Sets the color of some UI elements.
- Color tertiaryColor Sets the color of some UI elements.
- float vSizeCutoff cutoff between full size and reduced UI
- Font smallUIFont font to use at unfairly small resolutions
- Font fullUIFont font to use at reasonable resolutions
- bool combatMode whether or not to EVER display combat information (health, weapons, ammo...)
- Texture fCrosshair A special crosshair.
- Texture cursor
- Texture cursorFlash
- Texture healthIndicator
- Texture armorIndicator
- Texture armorShieldIndicator
- Texture ammoIndicator
- float animationTime The time taken to complete most UI animations.
- float charsPerSec How fast text scrolls;
A UI for the Journal. Follows a sort of zealously OOP paradigm
A class representing useable inventory items. When used outside of an ItemTrigger, they fire an event.
- bool oneUse Whether or not the item should be consumed on use.
- name eventOnUse The event fired when used outside of an ItemTrigger's radius.
- class<Attachment> attachmentClass
A custom player class necessary for handling a lot of input related tasks.
A flat square deco mesh. Panel is too high poly and uh whatever.
A special subclass of PathNode that can be configured to
reject incoming and/or outgoing paths, as well as force pathing with
NavagationPoints that match a given tag.
- bool acceptIncomingPaths Whether or not this actor should accept incoming paths that are not forced.
- bool acceptOutgoingPaths Whether or not this actor should accept outgoing paths that are not forced.
- name forceTag If set, it will force binding with all NavagationPoint actors that match this tag.
Allows mappers to change the hud at will.
- class<HUD> hudToUse Which HUD class to use
- bool targetEveryone whether or not this should affect everyone or not
Toggles the visibility of the specified actor(s).
- name targetTag The tag of the target actor(s).
- enum HiderType hideType Controls whether visibility is enabled, disabled, or toggled.
- enum HideTargetType targetType
Controls how this actor acquires its targets. Using tags or prototypes
is very slow and should be used sparingly. If there are ten things you
want to toggle visibility for, it is faster during runtime to use ten
Hider actors set to TT_TARGET than it is to use one with a tag.
- Actor hideTarget The exact target, if the targeting mode is set to use an exact target.
- class<Actor> prototype The class of actors to toggle, if set to that mode.
- class<Effects> effectToSpawn If set, this effect will be spawned after toggling the visibility of the target.
A handy class for changing the model, skin, sounds, etc of the player.
- enum triggerNotification listenOn Controls when the changes take place.
- bool resetAllToDefault Whether or not this Identitron3000 should reset the targets to their defaults.
- bool targetEveryone Whether or not this Identitron3000 should affect everyone or not.
- class<UnrealIPlayer> copyFrom class to copy from. If left blank it will use the manual settings below.
- string playerName allows overriding the player's name in the HUD, makes a difference in dialogue I guess
- bool copyFromPlayerConfig if true the above will be ignored and the player's preferences will be used instead.
Used by FiretrucksGame to bind PlayerPawns to actual player
logins. It also stores other information and is used by Identitron3000
to access actual player configs in a hacky way.
- string playerName The player's name
- string options Their options string. I can't be bothered to use this now but it is smart of collect it.
- PlayerPawn pp A reference to their player pawn.
- class<PlayerPawn> desiredClass The player class that the poor player wanted but couldn't have.
- Texture desiredSkin
This class was deprecated in favor of the new and greater
improvedInventoryChecker2. It continues to exist in its original state
to allow forbackwards compatibility. Avoid using it in future endeavors!
- class<Inventory> prototype The Inventory class to look for.
- bool not If true, fire its event if it doesn't find the item, instead of when it does.
A full replacement of InventoryChecker. It can do more and
is more intuitive to use. It checks a players inventory for a certain
item and then may fire its event depending on whether or not it meets
the conditions set in this actor's properties.
- class<Inventory> prototype The class you'd liek to check for.
- int quantity The quantity you'd like to check for. Only matters if checkType is something other than CT_YES or CT_NO.
- enum CheckTypeEnum checkType
CT_YES and CT_NO simply check if the player has (or does not have) an
item. The others compare the quantity of said item to the quantity property.
A class for modifying the player's inventory. So good I didn't bother to write versions one through six.
- editconst bool buyFromBloblet NEVER do this!
- enum ActionType action How this inventory modifier should behave.
- class<Inventory> prototype The class that should be spawned or destroyed.
- int count The amount of the item to spawn or destroy.
Enables the use of FiretrucksPickup actors within its collision radius.
- class<FiretrucksPickup> prototype The class of FiretrucksPickup to enable.
- bool enabled Whther or not this actor is enabled.
- bool onScreenNotification Whether or not an on-screen notification should be displayed indicating that the item can be used.
- enum UsageType useType What to display if onScreenNotification==true.
- localized string useTypeCustom If set, ignores the useType
- localized string ItemName The human-readable name of the item. Not needed if onScreenNotification==false.
JarInv extends FiretrucksPickup
An inventory item that looks like a jar.
Originally written for The Oll Stone. Cannabalized for
Firetrucks. The Oll Stone wasn't even a dead project. It can't be helped
I suppose.
- class<JournalUISystem> UISystem What JournalUISystem to use.
- Sound newMessageSound Specifies the sound to play on a new JournalEvent.
- Sound oldMessageSound Specifies the sound to play on an old JournalEvent.
Internal parent class of classes used to represent journal data
Events for the Journal. Like TranslatorEvents, but a million times better.
- localized JournalEventEntry eventEntry The message to be displayed.
- float reTriggerDelay A delay before this JournalEvent can be triggered again.
- enum SuperEntryType entryType Controls how the entry is displayed by the UI.
- JournalImageEventEntry images Allows you to set and image to be displayed with the message.
- bool forceJournalOpen Whether or not to force the journal open when triggered.
A class that represents entries into a journal. The
variables are flagged aseditable for some reason even though the class
is nousercreate
- byte entryType
- localized String entryName
- bool indent
- localized String entryText
- texture image
- byte drawStyle 1 = normal, 2 = masked, 3 = transparant, 4 = modulated
- int height
- int width
Linked list for journal data. I guess theoretically if you
collected likea thousand and one hundred or so list entries the game
would crash.
Parent class for Journal UI
KeyInv extends FiretrucksPickup
Is this a key that goes in your inventory or a thing that goes in yourinventory that happens to look like a key?
A trigger that only fires its event when the player is standing within its radius and looking towards the specified actor.
- bool enabled Whether or not this actor is enabled.
- Actor lookTarget The target actor for the player to be looking at.
- bool lookAway If true, the trigger fires when the player is looking away from the target, rather than towards the target.
- bool triggerOnceOnly If true, the trigger disables itself after firing once.
- float reTriggerDelay After triggering, this is the delay before it can trigger again.
- float precision
The maximum (or minimum) angle in radians for the player's viewRotation
to deviate from a direct line to the target in order for this actor to
trigger.
Fires its event when target is clicked on. Pretty easy really.
Parent class for mouse related triggers. In retrospect I probably should have just merged them all into one class.
- Actor targetActor The target actor. Can target self.
- bool disableAfterUse Whether or not to disable after use.
- bool enabled Whether or not this actor is enabled
- enum TriggerAction onTrigger What happens when THIS actor is triggered
- bool ignoreHiddenTarget If true, it will prevent interraction with targets that are hidden.
- bool highlightTarget If true, the target becomes unlit while the mouse is over it
- vector useOffset Allows the end-user (that's you!) to specify an offset from the target's center
- float maxFudge How large (in uu) the target should be to click on. This is actually implemented kind of crappily...
- enum OverrideCursorType overrideCursor Whether or not to override the cursor while mousing over
A camera that can be triggered in a number of ways to change where it is looking. Uses a dummy class to receive multiple events.
- name positionTags[12] Tags for the literal postions. These go from top to bottom in a clockwise fashion.
- name lookUpTag Looking up rotates the camera up about 30 degrees
- name lookDownTag Same, but down
- name lookLeftTag Rotates left 90 degrees
- name lookRightTag Rotates right 90 degrees
- localized editconst String notice "The internal Event field resets the camera."
A dummy class for receiving events and passing them on to the MultiCam.
It is an office chair. It is used by placing your butt on it.
Displays an overlay on the HUD for players within its radius.
- float sphereRadius The spherical radius of this actor.
- bool gradualDistribution Whether or not the overlay opacity should adjust based on player distance.
- Texture overlayTexture The texture to use for the overlay.
- float alpha How opaque the overlay is, between 0.0 (invisible) and 1.0 (fully opaque).
- localized editconst const string SRNote "Collision is auto-set from this value."
A decorative arrow intended to server as a guide for a PointAndClickEvent
Foricibly ends any PointAndClick event that might be active
and has the option of teleporting the player to this location and/or
adjusting player rotation.
- bool teleportPlayer Whether or not to teleport the player
- bool adjustPlayerRotation Whether or not to adjust the player's rotation
A class to toggle a PointAndClickEvent actor on or off.
- enum actionType disablerType Whether to enable, disable, or toggle
- PointAndClickEvent targetPCAE The PCAE to be toggled.
A decorative arrow intended to server as a guide for a PointAndClickEvent
A decorative arrow intended to server as a guide for a PointAndClickEvent
Displays Text on the HUD during a PointAndClickEvent. Make sure to set the tag!
- localized string text The text you want to display
A decorative arrow intended to server as a guide for a PointAndClickEvent
"firetrucks" is itself a stupid reference joke.
PFPInv extends FiretrucksPickup
And this is the version that goes in your inventory. I'll probably get an angry C&D letter because of this.
A port of Qtit's PawnTrigger from the previous Chronicles of Weedrow event, only renamed so it doesn't conflict with UPak.
- ScriptedPawn Pawn The pawn to be manipulated.
- name NewOrders The new orders for the pawn.
- name NewOrderTag The new order tag for this pawn.
- name NewAlarmTag The new alarm tag for this pawn.
- name NewAnimation If set, the pawn attempts to play this animation. Most of the time, anyway.
- bool NewAnimationbLoop If true, the pawn loops the specified animation instead of simply playing it once.
I dreaded documenting this class for so long. This class
allows mappers to set up point and click adventure game style sequences,
but it is a little complicated to use. You need one of these, a camera,
a series of MouseTriggers whose tags match the mouseEventTag field of
this actor. Trigger this actor to start the event, trigger again to end.
You can also use a PCADumper to end an event.
- name mouseEventTag IMPORTANT!: The tag of all MouseTriggers and PCAText actors associated with this event
- FiretrucksCamera cameraToUse The canera to be used
- bool enabled Whether or not this actor is enabled
A trigger that fires its event on postBeginPlay(). Very useful for things like intro cutscenes!
Have you ever been like, "Regular UE1 events are too slow! I
want todirectly call trigger() on an actor without the overhead!" No?
Oh well... Extra fun points because this also needs to be triggered too.
- Actor reference the Actor to call trigger()
- bool fireEventToo also call this Actor's event
Kind of an awesome class. Lets you change the position or rotation of anactor in a variety of ways.
- enum RRType rotateType How to interract with the target's rotation. RRT_FACE faces the targetOfTarget
- enum RLType locationType How to interract the targetActor's location. RRT_MATCH copies the targetOfTarget
- Actor targetActor The target actor to reposition
- Actor targetOfTarget Used by some modes
- Vector literalVector used for RLT_ADD or RLT_REPLACE
- Rotator literalRotator used for RRT_ADD or RRT_REPLACE
Abstract class to keep the tree organized. See children.
Attachs a badass sword to the player's back. Awesome right? jk it detaches from the player sometimes and looks like ass.
Actually using a sword would make the main character a mary sue. You can carry one around though.
A tankard. Some people drink from them but this one is just for decoration.
The perfect beer container for goths. It is always empty, like their soul.
Displays text on screen. Useful for conveying the main character's thoughts.
- localized string text The text to display.
- localized float duration How long the message should be displayed.
- localized Sound audio An optional sound effect to be played when triggered.
Displays a tooltip when mousing over the target. If you want a tooltip and a click event use one of each with the same target.
- localized string tooltipString The tooltip you want to display.
This is a relatively elegant solution to being able to
"use" things within the level. When the player is within range and
presses their use/activate item key, an event is called instead. The
design could have come to me in a dream, exacept I was busy staying up
all night listening to Green Day while disliking peace and love. If you
didn't understand the reference in the previous statement do an image
search for "ecstasy aka darks."
- localized string targetName The name of the target to display when in range.
- Actor useTarget The target actor that gets "used."
- bool disableAfterUse If true, this actor disables itself after being used.
- bool enabled Whether or not this actor is enabled.
- enum TriggerAction onTrigger How this actor should behave when it gets triggered by other events (not the player's use key).
- enum UsageType useType The text to display on screen when in range to use the object. Select from one of many fun types!
- bool precise If true, check the player's view rotation to ensure they are actually looking at the target.
- float precision If precise
is set to true, this is the maximum angle between a direct line to the
actor's center and the player's view rotation for the player to be able
to trigger the UseEventAssociator. The angle is measured in radians.
- localized string useTypeCustom If set, ignores the useType and instead uses this text. This is discouraged, however.
- bool ignoreHiddenTarget If true, it will prevent interraction with targets that are hidden.
- vector useOffset Allows the end-user (that's you!) to specify an offset from the target's center
- float useDistance Controls how close the player must be in order to use the object.
- Texture useIconCustom Texture to replace the crosshair.