TapestryEngine

A 2D Platformer Game Engine
Log | Files | Refs

eb2976fbf1f49bc0610f174e5d59a6dd6b7b1050.svn-base (19153B)


      1 {
      2 	"loading":
      3 	{
      4 		"splash" : "Loading.bmp"
      5 	},
      6 	
      7 	"level": 
      8 	{
      9 		"world": 
     10 		{
     11 			"world_h": 500,
     12 			"world_w": 1800,
     13 			"terrain" : "scene_2\\scene_2_colmap.bmp",
     14 			"backgrounds" : 
     15 			[
     16 			{"back" : "scene_2\\scene_2_back_0.bmp"       , "parallax_factor" : 1, "alpha" : 0  },
     17 			{"back" : "scene_2\\scene_2_back_1.bmp"       , "parallax_factor" : 1, "alpha" : 0  },
     18 			{"back" : "scene_2\\scene_2_back_transp_2.bmp", "parallax_factor" : 1, "alpha" : 75},
     19 			{"back" : "scene_2\\scene_2_back_transp_3.bmp"       , "parallax_factor" : 1, "alpha" : 75  },
     20       {"back" : "scene_2\\scene_2_back_4.bmp"       , "parallax_factor" : 1, "alpha" : 0  }
     21 			],
     22 			"foregrounds" : 
     23 			[
     24 			{"fore" : "scene_2\\scene_2_fore_0.bmp", "alpha" : 0}
     25 			],
     26 			"overlays" : 
     27 			[
     28 			]
     29 		},
     30 
     31 		"camera": 
     32 		{
     33 			"h": 252,
     34 			"w": 448,
     35 			"x": 0,
     36 			"y": 0,
     37 			"blockers" :
     38 			[
     39 			]
     40 		},
     41 
     42 		"sounds":
     43 		[
     44 		{"filename" : "Dhaka.mp3"       , "name" : "dhaka"       , "vol" : 12 },
     45 		{"filename" : "splash_sound.wav", "name" : "splash_sound", "vol" : 64},
     46 		{"filename" : "footstep.wav"    , "name" : "footstep"    , "vol" : 128},
     47 		{"filename" : "door.wav"        , "name" : "door_open"   , "vol" : 128},
     48 		{"filename" : "draw.wav"        , "name" : "draw_sword"  , "vol" : 128}
     49 		],
     50 
     51 		"sound_regions":
     52 		[
     53 			{
     54 				"x" : 0, "y" : 0, "h" : 500, "w" : 1800,
     55 				"tracks" : 
     56 				[
     57 				"dhaka"
     58 				]
     59 			}
     60 		],
     61 
     62 		"animations" : 
     63 		[
     64 			{
     65 				"pack_name" : "splash", 
     66 				"frame_size" : {"h" : 4, "w" : 20}, 
     67 				"col_data"   : {"off_x" : 0, "off_y" : 0, "col_h" : 4, "col_w" : 20},
     68 				"anim_set":
     69 				[
     70 				{"filename" : "water_ripple.bmp", "frame_count" : 6 , "frame_rate" : 25, "id" : "PARTICLE" }
     71 				],
     72 				"loop_ids" :
     73 				[
     74 					"PARTICLE"
     75 				],
     76 				"transition_ids" :
     77 				[
     78 				],
     79 				"anim_graph": 
     80 				[
     81 					{
     82 						"loop_name": "PARTICLE",
     83 						"transitions": ["NONE"]
     84 					}
     85 				]
     86 			},
     87 				{
     88 				"pack_name" : "haze", 
     89 				"frame_size" : {"h" : 284, "w" : 4095}, 
     90 				"col_data"   : {"off_x" : 0, "off_y" : 0, "col_h" : 284, "col_w" : 4095},
     91 				"anim_set":
     92 				[
     93 				{"filename" : "haze.bmp", "frame_count" : 1 , "frame_rate" : 250, "id" : "PARTICLE" }
     94 				],
     95 				"loop_ids" :
     96 				[
     97 					"PARTICLE"
     98 				],
     99 				"transition_ids" :
    100 				[
    101 				],
    102 				"anim_graph": 
    103 				[
    104 					{
    105 						"loop_name": "PARTICLE",
    106 						"transitions": ["NONE"]
    107 					}
    108 				]
    109 			},
    110 			{
    111 				"pack_name"  : "player_pack",
    112 				"frame_size" : {"h" : 23, "w" : 14}, 
    113 				"col_data"   : {"off_x" : -5, "off_y" : 0, "col_h" : 23, "col_w" : 6},
    114 				"anim_set":
    115 				[
    116 				{"filename" : "player\\player_idle_begin.bmp"       , "frame_count" : 2 , "frame_rate" : 250, "id" : "IDLE_BEGIN"  },
    117 				{"filename" : "player\\player_idle.bmp"             , "frame_count" : 6 , "frame_rate" : 275, "id" : "IDLE"        },
    118 				{"filename" : "player\\player_jump.bmp"             , "frame_count" : 1 , "frame_rate" : 100, "id" : "JUMP"        },
    119 				{"filename" : "player\\player_jump_to_fall.bmp"     , "frame_count" : 1 , "frame_rate" : 100, "id" : "JUMP_TO_FALL"},
    120 				{"filename" : "player\\player_fall.bmp"             , "frame_count" : 5 , "frame_rate" : 75,  "id" : "FALL"        },
    121 				{"filename" : "player\\player_run.bmp"              , "frame_count" : 15, "frame_rate" : 20 , "id" : "RUN"         },
    122 				{"filename" : "player\\player_run_drawn.bmp"        , "frame_count" : 15, "frame_rate" : 20 , "id" : "RUN_DRAWN"   },
    123 				{"filename" : "player\\player_swim.bmp"             , "frame_count" : 6,  "frame_rate" : 50 , "id" : "SWIM"        },
    124 				{"filename" : "player\\player_swim_tread.bmp"       , "frame_count" : 6,  "frame_rate" : 80 , "id" : "TREAD"       }
    125 				],
    126 				"loop_ids" :
    127 				[
    128 					"IDLE",
    129 					"JUMP",
    130 					"FALL",
    131 					"RUN",
    132 					"RUN_DRAWN",
    133 					"SWIM",
    134 					"TREAD"
    135 				],
    136 				"transition_ids" :
    137 				[
    138 					"IDLE_BEGIN",
    139 					"JUMP_TO_FALL"
    140 				],
    141 				"anim_graph": 
    142 				[
    143 					{
    144 						"loop_name": "IDLE",
    145 						"transitions": ["NONE"      , "NONE", "NONE"        , "NONE", "NONE", "NONE", "NONE"]
    146 					},
    147 					{
    148 						"loop_name": "JUMP",
    149 						"transitions": ["NONE"      , "NONE", "JUMP_TO_FALL", "NONE", "NONE", "NONE", "NONE"]
    150 					},
    151 					{
    152 						"loop_name": "FALL",
    153 						"transitions": ["NONE"      , "NONE", "NONE"        , "NONE", "NONE", "NONE", "NONE"]
    154 					},
    155 					{
    156 						"loop_name": "RUN",
    157 						"transitions": ["IDLE_BEGIN", "NONE", "NONE"        , "NONE", "NONE", "NONE", "NONE"]
    158 					},
    159 					{
    160 						"loop_name": "RUN_DRAWN",
    161 						"transitions": ["IDLE_BEGIN", "NONE", "NONE"        , "NONE", "NONE", "NONE", "NONE"]
    162 					},
    163 					{
    164 						"loop_name": "SWIM",
    165 						"transitions": ["NONE"      , "NONE", "NONE"        , "NONE", "NONE", "NONE", "NONE"]
    166 					},
    167 					{
    168 						"loop_name": "TREAD",
    169 						"transitions": ["NONE"      , "NONE", "NONE"        , "NONE", "NONE", "NONE", "NONE"]
    170 					}
    171 				]
    172 			},
    173 			{
    174 				"pack_name"  : "sword",
    175 				"frame_size" : {"h" : 23, "w" : 14}, 
    176 				"col_data"   : {"off_x" : 0, "off_y" : 0, "col_h" : 23, "col_w" : 14},
    177 				"anim_set":
    178 				[
    179 				{"filename" : "player\\sword\\sword_idle_begin.bmp"       , "frame_count" : 2 , "frame_rate" : 250 , "id" : "IDLE_BEGIN"  },
    180 				{"filename" : "player\\sword\\sword_idle.bmp"             , "frame_count" : 6 , "frame_rate" : 275, "id" : "IDLE"        },
    181 				{"filename" : "player\\sword\\sword_jump.bmp"             , "frame_count" : 1 , "frame_rate" : 100, "id" : "JUMP"        },
    182 				{"filename" : "player\\sword\\sword_jump_to_fall.bmp"     , "frame_count" : 1 , "frame_rate" : 100, "id" : "JUMP_TO_FALL"},
    183 				{"filename" : "player\\sword\\sword_fall.bmp"             , "frame_count" : 5 , "frame_rate" : 75,  "id" : "FALL"        },
    184 				{"filename" : "player\\sword\\sword_run.bmp"              , "frame_count" : 15, "frame_rate" : 20 , "id" : "RUN"         },
    185 				{"filename" : "player\\sword\\sword_run_drawn.bmp"        , "frame_count" : 15, "frame_rate" : 20 , "id" : "RUN_DRAWN"   },
    186 				{"filename" : "player\\sword\\sword_swim.bmp"             , "frame_count" : 6,  "frame_rate" : 50 , "id" : "SWIM"        },
    187 				{"filename" : "player\\sword\\sword_swim_tread.bmp"       , "frame_count" : 6,  "frame_rate" : 80 , "id" : "TREAD"       }
    188 				],
    189 				"loop_ids" :
    190 				[
    191 					"IDLE",
    192 					"JUMP",
    193 					"FALL",
    194 					"RUN",
    195 					"RUN_DRAWN",
    196 					"SWIM",
    197 					"TREAD"
    198 				],
    199 				"transition_ids" :
    200 				[
    201 					"IDLE_BEGIN",
    202 					"JUMP_TO_FALL"
    203 				],
    204 				"anim_graph": 
    205 				[
    206 					{
    207 						"loop_name": "IDLE",
    208 						"transitions": ["NONE"      , "NONE", "NONE"        , "NONE", "NONE", "NONE", "NONE"]
    209 					},
    210 					{
    211 						"loop_name": "JUMP",
    212 						"transitions": ["NONE"      , "NONE", "JUMP_TO_FALL", "NONE", "NONE", "NONE", "NONE"]
    213 					},
    214 					{
    215 						"loop_name": "FALL",
    216 						"transitions": ["NONE"      , "NONE", "NONE"        , "NONE", "NONE", "NONE", "NONE"]
    217 					},
    218 					{
    219 						"loop_name": "RUN",
    220 						"transitions": ["IDLE_BEGIN", "NONE", "NONE"        , "NONE", "NONE", "NONE", "NONE"]
    221 					},
    222 					{
    223 						"loop_name": "RUN_DRAWN",
    224 						"transitions": ["IDLE_BEGIN", "NONE", "NONE"        , "NONE", "NONE", "NONE", "NONE"]
    225 					},
    226 					{
    227 						"loop_name": "SWIM",
    228 						"transitions": ["NONE"      , "NONE", "NONE"        , "NONE", "NONE", "NONE", "NONE"]
    229 					},
    230 					{
    231 						"loop_name": "TREAD",
    232 						"transitions": ["NONE"      , "NONE", "NONE"        , "NONE", "NONE", "NONE", "NONE"]
    233 					}
    234 				]
    235 			},
    236 			{
    237 				"pack_name" : "gate",
    238 				"frame_size" : {"h" : 66, "w" : 8}, 
    239 				"col_data"   : {"off_x" : 0, "off_y" : -29, "col_h" : 37, "col_w" : 8}, 
    240 				"anim_set":
    241 				[
    242 				{"filename" : "gate\\gate_down.bmp"        , "frame_count" : 1 , "frame_rate" : 100 , "id" : "GATE_DOWN"        },
    243 				{"filename" : "gate\\gate_up.bmp"          , "frame_count" : 1 , "frame_rate" : 100 , "id" : "GATE_UP"          },
    244 				{"filename" : "gate\\gate_lower.bmp"       , "frame_count" : 6 , "frame_rate" : 40  , "id" : "GATE_LOWER"       },
    245 				{"filename" : "gate\\gate_lower_begin.bmp" , "frame_count" : 3 , "frame_rate" : 40  , "id" : "GATE_LOWER_BEGIN" },
    246 				{"filename" : "gate\\gate_raise.bmp"       , "frame_count" : 38, "frame_rate" : 120 , "id" : "GATE_RAISE"       }
    247 				],
    248 				"loop_ids" :
    249 				[
    250 					"GATE_DOWN",
    251 					"GATE_UP"
    252 				],
    253 				"transition_ids" :
    254 				[
    255 					"GATE_LOWER",
    256 					"GATE_LOWER_BEGIN",
    257 					"GATE_RAISE"
    258 				],
    259 				"anim_graph": 
    260 				[
    261 					{
    262 						"loop_name": "GATE_DOWN",
    263 						"transitions": ["NONE", "GATE_RAISE"]
    264 					},
    265 					{
    266 						"loop_name": "GATE_UP",
    267 						"transitions": ["GATE_LOWER", "NONE"]
    268 					}
    269 				]
    270 			},
    271 			{
    272 				"pack_name" : "winch",
    273 				"frame_size" : {"h" : 31, "w" : 22}, 
    274 				"col_data"   : {"off_x" : 0, "off_y" : 0, "col_h" : 17, "col_w" : 22}, 
    275 				"anim_set":
    276 				[
    277 				{"filename" : "winch\\winch_down.bmp"        , "frame_count" : 1 , "frame_rate" : 100 , "id" : "GATE_DOWN"        },
    278 				{"filename" : "winch\\winch_up.bmp"          , "frame_count" : 1 , "frame_rate" : 100 , "id" : "GATE_UP"          },
    279 				{"filename" : "winch\\winch_lower.bmp"       , "frame_count" : 6 , "frame_rate" : 40  , "id" : "GATE_LOWER"       },
    280 				{"filename" : "winch\\winch_lower_begin.bmp" , "frame_count" : 4 , "frame_rate" : 120 , "id" : "GATE_LOWER_BEGIN" },
    281 				{"filename" : "winch\\winch_raise.bmp"       , "frame_count" : 40, "frame_rate" : 120 , "id" : "GATE_RAISE"       }
    282 				],
    283 				"loop_ids" :
    284 				[
    285 					"GATE_DOWN",
    286 					"GATE_UP"
    287 				],
    288 				"transition_ids" :
    289 				[
    290 					"GATE_LOWER",
    291 					"GATE_LOWER_BEGIN",
    292 					"GATE_RAISE"
    293 				],
    294 				"anim_graph": 
    295 				[
    296 					{
    297 						"loop_name": "GATE_DOWN",
    298 						"transitions": ["NONE", "GATE_RAISE"]
    299 					},
    300 					{
    301 						"loop_name": "GATE_UP",
    302 						"transitions": ["GATE_LOWER", "NONE"]
    303 					}
    304 				]
    305 			},
    306 			{
    307 				"pack_name" : "gateman_npc",
    308 				"frame_size" : {"h" : 26, "w" : 14}, 
    309 				"col_data"   : {"off_x" : 0, "off_y" : 0, "col_h" : 26, "col_w" : 14}, 
    310 				"anim_set":
    311 				[
    312 				{"filename" : "NPCs\\gateman\\gateoperator_idle.bmp"        , "frame_count" : 6 , "frame_rate" : 250 , "id" : "GATE_DOWN"             },
    313 				{"filename" : "NPCs\\gateman\\gateoperator_idle.bmp"        , "frame_count" : 6 , "frame_rate" : 250 , "id" : "GATE_UP"             },
    314 				{"filename" : "NPCs\\gateman\\gateoperator_lower.bmp"       , "frame_count" : 7 , "frame_rate" : 120  , "id" : "GATE_LOWER"       },
    315 				{"filename" : "NPCs\\gateman\\gateoperator_raise.bmp"       , "frame_count" : 43, "frame_rate" : 120 , "id" : "GATE_RAISE"       }
    316 				],
    317 				"loop_ids" :
    318 				[
    319 					"GATE_DOWN",
    320 					"GATE_UP"
    321 				],
    322 				"transition_ids" :
    323 				[
    324 					"GATE_LOWER",
    325 					"GATE_RAISE"
    326 				],
    327 				"anim_graph": 
    328 				[
    329 					{
    330 						"loop_name": "GATE_DOWN",
    331 						"transitions": ["NONE", "GATE_RAISE"]
    332 					},
    333 					{
    334 						"loop_name": "GATE_UP",
    335 						"transitions": ["GATE_LOWER", "NONE"]
    336 					}
    337 				]
    338 			},
    339 			{
    340 				"pack_name" : "red_pack",
    341 				"frame_size" : {"h" : 23, "w" : 14}, 
    342 				"col_data"   : {"off_x" : -5, "off_y" : 0, "col_h" : 23, "col_w" : 6}, 
    343 				"anim_set":
    344 				[
    345 				{"filename" : "red_idle_begin.bmp", "frame_count" : 4 , "frame_rate" : 75 , "off_x" : 0, "off_y" : 0, "col_h" : 0, "col_w" : 0, "id" : "IDLE_BEGIN"},
    346 				{"filename" : "red_idle.bmp"      , "frame_count" : 3 , "frame_rate" : 100, "off_x" : 0, "off_y" : 0, "col_h" : 0, "col_w" : 0, "id" : "IDLE"      },
    347 				{"filename" : "red_run.bmp"       , "frame_count" : 15, "frame_rate" : 20 , "off_x" : 0, "off_y" : 0, "col_h" : 0, "col_w" : 0, "id" : "RUN"       }
    348 				],
    349 				"loop_ids" :
    350 				[
    351 					"IDLE",
    352 					"RUN"
    353 				],
    354 				"transition_ids" :
    355 				[
    356 					"IDLE_BEGIN"
    357 				],
    358 				"anim_graph": 
    359 				[
    360 					{
    361 						"loop_name": "IDLE",
    362 						"transitions": ["NONE", "NONE"]
    363 					},
    364 					{
    365 						"loop_name": "RUN",
    366 						"transitions": ["IDLE_BEGIN", "NONE"]
    367 					}
    368 				]
    369 			},
    370 			{
    371 				"pack_name" : "yella_pack", 
    372 				"frame_size" : {"h" : 23, "w" : 14}, 
    373 				"col_data"   : {"off_x" : -5, "off_y" : 0, "col_h" : 23, "col_w" : 6},
    374 				"anim_set":
    375 				[
    376 				{"filename" : "yella_idle_begin.bmp", "frame_count" : 4 , "frame_rate" : 75 , "id" : "IDLE_BEGIN"},
    377 				{"filename" : "yella_idle.bmp"      , "frame_count" : 3 , "frame_rate" : 100, "id" : "IDLE"      },
    378 				{"filename" : "yella_run.bmp"       , "frame_count" : 15, "frame_rate" : 20 , "id" : "RUN"       }
    379 				],
    380 				"loop_ids" :
    381 				[
    382 					"IDLE",
    383 					"RUN"
    384 				],
    385 				"transition_ids" :
    386 				[
    387 					"IDLE_BEGIN"
    388 				],
    389 				"anim_graph": 
    390 				[
    391 					{
    392 						"loop_name": "IDLE",
    393 						"transitions": ["NONE", "NONE"]
    394 					},
    395 					{
    396 						"loop_name": "RUN",
    397 						"transitions": ["IDLE_BEGIN", "NONE"]
    398 					}
    399 				]
    400 			},
    401 			{
    402 				"pack_name" : "b_rabbit_pack", 
    403 				"frame_size" : {"h" : 5, "w" : 6}, 
    404 				"col_data"   : {"off_x" : 0, "off_y" : 0, "col_h" : 5, "col_w" : 6},
    405 				"anim_set":
    406 				[
    407 				{"filename" : "rabbits\\brabbit_hop.bmp"       , "frame_count" : 1 , "frame_rate" : 100, "id" : "RUN"   },
    408 				{"filename" : "rabbits\\brabbit_idle_eat.bmp"  , "frame_count" : 13, "frame_rate" : 100, "id" : "EAT"   },
    409 				{"filename" : "rabbits\\brabbit_idle_look.bmp" , "frame_count" : 8 , "frame_rate" : 100, "id" : "LOOK"  },
    410 				{"filename" : "rabbits\\brabbit_sleep.bmp"     , "frame_count" : 1 , "frame_rate" : 100, "id" : "SLEEP" }
    411 				],
    412 				"loop_ids" :
    413 				[
    414 					"RUN",
    415 					"EAT",
    416 					"LOOK",
    417 					"SLEEP"
    418 				],
    419 				"transition_ids" :
    420 				[
    421 				],
    422 				"anim_graph": 
    423 				[
    424 					{
    425 						"loop_name": "RUN",
    426 						"transitions": ["NONE", "NONE", "NONE", "NONE"]
    427 					},
    428 					{
    429 						"loop_name": "EAT",
    430 						"transitions": ["NONE", "NONE", "NONE", "NONE"]
    431 					},
    432 					{
    433 						"loop_name": "LOOK",
    434 						"transitions": ["NONE", "NONE", "NONE", "NONE"]
    435 					},
    436 					{
    437 						"loop_name": "SLEEP",
    438 						"transitions": ["NONE", "NONE", "NONE", "NONE"]
    439 					}
    440 				]
    441 			},
    442 			{
    443 				"pack_name" : "loyal_bug_pack", 
    444 				"frame_size" : {"h" : 26, "w" : 64}, 
    445 				"col_data"   : {"off_x" : -32, "off_y" : 0, "col_h" : 26, "col_w" : 32},
    446 				"anim_set":
    447 				[
    448 				{"filename" : "loyal_bug\\loyalbug_idle_begin.bmp" , "frame_count" : 5 ,  "frame_rate" : 75 , "id" : "IDLE_BEGIN"},
    449 				{"filename" : "loyal_bug\\loyalbug_idle.bmp"       , "frame_count" : 11 , "frame_rate" : 120, "id" : "IDLE"      },
    450 				{"filename" : "loyal_bug\\loyalbug_walk.bmp"       , "frame_count" : 23,  "frame_rate" : 20 , "id" : "RUN"       }
    451 				],
    452 				"loop_ids" :
    453 				[
    454 					"IDLE",
    455 					"RUN"
    456 				],
    457 				"transition_ids" :
    458 				[
    459 					"IDLE_BEGIN"
    460 				],
    461 				"anim_graph": 
    462 				[
    463 					{
    464 						"loop_name": "IDLE",
    465 						"transitions": ["NONE", "NONE"]
    466 					},
    467 					{
    468 						"loop_name": "RUN",
    469 						"transitions": ["IDLE_BEGIN", "NONE"]
    470 					}
    471 				]
    472 			},
    473 			{
    474 				"pack_name" : "hostile_bug", 
    475 				"frame_size" : {"h" : 7, "w" : 13}, 
    476 				"col_data"   : {"off_x" : 0, "off_y" : 0, "col_h" : 7, "col_w" : 13},
    477 				"anim_set":
    478 				[
    479 				{"filename" : "hostile\\bug_walk.bmp" , "frame_count" : 8 ,  "frame_rate" : 75 , "id" : "RUN"}
    480 				],
    481 				"loop_ids" :
    482 				[
    483 					"RUN"
    484 				],
    485 				"transition_ids" :
    486 				[
    487 				],
    488 				"anim_graph": 
    489 				[
    490 					{
    491 						"loop_name": "RUN",
    492 						"transitions": []
    493 					}
    494 				]
    495 			},
    496 			{
    497 				"pack_name" : "door", 
    498 				"frame_size" : {"h" : 22, "w" : 15}, 
    499 				"col_data"   : {"off_x" : 0, "off_y" : 0, "col_h" : 22, "col_w" : 15},
    500 				"anim_set":
    501 				[
    502 				{"filename" : "door.bmp" , "frame_count" : 1,  "frame_rate" : 100 , "id" : "IDLE"}
    503 				],
    504 				"loop_ids" :
    505 				[
    506 					"IDLE"
    507 				],
    508 				"transition_ids" :
    509 				[
    510 				],
    511 				"anim_graph": 
    512 				[
    513 					{
    514 						"loop_name": "IDLE",
    515 						"transitions": ["NONE"]
    516 					}
    517 				]
    518 			},
    519 			{
    520 				"pack_name" : "garden_npc", 
    521 				"frame_size" : {"h" : 22, "w" : 11}, 
    522 				"col_data"   : {"off_x" : 0, "off_y" : 0, "col_h" : 22, "col_w" : 11},
    523 				"anim_set":
    524 				[
    525 				{"filename" : "NPCs\\gardenwoman_idle.bmp" , "frame_count" : 5,  "frame_rate" : 300 , "id" : "IDLE"}
    526 				],
    527 				"loop_ids" :
    528 				[
    529 					"IDLE"
    530 				],
    531 				"transition_ids" :
    532 				[
    533 				],
    534 				"anim_graph": 
    535 				[
    536 					{
    537 						"loop_name": "IDLE",
    538 						"transitions": ["NONE"]
    539 					}
    540 				]
    541 			},
    542 			{
    543 				"pack_name" : "smoke_npc", 
    544 				"frame_size" : {"h" : 22, "w" : 13}, 
    545 				"col_data"   : {"off_x" : 0, "off_y" : 0, "col_h" : 22, "col_w" : 13},
    546 				"anim_set":
    547 				[
    548 				{"filename" : "NPCs\\smokingman_idle.bmp" , "frame_count" : 21,  "frame_rate" : 260 , "id" : "IDLE"}
    549 				],
    550 				"loop_ids" :
    551 				[
    552 					"IDLE"
    553 				],
    554 				"transition_ids" :
    555 				[
    556 				],
    557 				"anim_graph": 
    558 				[
    559 					{
    560 						"loop_name": "IDLE",
    561 						"transitions": ["NONE"]
    562 					}
    563 				]
    564 			},
    565 			{
    566 				"pack_name" : "sit_man_npc", 
    567 				"frame_size" : {"h" : 22, "w" : 8}, 
    568 				"col_data"   : {"off_x" : 0, "off_y" : 0, "col_h" : 22, "col_w" : 8},
    569 				"anim_set":
    570 				[
    571 				{"filename" : "NPCs\\sitting_man_idle.bmp" , "frame_count" : 11,  "frame_rate" : 260 , "id" : "IDLE"}
    572 				],
    573 				"loop_ids" :
    574 				[
    575 					"IDLE"
    576 				],
    577 				"transition_ids" :
    578 				[
    579 				],
    580 				"anim_graph": 
    581 				[
    582 					{
    583 						"loop_name": "IDLE",
    584 						"transitions": ["NONE"]
    585 					}
    586 				]
    587 			},
    588 			{
    589 				"pack_name" : "storeowner_npc", 
    590 				"frame_size" : {"h" : 25, "w" : 8}, 
    591 				"col_data"   : {"off_x" : 0, "off_y" : 0, "col_h" : 25, "col_w" : 8},
    592 				"anim_set":
    593 				[
    594 				{"filename" : "NPCs\\storeowner_idle.bmp" , "frame_count" : 8,  "frame_rate" : 415 , "id" : "IDLE"}
    595 				],
    596 				"loop_ids" :
    597 				[
    598 					"IDLE"
    599 				],
    600 				"transition_ids" :
    601 				[
    602 				],
    603 				"anim_graph": 
    604 				[
    605 					{
    606 						"loop_name": "IDLE",
    607 						"transitions": ["NONE"]
    608 					}
    609 				]
    610 			},
    611 			{
    612 				"pack_name" : "bad_hat", 
    613 				"frame_size" : {"h" : 23, "w" : 14}, 
    614 				"col_data"   : {"off_x" : -5, "off_y" : 0, "col_h" : 23, "col_w" : 6},
    615 				"anim_set":
    616 				[
    617 				{"filename" : "player\\myhatisat.bmp" , "frame_count" : 1,  "frame_rate" : 100 , "id" : "IDLE"}
    618 				],
    619 				"loop_ids" :
    620 				[
    621 					"IDLE"
    622 				],
    623 				"transition_ids" :
    624 				[
    625 				],
    626 				"anim_graph": 
    627 				[
    628 					{
    629 						"loop_name": "IDLE",
    630 						"transitions": ["NONE"]
    631 					}
    632 				]
    633 			}
    634 		],
    635 
    636 		"actors" : 
    637 		[
    638    	{"name":"storeowner0", "type" : "talker"      , "anim_pack" : "storeowner_npc" , "x" : 1339  , "y" :  411, "lines" : "I gotta say something."},
    639     {"name":"garden0",     "type" : "talker"      , "anim_pack" : "garden_npc"     , "x" : 297  , "y" :  387, "lines" : "Heres the garden woman, this is the stuff she will say. To demonstrate scrolling heres some more text."},
    640 		{"name":"sit0",        "type" : "talker"      , "anim_pack" : "sit_man_npc"    , "x" : 1637  , "y" :  351, "lines" : "Nice try bro"},
    641 		{"name":"smoke0",      "type" : "talker"      , "anim_pack" : "smoke_npc"      , "x" : 184  , "y" :  395, "lines" : "This is the smoking man, talkers can be spoken to from some distance away horizontally, but you need to be closer vertically. text"},
    642 		{"name":"bug0",      "type" : "talker"      , "anim_pack" : "loyal_bug_pack"      , "x" : 1500  , "y" :  410, "lines" : "This is the smoking man, talkers can be spoken to from some distance away horizontally, but you need to be closer vertically. text"},
    643     {"name":"player0",     "type" : "player"      , "anim_pack" : "player_pack"    , "x" : 1500,  "y" :  50}
    644 		],
    645 
    646 		"hud_textures" : 
    647 		{
    648 		"life_base" : "life_base.bmp",
    649 		"life_bar"  : "life_bar.bmp",
    650 		"text_box"  : "dialogue_box.bmp",
    651 		"fader"     : "fader.bmp"
    652 		},
    653 
    654 		"Particles" : 
    655 		[
    656 		{"anim_pack" : "splash"}
    657 		]
    658 			
    659 	}
    660 }