blockdoom-0.5.1.pk3

PK3 606 KiB 1 map(s)

Counts

endoom0
graphics1
lumps95
maps1
palettes0

Totals (across maps)

Things8
Linedefs160
Sectors68
Monsters0
Items0
Raw model (for completeness)
{
  "meta": {
    "id": "0976b276-e974-441e-8186-3f26a3dd83ec",
    "sha1": "0bf72582e0b09cd215c2049a5741e6d0c33a76b1",
    "sha256": "3ddadc9fbaf512268747bac632f086dc74d71834920a3aabd15657734f1be41f",
    "filenames": [
      "blockdoom-0.5.1.pk3"
    ],
    "additional": {
      "engines": [
        "ZDOOM"
      ],
      "iwad": [
        "DOOM2"
      ],
      "filename": null,
      "added": "2014-06-21 11:24:44",
      "locked": false,
      "canDownload": true,
      "adult": false,
      "hidden": false,
      "name": null,
      "description": null,
      "maps": null,
      "graphicOverrides": null,
      "screenshots": {
        "MAP01": "MAP01.png"
      },
      "palettes": null,
      "categories": null
    },
    "flags": {
      "locked": false,
      "canDownload": true,
      "adult": false,
      "hidden": false
    },
    "added": "2014-06-21 11:24:44",
    "file": {
      "type": "PK3",
      "size": 620477,
      "url": "https://wadarchive2.nyc3.digitaloceanspaces.com/0bf72582e0b09cd215c2049a5741e6d0c33a76b1/0bf72582e0b09cd215c2049a5741e6d0c33a76b1.pk3.gz",
      "corrupt": false
    },
    "content": {
      "maps": [
        "BLOCK01"
      ],
      "counts": {
        "endoom": 0,
        "graphics": 1,
        "lumps": 95,
        "maps": 1,
        "palettes": 0
      },
      "engines_guess": [
        "ZDOOM"
      ],
      "iwads_guess": [
        "DOOM2"
      ]
    },
    "text_files": [
      {
        "source": "pk3",
        "name": "loadacs.txt",
        "contents": "BLOCKDOOM"
      },
      {
        "source": "pk3",
        "name": "decorate.txt",
        "contents": "Actor BD_Flag : Inventory { Inventory.MaxAmount 1 }\n\nActor BD_IsFlying : BD_Flag {}\nActor BD_OptimizeRendering : BD_Flag {}\n\n// WorldEdit\nActor BD_IsAdmin : BD_Flag {}\nActor BD_Pos1 : Inventory {}\nActor BD_Pos2 : Inventory {}\nActor BD_ReplaceBlock : Inventory {}\n\nActor lolmarker\n{\n\t+NOGRAVITY\n\n\tStates\n\t{\n\tSpawn:\n\t\tPOSS A 1\n\t\tPOSS A 1 ACS_ExecuteAlways(300, 0)\n\t\tPOSS A -1\n\t\tStop\n\t}\n}\n\nActor BlockDoomPlayer : DoomPlayer\n{\n\tPlayer.StartItem \"BlockDirtPlacer\"\n\tPlayer.StartItem \"BlockGrassPlacer\"\n\tPlayer.StartItem \"BlockStonePlacer\"\n\tPlayer.StartItem \"BlockCobbleStonePlacer\"\n\tPlayer.StartItem \"BlockWoodPlacer\"\n\tPlayer.StartItem \"BlockPlanksPlacer\"\n\tPlayer.StartItem \"BlockSandPlacer\"\n\tPlayer.StartItem \"BlockGravelPlacer\"\n\tPlayer.StartItem \"BlockBrickPlacer\"\n\tPlayer.StartItem \"BlockLeavesPlacer\"\n\tPlayer.StartItem \"BlockObsidianPlacer\"\n\tPlayer.StartItem \"BlockMossyCobblestonePlacer\"\n\tPlayer.StartItem \"BlockWoolPlacer\"\n\tPlayer.StartItem \"BlockIronPlacer\"\n\tPlayer.StartItem \"BlockGoldPlacer\"\n\tPlayer.StartItem \"BlockDiamondPlacer\"\n\tPlayer.StartItem \"BlockStoneBrickPlacer\"\n\tPlayer.StartItem \"BlockChiseledStoneBrickPlacer\"\n\n\tRadius 12\n\tSpeed 0.5\n\n\tStates\n\t{\n\tDeath:\n\t\tPLAY H 0 A_PlayerSkinCheck(\"AltSkinDeath\")\n\t//Death1:\n\t\tPLAY H 10\n\t\tPLAY I 10 A_PlayerScream\n\t\tPLAY J 10 A_NoBlocking\n\t\tPLAY KLM 10\n\t\tPLAY NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN 35\n\t\tPLAY NNNNNNNNNNNNNNNNNNNN 5 A_FadeOut(0.05)\n\t\tStop\n\tXDeath:\n\t\tPLAY O 0 A_PlayerSkinCheck(\"AltSkinXDeath\")\n\t//XDeath1:\n\t\tPLAY O 5\n\t\tPLAY P 5 A_XScream\n\t\tPLAY Q 5 A_NoBlocking\n\t\tPLAY RSTUV 5\n\t\tPLAY WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW 35\n\t\tPLAY WWWWWWWWWWWWWWWWWWWW 5 A_FadeOut(0.05)\n\t\tStop\n\tAltSkinDeath:\n\t\tPLAY H 6\n\t\tPLAY I 6 A_PlayerScream\n\t\tPLAY JK 6\n\t\tPLAY L 6 A_NoBlocking\n\t\tPLAY MNO 6\n\t\tPLAY PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP 35\n\t\tPLAY PPPPPPPPPPPPPPPPPPPP 5 A_FadeOut(0.05)\n\t\tStop\n\tAltSkinXDeath:\n\t\tPLAY Q 5 A_PlayerScream\n\t\tPLAY R 0 A_NoBlocking\n\t\tPLAY R 5 A_SkullPop\n\t\tPLAY STUVWX 5\n\t\tPLAY YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY 35\n\t\tPLAY YYYYYYYYYYYYYYYYYYYY 5 A_FadeOut(0.05)\n\t\tStop\n\t}\n}\n\n// Base block actor.\n\nActor Block : CustomBridge\n{\n\t+SHOOTABLE\n\t+SOLID\n\t+DONTRIP\n\t+NOGRAVITY\n\t+NOBLOOD\n\n\tHealth 16\n\tMass 0x7fffffff\n\tRadius 16\n\tHeight 32\n\n\tArgs 16, 32, 0, 0\n\n\tStates\n\t{\n\tSpawn:\n\t\tTNT1 A 0 //A_Нутыпонел\n\t\tTNT1 A 0 ACS_ExecuteAlways(300, 0, 0)\n\tVisible:\n\t\tMODL A -1\n\t\tStop\n\tNotVisible:\n\t\tTNT1 A -1\n\t\tStop\n\tDeath:\n\t\tMODL A 1 ACS_ExecuteAlways(2, 0) // Notify block engine about removed block.\n\t\tStop\n\t}\n}\n\n// Base block actor for blocks that are falling.\nActor FallingBlock\n{\n\t+SHOOTABLE\n\t+SOLID\n\t+DONTRIP\n\t+NOBLOOD\n\t+CANPASS\n\n\tHealth 16\n\tMass 0x7fffffff\n\tRadius 16\n\tHeight 32\n\n\tArgs 16, 32, 0, 0\n\n\tStates\n\t{\n\tSpawn:\n\t\tMODL A -1\n\t\tStop\n\t}\n}\n\nActor BlockItem : custominventory\n{\n  +Countitem\n  +INVENTORY.INVBAR\n  +FLOATBOB\n  -AUTOACTIVATE\n\n//Inventory.MaxAmount 128\n  Inventory.Icon \"DIRTA0\"\n  Inventory.PickupMessage \"\"\n\n  Radius 8\n  Height 8\n  States\n  {\n    Spawn:\n\t\tMODL A 0\n\t\tMODL A 0 ACS_ExecuteAlways(300, 0, 1)\n\t\tMODL A -1\n\t\tStop\n\tUse:\n\t\tTNT1 A 0 //A_giveinventory(\"blockdirtitem\", 1)\n\t\tTNT1 A 0 A_giveinventory(\"blockDirtplacer\", 1)\n\t\tstop\n  }\n}\n\nActor Damage1 {}\nActor Damage2 {}\nActor Damage3 {}\nActor Damage4 {}\nActor Damage5 {}\nActor Damage6 {}\nActor Damage7 {}\nActor Damage8 {}\nActor Damage9 {}\nActor Damage10 {}\nActor Damage11 {}\n\n#include \"actors/blocks.txt\"\n#include \"actors/blockplacerpuffs.txt\"\n#include \"actors/blockplacers.txt\""
      },
      {
        "source": "pk3",
        "name": "modeldef.txt",
        "contents": "//By Predator\n\n//== ITEM BASE ==========================\n\n/*model BlockDirtItem\n{\n\tPath \"models/\"\n\tModel 0 \"dirt.md3\"\n\tSkin  0 \"terrain.png\"\n\tScale 0.5 0.5 0.5\n\tzoffset 16\n\n\tFrameIndex MODL A 0 0\n}*/\n\n//== Dirt ===============================\n\nmodel BlockDirt\n{\n\tPath \"models/\"\n\tModel 0 \"dirt.md3\"\n\tSkin  0 \"terrain.png\"\n\tScale 1.28 1.28 1.54\n\tzoffset 16\n\n\tFrameIndex MODL A 0 0\n}\n\n//== Grass ==============================\n\nmodel BlockGrass\n{\n\tpath \"models/\"\n\tModel 0 \"grass.md3\"\n\tSkin  0 \"terrain.png\"\n\tScale 1.28 1.28 1.54\n\tzoffset 16\n\n\tFrameIndex MODL A 0 0\n}\n\n//== Stone ==============================\n\nmodel BlockStone\n{\n\tPath \"models/\"\n\tModel 0 \"stone.md3\"\n\tSkin  0 \"terrain.png\"\n\tScale 1.28 1.28 1.54\n\tzoffset 16\n\n\tFrameIndex MODL A 0 0\n}\n\nmodel BlockCobblestone\n{\n\tPath \"models/\"\n\tModel 0 \"cobblestone.md3\"\n\tSkin  0 \"terrain.png\"\n\tScale 1.28 1.28 1.54\n\tzoffset 16\n\n\tFrameIndex MODL A 0 0\n}\n\nmodel BlockMossyCobblestone\n{\n\tPath \"models/\"\n\tModel 0 \"mossycobblestone.md3\"\n\tSkin  0 \"terrain.png\"\n\tScale 1.28 1.28 1.54\n\tzoffset 16\n\n\tFrameIndex MODL A 0 0\n}\n\nmodel BlockChiseledStoneBrick\n{\n\tPath \"models/\"\n\tModel 0 \"carvedstone.md3\"\n\tSkin  0 \"terrain.png\"\n\tScale 1.28 1.28 1.54\n\tzoffset 16\n\n\tFrameIndex MODL A 0 0\n}\n\nmodel BlockStoneBrick\n{\n\tPath \"models/\"\n\tModel 0 \"stonebricks.md3\"\n\tSkin  0 \"terrain.png\"\n\tScale 1.28 1.28 1.54\n\tzoffset 16\n\n\tFrameIndex MODL A 0 0\n}\n\n//== Wood ===============================\n\nmodel BlockWood\n{\n\tpath \"models/\"\n\tModel 0 \"wood.md3\"\n\tSkin  0 \"terrain.png\"\n\tScale 1.28 1.28 1.54\n\tzoffset 16\n\n\tFrameIndex MODL A 0 0\n}\n\nmodel BlockPlanks\n{\n\tpath \"models/\"\n\tModel 0 \"planks.md3\"\n\tSkin  0 \"terrain.png\"\n\tScale 1.28 1.28 1.54\n\tzoffset 16\n\n\tFrameIndex MODL A 0 0\n}\n\n//== Leaves =============================\n\nmodel BlockLeaves\n{\n\tpath \"models/\"\n\tModel 0 \"leaves.md3\"\n\tSkin  0 \"terrain.png\"\n\tScale 1.28 1.28 1.54\n\tzoffset 16\n\n\tFrameIndex MODL A 0 0\n}\n\n//== Sand ===============================\n\nmodel BlockSand\n{\n\tpath \"models/\"\n\tModel 0 \"sand.md3\"\n\tSkin  0 \"terrain.png\"\n\tScale 1.28 1.28 1.54\n\tzoffset 16\n\n\tFrameIndex MODL A 0 0\n}\n\nmodel BlockFallingSand\n{\n\tpath \"models/\"\n\tModel 0 \"sand.md3\"\n\tSkin  0 \"terrain.png\"\n\tScale 1.28 1.28 1.54\n\tzoffset 16\n\n\tFrameIndex MODL A 0 0\n}\n\n//== Bedrock ============================\n\nmodel BlockBedrock\n{\n\tpath \"models/\"\n\tModel 0 \"bedrock.md3\"\n\tSkin  0 \"terrain.png\"\n\tScale 1.28 1.28 1.54\n\tzoffset 16\n\n\tFrameIndex MODL A 0 0\n}\n\n//== Gravel =============================\n\nmodel BlockGravel\n{\n\tpath \"models/\"\n\tModel 0 \"gravel.md3\"\n\tSkin  0 \"terrain.png\"\n\tScale 1.28 1.28 1.54\n\tzoffset 16\n\n\tFrameIndex MODL A 0 0\n}\n\nmodel BlockFallingGravel\n{\n\tpath \"models/\"\n\tModel 0 \"gravel.md3\"\n\tSkin  0 \"terrain.png\"\n\tScale 1.28 1.28 1.54\n\tzoffset 16\n\n\tFrameIndex MODL A 0 0\n}\n\n//== Bricks =============================\n\nmodel BlockBrick\n{\n\tpath \"models/\"\n\tModel 0 \"brick.md3\"\n\tSkin  0 \"terrain.png\"\n\tScale 1.28 1.28 1.54\n\tzoffset 16\n\n\tFrameIndex MODL A 0 0\n}\n\n//== Obsidian =============================\n\nmodel BlockObsidian\n{\n\tpath \"models/\"\n\tModel 0 \"obsidian.md3\"\n\tSkin  0 \"terrain.png\"\n\tScale 1.28 1.28 1.54\n\tzoffset 16\n\n\tFrameIndex MODL A 0 0\n}\n\n//== Iron/Gold/Diamond =============================\n\nmodel BlockIron\n{\n\tpath \"models/\"\n\tModel 0 \"ironblock.md3\"\n\tSkin  0 \"terrain.png\"\n\tScale 1.28 1.28 1.54\n\tzoffset 16\n\n\tFrameIndex MODL A 0 0\n}\n\nmodel BlockGold\n{\n\tpath \"models/\"\n\tModel 0 \"goldblock.md3\"\n\tSkin  0 \"terrain.png\"\n\tScale 1.28 1.28 1.54\n\tzoffset 16\n\n\tFrameIndex MODL A 0 0\n}\n\nmodel BlockDiamond\n{\n\tpath \"models/\"\n\tModel 0 \"diamondblock.md3\"\n\tSkin  0 \"terrain.png\"\n\tScale 1.28 1.28 1.54\n\tzoffset 16\n\n\tFrameIndex MODL A 0 0\n}\n\n//== Wool =============================\n\nmodel BlockWool\n{\n\tpath \"models/\"\n\tModel 0 \"wool.md3\"\n\tSkin  0 \"terrain.png\"\n\tScale 1.28 1.28 1.54\n\tzoffset 16\n\n\tFrameIndex MODL A 0 0\n}\n\n//== Damage =============================\n\nmodel Damage1\n{\n\tpath \"models/\"\n\tModel 0 \"damage1.md3\"\n\tSkin  0 \"terrain.png\"\n\tScale 1.29 1.29 1.55\n\tzoffset 16\n\n\tFrameIndex MODL A 0 0\n}\n\nmodel Damage2\n{\n\tpath \"models/\"\n\tModel 0 \"damage2.md3\"\n\tSkin  0 \"terrain.png\"\n\tScale 1.29 1.29 1.55\n\tzoffset 16\n\n\tFrameIndex MODL A 0 0\n}\n\nmodel Damage3\n{\n\tpath \"models/\"\n\tModel 0 \"damage3.md3\"\n\tSkin  0 \"terrain.png\"\n\tScale 1.29 1.29 1.55\n\tzoffset 16\n\n\tFrameIndex MODL A 0 0\n}\n\nmodel Damage4\n{\n\tpath \"models/\"\n\tModel 0 \"damage4.md3\"\n\tSkin  0 \"terrain.png\"\n\tScale 1.29 1.29 1.55\n\tzoffset 16\n\n\tFrameIndex MODL A 0 0\n}\n\nmodel Damage5\n{\n\tpath \"models/\"\n\tModel 0 \"damage5.md3\"\n\tSkin  0 \"terrain.png\"\n\tScale 1.29 1.29 1.55\n\tzoffset 16\n\n\tFrameIndex MODL A 0 0\n}\n\nmodel Damage6\n{\n\tpath \"models/\"\n\tModel 0 \"damage6.md3\"\n\tSkin  0 \"terrain.png\"\n\tScale 1.29 1.29 1.55\n\tzoffset 16\n\n\tFrameIndex MODL A 0 0\n}\n\nmodel Damage7\n{\n\tpath \"models/\"\n\tModel 0 \"damage7.md3\"\n\tSkin  0 \"terrain.png\"\n\tScale 1.29 1.29 1.55\n\tzoffset 16\n\n\tFrameIndex MODL A 0 0\n}\n\nmodel Damage8\n{\n\tpath \"models/\"\n\tModel 0 \"damage8.md3\"\n\tSkin  0 \"terrain.png\"\n\tScale 1.29 1.29 1.55\n\tzoffset 16\n\n\tFrameIndex MODL A 0 0\n}\n\nmodel Damage9\n{\n\tpath \"models/\"\n\tModel 0 \"damage9.md3\"\n\tSkin  0 \"terrain.png\"\n\tScale 1.29 1.29 1.55\n\tzoffset 16\n\n\tFrameIndex MODL A 0 0\n}\n\nmodel Damage10\n{\n\tpath \"models/\"\n\tModel 0 \"damage10.md3\"\n\tSkin  0 \"terrain.png\"\n\tScale 1.29 1.29 1.55\n\tzoffset 16\n\n\tFrameIndex MODL A 0 0\n}"
      },
      {
        "source": "pk3",
        "name": "mapinfo.txt",
        "contents": "map block01 \"BlockDoom Small\"\n{\n\tlevelnum = 101\n\tsky1 = BLUESKY, 0.0\n\tmusic = D_RAVE\n\t//strifefallingdamage\n\tcluster = 1\n\tnointermission\n}\n\n/*\nmap block02 \"BlockDoom Medium\"\n{\n\tlevelnum = 102\n\tsky1 = BLUESKY, 0.0\n\tmusic = D_RAVE\n\t//strifefallingdamage\n\tcluster = 1\n\tnointermission\n}\n*/\n\n/*\nmap block03 \"BlockDoom Large\"\n{\n\tlevelnum = 103\n\tsky1 = BLUESKY, 0.0\n\tmusic = D_STALKS\n\t//strifefallingdamage\n\tcluster = 1\n\tnointermission\n}\n*/"
      },
      {
        "source": "pk3",
        "name": "language.txt",
        "contents": "[enu default]\nOB_FALLING = \"%o forgot to watch %p step\";\nOB_FRIENDLY1 = \"%o \\cgis killing players for money and items!\";\nOB_FRIENDLY2 = \"%o \\cgdid a teamkill!\";\nOB_FRIENDLY3 = \"%o \\cgthinks that he is playing who dun it!\";\nOB_FRIENDLY4 = \"%o \\cgis the murderer!\";"
      },
      {
        "source": "pk3",
        "name": "sbarinfo.txt",
        "contents": "statusbar fullscreen, fullscreenoffsets, forcescaled\n{\n\t\tdrawbar \"HPBAR\", \"HPBARN\",health, horizontal, 5, -35;\n\t\tdrawbar \"ARMOR\", \"ARMORN\",armor, horizontal, 5, -20;\n\n}\n\nstatusbar normal\n{\n\t\tdrawbar \"HPBAR\", \"HPBARN\",health, horizontal, 5, -35;\n\t\tdrawbar \"ARMOR\", \"ARMORN\",armor, horizontal, 5, -20;\n\n}"
      },
      {
        "source": "pk3",
        "name": "keyconf.txt",
        "contents": "clearplayerclasses\naddplayerclass BlockDoomPlayer\n\nAddKeySection \"BlockDoom\" BlockDoom\n\nsetslot 1, BlockGrassPlacer BlockDirtPlacer\nsetslot 2, BlockMossyCobblestonePlacer BlockCobbleStonePlacer BlockStonePlacer\nsetslot 3, BlockPlanksPlacer BlockWoodPlacer\nsetslot 4, BlockGravelPlacer BlockSandPlacer\nsetslot 5, BlockLeavesPlacer BlockBrickPlacer\nsetslot 6, BlockChiseledStoneBrickPlacer BlockStoneBrickPlacer\nsetslot 7, BlockDiamondPlacer BlockGoldPlacer BlockIronPlacer\nsetslot 8, BlockWoolPlacer BlockObsidianPlacer\n//setslot 9\n//setslot 0\n\nAddMenuKey \"About BlockDoom\" bdabout\nalias bdabout   \"puke 9\"\n\n//AddMenuKey \"BlockDoom help\" bdhelp\n\nalias bdterrain_flat   \"puke 6\"\nalias bdterrain_random \"puke 7\"\nalias bdterrain_solid  \"puke 12\"\nalias bdterrain_none   \"puke 13\"\n\nalias bdfaster \"puke 152\"\nalias bdslower \"puke 153\"\n\nAddMenuKey \"Fly\" bdfly\nalias bdfly \"puke 203\"\nDefaultBind o bdfly\n\n// WorldEdit commands.\nalias pos1  \"puke 91 1\"\nalias pos2  \"puke 91 2\"\nalias hpos1 \"puke 92 1\"\nalias hpos2 \"puke 92 2\"\n\nalias cuboid     \"puke 90 0 1\"\nalias delcuboid  \"puke 90 1 1\"\nalias hcuboid    \"puke 90 0 2\"\nalias delhcuboid \"puke 90 1 2\"\n\nalias ellipsoid     \"puke 90 0 3\"\nalias delellipsoid  \"puke 90 1 3\"\nalias hellipsoid    \"puke 90 0 4\"\nalias delhellipsoid  \"puke 90 1 4\"\n\nalias undo    \"puke 96\"\n\n// Replace block.\nalias replace_everything \"puke 93 -1\"\nalias replace_AIR \"puke 93 0\"\nalias replace_DIRT \"puke 93 1\"\nalias replace_GRASS \"puke 93 2\"\nalias replace_STONE \"puke 93 3\"\nalias replace_COBBLESTONE \"puke 93 4\"\nalias replace_WOOD \"puke 93 5\"\nalias replace_PLANKS \"puke 93 6\"\nalias replace_LEAVES \"puke 93 7\"\nalias replace_SAND \"puke 93 8\"\nalias replace_BEDROCK \"puke 93 9\"\nalias replace_GRAVEL \"puke 93 10\"\nalias replace_BRICK \"puke 93 11\"\nalias replace_OBSIDIAN \"puke 93 12\"\nalias replace_MOSSY_COBBLESTONE \"puke 93 13\"\nalias replace_WOOL \"puke 93 14\"\nalias replace_IRON \"puke 93 15\"\nalias replace_GOLD \"puke 93 16\"\nalias replace_DIAMOND \"puke 93 17\"\nalias replace_STONE_BRICK \"puke 93 18\"\nalias replace_CHISELED_STONE_BRICK \"puke 93 19\""
      },
      {
        "source": "pk3",
        "name": "textures.txt",
        "contents": "texture MCBEDRCK, 16, 16\n{\n\tXScale 0.5\n\tYScale 0.5\n\n\tPatch MCBEDRCK, 0, 0\n}\n\n//============================================================================\\\\\n\nsprite DIRWA0, 424, 351\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -450, -180\n\n\tPatch DIRWA0, 0, 0\n}\n\nsprite DIRPA0, 424, 351\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -445, -170\n\n\tPatch DIRWA0, 0, 0\n}\n\nsprite DIRPB0, 424, 351\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -440, -160\n\n\tPatch DIRWA0, 0, 0\n}\n\nsprite DIRPC0, 424, 351\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -435, -150\n\n\tPatch DIRWA0, 0, 0\n}\n\nsprite DIRPD0, 424, 351\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -430, -145\n\n\tPatch DIRWA0, 0, 0\n}\n\nsprite GRSWA0, 431, 368\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -450, -180\n\n\tPatch GRSWA0, 0, 0\n}\n\nsprite GRSPA0, 431, 368\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -445, -170\n\n\tPatch GRSWA0, 0, 0\n}\n\nsprite GRSPB0, 431, 368\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -440, -160\n\n\tPatch GRSWA0, 0, 0\n}\n\nsprite GRSPC0, 431, 368\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -435, -150\n\n\tPatch GRSWA0, 0, 0\n}\n\nsprite GRSPD0, 431, 368\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -430, -145\n\n\tPatch GRSWA0, 0, 0\n}\n\nsprite STNWA0, 431, 368\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -450, -180\n\n\tPatch STNWA0, 0, 0\n}\n\nsprite STNPA0, 431, 368\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -445, -170\n\n\tPatch STNWA0, 0, 0\n}\n\nsprite STNPB0, 431, 368\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -440, -160\n\n\tPatch STNWA0, 0, 0\n}\n\nsprite STNPC0, 431, 368\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -435, -150\n\n\tPatch STNWA0, 0, 0\n}\n\nsprite STNPD0, 439, 342\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -430, -145\n\n\tPatch STNWA0, 0, 0\n}\n\nsprite CSTWA0, 450, 341\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -450, -180\n\n\tPatch CSTWA0, 0, 0\n}\n\nsprite CSTPA0, 450, 341\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -445, -170\n\n\tPatch CSTWA0, 0, 0\n}\n\nsprite CSTPB0, 450, 341\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -440, -160\n\n\tPatch CSTWA0, 0, 0\n}\n\nsprite CSTPC0, 450, 341\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -435, -150\n\n\tPatch CSTWA0, 0, 0\n}\n\nsprite CSTPD0, 450, 341\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -430, -145\n\n\tPatch CSTWA0, 0, 0\n}\n\nsprite WODWA0, 419, 362\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -450, -180\n\n\tPatch WODWA0, 0, 0\n}\n\nsprite WODPA0, 419, 362\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -445, -170\n\n\tPatch WODWA0, 0, 0\n}\n\nsprite WODPB0, 419, 362\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -440, -160\n\n\tPatch WODWA0, 0, 0\n}\n\nsprite WODPC0, 419, 362\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -435, -150\n\n\tPatch WODWA0, 0, 0\n}\n\nsprite WODPD0, 419, 362\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -430, -145\n\n\tPatch WODWA0, 0, 0\n}\n\nsprite PLNWA0, 419, 362\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -450, -180\n\n\tPatch PLNWA0, 0, 0\n}\n\nsprite PLNPA0, 419, 362\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -445, -170\n\n\tPatch PLNWA0, 0, 0\n}\n\nsprite PLNPB0, 419, 362\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -440, -160\n\n\tPatch PLNWA0, 0, 0\n}\n\nsprite PLNPC0, 419, 362\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -435, -150\n\n\tPatch PLNWA0, 0, 0\n}\n\nsprite PLNPD0, 419, 362\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -430, -145\n\n\tPatch PLNWA0, 0, 0\n}\n\nsprite LVSWA0, 404, 350\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -450, -180\n\n\tPatch LVSWA0, 0, 0\n}\n\nsprite LVSPA0, 404, 350\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -445, -170\n\n\tPatch LVSWA0, 0, 0\n}\n\nsprite LVSPB0, 404, 350\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -440, -160\n\n\tPatch LVSWA0, 0, 0\n}\n\nsprite LVSPC0, 404, 350\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -435, -150\n\n\tPatch LVSWA0, 0, 0\n}\n\nsprite LVSPD0, 404, 350\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -430, -145\n\n\tPatch LVSWA0, 0, 0\n}\n\nsprite SNDWA0, 472, 374\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -450, -180\n\n\tPatch SNDWA0, 0, 0\n}\n\nsprite SNDPA0, 472, 374\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -445, -170\n\n\tPatch SNDWA0, 0, 0\n}\n\nsprite SNDPB0, 472, 374\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -440, -160\n\n\tPatch SNDWA0, 0, 0\n}\n\nsprite SNDPC0, 472, 374\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -435, -150\n\n\tPatch SNDWA0, 0, 0\n}\n\nsprite SNDPD0, 472, 374\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -430, -145\n\n\tPatch SNDWA0, 0, 0\n}\n\nsprite GRVWA0, 442, 358\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -450, -180\n\n\tPatch GRVWA0, 0, 0\n}\n\nsprite GRVPA0, 442, 358\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -445, -170\n\n\tPatch GRVWA0, 0, 0\n}\n\nsprite GRVPB0, 442, 358\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -440, -160\n\n\tPatch GRVWA0, 0, 0\n}\n\nsprite GRVPC0, 442, 358\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -435, -150\n\n\tPatch GRVWA0, 0, 0\n}\n\nsprite GRVPD0, 442, 358\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -430, -145\n\n\tPatch GRVWA0, 0, 0\n}\n\nsprite BRKWA0, 400, 364\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -450, -180\n\n\tPatch BRKWA0, 0, 0\n}\n\nsprite BRKPA0, 400, 364\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -445, -170\n\n\tPatch BRKWA0, 0, 0\n}\n\nsprite BRKPB0, 400, 364\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -440, -160\n\n\tPatch BRKWA0, 0, 0\n}\n\nsprite BRKPC0, 400, 364\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -435, -150\n\n\tPatch BRKWA0, 0, 0\n}\n\nsprite BRKPD0, 400, 364\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -430, -145\n\n\tPatch BRKWA0, 0, 0\n}\n\nsprite CDSWA0, 406, 405\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -450, -180\n\n\tPatch CDSWA0, 0, 0\n}\n\nsprite CDSPA0, 406, 405\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -445, -170\n\n\tPatch CDSWA0, 0, 0\n}\n\nsprite CDSPB0, 406, 405\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -440, -160\n\n\tPatch CDSWA0, 0, 0\n}\n\nsprite CDSPC0, 406, 405\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -435, -150\n\n\tPatch CDSWA0, 0, 0\n}\n\nsprite CDSPD0, 406, 405\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -430, -145\n\n\tPatch CDSWA0, 0, 0\n}\n\nsprite DMNWA0, 399, 395\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -445, -170\n\n\tPatch DMNWA0, 0, 0\n}\n\nsprite DMNPA0, 399, 395\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -445, -170\n\n\tPatch DMNWA0, 0, 0\n}\n\nsprite DMNPB0, 399, 395\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -440, -160\n\n\tPatch DMNWA0, 0, 0\n}\n\nsprite DMNPC0, 399, 395\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -435, -150\n\n\tPatch DMNWA0, 0, 0\n}\n\nsprite DMNPD0, 399, 395\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -430, -145\n\n\tPatch DMNWA0, 0, 0\n}\n\nsprite GLDWA0, 412, 395\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -445, -170\n\n\tPatch GLDWA0, 0, 0\n}\n\nsprite GLDPA0, 412, 395\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -445, -170\n\n\tPatch GLDWA0, 0, 0\n}\n\nsprite GLDPB0, 412, 395\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -440, -160\n\n\tPatch GLDWA0, 0, 0\n}\n\nsprite GLDPC0, 412, 395\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -435, -150\n\n\tPatch GLDWA0, 0, 0\n}\n\nsprite GLDPD0, 412, 395\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -430, -145\n\n\tPatch GLDWA0, 0, 0\n}\n\nsprite IRNWA0, 405, 396\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -445, -170\n\n\tPatch IRNWA0, 0, 0\n}\n\nsprite IRNPA0, 405, 396\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -445, -170\n\n\tPatch IRNWA0, 0, 0\n}\n\nsprite IRNPB0, 405, 396\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -440, -160\n\n\tPatch IRNWA0, 0, 0\n}\n\nsprite IRNPC0, 405, 396\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -435, -150\n\n\tPatch IRNWA0, 0, 0\n}\n\nsprite IRNPD0, 405, 396\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -430, -145\n\n\tPatch IRNWA0, 0, 0\n}\n\nsprite OBSWA0, 407, 407\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -445, -170\n\n\tPatch OBSWA0, 0, 0\n}\n\nsprite OBSPA0, 407, 407\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -445, -170\n\n\tPatch OBSWA0, 0, 0\n}\n\nsprite OBSPB0, 407, 407\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -440, -160\n\n\tPatch OBSWA0, 0, 0\n}\n\nsprite OBSPC0, 407, 407\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -435, -150\n\n\tPatch OBSWA0, 0, 0\n}\n\nsprite OBSPD0, 407, 407\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -430, -145\n\n\tPatch OBSWA0, 0, 0\n}\n\nsprite WOLWA0, 415, 400\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -445, -170\n\n\tPatch WOLWA0, 0, 0\n}\n\nsprite WOLPA0, 415, 400\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -445, -170\n\n\tPatch WOLWA0, 0, 0\n}\n\nsprite WOLPB0, 415, 400\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -440, -160\n\n\tPatch WOLWA0, 0, 0\n}\n\nsprite WOLPC0, 415, 400\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -435, -150\n\n\tPatch WOLWA0, 0, 0\n}\n\nsprite WOLPD0, 415, 400\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -430, -145\n\n\tPatch WOLWA0, 0, 0\n}\n\nsprite SBRWA0, 501, 430\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -445, -170\n\n\tPatch SBRWA0, 0, 0\n}\n\nsprite SBRPA0, 501, 430\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -445, -170\n\n\tPatch SBRWA0, 0, 0\n}\n\nsprite SBRPB0, 501, 430\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -440, -160\n\n\tPatch SBRWA0, 0, 0\n}\n\nsprite SBRPC0, 501, 430\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -435, -150\n\n\tPatch SBRWA0, 0, 0\n}\n\nsprite SBRPD0, 501, 430\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -430, -145\n\n\tPatch SBRWA0, 0, 0\n}\n\nsprite MCBWA0, 501, 438\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -445, -170\n\n\tPatch MCBWA0, 0, 0\n}\n\nsprite MCBPA0, 501, 438\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -445, -170\n\n\tPatch MCBWA0, 0, 0\n}\n\nsprite MCBPB0, 501, 438\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -440, -160\n\n\tPatch MCBWA0, 0, 0\n}\n\nsprite MCBPC0, 501, 438\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -435, -150\n\n\tPatch MCBWA0, 0, 0\n}\n\nsprite MCBPD0, 501, 438\n{\n\tXScale 2.5\n\tYScale 2.5\n\tOffset -430, -145\n\n\tPatch MCBWA0, 0, 0\n}"
      },
      {
        "source": "pk3",
        "name": "TODO.txt",
        "contents": "* More map sizes? (K)\n* Replace map borders with sky (H)\n* ЗАПИЛИТЬ МАПСЕЙВ БЛЯДЬ"
      },
      {
        "source": "pk3",
        "name": "actors/blocks.txt",
        "contents": "Actor BlockDirt       \t: Block {}\nActor BlockGrass      \t: Block { Health 24 }\nActor BlockStone      \t: Block { Health 50 }\nActor BlockCobblestone\t: Block { Health 50 }\nActor BlockWood     \t: Block { Health 30 }\nActor BlockPlanks  \t\t: Block { Health 30 }\nActor BlockLeaves \t\t: Block { Health 16 }\nActor BlockSand  \t\t: Block { Health 30 }\nActor BlockBedrock\t\t: Block { Health 0x7fffffff }\nActor BlockGravel\t\t: Block { Health 30 }\nActor BlockBrick\t\t: Block { Health 50 }\nActor BlockObsidian\t\t: Block {}\nActor BlockMossyCobblestone\t: Block {}\nActor BlockWool\t\t\t: Block {}\nActor BlockIron\t\t\t: Block {}\nActor BlockGold\t\t\t: Block {}\nActor BlockDiamond\t\t: Block {}\nActor BlockStoneBrick\t: Block {}\nActor BlockChiseledStoneBrick\t: Block {}\n\nActor BlockFallingSand   : FallingBlock {}\nActor BlockFallingGravel : FallingBlock {}\n\n/*\nActor BlockDirtItem : BlockItem {}\nActor BlockGrassItem : BlockItem {}\nActor BlockStoneItem : BlockItem {}\nActor BlockCobblestoneItem : BlockItem {}\nActor BlockWoodItem : BlockItem {}\nActor BlockPlanksItem : BlockItem {}\nActor BlockLeavesItem : BlockItem {}\nActor BlockSandItem : BlockItem {}\nActor BlockBedrockItem : BlockItem {}\nActor BlockGravelItem : BlockItem {}\nActor BlockBricksItem : BlockItem {}\n*/"
      },
      {
        "source": "pk3",
        "name": "actors/blockplacers.txt",
        "contents": "Actor BlockPlacer : Weapon\n{\n\t+UNDROPPABLE\n\t+Weapon.NOALERT\n\t+Weapon.NOAUTOAIM\n\tStates\n\t{\n\t}\n}\n\n// Template.\n/*\nActor BlockNAMEPlacer : BlockPlacer\n{\n\tStates\n\t{\n\tSpawn:\n\t\tOBSW A -1\n\t\tStop\n\tReady:\n\t\tOBSW A 1 A_WeaponReady\n\t\tLoop\n\tSelect:\n\t\tOBSW A 1 A_Raise\n\t\tLoop\n\tDeselect:\n\t\tOBSW A 1 A_Lower\n\t\tLoop\n\tFire:\n\t\tOBSP ABC 1\n\t\tOBSP D 1 A_FireBullets(0, 0, 1, 9001, \"BulletPuff\", 0, 208)\n\t\tOBSP DCBAAA 1\n\t\tGoto Ready\n\tAltFire:\n\t\tOBSP ABC 1\n\t\tOBSP D 1 A_FireBullets(0, 0, 1, 0, \"BlockBricksPlacerPuff\", 0, 208)\n\t\tOBSP DCBA 1\n\t\tGoto Ready\n\t}\n}\n*/\n\nActor BlockDirtPlacer : BlockPlacer\n{\n\tStates\n\t{\n\tSpawn:\n\t\tDIRW A -1\n\t\tStop\n\tReady:\n\t\tDIRW A 1 A_WeaponReady\n\t\tLoop\n\tSelect:\n\t\tDIRW A 1 A_Raise\n\t\tLoop\n\tDeselect:\n\t\tDIRW A 1 A_Lower\n\t\tLoop\n\tFire:\n\t\tDIRP ABC 1\n\t\tDIRP D 1 A_FireBullets(0, 0, 1, 9001, \"BulletPuff\", 0, 208)\n\t\tDIRP DCBAAA 1\n\t\tGoto Ready\n\tAltFire:\n\t\tDIRP ABC 1\n\t\tDIRP D 1 A_FireBullets(0, 0, 1, 0, \"BlockDirtPlacerPuff\", 0, 208) /*, FBF_EXPLICITANGLE | FBF_NOPITCH | FBF_NORANDOMPUFFZ | */\n\t\tDIRP DCBA 1\n\t\tGoto Ready\n\t}\n}\n\nActor BlockGrassPlacer : BlockPlacer\n{\n\tStates\n\t{\n\tSpawn:\n\t\tGRSW A -1\n\t\tStop\n\tReady:\n\t\tGRSW A 1 A_WeaponReady\n\t\tLoop\n\tSelect:\n\t\tGRSW A 1 A_Raise\n\t\tLoop\n\tDeselect:\n\t\tGRSW A 1 A_Lower\n\t\tLoop\n\tFire:\n\t\tGRSP ABC 1\n\t\tGRSP D 1 A_FireBullets(0, 0, 1, 9001, \"BulletPuff\", 0, 208)\n\t\tGRSP DCBAAA 1\n\t\tGoto Ready\n\tAltFire:\n\t\tGRSP ABC 1\n\t\tGRSP D 1 A_FireBullets(0, 0, 1, 0, \"BlockGrassPlacerPuff\", 0, 208)\n\t\tGRSP DCBA 1\n\t\tGoto Ready\n\t}\n}\n\nActor BlockStonePlacer : BlockPlacer\n{\n\tStates\n\t{\n\tSpawn:\n\t\tSTNW A -1\n\t\tStop\n\tReady:\n\t\tSTNW A 1 A_WeaponReady\n\t\tLoop\n\tSelect:\n\t\tSTNW A 1 A_Raise\n\t\tLoop\n\tDeselect:\n\t\tSTNW A 1 A_Lower\n\t\tLoop\n\tFire:\n\t\tSTNP ABC 1\n\t\tSTNP D 1 A_FireBullets(0, 0, 1, 9001, \"BulletPuff\", 0, 208)\n\t\tSTNP DCBAAA 1\n\t\tGoto Ready\n\tAltFire:\n\t\tSTNP ABC 1\n\t\tSTNP D 1 A_FireBullets(0, 0, 1, 0, \"BlockStonePlacerPuff\", 0, 208)\n\t\tSTNP DCBA 1\n\t\tGoto Ready\n\t}\n}\n\nActor BlockCobbleStonePlacer : BlockPlacer\n{\n\tStates\n\t{\n\tSpawn:\n\t\tCSTW A -1\n\t\tStop\n\tReady:\n\t\tCSTW A 1 A_WeaponReady\n\t\tLoop\n\tSelect:\n\t\tCSTW A 1 A_Raise\n\t\tLoop\n\tDeselect:\n\t\tCSTW A 1 A_Lower\n\t\tLoop\n\tFire:\n\t\tCSTP ABC 1\n\t\tCSTP D 1 A_FireBullets(0, 0, 1, 9001, \"BulletPuff\", 0, 208)\n\t\tCSTP DCBAAA 1\n\t\tGoto Ready\n\tAltFire:\n\t\tCSTP ABC 1\n\t\tCSTP D 1 A_FireBullets(0, 0, 1, 0, \"BlockCobblestonePlacerPuff\", 0, 208)\n\t\tCSTP DCBA 1\n\t\tGoto Ready\n\t}\n}\n\nActor BlockWoodPlacer : BlockPlacer\n{\n\tStates\n\t{\n\tSpawn:\n\t\tWODW A -1\n\t\tStop\n\tReady:\n\t\tWODW A 1 A_WeaponReady\n\t\tLoop\n\tSelect:\n\t\tWODW A 1 A_Raise\n\t\tLoop\n\tDeselect:\n\t\tWODW A 1 A_Lower\n\t\tLoop\n\tFire:\n\t\tWODP ABC 1\n\t\tWODP D 1 A_FireBullets(0, 0, 1, 9001, \"BulletPuff\", 0, 208)\n\t\tWODP DCBAAA 1\n\t\tGoto Ready\n\tAltFire:\n\t\tWODP ABC 1\n\t\tWODP D 1 A_FireBullets(0, 0, 1, 0, \"BlockWoodPlacerPuff\", 0, 208)\n\t\tWODP DCBA 1\n\t\tGoto Ready\n\t}\n}\n\nActor BlockPlanksPlacer : BlockPlacer\n{\n\tStates\n\t{\n\tSpawn:\n\t\tPLNW A -1\n\t\tStop\n\tReady:\n\t\tPLNW A 1 A_WeaponReady\n\t\tLoop\n\tSelect:\n\t\tPLNW A 1 A_Raise\n\t\tLoop\n\tDeselect:\n\t\tPLNW A 1 A_Lower\n\t\tLoop\n\tFire:\n\t\tPLNP ABC 1\n\t\tPLNP D 1 A_FireBullets(0, 0, 1, 9001, \"BulletPuff\", 0, 208)\n\t\tPLNP DCBAAA 1\n\t\tGoto Ready\n\tAltFire:\n\t\tPLNP ABC 1\n\t\tPLNP D 1 A_FireBullets(0, 0, 1, 0, \"BlockPlanksPlacerPuff\", 0, 208)\n\t\tPLNP DCBA 1\n\t\tGoto Ready\n\t}\n}\n\nActor BlockLeavesPlacer : BlockPlacer\n{\n\tStates\n\t{\n\tSpawn:\n\t\tLVSW A -1\n\t\tStop\n\tReady:\n\t\tLVSW A 1 A_WeaponReady\n\t\tLoop\n\tSelect:\n\t\tLVSW A 1 A_Raise\n\t\tLoop\n\tDeselect:\n\t\tLVSW A 1 A_Lower\n\t\tLoop\n\tFire:\n\t\tLVSP ABC 1\n\t\tLVSP D 1 A_FireBullets(0, 0, 1, 9001, \"BulletPuff\", 0, 208)\n\t\tLVSP DCBAAA 1\n\t\tGoto Ready\n\tAltFire:\n\t\tLVSP ABC 1\n\t\tLVSP D 1 A_FireBullets(0, 0, 1, 0, \"BlockLeavesPlacerPuff\", 0, 208)\n\t\tLVSP DCBA 1\n\t\tGoto Ready\n\t}\n}\n\nActor BlockSandPlacer : BlockPlacer\n{\n\tStates\n\t{\n\tSpawn:\n\t\tSNDW A -1\n\t\tStop\n\tReady:\n\t\tSNDW A 1 A_WeaponReady\n\t\tLoop\n\tSelect:\n\t\tSNDW A 1 A_Raise\n\t\tLoop\n\tDeselect:\n\t\tSNDW A 1 A_Lower\n\t\tLoop\n\tFire:\n\t\tSNDP ABC 1\n\t\tSNDP D 1 A_FireBullets(0, 0, 1, 9001, \"BulletPuff\", 0, 208)\n\t\tSNDP DCBAAA 1\n\t\tGoto Ready\n\tAltFire:\n\t\tSNDP ABC 1\n\t\tSNDP D 1 A_FireBullets(0, 0, 1, 0, \"BlockSandPlacerPuff\", 0, 208)\n\t\tSNDP DCBA 1\n\t\tGoto Ready\n\t}\n}\n\nActor BlockGravelPlacer : BlockPlacer\n{\n\tStates\n\t{\n\tSpawn:\n\t\tGRVW A -1\n\t\tStop\n\tReady:\n\t\tGRVW A 1 A_WeaponReady\n\t\tLoop\n\tSelect:\n\t\tGRVW A 1 A_Raise\n\t\tLoop\n\tDeselect:\n\t\tGRVW A 1 A_Lower\n\t\tLoop\n\tFire:\n\t\tGRVP ABC 1\n\t\tGRVP D 1 A_FireBullets(0, 0, 1, 9001, \"BulletPuff\", 0, 208)\n\t\tGRVP DCBAAA 1\n\t\tGoto Ready\n\tAltFire:\n\t\tGRVP ABC 1\n\t\tGRVP D 1 A_FireBullets(0, 0, 1, 0, \"BlockGravelPlacerPuff\", 0, 208)\n\t\tGRVP DCBA 1\n\t\tGoto Ready\n\t}\n}\n\nActor BlockBrickPlacer : BlockPlacer\n{\n\tStates\n\t{\n\tSpawn:\n\t\tBRKW A -1\n\t\tStop\n\tReady:\n\t\tBRKW A 1 A_WeaponReady\n\t\tLoop\n\tSelect:\n\t\tBRKW A 1 A_Raise\n\t\tLoop\n\tDeselect:\n\t\tBRKW A 1 A_Lower\n\t\tLoop\n\tFire:\n\t\tBRKP ABC 1\n\t\tBRKP D 1 A_FireBullets(0, 0, 1, 9001, \"BulletPuff\", 0, 208)\n\t\tBRKP DCBAAA 1\n\t\tGoto Ready\n\tAltFire:\n\t\tBRKP ABC 1\n\t\tBRKP D 1 A_FireBullets(0, 0, 1, 0, \"BlockBrickPlacerPuff\", 0, 208)\n\t\tBRKP DCBA 1\n\t\tGoto Ready\n\t}\n}\n\nActor BlockObsidianPlacer : BlockPlacer\n{\n\tStates\n\t{\n\tSpawn:\n\t\tOBSW A -1\n\t\tStop\n\tReady:\n\t\tOBSW A 1 A_WeaponReady\n\t\tLoop\n\tSelect:\n\t\tOBSW A 1 A_Raise\n\t\tLoop\n\tDeselect:\n\t\tOBSW A 1 A_Lower\n\t\tLoop\n\tFire:\n\t\tOBSP ABC 1\n\t\tOBSP D 1 A_FireBullets(0, 0, 1, 9001, \"BulletPuff\", 0, 208)\n\t\tOBSP DCBAAA 1\n\t\tGoto Ready\n\tAltFire:\n\t\tOBSP ABC 1\n\t\tOBSP D 1 A_FireBullets(0, 0, 1, 0, \"BlockObsidianPlacerPuff\", 0, 208)\n\t\tOBSP DCBA 1\n\t\tGoto Ready\n\t}\n}\n\nActor BlockMossyCobblestonePlacer : BlockPlacer\n{\n\tStates\n\t{\n\tSpawn:\n\t\tMCBW A -1\n\t\tStop\n\tReady:\n\t\tMCBW A 1 A_WeaponReady\n\t\tLoop\n\tSelect:\n\t\tMCBW A 1 A_Raise\n\t\tLoop\n\tDeselect:\n\t\tMCBW A 1 A_Lower\n\t\tLoop\n\tFire:\n\t\tMCBP ABC 1\n\t\tMCBP D 1 A_FireBullets(0, 0, 1, 9001, \"BulletPuff\", 0, 208)\n\t\tMCBP DCBAAA 1\n\t\tGoto Ready\n\tAltFire:\n\t\tMCBP ABC 1\n\t\tMCBP D 1 A_FireBullets(0, 0, 1, 0, \"BlockMossyCobblestonePlacerPuff\", 0, 208)\n\t\tMCBP DCBA 1\n\t\tGoto Ready\n\t}\n}\n\nActor BlockWoolPlacer : BlockPlacer\n{\n\tStates\n\t{\n\tSpawn:\n\t\tWOLW A -1\n\t\tStop\n\tReady:\n\t\tWOLW A 1 A_WeaponReady\n\t\tLoop\n\tSelect:\n\t\tWOLW A 1 A_Raise\n\t\tLoop\n\tDeselect:\n\t\tWOLW A 1 A_Lower\n\t\tLoop\n\tFire:\n\t\tWOLP ABC 1\n\t\tWOLP D 1 A_FireBullets(0, 0, 1, 9001, \"BulletPuff\", 0, 208)\n\t\tWOLP DCBAAA 1\n\t\tGoto Ready\n\tAltFire:\n\t\tWOLP ABC 1\n\t\tWOLP D 1 A_FireBullets(0, 0, 1, 0, \"BlockWoolPlacerPuff\", 0, 208)\n\t\tWOLP DCBA 1\n\t\tGoto Ready\n\t}\n}\n\nActor BlockIronPlacer : BlockPlacer\n{\n\tStates\n\t{\n\tSpawn:\n\t\tIRNW A -1\n\t\tStop\n\tReady:\n\t\tIRNW A 1 A_WeaponReady\n\t\tLoop\n\tSelect:\n\t\tIRNW A 1 A_Raise\n\t\tLoop\n\tDeselect:\n\t\tIRNW A 1 A_Lower\n\t\tLoop\n\tFire:\n\t\tIRNP ABC 1\n\t\tIRNP D 1 A_FireBullets(0, 0, 1, 9001, \"BulletPuff\", 0, 208)\n\t\tIRNP DCBAAA 1\n\t\tGoto Ready\n\tAltFire:\n\t\tIRNP ABC 1\n\t\tIRNP D 1 A_FireBullets(0, 0, 1, 0, \"BlockIronPlacerPuff\", 0, 208)\n\t\tIRNP DCBA 1\n\t\tGoto Ready\n\t}\n}\n\nActor BlockGoldPlacer : BlockPlacer\n{\n\tStates\n\t{\n\tSpawn:\n\t\tGLDW A -1\n\t\tStop\n\tReady:\n\t\tGLDW A 1 A_WeaponReady\n\t\tLoop\n\tSelect:\n\t\tGLDW A 1 A_Raise\n\t\tLoop\n\tDeselect:\n\t\tGLDW A 1 A_Lower\n\t\tLoop\n\tFire:\n\t\tGLDP ABC 1\n\t\tGLDP D 1 A_FireBullets(0, 0, 1, 9001, \"BulletPuff\", 0, 208)\n\t\tGLDP DCBAAA 1\n\t\tGoto Ready\n\tAltFire:\n\t\tGLDP ABC 1\n\t\tGLDP D 1 A_FireBullets(0, 0, 1, 0, \"BlockGoldPlacerPuff\", 0, 208)\n\t\tGLDP DCBA 1\n\t\tGoto Ready\n\t}\n}\n\nActor BlockDiamondPlacer : BlockPlacer\n{\n\tStates\n\t{\n\tSpawn:\n\t\tDMNW A -1\n\t\tStop\n\tReady:\n\t\tDMNW A 1 A_WeaponReady\n\t\tLoop\n\tSelect:\n\t\tDMNW A 1 A_Raise\n\t\tLoop\n\tDeselect:\n\t\tDMNW A 1 A_Lower\n\t\tLoop\n\tFire:\n\t\tDMNP ABC 1\n\t\tDMNP D 1 A_FireBullets(0, 0, 1, 9001, \"BulletPuff\", 0, 208)\n\t\tDMNP DCBAAA 1\n\t\tGoto Ready\n\tAltFire:\n\t\tDMNP ABC 1\n\t\tDMNP D 1 A_FireBullets(0, 0, 1, 0, \"BlockDiamondPlacerPuff\", 0, 208)\n\t\tDMNP DCBA 1\n\t\tGoto Ready\n\t}\n}\n\nActor BlockStoneBrickPlacer : BlockPlacer\n{\n\tStates\n\t{\n\tSpawn:\n\t\tSBRW A -1\n\t\tStop\n\tReady:\n\t\tSBRW A 1 A_WeaponReady\n\t\tLoop\n\tSelect:\n\t\tSBRW A 1 A_Raise\n\t\tLoop\n\tDeselect:\n\t\tSBRW A 1 A_Lower\n\t\tLoop\n\tFire:\n\t\tSBRP ABC 1\n\t\tSBRP D 1 A_FireBullets(0, 0, 1, 9001, \"BulletPuff\", 0, 208)\n\t\tSBRP DCBAAA 1\n\t\tGoto Ready\n\tAltFire:\n\t\tSBRP ABC 1\n\t\tSBRP D 1 A_FireBullets(0, 0, 1, 0, \"BlockStoneBrickPlacerPuff\", 0, 208)\n\t\tSBRP DCBA 1\n\t\tGoto Ready\n\t}\n}\n\nActor BlockChiseledStoneBrickPlacer : BlockPlacer\n{\n\tStates\n\t{\n\tSpawn:\n\t\tCDSW A -1\n\t\tStop\n\tReady:\n\t\tCDSW A 1 A_WeaponReady\n\t\tLoop\n\tSelect:\n\t\tCDSW A 1 A_Raise\n\t\tLoop\n\tDeselect:\n\t\tCDSW A 1 A_Lower\n\t\tLoop\n\tFire:\n\t\tCDSP ABC 1\n\t\tCDSP D 1 A_FireBullets(0, 0, 1, 9001, \"BulletPuff\", 0, 208)\n\t\tCDSP DCBAAA 1\n\t\tGoto Ready\n\tAltFire:\n\t\tCDSP ABC 1\n\t\tCDSP D 1 A_FireBullets(0, 0, 1, 0, \"BlockChiseledStoneBrickPlacerPuff\", 0, 208)\n\t\tCDSP DCBA 1\n\t\tGoto Ready\n\t}\n}"
      },
      {
        "source": "pk3",
        "name": "actors/blockplacerpuffs.txt",
        "contents": "Actor BlockDirtPlacerPuff : BulletPuff\n{\n\tStates\n\t{\n\tSpawn:\n\t\tTNT1 A 0 //A_ActionsDontWorkHere\n\t\tTNT1 A 0 ACS_ExecuteAlways(1, 0, 1) // Spawn a block.\n\t\tTNT1 A 5\n\t\tStop\n\t}\n}\n\nActor BlockGrassPlacerPuff : BulletPuff\n{\n\tStates\n\t{\n\tSpawn:\n\t\tTNT1 A 0\n\t\tTNT1 A 0 ACS_ExecuteAlways(1, 0, 2)\n\t\tTNT1 A 5\n\t\tStop\n\t}\n}\n\nActor BlockStonePlacerPuff : BulletPuff\n{\n\tStates\n\t{\n\tSpawn:\n\t\tTNT1 A 0\n\t\tTNT1 A 0 ACS_ExecuteAlways(1, 0, 3)\n\t\tTNT1 A 5\n\t\tStop\n\t}\n}\n\nActor BlockCobbleStonePlacerPuff : BulletPuff\n{\n\tStates\n\t{\n\tSpawn:\n\t\tTNT1 A 0\n\t\tTNT1 A 0 ACS_ExecuteAlways(1, 0, 4)\n\t\tTNT1 A 5\n\t\tStop\n\t}\n}\n\nActor BlockWoodPlacerPuff : BulletPuff\n{\n\tStates\n\t{\n\tSpawn:\n\t\tTNT1 A 0\n\t\tTNT1 A 0 ACS_ExecuteAlways(1, 0, 5)\n\t\tTNT1 A 5\n\t\tStop\n\t}\n}\n\nActor BlockPlanksPlacerPuff : BulletPuff\n{\n\tStates\n\t{\n\tSpawn:\n\t\tTNT1 A 0\n\t\tTNT1 A 0 ACS_ExecuteAlways(1, 0, 6)\n\t\tTNT1 A 5\n\t\tStop\n\t}\n}\n\nActor BlockLeavesPlacerPuff : BulletPuff\n{\n\tStates\n\t{\n\tSpawn:\n\t\tTNT1 A 0\n\t\tTNT1 A 0 ACS_ExecuteAlways(1, 0, 7)\n\t\tTNT1 A 5\n\t\tStop\n\t}\n}\n\nActor BlockSandPlacerPuff : BulletPuff\n{\n\tStates\n\t{\n\tSpawn:\n\t\tTNT1 A 0\n\t\tTNT1 A 0 ACS_ExecuteAlways(1, 0, 8)\n\t\tTNT1 A 5\n\t\tStop\n\t}\n}\n\nActor BlockGravelPlacerPuff : BulletPuff\n{\n\tStates\n\t{\n\tSpawn:\n\t\tTNT1 A 0\n\t\tTNT1 A 0 ACS_ExecuteAlways(1, 0, 10)\n\t\tTNT1 A 5\n\t\tStop\n\t}\n}\n\nActor BlockBrickPlacerPuff : BulletPuff\n{\n\tStates\n\t{\n\tSpawn:\n\t\tTNT1 A 0\n\t\tTNT1 A 0 ACS_ExecuteAlways(1, 0, 11)\n\t\tTNT1 A 5\n\t\tStop\n\t}\n}\n\nActor BlockObsidianPlacerPuff : BulletPuff\n{\n\tStates\n\t{\n\tSpawn:\n\t\tTNT1 A 0\n\t\tTNT1 A 0 ACS_ExecuteAlways(1, 0, 12)\n\t\tTNT1 A 5\n\t\tStop\n\t}\n}\n\nActor BlockMossyCobblestonePlacerPuff : BulletPuff\n{\n\tStates\n\t{\n\tSpawn:\n\t\tTNT1 A 0\n\t\tTNT1 A 0 ACS_ExecuteAlways(1, 0, 13)\n\t\tTNT1 A 5\n\t\tStop\n\t}\n}\n\nActor BlockWoolPlacerPuff : BulletPuff\n{\n\tStates\n\t{\n\tSpawn:\n\t\tTNT1 A 0\n\t\tTNT1 A 0 ACS_ExecuteAlways(1, 0, 14)\n\t\tTNT1 A 5\n\t\tStop\n\t}\n}\n\nActor BlockIronPlacerPuff : BulletPuff\n{\n\tStates\n\t{\n\tSpawn:\n\t\tTNT1 A 0\n\t\tTNT1 A 0 ACS_ExecuteAlways(1, 0, 15)\n\t\tTNT1 A 5\n\t\tStop\n\t}\n}\n\nActor BlockGoldPlacerPuff : BulletPuff\n{\n\tStates\n\t{\n\tSpawn:\n\t\tTNT1 A 0\n\t\tTNT1 A 0 ACS_ExecuteAlways(1, 0, 16)\n\t\tTNT1 A 5\n\t\tStop\n\t}\n}\n\nActor BlockDiamondPlacerPuff : BulletPuff\n{\n\tStates\n\t{\n\tSpawn:\n\t\tTNT1 A 0\n\t\tTNT1 A 0 ACS_ExecuteAlways(1, 0, 17)\n\t\tTNT1 A 5\n\t\tStop\n\t}\n}\n\nActor BlockStoneBrickPlacerPuff : BulletPuff\n{\n\tStates\n\t{\n\tSpawn:\n\t\tTNT1 A 0\n\t\tTNT1 A 0 ACS_ExecuteAlways(1, 0, 18)\n\t\tTNT1 A 5\n\t\tStop\n\t}\n}\n\nActor BlockChiseledStoneBrickPlacerPuff : BulletPuff\n{\n\tStates\n\t{\n\tSpawn:\n\t\tTNT1 A 0\n\t\tTNT1 A 0 ACS_ExecuteAlways(1, 0, 19)\n\t\tTNT1 A 5\n\t\tStop\n\t}\n}"
      }
    ]
  },
  "maps": [
    {
      "map": "MAP01",
      "title": "MAP01",
      "format": "hexen",
      "stats": {
        "things": 8,
        "linedefs": 160,
        "sidedefs": 308,
        "vertices": 97,
        "sectors": 68,
        "segs": 0,
        "ssectors": 0,
        "nodes": 0,
        "textures": {
          "TANROCK5": 4,
          "CLOUDFT": 1,
          "CLOUDDN": 1,
          "FWATER1": 1,
          "F_SKY1": 66,
          "CLOUDUP": 1,
          "CLOUDBK": 1,
          "GRASS1": 4,
          "STARTAN2": 4,
          "CLOUDLF": 1,
          "CLOUDRT": 1,
          "MCBEDRCK": 107
        }
      },
      "monsters": {
        "total": 0,
        "by_type": {},
        "by_category": null
      },
      "items": {
        "total": 0,
        "by_type": {},
        "ammo_by_category": null,
        "weapons_present": null
      },
      "mechanics": {
        "teleports": false,
        "keys": [],
        "secret_exit": false
      },
      "difficulty": {
        "uv_monsters": 0,
        "hmp_monsters": 0,
        "htr_monsters": 0,
        "uv_items": 0,
        "hmp_items": 0,
        "htr_items": 0
      },
      "compatibility": "hexen",
      "metadata": {
        "title": null,
        "music": null,
        "source": "marker"
      }
    }
  ]
}

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.