Jump to content
The Dark Mod Forums

Sotha

Development Role
  • Posts

    5664
  • Joined

  • Days Won

    134

Posts posted by Sotha

  1. I am becoming synonymous with trouble..

     

    I noticed another bug while testing my map.

    I checked if this is described somewhere, but did not find any issues like this.

     

    Situation:

    *A chair with path_corner, path_turn and a path_sit (wait 30, wait_max 60)

    *A path_corner away from the chair.

    *An AI which patrols the route to (away from chair)->(path_corner next to chair)->(path_turn)->(path_sit)-> (away from chair)

     

    This works nicely. The AI walks to the chair, sits down, raises up after a while, walks to (away from the chair) and repeats this.

     

    Now, if there is a disturbance while the AI is seated, the AI looks for trouble. Once the AI relaxes from the disturbance, he simply sits in midair at the position he is currently located. After a while he continues with his patrol route.

     

    This occurs every time the AI is harrassed while seated.

     

    A test map is provided, in which you can alert the AI with a noisemaker arrow as soon as he sits down.

     

     

    ->Bugtracker?

     

     

     

     

    ***

     

     

     

    Version 2

    // entity 0

    {

    "classname" "worldspawn"

    "editor_drLastCameraPos" "-136.083 -101.671 37.942"

    "editor_drLastCameraAngle" "-27.6 80.7 0"

    // primitive 0

    {

    brushDef3

    {

    ( 0 0 1 -112 ) ( ( 0.015625 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( 0 1 0 -72 ) ( ( 0.015625 0 0 ) ( 0 0.0078125 0.0625 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( 1 0 0 -136 ) ( ( 0.015625 0 0 ) ( 0 0.0078125 0.0625 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( 0 0 -1 -56 ) ( ( 0.015625 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( 0 -1 0 -128 ) ( ( 0.015625 0 0 ) ( 0 0.0078125 0.0625 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( -1 0 0 -200 ) ( ( 0.015625 0 0 ) ( 0 0.0078125 0.0625 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( 0 0 -1 104 ) ( ( 0.015625 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    }

    }

    // primitive 1

    {

    brushDef3

    {

    ( 0 0 1 -104 ) ( ( 0.015625 0 31.875 ) ( 0 0.0078125 0 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( 0 1 0 -80 ) ( ( 0.015625 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( 1 0 0 -136 ) ( ( 0.015625 0 31.875 ) ( 0 0.0078125 0 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( 0 0 -1 -64 ) ( ( 0.015625 0 31.875 ) ( 0 0.0078125 0 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( 0 -1 0 -120 ) ( ( 0.015625 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( -1 0 0 -200 ) ( ( 0.015625 0 0.125 ) ( 0 0.0078125 0 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( 0 -1 0 72 ) ( ( 0.015625 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    }

    }

    // primitive 2

    {

    brushDef3

    {

    ( 0 0 1 -104 ) ( ( 0.015625 0 0 ) ( 0 0.0078125 15.9375 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( 0 1 0 -72 ) ( ( 0.015625 0 0.125 ) ( 0 0.0078125 0 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( 1 0 0 -144 ) ( ( 0.015625 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( 0 0 -1 -64 ) ( ( 0.015625 0 0 ) ( 0 0.0078125 0.0625 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( 0 -1 0 -128 ) ( ( 0.015625 0 31.875 ) ( 0 0.0078125 0 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( -1 0 0 -192 ) ( ( 0.015625 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( -1 0 0 136 ) ( ( 0.015625 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    }

    }

    // primitive 3

    {

    brushDef3

    {

    ( 0 0 1 -96 ) ( ( 0.015625 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( 0 1 0 -72 ) ( ( 0.015625 0 0 ) ( 0 0.0078125 15.9375 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( 1 0 0 -136 ) ( ( 0.015625 0 0 ) ( 0 0.0078125 15.9375 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( 0 0 -1 -72 ) ( ( 0.015625 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( 0 -1 0 -128 ) ( ( 0.015625 0 0 ) ( 0 0.0078125 15.9375 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( -1 0 0 -200 ) ( ( 0.015625 0 0 ) ( 0 0.0078125 15.9375 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( 0 0 1 64 ) ( ( 0.015625 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    }

    }

    // primitive 4

    {

    brushDef3

    {

    ( 0 0 1 -104 ) ( ( 0.015625 0 0.125 ) ( 0 0.0078125 0 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( 0 1 0 -64 ) ( ( 0.015625 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( 1 0 0 -136 ) ( ( 0.015625 0 0.125 ) ( 0 0.0078125 0 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( 0 0 -1 -64 ) ( ( 0.015625 0 0.125 ) ( 0 0.0078125 0 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( 0 -1 0 -136 ) ( ( 0.015625 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( -1 0 0 -200 ) ( ( 0.015625 0 31.875 ) ( 0 0.0078125 0 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( 0 1 0 128 ) ( ( 0.015625 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    }

    }

    // primitive 5

    {

    brushDef3

    {

    ( 0 0 1 -104 ) ( ( 0.015625 0 0 ) ( 0 0.0078125 0.0625 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( 0 1 0 -72 ) ( ( 0.015625 0 31.875 ) ( 0 0.0078125 0 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( 1 0 0 -128 ) ( ( 0.015625 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( 0 0 -1 -64 ) ( ( 0.015625 0 0 ) ( 0 0.0078125 15.9375 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( 0 -1 0 -128 ) ( ( 0.015625 0 0.125 ) ( 0 0.0078125 0 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( -1 0 0 -208 ) ( ( 0.015625 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    ( 1 0 0 200 ) ( ( 0.015625 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/plaster/framed_01" 0 0 0

    }

    }

    // primitive 6

    {

    brushDef3

    {

    ( 0 0 1 3.578407287597656 ) ( ( 0.03125 0 0 ) ( 0 0.03125 0 ) ) "textures/common/monster_clip" 0 0 0

    ( 0 1 0 -37.90744194335937 ) ( ( 0.03125 0 0 ) ( 0 0.03125 0 ) ) "textures/common/monster_clip" 0 0 0

    ( 1 0 0 -127.6329016876221 ) ( ( 0.03125 0 0 ) ( 0 0.03125 0 ) ) "textures/common/monster_clip" 0 0 0

    ( 0 0 -1 -63.94122248888016 ) ( ( 0.03125 0 0 ) ( 0 0.03125 0 ) ) "textures/common/monster_clip" 0 0 0

    ( 0 -1 0 -71.64906135253906 ) ( ( 0.03125 0 0 ) ( 0 0.03125 0 ) ) "textures/common/monster_clip" 0 0 0

    ( -1 0 0 95.66552593231201 ) ( ( 0.03125 0 0 ) ( 0 0.03125 0 ) ) "textures/common/monster_clip" 0 0 0

    }

    }

    }

    // entity 1

    {

    "classname" "light"

    "name" "light_1"

    "origin" "-48 -32 80"

    "light_center" "0 0 0"

    "light_radius" "320 320 320"

    }

    // entity 2

    {

    "classname" "atdm:ai_citywatch"

    "name" "atdm_ai_citywatch_1"

    "origin" "24 -56 -64"

    "target" "path_walk"

    "team" "0"

    }

    // entity 3

    {

    "classname" "info_player_start"

    "name" "info_player_start_1"

    "origin" "-168 -40 -32"

    "angle" "90"

    }

    // entity 4

    {

    "classname" "func_static"

    "name" "func_static_1"

    "origin" "104.52 -17.2218 -64"

    "model" "models/darkmod/furniture/seating/church_pew. lwo"

    "rotation" "0 -1 0 1 0 0 0 0 1"

    }

    // entity 5

    {

    "classname" "path_corner"

    "name" "path_chair"

    "origin" "80 -48 -64"

    "target" "path_chair_turn"

    }

    // entity 6

    {

    "classname" "path_corner"

    "name" "path_walk"

    "origin" "-96 -88 -64"

    "target" "path_chair"

    }

    // entity 7

    {

    "classname" "path_turn"

    "name" "path_chair_turn"

    "origin" "80 -24 -24"

    "angle" "180"

    "target" "path_chair_sit"

    }

    // entity 8

    {

    "classname" "path_sit"

    "name" "path_chair_sit"

    "origin" "80 0 -24"

    "angle" "180"

    "target" "path_walk"

    "wait" "30"

    "wait_max" "60"

    }

    // entity 9

    {

    "classname" "atdm:weapon_shortsword"

    "name" "atdm_weapon_shortsword_1"

    "origin" "-72 0 -24"

    }

    // entity 10

    {

    "classname" "atdm:ammo_noisemaker"

    "name" "atdm_ammo_noisemaker_1"

    "origin" "-96 32 -24"

    }

    // entity 11

    {

    "classname" "atdm:moveable_holder_round_plus_candle"

    "name" "atdm_moveable_holder_round_plus_candle_1"

    "origin" "-112 8 -32"

    }

  2. beleagueredfencetitle.png

     

    The Beleaguered Fence is a small/medium sized map in which aspiring thief Thomas Porter sets out to bust his fence out of the notorious Old Town Jail. Mission was created by me, Sotha and I wish to thank Melan, Baal and Bikerdude for playtesting.

     

    During the recent heist at captain Knighton's manor (See mission The Knighton Manor) I made a stupid mistake. The alarm was sounded, and I made it out just before the guards caught me. I ran through the mazelike streets of The City and thought that I had escaped my pursuers.

     

    I finally hid in the shop of my fence, Lark Butternose - the only man in the City I can really trust. Things calmed down and the next day I went out to spend some of the spoils of my hard work while Lark kept the shop open to sell other items I found. Later, when I returned to Lark's place, it was ransacked. My equipment, our loot and Lark were all gone.

     

    I talked with the locals and learned that the city watch had raided the place just a few hours ago, confiscated everything, arrested Lark and dragged him to the notorious Old Town Jail. It turned out captain Knighton, the one whose manor I robbed, took the thing very personally and swore to apprehend and execute everyone involved in the heist.

     

    And now they have Lark. They will probably interrogate him and learn about me. I have enough problems already and I do not need a powerful revenge-seeking watch captain at my heels.

     

    I think now is the time for me and Lark to go our separate ways. Our agreement was quite profitable for both of us but now it needs to end. But only after I bust Lark out of the Old Town Jail. I owe him that much. And more importantly, it would be better if captain Knighton never learned who really stole his valuables.

     

    For story oriented players, be sure to check your inventory for Thomas' journal for more background.

     

    LINKs:

    Use the ingame downloader to get it.

     

     

    Enjoy! And please let me know what you think!

    • Like 4
  3. While betatesting my map, Baal discovered a curious problem relating to stacking inventory objects.

     

    Situation:

    *There is a healing potion

    *There is an AI with a healing potion (def_attach6 atdm:prop_potion_healing; pos_attach6 belt_back_right)

     

    If the player picks up the normal healing potion and drops it with 'r', it falls on the floor as it should.

    However, if the player picks up the PROP healing potion and drops it it just floats in the air.

     

    If the player picks up the normal and prop potions and drops both of them, both potions will float in the air.

     

    Surely the prop objects and normal objects should behave the same way?

     

    If this interests someone, here is a test map for the problem:

     

     

     

    *****

     

     

     

    Version 2

    // entity 0

    {

    "classname" "worldspawn"

    "editor_drLastCameraPos" "116.472 -85.0422 5.59728"

    "editor_drLastCameraAngle" "-9 164.1 0"

    "editor_drMapPos1" "145.117 609.786 279.045"

    "editor_drMapAngle1" "-48 150.8 0"

    "editor_drMapPos2" "414.798 255.441 -264.933"

    "editor_drMapAngle2" "2.10002 84.5976 0"

    "editor_drMapPos3" "-749.97 -1606.21 -470.066"

    "editor_drMapAngle3" "-3.29998 6.59757 0"

    "editor_drMapPos4" "1014.05 -953.679 -556.857"

    "editor_drMapAngle4" "-10.2 355.498 0"

    "editor_drMapPos5" "987.599 3513.79 -319.877"

    "editor_drMapAngle5" "-61.1999 172.198 0"

    "editor_drMapPos6" "-1032.5 -2840 739.5"

    "editor_drMapAngle6" "-77.0999 175.798 0"

    "editor_drMapPos7" "952.822 285.005 1366.04"

    "editor_drMapAngle7" "-74.8 149.373 0"

    "editor_drMapPos8" "976 424 320"

    "editor_drMapAngle8" "-3 15.3467 0"

    "editor_drMapPos9" "409.146 547.464 392.83"

    "editor_drMapAngle9" "-16.8 284.947 0"

    // primitive 0

    {

    brushDef3

    {

    ( 0 0 1 -160 ) ( ( 0.0078125 0 15.875 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 1 0 -232 ) ( ( 0.0078125 0 0.0625 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 1 0 0 -152 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 0 -1 -64 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 -1 0 -144 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( -1 0 0 -136 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 0 -1 152 ) ( ( 0.0078125 0 15.875 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    }

    }

    // primitive 1

    {

    brushDef3

    {

    ( 0 0 1 -160 ) ( ( 0.0078125 0 15.875 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 1 0 -232 ) ( ( 0.0078125 0 0.0625 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 1 0 0 -152 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 0 -1 -64 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 -1 0 -144 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( -1 0 0 -136 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 -1 0 224 ) ( ( 0.0078125 0 0.0625 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    }

    }

    // primitive 2

    {

    brushDef3

    {

    ( 0 0 1 -160 ) ( ( 0.0078125 0 15.875 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 1 0 -232 ) ( ( 0.0078125 0 0.0625 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 1 0 0 -152 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 0 -1 -64 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 -1 0 -144 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( -1 0 0 -136 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( -1 0 0 144 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    }

    }

    // primitive 3

    {

    brushDef3

    {

    ( 0 0 1 -160 ) ( ( 0.0078125 0 15.875 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 1 0 -232 ) ( ( 0.0078125 0 0.0625 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 1 0 0 -152 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 0 -1 -64 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 -1 0 -144 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( -1 0 0 -136 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 0 1 56 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    }

    }

    // primitive 4

    {

    brushDef3

    {

    ( 0 0 1 -160 ) ( ( 0.0078125 0 15.875 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 1 0 -232 ) ( ( 0.0078125 0 0.0625 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 1 0 0 -152 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 0 -1 -64 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 -1 0 -144 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( -1 0 0 -136 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 1 0 136 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    }

    }

    // primitive 5

    {

    brushDef3

    {

    ( 0 0 1 -160 ) ( ( 0.0078125 0 15.875 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 1 0 -232 ) ( ( 0.0078125 0 0.0625 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 1 0 0 -152 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 0 -1 -64 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 -1 0 -144 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( -1 0 0 -136 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 1 0 0 128 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    }

    }

    }

    // entity 1

    {

    "classname" "atdm:ai_citywatch_lesser"

    "name" "lr_patrol2"

    "def_attach6" "atdm:prop_potion_healing"

    "def_head" "atdm:ai_head_citywatch_clothcoif"

    "def_vocal_set" "atdm:ai_vocal_set_grumbler_guard_01"

    "origin" "0.518 -72.459 -55"

    "pos_attach6" "belt_back_right"

    "rotation" "0 1 0 -1 0 0 0 0 1"

    "team" "0"

    }

    // entity 2

    {

    "classname" "light"

    "name" "light_1"

    "origin" "32 56 88"

    "light_center" "0 0 0"

    "light_radius" "320 320 320"

    }

    // entity 3

    {

    "classname" "atdm:playertools_health_potion"

    "name" "atdm_playertools_health_potion_1"

    "origin" "-72 -72 4"

    }

    // entity 4

    {

    "classname" "func_static"

    "name" "func_static_1"

    "origin" "-72 -72 -56"

    "model" "models/darkmod/furniture/tables/pillar_grooved01. lwo"

    }

    // entity 5

    {

    "classname" "info_player_start"

    "name" "info_player_start_1"

    "origin" "0 55 26"

    "angle" "90"

    }

  4. I have decided to chronicle my foolish attempts to get a P4 3.4Ghz (Northwood) CPU without my wife closing in on my activities.

    -Hm. Surely this is a joke? Please tell me it is a joke! There exists no such people as described in this thread.

    I mean I think my life is difficult at times, but as I read the words written in this thread I suddenly come to realize that actually I am quite well off. I simply go to the store and buy new hardware when I need to do so. When I do so, my wife gets the old gear to use. Everyone wins.

     

    My wife and I have a sort of arbitrary-expense-system where each pays bills so that in the end the net result is more or less even. This occurs without any kind of serious bookkeeping and I do not care about the details. I'm the kind of guy to whom the most important thing is that things run smoothly and little effort so that I can focus on the aspects of life I enjoy. As long I have the money for the basics and my relatively inexpensive hobbies and -of course- the hardware upgrade once per a few years, I'm happy.

     

    But then again when compared to mine, your life sounds much more exiting with all the scheming and plotting. You should try playing Paranoia if you're into tabletop RPG's. :P

     

    But, no.. I have so little tolerance of petty inconvenience from other peoples part so I suppose I would choose divorce in your situation.

     

    Anyways, I wish you luck in your activities. I hope you and your wife won't end up killing each other or something.

  5. Thank you for your interest, but the situation seems to be well in hand. You will get to enjoy the final version of this mission quite soon, I promise.

     

    @Melan, Bikerdude and Baal:

    I've now implemented most of the corrections you've so far suggested and I have to say that the map has improved drastically.

    You've done an excellent job, Melan especially, who apparently investigated every single pixel and object on the map. ;)

     

    Most of your suggestions overlapped and I suppose those are the most critical issues with the map. They are now dealt with.

     

    I'll now wait a few days for additional comments from Baal and then it is time for final touches and publishing.

  6. Make them one big func_static, check one well-defined alignment position for the whole thing and remember it, cut paste the func_static containing all the things to another map. Then at the last moment, copy paste the one big func_static back to your map and align it properly so it sits where it was in the beginning.

    :wacko:

     

    Oh and in the end you probably need to revert them to worldspawn to avoid leaking

  7. Yep. That's why I do not watch TV.

    Most of the stuff that comes out is terrible entertainment industry goo. The worst of the bunch is reality television.

     

    The small amount of shows, which are okay simply end, because they do not have enough viewers..

     

    I suppose the situation is as such because the majority demands it. Or swallows it without complaint. Supply and demand, you see.

     

    I always wonder, for example, why do gossip journalism exist? If the most of the people would simply refuse to pay for such 'entertainment,' it wouldn't be economically feasible..

  8. Hello!

    I've built a new fan mission, named The Beleaguered Fence and now I need 2 volunteers for beta testing.

     

    Beta testers should test the map as usual and also pay attention to the language in the briefing and readables in game as I am not a native english speaker. I've tested my map several times and it seems to be working for me.

     

    It would be most beneficial if the tester has prior mapping experience, since gives them keener eye for mapping issues.

     

    Image:

    sotha3.png

     

    Reply here if you're interested.

  9. Not an experienced mapper... not an inexperienced mapper... hardly even made more than 2 rooms...

     

    But I'll beta-test and check the language too, if you want.

     

    I really appreciate your interest, but I happened to check your user information on this board. It looks like you have a negative reputation for some reason. Since betatesting is sort of a position of trust, I will have to wait for other interested people. I'm deeply sorry.

     

    Therefore I am still waiting for betatesters. Surely there are individuals interested in such an endeavor on this board?

  10. Finished. Mapping ended on 19.6.2010. I played the map through myself just now and everything seems to be working just nicely.

     

    I could, of course, sit on this map and make minor adjustments here and there forever but I want to keep things moving. Therefore, I'm now officially in beta-phase.

     

    Any volunteers beta-testing the map? I'd like to have 2 testers, preferrably from experienced mappers.

    Also, as people probably have noticed, I'm not a native english speaker, so I would love to hear fix suggestions if you see some particularly odd language in the briefing or the readables.

     

    I've now ended the mapping and once the betatesters give me feedback, I'll make the final adjustments and publish the mission for everyone's enjoyment.

     

    Volunteers, please step forth!

  11. Here it is

     

     

    ************

     

     

     

    Version 2

    // entity 0

    {

    "classname" "worldspawn"

    "editor_drLastCameraPos" "175.701 -159.115 8.22332"

    "editor_drLastCameraAngle" "20.4 147 0"

    "editor_drMapPos1" "145.117 609.786 279.045"

    "editor_drMapAngle1" "-48 150.8 0"

    "editor_drMapPos2" "414.798 255.441 -264.933"

    "editor_drMapAngle2" "2.10002 84.5976 0"

    "editor_drMapPos3" "-749.97 -1606.21 -470.066"

    "editor_drMapAngle3" "-3.29998 6.59757 0"

    "editor_drMapPos4" "1014.05 -953.679 -556.857"

    "editor_drMapAngle4" "-10.2 355.498 0"

    "editor_drMapPos5" "987.599 3513.79 -319.877"

    "editor_drMapAngle5" "-61.1999 172.198 0"

    "editor_drMapPos6" "-1032.5 -2840 739.5"

    "editor_drMapAngle6" "-77.0999 175.798 0"

    "editor_drMapPos7" "952.822 285.005 1366.04"

    "editor_drMapAngle7" "-74.8 149.373 0"

    "editor_drMapPos8" "976 424 320"

    "editor_drMapAngle8" "-3 15.3467 0"

    "editor_drMapPos9" "409.146 547.464 392.83"

    "editor_drMapAngle9" "-16.8 284.947 0"

    // primitive 0

    {

    brushDef3

    {

    ( 0 0 1 -116 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 1 0 -94 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 0.0520833312637277 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 1 0 0 -322 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 0.0520833312637277 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 0 -1 -76 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 -1 0 -170 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 0.0520833312637277 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( -1 0 0 -256 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 0.0520833312637277 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 0 -1 108 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    }

    }

    // primitive 1

    {

    brushDef3

    {

    ( 0 0 1 -108 ) ( ( 0.006510416407965962 0 15.94791666873627 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 1 0 -102 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 1 0 0 -322 ) ( ( 0.006510416407965962 0 15.94791666873627 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 0 -1 -84 ) ( ( 0.006510416407965962 0 15.94791666873627 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 -1 0 -162 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( -1 0 0 -256 ) ( ( 0.006510416407965962 0 0.0520833312637277 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 -1 0 94 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    }

    }

    // primitive 2

    {

    brushDef3

    {

    ( 0 0 1 -108 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 15.94791666873627 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 1 0 -94 ) ( ( 0.006510416407965962 0 0.0520833312637277 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 1 0 0 -330 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 0 -1 -84 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 0.0520833312637277 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 -1 0 -170 ) ( ( 0.006510416407965962 0 15.94791666873627 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( -1 0 0 -248 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( -1 0 0 322 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    }

    }

    // primitive 3

    {

    brushDef3

    {

    ( 0 0 1 -100 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 1 0 -94 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 15.94791666873627 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 1 0 0 -322 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 15.94791666873627 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 0 -1 -92 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 -1 0 -170 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 15.94791666873627 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( -1 0 0 -256 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 15.94791666873627 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 0 1 84 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    }

    }

    // primitive 4

    {

    brushDef3

    {

    ( 0 0 1 -108 ) ( ( 0.006510416407965962 0 0.0520833312637277 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 1 0 -86 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 1 0 0 -322 ) ( ( 0.006510416407965962 0 0.0520833312637277 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 0 -1 -84 ) ( ( 0.006510416407965962 0 0.0520833312637277 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 -1 0 -178 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( -1 0 0 -256 ) ( ( 0.006510416407965962 0 15.94791666873627 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 1 0 170 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    }

    }

    // primitive 5

    {

    brushDef3

    {

    ( 0 0 1 -108 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 0.0520833312637277 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 1 0 -94 ) ( ( 0.006510416407965962 0 15.94791666873627 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 1 0 0 -314 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 0 -1 -84 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 15.94791666873627 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 -1 0 -170 ) ( ( 0.006510416407965962 0 0.0520833312637277 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( -1 0 0 -264 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 1 0 0 256 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    }

    }

    // primitive 6

    {

    brushDef3

    {

    ( 0 0 1 48 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.003255208203982981 0.01302083281593192 ) ) "textures/darkmod/stone/sculpted/carved_design_bones01" 0 0 0

    ( 0 1 0 -24 ) ( ( 0.006510416407965962 0 15.97395833436814 ) ( 0 0.003255208203982981 7.765625009313226 ) ) "textures/darkmod/stone/sculpted/carved_design_bones01" 0 0 0

    ( 1 0 0 76 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.003255208203982981 7.765625009313226 ) ) "textures/darkmod/stone/sculpted/carved_design_bones01" 0 0 0

    ( 0 0 -1 -88 ) ( ( 0.006510416407965962 0 15.94791666873627 ) ( 0 0.003255208203982981 7.986979167184068 ) ) "textures/darkmod/stone/sculpted/carved_design_bones01" 0 0 0

    ( 0 -1 0 -40 ) ( ( 0.006510416407965962 0 0.02604166563186385 ) ( 0 0.003255208203982981 7.765625009313226 ) ) "textures/darkmod/stone/sculpted/carved_design_bones01" 0 0 0

    ( -1 0 0 -204 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.003255208203982981 7.765625009313226 ) ) "textures/darkmod/stone/sculpted/carved_design_bones01" 0 0 0

    }

    }

    // primitive 7

    {

    brushDef3

    {

    ( 0 0 1 48 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 1 0 -24 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 1 0 0 -60 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 0 -1 -88 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( 0 -1 0 -40 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    ( -1 0 0 -68 ) ( ( 0.006510416407965962 0 0 ) ( 0 0.006510416407965962 0 ) ) "textures/darkmod/metal/detailed/bars_rivets_iron" 0 0 0

    }

    }

    }

    // entity 1

    {

    "classname" "func_static"

    "name" "test_AI_stunner"

    "model" "models/darkmod/kitchen/chamberpot.lwo"

    "origin" "169 27 -46"

    "sr_class_1" "R"

    "sr_effect_1_1" "effect_knockout"

    "sr_effect_1_1_arg1" "Test_AI"

    "sr_state_1" "1"

    "sr_type_1" "STIM_TRIGGER"

    }

    // entity 2

    {

    "classname" "atdm:ai_townsfolk_commoner"

    "name" "Test_AI"

    "origin" "150.734 -10.68 -49"

    "rotation" "0 1 0 -1 0 0 0 0 1"

    "team" "0"

    }

    // entity 3

    {

    "classname" "trigger_once"

    "name" "trigger_once_2"

    "model" "trigger_once_2"

    "origin" "-10 -8 1"

    "target" "test_AI_stunner"

    // primitive 0

    {

    brushDef3

    {

    ( 0 0 1 -52 ) ( ( 0.0520833312637277 0 5.291671542657525 ) ( 0 0.0520833312637277 31.47916668736272 ) ) "textures/common/trigonce" 0 0 0

    ( 0 1 0 -28 ) ( ( 0.0520833312637277 0 0.5208333126372793 ) ( 0 0.0520833312637277 31.427083356099 ) ) "textures/common/trigonce" 0 0 0

    ( 1 0 0 -52 ) ( ( 0.0520833312637277 0 5.291671542657525 ) ( 0 0.0520833312637277 31.427083356099 ) ) "textures/common/trigonce" 0 0 0

    ( 0 0 -1 -52 ) ( ( 0.0520833312637277 0 5.291671542657525 ) ( 0 0.0520833312637277 0.5208333126372793 ) ) "textures/common/trigonce" 0 0 0

    ( 0 -1 0 -28 ) ( ( 0.0520833312637277 0 31.47916668736272 ) ( 0 0.0520833312637277 31.427083356099 ) ) "textures/common/trigonce" 0 0 0

    ( -1 0 0 -52 ) ( ( 0.0520833312637277 0 26.70832845734248 ) ( 0 0.0520833312637277 31.427083356099 ) ) "textures/common/trigonce" 0 0 0

    }

    }

    }

    // entity 4

    {

    "classname" "func_static"

    "name" "test_AI_killer"

    "model" "models/darkmod/kitchen/chamberpot.lwo"

    "origin" "125 29 -48"

    "sr_class_1" "R"

    "sr_effect_1_1" "effect_kill"

    "sr_effect_1_1_arg1" "Test_AI"

    "sr_state_1" "1"

    "sr_type_1" "STIM_TRIGGER"

    }

    // entity 5

    {

    "classname" "trigger_once"

    "name" "trig"

    "model" "trig"

    "origin" "-138 -8 1"

    "target" "test_AI_killer"

    // primitive 0

    {

    brushDef3

    {

    ( 0 0 1 -52 ) ( ( 0.0520833312637277 0 5.291671542657525 ) ( 0 0.0520833312637277 6.145833089119869 ) ) "textures/common/trigonce" 0 0 0

    ( 0 1 0 -28 ) ( ( 0.0520833312637277 0 25.85416691088014 ) ( 0 0.0520833312637277 31.427083356099 ) ) "textures/common/trigonce" 0 0 0

    ( 1 0 0 -52 ) ( ( 0.0520833312637277 0 5.291671542657525 ) ( 0 0.0520833312637277 31.427083356099 ) ) "textures/common/trigonce" 0 0 0

    ( 0 0 -1 -52 ) ( ( 0.0520833312637277 0 5.291671542657525 ) ( 0 0.0520833312637277 25.85416691088014 ) ) "textures/common/trigonce" 0 0 0

    ( 0 -1 0 -28 ) ( ( 0.0520833312637277 0 6.145833089119869 ) ( 0 0.0520833312637277 31.427083356099 ) ) "textures/common/trigonce" 0 0 0

    ( -1 0 0 -52 ) ( ( 0.0520833312637277 0 26.70832845734248 ) ( 0 0.0520833312637277 31.427083356099 ) ) "textures/common/trigonce" 0 0 0

    }

    }

    }

    // entity 6

    {

    "classname" "light"

    "name" "light_1"

    "origin" "48 -64 16"

    "light_center" "0 0 0"

    "light_radius" "576 376 320"

    }

    // entity 7

    {

    "classname" "info_player_start"

    "name" "info_player_start_1"

    "origin" "-144 -112 -48"

    "angle" "90"

    }

  12. Situation:

    *I got one AI

    *I got a trigger_once targetting a func_static with stim trigger, which should do effect_knockout on the AI.

    *I got a trigger_once targetting a func_static with stim trigger, which should do effect_kill on the AI.

    *I've checked many times that the AI is properly targeted by both the stim triggers. In fact the stim triggers are indentical, except their name and sr_effect_1_1. The sr_effect_1_1_arg1 -parameter is identical in both triggers.

     

    When I walk to the trigger which should knock the AI out I get an error message:

    script/tdm_response_effects_script(131): thread 'StimResponse::effect_knockout_action' : entity not found for event 'knockout'. Terminating thread.

     

    When I walk to the trigger which should kill the AI, the AI simply dies like he should.

     

    Conclusion: the knockout stim isn't working properly? Or did I simply do something wrong?

  13. Theoretically I am quite interested in participating and the vertical concept sounds quite fun.

     

    In practice I will not even consider enrolling, until the map I'm currently working on gets out and I've had a short breather from mapping. Overdoing something is the best way to ruin the fun from it.

     

    A date for map finished + breather is estimated to be the start-mid july.

    I'll let you know if I'm interested at that time.

  14. Sotha is a 28-year old chemist doing (trying to do) his Ph.D.

     

    He does not posess any kind of significant musical talent as most here seems to do, unless drinking songs are counted. He's quite good drinking singer, at least in his own opinion. Other opinions are ignored.

     

    His hobbies are boxing, floorball, roleplaying (GMing) and computers. Boxing and floorball are self-explanatory. RPG's involve plot-based (as opposed to hack'n'slash) GURPS and Paranoia. Computers involve linux enthusiasm and gaming. At present, Sotha plays Team Fortress 2 and is making a map for TDM.

  15. You are quite welcome!

     

    The key hunt versus story flow control paradox has been discussed. How do you stop players going straight in and getting the Heart climax within 15 minutes then playing another three hours browsing around picking up loot and finding out story pieces out of order to explain what happened earlier? Bit like an action movie where the hero kills the villain in the first quarter then moves around finding why he did it until the end credits. I do not know the answer. For me it plays better if it builds and saves the best till later.

     

    A valid point indeed and not an easy one to answer. I can imagine a few options:

    a) Building the story in a way that it can be experienced in any kind of order, but this is definately not compatible with all kinds of plots.

    b ) Making a linear key-regulated story, but making the keys easier to find. If the story is key regulated, the keys should be in a very logical place.

     

    It was really odd that the manor guard captain did not have the interrogation room key. I checked him and his surroundings several times, because I felt that the key must be somewhere around there. This was before I knew what was in the room, but I heard noise there and wanted to investigate.

     

    c) realize that the player can indeed reach the mission target in 15 minutes and then allow him to do so, if he is clever enough. Most likely the placement of guards and the layout of the map lures the player elsewhere. It is quite improbable that the player happens to choose the directmost route to the loot. But if that happens, allow it.

    Sneak'em'up players are often curious enough to explore the place first anyway. Maybe there is a risk of alarm sounding when the loot is taken? That makes it sensible to steal the item just before leaving..

    There is a door which seals the way to a room full of dark secrets. Do not force the player come there later with the only key which unlocks it, but place a guard near the door and make the lock pickable but difficult enough that the player cannot pick it until the guard returns. Now if the player REALLY wants to go there, he will have to deal with the guard which may have consequences. Or the player gets the key with he can access the door without bothering the guard. There are other methods than forcing the player, in my opinion. You can always lovingly and gently guide the player at a certain direction, but he does not have to go where you want.

     

    Because of the above, in Alchemist (the sequel to Heart) you only need one main 'key' (not actually a key) and can get the main objective fairly quickly then tour the streets as an anti-climax imo.

    I've come to realize that this is very strongly a matter of taste. I loved the thief missions where the player was allowed to explore the surroundings freely, limited only by the guards and the time it takes to pick a lock. I loved much less the missions where there was an unbreakable, unpickable lock, to which a key had to be found from some dark area where it was easy to miss it. After looking the key and still not finding it I often thought "now in real life I could bash this door down and make progress, but with the consequence of alerting the guards."

     

    I suppose the main idea is to have the player to decide what to do, but then the mapper makes sure that decision has dire consequences if the player chooses foolishly.

     

    The alternative is to make the terrain sequential then the player moves along with the story and cannot get out of sync.

    But we all know that this is probably the most boring option, which we sadly saw so many times in Thief: Deadly Shadows.

     

    But again, Fidcal, thank you for the brilliant mission AND this discussion as it has provided me some more insight in this topic. :)

  16. Played through this mission last night. This is definately one of those maps, which make you miss a good night of sleep and zombie the next work day..

     

    The storyline was brilliant and the map was very immersive overall. I just had to know what lies beyond the next door.

     

    The things I didn't like was the entry to the house as the frame rates were annoyingly low even on my relatively new computer.

    The other annoyance was the key hunting: if you miss one tiny key somewhere, the mission grinds to a halt. It might be better that there is only a one or two unpickable doors, giving the player the decision where to go next, not the mapper. But that is just my preference. ;-)

     

    But these points aside, this definately is a most excellent mission! Good work!

  17. Hey I've a small question. How do I make a ragdoll suspicious to the guards?

     

    To clarify:

    it is not a ragdoll spawned by killing or KO:ing an AI, but an ordinary atdm:env_ragdoll_commoner.

     

    What I want to achieve is to make the guards react to this ragdoll as if it was a KO/killed AI ragdoll.

     

     

    EDIT:

    another question is: how do I make a response that after a readable is closed (player stops reading it) the book triggers something else, such as a atdm:target_setobjective_visibility

  18. Played through this FM just now.

     

    Great stuff! More this kind of small, but fun and well made maps! I wished there was more readables to convey the agendas of the people living /working in the warehouse.

     

     

    The mission was slightly tricky because of the electric lights which could not be turned off, but still quite enjoyable. And the metal surfaces kept me on my toes, literally. Good thing I bought the moss arrows.. I also liked the boards in the other room, which caused noise: a nice warning that the other guard is soon popping out the door.

     

     

    I also noticed few z-fighting issues and light seeping under walls, but hey who cares as long it is only minor and the overall map performance is not degrading.

     

    Great work!

×
×
  • Create New...