Game entities and spawns

This page is under construction! We just did notice many spawn functions are just not documented very well
Legend
new in ET: Legacy
present in ET 2.60b but was somehow enhanced in ET: Legacy
this feature is not different in ET 2.60b and ET: Legacy

info

Info entities don’t do anything at all, but provide positional information for things controlled by other processes

Spawn Function Description Keys Spawnflags ET:L specific
info_player_start SP_info_player_start (1 0 0) (-18 -18 -24) (18 18 48) Equivelant to info_player_deathmatch Your text here... Your text here...
info_player_checkpoint SP_info_player_checkpoint (1 0 0) (-16 -16 -24) (16 16 32) a b c d These are start points /after/ the level start the letter (a b c d) designates the checkpoint that needs to be complete in order to use this start position Your text here... Your text here...
info_player_deathmatch SP_info_player_deathmatch (1 0 1) (-18 -18 -24) (18 18 48) potential spawning position for deathmatch games. Targets will be fired when someone spawns in on them. "nobots" will prevent bots from using this spot. "nohumans" will prevent non-bots from using this spot. If the start position is targeting an entity, the players camera will start out facing that ent (like an info_notnull) Your text here... Your text here...
info_player_intermission SP_info_player_intermission (1 0 1) (-16 -16 -24) (16 16 32) AXIS ALLIED The intermission will be viewed from this point. Target an info_notnull for the view direction. Your text here... Your text here...
info_null SP_info_null (0 0.5 0) (-4 -4 -4) (4 4 4) Used as a positional target for calculations in the utilities (spotlights, etc), but removed during gameplay. Your text here... Your text here...
info_notnull SP_info_notnull use target_position instead Your text here... Your text here...
info_notnull_big SP_info_notnull use target_position instead Your text here... Your text here...
info_camp SP_info_camp (0 0.5 0) (-4 -4 -4) (4 4 4) Used as a positional target for calculations in the utilities (spotlights, etc), but removed during gameplay. Your text here... Your text here...

func

Spawn Function Description Keys Spawnflags ET:L specific
func_debris SP_func_debris debris test Your text here... Your text here...
func_plat SP_func_plat Your text here... (0 .5 .8) ? Plats are always drawn in the extended position so they will light correctly. Your text here...
func_button SP_func_button (0 .5 .8) ? x x x TOUCH x x STAYOPEN When a button is touched, it moves some distance in the direction of it’s angle, triggers all of it’s targets, waits some time, then returns to it’s original position where it can be triggered again. Your text here... Your text here...
func_explosive SP_func_explosive (0 .5 .8) ? START_INVIS TOUCHABLE USESHADER LOWGRAV NOBLOCKAAS TANK Any brush that you want to explode or break apart. If you want an explosion, set dmg and it will do a radius explosion of that amount at the center of the brush. Your text here... Your text here...
func_door SP_func_door Your text here... Your text here... Your text here...
func_static SP_func_static Your text here... Your text here... Your text here...
func_leaky SP_func_leaky Your text here... Your text here... Your text here...
func_rotating SP_func_rotating Your text here... Your text here... Your text here...
func_bobbing SP_func_bobbing Your text here... Your text here... Your text here...
func_pendulum SP_func_pendulum Your text here... Your text here... Your text here...
func_train SP_func_train Your text here... Your text here... Your text here...
func_group SP_info_null Your text here... Your text here... Your text here...
func_train_rotating SP_func_train_rotating Your text here... Your text here... Your text here...
func_secret SP_func_secret Your text here... Your text here... Your text here...
func_door_rotating SP_func_door_rotating Your text here... Your text here... Your text here...
func_timer SP_func_timer it’s a trigger ... rename trigger_timer? Your text here... Your text here...
func_invisible_user SP_func_invisible_user Your text here... Your text here... Your text here...

