hdv811-invasion.pk3

PK3 691 KiB 0 map(s)

Counts

endoom0
graphics0
lumps230
maps0
palettes0

Totals (across maps)

Things0
Linedefs0
Sectors0
Monsters0
Items0
Raw model (for completeness)
{
  "meta": {
    "id": "0be79e94-5f3d-45e7-a4a1-26abb603acbd",
    "sha1": "c81bd2d5062c289e58045bbcb0211d4c6c72bb41",
    "sha256": "a880775fb463746d1f57036d8d2ee3839905ed56c7a4b64ea99660acd848f3cc",
    "filenames": [
      "hdv811-invasion.pk3"
    ],
    "additional": {
      "engines": [],
      "iwad": [],
      "filename": null,
      "added": "2018-03-28 00:15:27",
      "locked": false,
      "canDownload": true,
      "adult": false,
      "hidden": false,
      "name": null,
      "description": null,
      "maps": null,
      "graphicOverrides": null,
      "screenshots": null,
      "palettes": null,
      "categories": null
    },
    "flags": {
      "locked": false,
      "canDownload": true,
      "adult": false,
      "hidden": false
    },
    "added": "2018-03-28 00:15:27",
    "file": {
      "type": "PK3",
      "size": 707721,
      "url": "https://wadarchive2.nyc3.digitaloceanspaces.com/c81bd2d5062c289e58045bbcb0211d4c6c72bb41/c81bd2d5062c289e58045bbcb0211d4c6c72bb41.pk3.gz",
      "corrupt": false
    },
    "content": {
      "counts": {
        "endoom": 0,
        "graphics": 0,
        "lumps": 230,
        "maps": 0,
        "palettes": 0
      }
    },
    "analysis": {
      "title": "Hard Doom v8.1.1 Invasion Patch",
      "description": "This WAD is a compatibility patch for Hard Doom version 8.1.1, enabling invasion-style monster spawning similar to the Skulltag multiplayer experience. It contains no standalone maps but modifies monster behavior and adds new monster spawners, weapons (notably a railgun), and decorative effects. The patch introduces a variety of enhanced monster variants and custom power-ups, focusing on increasing combat challenge and variety. The theme aligns with classic Doom but emphasizes harder, swarm-based combat encounters. Resource balance and map progression depend on the base WAD used alongside this patch. It is designed for Doom engine ports supporting advanced DECORATE and GLDEFS features, not vanilla Doom.",
      "tags": [
        "boom_compatible",
        "challenge_wad",
        "hard",
        "monster_swarms",
        "techbase",
        "vanilla_compatible"
      ],
      "origin": "gpt-4.1-mini"
    },
    "text_files": [
      {
        "source": "pk3",
        "name": "Decorate.txt",
        "contents": "//Other\n#Include \"Actors/InvasionSpawners.txt\"\n#Include \"Actors/SkulltagStuff.txt\"\n#Include \"Actors/Weapons/Railgun.txt\""
      },
      {
        "source": "pk3",
        "name": "GLDefs.txt",
        "contents": "//Skulltag Red Armor\nObject HDRedArmor\n{\nFrame ARM3A0 { Light REDARMOR1 }\nFrame ARM3B0 { Light REDARMOR2 }\n}\n\n//Skulltag Spheres\nObject HDDoomSphere\n{\nFrame DOOM { Light DOOMSPHERE }\n}\n\nObject HDInvisibilitySphere\n{\nFrame INVS { Light INVISIBILITYSPHERE }\n}\n\nObject HDGuardSphere\n{\nFrame GARD { Light GUARDSPHERE }\n}\n\nObject HDTimefreezeSphere\n{\nFrame TIME { Light TIMEFREEZESPHERE }\n}\n\nObject HDTurboSphere\n{\nFrame TURB { Light TURBOSPHERE }\n}\n\n//Skulltag Decorations\nObject HDRedEvilEye\n{\nFrame CEYR { Light RedEvilEye }\n}\n\nObject HDBlueEvilEye\n{\nFrame CEYB { Light BlueEvilEye }\n}\n\nObject HDYellowTorch\n{\nFrame TRCH { Light BIGYELLOWTORCH }\n}\n\nObject HDShortYellowTorch\n{\nFrame STCB { Light SMALLYELLOWTORCH }\n}\n\nObject HDWhiteTorch\n{\nFrame TRCH { Light BIGWHITETORCH }\n}\n\nObject HDShortWhiteTorch\n{\nFrame STCB { Light SMALLWHITETORCH }\n}\n\nObject HDRedCandleStick\n{\nFrame CANR { Light RedCandleStick }\n}\n\nObject HDBlueCandleStick\n{\nFrame CANB { Light BlueCandleStick }\n}"
      },
      {
        "source": "pk3",
        "name": "ReadMe.txt",
        "contents": "This is a patch for Hard Doom v8.1.1 that allows invasion compatibility. This will work exactly like Hard Doom used to back in Skulltag."
      },
      {
        "source": "pk3",
        "name": "SkinInfo.txt",
        "contents": "{\nName = Railgun-DoomMarine\nSprite = PRAI\nClass = DoomMarine\nHidden = True\nCrouchSprite = PRAC\n}"
      },
      {
        "source": "pk3",
        "name": "SndInfo.txt",
        "contents": "//Railgun\nweapons/railreload\tdsrailr\nweapons/railgf\t\tdsrailf\n\n$random weapons/cellcasing { CELLCAS1 CELLCAS2 CELLCAS3 CELLCAS4 }\nCELLCAS1\tcellcas1\nCELLCAS2\tcellcas2\nCELLCAS3\tcellcas3\nCELLCAS4\tcellcas4\n$volume\tweapons/cellcasing\t0.8"
      },
      {
        "source": "pk3",
        "name": "Actors/InvasionSpawners.txt",
        "contents": "//===========================//\n// Invasion Monster Spawners //\n//===========================//\n\nACTOR HDWeakMonsterSpot : CustomMonsterInvasionSpot Replaces WeakMonsterSpot\n{\nGame Doom\nDropItem \"HDZombieMan\"\nDropItem \"HDZombieMan2\"\nDropItem \"HDZombieMan3\"\nDropItem \"HDShotgunGuy\"\nDropItem \"HDShotgunGuy2\"\nDropItem \"HDDoomImp\"\nDropItem \"HDDoomImp2\"\nDropItem \"HDDemon\"\nDropItem \"HDDemon2\"\nDropItem \"HDLostSoul\"\nDropItem \"HDLostSoul2\"\n}\n\nACTOR HDPowerfulMonsterSpot : CustomMonsterInvasionSpot Replaces PowerfulMonsterSpot\n{\nGame Doom\nDropItem \"HDChaingunGuy\"\nDropItem \"HDChaingunGuy2\"\nDropItem \"HDShotgunGuy3\"\nDropItem \"HDCacodemon\"\nDropItem \"HDCacodemon2\"\nDropItem \"HDRevenant\"\nDropItem \"HDRevenant2\"\nDropItem \"HDHellKnight\"\nDropItem \"HDHellKnight2\"\nDropItem \"HDBaronOfHell\"\nDropItem \"HDArachnotron\"\nDropItem \"HDArachnotron2\"\nDropItem \"HDFatso\"\nDropItem \"HDPainElemental\"\nDropItem \"HDPainElemental2\"\n}\n\nACTOR HDVeryPowerfulMonsterSpot : CustomMonsterInvasionSpot Replaces VeryPowerfulMonsterSpot\n{\nGame Doom\nDropItem \"HDCacodemon3\"\nDropItem \"HDFatso2\"\nDropItem \"HDBaronofHell2\"\nDropItem \"HDArchvile\"\nDropItem \"HDArchvile2\"\n}\n\nACTOR HDAnyMonsterSpot : CustomMonsterInvasionSpot Replaces AnyMonsterSpot\n{\nGame Doom\nDropItem \"HDDoomImp\"\nDropItem \"HDDoomImp2\"\nDropItem \"HDDemon\"\nDropItem \"HDSpectre\"\nDropItem \"HDSpectre2\"\nDropItem \"HDDemon2\"\nDropItem \"HDZombieMan\"\nDropItem \"HDZombieMan2\"\nDropItem \"HDZombieMan3\"\nDropItem \"HDShotgunGuy\"\nDropItem \"HDShotgunGuy2\"\nDropItem \"HDChaingunGuy\"\nDropItem \"HDChaingunGuy2\"\nDropItem \"HDShotgunGuy3\"\nDropItem \"HDCacodemon\"\nDropItem \"HDCacodemon2\"\nDropItem \"HDCacodemon3\"\nDropItem \"HDRevenant\"\nDropItem \"HDRevenant2\"\nDropItem \"HDFatso\"\nDropItem \"HDFatso2\"\nDropItem \"HDArachnotron\"\nDropItem \"HDArachnotron2\"\nDropItem \"HDHellKnight\"\nDropItem \"HDHellKnight2\"\nDropItem \"HDBaronofHell\"\nDropItem \"HDBaronofHell2\"\nDropItem \"HDLostSoul\"\nDropItem \"HDLostSoul2\"\nDropItem \"HDPainElemental\"\nDropItem \"HDPainElemental2\"\nDropItem \"HDCyberdemon\"\nDropItem \"DarkCyber\"\nDropItem \"HDSpiderMastermind\"\nDropItem \"DarkSpider\"\nDropItem \"HDArchvile\"\nDropItem \"HDArchvile2\"\n}\n\nACTOR HDImpSpot : CustomMonsterInvasionSpot Replaces ImpSpot\n{\nGame Doom\nDropItem \"HDDoomImp\"\n}\n\nACTOR HDDemonSpot : CustomMonsterInvasionSpot Replaces DemonSpot\n{\nGame Doom\nDropItem \"HDDemon\"\n}\n\nACTOR HDSpectreSpot : CustomMonsterInvasionSpot Replaces SpectreSpot\n{\nGame Doom\nDropItem \"HDSpectre\"\n}\n\nACTOR HDZombieManSpot : CustomMonsterInvasionSpot Replaces ZombieManSpot\n{\nGame Doom\nDropItem \"HDZombieMan\"\nDropItem \"HDZombieMan2\"\n}\n\nACTOR HDShotgunGuySpot : CustomMonsterInvasionSpot Replaces ShotgunGuySpot\n{\nGame Doom\nDropItem \"HDShotgunGuy\"\nDropItem \"HDShotgunGuy2\"\n}\n\nACTOR HDChaingunGuySpot : CustomMonsterInvasionSpot Replaces ChaingunGuySpot\n{\nGame Doom\nDropItem \"HDChaingunGuy\"\n}\n\nACTOR HDLostSoulSpot : CustomMonsterInvasionSpot Replaces LostSoulSpot\n{\nGame Doom\nDropItem \"HDLostSoul\"\nDropItem \"HDLostsoul2\"\n}\n\nACTOR HDCacodemonSpot : CustomMonsterInvasionSpot Replaces CacodemonSpot\n{\nGame Doom\nDropItem \"HDCacodemon\"\n}\n\nACTOR HDPainElementalSpot : CustomMonsterInvasionSpot Replaces PainElementalSpot\n{\nGame Doom\nDropItem \"HDPainElemental\"\n}\n\nACTOR HDRevenantSpot : CustomMonsterInvasionSpot Replaces RevenantSpot\n{\nGame Doom\nDropItem \"HDRevenant\"\n}\n\nACTOR HDFatsoSpot : CustomMonsterInvasionSpot Replaces FatsoSpot\n{\nGame Doom\nDropItem \"HDFatso\"\n}\n\nACTOR HDArachnotronSpot : CustomMonsterInvasionSpot Replaces ArachnotronSpot\n{\nGame Doom\nDropItem \"HDArachnotron\"\n}\n\nACTOR HDHellKnightSpot : CustomMonsterInvasionSpot Replaces HellKnightSpot\n{\nGame Doom\nDropItem \"HDHellKnight\"\n}\n\nACTOR HDBaronOfHellSpot : CustomMonsterInvasionSpot Replaces BaronOfHellSpot\n{\nGame Doom\nDropItem \"HDBaronofHell\"\n}\n\nACTOR HDCyberdemonSpot : CustomMonsterInvasionSpot Replaces CyberdemonSpot\n{\nGame Doom\nDropItem \"HDCyberdemon\"\n}\n\nACTOR HDSpiderMastermindSpot : CustomMonsterInvasionSpot Replaces SpiderMastermindSpot\n{\nGame Doom\nDropItem \"HDSpiderMastermind\"\n}\n\nACTOR HDArchvileSpot : CustomMonsterInvasionSpot Replaces ArchvileSpot\n{\nGame Doom\nDropItem \"HDArchvile\"\n}\n\nACTOR HDWolfensteinSSSpot : CustomMonsterInvasionSpot Replaces WolfenSteinSSSPot\n{\nGame Doom\nDropItem \"HDWolfensteinSS\"\nDropItem \"HDWolfensteinSS2\"\nDropItem \"HDWolfensteinSS3\"\n}\n\nACTOR HDCacolanternSpot : CustomMonsterInvasionSpot Replaces CacolanternSpot\n{\nGame Doom\nDropItem \"HDCacodemon2\"\n}\n\nACTOR HDAbaddonSpot : CustomMonsterInvasionSpot Replaces AbaddonSpot\n{\nGame Doom\nDropItem \"HDCacodemon3\"\n}\n\nACTOR HDHectebusSpot : CustomMonsterInvasionSpot Replaces HectebusSpot\n{\nGame Doom\nDropItem \"HDFatso2\"\n}\n\nACTOR HDSuperShotgunGuySpot : CustomMonsterInvasionSpot Replaces SuperShotgunGuySpot\n{\nGame Doom\nDropItem \"HDShotgunGuy3\"\n}\n\nACTOR HDDarkImpSpot : CustomMonsterInvasionSpot Replaces DarkImpSpot\n{\nGame Doom\nDropItem \"HDDoomImp2\"\n}\n\nACTOR HDBloodDemonSpot : CustomMonsterInvasionSpot Replaces BloodDemonSpot\n{\nGame Doom\nDropItem \"HDDemon2\"\n}\n\nACTOR HDBelphegorSpot : CustomMonsterInvasionSpot Replaces BelphegorSpot\n{\nGame Doom\nDropItem \"HDBaronofHell2\"\n}"
      },
      {
        "source": "pk3",
        "name": "Actors/Monsters/Secondary/ZombieMan2.txt",
        "contents": "Actor HDZombieMan2\n{\n  Health 20\n  Radius 20\n  Height 56\n  Speed 8\n  PainChance 200\n  Monster\n  +FloorClip\n  Obituary \"%o was sniped by a Zombie with a Sonic Railgun.\"\n  SeeSound \"Grunt/Sight\"\n  PainSound \"Grunt/Pain\"\n  DeathSound \"Grunt/Death\"\n  ActiveSound \"Grunt/Active\"\n  Decal \"SRGScorch\"\n  States\n  {\n  Spawn:\n    SRZM AAAAAAAAAABBBBBBBBBB 1 A_Look\n    Loop\n  See:\n    SRZM A 0 A_TakeInventory(\"StahpFire\", 5)\n    SRZM A 0 A_JumpIfInventory(\"SRCharge\", 10, 3)\n    SRZM A 0 A_JumpIfInventory(\"Charging\", 1, \"See2\")\n    SRZM A 0 A_Jump(16, \"Charge\")\n    SRZM AABBCCDD 4 A_Chase\n    Loop\n  See2:\n    SRZM A 0 A_JumpIfInventory(\"SRCharge\", 10, \"See\")\n    SRZM A 0 A_GiveInventory(\"SRCharge\", 1)\n    SRZM AA 4 A_Chase(\"\", \"\")\n    SRZM A 0 A_JumpIfInventory(\"SRCharge\", 10, \"See\")\n    SRZM B 0 A_GiveInventory(\"SRCharge\", 1)\n    SRZM BB 4 A_Chase(\"\", \"\")\n    SRZM A 0 A_JumpIfInventory(\"SRCharge\", 10, \"See\")\n    SRZM C 0 A_GiveInventory(\"SRCharge\", 1)\n    SRZM CC 4 A_Chase(\"\", \"\")\n    SRZM A 0 A_JumpIfInventory(\"SRCharge\", 10, \"See\")\n    SRZM D 0 A_GiveInventory(\"SRCharge\", 1)\n    SRZM DD 4 A_Chase(\"\", \"\")\n    Loop\n  Charge:\n    SRZM A 0 A_GiveInventory(\"Charging\", 1)\n    SRZM A 0 A_PlaySound(\"SRailgunZombie/Charge\")\n    Goto See2\n  Missile:\n    SRZM E 0 A_JumpIfInventory(\"SRCharge\", 10, \"Missile2\")\n    SRZM E 0 A_JumpIfCloser(2048, 1)\n    Goto Mis2048\n    SRZM E 0 A_JumpIfCloser(1024, 1)\n    Goto Mis1024\n    SRZM EEE 5 A_FaceTarget\n    SRZM E 3 A_FaceTarget\n    SRZM X 0 A_GiveInventory(\"StahpFire\", 1)\n    SRZM X 0 A_PlaySound(\"SRailgunZombie/Fire\")\n    SRZM X 2 Bright A_CustomRailgun(Random(3, 6), 0, none, \"Yellow\", 1, 1, 1, \"ZRailPuff\", 2.4, 1.2)\n    SRZM E 3 A_FaceTarget\n    SRZM X 0 A_PlaySound(\"SRailgunZombie/Fire\")\n    SRZM X 2 Bright A_CustomRailgun(Random(3, 6), 0, none, \"Yellow\", 1, 1, 1, \"ZRailPuff\", 2.4, 1.2)\n    SRZM X 0 A_JumpIfInventory(\"StahpFire\", 5, 2)\n    SRZM X 0 A_CPosReFire\n    Goto Missile+6\n    SRZM X 0 A_CPosReFire\n    SRZM X 0 A_Jump(230, 1)\n    Goto See\n    SRZM X 0 A_JumpIfCloser(2048, 1)\n    Goto Mis2048+3\n    SRZM X 0 A_JumpIfCloser(1024, 1)\n    Goto Mis1024+3\n    SRZM X 0\n    Goto Missile+6\n  Missile2:\n    SRZM E 0 A_JumpIfCloser(1536, 1)\n    Goto Missile3\n    SRZM EEE 5 A_FaceTarget\n    SRZM F 2 A_FaceTarget\n    SRZM F 0 A_TakeInventory(\"Charging\", 1)\n    SRZM F 0 A_TakeInventory(\"SRCharge\", 10)\n    SRZM F 0 A_PlaySound(\"SRailgunZombie/ChargeFire\")\n    SRZM F 0 A_CustomMissile(\"SRGImpact\", 28, 0)\n    SRZM F 3 Bright A_CustomRailgun(Random(20, 30), 0, \"Red\", \"Red\", 1, 1, 0, \"ZRailPuff\", 1, 0.5)\n    SRZM EEE 5 A_FaceTarget\n    Goto See\n  Missile3:\n    SRZM EEE 5 A_FaceTarget\n    SRZM E 10 A_FaceTarget\n    SRZM F 2\n    SRZM F 0 A_TakeInventory(\"Charging\", 1)\n    SRZM F 0 A_TakeInventory(\"SRCharge\", 10)\n    SRZM F 0 A_PlaySound(\"SRailgunZombie/ChargeFire\")\n    SRZM F 0 A_CustomMissile(\"SRGImpact\", 28, 0)\n    SRZM F 3 Bright A_CustomRailgun(Random(20, 30), 0, \"Red\", \"Red\", 1, 1, 0, \"ZRailPuff\", 1, 0.5)\n    SRZM EEE 5 A_FaceTarget\n    Goto See\n  Mis1024:\n    SRZM EEE 5 A_FaceTarget\n    SRZM E 3 A_FaceTarget\n    SRZM X 0 A_GiveInventory(\"StahpFire\", 1)\n    SRZM X 0 A_PlaySound(\"SRailgunZombie/Fire\")\n    SRZM X 2 Bright A_CustomRailgun(Random(3, 6), 0, none, \"Yellow\", 1, 1, 1, \"ZRailPuff\", 2.4, 1.2)\n    SRZM E 3 A_FaceTarget\n    SRZM X 0 A_PlaySound(\"SRailgunZombie/Fire\")\n    SRZM X 2 Bright A_CustomRailgun(Random(3, 6), 0, none, \"Yellow\", 1, 1, 1, \"ZRailPuff\", 2.4, 1.2)\n    SRZM X 0 A_JumpIfInventory(\"StahpFire\", 4, 2)\n    SRZM X 0 A_CPosReFire\n    Goto Mis1024+3\n    SRZM X 0 A_CPosReFire\n    SRZM X 0 A_Jump(204, 1)\n    Goto See\n    SRZM X 0 A_JumpIfCloser(2048, 1)\n    Goto Mis2048+3\n    SRZM X 0 A_JumpIfCloser(1024, 1)\n    Goto Mis1024+3\n    SRZM X 0\n    Goto Missile+6\n  Mis2048:\n    SRZM EEE 5 A_FaceTarget\n    SRZM E 3 A_FaceTarget\n    SRZM X 0 A_GiveInventory(\"StahpFire\", 1)\n    SRZM X 0 A_PlaySound(\"SRailgunZombie/Fire\")\n    SRZM X 2 Bright A_CustomRailgun(Random(3, 6), 0, none, \"Yellow\", 1, 1, 1, \"ZRailPuff\", 2.4, 1.2)\n    SRZM E 3 A_FaceTarget\n    SRZM X 0 A_PlaySound(\"SRailgunZombie/Fire\")\n    SRZM X 2 Bright A_CustomRailgun(Random(3, 6), 0, none, \"Yellow\", 1, 1, 1, \"ZRailPuff\", 2.4, 1.2)\n    SRZM X 0 A_JumpIfInventory(\"StahpFire\", 3, 2)\n    SRZM X 0 A_CPosReFire\n    Goto Mis2048+3\n    SRZM X 0 A_CPosReFire\n    SRZM X 0 A_Jump(152, 1)\n    Goto See\n    SRZM X 0 A_JumpIfCloser(2048, 1)\n    Goto Mis2048+3\n    SRZM X 0 A_JumpIfCloser(1024, 1)\n    Goto Mis1024+3\n    SRZM X 0\n    Goto Missile+6\n  Pain:\n    SRZM G 3\n    SRZM G 3 A_Pain\n    Goto See\n  Death:\n    SRZM H 0 A_Jump(51, \"Death2\")\n  Death1:\n    SRZM H 5 A_DropItem(\"Cell\")\n    SRZM I 5 A_Scream\n    SRZM J 5 A_Fall\n    SRZM K 5\n    SRZM LM 16\n    SRZM N -1\n    Stop\n  Death2:\n    SRZM H 5 A_DropItem(\"Sonic Railgun\")\n    SRZM I 5 A_Scream\n    SRZM J 5 A_Fall\n    SRZM K 5\n    SRZM LM 16\n    SRZM N -1\n    Stop\n  Death.Chainsaw:\n  XDeath:\n    SRZM O 0 A_Jump(51, \"XDeath2\")\n  XDeath1:\n    SRZM O 0 A_SpawnItemEX(\"HDGib9Generator\",0,0,24,0,0,0,0,128)\n    SRZM O 0 A_SpawnItemEX(\"GibGenerator1\",0,0,24,0,0,0,0,128)\n    SRZM O 0 A_SpawnItemEX(\"GibGenerator2\",0,0,24,0,0,0,0,128)\n    SRZM O 5 A_DropItem(\"Cell\")\n    SRZM P 0 A_SpawnItemEX(\"GibGenerator3\",0,0,24,0,0,0,0,128)\n    SRZM P 5 A_XScream\n    SRZM Q 0 A_SpawnItemEX(\"GibGenerator4\",0,0,24,0,0,0,0,128)\n    SRZM Q 5 A_Fall\n    SRZM R 0 A_SpawnItemEX(\"GibGenerator5\",0,0,24,0,0,0,0,128)\n    SRZM RSTUV 5\n    SRZM W -1\n    Stop\n  XDeath2:\n    SRZM O 0 A_SpawnItemEX(\"HDGib9Generator\",0,0,24,0,0,0,0,128)\n    SRZM O 0 A_SpawnItemEX(\"GibGenerator1\",0,0,24,0,0,0,0,128)\n    SRZM O 0 A_SpawnItemEX(\"GibGenerator2\",0,0,24,0,0,0,0,128)\n    SRZM O 5 A_DropItem(\"Sonic Railgun\")\n    SRZM P 0 A_SpawnItemEX(\"GibGenerator3\",0,0,24,0,0,0,0,128)\n    SRZM P 5 A_XScream\n    SRZM Q 0 A_SpawnItemEX(\"GibGenerator4\",0,0,24,0,0,0,0,128)\n    SRZM Q 5 A_Fall\n    SRZM R 0 A_SpawnItemEX(\"GibGenerator5\",0,0,24,0,0,0,0,128)\n    SRZM RSTUV 5\n    SRZM W -1\n    Stop\n  Raise:\n    SRZM LKJIH 5\n    Goto See\n  }\n}\n\nActor Charging : Inventory { Inventory.MaxAmount 1 }\n\nActor SRCharge : Inventory { Inventory.MaxAmount 10 }\n\nActor StahpFire : Inventory { Inventory.MaxAmount 5 }\n\nActor HDDeadZombieMan : HDZombieMan2 replaces DeadZombieMan\n{\n  DropItem None\n  Skip_Super\n  +ClientSideOnly\n  States\n  {\n  Spawn:\n    SRZM N 35\n    SRZM N 0 A_Jump(64, 2)\n    SRZM N 0 A_SpawnItemEx(\"FlySpawner\")\n    SRZM N -1\n    Loop\n  }\n}\n\nACTOR ZRailPuff : Bulletpuff\n{\n  +PierceArmor\n  States\n  {\n  Spawn:\n    TNT1 A 0\n    TNT1 A 1 A_SpawnItemEx(\"SRGParticleSpawner\", 0, 0, 0, 0, 0, 0, 0, 128)\n    Stop\n  }\n}\n\nActor ZombieYelRail\n{\n  Radius 1\n  Height 1\n  RenderStyle Add\n  Alpha 0.9\n  XScale 0.1\n  YScale 0.1\n  +NoClip\n  +NoBlockMap\n  +NoGravity\n  +NoTeleport\n  +ClientSideOnly\n  States\n  {\n  Spawn:\n    KWBR AB 2 Bright A_FadeOut(0.2)\n    Loop\n  }\n}\n\nActor ZombieRedRail\n{\n  Radius 1\n  Height 1\n  RenderStyle Add\n  Alpha 0.9\n  XScale 0.16\n  YScale 0.16\n  +NoClip\n  +NoBlockMap\n  +NoGravity\n  +NoTeleport\n  +ClientSideOnly\n  States\n  {\n  Spawn:\n    KWBB AB 1 Bright A_FadeOut(0.05)\n    Loop\n  }\n}"
      },
      {
        "source": "pk3",
        "name": "Actors/SkulltagStuff.txt",
        "contents": "Actor RedLineEffect2 : BaseLineEffect\n{\n  translation \"80:111=176:191\"\n  States\n  {\n  Spawn:\n    SPFX AAAAA 1 Bright A_FadeIn(0.2)\n    SPFX AAAAAAAAAAAAAAAA 1 Bright A_FadeOut(0.08)\n    Stop\n  }\n}\n\nActor OrangeLineEffect : BaseLineEffect\n{\n  translation \"80:111=214:223\"\n}\n\nActor HDRedArmor : RedArmor replaces RedArmor\n{\n  Inventory.PickupSound \"misc/a_pkup\"\n  States\n  {\n  Spawn:\n    ARM3 AAA 2 A_SpawnItemEx(\"RedLineEffect2\", random(-15, 15),0,random(4, 12), 0,0,random(1,2), Random(0, 360), 128, 0)\n    ARM3 BBB 2 Bright A_SpawnItemEx(\"RedLineEffect2\", random(-15, 15),0,random(4, 12), 0,0,random(1,2), Random(0, 360), 128, 0)\n    Loop\n  }\n}\n\nActor HDTurbosphere : Turbosphere replaces Turbosphere\n{\n  States\n  {\n  Spawn:\n    TURB A 0 Bright\n    TURB A 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TURB A 1 Bright A_SpawnItemEx(\"OrangeLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    TURB A 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TURB A 1 Bright A_SpawnItemEx(\"OrangeLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    TURB A 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TURB A 1 Bright A_SpawnItemEx(\"OrangeLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    TURB B 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TURB B 1 Bright A_SpawnItemEx(\"OrangeLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    TURB B 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TURB B 1 Bright A_SpawnItemEx(\"OrangeLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    TURB B 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TURB B 1 Bright A_SpawnItemEx(\"OrangeLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    TURB C 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TURB C 1 Bright A_SpawnItemEx(\"OrangeLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    TURB C 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TURB C 1 Bright A_SpawnItemEx(\"OrangeLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    TURB C 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TURB C 1 Bright A_SpawnItemEx(\"OrangeLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    TURB D 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TURB D 1 Bright A_SpawnItemEx(\"OrangeLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    TURB D 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TURB D 1 Bright A_SpawnItemEx(\"OrangeLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    TURB D 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TURB D 1 Bright A_SpawnItemEx(\"OrangeLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    Loop\n  }\n}\n\nActor HDTimeFreezeSphere : TimeFreezeSphere replaces TimeFreezeSphere\n{\n  States\n  {\n  Spawn:\n    TIME A 0 Bright\n    TIME A 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TIME A 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    TIME A 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TIME A 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    TIME A 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TIME A 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    TIME A 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TIME A 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    TIME A 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TIME A 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    TIME A 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TIME A 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    TIME B 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TIME B 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    TIME B 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TIME B 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    TIME B 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TIME B 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    TIME B 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TIME B 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    TIME B 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TIME B 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    TIME B 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TIME B 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    TIME C 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TIME C 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    TIME C 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TIME C 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    TIME C 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TIME C 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    TIME C 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TIME C 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    TIME C 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TIME C 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    TIME C 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TIME C 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    TIME D 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TIME D 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    TIME D 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TIME D 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    TIME D 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TIME D 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    TIME D 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TIME D 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    TIME D 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TIME D 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    TIME D 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    TIME D 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    Loop\n  }\n}\n\nActor HDInvisibilitySphere : InvisibilitySphere replaces InvisibilitySphere\n{\n  States\n  {\n  Spawn:\n    SINV A 0 Bright\n    SINV A 0 Bright A_SpawnItemEX(\"BlueSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    SINV A 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    SINV A 0 Bright A_SpawnItemEX(\"BlueSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    SINV A 1 Bright A_SpawnItemEx(\"BlueLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    SINV A 0 Bright A_SpawnItemEX(\"BlueSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    SINV A 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    SINV A 0 Bright A_SpawnItemEX(\"BlueSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    SINV A 1 Bright A_SpawnItemEx(\"BlueLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    SINV A 0 Bright A_SpawnItemEX(\"BlueSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    SINV A 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    SINV A 0 Bright A_SpawnItemEX(\"BlueSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    SINV A 1 Bright A_SpawnItemEx(\"BlueLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    SINV B 0 Bright A_SpawnItemEX(\"BlueSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    SINV B 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    SINV B 0 Bright A_SpawnItemEX(\"BlueSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    SINV B 1 Bright A_SpawnItemEx(\"BlueLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    SINV B 0 Bright A_SpawnItemEX(\"BlueSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    SINV B 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    SINV B 0 Bright A_SpawnItemEX(\"BlueSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    SINV B 1 Bright A_SpawnItemEx(\"BlueLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    SINV B 0 Bright A_SpawnItemEX(\"BlueSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    SINV B 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    SINV B 0 Bright A_SpawnItemEX(\"BlueSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    SINV B 1 Bright A_SpawnItemEx(\"BlueLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    SINV C 0 Bright A_SpawnItemEX(\"BlueSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    SINV C 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    SINV C 0 Bright A_SpawnItemEX(\"BlueSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    SINV C 1 Bright A_SpawnItemEx(\"BlueLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    SINV C 0 Bright A_SpawnItemEX(\"BlueSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    SINV C 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    SINV C 0 Bright A_SpawnItemEX(\"BlueSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    SINV C 1 Bright A_SpawnItemEx(\"BlueLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    SINV C 0 Bright A_SpawnItemEX(\"BlueSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    SINV C 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    SINV C 0 Bright A_SpawnItemEX(\"BlueSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    SINV C 1 Bright A_SpawnItemEx(\"BlueLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    SINV D 0 Bright A_SpawnItemEX(\"BlueSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    SINV D 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    SINV D 0 Bright A_SpawnItemEX(\"BlueSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    SINV D 1 Bright A_SpawnItemEx(\"BlueLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    SINV D 0 Bright A_SpawnItemEX(\"BlueSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    SINV D 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    SINV D 0 Bright A_SpawnItemEX(\"BlueSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    SINV D 1 Bright A_SpawnItemEx(\"BlueLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    SINV D 0 Bright A_SpawnItemEX(\"BlueSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    SINV D 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    SINV D 0 Bright A_SpawnItemEX(\"BlueSphereFlare\", 0, 0, 25, 0, 0, 0, 0, 128)\n    SINV D 1 Bright A_SpawnItemEx(\"BlueLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    Loop\n  }\n}\n\nActor HDDoomsphere : Doomsphere replaces Doomsphere\n{\n  States\n  {\n  Spawn:\n    DOOM A 0 Bright\n    DOOM A 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM A 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM A 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM A 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM A 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM A 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM A 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM A 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM A 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM A 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM A 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM A 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM A 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM A 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM A 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM A 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM A 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM A 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM A 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM A 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM B 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM B 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM B 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM B 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM B 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM B 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM B 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM B 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM B 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM B 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM B 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM B 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM B 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM B 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM B 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM B 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM B 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM B 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM B 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM B 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM B 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM B 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM B 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM B 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM B 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM B 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM B 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM B 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM B 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM B 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM C 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM C 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM C 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM C 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM C 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM C 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM C 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM C 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM C 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM C 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM C 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM C 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM C 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM C 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM C 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM C 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM D 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM D 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM D 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM D 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM D 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM D 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM D 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM D 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM D 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM D 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    DOOM D 0 Bright A_SpawnItemEX(\"RedSphereFlare\", 0, 0, 20, 0, 0, 0, 0, 128)\n    DOOM D 1 Bright A_SpawnItemEx(\"RedLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    Loop\n  }\n}\n\nActor HDGuardsphere : Guardsphere replaces Guardsphere\n{\n  States\n  {\n  Spawn:\n    GARD A 0 Bright\n    GARD A 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 22, 0, 0, 0, 0, 128)\n    GARD A 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    GARD A 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 22, 0, 0, 0, 0, 128)\n    GARD A 1 Bright A_SpawnItemEx(\"GreenLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    GARD A 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 22, 0, 0, 0, 0, 128)\n    GARD A 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    GARD A 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 22, 0, 0, 0, 0, 128)\n    GARD A 1 Bright A_SpawnItemEx(\"GreenLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    GARD A 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 22, 0, 0, 0, 0, 128)\n    GARD A 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    GARD A 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 22, 0, 0, 0, 0, 128)\n    GARD A 1 Bright A_SpawnItemEx(\"GreenLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    GARD B 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 22, 0, 0, 0, 0, 128)\n    GARD B 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    GARD B 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 22, 0, 0, 0, 0, 128)\n    GARD B 1 Bright A_SpawnItemEx(\"GreenLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    GARD B 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 22, 0, 0, 0, 0, 128)\n    GARD B 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    GARD B 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 22, 0, 0, 0, 0, 128)\n    GARD B 1 Bright A_SpawnItemEx(\"GreenLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    GARD B 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 22, 0, 0, 0, 0, 128)\n    GARD B 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    GARD B 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 22, 0, 0, 0, 0, 128)\n    GARD B 1 Bright A_SpawnItemEx(\"GreenLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    GARD C 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 22, 0, 0, 0, 0, 128)\n    GARD C 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    GARD C 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 22, 0, 0, 0, 0, 128)\n    GARD C 1 Bright A_SpawnItemEx(\"GreenLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    GARD C 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 22, 0, 0, 0, 0, 128)\n    GARD C 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    GARD C 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 22, 0, 0, 0, 0, 128)\n    GARD C 1 Bright A_SpawnItemEx(\"GreenLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    GARD C 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 22, 0, 0, 0, 0, 128)\n    GARD C 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    GARD C 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 22, 0, 0, 0, 0, 128)\n    GARD C 1 Bright A_SpawnItemEx(\"GreenLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    GARD D 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 22, 0, 0, 0, 0, 128)\n    GARD D 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    GARD D 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 22, 0, 0, 0, 0, 128)\n    GARD D 1 Bright A_SpawnItemEx(\"GreenLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    GARD D 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 22, 0, 0, 0, 0, 128)\n    GARD D 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    GARD D 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 22, 0, 0, 0, 0, 128)\n    GARD D 1 Bright A_SpawnItemEx(\"GreenLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    GARD D 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 22, 0, 0, 0, 0, 128)\n    GARD D 1 Bright A_SpawnItemEx(\"BaseLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    GARD D 0 Bright A_SpawnItemEX(\"WhiteSphereFlare\", 0, 0, 22, 0, 0, 0, 0, 128)\n    GARD D 1 Bright A_SpawnItemEx(\"GreenLineEffect\", random(-20, 20),0,random(5, 20), 0,0,random(1,2), Random(0, 360), 128, 0)\n    Loop\n  }\n}\n\nActor HDRedEvilEye replaces RedEvilEye\n{\n  Radius 16\n  Height 54\n  +Solid\n  +FloatBob\n  +ForceXYBillBoard\n  States\n  {\n  Spawn:\n    CEYR A 0\n    CEYR A 0 A_SpawnItem(\"CandleStick\")\n    CEYR ABCB 6 Bright\n    Goto Spawn+2\n  }\n}\n\nActor HDBlueEvilEye replaces BlueEvilEye\n{\n  Radius 16\n  Height 54\n  +Solid\n  +FloatBob\n  +ForceXYBillBoard\n  States\n  {\n  Spawn:\n    CEYB A 0\n    CEYB A 0 A_SpawnItem(\"CandleStick\")\n    CEYB ABCB 6 Bright\n    Goto Spawn+2\n  }\n}\n\nActor HDWhiteTorch Replaces WhiteTorch\n{\n  Radius 16\n  Height 68\n  +Solid\n  States\n  {\n  Spawn:\n    TRCH A 0 Bright\n    TRCH A 0 Bright A_Jump(128, \"Flare2\")\n  Flare1:\n    TRCH A 0 Bright A_CheckSight(\"Idle1\")\n    TRCH A 0 Bright A_Jump(128, 3)\n    TRCH A 0 Bright A_SpawnItemEx(\"WhiteFlareST\", 0, 0, 60, 0, 0, 0, 0, 128)\n    TRCH A 1 Bright A_SpawnItemEx(\"WhiteTorchFire1\", Random(-2, 2), Random(-2, 2), Random(55, 57), 0.001 * Random(10, 200), 0.001 * Random(10, 200), 0.001 * Random(1000, 2400), 0, 128, 0)\n    Goto Flare1\n    TRCH A 0 Bright A_SpawnItemEx(\"WhiteFlareST\", 0, 0, 60, 0, 0, 0, 0, 128)\n    TRCH A 1 Bright A_SpawnItemEx(\"WhiteTorchFire2\", Random(-2, 2), Random(-2, 2), Random(55, 57), 0.001 * Random(10, 200), 0.001 * Random(10, 200), 0.001 * Random(1000, 2400), 0, 128, 0)\n    Goto Flare1\n  Flare2:\n    TRCH A 0 Bright A_CheckSight(\"Idle2\")\n    TRCH A 0 Bright A_Jump(128, 3)\n    TRCH A 0 Bright A_SpawnItemEx(\"AltWhiteFlareST\", 0, 0, 60, 0, 0, 0, 0, 128)\n    TRCH A 1 Bright A_SpawnItemEx(\"WhiteTorchFire1\", Random(-2, 2), Random(-2, 2), Random(55, 57), 0.001 * Random(10, 200), 0.001 * Random(10, 200), 0.001 * Random(1000, 2400), 0, 128, 0)\n    Goto Flare2\n    TRCH A 0 Bright A_SpawnItemEx(\"AltWhiteFlareST\", 0, 0, 60, 0, 0, 0, 0, 128)\n    TRCH A 1 Bright A_SpawnItemEx(\"WhiteTorchFire2\", Random(-2, 2), Random(-2, 2), Random(55, 57), 0.001 * Random(10, 200), 0.001 * Random(10, 200), 0.001 * Random(1000, 2400), 0, 128, 0)\n    Goto Flare2\n  Idle1:\n    TRCH A 1 Bright\n    Goto Flare1\n  Idle2:\n    TRCH A 1 Bright\n    Goto Flare2\n  }\n}\n\nActor WhiteTorchFire1\n{\n  +NoGravity\n  +NoInteraction\n  +NoBlockmap\n  +NoTeleport\n  +ForceXYBillboard\n  Radius 0\n  Height 0\n  RenderStyle Add\n  Scale 0.175\n  States\n  {\n  Spawn:\n    FIW1 ABCDEFG 1 Bright\n    FIW1 HIJKL 1 Bright A_FadeOut(0.15)\n    Stop\n  }\n}\n\nActor WhiteTorchFire2 : WhiteTorchFire1\n{\n  States\n  {\n  Spawn:\n    FIW2 ABCDEFG 1 Bright\n    FIW2 HIJKL 1 Bright A_FadeOut(0.15)\n    Stop\n  }\n}\n\nActor HDYellowTorch Replaces YellowTorch\n{\n  Radius 16\n  Height 68\n  +Solid\n  States\n  {\n  Spawn:\n    TRCH A 0 Bright\n    TRCH A 0 Bright A_Jump(128, \"Flare2\")\n  Flare1:\n    TRCH A 0 Bright A_CheckSight(\"Idle1\")\n    TRCH A 0 Bright A_Jump(128, 3)\n    TRCH A 0 Bright A_SpawnItemEx(\"YellowFlareST\", 0, 0, 60, 0, 0, 0, 0, 128)\n    TRCH A 1 Bright A_SpawnItemEx(\"YellowTorchFire1\", Random(-2, 2), Random(-2, 2), Random(55, 57), 0.001 * Random(10, 200), 0.001 * Random(10, 200), 0.001 * Random(1000, 2400), 0, 128, 0)\n    Goto Flare1\n    TRCH A 0 Bright A_SpawnItemEx(\"YellowFlareST\", 0, 0, 60, 0, 0, 0, 0, 128)\n    TRCH A 1 Bright A_SpawnItemEx(\"YellowTorchFire2\", Random(-2, 2), Random(-2, 2), Random(55, 57), 0.001 * Random(10, 200), 0.001 * Random(10, 200), 0.001 * Random(1000, 2400), 0, 128, 0)\n    Goto Flare1\n  Flare2:\n    TRCH A 0 Bright A_CheckSight(\"Idle2\")\n    TRCH A 0 Bright A_Jump(128, 3)\n    TRCH A 0 Bright A_SpawnItemEx(\"AltYellowFlareST\", 0, 0, 60, 0, 0, 0, 0, 128)\n    TRCH A 1 Bright A_SpawnItemEx(\"YellowTorchFire1\", Random(-2, 2), Random(-2, 2), Random(55, 57), 0.001 * Random(10, 200), 0.001 * Random(10, 200), 0.001 * Random(1000, 2400), 0, 128, 0)\n    Goto Flare2\n    TRCH A 0 Bright A_SpawnItemEx(\"AltYellowFlareST\", 0, 0, 60, 0, 0, 0, 0, 128)\n    TRCH A 1 Bright A_SpawnItemEx(\"YellowTorchFire2\", Random(-2, 2), Random(-2, 2), Random(55, 57), 0.001 * Random(10, 200), 0.001 * Random(10, 200), 0.001 * Random(1000, 2400), 0, 128, 0)\n    Goto Flare2\n  Idle1:\n    TRCH A 1 Bright\n    Goto Flare1\n  Idle2:\n    TRCH A 1 Bright\n    Goto Flare2\n  }\n}\n\nActor YellowTorchFire1\n{\n  +NoGravity\n  +NoInteraction\n  +NoBlockmap\n  +NoTeleport\n  +ForceXYBillboard\n  Radius 0\n  Height 0\n  RenderStyle Add\n  Scale 0.175\n  States\n  {\n  Spawn:\n    FIY1 ABCDEFG 1 Bright\n    FIY1 HIJKL 1 Bright A_FadeOut(0.15)\n    Stop\n  }\n}\n\nActor YellowTorchFire2 : YellowTorchFire1\n{\n  States\n  {\n  Spawn:\n    FIY2 ABCDEFG 1 Bright\n    FIY2 HIJKL 1 Bright A_FadeOut(0.15)\n    Stop\n  }\n}\n\nActor HDShortWhiteTorch Replaces ShortWhiteTorch\n{\n  Radius 16\n  Height 37\n  +Solid\n  States\n  {\n  Spawn:\n    STCB A 0 Bright\n    STCB A 0 Bright A_Jump(128, \"Flare2\")\n  Flare1:\n    STCB A 0 Bright A_CheckSight(\"Idle1\")\n    STCB A 0 Bright A_Jump(128, 3)\n    STCB A 0 Bright A_SpawnItemEx(\"WhiteFlareST\", 0, 0, 34, 0, 0, 0, 0, 128)\n    STCB A 1 Bright A_SpawnItemEx(\"WhiteTorchFire1\", Random(-2, 2), Random(-2, 2), Random(28, 30), 0.001 * Random(10, 200), 0.001 * Random(10, 200), 0.001 * Random(1000, 2400), 0, 128, 0)\n    Goto Flare1\n    STCB A 0 Bright A_SpawnItemEx(\"WhiteFlareST\", 0, 0, 34, 0, 0, 0, 0, 128)\n    STCB A 1 Bright A_SpawnItemEx(\"WhiteTorchFire2\", Random(-2, 2), Random(-2, 2), Random(28, 30), 0.001 * Random(10, 200), 0.001 * Random(10, 200), 0.001 * Random(1000, 2400), 0, 128, 0)\n    Goto Flare1\n  Flare2:\n    STCB A 0 Bright A_CheckSight(\"Idle2\")\n    STCB A 0 Bright A_Jump(128, 3)\n    STCB A 0 Bright A_SpawnItemEx(\"AltWhiteFlareST\", 0, 0, 34, 0, 0, 0, 0, 128)\n    STCB A 1 Bright A_SpawnItemEx(\"WhiteTorchFire1\", Random(-2, 2), Random(-2, 2), Random(28, 30), 0.001 * Random(10, 200), 0.001 * Random(10, 200), 0.001 * Random(1000, 2400), 0, 128, 0)\n    Goto Flare2\n    STCB A 0 Bright A_SpawnItemEx(\"AltWhiteFlareST\", 0, 0, 34, 0, 0, 0, 0, 128)\n    STCB A 1 Bright A_SpawnItemEx(\"WhiteTorchFire2\", Random(-2, 2), Random(-2, 2), Random(28, 30), 0.001 * Random(10, 200), 0.001 * Random(10, 200), 0.001 * Random(1000, 2400), 0, 128, 0)\n    Goto Flare2\n  Idle1:\n    STCB A 1 Bright\n    Goto Flare1\n  Idle2:\n    STCB A 1 Bright\n    Goto Flare2\n  }\n}\n\nActor HDShortYellowTorch Replaces ShortYellowTorch\n{\n  Radius 16\n  Height 37\n  +Solid\n  States\n  {\n  Spawn:\n    STCB A 0 Bright\n    STCB A 0 Bright A_Jump(128, \"Flare2\")\n  Flare1:\n    STCB A 0 Bright A_CheckSight(\"Idle1\")\n    STCB A 0 Bright A_Jump(128, 3)\n    STCB A 0 Bright A_SpawnItemEx(\"YellowFlareST\", 0, 0, 34, 0, 0, 0, 0, 128)\n    STCB A 1 Bright A_SpawnItemEx(\"YellowTorchFire1\", Random(-2, 2), Random(-2, 2), Random(28, 30), 0.001 * Random(10, 200), 0.001 * Random(10, 200), 0.001 * Random(1000, 2400), 0, 128, 0)\n    Goto Flare1\n    STCB A 0 Bright A_SpawnItemEx(\"YellowFlareST\", 0, 0, 34, 0, 0, 0, 0, 128)\n    STCB A 1 Bright A_SpawnItemEx(\"YellowTorchFire2\", Random(-2, 2), Random(-2, 2), Random(28, 30), 0.001 * Random(10, 200), 0.001 * Random(10, 200), 0.001 * Random(1000, 2400), 0, 128, 0)\n    Goto Flare1\n  Flare2:\n    STCB A 0 Bright A_CheckSight(\"Idle2\")\n    STCB A 0 Bright A_Jump(128, 3)\n    STCB A 0 Bright A_SpawnItemEx(\"AltYellowFlareST\", 0, 0, 34, 0, 0, 0, 0, 128)\n    STCB A 1 Bright A_SpawnItemEx(\"YellowTorchFire1\", Random(-2, 2), Random(-2, 2), Random(28, 30), 0.001 * Random(10, 200), 0.001 * Random(10, 200), 0.001 * Random(1000, 2400), 0, 128, 0)\n    Goto Flare2\n    STCB A 0 Bright A_SpawnItemEx(\"AltYellowFlareST\", 0, 0, 34, 0, 0, 0, 0, 128)\n    STCB A 1 Bright A_SpawnItemEx(\"YellowTorchFire2\", Random(-2, 2), Random(-2, 2), Random(28, 30), 0.001 * Random(10, 200), 0.001 * Random(10, 200), 0.001 * Random(1000, 2400), 0, 128, 0)\n    Goto Flare2\n  Idle1:\n    STCB A 1 Bright\n    Goto Flare1\n  Idle2:\n    STCB A 1 Bright\n    Goto Flare2\n  }\n}\n\nActor HDRedCandleStick : RedCandleStick replaces RedCandleStick\n{\n  States\n  {\n  Spawn:\n    CANR A 0 Bright\n    CANR A 0 Bright A_CheckSight(\"Idle\")\n    CANR A 1 Bright A_SpawnItemEx(\"TinyRedFlare\", 0, 0, 14, 0, 0, 0, 0, 128)\n    Loop\n  Idle:\n    CANR A 1 Bright\n    Goto Spawn\n  }\n}\n\nActor HDBlueCandleStick : BlueCandleStick replaces BlueCandleStick\n{\n  States\n  {\n  Spawn:\n    CANB A 0 Bright\n    CANB A 0 Bright A_CheckSight(\"Idle\")\n    CANB A 1 Bright A_SpawnItemEx(\"TinyBlueFlare\", 0, 0, 14, 0, 0, 0, 0, 128)\n    Loop\n  Idle:\n    CANB A 1 Bright\n    Goto Spawn\n  }\n}\n\nActor HDImpalingSpike9 replaces ImpalingSpike9\n{\n  Radius 16\n  Height 64\n  +Solid\n  +UseSpecial\n  States\n  {\n  Spawn:\n    POLF A 2 A_Jump(4, 1)\n    Loop\n    POLF B 8\n    Loop\n  }\n}\n\nActor YellowFlareST : YellowFlare\n{\n  Scale 0.4\n}\n\nActor AltYellowFlareST : AltYellowFlare\n{\n  Scale 0.4\n}\n\nActor WhiteFlareST : BaseLensflare\n{\n  Scale 0.4\n  States\n  {\n  Spawn:\n    TNT1 A 0 Bright\n    FLAR E 1 Bright\n    Stop\n  }\n}\n\nActor AltWhiteFlareST : BaseLensflare\n{\n  Scale 0.4\n  States\n  {\n  Spawn:\n    TNT1 A 0 Bright\n    FL2R E 1 Bright\n    Stop\n  }\n}\n\nActor TinyRedFlare : RedFlare\n{\n  Alpha 0.4\n  Scale 0.12\n}\n\nActor TinyBlueFlare : BlueFlare\n{\n  Alpha 0.4\n  Scale 0.12\n}"
      },
      {
        "source": "pk3",
        "name": "Actors/Weapons/BFG10k.txt",
        "contents": "Actor BFG10K~ : Weapon Replaces BFG10K\n{\n  Radius 20\n  Height 20\n  Weapon.Selectionorder 2800\n  Weapon.AmmoUse 5\n  Weapon.AmmoGive 40\n  Weapon.AmmoType \"Cell\"\n  Weapon.Kickback 100\n  Inventory.Pickupmessage \"You got the BFG10000!  Hell, yes!\"\n  Obituary \"%o was blasted by %k's BFG10K\"\n  +Weapon.NoAutoFire\n  Decal BFGLightning\n  Weapon.SlotNumber 7\n  Weapon.SlotPriority 1\n  Weapon.UpSound \"Weapons/Change\"\n  Weapon.PreferredSkin \"BFG10k-DoomMarine\"\n  States\n  {\n  Spawn:\n    BFG2 A -1\n    Stop\n  Ready:\n    BG2G A 0 A_PlaySound (\"Weapons/BFG10KIdle\")\n    BG2G A 1 A_WeaponReady\n    BG2G A 1 A_WeaponReady\n    BG2G A 1 A_WeaponReady\n    BG2G B 1 A_WeaponReady\n    BG2G B 1 A_WeaponReady\n    BG2G B 1 A_WeaponReady\n    BG2G C 1 A_WeaponReady\n    BG2G C 1 A_WeaponReady\n    BG2G C 1 A_WeaponReady\n    BG2G D 1 A_WeaponReady\n    BG2G D 1 A_WeaponReady\n    BG2G D 1 A_WeaponReady\n    Loop\n  Select:\n    BG2G E 1 A_Raise\n    Loop\n  Deselect:\n    BG2G E 1 A_Lower\n    Loop\n  Fire:\n    BG2G E 20 A_PlaySound(\"Weapons/BFG10KF\")\n    BG2G F 4\n    BG2G GHIJ 1\n    Goto Hold\n  Hold:\n    BG2E A 0 Bright A_JumpIf(CallACS(\"CoopProjectiles\")==1, \"HoldNP\")\n    BG2E A 1 Bright A_GunFlash\n    BG2G K 1 Bright A_Quake(2,3,0,1)\n    BG2E B 1 Bright A_FireCustomMissile(\"HDBFG10KProjectile\", 0, 1, 0, 0)\n    BG2G LMN 1\n    BG2G N 0 A_ReFire\n    BG2G O 11 A_PlaySound(\"Weapons/BFG10KCool\")\n    BG2G PQRSTU 4\n    Goto Ready\n  HoldNP:\n    BG2E A 1 Bright A_GunFlash\n    BG2G K 1 Bright A_Quake(2,3,0,1)\n    BG2E B 1 Bright A_FireCustomMissile(\"NPHDBFG10KProjectile\", 0, 1, 0, 0)\n    BG2G LMN 1\n    BG2G N 0 A_ReFire\n    BG2G O 11 A_PlaySound(\"Weapons/BFG10KCool\")\n    BG2G PQRSTU 4\n    Goto Ready\n  Flash:\n    TNT1 A 2 Bright A_Light1\n    TNT1 A 3 bright\n    Goto LightDone\n  }\n}\n\nActor HDBFG10KProjectile : FastProjectile\n{\n  Radius 7\n  Height 8\n  Speed 60\n  Damage 0\n  Projectile\n  +ForceRadiusDMG\n  RenderStyle ADD\n  Alpha 0.75\n  Decal BFGLightning\n  MissileType \"BFG10KTrailSpawner\"\n  SeeSound \"Weapons/BFG10KShot\"\n  DeathSound \"Weapons/BFG10KX\"\n  DamageType BFG10K\n  States\n  {\n  Spawn:\n    B10K AB 4 Bright\n    Loop\n  Death:\n    BFE1 A 0 Bright\n    BFE1 A 0 Bright A_SpawnItemEx(\"10kDeathParticleSpawner\", 0, 0, 0, 0, 0, 0, 0, 128)\n    BFE1 A 3 Bright A_Explode(160,160)\n    BFE1 BCDEF 3 Bright\n    Stop\n  }\n}\n\nActor NPHDBFG10KProjectile : HDBFG10KProjectile\n{\n  +MThruSpecies\n}\n\nActor BFG10KTrailSpawner\n{\n  +NoGravity\n  +NoBlockMap\n  +NoInteraction\n  States\n  {\n  Spawn:\n    TNT1 A 0\n    TNT1 A 0 A_SpawnItemEx(\"BFG10KTrail\", -22, 0, 8, 0, 0, 0, 0, 128)\n    Stop\n  }\n}\n\nActor BFG10KTrail\n{\n  Scale 0.35\n  RenderStyle Add\n  Alpha 0.8\n  +NoGravity\n  +NoBlockMap\n  +NoInteraction\n  States\n  {\n  Spawn:\n    BGKX ABC 1 Bright A_FadeOut(0.21)\n    Stop\n  }\n}\n\nActor 10kDeathParticleSpawner\n{\n  +NoClip\n  +NoBlockMap\n  +NoGravity\n  +Missile\n  States\n  {\n  Spawn:\n    TNT1 A 0\n    TNT1 AAAAA 0 A_SpawnItemEx(\"10kDeathParticle\", 0, 0, 0, (0.1)*Random(20, 45), 0, (0.1)*Random(-40, 40), Random(0, 360), 128)\n    TNT1 AAAAA 0 A_SpawnItemEx(\"10kDeathParticle\", 0, 0, 0, (0.1)*Random(20, 45), 0, (0.1)*Random(-40, 40), Random(0, 360), 128)\n    TNT1 AAAAA 0 A_SpawnItemEx(\"10kDeathParticle\", 0, 0, 0, (0.1)*Random(20, 45), 0, (0.1)*Random(-40, 40), Random(0, 360), 128)\n    TNT1 AAAAA 0 A_SpawnItemEx(\"10kDeathParticle\", 0, 0, 0, (0.1)*Random(20, 45), 0, (0.1)*Random(-40, 40), Random(0, 360), 128)\n    TNT1 A 1\n    Stop\n  }\n}\n\nActor 10kDeathParticle\n{\n  Height 0\n  Radius 0\n  Mass 0\n  +Missile\n  +NoBlockMap\n  -NoGravity\n  +LowGravity\n  +DontSplash\n  +DoomBounce\n  BounceFactor 0.7\n  RenderStyle Add\n  Scale 0.04\n  States\n  {\n  Spawn:\n  Death:\n    SPKG A 2 Bright A_FadeOut(0.05)\n    Loop\n  }\n}"
      },
      {
        "source": "pk3",
        "name": "Actors/Weapons/GrenadeLauncher.txt",
        "contents": "Actor GrenadeLauncher~ : Weapon Replaces GrenadeLauncher\n{\n  Radius 20\n  Height 16\n  Weapon.SelectionOrder 2500\n  +WEAPON.NOAUTOFIRE\n  +WEAPON.NOAUTOAIM\n  Weapon.AmmoUse 1\n  Weapon.AmmoGive 2\n  Weapon.AmmoType \"RocketAmmo\"\n  Weapon.Kickback 100\n  Inventory.PickupMessage \"You got the grenade launcher!\"\n  Obituary \"%o caught %k's grenade.\"\n  Weapon.SlotNumber 5\n  Weapon.SlotPriority 1\n  Weapon.UpSound \"Weapons/Change\"\n  Weapon.PreferredSkin \"Grenade-DoomMarine\"\n  States\n  {\n  Spawn:\n    GLAU A -1\n    Stop\n  Ready:\n    GRLG A 1 A_WeaponReady\n    Loop\n  Deselect:\n    GRLG A 1 A_Lower\n    Loop\n  Select:\n    GRLG A 1 A_Raise\n    Loop\n  Fire:\n    GRLG A 0 A_JumpIf(CallACS(\"CoopProjectiles\")==1, \"FireNP\")\n    GRLG A 2 A_GunFlash\n    GRLG B 3 A_FireCustomMissile(\"HDGrenade\", 0, 1, 0, 0, 0, 6.328125)\n    GRLG CDCB 3\n    GRLG E 1\n    GRLG F 2\n    GRLG A 2\n    GRLG A 0 A_ReFire\n    Goto Ready\n  FireNP:\n    GRLG A 2 A_GunFlash\n    GRLG B 3 A_FireCustomMissile(\"NPHDGrenade\", 0, 1, 0, 0, 0, 6.328125)\n    GRLG CDCB 3\n    GRLG E 1\n    GRLG F 2\n    GRLG A 2\n    GRLG A 0 A_ReFire\n    Goto Ready\n  Flash:\n    GRLF A 2 Bright A_Light1\n    GRLF B 3 Bright\n    GRLF C 3 Bright A_Light2\n    GRLF D 3 Bright A_Light2\n    Goto LightDone\n  }\n}\n\nActor HDGrenade\n{\n  Radius 8\n  Height 8\n  Speed 25\n  Damage 20\n  Gravity 0.4\n  Projectile\n  -NoGravity\n  +DoomBounce\n  +CanBounceWater\n  BounceFactor 0.45\n  WallBounceFactor 0.45\n  +DehExplosion\n  +ExplodeOnDeath\n  -GrenadeTrail\n  SeeSound \"Weapons/GrBnce\"\n  DeathSound \"Weapons/RockLX\"\n  DamageType Fire\n  States\n  {\n  Spawn:\n    SGRN A 0\n    SGRN A 0 A_StopSound\n    SGRN A 0 A_PlaySound(\"weapons/grenlf\")\n    SGRN A 1 Bright A_SpawnItemEx(\"HDoomRocketTrail\", 0, 0, 0, (0.1)*Random(5, 15), 0, (0.1)*Random(-5, 5), Random(-8, 8), 128)\n    Goto Spawn+3\n  Death:\n    MISL B 0 Bright A_ChangeFlag(\"NoGravity\", 1)\n    MISL B 0 Bright A_SpawnItemEx(\"HDoomRocketParticleSpawner\", 0, 0, 0, 0, 0, 0, 0, 128)\n    MISL B 8 Bright A_Explode\n    MISL C 6 Bright\n    MISL D 4 Bright\n    Stop\n  }\n}\n\nActor NPHDGrenade : HDGrenade\n{\n  +MThruSpecies\n}"
      },
      {
        "source": "pk3",
        "name": "Actors/Weapons/Minigun.txt",
        "contents": "Actor Minigun~ : Weapon Replaces Minigun\n{\n  Weapon.AmmoType \"Clip\"\n  Weapon.AmmoGive 20\n  Weapon.AmmoUse 1\n  Inventory.PickupSound \"misc/w_pkup\"\n  Inventory.PickupMessage \"Picked up a minigun!\"\n  Obituary \"%o was shredded by %k's minigun.\"\n  AttackSound \"weapons/minigun\"\n  Decal Bullet\n  Weapon.SlotNumber 4\n  Weapon.SlotPriority 1\n  Weapon.UpSound \"Weapons/Change\"\n  Weapon.PreferredSkin \"Minigun-DoomMarine\"\n  States\n  {\n  Spawn:\n    MNGN A -1\n    Loop\n  Ready:\n    MNGG A 1 A_WeaponReady\n    Loop\n  Deselect:\n    MNGG A 1 A_Lower\n    Loop\n  Select:\n    MNGG A 1 A_Raise\n    Loop\n  Fire:\n    MNGG A 0 A_GunFlash\n    MNGG A 0 A_FireCustomMissile(\"ChaingunCasingSpawner\", 0, 0, 0, 1)\n    MNGG A 1 A_FireBullets(5.6, 0, 1, 5, \"HitscanPuff\")\n    MNGG B 1 A_FireCustomMissile(\"ChaingunCasingSpawner\", 0, 0, 0, 1)\n    MNGG C 1 A_FireBullets(5.6, 0, 1, 5, \"HitscanPuff\")\n    MNGG D 1\n    MNGG A 1 A_ReFire\n    MNGG BCD 1\n    MNGG ABCD 2\n    MNGG ABCD 4\n    Goto Ready\n  Flash:\n    MNGF A 2 Bright A_Light1\n    MNGF B 1 Bright A_Light0\n    MNGF C 2 Bright A_Light1\n    MNGF D 1 Bright A_Light0\n    Stop\n  }\n}"
      },
      {
        "source": "pk3",
        "name": "Actors/Weapons/Railgun.txt",
        "contents": "Actor Railgun~ : Weapon Replaces Railgun\n{\n  Radius 20\n  Height 16\n  Weapon.Selectionorder 100\n  Weapon.AmmoUse 10\n  Weapon.AmmoGive 40\n  Weapon.AmmoType \"Cell\"\n  Weapon.AmmoType2 \"RailShot\"\n  Weapon.AmmoUse2 1\n  Weapon.AmmoGive2 0\n  +Weapon.ALT_Ammo_Optional\n  +Weapon.NoAlert\n  Inventory.Pickupmessage \"You got the railgun!\"\n  Obituary \"%o was railed by %k.\"\n  AttackSound \"Weapons/Railgf\"\n  Decal RailScorch\n  Weapon.SlotNumber 6\n  Weapon.SlotPriority 1\n  Weapon.UpSound \"Weapons/Change\"\n  Weapon.PreferredSkin \"Railgun-DoomMarine\"\n  States\n  {\n  Ready:\n    RLGG A 0 A_JumpIfInventory(\"Cell\", 10, 1)\n    Goto Ready+2\n    RLGG A 0 A_JumpIfInventory(\"RailShot\", 1, 1)\n    Goto AltFire\n    RLGG A 1 A_WeaponReady\n    Loop\n  Deselect:\n    RLGG A 1 A_Lower\n    Loop\n  Select:\n    RLGG A 1 A_Raise\n    Loop\n  Hold:\n  Fire:\n    RLGG E 0 A_TakeInventory(\"RailShot\", 1)\n    RLGG E 0 A_GunFlash\n    RLGG E 0 A_AlertMonsters\n    RLGG E 0 A_FireCustomMissile(\"RailImpact\",0,0)\n    STRF A 3 A_FireRailgun\n    STRF BCD 3\n    RLGG A 0 A_JumpIfInventory(\"Cell\", 10, 1)\n    Goto Fire+10\n    RLGG A 0 A_JumpIfInventory(\"RailShot\", 1, 1)\n    Goto Reload\n    STRF DCBA 2\n    RLGG M 0 A_ReFire\n    Goto Ready\n  AltHold:\n  AltFire:\n    STRF D 0 A_JumpIfInventory(\"RailShot\", 4, \"DoneReload\")\n    STRF A 0 A_JumpIfInventory(\"Cell\", 10, 1)\n    Goto Ready\n    STRF ABCD 2\n  Reload:\n    STRF D 0 A_PlaySound(\"Weapons/RailReload\")\n    STRR ABCDEFGH 2\n    STRR I 5 A_FireCustomMissile(\"CellCasingSpawner\", 0, 0, 0, 1)\n    STRR JKLMNO 2\n    STRR P 2 A_GiveInventory(\"RailShot\", 4)\n    STRR QRSTUVW 2\n    RLGG A 3\n    RLGG A 0 A_ReFire\n  DoneReload:\n    RLGG A 1\n    Goto Ready\n  Flash:\n    TNT1 A 5 bright A_Light1\n    TNT1 A 5 bright A_Light2\n    TNT1 A 0 bright A_Light0\n    Goto LightDone\n  Spawn:\n    RAIL A -1\n    Stop\n  }\n}\n\nActor RailShot : Ammo\n{\n  Inventory.Amount 4\n  Inventory.MaxAmount 4\n  Inventory.Icon \"TNT1A0\"\n  Ammo.BackpackAmount 0\n  Ammo.BackpackMaxAmount 4\n}\n\nActor STBoltSmoke\n{\n  Radius 1\n  Height 1\n  RenderStyle Add\n  Alpha 0.9\n  XScale 0.16\n  YScale 0.16\n  +NoClip\n  +NoBlockMap\n  +NoGravity\n  +NoTeleport\n  +ClientSideOnly\n  States\n  {\n  Spawn:\n    STKW AB 1 Bright A_FadeOut(0.05)\n    Loop\n  }\n}\n\nActor RailImpact : FastProjectile\n{\n  Speed 320\n  Radius 1\n  Height 1\n  +ThruActors\n  States\n  {\n  Spawn:\n    TNT1 A 1\n    Loop\n  Death:\n    TNT1 A 0\n    TNT1 A 1 A_SpawnItemEx(\"RailParticleSpawner\", 0, 0, 0, 0, 0, 0, 0, 128)\n    Stop\n  }\n}\n\nActor STRailPuff : Bulletpuff\n{\n  +PierceArmor\n  States\n  {\n  Spawn:\n    TNT1 A 0\n    TNT1 A 1 A_SpawnItemEx(\"RailParticleSpawner\", 0, 0, 0, 0, 0, 0, 0, 128)\n    Stop\n  }\n}\n\nActor RailParticleSpawner\n{\n  +NoClip\n  +NoBlockMap\n  +NoGravity\n  +Missile\n  States\n  {\n  Spawn:\n    TNT1 A 0\n    TNT1 AAAAAA 0 A_SpawnItemEx(\"RailParticle\", 0, 0, 0, (0.1)*Random(10, 25), 0, (0.1)*Random(-20, 20), Random(0, 360), 128)\n    TNT1 A 1\n    Stop\n  }\n}\n\nActor RailParticle\n{\n  Height 0\n  Radius 0\n  Mass 0\n  +Missile\n  +NoBlockMap\n  -NoGravity\n  +DontSplash\n  +DoomBounce\n  Gravity 0.2\n  BounceFactor 0.5\n  RenderStyle Add\n  Scale 0.03\n  States\n  {\n  Spawn:\n  Death:\n    SPKB D 1 Bright A_FadeOut(0.03)\n    Loop\n  }\n}"
      },
      {
        "source": "pk3",
        "name": "Actors/Weapons/SonicRailgun.txt",
        "contents": "Actor \"Sonic Railgun\" : Weapon\n{\n  Weapon.SelectionOrder 450\n  Inventory.PickupSound \"misc/w_pkup\"\n  Inventory.PickupMessage \"You Picked up a Sonic Railgun!\"\n  Obituary \"%o was ripped apart by %k's Sonic Railgun.\"\n  Weapon.AmmoUse 1\n  Weapon.AmmoUse2 1\n  Weapon.Ammotype \"Cell\"\n  Weapon.Ammotype2 \"Cell\"\n  Weapon.Ammogive 40\n  AttackSound \"weapons/SRGFire\"\n  +Weapon.NoAlert\n  Weapon.SlotNumber 6\n  Weapon.SlotPriority 0\n  Weapon.UpSound \"Weapons/Change\"\n  Weapon.PreferredSkin \"SonicRailgun-DoomMarine\"\n  Decal SRGScorch\n  States\n  {\n  Spawn:\n    SRGP A -1\n    Loop\n  Ready:\n    SRCG A 1 A_WeaponReady\n    Loop\n  Deselect:\n    SRCG A 1 A_Lower\n    Loop\n  Select:\n    SRCG A 1 A_Raise\n    Loop\n  Fire:\n    SRCG B 0 A_AlertMonsters\n    SRCG B 1\n    SRCG C 0 A_PlayWeaponSound(\"Weapons/SRGFire\")\n    SRCG C 2 A_GunFlash\n    SRCG D 2 A_RailAttack(random(1,3)*5, 0, 1, none, \"Yellow\", 1, 1, \"SonicRailPuff\", 0.5, 0.3)\n    SRCG B 1\n    SRCG C 0 A_PlayWeaponSound(\"Weapons/SRGFire\")\n    SRCG C 2 A_GunFlash\n    SRCG D 2 A_RailAttack(random(1,3)*5, 0, 1, none, \"Yellow\", 1, 1, \"SonicRailPuff\", 0.9, 0.6)\n    SRCG A 0 A_ReFire\n    Goto Ready\n  Hold:\n    SRCG B 0 A_AlertMonsters\n    SRCG B 1\n    SRCG C 0 A_PlayWeaponSound(\"Weapons/SRGFire\")\n    SRCG C 2 A_GunFlash\n    SRCG D 2 A_RailAttack(random(1,3)*5, 0, 1, none, \"Yellow\", 1, 1, \"SonicRailPuff\", 1.8, 1.2)\n    SRCG B 1\n    SRCG C 0 A_PlayWeaponSound(\"Weapons/SRGFire\")\n    SRCG C 2 A_GunFlash\n    SRCG D 2 A_RailAttack(random(1,3)*5, 0, 1, none, \"Yellow\", 1, 1, \"SonicRailPuff\", 1.8, 1.2)\n    SRCG A 0 A_ReFire\n    Goto Ready\n  Altfire:\n    SRGC A 0 A_JumpIfInventory(\"Cell\", 10, 1)\n    Goto DryFire\n    SRGC A 3 Offset(97, 80) A_PlayWeaponSound(\"Weapons/SRGCharge\")\n    SRGC B 3 Offset(97, 80)\n    SRGC C 3 Offset(97, 80)\n    SRGC D 3 Offset(97, 80)\n    SRGC E 3 Offset(97, 80)\n    SRGC F 7 Offset(97, 80)\n    SRGL C 4 Offset(97, 80)\n    SRGC F 0 Offset(97, 80) A_Refire\n    SRGC F 5 Offset(97, 80)\n    SRGF A 1 Offset(97, 80) A_Light2\n    SRGF A 0 Offset(97, 80) A_AlertMonsters\n    SRGF A 0 Offset(97, 80) A_PlayWeaponSound(\"Weapons/SRGAlt\")\n    SRGF A 0 Offset(97, 80) A_GunFlash\n    SRGF A 0 Offset(97, 80) A_FireCustomMissile(\"SRGImpact\",0,0)\n    SRGF A 0 Offset(97, 80) A_TakeInventory(\"Cell\", 10, TIF_NOTAKEINFINITE)\n    SRGF A 0 Offset(97, 80) A_RailAttack(random(100,125), 0, 0, \"Red\", \"Red\", 1, 0, \"SonicRailPuff\", 0, 0)\n    SRGF B 1 Offset(97, 80)\n    SRGF C 1 Offset(97, 80)\n    SRGF D 1 Offset(97, 80)\n    SRGF E 1 Offset(97, 80)\n    SRGF F 1 Offset(97, 80)\n    SRGF G 1 Offset(97, 80)\n    SRGF H 1 Offset(97, 80)\n    SRGF I 1 Offset(97, 82)\n    SRGF J 1 Offset(97, 84)\n    SRGF K 1 Offset(97, 84)\n    SRGF L 1 Offset(97, 84)\n    SRGF M 1 Offset(97, 82)\n    SRGF N 1 Offset(97, 80)\n    SRGF O 1 Offset(97, 80)\n    SRGF P 1 Offset(97, 80)\n    SRGF Q 1 Offset(97, 80)\n    SRGF R 1 Offset(97, 80) A_Light0\n    SRGR A 2 Offset(80, 63)\n    SRGR A 2 Offset(93, 63)\n    SRGR B 1 Offset(91, 63)\n    SRGR B 1 Offset(85, 63)\n    SRGR B 1 Offset(75, 63)\n    SRGR B 1 Offset(69, 63)\n    SRGR B 1 Offset(58, 63)\n    SRGR C 2 Offset(63, 63)\n    SRGR D 2 Offset(63, 40)\n    SRGR E 7 Offset(63, 63)\n    SRGR D 2 Offset(63, 40)\n    SRGR C 1 Offset(63, 63)\n    SRGR B 1 Offset(58, 63)\n    SRGR B 1 Offset(69, 63)\n    SRGR A 3 Offset(70, 62)\n    SRCG A 0 A_WeaponReady(WRF_NOFIRE)\n    SRCG A 0 A_CheckReload\n    Goto Ready\n  AltHold:\n    SRGC F 1\n    SRGC F 0 A_ReFire\n    SRGF A 1 Offset(97, 80) A_Light2\n    SRGF A 0 Offset(97, 80) A_AlertMonsters\n    SRGF A 0 Offset(97, 80) A_PlayWeaponSound(\"Weapons/SRGAlt\")\n    SRGF A 0 Offset(97, 80) A_GunFlash\n    SRGF A 0 Offset(97, 80) A_FireCustomMissile(\"SRGImpact\",0,0)\n    SRGF A 0 Offset(97, 80) A_TakeInventory(\"Cell\", 10, TIF_NOTAKEINFINITE)\n    SRGF A 0 Offset(97, 80) A_RailAttack(random(100,125), 0, 0, \"Red\", \"Red\", 1, 0, \"SonicRailPuff\", 0, 0)\n    SRGF B 1 Offset(97, 80)\n    SRGF C 1 Offset(97, 80)\n    SRGF D 1 Offset(97, 80)\n    SRGF E 1 Offset(97, 80)\n    SRGF F 1 Offset(97, 80)\n    SRGF G 1 Offset(97, 80)\n    SRGF H 1 Offset(97, 80)\n    SRGF I 1 Offset(97, 82)\n    SRGF J 1 Offset(97, 84)\n    SRGF K 1 Offset(97, 84)\n    SRGF L 1 Offset(97, 84)\n    SRGF M 1 Offset(97, 82)\n    SRGF N 1 Offset(97, 80)\n    SRGF O 1 Offset(97, 80)\n    SRGF P 1 Offset(97, 80)\n    SRGF Q 1 Offset(97, 80)\n    SRGF R 1 Offset(97, 80) A_Light0\n    SRGR A 2 Offset(80, 63)\n    SRGR A 2 Offset(93, 63)\n    SRGR B 1 Offset(91, 63)\n    SRGR B 1 Offset(85, 63)\n    SRGR B 1 Offset(75, 63)\n    SRGR B 1 Offset(69, 63)\n    SRGR B 1 Offset(58, 63)\n    SRGR C 2 Offset(63, 63)\n    SRGR D 2 Offset(63, 40)\n    SRGR E 7 Offset(63, 63)\n    SRGR D 2 Offset(63, 40)\n    SRGR C 1 Offset(63, 63)\n    SRGR B 1 Offset(58, 63)\n    SRGR B 1 Offset(69, 63)\n    SRGR A 3 Offset(70, 62)\n    SRCG A 0 A_WeaponReady(WRF_NOFIRE)\n    SRCG A 0 A_CheckReload\n    Goto Ready\n  Flash:\n    TNT1 A 5 Bright A_Light1\n    Goto LightDone\n  DryFire:\n    SRCG A 20 A_PlayWeaponSound(\"Weapons/SRGDry\")\n    Goto Ready\n  }\n}\n\nActor BoltSmoke\n{\n  Radius 1\n  Height 1\n  RenderStyle Add\n  Alpha 0.9\n  XScale 0.1\n  YScale 0.1\n  +NoClip\n  +NoBlockMap\n  +NoGravity\n  +NoTeleport\n  +ClientSideOnly\n  States\n  {\n  Spawn:\n    KWBR AB 2 Bright A_FadeOut(0.2)\n    Loop\n  }\n}\n\nActor BoltSmoke2\n{\n  Radius 1\n  Height 1\n  RenderStyle Add\n  Alpha 0.9\n  XScale 0.16\n  YScale 0.16\n  +NoClip\n  +NoBlockMap\n  +NoGravity\n  +NoTeleport\n  +ClientSideOnly\n  States\n  {\n  Spawn:\n    KWBB AB 1 Bright A_FadeOut(0.05)\n    Loop\n  }\n}\n\nActor SRGImpact : FastProjectile\n{\n  Speed 320\n  Radius 1\n  Height 1\n  +ThruActors\n  States\n  {\n  Spawn:\n    TNT1 A 1\n    Loop\n  Death:\n    TNT1 A 0\n    TNT1 A 1 A_SpawnItemEx(\"SRGParticleSpawner\", 0, 0, 0, 0, 0, 0, 0, 128)\n    Stop\n  }\n}\n\nActor SonicRailPuff : Bulletpuff\n{\n  +PierceArmor\n  States\n  {\n  Spawn:\n    TNT1 A 0\n    TNT1 A 1 A_SpawnItemEx(\"SRGParticleSpawner\", 0, 0, 0, 0, 0, 0, 0, 128)\n    Stop\n  }\n}\n\nActor SRGParticleSpawner\n{\n  +NoClip\n  +NoBlockMap\n  +NoGravity\n  +Missile\n  States\n  {\n  Spawn:\n    TNT1 A 0\n    TNT1 AAAAAA 0 A_SpawnItemEx(\"SRGParticle\", 0, 0, 0, (0.1)*Random(10, 25), 0, (0.1)*Random(-20, 20), Random(0, 360), 128)\n    TNT1 A 1\n    Stop\n  }\n}\n\nActor SRGParticle\n{\n  Height 0\n  Radius 0\n  Mass 0\n  +Missile\n  +NoBlockMap\n  -NoGravity\n  +DontSplash\n  +DoomBounce\n  Gravity 0.2\n  BounceFactor 0.5\n  RenderStyle Add\n  Scale 0.03\n  States\n  {\n  Spawn:\n  Death:\n    SPKO A 1 Bright A_FadeOut(0.03)\n    Loop\n  }\n}"
      }
    ]
  },
  "maps": []
}

gib.gg runs on open-source software and freely licensed replacement game assets from the Freedoom project. gib.gg is not affiliated with Bethesda Softworks, id Software, or ZeniMax Media. All trademarks belong to their respective owners. Some WADs and associated metadata on this site are sourced from WAD Archive. User-submitted content remains the responsibility of its respective authors. If you believe content on this site violates your rights, please send DMCA requests to dmca@gib.gg.