first commit
1566
tb/games/Daikatana/Common.fgd
Normal file
117
tb/games/Daikatana/Episode 1.fgd
Normal file
@@ -0,0 +1,117 @@
|
||||
//
|
||||
// Daikatana game definition file (.fgd)
|
||||
// Episode 1 entities
|
||||
// for Trenchbroom
|
||||
// last update: 6 Oct, 2018
|
||||
// Version: 1
|
||||
//
|
||||
// written by Dekonega <dekonega(at)windowslive.com>
|
||||
// email me with improvements and suggestions
|
||||
//
|
||||
|
||||
@include "Common.fgd"
|
||||
|
||||
|
||||
//
|
||||
// Items (Episode 1)
|
||||
//
|
||||
@PointClass base(Appearflags, KeyFlags) color(0 0.5 0.8) size(-16 -16 -16, 16 16 16) model({ "path": "models/e1/a1_clcrd.dkm" }) = item_keycard_cell : "E1 prison cell key" []
|
||||
@PointClass base(Appearflags, Sidekickflags) color(0 0.5 0.8) size(-16 -16 -16, 16 16 16) model({ "path": "models/e1/a1_ar2.dkm" }) = item_chromatic_armor : "Chromatic armor" []
|
||||
@PointClass base(Appearflags, Sidekickflags) color(0 0.5 0.8) size(-16 -16 -16, 16 16 16) model({ "path": "models/e1/a1_ar1.dkm" }) = item_plasteel_armor : "Plasteel armor" []
|
||||
|
||||
|
||||
//
|
||||
// Monsters (Episode 1)
|
||||
//
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-16 -16 -24, 16 16 8) model({ "path": "models/e1/m_croco.dkm" }) = monster_crox : "Crox" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-16 -16 -24, 16 16 40) model({ "path": "models/e1/m_mwsurgeon.dkm" }) = monster_surgeon : "Surgeon" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-16 -16 -24, 16 16 40) model({ "path": "models/e1/m_mwguard.dkm" }) = monster_mishimaguard : "Mishima guard" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-16 -16 -24, 16 16 32) model({ "path": "models/e1/m_MWFaty.dkm" }) = monster_fatworker : "Fat worker" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-16 -16 -24, 16 16 40) model({ "path": "models/e1/m_MWSkny.dkm" }) = monster_skinnyworker : "Skinny worker" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-12 -12 0, 12 12 24) model({ "path": "models/e1/m_proto.dkm" }) = monster_protopod : "Protopod" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-24 -24 -16, 24 24 32) model({ "path": "models/e1/m_dsphere.dkm" }) = monster_deathsphere : "Deathsphere" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-24 -24 -24, 24 24 24) model({ "path": "models/e1/m_cambot.dkm" }) = monster_cambot : "Cambot" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-40 -40 -40, 40 40 48) model({ "path": "models/e1/m_ragemaster.dkm" }) = monster_ragemaster : "Ragemaster" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-24 -24 -16, 24 24 24) model({ "path": "models/e1/m_bboar.dkm" }) = monster_battleboar : "Battle boar" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-16 -16 -24, 16 16 36) model({ "path": "models/e1/m_cryotech.dkm" }) = monster_cryotech : "Cryotech" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-24 -24 -24, 24 24 32) model({ "path": "models/e1/m_psyclaw.dkm" }) = monster_psyclaw : "Psyclaw" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-16 -16 -8, 16 16 8) model({ "path": "models/e1/m_trakatak.dkm" }) = monster_lasergat : "Lasergat" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-32 -32 -40, 32 32 48) model({ "path": "models/e1/m_inmater.dkm" }) = monster_inmater : "Inmater" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-16 -16 -24, 16 16 32) model({ "path": "models/e1/m_prizb.dkm" }) = monster_prisonerb : "Prisoner B" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-16 -16 -24, 16 16 32) model({ "path": "models/e1/m_priza.dkm" }) = monster_prisoner : "Prisoner" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-40 -40 -40, 40 40 56) model({ "path": "models/e1/m_sludgeminion.dkm" }) = monster_sludgeminion : "Sludgeminion" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-16 -16 -8, 16 16 16) model({ "path": "models/e1/m_vermin.dkm" }) = monster_venomvermin : "Venomvermin" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-40 -40 0, 40 40 96) model({ "path": "models/e1/m_tskeet.dkm" }) = monster_thunderskeet : "Thunderskeet" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-16 -16 -8, 16 16 8) model({ "path": "models/e1/m_skeeter.dkm" }) = monster_slaughterskeet : "Roboskeet" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-8 -8 -16, 8 8 16) model({ "path": "models/e1/m_frog.dkm" }) = monster_froginator : "Froginator" []
|
||||
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-16 -16 -16, 16 16 16) model({ "path": "models/e1/a1_rockgun.dkm" }) = monster_rockgat : "Rockgat"
|
||||
[
|
||||
fire_rate(float): "secs between firing default = 0.20" : 0.20
|
||||
range(integer): "attack radius default = 512" : 512
|
||||
basedmg(integer): "dmg done with a hit"
|
||||
rnddmg(integer): "random damage amount added on"
|
||||
health(integer): "health value"
|
||||
]
|
||||
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-8 -8 -8, 8 8 8) model({ "path": "models/global/e_flare.sp2" }) = monster_firefly : "Firefly"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1: "YELLOW" : 0
|
||||
2: "GREEN" : 0
|
||||
4: "BLUE" : 0
|
||||
8: "WHITE" : 0
|
||||
16: "RED" : 0
|
||||
]
|
||||
|
||||
count(integer): "Number of fireflies(Max=10)"
|
||||
distance(integer): "How far the fireflies will fly from point of placement(Max=200)"
|
||||
velocity(integer): "How fast the fireflies will move(Max=200)"
|
||||
scale(float): "How big the fireflies will be<float value>(1 = normal, 0.5 = half, 2 = twice as big)"
|
||||
delta_alpha(float): "frequency of Alpha blending change. <scalar>"
|
||||
alpha_level(float): "Initial Setting for Alpha blending change.<scalar>"
|
||||
]
|
||||
|
||||
|
||||
//
|
||||
// Decorations (Episode 1)
|
||||
//
|
||||
@PointClass base(Appearflags, DecorationFlags) color(1 0 0) size(-8 -8 -32, 8 8 32) = deco_e1 : "Episode 1 decoration"
|
||||
[
|
||||
damage(integer): "damage applied when exploding. Default is 15." : 15
|
||||
scale(float): "Scale of deco. Default 1.0." : 1.0
|
||||
model(string): "choose model # -- see list."
|
||||
mass(float): "*optional* - including this overrides the mass value in decoinfo.txt"
|
||||
frame(integer): "allows you to specify the starting frame for the model."
|
||||
animseq(integer): "allows you to specify an animation sequence for the model"
|
||||
x_speed(integer): "speed to rotate along x axis in degrees per second"
|
||||
y_speed(integer): "speed to rotate along y axis in degrees per second"
|
||||
z_speed(integer): "speed to rotate along z axis in degrees per second"
|
||||
alpha(float): "range 0.0-1.0. Only used if TRANSLUCENT is flagged"
|
||||
spawnname(string): "classname of entity to throw out upon death"
|
||||
movetype(string): "none, toss, bounce, float, overrides value in e1decoinfo.csv" : "none"
|
||||
]
|
||||
|
||||
|
||||
//
|
||||
// Weapons (Episode 1)
|
||||
//
|
||||
@PointClass base(Weapons) model({ "path": ":models/e1/a_tazer.dkm" }) = weapon_disruptor : "Disruptor Glove" []
|
||||
@PointClass base(Weapons) model({ "path": ":models/e1/a_ion.dkm" }) = weapon_ionblaster : "Ion Blaster - ION blaster thingy" []
|
||||
@PointClass base(Weapons) model({ "path": ":models/e1/a_shot.dkm" }) = weapon_shotcycler : "Shotcycler-6" []
|
||||
@PointClass base(Weapons) model({ "path": ":models/e1/a_c4.dkm" }) = weapon_c4viz : "C4 Vizatergo" []
|
||||
@PointClass base(Weapons) model({ "path": ":models/e1/a_swindr.dkm" }) = weapon_sidewinder : "Sidewinder" []
|
||||
@PointClass base(Weapons) model({ "path": ":models/e1/a_shokwv.dkm" }) = weapon_shockwave : "Shockwave" []
|
||||
@PointClass base(Weapons) model({ "path": ":models/e1/a_gashand.dkm" }) = weapon_gashands : "Ultimate Gashands" []
|
||||
@PointClass base(Weapons) model({ "path": ":models/global/a_daikatana.dkm" }) = weapon_daikatana : "Daikatana" []
|
||||
|
||||
|
||||
//
|
||||
// Ammo (Episode 1)
|
||||
//
|
||||
@PointClass base(Ammo) model({ "path": ":models/e1/wa_ion.dkm" }) = ammo_ionpack : "50 ion cells." []
|
||||
@PointClass base(Ammo) model({ "path": ":models/e1/wa_c4.dkm" }) = ammo_c4 : "8 C4 Modules." []
|
||||
@PointClass base(Ammo) model({ "path": ":models/e1/wa_shot6.dkm" }) = ammo_shells : "24 shotcycler shells." []
|
||||
@PointClass base(Ammo) model({ "path": ":models/e1/wa_swindr.dkm" }) = ammo_rockets : "18 rockets." []
|
||||
@PointClass base(Ammo) model({ "path": ":models/e1/wa_shokwv.dkm" }) = ammo_shocksphere : "2 ShockSpheres." []
|
||||
84
tb/games/Daikatana/Episode 2.fgd
Normal file
@@ -0,0 +1,84 @@
|
||||
//
|
||||
// Daikatana game definition file (.fgd)
|
||||
// Episode 2 entities
|
||||
// for Trenchbroom
|
||||
// last update: 6 Oct, 2018
|
||||
// Version: 1
|
||||
//
|
||||
// written by Dekonega <dekonega(at)windowslive.com>
|
||||
// email me with improvements and suggestions
|
||||
//
|
||||
|
||||
@include "Common.fgd"
|
||||
|
||||
|
||||
//
|
||||
// Items (Episode 2)
|
||||
//
|
||||
@PointClass base(Appearflags, Sidekickflags) color(0 0.5 0.8) size(-16 -16 -16, 16 16 16) model({ "path": "models/e2/a2_ar2.dkm" }) = item_gold_armor : "Gold armor" []
|
||||
@PointClass base(Appearflags, Sidekickflags) color(0 0.5 0.8) size(-16 -16 -16, 16 16 16) model({ "path": "models/e2/a2_ar1.dkm" }) = item_silver_armor : "Silver armor" []
|
||||
@PointClass base(Appearflags, KeyFlags) color(0 0.5 0.8) size(-16 -16 -16, 16 16 16) model({ "path": "models/e2/c_runes.dkm" }) = item_rune_s : "Rune S" []
|
||||
@PointClass base(Appearflags, KeyFlags) color(0 0.5 0.8) size(-16 -16 -16, 16 16 16) model({ "path": "models/e2/c_runei.dkm" }) = item_rune_i : "Rune I" []
|
||||
@PointClass base(Appearflags, KeyFlags) color(0 0.5 0.8) size(-16 -16 -16, 16 16 16) model({ "path": "models/e2/c_runeg.dkm" }) = item_rune_g : "Rune G" []
|
||||
@PointClass base(Appearflags, KeyFlags) color(0 0.5 0.8) size(-16 -16 -16, 16 16 16) model({ "path": "models/e2/c_runee.dkm" }) = item_rune_e : "Rune E" []
|
||||
@PointClass base(Appearflags, KeyFlags) color(0 0.5 0.8) size(-16 -16 -16, 16 16 16) model({ "path": "models/e2/c_runea.dkm" }) = item_rune_a : "Rune A" []
|
||||
@PointClass base(Appearflags, KeyFlags) color(0 0.5 0.8) size(-16 -16 -16, 16 16 16) model({ "path": "models/e2/a2_horn.dkm" }) = item_horn : "Horn" []
|
||||
@PointClass base(Appearflags, KeyFlags) color(0 0.5 0.8) size(-16 -16 -16, 16 16 16) model({ "path": "models/e2/a2_drachma.dkm" }) = item_drachma : "Drachma" []
|
||||
@PointClass base(Appearflags, AntidoteFlags) color(0 0.5 0.8) size(-16 -16 -16, 16 16 16) model({ "path": "models/global/a_antidote.dkm" }) = item_antidote : "Cures poisonous wound." []
|
||||
|
||||
|
||||
//
|
||||
// Monsters (Episode 2)
|
||||
//
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-32 -32 -24, 32 32 64) model({ "path": "models/e2/m_cyclops.dkm" }) = monster_cyclops : "Cyclops" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-32 -32 -24, 32 32 40) model({ "path": "models/e2/m_medusa.dkm" }) = monster_medusa : "Medusa" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-16 -16 -24, 16 16 32) model({ "path": "models/e2/m_centurion.dkm" }) = monster_centurion : "Centurion" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-16 -16 -24, 16 16 32) model({ "path": "models/e2/m_thief.dkm" }) = monster_thief : "Thief" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-16 -16 -24, 16 16 32) model({ "path": "models/e2/m_cerberus.dkm" }) = monster_cerberus : "Cerberus" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-24 -24 -24, 24 24 56) model({ "path": "models/e2/m_column.dkm" }) = monster_column : "Column" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-20 -20 -24, 20 20 40) model({ "path": "models/e2/m_satyr.dkm" }) = monster_satyr : "Satyr" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-20 -20 -24, 20 20 32) model({ "path": "models/e2/m_ferryman.dkm" }) = monster_ferryman : "Ferryman" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-20 -20 -24, 20 20 40) model({ "path": "models/e2/m_harpy.dkm" }) = monster_harpy : "Harpy" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-40 -40 -24, 40 40 64) model({ "path": "models/e2/m_griffon.dkm" }) = monster_griffon : "Griffon" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-8 -8 -8, 8 8 8) model({ "path": "models/e2/m_spider.dkm" }) = monster_smallspider : "Small spider" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-32 -32 -8, 32 32 24) model({ "path": "models/e2/m_spider.dkm" }) = monster_spider : "Spider" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-16 -16 -24, 16 16 32) model({ "path": "models/e2/m_skeleton.dkm" }) = monster_skeleton : "Skeleton" []
|
||||
|
||||
|
||||
//
|
||||
// Decorations (Episode 2)
|
||||
//
|
||||
@PointClass base(Appearflags, DecorationFlags) color(1 0 0) size(-8 -8 -32, 8 8 32) = deco_e2 : "Episode 2 decoration"
|
||||
[
|
||||
damage(integer): "damage applied when exploding. Default is 15." : 15
|
||||
scale(float): "Scale of deco. Default 1.0." : 1.0
|
||||
model(string): "choose model # -- see list."
|
||||
mass(float): "*optional* - including this overrides the mass value in decoinfo.txt"
|
||||
frame(integer): "allows you to specify the starting frame for the model."
|
||||
animseq(integer): "allows you to specify an animation sequence for the model"
|
||||
x_speed(integer): "speed to rotate along x axis in degrees per second"
|
||||
y_speed(integer): "speed to rotate along y axis in degrees per second"
|
||||
z_speed(integer): "speed to rotate along z axis in degrees per second"
|
||||
alpha(float): "range 0.0-1.0. Only used if TRANSLUCENT is flagged"
|
||||
spawnname(string): "classname of entity to throw out upon death"
|
||||
movetype(string): "none, toss, bounce, float, overrides value in e1decoinfo.csv" : "none"
|
||||
]
|
||||
|
||||
|
||||
//
|
||||
// Weapons (Episode 2)
|
||||
//
|
||||
@PointClass base(Weapons) model({ "path": ":models/e2/a_disk.dkm" }) = weapon_discus : "Discus" []
|
||||
@PointClass base(Weapons) model({ "path": ":models/e2/a_venom.dkm" }) = weapon_venomous : "Venomous" []
|
||||
@PointClass base(Weapons) model({ "path": ":models/e2/a_sflare.dkm" }) = weapon_sunflare : "Sunflare" []
|
||||
@PointClass base(Weapons) model({ "path": ":models/e2/a_hammer.dkm" }) = weapon_hammer : "Hades Hammer" []
|
||||
@PointClass base(Weapons) model({ "path": ":models/e2/a_tri.dkm" }) = weapon_trident : "Trident" []
|
||||
@PointClass base(Weapons) model({ "path": ":models/e2/a_zeus.dkm" }) = weapon_zeus : "Eye of Zeus" []
|
||||
|
||||
|
||||
//
|
||||
// Ammo (Episode 2)
|
||||
//
|
||||
@PointClass base(Ammo) model({ "path": ":models/e2/wa_trident.dkm" }) = ammo_tritips : "30 trident tips." []
|
||||
@PointClass base(Ammo) model({ "path": ":models/e2/wa_venom.dkm" }) = ammo_venomous : "25 cobra venom for Venomous." []
|
||||
@PointClass base(Ammo) model({ "path": ":models/e2/wa_zeus.dkm" }) = ammo_zeus : "1 mystic eye for Zeus." []
|
||||
106
tb/games/Daikatana/Episode 3.fgd
Normal file
@@ -0,0 +1,106 @@
|
||||
//
|
||||
// Daikatana game definition file (.fgd)
|
||||
// Episode 3 entities
|
||||
// for Trenchbroom
|
||||
// last update: 6 Oct, 2018
|
||||
// Version: 1
|
||||
//
|
||||
// written by Dekonega <dekonega(at)windowslive.com>
|
||||
// email me with improvements and suggestions
|
||||
//
|
||||
|
||||
@include "Common.fgd"
|
||||
|
||||
|
||||
//
|
||||
// Items (Episode 3)
|
||||
//
|
||||
@PointClass base(Appearflags, Sidekickflags) color(0 0.5 0.8) size(-16 -16 -16, 16 16 16) model({ "path": "models/e3/a3_ar2.dkm" }) = item_black_adamant_armor : "Black adamant armor" []
|
||||
@PointClass base(Appearflags, Sidekickflags) color(0 0.5 0.8) size(-16 -16 -16, 16 16 16) model({ "path": "models/e3/a3_ar1.dkm" }) = item_chainmail_armor : "Chainmail armor" []
|
||||
@PointClass base(Appearflags, KeyFlags) color(0 0.5 0.8) size(-16 -16 -16, 16 16 16) model({ "path": "models/e3/a_tri.dkm" }) = item_trigon_keystone : "Trigon keystone" []
|
||||
@PointClass base(Appearflags, KeyFlags) color(0 0.5 0.8) size(-16 -16 -16, 16 16 16) model({ "path": "models/e3/a_quad.dkm" }) = item_quad_keystone : "Quad keystone" []
|
||||
@PointClass base(Appearflags, KeyFlags) color(0 0.5 0.8) size(-16 -16 -16, 16 16 16) model({ "path": "models/e3/a_hex.dkm" }) = item_hex_keystone : "Hex keystone" []
|
||||
@PointClass base(Appearflags, Sidekickflags, KeyFlags) color(0 0.5 0.8) size(-16 -16 0, 16 16 40) model({ "path": "models/e3/a3_bookw.dkm" }) = item_spellbook : "E3 Wyndrax spell book" []
|
||||
@PointClass base(Appearflags, KeyFlags) color(0 0.5 0.8) size(-16 -16 0, 16 16 40) model({ "path": "models/e3/a3_ltkey.dkm" }) = item_wyndrax_key : "E3 wyndrax key" []
|
||||
@PointClass base(Appearflags, KeyFlags) color(0 0.5 0.8) size(-16 -16 0, 16 16 40) model({ "path": "models/e3/a3_crkey.dkm" }) = item_crypt_key : "E3 crypt key" []
|
||||
@PointClass base(Appearflags) color(0 0.5 0.8) size(-16 -16 -16, 16 16 16) model({ "path": "models/e3/a_ringlig.dkm" }) = item_ring_of_lightning : "Ring of lightning" []
|
||||
@PointClass base(Appearflags) color(0 0.5 0.8) size(-16 -16 -16, 16 16 16) model({ "path": "models/e3/a_ringund.dkm" }) = item_ring_of_undead : "Ring of undead" []
|
||||
@PointClass base(Appearflags) color(0 0.5 0.8) size(-16 -16 -16, 16 16 16) model({ "path": "models/e3/a_ring_fire.dkm" }) = item_ring_of_fire : "Ring of fire" []
|
||||
@PointClass base(Appearflags) color(0 0.5 0.8) size(-16 -16 0, 16 16 32) model({ "path": "models/e3/a_chest.dkm" }) = item_wood_chest : "Wooden chest" []
|
||||
@PointClass base(Appearflags, Sidekickflags) color(0 0.5 0.8) size(-16 -16 0, 16 16 32) model({ "path": "models/e3/a_blackchest.dkm" }) = item_black_chest : "Black chest" []
|
||||
@PointClass base(Appearflags, PurifierShard) color(0 0.5 0.8) size(-16 -16 -16, 16 16 16) model({ "path": "models/e3/purifier_3.dkm" }) = item_purifier_shard3 : "Purifier shard 3" []
|
||||
@PointClass base(Appearflags, PurifierShard) color(0 0.5 0.8) size(-16 -16 -16, 16 16 16) model({ "path": "models/e3/purifier_2.dkm" }) = item_purifier_shard2_5 : "Purifier shard 2.5" []
|
||||
@PointClass base(Appearflags, PurifierShard) color(0 0.5 0.8) size(-16 -16 -16, 16 16 16) model({ "path": "models/e3/purifier_2.dkm" }) = item_purifier_shard2_4 : "Purifier shard 2.4" []
|
||||
@PointClass base(Appearflags, PurifierShard) color(0 0.5 0.8) size(-16 -16 -16, 16 16 16) model({ "path": "models/e3/purifier_2.dkm" }) = item_purifier_shard2_3 : "Purifier shard 2.3" []
|
||||
@PointClass base(Appearflags, PurifierShard) color(0 0.5 0.8) size(-16 -16 -16, 16 16 16) model({ "path": "models/e3/purifier_2.dkm" }) = item_purifier_shard2_2 : "Purifier shard 2.2" []
|
||||
@PointClass base(Appearflags, PurifierShard) color(0 0.5 0.8) size(-16 -16 -16, 16 16 16) model({ "path": "models/e3/purifier_2.dkm" }) = item_purifier_shard2_1 : "Purifier shard 2.1" []
|
||||
@PointClass base(Appearflags, PurifierShard) color(0 0.5 0.8) size(-16 -16 -16, 16 16 16) model({ "path": "models/e3/purifier_1.dkm" }) = item_purifier_shard1 : "Purifier shard 1" []
|
||||
|
||||
|
||||
//
|
||||
// Monsters (Episode 3)
|
||||
//
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-16 -16 -24, 16 16 36) model({ "path": "models/e3/m_wyndrax.dkm" }) = monster_wyndrax : "Wyndrax" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-20 -20 -24, 20 20 40) model({ "path": "models/e3/m_stavros.dkm" }) = monster_stavros : "Stavros" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-20 -20 -24, 20 20 36) model({ "path": "models/e3/m_nharre.dkm" }) = monster_nharre : "Nharre" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-16 -16 -24, 16 16 32) model({ "path": "models/e3/m_knight2.dkm" }) = monster_knight2 : "Blue Knight" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-16 -16 -24, 16 16 32) model({ "path": "models/e3/m_knight1.dkm" }) = monster_knight1 : "Red Knight" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-20 -20 -24, 20 20 40) model({ "path": "models/e3/m_gharroth.dkm" }) = monster_garroth : "King Gharroth" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-40 -40 -24, 40 40 96) model({ "path": "models/e3/m_dragon.dkm" }) = monster_dragon : "Dragon" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-20 -20 -24, 20 20 16) model({ "path": "models/e3/m_dwarf.dkm" }) = monster_dwarf : "Dwarf" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-16 -16 -24, 16 16 40) model({ "path": "models/e3/m_fletcher.dkm" }) = monster_fletcher : "Fletcher" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-20 -20 -24, 20 20 32) model({ "path": "models/e3/m_lycanthir.dkm" }) = monster_lycanthir : "Lycanthir" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-12 -12 -8, 12 12 8) model({ "path": "models/e3/m_doombat.dkm" }) = monster_doombat : "Doombat" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-16 -16 -24, 16 16 56) model({ "path": "models/e3/m_priest.dkm" }) = monster_priest : "Priest" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-16 -16 -24, 16 16 32) model({ "path": "models/e3/m_buboid.dkm" }) = monster_buboid : "Buboid" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-12 -12 -8, 12 12 8) model({ "path": "models/e3/m_rotworm.dkm" }) = monster_rotworm : "Rotworm" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-16 -16 -16, 16 16 8) model({ "path": "models/e3/m_prat.dkm" }) = monster_plague_rat : "Plague Rat - I broke you!" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-8 -8 -8, 8 8 8) model({ "path": "models/global/e_sflblue.sp2" }) = monster_wisp : "Wisp"
|
||||
[
|
||||
count(integer): "Number of wisps(Max=10)"
|
||||
distance(integer): "How far the wisps will fly from point of placement(Max=200)"
|
||||
velocity(integer): "How fast the wisps will move(Max=200)"
|
||||
scale(float): "How big the wisps will be(1 = normal, 0.5 = half, 2 = twice as big)"
|
||||
delta_alpha(integer): "frequency of Alpha blending change(0-100%) where 0% means no change"
|
||||
alpha_level(integer): "Initial Setting for Alpha blending change(1-100%)"
|
||||
]
|
||||
|
||||
|
||||
//
|
||||
// Decorations (Episode 3)
|
||||
//
|
||||
@PointClass base(Appearflags, DecorationFlags) color(1 0 0) size(-8 -8 -32, 8 8 32) = deco_e3 : "Episode 3 decoration"
|
||||
[
|
||||
damage(integer): "damage applied when exploding. Default is 15." : 15
|
||||
scale(float): "Scale of deco. Default 1.0." : 1.0
|
||||
model(string): "choose model # -- see list."
|
||||
mass(float): "*optional* - including this overrides the mass value in decoinfo.txt"
|
||||
frame(integer): "allows you to specify the starting frame for the model."
|
||||
animseq(integer): "allows you to specify an animation sequence for the model"
|
||||
x_speed(integer): "speed to rotate along x axis in degrees per second"
|
||||
y_speed(integer): "speed to rotate along y axis in degrees per second"
|
||||
z_speed(integer): "speed to rotate along z axis in degrees per second"
|
||||
alpha(float): "range 0.0-1.0. Only used if TRANSLUCENT is flagged"
|
||||
spawnname(string): "classname of entity to throw out upon death"
|
||||
movetype(string): "none, toss, bounce, float, overrides value in e1decoinfo.csv" : "none"
|
||||
]
|
||||
|
||||
|
||||
//
|
||||
// Weapons (Episode 3)
|
||||
//
|
||||
@PointClass base(Weapons) model({ "path": ":models/e3/a_claw.dkm" }) = weapon_silverclaw : "Silverclaw" []
|
||||
@PointClass base(Weapons) model({ "path": ":models/e3/a_bolter.dkm" }) = weapon_bolter : "Bolter" []
|
||||
@PointClass base(Weapons) model({ "path": ":models/e3/a_bal.dkm" }) = weapon_ballista : "Ballista" []
|
||||
@PointClass base(Weapons) model({ "path": ":models/e3/a_stav.dkm" }) = weapon_stavros : "Stave of Stavros" []
|
||||
@PointClass base(Weapons) model({ "path": ":models/e3/a_wyndrx.dkm" }) = weapon_wyndrax : "Wyndrax's Wisp" []
|
||||
@PointClass base(Weapons) model({ "path": ":models/e3/a_nmare.dkm" }) = weapon_nightmare : "Nharre's Nightmare" []
|
||||
|
||||
|
||||
//
|
||||
// Ammo (Episode 3)
|
||||
//
|
||||
@PointClass base(Ammo) model({ "path": ":models/e3/wa_bolt.dkm" }) = ammo_bolts : "50 crossbow bolts." []
|
||||
@PointClass base(Ammo) model({ "path": ":models/e3/wa_stav.dkm" }) = ammo_stavros : "2 lava rocks." []
|
||||
@PointClass base(Ammo) model({ "path": ":models/e3/wa_bal.dkm" }) = ammo_ballista : "10 Ballista logs." []
|
||||
@PointClass base(Ammo) model({ "path": ":models/e3/we_wisp.dkm" }) = ammo_wisp : "Wyndrax ammo." []
|
||||
86
tb/games/Daikatana/Episode 4.fgd
Normal file
@@ -0,0 +1,86 @@
|
||||
//
|
||||
// Daikatana game definition file (.fgd)
|
||||
// Episode 4 entities
|
||||
// for Trenchbroom
|
||||
// last update: 6 Oct, 2018
|
||||
// Version: 1
|
||||
//
|
||||
// written by Dekonega <dekonega(at)windowslive.com>
|
||||
// email me with improvements and suggestions
|
||||
//
|
||||
|
||||
@include "Common.fgd"
|
||||
|
||||
|
||||
//
|
||||
// Items (Episode 4)
|
||||
//
|
||||
@PointClass base(Appearflags, Sidekickflags) color(0 0.5 0.8) size(-16 -16 -16, 16 16 16) model({ "path": "models/e4/a4_ar2.dkm" }) = item_ebonite_armor : "Ebonite armor" []
|
||||
@PointClass base(Appearflags, Sidekickflags) color(0 0.5 0.8) size(-16 -16 -16, 16 16 16) model({ "path": "models/e4/a4_ar1.dkm" }) = item_kevlar_armor : "Kevlar armor" []
|
||||
@PointClass base(Appearflags, KeyFlags) color(0 0.5 0.8) size(-16 -16 -16, 16 16 16) model({ "path": "models/e4/a4_clcgr.dkm" }) = item_control_card_green : "Green control card" []
|
||||
@PointClass base(Appearflags, KeyFlags) color(0 0.5 0.8) size(-16 -16 -16, 16 16 16) model({ "path": "models/e4/a4_clcyl.dkm" }) = item_control_card_yellow : "Yellow control card" []
|
||||
@PointClass base(Appearflags, KeyFlags) color(0 0.5 0.8) size(-16 -16 -16, 16 16 16) model({ "path": "models/e4/a4_clcbl.dkm" }) = item_control_card_blue : "Blue control card" []
|
||||
@PointClass base(Appearflags) color(0 0.5 0.8) size(-16 -16 -24, 16 16 8) model({ "path": "models/e4/a_saltp.dkm" }) = item_saltpeter : "Saltpeter for e4m1 explosives." []
|
||||
@PointClass base(Appearflags) color(0 0.5 0.8) size(-16 -16 -24, 16 16 8) model({ "path": "models/e4/a_charcoal.dkm" }) = item_charcoal : "Charcoal for e4m1 explosives." []
|
||||
@PointClass base(Appearflags) color(0 0.5 0.8) size(-16 -16 -24, 16 16 8) model({ "path": "models/e4/a_sulphur.dkm" }) = item_sulphur : "Sulphur pouch for e4m1 explosives." []
|
||||
@PointClass base(Appearflags) color(0 0.5 0.8) size(-16 -16 -24, 16 16 8) model({ "path": "models/e4/a_bottle.dkm" }) = item_bottle : "Bottle for e4m1 explosives." []
|
||||
@PointClass base(Appearflags) color(0 0.5 0.8) size(-16 -16 -16, 16 16 16) model({ "path": "models/e4/a_envsuit.dkm" }) = item_envirosuit : "60 seconds of air and protection from harmful liquids." []
|
||||
|
||||
|
||||
//
|
||||
// Monsters (Episode 4)
|
||||
//
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-16 -16 -24, 16 16 32) model({ "path": "models/e4/m_kage.dkm" }) = monster_kage : "Kage Mishima" []
|
||||
@PointClass base(AppearFlags, MonsterFlags) color(1 0.5 0) size(-16 -16 -8, 16 16 16) model({ "path": "models/e4/m_shark.dkm" }) = monster_shark : "Shark" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-16 -16 -24, 16 16 32) model({ "path": "models/e4/m_rocketmp.dkm" }) = monster_rocketmp : "Rocket MP" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-16 -16 -24, 16 16 32) model({ "path": "models/e4/m_sgirl.dkm" }) = monster_sealgirl : "SEAL Girl" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-16 -16 -24, 16 16 32) model({ "path": "models/e4/m_sealcap.dkm" }) = monster_sealcaptain : "SEAL Captain" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-16 -16 -24, 16 16 32) model({ "path": "models/e4/m_scomndo.dkm" }) = monster_sealcommando : "SEAL Commando" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-24 -24 -24, 24 24 24) model({ "path": "models/e4/m_labmonkey.dkm" }) = monster_labmonkey : "Lab Monkey" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-16 -16 -24, 16 16 32) model({ "path": "models/e4/m_uzi.dkm" }) = monster_uzigang : "Uzi Gang Member" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-20 -20 -24, 20 20 32) model({ "path": "models/e4/m_chgang.dkm" }) = monster_chaingang : "Chaingun Gang Member" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-16 -16 -24, 16 16 32) model({ "path": "models/e4/m_rockgang.dkm" }) = monster_rocketdude : "Rocket Dude" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-16 -16 -24, 16 16 32) model({ "path": "models/e4/m_femgang.dkm" }) = monster_femgang : "Female Gang Member" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-16 -16 -24, 16 16 40) model({ "path": "models/e4/m_wpris.dkm" }) = monster_whiteprisoner : "White prisoner" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-16 -16 -24, 16 16 40) model({ "path": "models/e4/m_bpris.dkm" }) = monster_blackprisoner : "Black prisoner" []
|
||||
@PointClass base(Appearflags, MonsterFlags) color(1 0.5 0) size(-8 -8 -16, 8 8 8) model({ "path": "models/e4/m_piperat.dkm" }) = monster_piperat : "Pipe rat - I broke you!" []
|
||||
|
||||
|
||||
//
|
||||
// Decorations (Episode 4)
|
||||
//
|
||||
@PointClass base(Appearflags, DecorationFlags) color(1 0 0) size(-8 -8 -32, 8 8 32) = deco_e4 : "Episode 4 decoration"
|
||||
[
|
||||
damage(integer): "damage applied when exploding. Default is 15." : 15
|
||||
scale(float): "Scale of deco. Default 1.0." : 1.0
|
||||
model(string): "choose model # -- see list."
|
||||
mass(float): "*optional* - including this overrides the mass value in decoinfo.txt"
|
||||
frame(integer): "allows you to specify the starting frame for the model."
|
||||
animseq(integer): "allows you to specify an animation sequence for the model"
|
||||
x_speed(integer): "speed to rotate along x axis in degrees per second"
|
||||
y_speed(integer): "speed to rotate along y axis in degrees per second"
|
||||
z_speed(integer): "speed to rotate along z axis in degrees per second"
|
||||
alpha(float): "range 0.0-1.0. Only used if TRANSLUCENT is flagged"
|
||||
spawnname(string): "classname of entity to throw out upon death"
|
||||
movetype(string): "none, toss, bounce, float, overrides value in e1decoinfo.csv" : "none"
|
||||
]
|
||||
|
||||
//
|
||||
// Weapons (Episode 4)
|
||||
//
|
||||
@PointClass base(Weapons) model({ "path": ":models/e4/a_glock.dkm" }) = weapon_glock : "Glock - Glock Pistol of Love"[]
|
||||
@PointClass base(Weapons) model({ "path": ":models/e4/a_slugger.dkm" }) = weapon_slugger : "Slugger" []
|
||||
@PointClass base(Weapons) model({ "path": ":models/e4/a_kcore.dkm" }) = weapon_kineticore : "Kineticore" []
|
||||
@PointClass base(Weapons) model({ "path": ":models/e4/a_ripgun.dkm" }) = weapon_ripgun : "Ripgun - Pulse Rifle" []
|
||||
@PointClass base(Weapons) model({ "path": ":models/e4/a_nova.dkm" }) = weapon_novabeam : "Novabeam" []
|
||||
@PointClass base(Weapons) model({ "path": ":models/e4/a_mmaser.dkm" }) = weapon_metamaser : "Metamaser" []
|
||||
|
||||
//
|
||||
// Ammo (Episode 4)
|
||||
//
|
||||
@PointClass base(Ammo) model({ "path": ":models/e4/wa_glock.dkm" }) = ammo_bullets : "A loaded magazine for the glock." []
|
||||
@PointClass base(Ammo) model({ "path": ":models/e4/wa_rip.dkm" }) = ammo_slugger : "15 slugs." []
|
||||
@PointClass base(Ammo) model({ "path": ":models/e4/wa_rip2.dkm" }) = ammo_cordite : "4 cordite grenades." []
|
||||
@PointClass base(Ammo) model({ "path": ":models/e4/wa_kcore.dkm" }) = ammo_kineticore : "50 freeze things." []
|
||||
@PointClass base(Ammo) model({ "path": ":models/e4/wa_slug.dkm" }) = ammo_ripgun : "50 Rip-Ups (tm)." []
|
||||
@PointClass base(Ammo) model({ "path": ":models/e4/wa_nova.dkm" }) = ammo_novabeam : "50 nova cell units." []
|
||||
334
tb/games/Daikatana/GameConfig.cfg
Normal file
@@ -0,0 +1,334 @@
|
||||
{
|
||||
"version": 3,
|
||||
"name": "Daikatana",
|
||||
"icon": "Icon.png",
|
||||
"fileformats": [ { "format": "Daikatana" } ],
|
||||
"filesystem": {
|
||||
"searchpath": "data",
|
||||
"packageformat": { "extension": "pak", "format": "dkpak" }
|
||||
},
|
||||
"textures": {
|
||||
"package": { "type": "directory", "root": "textures" },
|
||||
"format": { "extension": "wal", "format": "wal" },
|
||||
"attribute": "_tb_textures"
|
||||
},
|
||||
"entities": {
|
||||
"definitions": [ "Episode 1.fgd", "Episode 2.fgd", "Episode 3.fgd", "Episode 4.fgd" ],
|
||||
"defaultcolor": "0.6 0.6 0.6 1.0",
|
||||
"modelformats": [ "dkm" ]
|
||||
},
|
||||
"tags": {
|
||||
"brush": [
|
||||
{
|
||||
"name": "Weather",
|
||||
"attribs": [ "transparent" ],
|
||||
"match": "classname",
|
||||
"pattern": "effect*"
|
||||
},
|
||||
{
|
||||
"name": "Trigger",
|
||||
"attribs": [ "transparent" ],
|
||||
"match": "classname",
|
||||
"pattern": "trigger*",
|
||||
"texture": "trigger"
|
||||
}
|
||||
],
|
||||
"brushface": [
|
||||
{
|
||||
"name": "Clip",
|
||||
"attribs": [ "transparent" ],
|
||||
"match": "contentflag",
|
||||
"flags": [ "playerclip", "monsterclip", "NPC clip" ]
|
||||
},
|
||||
{
|
||||
"name": "Skip",
|
||||
"attribs": [ "transparent" ],
|
||||
"match": "surfaceflag",
|
||||
"flags": [ "skip" ]
|
||||
},
|
||||
{
|
||||
"name": "Hint",
|
||||
"attribs": [ "transparent" ],
|
||||
"match": "surfaceflag",
|
||||
"flags": [ "hint" ]
|
||||
},
|
||||
{
|
||||
"name": "Detail",
|
||||
"match": "contentflag",
|
||||
"flags": [ "detail" ]
|
||||
},
|
||||
{
|
||||
"name": "Liquid",
|
||||
"match": "contentflag",
|
||||
"flags": [ "lava", "slime", "water" ]
|
||||
},
|
||||
{
|
||||
"name": "Sound",
|
||||
"match": "surfaceflag",
|
||||
"flags": [ "wood", "metal", "stone", "glass", "ice", "snow", "puddle", "sand" ]
|
||||
}
|
||||
]
|
||||
},
|
||||
"faceattribs": {
|
||||
"surfaceflags": [
|
||||
{
|
||||
"name": "light",
|
||||
"description": "1 - Emit light from the surface, brightness is specified in the 'value' field"
|
||||
}, // 1
|
||||
{
|
||||
"name": "fullbright",
|
||||
"description": "2 - Fullbright"
|
||||
}, // 2
|
||||
{
|
||||
"name": "sky",
|
||||
"description": "4 - The surface is sky, the texture will not be drawn, but the background sky box is used instead"
|
||||
}, // 4
|
||||
{
|
||||
"name": "warp",
|
||||
"description": "8 - The surface warps (like water textures do)"
|
||||
}, // 8
|
||||
{
|
||||
"name": "trans33",
|
||||
"description": "16 - The surface is 33% transparent"
|
||||
}, // 16
|
||||
{
|
||||
"name": "trans66",
|
||||
"description": "32 - The surface is 66% transparent"
|
||||
}, // 32
|
||||
{
|
||||
"name": "flowing",
|
||||
"description": "64 - The texture wraps in a downward 'flowing' pattern (warp must also be set)"
|
||||
}, // 64
|
||||
{
|
||||
"name": "nodraw",
|
||||
"description": "128 - Used for non-fixed-size brush triggers and clip brushes"
|
||||
}, // 128
|
||||
{
|
||||
"name": "hint",
|
||||
"description": "256 - Hint"
|
||||
}, // 256
|
||||
{
|
||||
"name": "skip",
|
||||
"description": "512 - Skip"
|
||||
}, // 512
|
||||
{
|
||||
"name": "wood",
|
||||
"description": "1024 - Wood"
|
||||
}, // 1024
|
||||
{
|
||||
"name": "metal",
|
||||
"description": "2048 - Metal"
|
||||
}, // 2048
|
||||
{
|
||||
"name": "stone",
|
||||
"description": "4096 - Stone"
|
||||
}, // 4096
|
||||
{
|
||||
"name": "glass",
|
||||
"description": "8192 - Glass"
|
||||
}, // 8192
|
||||
{
|
||||
"name": "ice",
|
||||
"description": "16384 - Ice"
|
||||
}, // 16384
|
||||
{
|
||||
"name": "snow",
|
||||
"description": "32768 - Snow"
|
||||
}, // 32768
|
||||
{
|
||||
"name": "mirror",
|
||||
"description": "65536 - Mirror"
|
||||
}, // 65536
|
||||
{
|
||||
"name": "holy ground",
|
||||
"description": "131072 - Holy Grond"
|
||||
}, // 131072
|
||||
{
|
||||
"name": "alphachan",
|
||||
"description": "262144 - Alphachan"
|
||||
}, // 262144
|
||||
{
|
||||
"name": "midtexture",
|
||||
"description": "524288 - Midtexture (Used together with Clear and Nodraw.)"
|
||||
}, // 524288
|
||||
{
|
||||
"name": "puddle",
|
||||
"description": "1048576 - Puddle"
|
||||
}, // 1048576
|
||||
{
|
||||
"name": "water surge",
|
||||
"description": "2097152 - Water Surge"
|
||||
}, // 2097152
|
||||
{
|
||||
"name": "big water surge",
|
||||
"description": "4194304 - Big Water Surge"
|
||||
}, // 4194304
|
||||
{
|
||||
"name": "bullet light",
|
||||
"description": "8388608 - Bullet Light"
|
||||
}, // 8388608
|
||||
{
|
||||
"name": "fog",
|
||||
"description": "16777216 - Fog"
|
||||
}, // 16777216
|
||||
{
|
||||
"name": "sand",
|
||||
"description": "33554432 - Sand"
|
||||
}, // 33554432
|
||||
{
|
||||
"name": "4000000",
|
||||
"description": "67108864 - 4000000"
|
||||
}, // 67108864
|
||||
{
|
||||
"name": "8000000",
|
||||
"description": "134217728 - 8000000"
|
||||
}, // 134217728
|
||||
{
|
||||
"name": "10000000",
|
||||
"description": "268435456 - 10000000"
|
||||
}, // 268435456
|
||||
{
|
||||
"name": "20000000",
|
||||
"description": "536870912 - 20000000"
|
||||
}, // 536870912
|
||||
{
|
||||
"name": "40000000",
|
||||
"description": "1073741824 - 40000000"
|
||||
}, // 1073741824
|
||||
{
|
||||
"name": "80000000",
|
||||
"description": "-2147483648 - 80000000 (Yes, this is a negative value)"
|
||||
} // 2147483648
|
||||
],
|
||||
"contentflags": [
|
||||
{
|
||||
"name": "solid",
|
||||
"description": "1 - Default for all brushes"
|
||||
}, // 1
|
||||
{
|
||||
"name": "window",
|
||||
"description": "2 - Brush is a window (not really used)"
|
||||
}, // 2
|
||||
{
|
||||
"name": "aux",
|
||||
"description": "4 - Unused by the Dk's engine?"
|
||||
}, // 4
|
||||
{
|
||||
"name": "lava",
|
||||
"description": "8 - The brush is lava"
|
||||
}, // 8
|
||||
{
|
||||
"name": "slime",
|
||||
"description": "16 - The brush is slime"
|
||||
}, // 16
|
||||
{
|
||||
"name": "water",
|
||||
"description": "32 - The brush is water"
|
||||
}, // 32
|
||||
{
|
||||
"name": "mist",
|
||||
"description": "64 - The brush is non-solid"
|
||||
}, // 64
|
||||
{
|
||||
"name": "clear",
|
||||
"description": "128 - clear"
|
||||
}, // 128
|
||||
{
|
||||
"name": "notsolid",
|
||||
"description": "256 - notsolid"
|
||||
}, // 256
|
||||
{
|
||||
"name": "noshoot",
|
||||
"description": "512 - noshoot"
|
||||
}, // 512
|
||||
{
|
||||
"name": "fog",
|
||||
"description": "1024 - fog"
|
||||
}, // 1024
|
||||
{
|
||||
"name": "nitro",
|
||||
"description": "2048 - nitro"
|
||||
}, // 2048
|
||||
{
|
||||
"name": "1000",
|
||||
"description": "4096 - 1000"
|
||||
}, // 4096
|
||||
{
|
||||
"name": "2000",
|
||||
"description": "8192 - 2000"
|
||||
}, // 8192
|
||||
{
|
||||
"name": "4000",
|
||||
"description": "16384 - 4000"
|
||||
}, // 16384
|
||||
{
|
||||
"name": "8000",
|
||||
"description": "32768 - 8000"
|
||||
}, // 32768
|
||||
{
|
||||
"name": "playerclip",
|
||||
"description": "65536 - Player cannot pass through the brush (other things can)"
|
||||
}, // 65536
|
||||
{
|
||||
"name": "monsterclip",
|
||||
"description": "131072 - Monster cannot pass through the brush (player and other things can)"
|
||||
}, // 131072
|
||||
{
|
||||
"name": "current_0",
|
||||
"description": "262144 - Brush has a current in direction of 0 degrees"
|
||||
}, // 262144
|
||||
{
|
||||
"name": "current_90",
|
||||
"description": "524288 - Brush has a current in direction of 90 degrees"
|
||||
}, // 524288
|
||||
{
|
||||
"name": "current_180",
|
||||
"description": "1048576 - Brush has a current in direction of 180 degrees"
|
||||
}, // 1048576
|
||||
{
|
||||
"name": "current_270",
|
||||
"description": "2097152 - Brush has a current in direction of 270 degrees"
|
||||
}, // 2097152
|
||||
{
|
||||
"name": "current_up",
|
||||
"description": "4194304 - Brush has a current in the up direction"
|
||||
}, // 4194304
|
||||
{
|
||||
"name": "current_dn",
|
||||
"description": "8388608 - Brush has a current in the down direction"
|
||||
}, // 8388608
|
||||
{
|
||||
"name": "origin",
|
||||
"description": "16777216 - Special brush used for specifying origin of rotation for rotating brushes"
|
||||
}, // 16777216
|
||||
{
|
||||
"name": "monster",
|
||||
"description": "33554432 - Purpose unknown"
|
||||
}, // 33554432
|
||||
{
|
||||
"name": "corpse",
|
||||
"description": "67108864 - Purpose unknown"
|
||||
}, // 67108864
|
||||
{
|
||||
"name": "detail",
|
||||
"description": "134217728 - Detail"
|
||||
}, // 134217728
|
||||
{
|
||||
"name": "translucent",
|
||||
"description": "268435456 - Use for opaque water that does not block vis"
|
||||
}, // 268435456
|
||||
{
|
||||
"name": "ladder",
|
||||
"description": "536870912 - Brushes with this flag allow a player to move up and down a vertical surface"
|
||||
}, // 536870912
|
||||
{
|
||||
"name": "NPC clip",
|
||||
"description": "1073741824"
|
||||
}, // 1073741824
|
||||
{
|
||||
"name": "80000000",
|
||||
"description": "-2147483648 - (Yes, this is a negative value)"
|
||||
} // 2147483648
|
||||
]
|
||||
}
|
||||
}
|
||||
BIN
tb/games/Daikatana/Icon.png
Normal file
|
After Width: | Height: | Size: 2.9 KiB |
BIN
tb/games/Daikatana/colormap.bmp
Normal file
|
After Width: | Height: | Size: 81 KiB |
32
tb/games/Generic/GameConfig.cfg
Normal file
@@ -0,0 +1,32 @@
|
||||
{
|
||||
version: 3,
|
||||
name: "Generic",
|
||||
icon: "Icon.png",
|
||||
"fileformats": [
|
||||
{ "format": "Standard", "initialmap": "initial_standard.map" },
|
||||
{ "format": "Valve", "initialmap": "initial_valve.map" },
|
||||
{ "format": "Quake2", "initialmap": "initial_quake2.map" }
|
||||
],
|
||||
"filesystem": {
|
||||
"searchpath": ".",
|
||||
"packageformat": { "extension": "pak", "format": "idpak" }
|
||||
},
|
||||
"textures": {
|
||||
"package": { "type": "directory", "root": "textures" },
|
||||
"format": { "extensions": ["jpg", "jpeg", "tga", "png"], "format": "image" },
|
||||
"attribute": "_tb_textures"
|
||||
},
|
||||
"entities": {
|
||||
"definitions": [ "Generic.fgd" ],
|
||||
"defaultcolor": "0.6 0.6 0.6 1.0",
|
||||
"modelformats": [ "bsp, mdl, md2" ]
|
||||
},
|
||||
"tags": {
|
||||
"brush": [],
|
||||
"brushface": []
|
||||
},
|
||||
"faceattribs": {
|
||||
"surfaceflags": [],
|
||||
"contentflags": []
|
||||
}
|
||||
}
|
||||
5
tb/games/Generic/Generic.fgd
Normal file
@@ -0,0 +1,5 @@
|
||||
@SolidClass = worldspawn : "World entity" []
|
||||
|
||||
@baseclass size(-16 -16 -24, 16 16 32) color(0 255 0) = PlayerClass []
|
||||
|
||||
@PointClass base(PlayerClass) = info_player_start : "Player 1 start" []
|
||||
BIN
tb/games/Generic/Icon.png
Normal file
|
After Width: | Height: | Size: 3.5 KiB |
24
tb/games/Hexen2/GameConfig.cfg
Normal file
@@ -0,0 +1,24 @@
|
||||
{
|
||||
"version": 3,
|
||||
"name": "Hexen 2",
|
||||
"icon": "Icon.png",
|
||||
"fileformats": [
|
||||
{ "format": "Hexen2" },
|
||||
{ "format": "Valve" }
|
||||
],
|
||||
"filesystem": {
|
||||
"searchpath": "data1",
|
||||
"packageformat": { "extension": "pak", "format": "idpak" }
|
||||
},
|
||||
"textures": {
|
||||
"package": { "type": "file", "format": { "extension": "wad", "format": "wad2" } },
|
||||
"format": { "extension": "D", "format": "idmip" },
|
||||
"palette": "gfx/palette.lmp",
|
||||
"attribute": "wad"
|
||||
},
|
||||
"entities": {
|
||||
"definitions": [ "Hexen2.fgd" ],
|
||||
"defaultcolor": "0.6 0.6 0.6 1.0",
|
||||
"modelformats": [ "mdl", "bsp" ]
|
||||
}
|
||||
}
|
||||
1907
tb/games/Hexen2/Hexen2.fgd
Normal file
BIN
tb/games/Hexen2/Icon.png
Normal file
|
After Width: | Height: | Size: 5.4 KiB |
BIN
tb/games/Hexen2/palette.lmp
Normal file
66
tb/games/Quake/GameConfig.cfg
Normal file
@@ -0,0 +1,66 @@
|
||||
{
|
||||
"version": 3,
|
||||
"name": "Quake",
|
||||
"icon": "Icon.png",
|
||||
"fileformats": [
|
||||
{ "format": "Standard" },
|
||||
{ "format": "Valve" }
|
||||
],
|
||||
"filesystem": {
|
||||
"searchpath": "id1",
|
||||
"packageformat": { "extension": "pak", "format": "idpak" }
|
||||
},
|
||||
"textures": {
|
||||
"package": { "type": "file", "format": { "extension": "wad", "format": "wad2" } },
|
||||
"format": { "extension": "D", "format": "idmip" },
|
||||
"palette": "gfx/palette.lmp",
|
||||
"attribute": "wad"
|
||||
},
|
||||
"entities": {
|
||||
"definitions": [ "Quake.fgd", "Quoth2.fgd", "Rubicon2.def", "Teamfortress.fgd" ],
|
||||
"defaultcolor": "0.6 0.6 0.6 1.0",
|
||||
"modelformats": [ "mdl", "bsp" ]
|
||||
},
|
||||
"tags": {
|
||||
"brush": [
|
||||
{
|
||||
"name": "Detail",
|
||||
"attribs": [],
|
||||
"match": "classname",
|
||||
"pattern": "func_detail*"
|
||||
},
|
||||
{
|
||||
"name": "Trigger",
|
||||
"attribs": [ "transparent" ],
|
||||
"match": "classname",
|
||||
"pattern": "trigger*",
|
||||
"texture": "trigger" // set this texture when tag is enabled
|
||||
}
|
||||
],
|
||||
"brushface": [
|
||||
{
|
||||
"name": "Clip",
|
||||
"attribs": [ "transparent" ],
|
||||
"match": "texture",
|
||||
"pattern": "clip"
|
||||
},
|
||||
{
|
||||
"name": "Skip",
|
||||
"attribs": [ "transparent" ],
|
||||
"match": "texture",
|
||||
"pattern": "skip"
|
||||
},
|
||||
{
|
||||
"name": "Hint",
|
||||
"attribs": [ "transparent" ],
|
||||
"match": "texture",
|
||||
"pattern": "hint*"
|
||||
},
|
||||
{
|
||||
"name": "Liquid",
|
||||
"match": "texture",
|
||||
"pattern": "\**"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
BIN
tb/games/Quake/Icon.png
Normal file
|
After Width: | Height: | Size: 4.8 KiB |
588
tb/games/Quake/Quake.fgd
Normal file
@@ -0,0 +1,588 @@
|
||||
//
|
||||
// Quake game definition file (.fgd)
|
||||
// for Worldcraft 1.6 and above
|
||||
//
|
||||
// written by autolycus / autolycus@planetquake.com
|
||||
// email me with improvements and suggestions
|
||||
//
|
||||
|
||||
// Modified by CZG : grawert@online.no : http://www.planetquake.com/greyvoid/
|
||||
// further modified by various authors
|
||||
|
||||
//
|
||||
// worldspawn
|
||||
//
|
||||
|
||||
@SolidClass = worldspawn : "World entity"
|
||||
[
|
||||
message(string) : "Text on entering the world"
|
||||
worldtype(choices) : "Ambience" : 0 =
|
||||
[
|
||||
0 : "Medieval"
|
||||
1 : "Metal (runic)"
|
||||
2 : "Base"
|
||||
]
|
||||
sounds(integer) : "CD track to play" : 0
|
||||
light(integer) : "Ambient light"
|
||||
_sunlight(integer) : "Sunlight"
|
||||
_sun_mangle(string) : "Sun mangle (Yaw pitch roll)"
|
||||
]
|
||||
|
||||
//
|
||||
// base marker definitions
|
||||
//
|
||||
|
||||
@baseclass = Angle [ angle(integer) : "Direction" ]
|
||||
|
||||
@baseclass = Appearflags [
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
256 : "Not on Easy" : 0
|
||||
512 : "Not on Normal" : 0
|
||||
1024 : "Not on Hard" : 0
|
||||
2048 : "Not in Deathmatch" : 0
|
||||
]
|
||||
]
|
||||
|
||||
@baseclass = Targetname [ targetname(target_source) : "Name" ]
|
||||
@baseclass = Target [
|
||||
target(target_destination) : "Target"
|
||||
killtarget(target_destination) : "Killtarget"
|
||||
]
|
||||
|
||||
|
||||
|
||||
//
|
||||
// player starts, deathmatch, coop, teleport
|
||||
//
|
||||
|
||||
@baseclass base(Appearflags) size(-16 -16 -24, 16 16 32)
|
||||
color(0 255 0) model({ "path": ":progs/player.mdl" }) = PlayerClass []
|
||||
|
||||
@PointClass base(PlayerClass) = info_player_start : "Player 1 start" []
|
||||
@PointClass base(PlayerClass) = info_player_coop : "Player cooperative start" []
|
||||
@PointClass base(PlayerClass) = info_player_start2 : "Player episode return point" []
|
||||
@PointClass base(PlayerClass) = info_player_deathmatch : "Deathmatch start" []
|
||||
@PointClass size(-32 -32 0, 32 32 64) base(PlayerClass, Targetname) = info_teleport_destination : "Teleporter destination" []
|
||||
@PointClass color(200 150 150) = info_null : "info_null (spotlight target)"
|
||||
[
|
||||
targetname(target_source) : "Name"
|
||||
]
|
||||
|
||||
@PointClass base(Appearflags, Target, Targetname) color(200 150 150) = info_notnull : "Wildcard entity" // I love you
|
||||
[
|
||||
use(string) : "self.use"
|
||||
think(string) : "self.think"
|
||||
nextthink(integer) : "nextthink"
|
||||
noise(string) : "noise"
|
||||
touch(string) : "self.touch"
|
||||
]
|
||||
@PointClass base(Appearflags) = info_intermission : "Intermission camera"
|
||||
[
|
||||
mangle(string) : "Camera angle (Pitch Yaw Roll)"
|
||||
]
|
||||
|
||||
//
|
||||
// items
|
||||
//
|
||||
@baseclass base(Appearflags, Target, Targetname) = Item
|
||||
[
|
||||
message(string) : "Message"
|
||||
target(string) : "Target"
|
||||
killtarget(string) : "Killtarget"
|
||||
delay(integer) : "Delay"
|
||||
]
|
||||
@baseclass size(0 0 0, 32 32 56) color(80 0 200) base(Item) = Ammo
|
||||
[
|
||||
spawnflags(flags) =
|
||||
[
|
||||
1 : "Large box" : 0
|
||||
]
|
||||
]
|
||||
|
||||
@PointClass
|
||||
base(Ammo)
|
||||
model(
|
||||
{{
|
||||
spawnflags & 1 -> ":maps/b_batt1.bsp",
|
||||
":maps/b_batt0.bsp"
|
||||
}}
|
||||
) =
|
||||
item_cells : "Thunderbolt ammo" []
|
||||
|
||||
@PointClass
|
||||
base(Ammo)
|
||||
model(
|
||||
{{
|
||||
spawnflags & 1 -> ":maps/b_rock1.bsp",
|
||||
":maps/b_rock0.bsp"
|
||||
}}
|
||||
) =
|
||||
item_rockets : "Rockets" []
|
||||
|
||||
@PointClass
|
||||
base(Ammo)
|
||||
model(
|
||||
{{
|
||||
spawnflags & 1 -> ":maps/b_shell1.bsp",
|
||||
":maps/b_shell0.bsp"
|
||||
}}
|
||||
) = item_shells : "Shells" []
|
||||
|
||||
@PointClass
|
||||
base(Ammo)
|
||||
model(
|
||||
{{
|
||||
spawnflags & 1 -> ":maps/b_nail1.bsp",
|
||||
":maps/b_nail0.bsp"
|
||||
}}
|
||||
) = item_spikes : "Nailgun/Perforator ammo" []
|
||||
|
||||
@PointClass
|
||||
size(0 0 0, 32 32 56)
|
||||
base(Appearflags)
|
||||
model(
|
||||
{{
|
||||
spawnflags & 2 -> ":maps/b_bh100.bsp",
|
||||
spawnflags & 1 -> ":maps/b_bh10.bsp",
|
||||
":maps/b_bh25.bsp"
|
||||
}}
|
||||
) =
|
||||
item_health : "Health pack"
|
||||
[
|
||||
spawnflags(flags) =
|
||||
[
|
||||
1 : "Rotten" : 0
|
||||
2 : "Megahealth" : 0
|
||||
]
|
||||
]
|
||||
|
||||
@PointClass size(-16 -16 -24, 16 16 32) base(Item, Appearflags) model({ "path": ":progs/suit.mdl" }) =
|
||||
item_artifact_envirosuit : "Environmental protection suit" []
|
||||
@PointClass size(-16 -16 -24, 16 16 32) base(Item, Appearflags) model({ "path": ":progs/quaddama.mdl" }) =
|
||||
item_artifact_super_damage : "Quad damage" []
|
||||
@PointClass size(-16 -16 -24, 16 16 32) base(Item, Appearflags) model({ "path": ":progs/invulner.mdl" }) =
|
||||
item_artifact_invulnerability : "Pentagram of Protection" []
|
||||
@PointClass size(-16 -16 -24, 16 16 32) base(Item, Appearflags) model({ "path": ":progs/invisibl.mdl" }) =
|
||||
item_artifact_invisibility : "Ring of Shadows" []
|
||||
|
||||
@PointClass size(-16 -16 0, 16 16 56) base(Item, Appearflags) model({ "path": ":progs/armor.mdl", "skin": 2 }) =
|
||||
item_armorInv : "Red armor (200%)" []
|
||||
@PointClass size(-16 -16 0, 16 16 56) base(Item, Appearflags) model({ "path": ":progs/armor.mdl", "skin": 1 }) =
|
||||
item_armor2 : "Yellow armor (150%)" []
|
||||
@PointClass size(-16 -16 0, 16 16 56) base(Item, Appearflags) model({ "path": ":progs/armor.mdl" }) =
|
||||
item_armor1 : "Green armor (100%)" []
|
||||
@PointClass size(-16 -16 -24, 16 16 32) base(Item, Appearflags) model({ "path": ":progs/w_s_key.mdl" }) =
|
||||
item_key1 : "Silver key" []
|
||||
@PointClass size(-16 -16 -24, 16 16 32) base(Item, Appearflags) model({ "path": ":progs/w_g_key.mdl" }) =
|
||||
item_key2 : "Gold key" []
|
||||
@PointClass size(-16 -16 -24, 16 16 32) base(Item, Appearflags) model({ "path": ":progs/end1.mdl" }) =
|
||||
item_sigil : "Sigil"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Episode 1" : 1
|
||||
2 : "Episode 2" : 0
|
||||
4 : "Episode 3" : 0
|
||||
8 : "Episode 4" : 0
|
||||
]
|
||||
]
|
||||
|
||||
//
|
||||
// weapons
|
||||
//
|
||||
|
||||
@baseclass size(-16 -16 0, 16 16 56) color(0 0 200) base(Item, Appearflags) = Weapon []
|
||||
|
||||
@PointClass base(Weapon) model({ "path": ":progs/g_shot.mdl" }) = weapon_supershotgun : "Double-barrelled shotgun" []
|
||||
@PointClass base(Weapon) model({ "path": ":progs/g_nail.mdl" }) = weapon_nailgun : "Nailgun" []
|
||||
@PointClass base(Weapon) model({ "path": ":progs/g_nail2.mdl" }) = weapon_supernailgun : "Super nailgun" []
|
||||
@PointClass base(Weapon) model({ "path": ":progs/g_rock.mdl" }) = weapon_grenadelauncher : "Grenade launcher" []
|
||||
@PointClass base(Weapon) model({ "path": ":progs/g_rock2.mdl" }) = weapon_rocketlauncher : "Rocket launcher" []
|
||||
@PointClass base(Weapon) model({ "path": ":progs/g_light.mdl" }) = weapon_lightning : "Thunderbolt" []
|
||||
|
||||
//
|
||||
// monsters
|
||||
//
|
||||
|
||||
@baseclass base(Angle, Appearflags, Target, Targetname) color(220 0 0) = Monster
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Ambush" : 0
|
||||
]
|
||||
]
|
||||
|
||||
@PointClass base(Monster) size(-16 -16 -24, 16 16 40) model({ "path": ":progs/soldier.mdl" }) = monster_army : "Grunt" []
|
||||
@PointClass base(Monster) size(-32 -32 -24, 32 32 40) model({ "path": ":progs/dog.mdl" }) = monster_dog : "Nasty Doggie" []
|
||||
@PointClass base(Monster) size(-32 -32 -24, 32 32 64) model({ "path": ":progs/ogre.mdl" }) = monster_ogre : "Ogre" []
|
||||
@PointClass base(Monster) size(-32 -32 -24, 32 32 64) model({ "path": ":progs/ogre.mdl" }) = monster_ogre_marksman : "Ogre marksman" []
|
||||
@PointClass base(Monster) size(-16 -16 -24, 16 16 40) model({ "path": ":progs/knight.mdl" }) = monster_knight : "Knight" []
|
||||
@PointClass base(Monster) size(-16 -16 -24, 16 16 40) model({ "path": ":progs/hknight.mdl" }) = monster_hell_knight : "Hell knight" []
|
||||
@PointClass base(Monster) size(-16 -16 -24, 16 16 40) model({ "path": ":progs/wizard.mdl" }) = monster_wizard : "Scrag" []
|
||||
@PointClass base(Monster) size(-32 -32 -24, 32 32 64) model({ "path": ":progs/demon.mdl" }) = monster_demon1 : "Fiend" []
|
||||
@PointClass base(Monster) size(-32 -32 -24, 32 32 64) model({ "path": ":progs/shambler.mdl" }) = monster_shambler : "Shambler" []
|
||||
@PointClass base(Monster) size(-128 -128 -24, 128 128 256) model({ "path": ":progs/boss.mdl" }) = monster_boss : "Chthon" []
|
||||
@PointClass base(Monster) size(-16 -16 -24, 16 16 40) model({ "path": ":progs/enforcer.mdl" }) = monster_enforcer : "Enforcer" []
|
||||
@PointClass base(Monster) size(-32 -32 -24, 32 32 64) model({ "path": ":progs/shalrath.mdl" }) = monster_shalrath : "Vore" []
|
||||
@PointClass base(Monster) size(-16 -16 -24, 16 16 24) model({ "path": ":progs/tarbaby.mdl" }) = monster_tarbaby : "Spawn" []
|
||||
@PointClass base(Monster) size(-16 -16 -24, 16 16 24) model({ "path": ":progs/fish.mdl" }) = monster_fish : "Rotfish" []
|
||||
@PointClass base(Monster) size(-16 -16 -24, 16 16 32) model({ "path": ":progs/oldone.mdl" }) = monster_oldone : "Shub-Niggurath" []
|
||||
@PointClass base(Monster) size(-16 -16 -24, 16 16 32) model({ "path": ":progs/zombie.mdl" }) = monster_zombie : "Zombie"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Crucified" : 0
|
||||
2 : "Ambush" : 0
|
||||
]
|
||||
]
|
||||
|
||||
//
|
||||
// lights
|
||||
//
|
||||
|
||||
@baseclass color(255 255 40) = Light [
|
||||
light(integer) : "Brightness" : 300
|
||||
wait(integer) : "Fade distance multiplier" : 1
|
||||
delay(choices) : "Attenuation" =
|
||||
[
|
||||
0 : "Linear falloff (Default)"
|
||||
1 : "Inverse distance falloff"
|
||||
2 : "Inverse distance squared"
|
||||
3 : "No falloff"
|
||||
4 : "Local minlight"
|
||||
5 : "Inverse distance squared B"
|
||||
]
|
||||
mangle(string) : "Spotlight angle"
|
||||
style(Choices) : "Appearance" : 0 =
|
||||
[
|
||||
0 : "Normal"
|
||||
10: "Fluorescent flicker"
|
||||
2 : "Slow, strong pulse"
|
||||
11: "Slow pulse, noblack"
|
||||
5 : "Gentle pulse"
|
||||
1 : "Flicker A"
|
||||
6 : "Flicker B"
|
||||
3 : "Candle A"
|
||||
7 : "Candle B"
|
||||
8 : "Candle C"
|
||||
4 : "Fast strobe"
|
||||
9 : "Slow strobe"
|
||||
]
|
||||
]
|
||||
|
||||
@PointClass size(-8 -8 -8, 8 8 8) base(Light, Target, Targetname) =
|
||||
light : "Invisible light source"
|
||||
[
|
||||
spawnflags(Flags) = [ 1 : "Start off" : 0 ]
|
||||
]
|
||||
@PointClass size(-8 -8 -8, 8 8 8) base(Light, Target, Targetname) =
|
||||
light_fluoro : "Fluorescent light"
|
||||
[
|
||||
spawnflags(Flags) = [ 1 : "Start off" : 0 ]
|
||||
]
|
||||
@PointClass size(-8 -8 -8, 8 8 8) base(Light, Target, Targetname) =
|
||||
light_fluorospark : "Sparking fluorescent light"
|
||||
[
|
||||
spawnflags(Flags) = [ 1 : "Start off" : 0 ]
|
||||
]
|
||||
@PointClass size(-8 -8 -8, 8 8 8) base(Appearflags, Light, Target, Targetname) =
|
||||
light_globe : "Globe light"
|
||||
[
|
||||
spawnflags(Flags) = [ 1 : "Start off" : 0 ]
|
||||
]
|
||||
@PointClass size(-8 -8 -12, 8 8 20) base(Appearflags, Light, Target, Targetname) model({ "path": ":progs/flame2.mdl" }) =
|
||||
light_flame_large_yellow : "Large yellow flame"
|
||||
[
|
||||
spawnflags(Flags) = [ 1 : "Start off" : 0 ]
|
||||
]
|
||||
@PointClass size(-4 -4 -12, 4 4 20) base(Appearflags, Light, Target, Targetname) model({ "path": ":progs/flame2.mdl" }) =
|
||||
light_flame_small_yellow : "Small yellow flame"
|
||||
[
|
||||
spawnflags(Flags) = [ 1 : "Start off" : 0 ]
|
||||
]
|
||||
@PointClass size(-4 -4 -12, 4 4 20) base(Appearflags, Light, Target, Targetname) model({ "path": ":progs/flame2.mdl" }) =
|
||||
light_flame_small_white : "Small white flame"
|
||||
[
|
||||
spawnflags(Flags) = [ 1 : "Start off" : 0 ]
|
||||
]
|
||||
@PointClass size(-4 -4 -12, 4 4 20) base(Appearflags, Light, Target, Targetname) model({ "path": ":progs/flame.mdl" }) =
|
||||
light_torch_small_walltorch : "Small walltorch" []
|
||||
|
||||
//
|
||||
// misc
|
||||
//
|
||||
|
||||
@SolidClass base(Appearflags) = func_illusionary : "Static nonsolid model" []
|
||||
|
||||
@PointClass base(Appearflags) color(0 150 220) = air_bubbles : "Air bubbles" []
|
||||
@PointClass base(Appearflags, Targetname) =
|
||||
event_lightning : "Chthon's lightning" []
|
||||
@PointClass base(Appearflags) model({ "path": ":progs/lavaball.mdl" }) = misc_fireball : "Small fireball"
|
||||
[ speed(integer) : "Speed" : 40 ]
|
||||
@PointClass base(Appearflags) size(0 0 0, 32 32 64) model({ "path": ":maps/b_explob.bsp" }) = misc_explobox : "Large exploding container" []
|
||||
@PointClass base(Appearflags) size(0 0 0, 32 32 32) model({ "path": ":maps/b_exbox2.bsp" }) = misc_explobox2 : "Small exploding container" []
|
||||
@PointClass base(Appearflags) size(-8 -8 -8, 8 8 8) model({ "path": ":progs/teleport.mdl" }) = misc_teleporttrain : "Flying teleporter destination"
|
||||
[
|
||||
target(string) : "First stop target"
|
||||
targetname(target_source) : "Name"
|
||||
]
|
||||
@PointClass base(Appearflags, Targetname) color(220 150 150) = trap_spikeshooter : "Triggered shooter"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Spike" : 0
|
||||
2 : "Laser" : 0
|
||||
]
|
||||
]
|
||||
@PointClass base(Appearflags) color(220 150 150) = trap_shooter : "Continuous shooter"
|
||||
[
|
||||
nextthink(integer) : "Delay before first spike"
|
||||
wait(integer) : "Delay between spikes"
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Spike" : 0
|
||||
2 : "Laser" : 0
|
||||
]
|
||||
]
|
||||
|
||||
@SolidClass = func_group : "Group of brushes for in-editor use" []
|
||||
@SolidClass = func_detail : "Group of brushes for certain compilers" []
|
||||
@SolidClass = func_detail_illusionary : "func_detail variant with no collision (players / monsters / gunfire) and doesn't split world faces." []
|
||||
@SolidClass = func_detail_wall : "func_detail variant that doesn't split world faces." []
|
||||
|
||||
//
|
||||
// ambient sounds
|
||||
//
|
||||
|
||||
@PointClass base(Appearflags) color(150 0 150) = ambient_drip : "Dripping sound" []
|
||||
@PointClass base(Appearflags) color(150 0 150) = ambient_drone : "Engine/machinery sound" []
|
||||
@PointClass base(Appearflags) color(150 0 150) = ambient_comp_hum : "Computer background sounds" []
|
||||
@PointClass base(Appearflags) color(150 0 150) = ambient_flouro_buzz : "Fluorescent buzzing sound" []
|
||||
@PointClass base(Appearflags) color(150 0 150) = ambient_light_buzz : "Buzzing sound from light" []
|
||||
@PointClass base(Appearflags) color(150 0 150) = ambient_suck_wind : "Wind sound" []
|
||||
@PointClass base(Appearflags) color(150 0 150) = ambient_swamp1 : "Frogs croaking" []
|
||||
@PointClass base(Appearflags) color(150 0 150) = ambient_swamp2 : "Frogs croaking B" []
|
||||
@PointClass base(Appearflags) color(150 0 150) = ambient_thunder : "Thunder sound" []
|
||||
|
||||
//
|
||||
// moving things
|
||||
//
|
||||
|
||||
|
||||
@SolidClass base(Angle, Appearflags, Targetname, Target) = func_door : "Basic door"
|
||||
[
|
||||
speed(integer) : "Speed" : 100
|
||||
sounds(choices) : "Sound" : 0 =
|
||||
[
|
||||
0: "Silent"
|
||||
1: "Stone"
|
||||
2: "Machine"
|
||||
3: "Stone Chain"
|
||||
4: "Screechy Metal"
|
||||
]
|
||||
wait(string) : "Wait before close" : "3"
|
||||
lip(integer) : "Lip" : 8
|
||||
dmg(integer) : "Damage inflicted when blocked" : 2
|
||||
message(string) : "Message if touched"
|
||||
health(integer) : "Health (shootable)" : 0
|
||||
spawnflags(flags) =
|
||||
[
|
||||
1 : "Starts Open" : 0
|
||||
4 : "Don't link" : 0
|
||||
8 : "Gold Key required" : 0
|
||||
16: "Silver Key required" : 0
|
||||
32: "Toggle" : 0
|
||||
]
|
||||
]
|
||||
|
||||
@SolidClass base(Appearflags, Targetname, Target) = func_door_secret : "Secret door"
|
||||
[
|
||||
angle(integer) : "Direction of second move"
|
||||
t_width(integer) : "First move length"
|
||||
t_length(integer) : "Second move length"
|
||||
dmg(integer) : "Damage when blocked" : 2
|
||||
wait(string) : "Wait before close" : "2"
|
||||
sounds(choices) : "Sounds" : 3 =
|
||||
[
|
||||
1: "Medieval"
|
||||
2: "Metal"
|
||||
3: "Base"
|
||||
]
|
||||
message(string) : "Message"
|
||||
spawnflags(flags) =
|
||||
[
|
||||
1 : "Open once" : 0
|
||||
2 : "Move left first" : 0
|
||||
4 : "Move down first" : 0
|
||||
8 : "Not shootable" : 0
|
||||
16 : "Always shootable" : 0
|
||||
]
|
||||
]
|
||||
|
||||
@SolidClass base(Appearflags, Targetname) = func_wall : "Wall, starts animation when triggered (if supporting texture)" []
|
||||
|
||||
|
||||
@SolidClass base(Angle, Appearflags, Targetname) = func_button : "Button"
|
||||
[
|
||||
speed(integer) : "Speed" : 40
|
||||
lip(integer) : "Lip" : 4
|
||||
target(target_source) : "Target"
|
||||
health(integer) : "Health (shootable)"
|
||||
sounds(choices) : "Sounds" =
|
||||
[
|
||||
0 : "Steam metal"
|
||||
1 : "Wooden clunk"
|
||||
2 : "Metallic clink"
|
||||
3 : "In-out"
|
||||
]
|
||||
wait(string) : "Wait before reset" : "1"
|
||||
delay(string) : "Delay before trigger"
|
||||
message(string) : "Message"
|
||||
]
|
||||
|
||||
@SolidClass base(Appearflags, Targetname) = func_train : "Moving platform"
|
||||
[
|
||||
sounds(choices) : "Sound" : 1 =
|
||||
[
|
||||
0: "Silent"
|
||||
1: "Ratchet Metal"
|
||||
]
|
||||
speed(integer) : "Speed (units per second)" : 64
|
||||
target(target_source) : "Target to start at"
|
||||
dmg(integer) : "Damage on block" : 2
|
||||
]
|
||||
|
||||
@PointClass base(Appearflags, Targetname) size(16 16 16) color(0 255 255) =
|
||||
path_corner : "Waypoint for platforms and monsters"
|
||||
[
|
||||
target(target_source) : "Next target"
|
||||
wait(integer) : "Wait" : 0
|
||||
]
|
||||
|
||||
@SolidClass base(Appearflags, Targetname) = func_plat : "Elevator"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Low trigger volume" : 0
|
||||
]
|
||||
speed(integer) : "Speed" : 150
|
||||
height(integer) : "Travel altitude (can be negative)" : 0
|
||||
sounds(choices) : "Sound" : 1 =
|
||||
[
|
||||
0: "None"
|
||||
1: "Base fast"
|
||||
2: "Chain Slow"
|
||||
]
|
||||
]
|
||||
|
||||
@SolidClass base(Appearflags) = func_episodegate : "Episode Gate"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Episode 1" : 1
|
||||
2 : "Episode 2" : 0
|
||||
4 : "Episode 3" : 0
|
||||
8 : "Episode 4" : 0
|
||||
]
|
||||
]
|
||||
|
||||
@SolidClass base(Appearflags) = func_bossgate : "Boss gate" []
|
||||
|
||||
//
|
||||
// triggers
|
||||
//
|
||||
|
||||
@baseclass base(Appearflags, Target, Killarget, Targetname) = Trigger
|
||||
[
|
||||
sounds(choices) : "Sound style" : 0 =
|
||||
[
|
||||
0 : "None"
|
||||
1 : "Secret sound"
|
||||
2 : "Beep beep"
|
||||
3 : "Large switch"
|
||||
]
|
||||
delay(string) : "Delay before trigger" : "0"
|
||||
message(string) : "Message"
|
||||
]
|
||||
|
||||
@SolidClass base(Trigger) = trigger_changelevel : "Trigger: Change level"
|
||||
[
|
||||
map(string) : "Next map"
|
||||
target(target_destination) : "Target"
|
||||
spawnflags(flags) =
|
||||
[
|
||||
1: "No intermission" : 0
|
||||
]
|
||||
]
|
||||
|
||||
@SolidClass base(Trigger) = trigger_once : "Trigger: Activate once"
|
||||
[
|
||||
health(integer) : "Health (shootable)"
|
||||
spawnflags(flags) = [ 1: "Not touchable" : 0 ]
|
||||
]
|
||||
@SolidClass base(Trigger) = trigger_multiple : "Trigger: Activate multiple"
|
||||
[
|
||||
wait(string) : "Wait before reset" : "0.2"
|
||||
health(integer) : "Health (shootable)"
|
||||
spawnflags(flags) = [ 1: "Not touchable" : 0 ]
|
||||
]
|
||||
@SolidClass base(Trigger) = trigger_onlyregistered : "Trigger: Registered only"
|
||||
[
|
||||
spawnflags(flags) = [ 1: "Not touchable" : 0 ]
|
||||
]
|
||||
@SolidClass base(Trigger) = trigger_secret : "Trigger: Secret"
|
||||
[
|
||||
sounds(choices) : "Sound" : 1 =
|
||||
[
|
||||
1 : "Secret sound"
|
||||
2 : "Beep beep"
|
||||
]
|
||||
spawnflags(flags) = [ 1: "Not touchable" : 0 ]
|
||||
]
|
||||
|
||||
@SolidClass base(Appearflags, Target, Targetname) = trigger_teleport : "Trigger: Teleporter"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Player only" : 0
|
||||
2 : "Silent" : 0
|
||||
]
|
||||
]
|
||||
|
||||
@SolidClass base(Appearflags) = trigger_setskill : "Trigger: Set skill"
|
||||
[
|
||||
message(choices) : "Skill to change to" : 1 =
|
||||
[
|
||||
0 : "Easy"
|
||||
1 : "Medium"
|
||||
2 : "Hard"
|
||||
3 : "Nightmare!"
|
||||
]
|
||||
]
|
||||
@PointClass base(Trigger) = trigger_relay : "Trigger: Relay"
|
||||
[
|
||||
]
|
||||
@SolidClass base(Angle, Appearflags, Targetname) = trigger_monsterjump : "Trigger: Monster jump"
|
||||
[
|
||||
speed(integer) : "Jump Speed" : 200
|
||||
height(integer) : "Jump Height" : 200
|
||||
]
|
||||
@PointClass base(Appearflags, Target, Targetname) = trigger_counter : "Trigger: Counter"
|
||||
[
|
||||
spawnflags(flags) = [ 1: "No Message" : 0 ]
|
||||
count(integer) : "Count before trigger" : 2
|
||||
delay (integer) : "Delay"
|
||||
message(string) : "Message"
|
||||
]
|
||||
@SolidClass base(Angle, Appearflags, Targetname) = trigger_push : "Trigger: Push"
|
||||
[
|
||||
spawnflags(flags) = [ 1: "Push once" : 0 ]
|
||||
speed(integer) : "Speed" : 1000
|
||||
]
|
||||
@SolidClass base(Appearflags, Targetname) = trigger_hurt : "Trigger: Hurt"
|
||||
[
|
||||
dmg(integer) : "Damage per second" : 5
|
||||
]
|
||||
@PointClass size(16 16 16) = misc_noisemaker : "Debug entity: continuously plays enforcer sounds" []
|
||||
@PointClass size(16 16 16) = viewthing : "Debug entity: fake player model" []
|
||||
1569
tb/games/Quake/Quoth2.fgd
Normal file
1442
tb/games/Quake/Rubicon2.def
Normal file
1070
tb/games/Quake/Teamfortress.fgd
Normal file
207
tb/games/Quake2/GameConfig.cfg
Normal file
@@ -0,0 +1,207 @@
|
||||
{
|
||||
"version": 3,
|
||||
"name": "Quake 2",
|
||||
"icon": "Icon.png",
|
||||
"fileformats": [ { "format": "Quake2" } ],
|
||||
"filesystem": {
|
||||
"searchpath": "baseq2",
|
||||
"packageformat": { "extension": "pak", "format": "idpak" }
|
||||
},
|
||||
"textures": {
|
||||
"package": { "type": "directory", "root": "textures" },
|
||||
"format": { "extension": "wal", "format": "wal" },
|
||||
"palette": "pics/colormap.pcx",
|
||||
"attribute": "_tb_textures"
|
||||
},
|
||||
"entities": {
|
||||
"definitions": [ "Quake2.fgd" ],
|
||||
"defaultcolor": "0.6 0.6 0.6 1.0",
|
||||
"modelformats": [ "md2" ]
|
||||
},
|
||||
"tags": {
|
||||
"brush": [
|
||||
{
|
||||
"name": "Trigger",
|
||||
"attribs": [ "transparent" ],
|
||||
"match": "classname",
|
||||
"pattern": "trigger*",
|
||||
"texture": "trigger"
|
||||
}
|
||||
],
|
||||
"brushface": [
|
||||
{
|
||||
"name": "Clip",
|
||||
"attribs": [ "transparent" ],
|
||||
"match": "texture",
|
||||
"pattern": "clip"
|
||||
},
|
||||
{
|
||||
"name": "Skip",
|
||||
"attribs": [ "transparent" ],
|
||||
"match": "texture",
|
||||
"pattern": "skip"
|
||||
},
|
||||
{
|
||||
"name": "Hint",
|
||||
"attribs": [ "transparent" ],
|
||||
"match": "texture",
|
||||
"pattern": "hint*"
|
||||
},
|
||||
{
|
||||
"name": "Detail",
|
||||
"match": "contentflag",
|
||||
"flags": [ "detail" ]
|
||||
},
|
||||
{
|
||||
"name": "Liquid",
|
||||
"match": "contentflag",
|
||||
"flags": [ "lava", "slime", "water" ]
|
||||
},
|
||||
{
|
||||
"name": "Transparent",
|
||||
"attribs": [ "transparent" ],
|
||||
"match": "surfaceflag",
|
||||
"flags": [ "trans33", "trans66" ]
|
||||
}
|
||||
]
|
||||
},
|
||||
"faceattribs": {
|
||||
"surfaceflags": [
|
||||
{
|
||||
"name": "light",
|
||||
"description": "Emit light from the surface, brightness is specified in the 'value' field"
|
||||
},
|
||||
{
|
||||
"name": "slick",
|
||||
"description": "The surface is slippery"
|
||||
},
|
||||
{
|
||||
"name": "sky",
|
||||
"description": "The surface is sky, the texture will not be drawn, but the background sky box is used instead"
|
||||
},
|
||||
{
|
||||
"name": "warp",
|
||||
"description": "The surface warps (like water textures do)"
|
||||
},
|
||||
{
|
||||
"name": "trans33",
|
||||
"description": "The surface is 33% transparent"
|
||||
},
|
||||
{
|
||||
"name": "trans66",
|
||||
"description": "The surface is 66% transparent"
|
||||
},
|
||||
{
|
||||
"name": "flowing",
|
||||
"description": "The texture wraps in a downward 'flowing' pattern (warp must also be set)"
|
||||
},
|
||||
{
|
||||
"name": "nodraw",
|
||||
"description": "Used for non-fixed-size brush triggers and clip brushes"
|
||||
},
|
||||
{
|
||||
"name": "hint",
|
||||
"description": "Make a primary bsp splitter"
|
||||
},
|
||||
{
|
||||
"name": "skip",
|
||||
"description": "Completely ignore, allowing non-closed brushes"
|
||||
}
|
||||
],
|
||||
"contentflags": [
|
||||
{
|
||||
"name": "solid",
|
||||
"description": "Default for all brushes"
|
||||
}, // 1 << 0
|
||||
{
|
||||
"name": "window",
|
||||
"description": "Brush is a window (not really used)"
|
||||
}, // 1 << 1
|
||||
{
|
||||
"name": "aux",
|
||||
"description": "Unused by the engine"
|
||||
}, // 1 << 2
|
||||
{
|
||||
"name": "lava",
|
||||
"description": "The brush is lava"
|
||||
}, // 1 << 3
|
||||
{
|
||||
"name": "slime",
|
||||
"description": "The brush is slime"
|
||||
}, // 1 << 4
|
||||
{
|
||||
"name": "water",
|
||||
"description": "The brush is water"
|
||||
}, // 1 << 5
|
||||
{
|
||||
"name": "mist",
|
||||
"description": "The brush is non-solid"
|
||||
}, // 1 << 6
|
||||
{ "name": "unused" }, // 1 << 7
|
||||
{ "name": "unused" }, // 1 << 8
|
||||
{ "name": "unused" }, // 1 << 9
|
||||
{ "name": "unused" }, // 1 << 10
|
||||
{ "name": "unused" }, // 1 << 11
|
||||
{ "name": "unused" }, // 1 << 12
|
||||
{ "name": "unused" }, // 1 << 13
|
||||
{ "name": "unused" }, // 1 << 14
|
||||
{ "name": "unused" }, // 1 << 15
|
||||
{
|
||||
"name": "playerclip",
|
||||
"description": "Player cannot pass through the brush (other things can)"
|
||||
}, // 1 << 16
|
||||
{
|
||||
"name": "mosterclip",
|
||||
"description": "Monster cannot pass through the brush (player and other things can)"
|
||||
}, // 1 << 17
|
||||
{
|
||||
"name": "current_0",
|
||||
"description": "Brush has a current in direction of 0 degrees"
|
||||
}, // 1 << 18
|
||||
{
|
||||
"name": "current_90",
|
||||
"description": "Brush has a current in direction of 90 degrees"
|
||||
}, // 1 << 19
|
||||
{
|
||||
"name": "current_180",
|
||||
"description": "Brush has a current in direction of 180 degrees"
|
||||
}, // 1 << 20
|
||||
{
|
||||
"name": "current_270",
|
||||
"description": "Brush has a current in direction of 270 degrees"
|
||||
}, // 1 << 21
|
||||
{
|
||||
"name": "current_up",
|
||||
"description": "Brush has a current in the up direction"
|
||||
}, // 1 << 22
|
||||
{
|
||||
"name": "current_dn",
|
||||
"description": "Brush has a current in the down direction"
|
||||
}, // 1 << 23
|
||||
{
|
||||
"name": "origin",
|
||||
"description": "Special brush used for specifying origin of rotation for rotating brushes"
|
||||
}, // 1 << 24
|
||||
{
|
||||
"name": "monster",
|
||||
"description": "Purpose unknown"
|
||||
}, // 1 << 25
|
||||
{
|
||||
"name": "corpse",
|
||||
"description": "Purpose unknown"
|
||||
}, // 1 << 26
|
||||
{
|
||||
"name": "detail",
|
||||
"description": "Detail brush"
|
||||
}, // 1 << 27
|
||||
{
|
||||
"name": "translucent",
|
||||
"description": "Use for opaque water that does not block vis"
|
||||
}, // 1 << 28
|
||||
{
|
||||
"name": "ladder",
|
||||
"description": "Brushes with this flag allow a player to move up and down a vertical surface"
|
||||
} // 1 << 29
|
||||
]
|
||||
}
|
||||
}
|
||||
BIN
tb/games/Quake2/Icon.png
Normal file
|
After Width: | Height: | Size: 5.1 KiB |
980
tb/games/Quake2/Quake2.fgd
Normal file
@@ -0,0 +1,980 @@
|
||||
|
||||
//
|
||||
// Quake 2 game definition file (.fgd)
|
||||
// for Worldcraft 1.6 and above
|
||||
// last update: march 3 1998
|
||||
//
|
||||
// written by autolycus / autolycus@planetquake.com
|
||||
// email me with improvements and suggestions
|
||||
//
|
||||
// special thanks to: Disruptor, Zoid, Zaphod, Imaginos,
|
||||
// and EutecTic for comments, suggestions, and help!
|
||||
//
|
||||
|
||||
//
|
||||
// worldspawn
|
||||
//
|
||||
|
||||
// 0302 - added "nextmap" key
|
||||
@SolidClass = worldspawn : "World entity"
|
||||
[
|
||||
sky(string) : "Environment map name"
|
||||
skyaxis(string) : "Vector axis for rotating sky"
|
||||
skyrotate(string) : "Speed of rotation (degrees/second)"
|
||||
sounds(integer) : "CD Track Number" : 1
|
||||
gravity(integer) : "Gravity" : 800
|
||||
message(string) : "Level name"
|
||||
nextmap(string) : "Next map (DM only)"
|
||||
]
|
||||
|
||||
//
|
||||
// base marker definitions
|
||||
//model({ "path": ":models/items/keys/target/tris.md2" }) =
|
||||
|
||||
@baseclass = Appearflags [
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
256 : "Not in Easy" : 0
|
||||
512 : "Not in Normal" : 0
|
||||
1024 : "Not in Hard" : 0
|
||||
2048 : "Not in Deathmatch" : 0
|
||||
]
|
||||
]
|
||||
|
||||
@baseclass = Targetname [ targetname(target_source) : "Name" ]
|
||||
@baseclass = Target [ target(target_destination) : "Target" ]
|
||||
|
||||
//
|
||||
// player start, deathmatch, coop, deathmatch intermission
|
||||
//
|
||||
|
||||
@baseclass base(Appearflags, Targetname) size(-16 -16 -24, 16 16 32) color(0 255 0) = PlayerClass []
|
||||
|
||||
@PointClass base(PlayerClass) = info_player_start : "Player 1 start" []
|
||||
@PointClass base(PlayerClass) = info_player_deathmatch : "Player deathmatch start" []
|
||||
@PointClass base(PlayerClass) = info_player_coop : "Player cooperative start" []
|
||||
@PointClass base(PlayerClass) = info_player_intermission : "Deathmatch intermission point"
|
||||
[
|
||||
angles(string) : "pitch yaw roll"
|
||||
]
|
||||
|
||||
// Notes on the 'team' key: First of all, it's really only useful in DM because it creates a
|
||||
// random respawn pattern. Let's say that in one spot, you want to have the shotgun, Quad
|
||||
// damage and mega health item to respawn in alternance. Place all of them in approximately
|
||||
// the same location, team them and voila! The FIRST item that you place in the map will be
|
||||
// the team MASTER - the others will be SLAVES. In DM play, the Master will be the first one
|
||||
// to spawn. Once the Master is picked up, the respawn pattern becomes RANDOM: it could be
|
||||
// the same or one of the other 2. If you try to use this in a Single Player map, it's
|
||||
// pretty useless because only the team MASTER spawns and the others never appear obviously.
|
||||
|
||||
@BaseClass base(Appearflags, Target) color(76 76 255) size(-16 -16 -16, 16 16 16) = Ammo
|
||||
[
|
||||
team(string) : "Team"
|
||||
]
|
||||
|
||||
@PointClass base(Ammo) model({ "path": ":models/items/ammo/shells/medium/tris.md2" }) = ammo_shells : "Shotgun ammo" []
|
||||
@PointClass base(Ammo) model({ "path": ":models/items/ammo/bullets/medium/tris.md2" }) = ammo_bullets : "Machine/Chain gun ammo" []
|
||||
@PointClass base(Ammo) model({ "path": ":models/items/ammo/cells/medium/tris.md2" }) = ammo_cells : "Blaster/BFG ammo" []
|
||||
@PointClass base(Ammo) model({ "path": ":models/items/ammo/grenades/medium/tris.md2" }) = ammo_grenades : "Grenades" []
|
||||
@PointClass base(Ammo) model({ "path": ":models/items/ammo/rockets/medium/tris.md2" }) = ammo_rockets : "Rockets" []
|
||||
@PointClass base(Ammo) model({ "path": ":models/items/ammo/slugs/medium/tris.md2" }) = ammo_slugs : "Rail gun ammo" []
|
||||
|
||||
// Keep in mind when using func_areaportal that it must
|
||||
// *completely* separate two areas. otherwise, you will
|
||||
// get an error message and the areaportal will not work
|
||||
//
|
||||
// 0221 - is there any point in a "style" key?
|
||||
@SolidClass base(Appearflags, Targetname) = func_areaportal : "Area portal (Vis blocker)" []
|
||||
|
||||
// 0221 - added "pathtarget"
|
||||
// 0221 - changed "sounds" information
|
||||
@SolidClass base(Appearflags, Target, Targetname) color(0 128 204) = func_button : "Button"
|
||||
[
|
||||
pathtarget(string) : "Elevator level target"
|
||||
speed(integer) : "Speed" : 40
|
||||
wait(choices) : "Wait before reset" : 1 =
|
||||
[
|
||||
-1 : "Never Return"
|
||||
]
|
||||
lip(integer) : "Lip remaining after move" : 4
|
||||
health(integer) : "Health (shootable)"
|
||||
sounds(choices) : "Sounds" : 0 =
|
||||
[
|
||||
0 : "Audible"
|
||||
1 : "Silent"
|
||||
]
|
||||
// sounds(choices) : "Sounds" : 2 =
|
||||
// [
|
||||
// 1 : "Silent"
|
||||
// 2 : "Steam Metal"
|
||||
// 3 : "Wodden Clunk"
|
||||
// 4 : "Metallic Click"
|
||||
// 5 : "In-Out"
|
||||
// ]
|
||||
message(string) : "Activation message"
|
||||
_minlight(integer) : "Minimum light (optional)"
|
||||
]
|
||||
|
||||
// 0221 - added "count" key...oops :)
|
||||
@PointClass base(Appearflags, Targetname) color(0 0 255) size(-8 -8 -8, 8 8 8) = func_clock : "Clock"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Timer Up" : 0
|
||||
2 : "Timer Down" : 0
|
||||
4 : "Start Off" : 0
|
||||
8 : "Multi Use" : 0
|
||||
]
|
||||
count(integer) : "Clock Count"
|
||||
pathtarget(string) : "Target"
|
||||
style(choices) : "Style" : 0 =
|
||||
[
|
||||
0 : "xx"
|
||||
1 : "xx:xx"
|
||||
2 : "xx:xx:xx"
|
||||
]
|
||||
]
|
||||
|
||||
// func_conveyor code is incomplete. use the surface attribute "flowing"
|
||||
// and the "current" content flag. (texture won't scroll)
|
||||
//
|
||||
// 0221 - added _minlight
|
||||
@SolidClass base(Appearflags, Targetname) color(0 128 204) = func_conveyor : "Conveyor belt"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Start On" : 0
|
||||
2 : "Toggle" : 0
|
||||
]
|
||||
speed(integer) : "Speed" : 100
|
||||
_minlight(integer) : "Minimum light (optional)"
|
||||
]
|
||||
|
||||
// 0221 - updated "sounds" information
|
||||
// 0221 - added "killtarget"
|
||||
@SolidClass base(Appearflags, Targetname, Target) color(0 128 204) = func_door : "Door"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Start Open" : 0
|
||||
4 : "Crusher" : 0
|
||||
8 : "No Monsters" : 0
|
||||
16 : "Animated" : 0
|
||||
32 : "Toggle" : 0
|
||||
64 : "Animated Fast" : 0
|
||||
]
|
||||
killtarget(string) : "Kill Target"
|
||||
team(string) : "Team"
|
||||
message(string) : "Trigger message"
|
||||
health(integer) : "Health (shootable)"
|
||||
speed(integer) : "Speed" : 100
|
||||
wait(choices) : "Wait before close" : 3 =
|
||||
[
|
||||
-1 : "Stay open"
|
||||
]
|
||||
lip(integer) : "Lip remaining after move" : 8
|
||||
dmg(integer) : "Damage when blocked" : 2
|
||||
sounds(choices) : "Sounds" : 0 =
|
||||
[
|
||||
0 : "Audible"
|
||||
1 : "Silent"
|
||||
]
|
||||
// sounds(choices) : "Sounds" : 3 =
|
||||
// [
|
||||
// 1 : "Silent"
|
||||
// 2 : "Light"
|
||||
// 3 : "Medium"
|
||||
// 4 : "Heavy"
|
||||
// ]
|
||||
_minlight(integer) : "Minimum light (optional)"
|
||||
]
|
||||
|
||||
// 0221 - added "killtarget" and "target" keys
|
||||
// 0221 - updated "sounds" info
|
||||
// 0221 - removed "lip" key
|
||||
@SolidClass base(Appearflags, Targetname, Target) color(0 128 204) = func_door_rotating : "Rotating Door"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Start Open" : 0
|
||||
2 : "Reverse" : 0
|
||||
4 : "Crusher" : 0
|
||||
8 : "No Monsters" : 0
|
||||
16 : "Animated" : 0
|
||||
32 : "Toggle" : 0
|
||||
64 : "X Axis" : 0
|
||||
128 : "Y Axis" : 0
|
||||
]
|
||||
killtarget(string) : "Kill Target"
|
||||
team(string) : "Team"
|
||||
distance(integer) : "Degrees of rotation" : 90
|
||||
message(string) : "Trigger message"
|
||||
health(integer) : "Health (shootable)"
|
||||
speed(integer) : "Speed" : 100
|
||||
wait(choices) : "Wait before close" : 3 =
|
||||
[
|
||||
-1 : "Stay open"
|
||||
]
|
||||
dmg(integer) : "Damage when blocked" : 2
|
||||
sounds(choices) : "Sounds" : 0 =
|
||||
[
|
||||
0 : "Audible"
|
||||
1 : "Silent"
|
||||
]
|
||||
// sounds(choices) : "Sounds" : 3 =
|
||||
// [
|
||||
// 1 : "Silent"
|
||||
// 2 : "Light"
|
||||
// 3 : "Medium"
|
||||
// 4 : "Heavy"
|
||||
// ]
|
||||
_minlight(integer) : "Minimum light (optional)"
|
||||
]
|
||||
|
||||
// 0221 - added "_minlight" key (even tho you dont want it to stand out)
|
||||
// 0221 - added "message" key
|
||||
// 0221 - removed "team" key
|
||||
@SolidClass base(Appearflags, Targetname) color(0 128 204) = func_door_secret : "Secret Door"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Always shoot" : 0
|
||||
2 : "1st Left" : 0
|
||||
4 : "1st Down" : 0
|
||||
]
|
||||
dmg(integer) : "Damage when blocked" : 2
|
||||
wait(choices) : "Wait before close" : 5 =
|
||||
[
|
||||
-1 : "Stay open"
|
||||
]
|
||||
message(string) : "Message"
|
||||
_minlight(integer) : "Minimum light (optional)"
|
||||
]
|
||||
|
||||
// not visible in DM mode
|
||||
//
|
||||
// 0221 - added "_minlight" key (even tho you dont want it to stand out)
|
||||
@SolidClass base(Appearflags, Targetname, Target) color(0 128 204) = func_explosive : "Exploding/Breakable brush"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Trigger Spawn" : 0
|
||||
2 : "Animated" : 0
|
||||
4 : "Animated Fast" : 0
|
||||
]
|
||||
health(integer) : "Health" : 100
|
||||
mass(integer) : "Mass (debris)" : 75
|
||||
dmg(integer) : "Damage" : 0
|
||||
_minlight(integer) : "Minimum light (optional)"
|
||||
]
|
||||
|
||||
@SolidClass base(Appearflags, Targetname) color(255 0 0) = func_killbox : "Instant death" []
|
||||
|
||||
// 0221 - added "_minlight" key
|
||||
@SolidClass base(Appearflags, Targetname) color (0 128 204) = func_object : "Solid bmodel, will fall if its support is removed"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Trigger Spawn" : 0
|
||||
2 : "Animated" : 0
|
||||
4 : "Animated Fast" : 0
|
||||
]
|
||||
_minlight(integer) : "Minimum light (optional)"
|
||||
]
|
||||
|
||||
// 0221 - removed "sounds" key
|
||||
@SolidClass base(Appearflags, Targetname) color(0 128 204) = func_plat : "Platform"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Plat Low Trigger" : 0
|
||||
]
|
||||
speed(integer) : "Speed" : 100
|
||||
accel(integer) : "Acceleration" : 500
|
||||
lip(integer) : "Lip remaining after move" : 8
|
||||
height(integer) : "Movement distance"
|
||||
_minlight(integer) : "Minimum light (optional)"
|
||||
]
|
||||
|
||||
// 0222 - added "team" key
|
||||
@SolidClass base(Appearflags, Targetname) color(0 128 204) = func_rotating : "Rotating brush"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Start On" : 0
|
||||
2 : "Reverse" : 0
|
||||
4 : "X Axis" : 0
|
||||
8 : "Y Axis" : 0
|
||||
16 : "Pain on Touch" : 0
|
||||
32 : "Block Stops" : 0
|
||||
64 : "Animated" : 0
|
||||
128 : "Animated Fast" : 0
|
||||
]
|
||||
team(string) : "Team"
|
||||
speed(integer) : "Speed" : 100
|
||||
dmg(integer) : "Damage when blocked" : 2
|
||||
_minlight(integer) : "Minimum light (optional)"
|
||||
]
|
||||
|
||||
@PointClass base(Appearflags, Targetname, Target) color(76 25 153) size(-8 -8 -8, 8 8 8) = func_timer : "Timer"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Start On" : 0
|
||||
]
|
||||
wait(integer) : "Base wait time" : 1
|
||||
random(integer) : "Wait variance (+/-)"
|
||||
delay(integer) : "Delay before first firing"
|
||||
pausetime(integer) : "Additional delay"
|
||||
]
|
||||
|
||||
// 0219 - added "team" key
|
||||
@SolidClass base(Appearflags, Targetname) color(0 128 204) = func_train : "Moving platform"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Start On" : 0
|
||||
2 : "Toggle" : 0
|
||||
4 : "Block Stops" : 0
|
||||
]
|
||||
target(string) : "First stop target"
|
||||
team(string) : "Team"
|
||||
speed(integer) : "Speed" : 100
|
||||
dmg(integer) : "Damage when blocked" : 2
|
||||
noise(string) : "Sound (path/file.wav)"
|
||||
_minlight(integer) : "Minimum light (optional)"
|
||||
]
|
||||
|
||||
// 0221 - added a "_minlight" key
|
||||
@SolidClass base(Appearflags, Targetname) color(0 128 204) = func_wall : "Solid Wall"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Trigger Spawn" : 0
|
||||
2 : "Toggle" : 0
|
||||
4 : "Start On" : 0
|
||||
8 : "Animated" : 0
|
||||
16 : "Animated Fast" : 0
|
||||
]
|
||||
_minlight(integer) : "Minimum light (optional)"
|
||||
]
|
||||
|
||||
// must never be transparent?
|
||||
//
|
||||
// 0221 - added a "_minlight" key
|
||||
@SolidClass base(Appearflags, Targetname) color(0 128 204) = func_water : "Moveable water"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Start Open" : 0
|
||||
]
|
||||
speed(integer) : "Speed" : 25
|
||||
wait(choices) : "Wait before return" : -1 =
|
||||
[
|
||||
-1 : "Toggle"
|
||||
]
|
||||
lip(integer) : "Lip remaining after move"
|
||||
sounds(Choices) : "Sounds" : 1 =
|
||||
[
|
||||
0 : "No Sounds"
|
||||
1 : "Water"
|
||||
2 : "Lava"
|
||||
]
|
||||
team(string) : "Team"
|
||||
_minlight(integer) : "Minimum light (optional)"
|
||||
]
|
||||
|
||||
@PointClass base(Appearflags, Targetname) color(0 128 0) size(-4 -4 -4, 4 4 4) = info_null : "Spotlight target" []
|
||||
@PointClass base(info_null) = info_notnull : "Lightning target" []
|
||||
|
||||
@BaseClass base(Appearflags, Target) color(76 76 255) size(-16 -16 -16, 16 16 16) = Items
|
||||
[
|
||||
team(string) : "Team"
|
||||
]
|
||||
|
||||
@PointClass base(Items) model({ "path": ":models/items/adrenal/tris.md2" }) = item_adrenaline : "+1 to max health" []
|
||||
@PointClass base(Items) model({ "path": ":models/items/c_head/tris.md2" }) = item_ancient_head : "+2 to max health" []
|
||||
@PointClass base(Items) model({ "path": ":models/items/armor/body/tris.md2" }) = item_armor_body : "Body armor" []
|
||||
@PointClass base(Items) model({ "path": ":models/items/armor/combat/tris.md2" }) = item_armor_combat : "Combat armor" []
|
||||
@PointClass base(Items) model({ "path": ":models/items/armor/jacket/tris.md2" }) = item_armor_jacket : "Jacket armor" []
|
||||
@PointClass base(Items) model({ "path": ":models/items/armor/shard/tris.md2" }) = item_armor_shard : "Armor shard" []
|
||||
@PointClass base(Items) model({ "path": ":models/items/band/tris.md2" }) = item_bandolier : "Equipment belt" []
|
||||
@PointClass base(Items) model({ "path": ":models/items/breather/tris.md2" }) = item_breather : "Underwater breather" []
|
||||
@PointClass base(Items) model({ "path": ":models/items/enviro/tris.md2" }) = item_enviro : "Enviro-Suit" []
|
||||
@PointClass base(Items) model({ "path": ":models/items/healing/medium/tris.md2" }) = item_health : "+10 health" []
|
||||
@PointClass base(Items) model({ "path": ":models/items/healing/stimpack/tris.md2" }) = item_health_small : "+2 health" []
|
||||
@PointClass base(Items) model({ "path": ":models/items/healing/large/tris.md2" }) = item_health_large : "+25 health" []
|
||||
@PointClass base(Items) model({ "path": ":models/items/mega_h/tris.md2" }) = item_health_mega : "+100 health" []
|
||||
@PointClass base(Items) model({ "path": ":models/items/invulner/tris.md2" }) = item_invulnerability : "Invulnerability" []
|
||||
@PointClass base(Items) model({ "path": ":models/items/pack/tris.md2" }) = item_pack : "Heavy backpack" []
|
||||
@PointClass base(Items) model({ "path": ":models/items/armor/screen/tris.md2" }) = item_power_screen : "Power screen" []
|
||||
@PointClass base(Items) model({ "path": ":models/items/armor/shield/tris.md2" }) = item_power_shield : "Power shield" []
|
||||
@PointClass base(Items) model({ "path": ":models/items/quaddama/tris.md2" }) = item_quad : "Quad damage" []
|
||||
@PointClass base(Items) model({ "path": ":models/items/silencer/tris.md2" }) = item_silencer : "Silencer" []
|
||||
|
||||
@BaseClass base(Appearflags, Target) color(0 128 204) size(-16 -16 -16, 16 16 16) = Keys []
|
||||
|
||||
@PointClass base(Keys) model({ "path": ":models/items/keys/target/tris.md2" }) = key_airstrike_target : "Tank commander's head" []
|
||||
@PointClass base(Keys) model({ "path": ":models/items/keys/key/tris.md2" }) = key_blue_key : "Normal door key - blue" []
|
||||
@PointClass base(Keys) model({ "path": ":models/monsters/commandr/head/tris.md2" }) = key_commander_head : "Tank commander's head" []
|
||||
@PointClass base(Keys) model({ "path": ":models/items/keys/data_cd/tris.md2" }) = key_data_cd : "Key for computer centers" []
|
||||
@PointClass base(Keys) model({ "path": ":models/items/keys/spinner/tris.md2" }) = key_data_spinner : "Key for city computer" []
|
||||
@PointClass base(Keys) model({ "path": ":models/items/keys/pass/tris.md2" }) = key_pass : "Security pass for secret level" []
|
||||
|
||||
// 0301 - added "targetname" key
|
||||
@PointClass base(Keys, Targetname) model({ "path": ":models/items/keys/power/tris.md2" }) = key_power_cube : "Warehouse circuits"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Trigger Spawn" : 0
|
||||
2 : "No Touch" : 0
|
||||
]
|
||||
]
|
||||
@PointClass base(Keys) model({ "path": ":models/items/keys/pyramid/tris.md2" }) = key_pyramid : "Key for entrance to jail3" []
|
||||
@PointClass base(Keys) model({ "path": ":models/items/keys/red_key/tris.md2" }) = key_red_key : "normal door key - red" []
|
||||
|
||||
@PointClass base(Appearflags, Target, Targetname) color(0 255 0) size(-8 -8 -8, 8 8 8) = light : "Light"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Start Off" : 0
|
||||
]
|
||||
light(integer) : "Brightness" : 300
|
||||
style(Choices) : "Style" : 0 =
|
||||
[
|
||||
0 : "Normal"
|
||||
1 : "Flicker #1"
|
||||
6 : "Flicker #2"
|
||||
2 : "Slow Strong Pulse"
|
||||
3 : "Candle #1"
|
||||
7 : "Candle #2"
|
||||
8 : "Candle #3"
|
||||
4 : "Fast Strobe"
|
||||
5 : "Gentle Pulse #1"
|
||||
9 : "Slow Strobe"
|
||||
10 : "Fluorescent Flicker"
|
||||
11 : "Slow pulse, no black"
|
||||
]
|
||||
_cone(integer) : "Size of light (spotlight)" : 10
|
||||
]
|
||||
|
||||
// 0221 - blanked out the "start off" spawnflag
|
||||
// 0221 - added better descriptions :)
|
||||
@PointClass base(light) color(0 255 0) size(-2 -2 -12, 2 2 12) = light_mine1 : "Dusty fluorescent light fixture"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "" : 0
|
||||
]
|
||||
]
|
||||
// 0221 - changed inheritance from "light" to "light_min1"
|
||||
@PointClass base(light_mine1) = light_mine2 : "Clean fluorescent light fixture" []
|
||||
|
||||
// actor code is still broken...leaving this in because i know *someone* will fix
|
||||
// this because its pretty damn cool.
|
||||
@PointClass base(PlayerClass, Target) = misc_actor : "Actor"
|
||||
[
|
||||
health(integer) : "Health" : 100
|
||||
]
|
||||
@PointClass base(Appearflags, Targetname) = target_actor : "Actor path"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Jump" : 0
|
||||
2 : "Shoot" : 0
|
||||
4 : "Attack" : 0
|
||||
16 : "Hold" : 0
|
||||
32 : "Brutal" : 0
|
||||
]
|
||||
target(string) : "Next path target"
|
||||
pathtarget(string) : "Action target"
|
||||
wait(integer) : "Pause time"
|
||||
message(string) : "Message"
|
||||
speed(integer) : "Forward (jump)" : 200
|
||||
height(integer) : "Height (jump)" : 200
|
||||
]
|
||||
|
||||
// 0224 - changed banner size from (-4 -4 -4, 4 4 4) to (-4 -4 0, 4 4 246)
|
||||
@PointClass base(Appearflags) color(255 128 0) size(-4 -4 0, 4 4 246) model({ "path": ":models/objects/banner/tris.md2" }) = misc_banner : "Flowing banner" []
|
||||
|
||||
@PointClass base(Appearflags) color(255 128 0) size(-8 -8 -8, 8 8 8) model({ "path": ":models/objects/black/tris.md2" }) = misc_blackhole : "Blackhole" []
|
||||
|
||||
@PointClass base(Appearflags) color(255 128 0) size(-16 -16 0, 16 16 16)
|
||||
model(
|
||||
{{
|
||||
spawnflags & 32 -> { "path": ":models/deadbods/dude/tris.md2", "frame": 5 },
|
||||
spawnflags & 16 -> { "path": ":models/deadbods/dude/tris.md2", "frame": 4 },
|
||||
spawnflags & 8 -> { "path": ":models/deadbods/dude/tris.md2", "frame": 3 },
|
||||
spawnflags & 4 -> { "path": ":models/deadbods/dude/tris.md2", "frame": 2 },
|
||||
spawnflags & 2 -> { "path": ":models/deadbods/dude/tris.md2", "frame": 1 },
|
||||
":models/deadbods/dude/tris.md2"
|
||||
}}
|
||||
) = misc_deadsoldier : "Dead guys! 6 of em!"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "On Back" : 0
|
||||
2 : "On Stomach" : 0
|
||||
4 : "Back, Decap" : 0
|
||||
8 : "Fetal Position" : 0
|
||||
16 : "Sitting, Decap" : 0
|
||||
32 : "Impaled" : 0
|
||||
]
|
||||
]
|
||||
|
||||
// The following three entities are eye-candy - they don't do anything
|
||||
@PointClass base(Appearflags) color(255 128 0) size(-32 -32 -16, 32 32 32) = misc_eastertank : "Tank Pimp" []
|
||||
@PointClass base(Appearflags) color(255 128 0) size(-32 -32 0, 32 32 32) = misc_easterchick : "Chick #1" []
|
||||
@PointClass base(Appearflags) color(255 128 0) size(-32 -32 0, 32 32 32) = misc_easterchick2 : "Chick #2" []
|
||||
|
||||
// 0225 - removed "target" key - id concluded being able to target
|
||||
// something with a movable barrel was a bug and removed that function :(
|
||||
@PointClass base(Appearflags, Targetname) color(0 128 204) size(-16 -16 0, 16 16 40) model({ "path": ":models/objects/barrels/tris.md2" }) = misc_explobox : "Large exploding box"
|
||||
[
|
||||
mass(integer) : "Mass" : 100
|
||||
health(integer) : "Health" : 80
|
||||
dmg(integer) : "Damage" : 150
|
||||
]
|
||||
|
||||
// set angle for gib direction, otherwise it just drops
|
||||
@PointClass base(Appearflags) color(255 0 0) size(-8 -8 -8, 8 8 8) model({ "path": ":models/objects/gibs/arm/tris.md2" }) = misc_gib_arm : "arm gib, use with target_spawner" []
|
||||
@PointClass base(Appearflags) color(255 0 0) size(-8 -8 -8, 8 8 8) model({ "path": ":models/objects/gibs/head/tris.md2" }) = misc_gib_head : "head gib, use with target_spawner" []
|
||||
@PointClass base(Appearflags) color(255 0 0) size(-8 -8 -8, 8 8 8) model({ "path": ":models/objects/gibs/arm/tris.md2" }) = misc_gib_leg : "leg gib, use with target_spawner" []
|
||||
|
||||
// 0221 - added "item", "deathtarget", and "killtarget" keys
|
||||
@PointClass base(Appearflags, Targetname, Target) color(255 128 0) size(-16 -16 -24, 16 16 32) = misc_insane : "Insane Soldiers"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Ambush" : 0
|
||||
2 : "Trigger Spawn" : 0
|
||||
4 : "Crawl" : 0
|
||||
8 : "Crucified" : 0
|
||||
16 : "Stand Ground" : 0
|
||||
32 : "Always Stand" : 0
|
||||
]
|
||||
deathtarget(string) : "Entity to trigger at death"
|
||||
killtarget(string) : "Entity to remove at death"
|
||||
item(string) : "Item to spawn at death"
|
||||
]
|
||||
|
||||
// 0303 - added "targetname" key
|
||||
@PointClass base(Appearflags, Targetname) color(255 128 0) size(-64 -64 0, 64 64 128) model({ "path": ":models/objects/satellite/tris.md2" }) = misc_satellite_dish : "Satellite Dish" []
|
||||
|
||||
@PointClass base(Appearflags, Targetname) color(255 128 0) size(-16 -16 0, 16 16 32) model({ "path": ":models/ships/strogg1/tris.md2" }) = misc_strogg_ship : "Strogg ship for flybys"
|
||||
[
|
||||
target(string) : "First path target"
|
||||
speed(integer) : "Speed"
|
||||
|
||||
]
|
||||
|
||||
// place teleporter units 10 units into a brush to get rid of teleport pad
|
||||
@PointClass base(Appearflags, Targetname) color(255 0 0) size(-32 -32 -24, 32 32 -16) = misc_teleporter : "Teleporter"
|
||||
[
|
||||
target(string) : "Teleport Destination"
|
||||
]
|
||||
@PointClass base(Appearflags, Targetname) color(255 0 0) size(-32 -32 -24, 32 32 -16) = misc_teleporter_dest : "Teleport Destination" []
|
||||
|
||||
@PointClass base(Appearflags) color(255 128 0) size(-176 -120 -24, 176 120 72) model({ "path": ":models/ships/bigviper/tris.md2" }) = misc_bigviper : "Large stationary Viper" []
|
||||
@PointClass base(Appearflags, Targetname) color(255 128 0) size(-16 -16 0, 16 16 32) model({ "path": ":models/ships/viper/tris.md2" }) = misc_viper : "Viper for flybys"
|
||||
[
|
||||
target(string) : "First path target"
|
||||
speed(integer) : "Speed"
|
||||
|
||||
]
|
||||
@PointClass base(Appearflags, Targetname) color(255 0 0) size(-8 -8 -8, 8 8 8) model({ "path": ":models/objects/bomb/tris.md2" }) = misc_viper_bomb : "Viper Bomb"
|
||||
[
|
||||
dmg(integer) : "Damage"
|
||||
]
|
||||
|
||||
//
|
||||
// Monsters!
|
||||
//
|
||||
|
||||
// 0221 - added "deathtarget", "killtarget", and "combattarget" keys
|
||||
@BaseClass base(Appearflags, Target, Targetname) color(255 128 0) size(-16 -16 -24, 16 16 32) = Monsters
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Ambush" : 0
|
||||
2 : "Trigger Spawn" : 0
|
||||
4 : "Sight" : 0
|
||||
]
|
||||
combattarget(string) : "Point combat target"
|
||||
deathtarget(string) : "Entity to trigger at death"
|
||||
killtarget(string) : "Entity to remove at death"
|
||||
item(string) : "Spawn Item"
|
||||
]
|
||||
|
||||
@PointClass base(Monsters) model({ "path": ":models/monsters/berserk/tris.md2" }) = monster_berserk : "Berserker" []
|
||||
@PointClass base(Monsters) size(-56 -56 0, 56 56 80) = monster_boss2 : "Boss2" []
|
||||
|
||||
// Just fidgets in one spot and teleports away when triggered
|
||||
//
|
||||
// 0221 - removed Monsters class inheritance
|
||||
@PointClass base(Appearflags, Targetname) size(-32 -32 0, 32 32 90) = monster_boss3_stand : "Stationnary Makron" []
|
||||
|
||||
@PointClass base(Monsters) model({ "path": ":models/monsters/brain/tris.md2" }) = monster_brain : "Brains" []
|
||||
@PointClass base(Monsters) model({ "path": ":models/monsters/bitch/tris.md2" }) = monster_chick : "Iron Maiden" []
|
||||
@PointClass base(Appearflags, Targetname) color(255 128 0) size(-32 -32 0, 32 32 48) model({ "path": ":models/monsters/commandr/tris.md2" }) = monster_commander_body : "Tank commander's decapitated body" []
|
||||
@PointClass base(Monsters) model({ "path": ":models/monsters/flipper/tris.md2" }) = monster_flipper : "Barracuda shark" []
|
||||
@PointClass base(Monsters) model({ "path": ":models/monsters/float/tris.md2" }) = monster_floater : "Technician" []
|
||||
@PointClass base(Monsters) model({ "path": ":models/monsters/flyer/tris.md2" }) = monster_flyer : "Flyer" []
|
||||
@PointClass base(Monsters) size(-32 -32 -24, 32 32 64) model({ "path": ":models/monsters/gladiatr/tris.md2" }) = monster_gladiator : "Gladiator" []
|
||||
@PointClass base(Monsters) model({ "path": ":models/monsters/gunner/tris.md2" }) = monster_gunner : "Gunner" []
|
||||
@PointClass base(Monsters) model({ "path": ":models/monsters/hover/tris.md2" }) = monster_hover : "Icarus" []
|
||||
@PointClass base(Monsters) model({ "path": ":models/monsters/infantry/tris.md2" }) = monster_infantry : "Infantry" []
|
||||
@PointClass base(Monsters) size(-80 -80 0, 90 90 140) model({ "path": ":models/monsters/boss3/jorg/tris.md2" }) = monster_jorg : "Jorg" []
|
||||
|
||||
// 0221 - this entity can only spawn once the Jorg dies ... im sure someone will change that tho
|
||||
@PointClass base(Monsters) size(-30 -30 0, 30 30 90) model({ "path": ":models/monsters/boss3/rider/tris.md2" }) = monster_makron : "Makron" []
|
||||
@PointClass base(Monsters) model({ "path": ":models/monsters/medic/tris.md2" }) = monster_medic : "Medic" []
|
||||
@PointClass base(Monsters) size(-32 -32 -24, 32 32 32) model({ "path": ":models/monsters/mutant/tris.md2" }) = monster_mutant : "Mutant" []
|
||||
@PointClass base(Monsters) model({ "path": ":models/monsters/parasite/tris.md2" }) = monster_parasite : "Parasite" []
|
||||
@PointClass base(Monsters) model({ "path": ":models/monsters/soldier/tris.md2", "skin": 0 }) = monster_soldier_light : "Light Soldier" []
|
||||
@PointClass base(Monsters) model({ "path": ":models/monsters/soldier/tris.md2", "skin": 2 }) = monster_soldier : "Soldier" []
|
||||
@PointClass base(Monsters) model({ "path": ":models/monsters/soldier/tris.md2", "skin": 4 }) = monster_soldier_ss : "SS Soldier" []
|
||||
@PointClass base(Monsters) size(-32 -32 -16, 32 32 72) model({ "path": ":models/monsters/tank/tris.md2" }) = monster_tank : "Tank" []
|
||||
@PointClass base(Monsters) size(-64 -64 0, 64 64 72) model({ "path": ":models/monsters/tank/tris.md2", "skin": 2 }) = monster_supertank : "Super tank" []
|
||||
@PointClass base(Monsters) size(-32 -32 -16, 32 32 72) model({ "path": ":models/monsters/boss1/tris.md2" }) = monster_tank_commander : "Tank commander" []
|
||||
|
||||
// using a "wait" value of -1 on a path corner causes a func_train to go silent between
|
||||
// itself and the next path corner when the train is restarted. The train's sound will
|
||||
// resume as soon as it reaches a path corner with a "wait" value other than -1
|
||||
@PointClass base(Appearflags, Targetname) color(128 76 0) size(-8 -8 -8, 8 8 8) = path_corner : "Path marker"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Teleport" : 0
|
||||
]
|
||||
target(string) : "Next path target"
|
||||
pathtarget(string) : "Event to trigger"
|
||||
wait(choices) : "Wait" : 0 =
|
||||
[
|
||||
-1 : "Wait for retrigger"
|
||||
]
|
||||
]
|
||||
|
||||
// "target" doesn't work (for now)...a separate trigger is needed
|
||||
@PointClass base(Appearflags, Targetname, Target) color(128 76 9) size(-8 -8 -8, 8 8 8) = point_combat : "1st point of combat"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Hold" : 0
|
||||
]
|
||||
]
|
||||
|
||||
@PointClass base(Appearflags, Targetname) color(255 0 0) size(-8 -8 -8, 8 8 8) = target_blaster : "Blaster"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "No Trail" : 0
|
||||
2 : "No Effects" : 0
|
||||
]
|
||||
dmg(integer) : "Damage" : 15
|
||||
speed(integer) : "Speed" : 1000
|
||||
]
|
||||
|
||||
// set "map" value to "mapname$playername" where playername equals
|
||||
// the targetname of a corresponding info_player_start in the
|
||||
// next map. To play a cinematic before starting the level, the
|
||||
// "map" value should be "cinemeatic.cin+mapname$playername". Note
|
||||
// that a playername is not required if the corresponding info_player_start
|
||||
// doesn't have a targetname. If you want this to be designated as the last
|
||||
// level of a unit, place an asterix (*) before the map name.
|
||||
@PointClass base(Appearflags, Targetname) color(255 0 0) size(-8 -8 -8, 8 8 8) = target_changelevel : "Change level"
|
||||
[
|
||||
map(string) : "Next map"
|
||||
]
|
||||
|
||||
// 0221 - added "_minlight" key
|
||||
@SolidClass base(Appearflags, Targetname) color(0 0 255) = target_character : "Use with target_string and func_clock"
|
||||
[
|
||||
team(string) : "Team"
|
||||
count(integer) : "Position in the string"
|
||||
_minlight(string) : "Minimum light (optional)"
|
||||
]
|
||||
|
||||
@PointClass base(Appearflags, Targetname, Target) color(128 128 128) size(-8 -8 -8, 8 8 8) = target_crosslevel_trigger : "Cross-level trigger"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Trigger 1" : 0
|
||||
2 : "Trigger 2" : 0
|
||||
4 : "Trigger 3" : 0
|
||||
8 : "Trigger 4" : 0
|
||||
16 : "Trigger 5" : 0
|
||||
32 : "Trigger 6" : 0
|
||||
64 : "Trigger 7" : 0
|
||||
128 : "Trigger 8" : 0
|
||||
]
|
||||
killtarget(string) : "Kill Target"
|
||||
message(string) : "Message"
|
||||
delay(integer) : "Trigger delay"
|
||||
]
|
||||
|
||||
@PointClass base(Appearflags, Targetname, Target) color(128 128 128) size(-8 -8 -8, 8 8 8) = target_crosslevel_target : "Cross-level trigger"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Trigger 1" : 0
|
||||
2 : "Trigger 2" : 0
|
||||
4 : "Trigger 3" : 0
|
||||
8 : "Trigger 4" : 0
|
||||
16 : "Trigger 5" : 0
|
||||
32 : "Trigger 6" : 0
|
||||
64 : "Trigger 7" : 0
|
||||
128 : "Trigger 8" : 0
|
||||
]
|
||||
killtarget(string) : "Kill Target"
|
||||
delay(integer) : "Trigger delay (if activated)" : 1
|
||||
]
|
||||
|
||||
@PointClass base(Appearflags, Targetname) color(255 0 0) size(-8 -8 -8, 8 8 8) = target_earthquake : "Level wide earthquake"
|
||||
[
|
||||
speed(integer) : "Severity of quake" : 200
|
||||
count(integer) : "Duration" : 5
|
||||
]
|
||||
|
||||
@PointClass base(Appearflags, Targetname) color(255 0 0) size(-8 -8 -8, 8 8 8) = target_explosion : "Explosion"
|
||||
[
|
||||
delay(integer) : "Delay before explosion"
|
||||
dmg(integer) : "Radius damage" : 0
|
||||
]
|
||||
|
||||
@PointClass base(Appearflags, Targetname) color(255 0 255) size(-8 -8 -8, 8 8 8) = target_goal : "Counts a goal completed" []
|
||||
|
||||
@PointClass base(Appearflags, Targetname) color(255 0 255) size(-8 -8 -8, 8 8 8) = target_help : "Computer help message"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Main Onjective" : 0
|
||||
]
|
||||
message(string) : "Computer message"
|
||||
]
|
||||
|
||||
// if no color spawnflags are set, the laser color defaults to dim gray (and hard to see
|
||||
// setting the damage to 0 makes it use the default damage of 1
|
||||
// setting the damage to a negative number will actually give health
|
||||
@PointClass base(Appearflags, Targetname, Target) color(0 128 204) size(-8 -8 -8, 8 8 8) = target_laser : "Laser"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Start On" : 0
|
||||
2 : "Red" : 0
|
||||
4 : "Green" : 0
|
||||
8 : "Blue" : 0
|
||||
16 : "Yellow" : 0
|
||||
32 : "Orange" : 0
|
||||
64 : "Fat" : 0
|
||||
]
|
||||
dmg(integer) : "Damage"
|
||||
]
|
||||
|
||||
// 0221 - added "target" key
|
||||
@PointClass base(Appearflags, Targetname, Target) color(0 128 204) size(-8 -8 -8, 8 8 8) = target_lightramp : "Light ramp"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Toggle" : 0
|
||||
]
|
||||
speed(integer) : "Speed"
|
||||
message(string) : "start/end light level"
|
||||
]
|
||||
|
||||
@PointClass base(Appearflags, Targetname) color(255 0 255) size(-8 -8 -8, 8 8 8) = target_secret : "Counts a secret found"
|
||||
[
|
||||
message(string) : "Message to print" : "You have found a secret."
|
||||
]
|
||||
|
||||
// set speed and angle, otherwise spawned object drops
|
||||
//
|
||||
// 0221 - changed "target" key description for clarity
|
||||
@PointClass base(Appearflags, Targetname) color(255 0 0) size(-8 -8 -8, 8 8 8) = target_spawner : "Monster/Item spawner"
|
||||
[
|
||||
target(string) : "Monster/Item to spawn"
|
||||
speed(integer) : "Speed"
|
||||
]
|
||||
|
||||
// looped sounds are automatically volume 1, attenuation 3 :\
|
||||
@PointClass base(Appearflags, Targetname) color(255 0 0) size(-8 -8 -8, 8 8 8) = target_speaker : "Sound player"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Looped On" : 0
|
||||
2 : "Looped Off" : 0
|
||||
4 : "Reliable" : 0
|
||||
]
|
||||
noise(string) : "Sound (path/file.wav)"
|
||||
attenuation(Choices) : "Attenuation" : 1 =
|
||||
[
|
||||
-1 : "None, send to whole level"
|
||||
1 : "Normal fighting sounds"
|
||||
2 : "Idle sound level"
|
||||
3 : "Ambient sound level"
|
||||
]
|
||||
volume(integer) : "Volume (0.0 - 1.0)" : 1
|
||||
]
|
||||
|
||||
// "sounds" values other than 1 are silent. leaving in the other
|
||||
// options for availability to mods/fixes
|
||||
//
|
||||
// 0221 - clarified "count" description
|
||||
@PointClass base(Appearflags, Targetname) color(255 0 0) size(-8 -8 -8, 8 8 8) = target_splash : "Creates a splash when used"
|
||||
[
|
||||
sounds(choices) : "Type of splash" : 2 =
|
||||
[
|
||||
1 : "Sparks"
|
||||
2 : "Blue water"
|
||||
3 : "Brown water"
|
||||
4 : "Slime"
|
||||
5 : "Lava"
|
||||
6 : "Blood"
|
||||
]
|
||||
count(integer) : "Number of pixels in splash (1 - 255)"
|
||||
dmg(integer) : "Radius damage"
|
||||
]
|
||||
|
||||
// 0221 - removed "message" key (?)
|
||||
@PointClass base(Appearflags, Targetname) color(0 0 255) size(-8 -8 -8, 8 8 8) = target_string : "String"
|
||||
[
|
||||
team(string) : "Team"
|
||||
]
|
||||
|
||||
// eye candy... Particles #2 (style 22) is quite cool
|
||||
@PointClass base(Appearflags, Targetname) color(255 0 0) size(-8 -8 -8, 8 8 8) = target_temp_entity : "Temp entity"
|
||||
[
|
||||
style(choices) : "Style" : 22 =
|
||||
[
|
||||
20 : "Green Fireball"
|
||||
21 : "Particles #1"
|
||||
22 : "Particles #2"
|
||||
]
|
||||
]
|
||||
|
||||
// 0221 - added "delay" and "killtarget" keys
|
||||
@PointClass base(Appearflags, Target) color(128 128 128) size(-8 -8 -8, 8 8 8) = trigger_always : "Always triggers"
|
||||
[
|
||||
killtarget(string) : "Kill Target"
|
||||
delay(integer) : "Time before triggering"
|
||||
]
|
||||
|
||||
@SolidClass base(Appearflags, Targetname, Target) color(128 128 128) = trigger_counter : "Counter"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "No Message" : 0
|
||||
]
|
||||
count(integer) : "Count before trigger" : 2
|
||||
]
|
||||
|
||||
@PointClass base(Appearflags, Targetname, Target) color(76 25 153) = trigger_elevator : "Elevator trigger" []
|
||||
|
||||
@SolidClass base(Appearflags) color(128 128 128) = trigger_gravity : "Change gravity"
|
||||
[
|
||||
gravity(integer) : "Gravity (standard = 1.0)" : 1
|
||||
]
|
||||
|
||||
@SolidClass base(Appearflags, Targetname) color(128 128 128) = trigger_hurt : "Hurts on touch"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Start Off" : 0
|
||||
2 : "Toggle" : 0
|
||||
4 : "Silent" : 0
|
||||
8 : "No Protection" : 0
|
||||
16 : "Slow hurt" : 0
|
||||
]
|
||||
dmg(integer) : "Damage" : 5
|
||||
]
|
||||
|
||||
@PointClass base(Appearflags, Targetname, Target) color(128 128 128) size(-8 -8 -8, 8 8 8) = trigger_key : "Triggers with key"
|
||||
[
|
||||
killtarget(string) : "Kill target"
|
||||
item(string) : "Item classname" : "key_blue_key"
|
||||
]
|
||||
|
||||
@SolidClass base(Appearflags) color(128 128 128) = trigger_monsterjump : "Makes monsters jump"
|
||||
[
|
||||
speed(integer) : "Speed thrown forward" : 200
|
||||
height(integer) : "Height thrown upward" : 200
|
||||
]
|
||||
|
||||
// 0221 - switched around _relay, _once, and _multiple
|
||||
@PointClass base(Appearflags, Targetname, Target) color(128 128 128) = trigger_relay : "Relay trigger"
|
||||
[
|
||||
killtarget(string) : "Kill Target"
|
||||
delay(integer) : "Time before triggering"
|
||||
message(string) : "Trigger message"
|
||||
]
|
||||
|
||||
// 0303 - removed "sounds" key
|
||||
@SolidClass base(trigger_relay) = trigger_once : "Single fire trigger"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
4 : "Triggered" : 0
|
||||
]
|
||||
]
|
||||
|
||||
@SolidClass base(trigger_once) = trigger_multiple : "Multiple fire trigger"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Monster" : 0
|
||||
2 : "Not Player" : 0
|
||||
]
|
||||
wait(integer) : "Seconds between triggers" : 0
|
||||
]
|
||||
|
||||
@SolidClass base(Appearflags) color(128 128 128) = trigger_push : "Push trigger"
|
||||
[
|
||||
spawnflags(Flags) =
|
||||
[
|
||||
1 : "Push Once" : 0
|
||||
]
|
||||
speed(integer) : "Speed of push" : 1000
|
||||
]
|
||||
|
||||
// 0221 - added "_minlight" key to _breach and _base
|
||||
@SolidClass base(Appearflags, Targetname, Target) color(128 255 128) = turret_breach : "Turret breach"
|
||||
[
|
||||
speed(integer) : "Speed" : 50
|
||||
dmg(integer) : "Damage" : 10
|
||||
minpitch(integer) : "Miminum pitch angle" : -30
|
||||
maxpitch(integer) : "Maximum pitch angle" : 30
|
||||
minyaw(integer) : "Minimum yaw angle" : 0
|
||||
maxyaw(integer) : "Maximum yaw angle" : 360
|
||||
team(string) : "Team"
|
||||
_minlight(string) : "Minimum light (optional)"
|
||||
]
|
||||
@SolidClass base(Appearflags) color(128 255 128) = turret_base : "Turret base"
|
||||
[
|
||||
team(string) : "Team"
|
||||
_minlight(string) : "Minimum light (optional)"
|
||||
]
|
||||
@PointClass base(Appearflags) color(128 255 128) size(-16 -16 -24, 16 16 32) = turret_driver : "Turret driver"
|
||||
[
|
||||
target(string) : "Target (turret_breach)"
|
||||
]
|
||||
|
||||
@PointClass base(Appearflags) color(0 128 204) size(-8 -8 -8, 8 8 8) = viewthing : "Just for debugging level - dont use" []
|
||||
|
||||
@BaseClass base(Appearflags, Target) color(76 76 255) size(-16 -16 -16, 16 16 16) = Weapons
|
||||
[
|
||||
team(string) : "Team"
|
||||
]
|
||||
|
||||
//
|
||||
// Weapons!
|
||||
//
|
||||
|
||||
@PointClass base(Weapons) model({ "path": ":models/weapons/g_shotg/tris.md2" }) = weapon_shotgun : "Shotgun" []
|
||||
@PointClass base(Weapons) model({ "path": ":models/weapons/g_shotg2/tris.md2" }) = weapon_supershotgun : "Super shotgun" []
|
||||
@PointClass base(Weapons) model({ "path": ":models/weapons/g_machn/tris.md2" }) = weapon_machinegun : "Machinegun" []
|
||||
@PointClass base(Weapons) model({ "path": ":models/weapons/g_chain/tris.md2" }) = weapon_chaingun : "Chain gun" []
|
||||
@PointClass base(Weapons) model({ "path": ":models/weapons/g_launch/tris.md2" }) = weapon_grenadelauncher : "Grenade launcher" []
|
||||
@PointClass base(Weapons) model({ "path": ":models/weapons/g_rocket/tris.md2" }) = weapon_rocketlauncher : "Rocket launcher" []
|
||||
@PointClass base(Weapons) model({ "path": ":models/weapons/g_hyperb/tris.md2" }) = weapon_hyperblaster : "Hyperblaster" []
|
||||
@PointClass base(Weapons) model({ "path": ":models/weapons/g_rail/tris.md2" }) = weapon_railgun : "Rail gun" []
|
||||
@PointClass base(Weapons) model({ "path": ":models/weapons/g_bfg/tris.md2" }) = weapon_bfg : "Big Freakin Gun!" []
|
||||
BIN
tb/games/Quake2/colormap.pcx
Normal file
222
tb/games/Quake3/GameConfig.cfg
Normal file
@@ -0,0 +1,222 @@
|
||||
{
|
||||
"version": 3,
|
||||
"name": "Quake 3",
|
||||
"icon": "Icon.png",
|
||||
"experimental": true,
|
||||
"fileformats": [
|
||||
{ "format": "Quake3" },
|
||||
{ "format": "Quake3 (legacy)" }
|
||||
],
|
||||
"filesystem": {
|
||||
"searchpath": "baseq3",
|
||||
"packageformat": { "extension": "pk3", "format": "zip" }
|
||||
},
|
||||
"textures": {
|
||||
"package": { "type": "directory", "root": "textures" },
|
||||
"format": { "extensions": [ "" ], "format": "q3shader" },
|
||||
"shaderSearchPath": "scripts", // this will likely change when we get a material system
|
||||
"attribute": "_tb_textures"
|
||||
},
|
||||
"entities": {
|
||||
"definitions": [ "entities.ent" ],
|
||||
"defaultcolor": "0.6 0.6 0.6 1.0",
|
||||
"modelformats": [ "md3", "ase" ]
|
||||
},
|
||||
"tags": {
|
||||
"brush": [
|
||||
{
|
||||
"name": "Trigger",
|
||||
"attribs": [ "transparent" ],
|
||||
"match": "classname",
|
||||
"pattern": "trigger*",
|
||||
"texture": "trigger"
|
||||
}
|
||||
],
|
||||
"brushface": [
|
||||
{
|
||||
"name": "Clip",
|
||||
"attribs": [ "transparent" ],
|
||||
"match": "surfaceparm",
|
||||
"pattern": "playerclip"
|
||||
},
|
||||
{
|
||||
"name": "Caulk",
|
||||
"attribs": [ "transparent" ],
|
||||
"match": "texture",
|
||||
"pattern": "caulk"
|
||||
},
|
||||
{
|
||||
"name": "Skip",
|
||||
"attribs": [ "transparent" ],
|
||||
"match": "texture",
|
||||
"pattern": "skip"
|
||||
},
|
||||
{
|
||||
"name": "Hint",
|
||||
"attribs": [ "transparent" ],
|
||||
"match": "texture",
|
||||
"pattern": "hint*"
|
||||
},
|
||||
{
|
||||
"name": "Detail",
|
||||
"match": "contentflag",
|
||||
"flags": [ "detail" ]
|
||||
},
|
||||
{
|
||||
"name": "Liquid",
|
||||
"match": "contentflag",
|
||||
"flags": [ "lava", "slime", "water" ]
|
||||
},
|
||||
{
|
||||
"name": "Sound",
|
||||
"match": "surfaceflag",
|
||||
"flags": [ "wood", "metal", "stone", "glass", "ice", "snow", "puddle", "sand" ]
|
||||
},
|
||||
{
|
||||
"name": "Transparent",
|
||||
"attribs": [ "transparent" ],
|
||||
"match": "surfaceflag",
|
||||
"flags": [ "trans33", "trans66" ]
|
||||
}
|
||||
]
|
||||
},
|
||||
"faceattribs": {
|
||||
"surfaceflags": [
|
||||
{
|
||||
"name": "light",
|
||||
"description": "Emit light from the surface, brightness is specified in the 'value' field"
|
||||
},
|
||||
{
|
||||
"name": "slick",
|
||||
"description": "The surface is slippery"
|
||||
},
|
||||
{
|
||||
"name": "sky",
|
||||
"description": "The surface is sky, the texture will not be drawn, but the background sky box is used instead"
|
||||
},
|
||||
{
|
||||
"name": "warp",
|
||||
"description": "The surface warps (like water textures do)"
|
||||
},
|
||||
{
|
||||
"name": "trans33",
|
||||
"description": "The surface is 33% transparent"
|
||||
},
|
||||
{
|
||||
"name": "trans66",
|
||||
"description": "The surface is 66% transparent"
|
||||
},
|
||||
{
|
||||
"name": "flowing",
|
||||
"description": "The texture wraps in a downward 'flowing' pattern (warp must also be set)"
|
||||
},
|
||||
{
|
||||
"name": "nodraw",
|
||||
"description": "Used for non-fixed-size brush triggers and clip brushes"
|
||||
},
|
||||
{
|
||||
"name": "hint",
|
||||
"description": "Make a primary bsp splitter"
|
||||
},
|
||||
{
|
||||
"name": "skip",
|
||||
"description": "Completely ignore, allowing non-closed brushes"
|
||||
}
|
||||
],
|
||||
"contentflags": [
|
||||
{
|
||||
"name": "solid",
|
||||
"description": "Default for all brushes"
|
||||
}, // 1
|
||||
{
|
||||
"name": "window",
|
||||
"description": "Brush is a window (not really used)"
|
||||
}, // 2
|
||||
{
|
||||
"name": "aux",
|
||||
"description": "Unused by the engine"
|
||||
}, // 4
|
||||
{
|
||||
"name": "lava",
|
||||
"description": "The brush is lava"
|
||||
}, // 8
|
||||
{
|
||||
"name": "slime",
|
||||
"description": "The brush is slime"
|
||||
}, // 16
|
||||
{
|
||||
"name": "water",
|
||||
"description": "The brush is water"
|
||||
}, // 32
|
||||
{
|
||||
"name": "mist",
|
||||
"description": "The brush is non-solid"
|
||||
}, // 64
|
||||
{ "name": "unused" }, // 128
|
||||
{ "name": "unused" }, // 256
|
||||
{ "name": "unused" }, // 512
|
||||
{ "name": "unused" }, // 1024
|
||||
{ "name": "unused" }, // 2048
|
||||
{ "name": "unused" }, // 4096
|
||||
{ "name": "unused" }, // 8192
|
||||
{ "name": "unused" }, // 16384
|
||||
{ "name": "unused" }, // 32768
|
||||
{
|
||||
"name": "playerclip",
|
||||
"description": "Player cannot pass through the brush (other things can)"
|
||||
}, // 65536
|
||||
{
|
||||
"name": "mosterclip",
|
||||
"description": "Monster cannot pass through the brush (player and other things can)"
|
||||
}, // 131072
|
||||
{
|
||||
"name": "current_0",
|
||||
"description": "Brush has a current in direction of 0 degrees"
|
||||
},
|
||||
{
|
||||
"name": "current_90",
|
||||
"description": "Brush has a current in direction of 90 degrees"
|
||||
},
|
||||
{
|
||||
"name": "current_180",
|
||||
"description": "Brush has a current in direction of 180 degrees"
|
||||
},
|
||||
{
|
||||
"name": "current_270",
|
||||
"description": "Brush has a current in direction of 270 degrees"
|
||||
},
|
||||
{
|
||||
"name": "current_up",
|
||||
"description": "Brush has a current in the up direction"
|
||||
},
|
||||
{
|
||||
"name": "current_dn",
|
||||
"description": "Brush has a current in the down direction"
|
||||
},
|
||||
{
|
||||
"name": "origin",
|
||||
"description": "Special brush used for specifying origin of rotation for rotating brushes"
|
||||
},
|
||||
{
|
||||
"name": "monster",
|
||||
"description": "Purpose unknown"
|
||||
},
|
||||
{
|
||||
"name": "corpse",
|
||||
"description": "Purpose unknown"
|
||||
},
|
||||
{
|
||||
"name": "detail",
|
||||
"description": "Detail brush"
|
||||
},
|
||||
{
|
||||
"name": "translucent",
|
||||
"description": "Use for opaque water that does not block vis"
|
||||
},
|
||||
{
|
||||
"name": "ladder",
|
||||
"description": "Brushes with this flag allow a player to move up and down a vertical surface"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
BIN
tb/games/Quake3/Icon.png
Normal file
|
After Width: | Height: | Size: 4.7 KiB |
BIN
tb/games/Quake3/assets/textures/__TB_empty.png
Normal file
|
After Width: | Height: | Size: 758 B |