3D FPS Kit (Premium)

The FPS Kit is available on Steam as optional DLC. This page explains some of the core functionality present inside this template.


Walls and Environmental Objects

Walls and other objects are mainly handled using Actors in this template, each separate wall section is partitioned to allow for complex room creation to the user’s choosing.

Instead of the normal method of placing wall tiles, you place a “Dynamic Object” onto the Map and change the “Body” to your desired wall section or object you wish to place.

Using the wall or object as an Actor, instead of the normal tile method, allows for more orientation options. (Such as rotation and placement unhampered by grid snapping).


Ceilings

Ceilings are essential to almost every scenario when utilizing the 3D FPS template.

Changing the Z layer

In the Map Editor, the Z layer for tile placement can be changed by using Ctrl+Middle Scroll Wheel or the “Page Up” and “Page Down” keys.

Making the ceiling/roof tiles

In the Map Editor, you can place an upper object tile on your desired layer. Tiles can be made visible on both sides by checking the “Render both sides in 3D” box under your tile name. An alternate method of creating the roof is importing an externally created 3D plane, then texturing it respectively.


Disabling Snap to Grid

In a recent update to 001, a new option has been added to the Map Editor allowing you to disable the 16 unit Actor placement snapping. By default Snap to Grid is enabled. It can be toggled on/off by clicking on the “Magnet” icon.


Breakdown of NPC Clothing

The FPS NPC clothing has been broken down into body portions rather than overlapping onto a solid body model, this has been done to prevent the mesh from having portions of the underlying texture to “bleed through” the clothing portions.

The head models for both “Male” and “Female” NPC models are set to the “Body” category and torsos have been likewise moved to the “Shirt” category respectively. This ensures that parts of the body can be interchanged with other 3D models of similar category.


Input Sets

As with many games, the WASD or arrow keys denote movement both in game and within menus.

Cursor

Key Method Description
LMB Pressed Starts firing currently equipped weapon.
LMB Released Stops firing currently equipped weapon.

Regular Game

Name Key Method Description
Action Enter, E, F Pressed Activates highlighted actors in game and within menus.
Jump Space Pressed Activates the jump for the player.
Menu Esc Pressed Brings up the default menu.
Reload R Pressed & Released Reloads current weapon.
Use Item Middle Click, G Pressed Throws currently equipped grenade.
Next Item Wheel Up, X Pressed Switches to the next available weapon.
Previous Item Wheel Down, Z Pressed Switches to the previous equipped weapon.
Crouch Ctrl Pressed Makes the player crouch.
Run L Shift Pressed Makes the player run.
Run L Shift Released Stops the run input.

Custom Events

Hit_Scan Attack

Attack script, used to attack in front of player at a specified distance.

  • Bullet_Distance – Distance in pixels the line sweep will extend.
  • Recoil_Amount – Amount the gun will recoil.
  • Accuracy_Lower – Amount that the accuracy will be decreased.
  • Damage – Amount of damage this attack will do.
  • Origin Actor – Name of actor the attack is originating.
  • Bullet_Delay – Adds a delay between shot fired and impact of attack.
  • Origin_X – X coordinate of where the attack is originating.
  • Origin_Y – Y coordinate of where the attack is originating.
  • Origin_Z – Z coordinate of where the attack is originating.

Hit_Impact

Deals damage and checks for material at impact location to play appropriate Sprites and sounds.

  • Target_Actor – Name of the actor being attacked.
  • Origin_Actor – Name of the actor commencing the attack.
  • Damage – Damage to be dealt.
  • Hit X – X location of impact.
  • Hit Y – Y location of impact.
  • Hit Z – Z location of impact.

Reload

Reload script for guns, plays appropriate poses based on current weapon equipped to an Actor.


Screen_Message

Displays messages at bottom of screen for x seconds. (Example, the text saying reloading, or Item pick ups.)

  • Message – Message to display.
  • Seconds – Seconds message is displayed.

Variable Definitions

Global Variables

Name Description
Mouse_Sensitivity Sets how much mouse movement effects the player camera. (Higher values equal slower movement)
Max_Range The distance the player can shoot. (Higher numbers denote a longer range)
Explosion Count Used to track the number of explosions currently occurring on a Map at a given time.

Local Variables

Name Description
Skip Step This is a counter to play a footstep sound every so often, based on the current floor tile.

Switches

Name Description
Camera Locks the camera to the first person view in the “Player” Actor Template. Setting this to off will free the camera.
Menu Returns if a menu Interface is on or off, if on it will free the mouse from camera movement.
Reloading Denotes if the player is reloading. Used to play animations and prevent from using an Item during said animations.
Attacking When using a weapon, triggers animations based on what is equipped when on.
Using Action Returns if the action command is being used. Used to prevent other actions (such as using weapons)
Crouching Returns on if player is using the crouch input. By default it is set to toggle when input is used.
Crosshair If on shows the crosshair on the default HUD. If off, hides the crosshair.

Collections

Name Description
Item_Message Names of Items on pickup get added to this collection to display on being acquired. Controlled by the “New Message” Timer in the top left of the Base HUD Interface.
Info_Message Names of actions get added to this Collection. (Ex. Press E to Equip) Controlled by the “Info Message” Timer located at the center of the Base HUD Interface.
Info_Message_Time Used to track the length of time a message gets displayed on the Base HUD.

Actor Variables

Name Description
Material The material of the Actor. (Used to denote a played sound effect)
Resting Returns 0 if an Actor is stationary, 1 if the Actor is moving.
Weapon_Accuracy The area size in which a weapon effects. (Higher numbers equal a wider spread)
Min_Accuracy The minimum projectile spread an Actor has.
Jumping Returns 1 if an Actor is jumping, 0 if stationary.
Aim_Height The height in which the weapon muzzle is located.