View Issue Details

IDProjectCategoryView StatusLast Update
0005993The Dark ModDef / Setuppublic07.07.2022 19:33
ReporterDragofer Assigned ToDragofer  
PrioritynormalSeveritynormalReproducibilityalways
Status resolvedResolutionfixed 
Product VersionTDM 2.10 
Target VersionTDM 2.11Fixed in VersionTDM 2.11 
Summary0005993: Remove console warnings from AIs at startup
DescriptionVarious AI models contain surfaces with generic materials like "belt", "tongue", "sleeve" which are meant to be replaced by other materials via skins. I believe this is meant to make it easier to create the skins, but it results in numerous console warnings at map start and makes the AI models look like they're unfinished when viewed in the DarkRadiant model chooser because they're rendered with a bright blue "Shader not found" editor image.

A workaround would be to setup some near-empty materials with these material names. This stops the console from complaining and makes this setup look more intentional in DR, and can allow mappers to filter out these surfaces if they don't want to see them.

There are also various other causes by which our stock AIs generate console warnings at startup. I've listed all affected decls in Additional Information.
Steps To Reproduce1) Create all AIs in the "Create entity" list in a test map.
2) Start the map and open the console. Numerous console warnings appear (see attached file).
Additional InformationThe following console warnings are a result of AIs using placeholder undefined materials that will be replaced with real materials by skins. These can be given empty placeholder materials with i.e. the textures/common/nodrawsolid editor image:
WARNING:Couldn't load image: rope_belt
WARNING:Couldn't load image: arms_legs
WARNING:Couldn't load image: belt
WARNING:Couldn't load image: tdm_tongue
WARNING:Couldn't load image: sleeve_frill
WARNING:Couldn't load image: sleeve

The below is a non-existent material that the pagan08_head tries to use for its headband. It looks acceptable if a material by this name is created and given the same content as the "textures/darkmod/fabric/rope" material:
WARNING:Couldn't load image: tdm_beggar_sleeves

The below is a warning caused by the incomplete werebeast vocal set referencing a sound that hasn't been added yet. This can be replaced by one of the existing werebeast sounds for now to get rid of the console error, and will undoubtedly be fixed properly when the werebeast vocal set is completed.
WARNING:Couldn't load sound 'monster_werebeast_alert_idle_victor.wav' using default

The below is a missing texture image that should be used by female mages beneath their robes, affecting shoes and legs. I haven't found any existing AI texture whose UV map fits these legs well enough to take their place. So I'd workaround this by creating this material with the contents of the black_matt material, which looks identical ingame to the current "shader not found" black appearance, and then create a ticket to track this issue.
WARNING:Couldn't load image: models/md5/chars/nobles/noblewoman/noblelegs

The below are missing materials used during werebeast attacks. They're very non-obvious in my opinion, so they should be left in the console for the benefit of whoever completes the werebeast.
WARNING:Couldn't load image: leftslash
WARNING:Couldn't load image: rightslash
TagsNo tags attached.

Relationships

related to 0005466 resolvedDragofer Some undead post useless console warnings about joints at map start 
related to 0005994 resolvedDragofer Female mage legs are missing a texture 

Activities

Dragofer

Dragofer

02.07.2022 20:06

developer  

missing_materials.txt (6,151 bytes)   
WARNING:Couldn't load image: rope_belt                                         
  [map entity: atdm_ai_builder_guard_rusted_unarmed_1]                         
  [decl: atdm:ai_builder_guard_rusted_unarmed in def/tdm_ai_builder_guard.def] 
  [decl: tdm_ai_rusted_builder01 in def/tdm_ai_builder_guard.def]              
  [model: models/md5/chars/builders/guard/rusted_builder.md5mesh]              
  [decl: rope_belt in <implicit file>]                                         
  [image: rope_belt]                                                           
WARNING:Couldn't load image: arms_legs                                         
  [map entity: atdm_ai_builder_guard_rusted_unarmed_1]                         
  [decl: atdm:ai_builder_guard_rusted_unarmed in def/tdm_ai_builder_guard.def] 
  [decl: commoner/poor_dirty_ragged in skins/tdm_ai_townsfolk_commoner.skin]   
  [decl: arms_legs in <implicit file>]                                         
  [image: arms_legs]                                                           
WARNING:Couldn't load image: belt                                              
  [map entity: atdm_ai_builder_guard_rusted_unarmed_1]                         
  [decl: atdm:ai_builder_guard_rusted_unarmed in def/tdm_ai_builder_guard.def] 
  [decl: commoner/poor_dirty_ragged in skins/tdm_ai_townsfolk_commoner.skin]   
  [decl: belt in <implicit file>]                                              
  [image: belt]                                                                
WARNING:Couldn't load image: tdm_tongue                                        
  [map entity: atdm_ai_female_thief_1]                                         
  [decl: atdm:ai_female_thief in def/tdm_ai_thief.def]                         
  [decl: atdm:ai_head_wench_ponytail in def/tdm_ai_heads.def]                  
  [decl: atdm:ai_head_female02_ponytail_red in def/tdm_ai_heads_springheel.def]
  [decl: head_wench02_ponytail in def/tdm_ai_heads_springheel.def]             
  [model: models/md5/chars/townsfolk/wench/wench_head02_ponytail_new.md5mesh]  
  [decl: tdm_tongue in <implicit file>]                                        
  [image: tdm_tongue]                                                          
WARNING:Couldn't load image: sleeve_frill                                      
  [map entity: atdm_ai_guard_female_rogue_1]                                   
  [decl: atdm:ai_guard_female_rogue in def/tdm_ai_female_rogue.def]            
  [decl: wench/default in skins/tdm_ai_townsfolk_wench.skin]                   
  [decl: sleeve_frill in <implicit file>]                                      
  [image: sleeve_frill]                                                        
WARNING:Couldn't load image: sleeve                                            
  [map entity: atdm_ai_guard_female_rogue_1]                                   
  [decl: atdm:ai_guard_female_rogue in def/tdm_ai_female_rogue.def]            
  [decl: wench/default in skins/tdm_ai_townsfolk_wench.skin]                   
  [decl: sleeve in <implicit file>]                                            
  [image: sleeve]                                                              
