View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0005109 | The Dark Mod | Coding | public | 06.01.2020 14:12 | 07.01.2020 20:11 |
Reporter | grayman | Assigned To | grayman | ||
Priority | normal | Severity | normal | Reproducibility | always |
Status | resolved | Resolution | fixed | ||
Product Version | TDM 2.08 | ||||
Target Version | TDM 2.08 | Fixed in Version | TDM 2.08 | ||
Summary | 0005109: Problems with double sliding doors. | ||||
Description | JackFarmer discovered a problem where double sliding doors don't recognize that they were paired by a common visportal. Code inspection shows that to form a pair, each door looks for a neighboring door based on each door's clipmodel: do they intersect, indicating nearness? Do they share the same portal? The problem is that a sliding door's clipmodel (created by dmap) doesn't represent the size of the door. It's a much smaller box centered on the door's origin. When the neighboring door origins aren't close to one another, no intersection is found, and no double-door pairing is made. Dmap should probably be changed to use the size of the door as its clipmodel. The workaround for sliding doors is to move the door origins nearer to each other so an intersection is noticed. This is done in the map. Rotating double doors should be investigated to see why they work properly. | ||||
Steps To Reproduce | Use the attached map. | ||||
Additional Information | The attached map has 3 problems that need fixing: 1. Why does dmap create a clipmodel for a sliding door that's much smaller than the door? 2. Why does only one of the double doors open? 3. Why can't the AI find the place where he's supposed to stand to use the far switch? (He was successful with the near switch.) | ||||
Tags | No tags attached. | ||||
Attached Files | gm1.map (17,187 bytes)
Version 2 // entity 0 { "classname" "worldspawn" "editor_dr_stim_1000" "RotStop" "editor_drLastCameraPos" "468.805 -195.986 143.816" "editor_drLastCameraAngle" "-15.9 117.9 0" // primitive 0 { brushDef3 { ( 0 0 1 -712 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 ( 0 1 0 -512 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 ( 1 0 0 -768 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 ( 0 -1 0 -512 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 ( -1 0 0 -256 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 ( 0 0 -1 704 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 } } // primitive 1 { brushDef3 { ( 0 0 1 -704 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 ( 0 1 0 -520 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 ( 1 0 0 -768 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 ( 0 0 -1 0 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 ( -1 0 0 -256 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 ( 0 -1 0 512 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 } } // primitive 2 { brushDef3 { ( 0 0 1 -704 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/plaster/white_plaster01" 0 0 0 ( 0 1 0 -512 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/plaster/white_plaster01" 0 0 0 ( 1 0 0 -792 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/plaster/white_plaster01" 0 0 0 ( 0 0 -1 0 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/plaster/white_plaster01" 0 0 0 ( 0 -1 0 -512 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/plaster/white_plaster01" 0 0 0 ( -1 0 0 768 ) ( ( 0.0078125 0 -8 ) ( 0 0.0078125 -6 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 } } // primitive 3 { brushDef3 { ( 0 1 0 -512 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 ( 1 0 0 -768 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 ( 0 0 -1 -8 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 ( 0 -1 0 -512 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 ( -1 0 0 -256 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 ( 0 0 1 0 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 } } // primitive 4 { brushDef3 { ( 0 0 1 -704 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 ( 1 0 0 -768 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 ( 0 0 -1 0 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 ( 0 -1 0 -520 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 ( -1 0 0 -256 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 ( 0 1 0 512 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 } } // primitive 5 { brushDef3 { ( 0 0 1 -704 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 ( 0 1 0 -512 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 ( 0 0 -1 0 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 ( 0 -1 0 -512 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 ( -1 0 0 -264 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 ( 1 0 0 256 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 } } // primitive 6 { brushDef3 { ( 0 1 0 0 ) ( ( 0.00390625 0 510.78125 ) ( 0 0.00390625 128.375 ) ) "textures/darkmod/stone/brick/bricks_dark" 0 0 0 ( -1 0 0 264 ) ( ( 0.0078125 0 2 ) ( 0 0.006944444496184587 2.444444417953491 ) ) "textures/darkmod/stone/brick/bricks_dark" 0 0 0 ( 1 0 0 -296 ) ( ( 0.0078125 0 14 ) ( 0 0.006944444496184587 2.444444417953491 ) ) "textures/darkmod/stone/brick/bricks_dark" 0 0 0 ( 0 0 1 -176 ) ( ( 0.00390625 0 3.25 ) ( 0 0.00390625 1.21875 ) ) "textures/darkmod/stone/brick/bricks_dark" 0 0 0 ( 0 -1 0 -512 ) ( ( 0.00390625 0 1.28125 ) ( 0 0.00390625 128.375 ) ) "textures/darkmod/stone/brick/bricks_dark" 0 0 0 ( 0 0 -1 32 ) ( ( 0.00390625 0 4 ) ( 0 0.00390625 125.90625 ) ) "textures/darkmod/stone/brick/bricks_dark" 0 0 0 } } // primitive 7 { brushDef3 { ( 0 1 0 -512 ) ( ( 0.00390625 0 510.78125 ) ( 0 0.00390625 256.25 ) ) "textures/darkmod/stone/brick/bricks_dark" 0 0 0 ( -1 0 0 264 ) ( ( 0.0078125 0 2 ) ( 0 0.006944444496184587 2.444444417953491 ) ) "textures/darkmod/stone/brick/bricks_dark" 0 0 0 ( 1 0 0 -296 ) ( ( 0.0078125 0 14 ) ( 0 0.006944444496184587 2.444444417953491 ) ) "textures/darkmod/stone/brick/bricks_dark" 0 0 0 ( 0 0 1 -176 ) ( ( 0.00390625 0 130.25 ) ( 0 0.00390625 1.21875 ) ) "textures/darkmod/stone/brick/bricks_dark" 0 0 0 ( 0 -1 0 144 ) ( ( 0.00390625 0 1.21875 ) ( 0 0.00390625 128.375 ) ) "textures/darkmod/stone/brick/bricks_dark" 0 0 0 ( 0 0 -1 32 ) ( ( 0.00390625 0 3 ) ( 0 0.00390625 125.90625 ) ) "textures/darkmod/stone/brick/bricks_dark" 0 0 0 } } // primitive 8 { brushDef3 { ( 0 0 1 -32 ) ( ( 0.00390625 0 248.875 ) ( 0 0.003720238571986556 3.005952835083008 ) ) "textures/darkmod/stone/flat/concrete_mildew_ns" 0 0 0 ( 0 1 0 -520 ) ( ( 0.001953125 0 255.3125 ) ( 0 0.001953125 0.1875 ) ) "textures/darkmod/stone/flat/concrete_mildew_ns" 0 0 0 ( 1 0 0 -784 ) ( ( 0.001953125 0 1.296875 ) ( 0 0.001953125 0.1875 ) ) "textures/darkmod/stone/flat/concrete_mildew_ns" 0 0 0 ( 0 0 -1 0 ) ( ( 0.00390625 0 3 ) ( 0 0.003720238571986556 126.8392868041992 ) ) "textures/darkmod/stone/flat/concrete_mildew_ns" 0 0 0 ( 0 -1 0 -512 ) ( ( -0.001953125 3.68642061321367e-10 255.46875 ) ( -2.949136768126692e-10 -0.002441406017169356 127.765625 ) ) "textures/darkmod/stone/flat/concrete_mildew_ns" 0 0 0 ( -1 0 0 -126 ) ( ( 0.00390625 0 252.91796875 ) ( 0 0.003720238571986556 0.357147216796875 ) ) "textures/darkmod/stone/flat/concrete_mildew_ns" 0 0 0 } } // primitive 9 { brushDef3 { ( 0 0 1 -176 ) ( ( 0.00390625 0 3 ) ( 0 0.00390625 1.21875 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 ( 0 1 0 -128 ) ( ( 0.00390625 0 254.78125 ) ( 0 0.00390625 1.0625 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 ( 1 0 0 -296 ) ( ( 0.00390625 0 3 ) ( 0 0.00390625 1.0625 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 ( 0 0 -1 32 ) ( ( 0.00390625 0 3 ) ( 0 0.00390625 254.78125 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 ( 0 -1 0 112 ) ( ( 0.00390625 0 1.21875 ) ( 0 0.00390625 1.0625 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 ( -1 0 0 256 ) ( ( 0.00390625 0 253 ) ( 0 0.00390625 1.0625 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 ( -0.7071067690849304 -0.7071067690849304 0 265.8721618652344 ) ( ( 0.00390625 0 255.177978515625 ) ( 0 0.00390625 1.0625 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 ( 0.7071067690849304 -0.7071067690849304 0 -124.450798034668 ) ( ( 0.00390625 0 3.420607089996338 ) ( 0 0.00390625 1.0625 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 } } // primitive 10 { brushDef3 { ( 0 0 1 -176 ) ( ( 0.00390625 0 3.4375 ) ( 0 0.00390625 1.21875 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 ( 0 1 0 -16 ) ( ( 0.00390625 0 254.78125 ) ( 0 0.00390625 1.0625 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 ( 1 0 0 -296 ) ( ( 0.00390625 0 3.4375 ) ( 0 0.00390625 1.0625 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 ( 0 0 -1 32 ) ( ( 0.00390625 0 3.4375 ) ( 0 0.00390625 254.78125 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 ( 0 -1 0 0 ) ( ( 0.00390625 0 1.21875 ) ( 0 0.00390625 1.0625 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 ( -1 0 0 256 ) ( ( 0.00390625 0 252.5625 ) ( 0 0.00390625 1.0625 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 ( -0.7071067690849304 0.7071067690849304 0 175.3624877929688 ) ( ( 0.00390625 0 253.4543914794922 ) ( 0 0.00390625 1.0625 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 ( 0.7071067690849304 0.7071067690849304 0 -214.9604644775391 ) ( ( 0.00390625 0 4.26424503326416 ) ( 0 0.00390625 1.0625 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 } } // primitive 11 { brushDef3 { ( 0 0 1 -176 ) ( ( 0.00390625 0 2.25 ) ( 0 0.00390625 1.21875 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 ( 0 1 0 -112 ) ( ( 0.00390625 0 254.03125 ) ( 0 0.00390625 1.0625 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 ( 1 0 0 -288 ) ( ( 0.00390625 0 2.25 ) ( 0 0.00390625 1.0625 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 ( 0 0 -1 160 ) ( ( 0.00390625 0 2.25 ) ( 0 0.00390625 254.75 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 ( 0 -1 0 16 ) ( ( 0.00390625 0 0.46875 ) ( 0 0.00390625 1.0625 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 ( -1 0 0 264 ) ( ( 0.00390625 0 251.9609375 ) ( 0 0.00390625 1.0625 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 ( 0.7071067690849304 0 -0.7071067690849304 -87.68124389648438 ) ( ( 0.00390625 0 3.3828125 ) ( 0 0.00390625 255.8895263671875 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 ( -0.7071067690849304 0 -0.7071067690849304 302.6416931152344 ) ( ( 0.00390625 0 253.6484375 ) ( 0 0.00390625 1.61308741569519 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 } } // primitive 12 { brushDef3 { ( 0 0 1 -712 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 255.875 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 ( 0 1 0 -512 ) ( ( 0.0078125 0 255.9375 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 ( 1 0 0 -296 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 ( 0 0 -1 176 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 ( 0 -1 0 -512 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 ( -1 0 0 256 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 } } // primitive 13 { brushDef3 { ( 0 0 1 -704 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 255.5 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 ( 0 1 0 -144 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 ( 1 0 0 -784 ) ( ( 0.0078125 0 0.125 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 ( 0 0 -1 16 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 255.875 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 ( 0 -1 0 128 ) ( ( 0.0078125 0 14 ) ( 0 0.006944444496184587 2.444444417953491 ) ) "textures/darkmod/stone/brick/bricks_dark" 0 0 0 ( -1 0 0 264 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/flat/stone_floor" 0 0 0 } } // primitive 14 { brushDef3 { ( 0 0 1 -160 ) ( ( 0.0078125 0 127.609375 ) ( 0 0.0078125 0 ) ) "textures/common/nodraw" 0 0 0 ( 0 1 0 -112 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/common/nodraw" 0 0 0 ( 1 0 0 -276 ) ( ( 0.0078125 0 127.609375 ) ( 0 0.0078125 0 ) ) "textures/editor/visportal" 0 0 0 ( 0 0 -1 32 ) ( ( 0.0078125 0 127.609375 ) ( 0 0.0078125 0 ) ) "textures/common/nodraw" 0 0 0 ( 0 -1 0 16 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/common/nodraw" 0 0 0 ( -1 0 0 275 ) ( ( 0.0078125 0 0.390625 ) ( 0 0.0078125 0 ) ) "textures/common/nodraw" 0 0 0 } } } // entity 1 { "classname" "info_player_start" "name" "info_player_start_1" "angle" "180.000000" "origin" "541 -50 112" } // entity 2 { "classname" "light" "name" "light_1" "light_center" "0 0 0" "light_radius" "320 320 320" "origin" "589 -50 190" } // entity 3 { "classname" "light" "name" "light_2" "light_center" "0 0 0" "light_radius" "320 320 320" "origin" "587 -294 190" } // entity 4 { "classname" "atdm:ai_inventor_scientist" "name" "atdm_ai_inventor_scientist_1" "def_head" "atdm:ai_head01_commoner_old" "origin" "420 64 32.014" "rotation" "1 0 0 0 1 0 0 0 1" "target0" "path_corner_23" "team" "0" } // entity 5 { "classname" "atdm:mover_door_sliding" "name" "NorthDoor" "frobable" "0" "model" "NorthDoor" "origin" "276 66 96" "snd_close" "nosound" "snd_move" "tdm_heavy_stone_scratching01_loop" "snd_open" "nosound" "target0" "func_static_33" "translate" "0 44 0" // primitive 0 { brushDef3 { ( 0 0 1 -64 ) ( ( 0.00390625 0 3 ) ( 0 0.00390625 1.21875 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 ( 0 1 0 -46 ) ( ( 0.00390625 0 254.78125 ) ( 0 0.00390625 1.0625 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 ( 1 0 0 -4 ) ( ( 0.00390625 0 3 ) ( 0 0.00390625 1.0625 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 ( 0 0 -1 -64 ) ( ( 0.00390625 0 3 ) ( 0 0.00390625 254.78125 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 ( 0 -1 0 -2 ) ( ( 0.00390625 0 1.21875 ) ( 0 0.00390625 1.0625 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 ( -1 0 0 -4 ) ( ( 0.00390625 0 253 ) ( 0 0.00390625 1.0625 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 ( 0.7071068040005102 -0.7071068040005102 0 -2.828154411601275 ) ( ( 0.00390625 0 3.420607089996338 ) ( 0 0.00390625 1.0625 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 ( -0.7071068040005102 -0.7071068040005102 0 -2.826805924623898 ) ( ( 0.00390625 0 255.177978515625 ) ( 0 0.00390625 1.0625 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 } } } // entity 6 { "classname" "atdm:mover_door_sliding" "name" "SouthDoor" "frobable" "0" "model" "SouthDoor" "origin" "276 62 96" "snd_close" "nosound" "snd_move" "tdm_heavy_stone_scratching01_loop" "snd_open" "nosound" "translate" "0 -44 0" // primitive 0 { brushDef3 { ( 0 0 1 -64 ) ( ( 0.00390625 0 3.1875 ) ( 0 0.00390625 1.21875 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 ( 0 1 0 -2 ) ( ( 0.00390625 0 254.78125 ) ( 0 0.00390625 1.0625 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 ( 1 0 0 -4 ) ( ( 0.00390625 0 3.1875 ) ( 0 0.00390625 1.0625 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 ( 0 0 -1 -64 ) ( ( 0.00390625 0 3.1875 ) ( 0 0.00390625 254.78125 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 ( 0 -1 0 -46 ) ( ( 0.00390625 0 1.21875 ) ( 0 0.00390625 1.0625 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 ( -1 0 0 -4 ) ( ( 0.00390625 0 252.8125 ) ( 0 0.00390625 1.0625 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 ( -0.7071068040005102 0.7071068040005102 0 -2.828672028610896 ) ( ( 0.00390625 0 253.4543914794922 ) ( 0 0.00390625 1.0625 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 ( 0.7071068040005102 0.7071068040005102 0 -2.830020515588274 ) ( ( 0.00390625 0 4.956354141235352 ) ( 0 0.00390625 1.0625 ) ) "textures/darkmod/metal/detailed/gen_iron01_panel_dark" 0 0 0 } } } // entity 7 { "classname" "path_corner" "name" "path_corner_5" "frobable" "0" "origin" "145.25 193.75 33.25" } // entity 8 { "classname" "func_static" "name" "lever_panel9" "model" "models/darkmod/mechanical/switches/switch_rotate_backplate.ase" "origin" "366.859 127.631 75.5" "rotation" "1 0 0 0 1 0 0 0 1" "skin" "-" } // entity 9 { "classname" "atdm:mover_lever" "name" "machine_lever9" "model" "models/darkmod/mechanical/switches/switch_rotate_lever.ase" "origin" "366.859 127.631 80.5" "rotate" "0 0 45" "rotation" "1 0 0 0 1 0 0 0 1" "target0" "NorthDoor" "target1" "SouthDoor" } // entity 10 { "classname" "func_static" "name" "lever_panel10" "model" "models/darkmod/mechanical/switches/switch_rotate_backplate.ase" "origin" "263.631 165.141 75.5" "rotation" "0 -1 0 1 0 0 0 0 1" "skin" "-" } // entity 11 { "classname" "atdm:mover_lever" "name" "machine_lever10" "model" "models/darkmod/mechanical/switches/switch_rotate_lever.ase" "origin" "263.631 165.141 80.5" "rotate" "0 0 45" "rotation" "0 -1 0 1 0 0 0 0 1" "target0" "NorthDoor" "target1" "SouthDoor" } // entity 12 { "classname" "path_corner" "name" "path_corner_23" "angle" "85.000000" "origin" "356 72 40" "target0" "path_interact_1" "target1" "path_corner_5" } // entity 13 { "classname" "light" "name" "light_3" "light_center" "0 0 0" "light_radius" "512 857 320" "origin" "-147 302 190" } | ||||
Rotating double doors didn't work with switches. They work fine w/o switches. Adding code and attaching test maps to cover the following scenarios: 1 - original map from JackFarmer (invalid with new code) 2 - sliding doors, north door uses switches 3 - rotating doors, north door uses switches 4 - rotating doors, no switches 5 - sliding doors, no switches 6 - rotating doors, south door uses switches 7 - sliding doors, south door uses switches |
|
A couple problems fixed: 1. With double sliding and rotating door pairs, the pairing of the doors was not paid attention to when controllers were in use. Since we can’t have controllers targeting both doors (leads to only one door activating), if pathfinding gives the AI the door that isn’t targeted by the controllers, the code now switches to the other door, which is targeted by the controllers. 2. There’s a dmap bug that causes a sliding door to not provide the correct clipmodel box. This causes the sliding doors in a double door pair to not find each other during setup if the doors’ origins aren’t near each other. Rather than fixing dmap, the code now looks for doors that share the same visportal. If someone fixes dmap's clipmodel bug, it won't affect this new approach, which doesn't rely on clipmodels. Rev 8515: State.cpp FrobDoor.h FrobDoor.cpp |
|
Date Modified | Username | Field | Change |
---|---|---|---|
06.01.2020 14:12 | grayman | New Issue | |
06.01.2020 14:12 | grayman | Status | new => assigned |
06.01.2020 14:12 | grayman | Assigned To | => grayman |
06.01.2020 14:12 | grayman | File Added: gm1.map | |
07.01.2020 18:35 | grayman | File Added: maps.zip | |
07.01.2020 18:35 | grayman | Note Added: 0012113 | |
07.01.2020 20:09 | grayman | Note Added: 0012117 | |
07.01.2020 20:11 | grayman | Status | assigned => resolved |
07.01.2020 20:11 | grayman | Resolution | open => fixed |
07.01.2020 20:11 | grayman | Fixed in Version | => TDM 2.08 |
07.01.2020 20:11 | grayman | Description Updated | |
07.01.2020 20:11 | grayman | Additional Information Updated |