2017-07-18 04:32:01 +05:30
|
|
|
|
|
|
|
Differences between Reflex and id Tech entities
|
|
|
|
|
|
|
|
Reflex uses a right-handed coordinate system and id Tech uses a left-handed
|
|
|
|
system so many positions and angles must take this into account when being
|
|
|
|
converted.
|
|
|
|
|
|
|
|
|
|
|
|
Position of Players and Pickups are stored differently in Reflex. Player
|
|
|
|
positions are stored at a players feet, while in id Tech, at the center of
|
|
|
|
the character. Converting from Reflex requires the vertical component of
|
|
|
|
position to be offset by 32 units. Similarly, pickups must be offset by
|
|
|
|
two units.
|
|
|
|
|
|
|
|
|
|
|
|
Entity attributes are often implicit; i.e. if an attribute is required but
|
2017-07-18 04:54:04 +05:30
|
|
|
unspecified, a default is used
|
2017-07-18 04:32:01 +05:30
|
|
|
-All game modes are enabled by default and attributes are used to
|
2017-07-18 04:54:04 +05:30
|
|
|
disable undesired modes or to set 2v2
|
|
|
|
-Entities without a position are implicitly at the origin
|
|
|
|
-PointLights without a color default to white
|
2017-07-18 04:32:01 +05:30
|
|
|
|
|
|
|
|
|
|
|
Attributes set in a WorldSpawn are used by all the entities it contains.
|
2017-07-18 04:54:04 +05:30
|
|
|
-id Tech maps have a maximum of one WorldSpawn. Many are allowed
|
|
|
|
in Reflex
|
2017-07-18 04:32:01 +05:30
|
|
|
-WorldSpawns often group PlayerSpawns by game mode
|
|
|
|
|
|
|
|
|
|
|
|
Angles
|
2017-07-18 04:54:04 +05:30
|
|
|
-Can be stored as a Vector3, since rotation about any axis is possible
|
2017-07-18 04:32:01 +05:30
|
|
|
-Keyword angle is also supported (rotation about the vertical axis)
|
|
|
|
|
|
|
|
|
|
|
|
Race Entities
|
2017-07-18 04:54:04 +05:30
|
|
|
-Unlike id Tech games, is limited by not having checkpoint brushes
|
2017-07-18 04:32:01 +05:30
|
|
|
-CTS only
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Reflex entity types and all known attributes
|
|
|
|
|
|
|
|
* is used to denote unsupported attributes and entity types
|
|
|
|
** For parsing purposes, is handled differently than other entities
|
|
|
|
|
|
|
|
**WorldSpawn
|
|
|
|
*String32 targetGameOverCamera
|
|
|
|
*Float timeOfDay
|
|
|
|
*Float skyAngle
|
|
|
|
*UInt8 playersMin
|
|
|
|
*UInt8 playersMax
|
|
|
|
Bool8 modeFFA
|
|
|
|
Bool8 modeTDM
|
|
|
|
Bool8 modeCTF
|
|
|
|
Bool8 mode1v1
|
|
|
|
Bool8 modeRace
|
|
|
|
Bool8 mode2v2
|
|
|
|
|
|
|
|
Pickup
|
|
|
|
(pickupType Required)
|
|
|
|
Vector3 position
|
|
|
|
Vector3 angles
|
|
|
|
UInt8 pickupType - See list of pickup IDs in this document
|
|
|
|
|
|
|
|
PlayerSpawn
|
|
|
|
Vector3 position
|
|
|
|
Vector3 angles
|
|
|
|
Vector3 angle
|
|
|
|
bool8 teamA
|
|
|
|
bool8 teamB
|
|
|
|
Bool8 modeFFA
|
|
|
|
Bool8 modeTDM
|
|
|
|
Bool8 modeCTF
|
|
|
|
Bool8 mode1v1
|
|
|
|
Bool8 modeRace
|
|
|
|
*Bool8 mode2v2
|
|
|
|
|
|
|
|
JumpPad
|
|
|
|
String32 target
|
|
|
|
brush
|
|
|
|
|
|
|
|
Teleporter
|
|
|
|
String32 target
|
|
|
|
brush
|
|
|
|
|
|
|
|
|
|
|
|
Target
|
|
|
|
(name Required)
|
|
|
|
Vector3 position
|
|
|
|
Vector3 angles
|
|
|
|
Vector3 angle
|
|
|
|
String32 name
|
|
|
|
|
|
|
|
RaceStart
|
|
|
|
brush
|
|
|
|
|
|
|
|
RaceFinish
|
|
|
|
brush
|
|
|
|
|
|
|
|
PointLight
|
|
|
|
Vector3 position
|
|
|
|
ColourXRGB32 color - ARGB, alpha channel always full for PointLights
|
|
|
|
Float nearAttenuation
|
|
|
|
Float farAttenuation
|
|
|
|
|
|
|
|
*Prefab
|
|
|
|
Vector3 position
|
|
|
|
String64 prefabName
|
|
|
|
|
|
|
|
*CameraPath
|
|
|
|
(No direct id Tech equivalent)
|
|
|
|
UInt8 posLerp
|
|
|
|
Uint8angleLerp
|
|
|
|
|
|
|
|
*Effect
|
|
|
|
Vector3 position
|
|
|
|
Vector3 angles
|
|
|
|
String64 effectName
|
|
|
|
String256 material0Name
|
|
|
|
ColourARGB32 material0Albedo
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Pickup IDs (of pickups suitable for conversion)
|
|
|
|
|
|
|
|
Burst Gun (spawn weapon)
|
|
|
|
This entity will not have a pickupType field.
|
|
|
|
|
|
|
|
Weapons
|
|
|
|
If the player doesn't have the weapon, then s/he will acquire it.
|
|
|
|
If it is present, the player gains some ammo respective to the gun.
|
|
|
|
pickupType 1 = Shotgun
|
|
|
|
pickupType 2 = Grenade Launcher
|
|
|
|
pickupType 3 = Plasma Rifle
|
|
|
|
pickupType 4 = Rocket Launcher
|
|
|
|
pickupType 5 = Ion Cannon
|
|
|
|
pickupType 6 = Bolt Rifle
|
|
|
|
|
|
|
|
Ammo
|
|
|
|
Ammunition for weapons gained on pickup.
|
|
|
|
pickupType 20 = Burst Gun Ammo
|
|
|
|
pickupType 21 = Shotgun Ammo
|
|
|
|
pickupType 22 = Grenade launcher Ammo
|
|
|
|
pickupType 23 = Plasma Rifle Ammo
|
|
|
|
pickupType 24 = Rocket Launcher Ammo
|
|
|
|
pickupType 25 = Ion Cannon Ammo
|
|
|
|
pickupType 26 = Bolt Rifle Ammo
|
|
|
|
|
|
|
|
Power Up
|
|
|
|
A temporary buff granted to the player.
|
|
|
|
pickupType 60 = Carnage (increases a player's outgoing damage)
|
|
|
|
pickupType 62 = Resist (decreases a player's incoming damage)
|
|
|
|
|
|
|
|
Flags
|
|
|
|
For use in Capture the Flag
|
|
|
|
pickupType 70 = Team Alpha Flag (red team)
|
|
|
|
pickupType 71 = Team Zeta Flag (blue team)
|
|
|
|
|
|
|
|
Health
|
|
|
|
Restores the player's hitpoints.
|
|
|
|
pickupType 40 = Small health
|
|
|
|
pickupType 41 = Medium health
|
|
|
|
pickupType 42 = large health
|
|
|
|
pickupType 43 = Mega Health
|
|
|
|
|
|
|
|
Armor
|
|
|
|
Restores the player's armor.
|
|
|
|
Reflex has a tiered Armor system.
|
|
|
|
Green absorbs the least damage, and Red absorbs the most.
|
|
|
|
pickupType 50 = Armor shard
|
|
|
|
pickupType 51 = Green Armor
|
|
|
|
pickupType 52 = Yellow Armor
|
|
|
|
pickupType 53 = Red Armor
|
|
|
|
|