WARNING:Couldn't load image: tdm_beggar_sleeves                                
  [map entity: atdm_ai_pagan_common_archer_1]                                  
  [decl: atdm:ai_pagan_common_archer in def/tdm_ai_pagan_male.def]             
  [decl: atdm:ai_pagan_common_armed in def/tdm_ai_pagan_male.def]              
  [decl: atdm:ai_pagan_common in def/tdm_ai_pagan_male.def]                    
  [decl: atdm:ai_head08_pagan in def/tdm_ai_heads_springheel.def]              
  [decl: head_08_pagan in def/tdm_ai_heads_springheel.def]                     
  [model: models/md5/chars/heads/npcs/head08_pagan.md5mesh]                    
  [decl: tdm_beggar_sleeves in <implicit file>]                                
  [image: tdm_beggar_sleeves] 
WARNING:Couldn't load sound 'monster_werebeast_alert_idle_victor.wav' using default                                                                        
  [map entity: atdm_ai_monster_werebeast_1]                                    
  [decl: atdm:ai_monster_werebeast in def/tdm_ai_monster_werebeast.def]        
  [decl: atdm:ai_vocal_set_werebeast_01 in def/tdm_ai_vocal_set_monster.def]   
  [decl: monster_werebeast_alert_idle_victor in <implicit file>]               
  [sound: monster_werebeast_alert_idle_victor.wav]
WARNING:Couldn't load image: models/md5/chars/nobles/noblewoman/noblelegs      
  [map entity: atdm_ai_archmage01_female_1]                                    
  [decl: atdm:ai_archmage01_female in def/tdm_ai_mage.def]                     
  [decl: tdm_ai_mage01_female in def/tdm_ai_mage.def]                          
  [model: models/md5/chars/mages/tdm_ai_mage_female.md5mesh]                   
  [decl: models/md5/chars/nobles/noblewoman/noblelegs in <implicit file>]      
  [image: models/md5/chars/nobles/noblewoman/noblelegs]
WARNING:Couldn't load image: leftslash                                         
  [map entity: atdm_ai_monster_werebeast_1]                                    
  [decl: atdm:ai_monster_werebeast in def/tdm_ai_monster_werebeast.def]        
  [decl: monster_werebeast in def/tdm_ai_monster_werebeast.def]                
  [decl: melee_wereleftclaw in def/tdm_ai_monster_werebeast.def]               
  [decl: leftslash in <implicit file>]                                         
  [image: leftslash]                                                           
WARNING:Couldn't load image: rightslash                                        
  [map entity: atdm_ai_monster_werebeast_1]                                    
  [decl: atdm:ai_monster_werebeast in def/tdm_ai_monster_werebeast.def]        
  [decl: monster_werebeast in def/tdm_ai_monster_werebeast.def]                
  [decl: melee_wererightclaw in def/tdm_ai_monster_werebeast.def]              
  [decl: rightslash in <implicit file>]                                        
  [image: rightslash]
missing_materials.txt (6,151 bytes)   
Dragofer

Dragofer

02.07.2022 20:08

developer   ~0014959

Rev 16511
Worked around and fixed as per the plan in "Additional Information".
Dragofer

Dragofer

07.07.2022 19:16

developer   ~0014968

Rev 16514
Fix for rev 16511 that caused affected AI model surfaces (i.e. arms and legs of the commoner AI) to not be rendered despite having been replaced with visible materials. The placeholder materials now no longer use nodrawsolid, but black_matt as a base.
Dragofer

Dragofer

07.07.2022 19:25

developer   ~0014969

Last edited: 07.07.2022 19:30

Rev 16515
Female mage entities inherited their idle_animations from male mage entities (i.e. sneeze, scratch arms). Quite a lot of these idle animations weren't defined in the tdm_ai_female base modelDef, producing a console error every time a female mage selects such an idle animation.

I've placed some female mages in a map, let it run for a while and then took a condump of all the console errors. I then removed all animations mentioned in the console errors from the "idle_animations" spawnarg. This left 8 idle animations, compared to 4 idle animations for i.e. wench or female rogue AIs. A similar fix was implemented locally in the Written in Stone FM, which used many mage AIs.

An alternative would've been to use the noblewoman's demure idle animations, since the female mages already use the demure walk animations. However, in my view it wouldn't suit mages to behave entirely aloof like nobles, as they still have to deal with some practicalities in their lives.
Dragofer

Dragofer

07.07.2022 19:33

developer   ~0014970