Code
    // info entities don't do anything at all, but provide positional
    // information for things controlled by other processes
    { "info_player_start",         SP_info_player_start         },
    { "info_player_checkpoint",    SP_info_player_checkpoint    },
    { "info_player_deathmatch",    SP_info_player_deathmatch    },
    { "info_player_intermission",  SP_info_player_intermission  },
    { "info_null",                 SP_info_null                 },
    { "info_notnull",              SP_info_notnull              }, // use target_position instead
    { "info_notnull_big",          SP_info_notnull              }, // use target_position instead
    { "info_camp",                 SP_info_camp                 },

    // debris test
    { "func_debris",               SP_func_debris               },
    // ===================

    { "func_plat",                 SP_func_plat                 },
    { "func_button",               SP_func_button               },
    { "func_explosive",            SP_func_explosive            },
    { "func_door",                 SP_func_door                 },
    { "func_static",               SP_func_static               },
    { "func_leaky",                SP_func_leaky                },
    { "func_rotating",             SP_func_rotating             },
    { "func_bobbing",              SP_func_bobbing              },
    { "func_pendulum",             SP_func_pendulum             },
    { "func_train",                SP_func_train                },
    { "func_group",                SP_info_null                 },

    { "func_train_rotating",       SP_func_train_rotating       },
    { "func_secret",               SP_func_secret               },

    { "func_door_rotating",        SP_func_door_rotating        },

    { "func_timer",                SP_func_timer                }, // rename trigger_timer?

    { "func_invisible_user",       SP_func_invisible_user       },

    // Triggers are brush objects that cause an effect when contacted
    // by a living player, usually involving firing targets.
    // While almost everything could be done with
    // a single trigger class and different targets, triggered effects
    // could not be client side predicted (push and teleport).
    { "trigger_always",            SP_trigger_always            },
    { "trigger_multiple",          SP_trigger_multiple          },
    { "trigger_push",              SP_trigger_push              },
    { "trigger_teleport",          SP_trigger_teleport          },
    { "trigger_hurt",              SP_trigger_hurt              },

    // Wolf triggers
    { "trigger_concussive_dust",   SP_trigger_concussive_dust   },
    { "trigger_once",              SP_trigger_once              },

    { "trigger_heal",              SP_trigger_heal              },
    { "trigger_ammo",              SP_trigger_ammo              },

    // adding the model things to go with the triggers
    { "misc_cabinet_health",       SP_misc_cabinet_health       },
    { "misc_cabinet_supply",       SP_misc_cabinet_supply       },

    // targets perform no action by themselves, but must be triggered
    // by another entity
    { "target_give",               SP_target_give               },
    { "target_remove_powerups",    SP_target_remove_powerups    },
    { "target_delay",              SP_target_delay              },
    { "target_speaker",            SP_target_speaker            },
    { "target_print",              SP_target_print              },
    { "target_laser",              SP_target_laser              },
    { "target_score",              SP_target_score              },
    { "target_teleporter",         SP_target_teleporter         },
    { "target_relay",              SP_target_relay              },
    { "target_kill",               SP_target_kill               },
    { "target_position",           SP_target_position           },
    { "target_location",           SP_target_location           },
    { "target_push",               SP_target_push               },
    { "target_script_trigger",     SP_target_script_trigger     },

    // Wolf targets
    { "target_alarm",              SP_target_alarm              },
    { "target_counter",            SP_target_counter            },
    { "target_lock",               SP_target_lock               },
    { "target_effect",             SP_target_effect             },
    { "target_fog",                SP_target_fog                },

    { "target_rumble",             SP_target_rumble             },

    { "light",                     SP_light                     },

    { "lightJunior",               SP_lightJunior               },

    { "path_corner",               SP_path_corner               },
    { "path_corner_2",             SP_path_corner_2             },

    { "info_train_spline_main",    SP_info_train_spline_main    },
    { "info_train_spline_control", SP_path_corner_2             },
    { "info_limbo_camera",         SP_info_limbo_camera         },

    { "misc_teleporter_dest",      SP_misc_teleporter_dest      },
    { "misc_model",                SP_misc_model                },
    { "misc_gamemodel",            SP_misc_gamemodel            },
    { "misc_portal_surface",       SP_misc_portal_surface       },
    { "misc_portal_camera",        SP_misc_portal_camera        },

    { "misc_commandmap_marker",    SP_misc_commandmap_marker    },

    { "misc_vis_dummy",            SP_misc_vis_dummy            },
    { "misc_vis_dummy_multiple",   SP_misc_vis_dummy_multiple   },
    { "misc_light_surface",        SP_misc_light_surface        },

    { "misc_mg42",                 SP_mg42                      },
    { "misc_aagun",                SP_aagun                     },

    { "misc_flak",                 SP_misc_flak                 },
    { "misc_firetrails",           SP_misc_firetrails           },

    { "shooter_rocket",            SP_shooter_rocket            },
    { "shooter_grenade",           SP_shooter_grenade           },

    { "shooter_mortar",            SP_shooter_mortar            },
    { "alarm_box",                 SP_alarm_box                 },

    { "team_CTF_redspawn",         SP_team_CTF_redspawn         },
    { "team_CTF_bluespawn",        SP_team_CTF_bluespawn        },

    { "team_WOLF_objective",       SP_team_WOLF_objective       },

    { "team_WOLF_checkpoint",      SP_team_WOLF_checkpoint      },

    { "target_smoke",              SP_target_smoke              },

    { "misc_spawner",              SP_misc_spawner              },

    { "props_box_32",              SP_props_box_32              },
    { "props_box_48",              SP_props_box_48              },
    { "props_box_64",              SP_props_box_64              },

    { "props_smokedust",           SP_SmokeDust                 },
    { "props_dust",                SP_Dust                      },
    { "props_sparks",              SP_props_sparks              },
    { "props_gunsparks",           SP_props_gunsparks           },

    { "props_bench",               SP_Props_Bench               },
    { "props_radio",               SP_Props_Radio               },
    { "props_chair",               SP_Props_Chair               },
    { "props_chair_hiback",        SP_Props_ChairHiback         },
    { "props_chair_side",          SP_Props_ChairSide           },
    { "props_chair_chat",          SP_Props_ChairChat           },
    { "props_chair_chatarm",       SP_Props_ChairChatArm        },
    { "props_damageinflictor",     SP_Props_DamageInflictor     },
    { "props_locker_tall",         SP_Props_Locker_Tall         },
    { "props_desklamp",            SP_Props_Desklamp            },
    { "props_flamebarrel",         SP_Props_Flamebarrel         },
    { "props_crate_64",            SP_crate_64                  },
    { "props_flippy_table",        SP_Props_Flipping_Table      },
    { "props_crate_32",            SP_crate_32                  },
    { "props_crate_32x64",         SP_Props_Crate32x64          },
    { "props_58x112tablew",        SP_Props_58x112tablew        },
    { "props_radioSEVEN",          SP_Props_RadioSEVEN          },
    { "props_snowGenerator",       SP_props_snowGenerator       },

    { "props_decoration",          SP_props_decoration          },
    { "props_decorBRUSH",          SP_props_decorBRUSH          },
    { "props_statue",              SP_props_statue              },
    { "props_statueBRUSH",         SP_props_statueBRUSH         },
    { "props_skyportal",           SP_skyportal                 },
    { "props_footlocker",          SP_props_footlocker          },
    { "props_flamethrower",        SP_props_flamethrower        },
    { "props_decoration_scale",    SP_props_decor_Scale         },

    { "dlight",                    SP_dlight                    },

    { "corona",                    SP_corona                    },

    { "trigger_flagonly",          SP_trigger_flagonly          },
    { "trigger_flagonly_multiple", SP_trigger_flagonly_multiple },

    { "trigger_objective_info",    SP_trigger_objective_info    },

    // scripting
    { "script_model_med",          SP_script_model_med          },
    { "script_mover",              SP_script_mover              },
    { "script_multiplayer",        SP_script_multiplayer        },

    { "func_constructible",        SP_func_constructible        },
    { "func_brushmodel",           SP_func_brushmodel           },
    { "misc_beam",                 SP_misc_beam                 },
    { "misc_constructiblemarker",  SP_misc_constructiblemarker  },
    { "target_explosion",          SP_target_explosion          },
    { "misc_landmine",             SP_misc_landmine             },

    { "func_fakebrush",            SP_func_fakebrush            },