5993.map (40,034 bytes)   
Version 2
// entity 0
{
"classname" "worldspawn"
// primitive 0
{
brushDef3
{
( 0 0 1 176 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
( 0 1 0 -192 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
( 1 0 0 -192 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
( 0 -1 0 -192 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
( -1 0 0 -352 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
( 0 0 -1 -192 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
}
}
// primitive 1
{
brushDef3
{
( 0 0 1 192 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
( 0 1 0 -208 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
( 1 0 0 -192 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
( 0 0 -1 -384 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
( -1 0 0 -352 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
( 0 -1 0 192 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
}
}
// primitive 2
{
brushDef3
{
( 0 0 1 192 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
( 0 1 0 -192 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
( 1 0 0 -208 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
( 0 0 -1 -384 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
( 0 -1 0 -192 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
( -1 0 0 192 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
}
}
// primitive 3
{
brushDef3
{
( 0 1 0 -192 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
( 1 0 0 -192 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
( 0 0 -1 -400 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
( 0 -1 0 -192 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
( -1 0 0 -352 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
( 0 0 1 384 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
}
}
// primitive 4
{
brushDef3
{
( 0 0 1 192 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
( 1 0 0 -192 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
( 0 0 -1 -384 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
( 0 -1 0 -208 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
( -1 0 0 -352 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
( 0 1 0 192 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
}
}
// primitive 5
{
brushDef3
{
( 0 0 1 192 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
( 0 1 0 -192 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
( 0 0 -1 -384 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
( 0 -1 0 -192 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
( -1 0 0 -368 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
( 1 0 0 352 ) ( ( 0.0078125 0 0 ) ( 0 0.0078125 0 ) ) "textures/darkmod/stone/brick/blocks_brown" 0 0 0
}
}
// primitive 6
{
brushDef3
{
( 0 0 1 -88 ) ( ( 0.0625 0 24.40625 ) ( 0 0.0625 48.8125 ) ) "textures/common/caulk" 0 0 0
( 0 1 0 -656 ) ( ( 0.0625 0 15.1875 ) ( 0 0.0625 1.28125 ) ) "textures/common/caulk" 0 0 0
( 1 0 0 -296 ) ( ( 0.0625 0 24.40625 ) ( 0 0.0625 1.28125 ) ) "textures/common/caulk" 0 0 0
( 0 -1 0 368 ) ( ( 0.0625 0 48.8125 ) ( 0 0.0625 1.28125 ) ) "textures/common/caulk" 0 0 0
( -1 0 0 168 ) ( ( 0.0625 0 39.59375 ) ( 0 0.0625 1.28125 ) ) "textures/common/caulk" 0 0 0
( 0 0 -1 80 ) ( ( 0.0625 0 24.40625 ) ( 0 0.0625 14.1875 ) ) "textures/common/caulk" 0 0 0
}
}
// primitive 7
{
brushDef3
{
( 0 0 1 -80 ) ( ( 0.0625 0 24.40625 ) ( 0 0.0625 48.8125 ) ) "textures/common/caulk" 0 0 0
( 0 1 0 -664 ) ( ( 0.0625 0 15.1875 ) ( 0 0.0625 0.78125 ) ) "textures/common/caulk" 0 0 0
( 1 0 0 -296 ) ( ( 0.0625 0 24.40625 ) ( 0 0.0625 0.78125 ) ) "textures/common/caulk" 0 0 0
( 0 0 -1 -48 ) ( ( 0.0625 0 24.40625 ) ( 0 0.0625 15.1875 ) ) "textures/common/caulk" 0 0 0
( -1 0 0 168 ) ( ( 0.0625 0 39.59375 ) ( 0 0.0625 0.78125 ) ) "textures/common/caulk" 0 0 0
( 0 -1 0 656 ) ( ( 0.0625 0 49.8125 ) ( 0 0.0625 0.78125 ) ) "textures/common/caulk" 0 0 0
}
}
// primitive 8
{
brushDef3
{
( 0 1 0 -656 ) ( ( 0.0625 0 15.1875 ) ( 0 0.0625 0.28125 ) ) "textures/common/caulk" 0 0 0
( 1 0 0 -296 ) ( ( 0.0625 0 24.40625 ) ( 0 0.0625 0.28125 ) ) "textures/common/caulk" 0 0 0
( 0 0 -1 -56 ) ( ( 0.0625 0 24.40625 ) ( 0 0.0625 15.1875 ) ) "textures/common/caulk" 0 0 0
( 0 -1 0 368 ) ( ( 0.0625 0 48.3125 ) ( 0 0.0625 0.28125 ) ) "textures/common/caulk" 0 0 0
( -1 0 0 168 ) ( ( 0.0625 0 39.59375 ) ( 0 0.0625 0.28125 ) ) "textures/common/caulk" 0 0 0
( 0 0 1 48 ) ( ( 0.0625 0 24.40625 ) ( 0 0.0625 49.8125 ) ) "textures/common/caulk" 0 0 0
}
}
// primitive 9
{
brushDef3
{
( 0 0 1 -80 ) ( ( 0.0625 0 -26.46875 ) ( 0 0.0625 49 ) ) "textures/common/caulk" 0 0 0
( 1 0 0 -296 ) ( ( 0.0625 0 -26.46875 ) ( 0 0.0625 0.78125 ) ) "textures/common/caulk" 0 0 0
( 0 0 -1 -48 ) ( ( 0.0625 0 -26.46875 ) ( 0 0.0625 15 ) ) "textures/common/caulk" 0 0 0
( 0 -1 0 360 ) ( ( 0.0625 0 49 ) ( 0 0.0625 0.78125 ) ) "textures/common/caulk" 0 0 0
( -1 0 0 168 ) ( ( 0.0625 0 90.46875 ) ( 0 0.0625 0.78125 ) ) "textures/common/caulk" 0 0 0
( 0 1 0 -368 ) ( ( 0.0625 0 14 ) ( 0 0.0625 0.78125 ) ) "textures/common/caulk" 0 0 0
}
}
// primitive 10
{
brushDef3
{
( 0 0 1 -80 ) ( ( 0.0625 0 25 ) ( 0 0.0625 49.5 ) ) "textures/common/caulk" 0 0 0
( 0 1 0 -656 ) ( ( 0.0625 0 14.5 ) ( 0 0.0625 0.78125 ) ) "textures/common/caulk" 0 0 0
( 0 0 -1 -48 ) ( ( 0.0625 0 25 ) ( 0 0.0625 14.5 ) ) "textures/common/caulk" 0 0 0
( 0 -1 0 368 ) ( ( 0.0625 0 49.5 ) ( 0 0.0625 0.78125 ) ) "textures/common/caulk" 0 0 0
( -1 0 0 160 ) ( ( 0.0625 0 39 ) ( 0 0.0625 0.78125 ) ) "textures/common/caulk" 0 0 0
( 1 0 0 -168 ) ( ( 0.0625 0 25 ) ( 0 0.0625 0.78125 ) ) "textures/common/caulk" 0 0 0
}
}
// primitive 11
{
brushDef3
{
( 0 0 1 -80 ) ( ( 0.0625 0 25 ) ( 0 0.0625 41 ) ) "textures/common/caulk" 0 0 0
( 0 1 0 -656 ) ( ( 0.0625 0 23 ) ( 0 0.0625 0.78125 ) ) "textures/common/caulk" 0 0 0
( 0 0 -1 -48 ) ( ( 0.0625 0 25 ) ( 0 0.0625 23 ) ) "textures/common/caulk" 0 0 0
( 0 -1 0 368 ) ( ( 0.0625 0 41 ) ( 0 0.0625 0.78125 ) ) "textures/common/caulk" 0 0 0
( -1 0 0 296 ) ( ( 0.0625 0 39 ) ( 0 0.0625 0.78125 ) ) "textures/common/caulk" 0 0 0
( 1 0 0 -304 ) ( ( 0.0625 0 25 ) ( 0 0.0625 0.78125 ) ) "textures/common/caulk" 0 0 0
}
}
}
// entity 1
{
"classname" "info_player_start"
"name" "info_player_start_1"
"angle" "180.000000"
"origin" "128 -96 -384"
}
// entity 2
{
"classname" "light"
"name" "ambient_world"
"_color" "0.06 0.06 0.06"
"light_center" "0 0 0"
"light_radius" "993 993 993"
"nodiffuse" "0"
"noshadows" "0"
"nospecular" "0"
"origin" "268 624 48"
"parallel" "0"
"texture" "lights/ambientlightnfo"
}
// entity 3
{
"classname" "atdm:target_addobjectives"
"name" "Objectives"
"angle" "90.000000"
"obj1_1_args" "1"
"obj1_1_irreversible" "0"
"obj1_1_not" "0"
"obj1_1_player_responsible" "0"
"obj1_1_spec1" "name"
"obj1_1_spec_val1" "ItemName"
"obj1_1_state" "0"
"obj1_1_type" "item"
"obj1_desc" "Get or Steal a Special Object"
"obj1_irreversible" "0"
"obj1_mandatory" "1"
"obj1_ongoing" "0"
"obj1_state" "0"
"obj1_visible" "1"
"obj2_1_args" "1"
"obj2_1_irreversible" "0"
"obj2_1_not" "0"
"obj2_1_player_responsible" "0"
"obj2_1_spec1" "overall"
"obj2_1_state" "0"
"obj2_1_type" "item"
"obj2_desc" "Get Loot (Easy)"
"obj2_difficulty" "0"
"obj2_irreversible" "0"
"obj2_mandatory" "1"
"obj2_ongoing" "0"
"obj2_state" "0"
"obj2_visible" "1"
"obj3_1_args" "2"
"obj3_1_irreversible" "0"
"obj3_1_not" "0"
"obj3_1_player_responsible" "0"
"obj3_1_spec1" "overall"
"obj3_1_state" "0"
"obj3_1_type" "item"
"obj3_desc" "Get Loot (Hard)"
"obj3_difficulty" "1"
"obj3_irreversible" "0"
"obj3_mandatory" "1"
"obj3_ongoing" "0"
"obj3_state" "0"
"obj3_visible" "1"
"obj4_1_args" "3"
"obj4_1_irreversible" "0"
"obj4_1_not" "0"
"obj4_1_player_responsible" "0"
"obj4_1_spec1" "overall"
"obj4_1_state" "0"
"obj4_1_type" "item"
"obj4_desc" "Get Loot (Expert)"
"obj4_difficulty" "2"
"obj4_irreversible" "0"
"obj4_mandatory" "1"
"obj4_ongoing" "0"
"obj4_state" "0"
"obj4_visible" "1"
"obj5_1_args" "1"
"obj5_1_irreversible" "1"
"obj5_1_not" "1"
"obj5_1_player_responsible" "1"
"obj5_1_spec1" "overall"
"obj5_1_state" "1"
"obj5_1_type" "kill"
"obj5_desc" "No killing (on Expert)"
"obj5_difficulty" "2"
"obj5_irreversible" "1"
"obj5_mandatory" "1"
"obj5_ongoing" "1"
"obj5_state" "0"
"obj5_visible" "1"
"obj6_1_args" "0"
"obj6_1_irreversible" "0"
"obj6_1_not" "0"
"obj6_1_player_responsible" "0"
"obj6_1_spec1" "spawnclass"
"obj6_1_spec2" "name"
"obj6_1_spec_val1" "idPlayer"
"obj6_1_spec_val2" "EscZone"
"obj6_1_state" "0"
"obj6_1_type" "location"
"obj6_desc" "Go To Room X, eg, When all objectives done, return to start (modify Enabling Objectives if different)"
"obj6_enabling_objs" "1 AND (2 OR 3 OR 4)"
"obj6_irreversible" "0"
"obj6_mandatory" "1"
"obj6_ongoing" "0"
"obj6_state" "0"
"obj6_visible" "1"
"origin" "192 624 0"
}
// entity 4
{
"classname" "atdm:playertools_compass"
"name" "CompassEasy"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_map_start" "1"
"nodrop" "1"
"origin" "177 601.5 60.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 5
{
"classname" "atdm:playertools_lantern"
"name" "LanternEasy"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_map_start" "1"
"nodrop" "1"
"origin" "189 601.5 60.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 6
{
"classname" "atdm:playertools_spyglass"
"name" "SpyglassEasy"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_map_start" "1"
"nodrop" "1"
"origin" "199 601.5 60.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 7
{
"classname" "atdm:playertools_health_potion"
"name" "HealthPotionsEasy"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "215 601.5 35.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 8
{
"classname" "atdm:weapon_shortsword"
"name" "SwordEasy"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "287 551.5 11.5"
"rotation" "0 1 0 -1 0 0 0 0 1"
}
// entity 9
{
"classname" "atdm:weapon_blackjack"
"name" "BlackjackEasy"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "238.625 550.75 11.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 10
{
"classname" "atdm:playertools_breath_potion"
"name" "BreathPotionsEasy"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "227 601.5 35.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 11
{
"classname" "atdm:playertools_flashbomb"
"name" "FlashbombsEasy"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "179 551.5 35.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 12
{
"classname" "atdm:key_fancy02"
"name" "key_master"
"inv_icon" "guis/assets/hud/inventory_icons/key_good_red"
"inv_map_start" "1"
"inv_name" "MASTER KEY"
"inv_stackable" "0"
"nodrop" "1"
"origin" "288 624 32"
"rotation" "0 -1 0 1 0 0 0 0 1"
"skin" "bc_key02red"
}
// entity 13
{
"classname" "atdm:shop"
"name" "ShopItems"
"angle" "90.000000"
"diff_0_shop_gold_start" "800"
"diff_1_shop_gold_start" "600"
"diff_2_shop_gold_start" "400"
"origin" "240 624 0"
"shopItem_11_0_qty" "0"
"shopItem_11_1_qty" "0"
"shopItem_11_2_qty" "0"
"shopItem_11_item" "atdm:playertools_compass"
"shopItem_12_0_qty" "0"
"shopItem_12_1_qty" "0"
"shopItem_12_2_qty" "0"
"shopItem_12_item" "atdm:playertools_lantern"
"shopItem_13_0_qty" "0"
"shopItem_13_1_qty" "0"
"shopItem_13_2_qty" "0"
"shopItem_13_item" "atdm:playertools_spyglass"
"shopItem_15_0_qty" "0"
"shopItem_15_1_qty" "0"
"shopItem_15_2_qty" "0"
"shopItem_15_item" "atdm:playertools_mine"
"shopItem_16_0_qty" "0"
"shopItem_16_1_qty" "0"
"shopItem_16_2_qty" "0"
"shopItem_16_item" "atdm:playertools_flashbomb"
"shopItem_17_0_qty" "0"
"shopItem_17_1_qty" "0"
"shopItem_17_2_qty" "0"
"shopItem_17_item" "atdm:playertools_holywater"
"shopItem_18_0_qty" "0"
"shopItem_18_1_qty" "0"
"shopItem_18_2_qty" "0"
"shopItem_18_item" "atdm:playertools_health_potion"
"shopItem_19_0_qty" "0"
"shopItem_19_1_qty" "0"
"shopItem_19_2_qty" "0"
"shopItem_19_item" "atdm:playertools_breath_potion"
"shopItem_1_0_qty" "0"
"shopItem_1_1_qty" "0"
"shopItem_1_2_qty" "0"
"shopItem_1_item" "atdm:weapon_shortsword"
"shopItem_20_0_qty" "0"
"shopItem_20_1_qty" "0"
"shopItem_20_2_qty" "0"
"shopItem_20_item" "atdm:weapon_vinearrow"
"shopItem_2_0_qty" "0"
"shopItem_2_1_qty" "0"
"shopItem_2_2_qty" "0"
"shopItem_2_item" "atdm:weapon_blackjack"
"shopItem_3_0_qty" "0"
"shopItem_3_1_qty" "0"
"shopItem_3_2_qty" "0"
"shopItem_3_item" "atdm:weapon_waterarrow"
"shopItem_4_0_qty" "0"
"shopItem_4_1_qty" "0"
"shopItem_4_2_qty" "0"
"shopItem_4_item" "atdm:weapon_broadhead"
"shopItem_5_0_qty" "0"
"shopItem_5_1_qty" "0"
"shopItem_5_2_qty" "0"
"shopItem_5_item" "atdm:weapon_ropearrow"
"shopItem_6_0_qty" "0"
"shopItem_6_1_qty" "0"
"shopItem_6_2_qty" "0"
"shopItem_6_item" "atdm:weapon_mossarrow"
"shopItem_7_0_qty" "0"
"shopItem_7_1_qty" "0"
"shopItem_7_2_qty" "0"
"shopItem_7_item" "atdm:weapon_noisemaker"
"shopItem_8_0_qty" "0"
"shopItem_8_1_qty" "0"
"shopItem_8_2_qty" "0"
"shopItem_8_item" "atdm:weapon_firearrow"
"shopItem_9_0_qty" "0"
"shopItem_9_1_qty" "0"
"shopItem_9_2_qty" "0"
"shopItem_9_item" "atdm:weapon_gasarrow"
"startingitem_11_0_qty" "0"
"startingitem_11_1_qty" "0"
"startingitem_11_2_qty" "0"
"startingitem_11_item" "atdm:playertools_compass"
"startingitem_12_0_qty" "0"
"startingitem_12_1_qty" "0"
"startingitem_12_2_qty" "0"
"startingitem_12_item" "atdm:playertools_lantern"
"startingitem_13_0_qty" "0"
"startingitem_13_1_qty" "0"
"startingitem_13_2_qty" "0"
"startingitem_13_item" "atdm:playertools_spyglass"
"startingitem_15_0_qty" "0"
"startingitem_15_1_qty" "0"
"startingitem_15_2_qty" "0"
"startingitem_15_item" "atdm:playertools_mine"
"startingitem_16_0_qty" "0"
"startingitem_16_1_qty" "0"
"startingitem_16_2_qty" "0"
"startingitem_16_item" "atdm:playertools_flashbomb"
"startingitem_17_0_qty" "0"
"startingitem_17_1_qty" "0"
"startingitem_17_2_qty" "0"
"startingitem_17_item" "atdm:playertools_holywater"
"startingitem_18_0_qty" "0"
"startingitem_18_1_qty" "0"
"startingitem_18_2_qty" "0"
"startingitem_18_item" "atdm:playertools_health_potion"
"startingitem_19_0_qty" "0"
"startingitem_19_1_qty" "0"
"startingitem_19_2_qty" "0"
"startingitem_19_item" "atdm:playertools_breath_potion"
"startingitem_1_0_qty" "0"
"startingitem_1_1_qty" "0"
"startingitem_1_2_qty" "0"
"startingitem_1_item" "atdm:weapon_shortsword"
"startingitem_20_0_qty" "0"
"startingitem_20_1_qty" "0"
"startingitem_20_2_qty" "0"
"startingitem_20_item" "atdm:weapon_vinearrow"
"startingitem_2_0_qty" "0"
"startingitem_2_1_qty" "0"
"startingitem_2_2_qty" "0"
"startingitem_2_item" "atdm:weapon_blackjack"
"startingitem_3_0_qty" "0"
"startingitem_3_1_qty" "0"
"startingitem_3_2_qty" "0"
"startingitem_3_item" "atdm:weapon_waterarrow"
"startingitem_4_0_qty" "0"
"startingitem_4_1_qty" "0"
"startingitem_4_2_qty" "0"
"startingitem_4_item" "atdm:weapon_broadhead"
"startingitem_5_0_qty" "0"
"startingitem_5_1_qty" "0"
"startingitem_5_2_qty" "0"
"startingitem_5_item" "atdm:weapon_ropearrow"
"startingitem_6_0_qty" "0"
"startingitem_6_1_qty" "0"
"startingitem_6_2_qty" "0"
"startingitem_6_item" "atdm:weapon_mossarrow"
"startingitem_7_0_qty" "0"
"startingitem_7_1_qty" "0"
"startingitem_7_2_qty" "0"
"startingitem_7_item" "atdm:weapon_noisemaker"
"startingitem_8_0_qty" "0"
"startingitem_8_1_qty" "0"
"startingitem_8_2_qty" "0"
"startingitem_8_item" "atdm:weapon_firearrow"
"startingitem_9_0_qty" "0"
"startingitem_9_1_qty" "0"
"startingitem_9_2_qty" "0"
"startingitem_9_item" "atdm:weapon_gasarrow"
}
// entity 14
{
"classname" "atdm:ammo_broadhead"
"name" "BroadheadsEasy"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "176 472 -8"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 15
{
"classname" "atdm:ammo_broadhead"
"name" "BroadheadsHard"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "176 424 -8"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 16
{
"classname" "atdm:ammo_broadhead"
"name" "BroadheadsExpert"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "176 376 -8"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 17
{
"classname" "atdm:ammo_firearrow"
"name" "FireArrowsEasy"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "192 472 -8"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 18
{
"classname" "atdm:ammo_firearrow"
"name" "FireArrowsHard"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "192 424 -8"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 19
{
"classname" "atdm:ammo_firearrow"
"name" "FireArrowsExpert"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "192 376 -8"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 20
{
"classname" "atdm:ammo_gasarrow"
"name" "GasArrowsEasy"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "208 472 -8"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 21
{
"classname" "atdm:ammo_gasarrow"
"name" "GasArrowsHard"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "208 424 -8"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 22
{
"classname" "atdm:ammo_gasarrow"
"name" "GasArrowsExpert"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "208 376 -8"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 23
{
"classname" "atdm:ammo_mossarrow"
"name" "MossArrowsEasy"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "224 472 -8"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 24
{
"classname" "atdm:ammo_mossarrow"
"name" "MossArrowsExpert"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "224 376 -8"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 25
{
"classname" "atdm:ammo_mossarrow"
"name" "MossArrowsHard"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "224 424 -8"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 26
{
"classname" "atdm:ammo_noisemaker"
"name" "NoiseArrowsEasy"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "240 472 -8"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 27
{
"classname" "atdm:ammo_noisemaker"
"name" "NoiseArrowsHard"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "240 424 -8"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 28
{
"classname" "atdm:ammo_noisemaker"
"name" "NoiseArrowsExpert"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "240 376 -8"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 29
{
"classname" "atdm:ammo_ropearrow"
"name" "RopeArrowsEasy"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "256 472 -8"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 30
{
"classname" "atdm:ammo_ropearrow"
"name" "RopeArrowsHard"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "256 424 -8"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 31
{
"classname" "atdm:ammo_ropearrow"
"name" "RopeArrowsExpert"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "256 376 -8"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 32
{
"classname" "atdm:ammo_waterarrow"
"name" "WaterArrowsEasy"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "288 472 -8"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 33
{
"classname" "atdm:ammo_waterarrow"
"name" "WaterArrowsHard"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "288 424 -8"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 34
{
"classname" "atdm:ammo_waterarrow"
"name" "WaterArrowsExpert"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "288 376 -8"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 35
{
"classname" "atdm:weapon_blackjack"
"name" "BlackjackHard"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "238.625 534.75 11.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 36
{
"classname" "atdm:weapon_blackjack"
"name" "BlackjackExpert"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "238.625 518.75 11.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 37
{
"classname" "atdm:weapon_shortsword"
"name" "SwordHard"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "287 535.5 11.5"
"rotation" "0 1 0 -1 0 0 0 0 1"
}
// entity 38
{
"classname" "atdm:weapon_shortsword"
"name" "SwordExpert"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "287 519.5 11.5"
"rotation" "0 1 0 -1 0 0 0 0 1"
}
// entity 39
{
"classname" "atdm:playertools_compass"
"name" "CompassHard"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_map_start" "1"
"nodrop" "1"
"origin" "177 585.5 60.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 40
{
"classname" "atdm:playertools_compass"
"name" "CompassExpert"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_map_start" "1"
"nodrop" "1"
"origin" "177 569.5 60.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 41
{
"classname" "atdm:playertools_lantern"
"name" "LanternHard"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_map_start" "1"
"nodrop" "1"
"origin" "189 585.5 60.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 42
{
"classname" "atdm:playertools_lantern"
"name" "LanternExpert"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_map_start" "1"
"nodrop" "1"
"origin" "189 569.5 60.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 43
{
"classname" "atdm:playertools_spyglass"
"name" "SpyglassHard"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_map_start" "1"
"nodrop" "1"
"origin" "199 585.5 60.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 44
{
"classname" "atdm:playertools_spyglass"
"name" "SpyglassExpert"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_map_start" "1"
"nodrop" "1"
"origin" "199 569.5 60.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 45
{
"classname" "atdm:playertools_flashbomb"
"name" "FlashbombsHard"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "179 535.5 35.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 46
{
"classname" "atdm:playertools_flashbomb"
"name" "FlashbombsExpert"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "179 519.5 35.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 47
{
"classname" "atdm:playertools_health_potion"
"name" "HealthPotionsHard"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "215 585.5 35.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 48
{
"classname" "atdm:playertools_health_potion"
"name" "HealthPotionsExpert"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "215 569.5 35.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 49
{
"classname" "atdm:playertools_breath_potion"
"name" "BreathPotionsHard"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "227 585.5 35.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 50
{
"classname" "atdm:playertools_breath_potion"
"name" "BreathPotionsExpert"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "227 569.5 35.5"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 51
{
"classname" "atdm:playertools_lockpick_snake"
"name" "LockpickSnakeEasy"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_map_start" "1"
"nodrop" "1"
"origin" "270 602 32"
"rotation" "0.707107 0.707107 0 -0.707107 0.707107 0 0 0 1"
}
// entity 52
{
"classname" "atdm:playertools_lockpick_triangle"
"name" "LockpickTriangleEasy"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_map_start" "1"
"nodrop" "1"
"origin" "286 602 32"
"rotation" "0.707107 0.707107 0 -0.707107 0.707107 0 0 0 1"
}
// entity 53
{
"classname" "atdm:playertools_mine"
"name" "MinesEasy"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "210 552 32"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 54
{
"classname" "atdm:playertools_holywater"
"name" "HolyWatersEasy"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "226 552 32"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 55
{
"classname" "atdm:playertools_flashmine"
"name" "FlashminesEasy"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "194 552 32"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 56
{
"classname" "atdm:playertools_lockpick_snake"
"name" "LockpickSnakeHard"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_map_start" "1"
"nodrop" "1"
"origin" "270 586 32"
"rotation" "0.707107 0.707107 0 -0.707107 0.707107 0 0 0 1"
}
// entity 57
{
"classname" "atdm:playertools_lockpick_snake"
"name" "LockpickSnakeExpert"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_map_start" "1"
"nodrop" "1"
"origin" "270 570 32"
"rotation" "0.707107 0.707107 0 -0.707107 0.707107 0 0 0 1"
}
// entity 58
{
"classname" "atdm:playertools_lockpick_triangle"
"name" "LockpickTriangleHard"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_map_start" "1"
"nodrop" "1"
"origin" "286 586 32"
"rotation" "0.707107 0.707107 0 -0.707107 0.707107 0 0 0 1"
}
// entity 59
{
"classname" "atdm:playertools_lockpick_triangle"
"name" "LockpickTriangleExpert"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_map_start" "1"
"nodrop" "1"
"origin" "286 570 32"
"rotation" "0.707107 0.707107 0 -0.707107 0.707107 0 0 0 1"
}
// entity 60
{
"classname" "atdm:playertools_flashmine"
"name" "FlashminesHard"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "194 536 32"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 61
{
"classname" "atdm:playertools_flashmine"
"name" "FlashminesExpert"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "194 520 32"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 62
{
"classname" "atdm:playertools_mine"
"name" "MinesHard"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "210 536 32"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 63
{
"classname" "atdm:playertools_mine"
"name" "MinesExpert"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "210 520 32"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 64
{
"classname" "atdm:playertools_holywater"
"name" "HolyWatersHard"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "226 536 32"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 65
{
"classname" "atdm:playertools_holywater"
"name" "HolyWatersExpert"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_count" "10"
"inv_map_start" "1"
"nodrop" "1"
"origin" "226 520 32"
"rotation" "1 0 0 0 1 0 0 0 1"
}
// entity 66
{
"classname" "atdm:ammo_vinearrow"
"name" "VineArrowsEasy"
"diff_0_nospawn" "0"
"diff_1_nospawn" "1"
"diff_2_nospawn" "1"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "272 472 -8"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 67
{
"classname" "atdm:ammo_vinearrow"
"name" "VineArrowsHard"
"diff_0_nospawn" "1"
"diff_1_nospawn" "0"
"diff_2_nospawn" "1"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "272 424 -8"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 68
{
"classname" "atdm:ammo_vinearrow"
"name" "VineArrowsExpert"
"diff_0_nospawn" "1"
"diff_1_nospawn" "1"
"diff_2_nospawn" "0"
"inv_ammo_amount" "30"
"inv_map_start" "1"
"inv_no_pickup_message" "1"
"nodrop" "1"
"origin" "272 376 -8"
"rotation" "1 0 0 0 0 1 0 -1 0"
}
// entity 69
{
"classname" "atdm:location_settings"
"name" "atdm_location_settings_1"
"ambient_light_dist_scale" "1.0"
"ambient_light_dynamic_cap" "0.1 0.1 0.1"
"ambient_light_falloff" "0"
"angle" "90.000000"
"origin" "216 624 0"
}
// entity 70
{
"classname" "atdm:ai_builder_guard"
"name" "atdm_ai_builder_guard_1"
"origin" "-320 -168 -383.978"
"rotation" "-1 0 0 0 -1 0 0 0 1"
"team" "0"
}
// entity 71
{
"classname" "atdm:ai_builder_priest_combatant"
"name" "atdm_ai_builder_priest_combatant_1"
"origin" "-320 -112 -382.569"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 72
{
"classname" "atdm:ai_builder_acolyte"
"name" "atdm_ai_builder_acolyte_1"
"origin" "-320 -56 -382.569"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 73
{
"classname" "atdm:ai_builder_guard_rusted_unarmed"
"name" "atdm_ai_builder_guard_rusted_unarmed_1"
"origin" "-312 8 -383.534"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 74
{
"classname" "atdm:ai_citywatch"
"name" "atdm_ai_citywatch_1"
"origin" "-320 72 -383.945"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 75
{
"classname" "atdm:ai_moor"
"name" "atdm_ai_moor_1"
"origin" "-320 128 -383.944"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 76
{
"classname" "atdm:ai_guard_archer_01"
"name" "atdm_ai_guard_archer_01_1"
"origin" "-264 160 -383.945"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 77
{
"classname" "atdm:ai_guard_elite"
"name" "atdm_ai_guard_elite_1"
"origin" "-264 120 -383.732"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 78
{
"classname" "atdm:ai_guard_elite_02"
"name" "atdm_ai_guard_elite_02_1"
"origin" "-272 72 -383.922"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 79
{
"classname" "atdm:ai_guard_thug"
"name" "atdm_ai_guard_thug_1"
"origin" "-256 8 -383.752"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 80
{
"classname" "atdm:ai_pagan_common_archer"
"name" "atdm_ai_pagan_common_archer_1"
"origin" "-272 -40 -383.534"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 81
{
"classname" "atdm:ai_burglar"
"name" "atdm_ai_burglar_1"
"origin" "-256 -80 -383.781"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 82
{
"classname" "atdm:ai_female_thief"
"name" "atdm_ai_female_thief_1"
"origin" "-264 -144 -383.769"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 83
{
"classname" "atdm:ai_guard_female_rogue"
"name" "atdm_ai_guard_female_rogue_1"
"origin" "-184 168 -383.641"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 84
{
"classname" "atdm:ai_townsfolk_beggar_armed"
"name" "atdm_ai_townsfolk_beggar_armed_1"
"origin" "-192 112 -383.534"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 85
{
"classname" "atdm:ai_townsfolk_wench_armed"
"name" "atdm_ai_townsfolk_wench_armed_1"
"origin" "-208 56 -383.698"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 86
{
"classname" "atdm:ai_inventor_scientist"
"name" "atdm_ai_inventor_scientist_1"
"origin" "-208 0 -383.986"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 87
{
"classname" "atdm:ai_labourer_wealthy01"
"name" "atdm_ai_labourer_wealthy01_1"
"origin" "-200 -48 -383.752"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 88
{
"classname" "atdm:ai_townsfolk_engineer"
"name" "atdm_ai_townsfolk_engineer_1"
"origin" "-192 -88 -383.582"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 89
{
"classname" "atdm:ai_townsfolk_female"
"name" "atdm_ai_townsfolk_female_1"
"origin" "-216 -152 -383.698"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 90
{
"classname" "atdm:ai_automaton"
"name" "atdm_ai_automaton_1"
"origin" "-128 152 -383.978"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 91
{
"classname" "atdm:ai_lantern_bot"
"name" "atdm_ai_lantern_bot_1"
"origin" "-128 112 -384.081"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 92
{
"classname" "atdm:ai_archmage01"
"name" "atdm_ai_archmage01_1"
"origin" "-136 24 -382.569"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 93
{
"classname" "atdm:ai_archmage01_female"
"name" "atdm_ai_archmage01_female_1"
"origin" "-136 -24 -383.171"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 94
{
"classname" "atdm:ai_mage01"
"name" "atdm_ai_mage01_1"
"origin" "-136 -80 -382.569"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 95
{
"classname" "atdm:ai_mage01_female"
"name" "atdm_ai_mage01_female_1"
"origin" "-152 -160 -383.171"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 96
{
"classname" "atdm:ai_sorcerer_moor"
"name" "atdm_ai_sorcerer_moor_1"
"origin" "-56 168 -382.569"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 97
{
"classname" "atdm:ai_elemental"
"name" "atdm_ai_elemental_1"
"origin" "-56 120 -383.9"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 98
{
"classname" "atdm:ai_spider"
"name" "atdm_ai_spider_1"
"origin" "-72 64 -383.973"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 99
{
"classname" "atdm:ai_spider_child"
"name" "atdm_ai_spider_child_1"
"origin" "-64 -16 -383.886"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 100
{
"classname" "atdm:ai_manbeast"
"name" "atdm_ai_manbeast_1"
"origin" "-80 -72 -383.145"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 101
{
"classname" "atdm:ai_monster_werebeast"
"name" "atdm_ai_monster_werebeast_1"
"origin" "-72 -144 -383.896"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 102
{
"classname" "atdm:ai_revenant_spirit"
"name" "atdm_ai_revenant_spirit_1"
"origin" "8 160 -383.708"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 103
{
"classname" "atdm:ai_undead_zombie"
"name" "atdm_ai_undead_zombie_1"
"origin" "8 96 -383.815"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 104
{
"classname" "atdm:ai_undead_zombie_alt_animations"
"name" "atdm_ai_undead_zombie_alt_animations_1"
"origin" "8 48 -383.823"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 105
{
"classname" "atdm:ai_undead_zombie_clothed01"
"name" "atdm_ai_undead_zombie_clothed01_1"
"origin" "0 -16 -383.854"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 106
{
"classname" "atdm:ai_undead_revenant"
"name" "atdm_ai_undead_revenant_1"
"origin" "-8 -72 -383.708"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 107
{
"classname" "atdm:ai_undead_skeleton"
"name" "atdm_ai_undead_skeleton_1"
"origin" "-8 -128 -383.357"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 108
{
"classname" "atdm:ai_undead_skeleton_dirty_armed"
"name" "atdm_ai_undead_skeleton_dirty_armed_1"
"origin" "56 160 -383.356"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 109
{
"classname" "atdm:ai_undead_skeleton_lightbearer"
"name" "atdm_ai_undead_skeleton_lightbearer_1"
"origin" "56 104 -383.481"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 110
{
"classname" "atdm:ai_nobleman_armed"
"name" "atdm_ai_nobleman_armed_1"
"origin" "64 48 -383.933"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 111
{
"classname" "atdm:ai_noblewoman01"
"name" "atdm_ai_noblewoman01_1"
"origin" "56 -16 -383.195"
"rotation" "1 0 0 0 1 0 0 0 1"
"team" "0"
}
// entity 112
{
"classname" "path_flee_point"
"name" "path_flee_point_1"
"origin" "-32 -64 -384"
}
5993.map (40,034 bytes)   

Issue History

Date Modified Username Field Change
02.07.2022 20:06 Dragofer New Issue
02.07.2022 20:06 Dragofer Status new => assigned
02.07.2022 20:06 Dragofer Assigned To => Dragofer
02.07.2022 20:06 Dragofer File Added: missing_materials.txt
02.07.2022 20:08 Dragofer Note Added: 0014959
02.07.2022 20:08 Dragofer Status assigned => resolved
02.07.2022 20:08 Dragofer Resolution open => fixed
02.07.2022 20:08 Dragofer Fixed in Version => TDM 2.11
02.07.2022 20:13 Dragofer Relationship added related to 0005994
07.07.2022 19:13 Dragofer Relationship added related to 0005466
07.07.2022 19:16 Dragofer Note Added: 0014968
07.07.2022 19:25 Dragofer Note Added: 0014969
07.07.2022 19:30 Dragofer Note Edited: 0014969
07.07.2022 19:33 Dragofer Note Added: 0014970
07.07.2022 19:33 Dragofer File Added: 5993.map