{
"SaveName": "Brass: Lancashire",
"EpochTime": 1621886831,
"Date": "5/24/2021 4:07:11 PM",
"VersionNumber": "v13.1.1",
"GameMode": "Brass: Lancashire",
"GameType": "Game",
"GameComplexity": "Medium Complexity",
"PlayingTime": [
0,
0
],
"PlayerCounts": [
2,
4
],
"Tags": [],
"Gravity": 0.5,
"PlayArea": 0.5,
"Table": "Table_None",
"Sky": "Sky_Museum",
"SkyURL": "http://cloud-3.steamusercontent.com/ugc/987863257458474338/EEF2FF28224A83EB29EC7D5B3CA728782F1554FC/",
"Note": "\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nSee notebook for information.",
"TabStates": {
"0": {
"title": "Information",
"body": "Welcome! Once everyone is seated, press either of the “Start Game” buttons to start.\n\nThe game gives chances to review and make correction at critical times:\n- Income only happens when “Start the Next Round” and “Start the Rail Era” are clicked.\n- Scoring only happens when “Score the Canal Era” is clicked.\n- Clearing the board of links and industries only happens when “Start the Rail Era” is clicked.\n\nInstructions:\n- Only use the “+#” buttons when receiving money. Don’t use them when spending.\n- Only use the “-#” buttons when spending money.\n- When taking the Double Build action, simply place a card in each discard pile as normal.\n\nThe script is largely stateless. This means you can change/correct just about everything in the game, including:\n- Available money\n- Money spent\n- Links and industries\n- Cards\n- Income, score and cotton distant market markers\n- Coal and iron markets\n- Distant market tiles\n\nYou can even change the turn order token. If this causes a player to be placed before the current player, perform the turns as it there was no scripting until it reaches the indicated player’s turn.\n\nThe script supports saving and reverting time.\n\nThe script is very tolerant of people dropping. The host and promoted players can click the game-advancing button even when it’s not their turn.\n\nThe value of links are updated with every click of the button.\n\n“/execute start(n)” in the chat will start the game with missing players. (Use a number of players instead of “n”.)\n",
"color": "Grey",
"visibleColor": {
"r": 0.5,
"g": 0.5,
"b": 0.5
},
"id": 0
},
"12": {
"title": "Change Log",
"body": "[2022-02-19 Kinithin]\n- Now uses my Steam Cloud for hosting exclusively (except for the rules).\n\n[2022-01-22 Kinithin]\n- Moved off of pastebin for hosting.\n- Fix misspelling of \"paid\". (Credit: Venemo)\n\n[2021-05-24 Kinithin]\n- Now displays a score board at the end of each era.\n- Now stores the game's result as CSV, TSV and JSON in the Notebook at end of game.\n- Added checks that canals and railways are only used during the appropriate era.\n- Made it so objects only snap to positions appropriate for the object.\n- Pulses of highlights now smoother.\n- Fixed small problems with minimizing and unminimizing the control panel.\n\n[2021-05-03 Kinithin]\n- New hosting for wooden cube resources.\n\n[2021-04-09 Kinithin]\n- Fixed a bug preventing the rail era from being entered with four players.\n- Silenced the harmless \"Undeclared write to spawned_object\" warning.\n\n[2021-01-12 Kinithin]\n- Restored the ability to save (and rewind) games. This was broken by the previous release.\n- Worked around a bug in TTS that could corrupt this module’s state.\n- Updated to the latest rule book.\n- Sir Henry Bessemer no longer leans so far back.\n\n[2021-01-03 Kinithin]\n- The game was disabling the loan button one round too soon.\n- The game now checks for updates and advises the players where to get the newest version.\n- The game-advancing button now shows as disabled when the game is busy and when in cool-down mode.\n- Sound is cut if the game-advancing button is pressed while sound is still playing.\n\n[2020-12-21 Kinithin]\n- Fixed a (basically harmless) error that would occur every 10s a player had a color other than those used by the mod.\n\n[2020-12-19 Kinithin]\n- Initial version. Based on the Brass: Lancashire assets by Draxous and the Brass: Birmingham code by Kinithin. Thanks for Eldin’s help with the model for the distant cotton market.\n",
"color": "Grey",
"visibleColor": {
"r": 0.5,
"g": 0.5,
"b": 0.5
},
"id": 12
},
"13": {
"title": "Orange",
"body": "",
"color": "Orange",
"visibleColor": {
"r": 0.956,
"g": 0.392,
"b": 0.113
},
"id": 13
},
"14": {
"title": "Purple",
"body": "",
"color": "Purple",
"visibleColor": {
"r": 0.627,
"g": 0.125,
"b": 0.941
},
"id": 14
},
"15": {
"title": "Teal",
"body": "",
"color": "Teal",
"visibleColor": {
"r": 0.129,
"g": 0.694,
"b": 0.607
},
"id": 15
},
"16": {
"title": "Yellow",
"body": "",
"color": "Yellow",
"visibleColor": {
"r": 0.905,
"g": 0.898,
"b": 0.172
},
"id": 16
}
},
"Grid": {
"Type": 0,
"Lines": false,
"Color": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"Opacity": 0.251723915,
"ThickLines": false,
"Snapping": false,
"Offset": false,
"BothSnapping": true,
"xSize": 1.0,
"ySize": 1.0,
"PosOffset": {
"x": 0.0,
"y": 1.0,
"z": 0.0
}
},
"Lighting": {
"LightIntensity": 0.62,
"LightColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"AmbientIntensity": 0.5959997,
"AmbientType": 1,
"AmbientSkyColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"AmbientEquatorColor": {
"r": 0.745806038,
"g": 0.7040451,
"b": 0.768292665
},
"AmbientGroundColor": {
"r": 0.427450985,
"g": 0.3882353,
"b": 0.4509804
},
"ReflectionIntensity": 0.307999849,
"LutIndex": 0,
"LutContribution": 0.600000262,
"LutURL": ""
},
"Hands": {
"Enable": true,
"DisableUnused": false,
"Hiding": 0
},
"ComponentTags": {
"labels": [
{
"displayed": "turn_order",
"normalized": "turn_order"
},
{
"displayed": "link_canal",
"normalized": "link_canal"
},
{
"displayed": "link_rail",
"normalized": "link_rail"
},
{
"displayed": "vp_marker",
"normalized": "vp_marker"
},
{
"displayed": "income_marker",
"normalized": "income_marker"
},
{
"displayed": "coal",
"normalized": "coal"
},
{
"displayed": "iron",
"normalized": "iron"
},
{
"displayed": "cotton",
"normalized": "cotton"
},
{
"displayed": "yellow_cotton_mill_1",
"normalized": "yellow_cotton_mill_1"
},
{
"displayed": "yellow_cotton_mill_2",
"normalized": "yellow_cotton_mill_2"
},
{
"displayed": "yellow_cotton_mill_3",
"normalized": "yellow_cotton_mill_3"
},
{
"displayed": "yellow_cotton_mill_4",
"normalized": "yellow_cotton_mill_4"
},
{
"displayed": "yellow_port_1",
"normalized": "yellow_port_1"
},
{
"displayed": "yellow_port_2",
"normalized": "yellow_port_2"
},
{
"displayed": "yellow_port_3",
"normalized": "yellow_port_3"
},
{
"displayed": "yellow_shipyard_pre",
"normalized": "yellow_shipyard_pre"
},
{
"displayed": "yellow_port_4",
"normalized": "yellow_port_4"
},
{
"displayed": "yellow_shipyard_1",
"normalized": "yellow_shipyard_1"
},
{
"displayed": "yellow_shipyard_2",
"normalized": "yellow_shipyard_2"
},
{
"displayed": "yellow_iron_works_1",
"normalized": "yellow_iron_works_1"
},
{
"displayed": "yellow_iron_works_2",
"normalized": "yellow_iron_works_2"
},
{
"displayed": "yellow_iron_works_3",
"normalized": "yellow_iron_works_3"
},
{
"displayed": "yellow_iron_works_4",
"normalized": "yellow_iron_works_4"
},
{
"displayed": "yellow_coal_mine_1",
"normalized": "yellow_coal_mine_1"
},
{
"displayed": "yellow_coal_mine_2",
"normalized": "yellow_coal_mine_2"
},
{
"displayed": "yellow_coal_mine_3",
"normalized": "yellow_coal_mine_3"
},
{
"displayed": "yellow_coal_mine_4",
"normalized": "yellow_coal_mine_4"
},
{
"displayed": "teal_cotton_mill_1",
"normalized": "teal_cotton_mill_1"
},
{
"displayed": "teal_cotton_mill_2",
"normalized": "teal_cotton_mill_2"
},
{
"displayed": "teal_cotton_mill_3",
"normalized": "teal_cotton_mill_3"
},
{
"displayed": "teal_cotton_mill_4",
"normalized": "teal_cotton_mill_4"
},
{
"displayed": "teal_port_1",
"normalized": "teal_port_1"
},
{
"displayed": "teal_port_2",
"normalized": "teal_port_2"
},
{
"displayed": "teal_port_3",
"normalized": "teal_port_3"
},
{
"displayed": "teal_port_4",
"normalized": "teal_port_4"
},
{
"displayed": "teal_shipyard_pre",
"normalized": "teal_shipyard_pre"
},
{
"displayed": "teal_shipyard_1",
"normalized": "teal_shipyard_1"
},
{
"displayed": "teal_shipyard_2",
"normalized": "teal_shipyard_2"
},
{
"displayed": "teal_iron_works_1",
"normalized": "teal_iron_works_1"
},
{
"displayed": "teal_iron_works_2",
"normalized": "teal_iron_works_2"
},
{
"displayed": "teal_iron_works_3",
"normalized": "teal_iron_works_3"
},
{
"displayed": "teal_iron_works_4",
"normalized": "teal_iron_works_4"
},
{
"displayed": "teal_coal_mine_1",
"normalized": "teal_coal_mine_1"
},
{
"displayed": "teal_coal_mine_2",
"normalized": "teal_coal_mine_2"
},
{
"displayed": "teal_coal_mine_3",
"normalized": "teal_coal_mine_3"
},
{
"displayed": "teal_coal_mine_4",
"normalized": "teal_coal_mine_4"
},
{
"displayed": "purple_cotton_mill_1",
"normalized": "purple_cotton_mill_1"
},
{
"displayed": "purple_cotton_mill_2",
"normalized": "purple_cotton_mill_2"
},
{
"displayed": "purple_cotton_mill_3",
"normalized": "purple_cotton_mill_3"
},
{
"displayed": "purple_cotton_mill_4",
"normalized": "purple_cotton_mill_4"
},
{
"displayed": "purple_port_1",
"normalized": "purple_port_1"
},
{
"displayed": "purple_port_2",
"normalized": "purple_port_2"
},
{
"displayed": "purple_port_3",
"normalized": "purple_port_3"
},
{
"displayed": "purple_port_4",
"normalized": "purple_port_4"
},
{
"displayed": "purple_shipyard_pre",
"normalized": "purple_shipyard_pre"
},
{
"displayed": "purple_shipyard_1",
"normalized": "purple_shipyard_1"
},
{
"displayed": "purple_shipyard_2",
"normalized": "purple_shipyard_2"
},
{
"displayed": "purple_iron_works_1",
"normalized": "purple_iron_works_1"
},
{
"displayed": "purple_iron_works_2",
"normalized": "purple_iron_works_2"
},
{
"displayed": "purple_iron_works_3",
"normalized": "purple_iron_works_3"
},
{
"displayed": "purple_iron_works_4",
"normalized": "purple_iron_works_4"
},
{
"displayed": "purple_coal_mine_1",
"normalized": "purple_coal_mine_1"
},
{
"displayed": "purple_coal_mine_2",
"normalized": "purple_coal_mine_2"
},
{
"displayed": "purple_coal_mine_3",
"normalized": "purple_coal_mine_3"
},
{
"displayed": "purple_coal_mine_4",
"normalized": "purple_coal_mine_4"
},
{
"displayed": "orange_cotton_mill_1",
"normalized": "orange_cotton_mill_1"
},
{
"displayed": "orange_cotton_mill_2",
"normalized": "orange_cotton_mill_2"
},
{
"displayed": "orange_cotton_mill_3",
"normalized": "orange_cotton_mill_3"
},
{
"displayed": "orange_cotton_mill_4",
"normalized": "orange_cotton_mill_4"
},
{
"displayed": "orange_port_1",
"normalized": "orange_port_1"
},
{
"displayed": "orange_port_2",
"normalized": "orange_port_2"
},
{
"displayed": "orange_port_3",
"normalized": "orange_port_3"
},
{
"displayed": "orange_port_4",
"normalized": "orange_port_4"
},
{
"displayed": "orange_shipyard_pre",
"normalized": "orange_shipyard_pre"
},
{
"displayed": "orange_shipyard_1",
"normalized": "orange_shipyard_1"
},
{
"displayed": "orange_shipyard_2",
"normalized": "orange_shipyard_2"
},
{
"displayed": "orange_iron_works_1",
"normalized": "orange_iron_works_1"
},
{
"displayed": "orange_iron_works_2",
"normalized": "orange_iron_works_2"
},
{
"displayed": "orange_iron_works_3",
"normalized": "orange_iron_works_3"
},
{
"displayed": "orange_iron_works_4",
"normalized": "orange_iron_works_4"
},
{
"displayed": "orange_coal_mine_1",
"normalized": "orange_coal_mine_1"
},
{
"displayed": "orange_coal_mine_2",
"normalized": "orange_coal_mine_2"
},
{
"displayed": "orange_coal_mine_3",
"normalized": "orange_coal_mine_3"
},
{
"displayed": "orange_coal_mine_4",
"normalized": "orange_coal_mine_4"
},
{
"displayed": "cotton_mill",
"normalized": "cotton_mill"
},
{
"displayed": "port",
"normalized": "port"
},
{
"displayed": "shipyard",
"normalized": "shipyard"
},
{
"displayed": "iron_works",
"normalized": "iron_works"
},
{
"displayed": "coal_mine",
"normalized": "coal_mine"
},
{
"displayed": "distant_market",
"normalized": "distant_market"
}
]
},
"Turns": {
"Enable": false,
"Type": 1,
"TurnOrder": [
"Purple",
"Teal",
"Orange",
"Yellow"
],
"Reverse": false,
"SkipEmpty": false,
"DisableInteractions": false,
"PassTurns": false,
"TurnColor": ""
},
"CameraStates": [
{
"Position": {
"x": 0.0,
"y": -2.5,
"z": 0.0
},
"Rotation": {
"x": 65.0000153,
"y": 0.0471068434,
"z": 0.0
},
"Distance": 40.4720154,
"Zoomed": false,
"AbsolutePosition": {
"x": -0.0140625583,
"y": 34.1801033,
"z": -17.1042061
}
},
null,
null,
null,
null,
null,
null,
null,
null,
null
],
"DecalPallet": [],
"LuaScript": "-- Bundled by luabundle {\"version\":\"1.6.0\"}\nlocal __bundle_require, __bundle_loaded, __bundle_register, __bundle_modules = (function(superRequire)\n\tlocal loadingPlaceholder = {[{}] = true}\n\n\tlocal register\n\tlocal modules = {}\n\n\tlocal require\n\tlocal loaded = {}\n\n\tregister = function(name, body)\n\t\tif not modules[name] then\n\t\t\tmodules[name] = body\n\t\tend\n\tend\n\n\trequire = function(name)\n\t\tlocal loadedModule = loaded[name]\n\n\t\tif loadedModule then\n\t\t\tif loadedModule == loadingPlaceholder then\n\t\t\t\treturn nil\n\t\t\tend\n\t\telse\n\t\t\tif not modules[name] then\n\t\t\t\tif not superRequire then\n\t\t\t\t\tlocal identifier = type(name) == 'string' and '\\\"' .. name .. '\\\"' or tostring(name)\n\t\t\t\t\terror('Tried to require ' .. identifier .. ', but no such module has been registered')\n\t\t\t\telse\n\t\t\t\t\treturn superRequire(name)\n\t\t\t\tend\n\t\t\tend\n\n\t\t\tloaded[name] = loadingPlaceholder\n\t\t\tloadedModule = modules[name](require, loaded, register, modules)\n\t\t\tloaded[name] = loadedModule\n\t\tend\n\n\t\treturn loadedModule\n\tend\n\n\treturn require, loaded, register, modules\nend)(nil)\n__bundle_register(\"__root\", function(require, _LOADED, __bundle_register, __bundle_modules)\n-- ================================================================================\n-- Brass: Lancashire\n-- Quasi-stateless scripted version.\n\n-- ----------------------------------------\n-- Debugging commands.\n\n-- To start a game with insufficient players, use one of the following\n-- /execute start(2)\n-- /execute start(3)\n-- /execute start(4)\n\n-- To make simple to step through turns quickly when debuging, use the following:\n-- /execute start({ min_players = 2, skip_discard_check = true, cool_down = 0 })\n-- This also reduces the eras to one round each:\n-- /execute start({ min_players = 2, skip_discard_check = true, cool_down = 0, short = true })\n\n-- ================================================================================\n\ngame = \"Lancashire\"\ndebug = true\ndevel = false\n\n----#include mods/Brass/lib/Global\ndebug = not not debug\r\ndevel = not not devel\r\n\r\nlocal TableLock = require(\"kintastic/lib/TableLock\")\r\nTableLock.on_violation = ( debug or devel ) and TableLock.announce_violation or TableLock.ignore_violation\r\nTableLock.lock(_G)\r\nTableLock.declare_atom_symbols()\r\n\r\nlocal Const = require(\"kintastic/lib/Const\")\r\nConst.on_violation = ( debug or devel ) and Const.announce_violation or Const.ignore_violation\r\n\r\nif debug then require(\"kintastic/lib/Debug\").import_into_global() end\r\nif devel then require(\"kintastic/lib/Devel\").import_event_handlers() end\r\n\r\nTableLock.declare_and_set(_G, \"onLoad\",\r\n function(saved_state_json)\r\n local App\r\n if game == \"Lancashire\" then\r\n App = require(\"mods/Brass/lib/App/Lancashire\")\r\n elseif game == \"Birmingham\" then\r\n App = require(\"mods/Brass/lib/App/Birmingham\")\r\n else\r\n error(\"Invalid value for \\\"game\\\".\")\r\n end\r\n\r\n local app = App:new(saved_state_json)\r\n TableLock.declare_and_set(_G, \"app\", app)\r\n app:run()\r\n end\r\n)\r\n\n----#include mods/Brass/lib/Global\n\nend)\n__bundle_register(\"mods/Brass/lib/App/Birmingham\", function(require, _LOADED, __bundle_register, __bundle_modules)\n-- ================================================================================\n-- Brass: Birmingham\n-- ================================================================================\n\n-- Modules.\nlocal Const = require(\"kintastic/lib/Const\")\nlocal Iters = require(\"kintastic/lib/Iters\")\nlocal Promise = require(\"kintastic/lib/Promise\")\nlocal StrUtils = require(\"kintastic/lib/StrUtils\")\nlocal TableLock = require(\"kintastic/lib/TableLock\")\nlocal TtsMsgUtils = require(\"kintastic/lib/TtsMsgUtils\")\nlocal TtsObject = require(\"kintastic/lib/Promise/TtsObject\")\nlocal TtsObjUtils = require(\"kintastic/lib/TtsObjUtils\")\nlocal App = require(\"mods/Brass/lib/App\")\n\n-- Imports.\nlocal const = Const.const\nlocal rconst = Const.rconst\nlocal ivalues = Iters.ivalues\nlocal starts_with = StrUtils.starts_with\nlocal lock = TableLock.lock\nlocal rlock = TableLock.rlock\nlocal broadcast_error = TtsMsgUtils.broadcast_error\nlocal set_transform_smooth = TtsObject.setTransformSmooth\nlocal take_object = TtsObject.takeObject\nlocal resolve_guids = TtsObjUtils.resolve_guids\n\n-- The class.\nlocal BirminghamApp = {\n}\n\n-- Inherit functions from App.\nlocal SUPER = App\n\nsetmetatable(BirminghamApp, {\n __index = SUPER,\n})\n\nBirminghamApp.mt = {\n __index = BirminghamApp,\n}\n\n\n-- ================================================================================\n-- Constructor\n\nfunction BirminghamApp.new(class, saved_state_json)\n return SUPER.new(class, \"Lancashire\", saved_state_json)\nend\n\n\n-- ================================================================================\n-- Object initialization\n\nfunction BirminghamApp:init(saved_state_json)\n self.initial_funds = 17\n self.loan_amount = 30\n self.has_immediate_vps = true\n self.money_value = 0\n SUPER.init(self, saved_state_json)\nend\n\n\nfunction BirminghamApp:init_industry_tile_data()\n -- Don't lock since used as lookup.\n self.industry_tile_data = rconst({\n [ \"Brewery I\" ] = lock({ type = \"Brewery\", level = 1, count = 2, canal_era = true, rail_era = false, cost_money = 5, cost_coal = 0, cost_iron = 1, beers_to_sell = nil, points = 4, income = 4, link_points = 2, can_develop = true }),\n [ \"Brewery II\" ] = lock({ type = \"Brewery\", level = 2, count = 2, canal_era = true, rail_era = true, cost_money = 7, cost_coal = 0, cost_iron = 1, beers_to_sell = nil, points = 5, income = 5, link_points = 2, can_develop = true }),\n [ \"Brewery III\" ] = lock({ type = \"Brewery\", level = 3, count = 2, canal_era = true, rail_era = true, cost_money = 9, cost_coal = 0, cost_iron = 1, beers_to_sell = nil, points = 7, income = 5, link_points = 2, can_develop = true }),\n [ \"Brewery IV\" ] = lock({ type = \"Brewery\", level = 4, count = 1, canal_era = false, rail_era = true, cost_money = 9, cost_coal = 0, cost_iron = 1, beers_to_sell = nil, points = 10, income = 5, link_points = 2, can_develop = true }),\n [ \"Coal Mine I\" ] = lock({ type = \"Coal Mine\", level = 1, count = 1, canal_era = true, rail_era = false, cost_money = 5, cost_coal = 0, cost_iron = 0, beers_to_sell = nil, points = 1, income = 4, link_points = 2, can_develop = true }),\n [ \"Coal Mine II\" ] = lock({ type = \"Coal Mine\", level = 2, count = 2, canal_era = true, rail_era = true, cost_money = 7, cost_coal = 0, cost_iron = 0, beers_to_sell = nil, points = 2, income = 7, link_points = 1, can_develop = true }),\n [ \"Coal Mine III\" ] = lock({ type = \"Coal Mine\", level = 3, count = 2, canal_era = true, rail_era = true, cost_money = 8, cost_coal = 0, cost_iron = 1, beers_to_sell = nil, points = 3, income = 6, link_points = 1, can_develop = true }),\n [ \"Coal Mine IV\" ] = lock({ type = \"Coal Mine\", level = 4, count = 2, canal_era = true, rail_era = true, cost_money = 10, cost_coal = 0, cost_iron = 1, beers_to_sell = nil, points = 4, income = 5, link_points = 1, can_develop = true }),\n [ \"Cotton Mill I\" ] = lock({ type = \"Cotton Mill\", level = 1, count = 3, canal_era = true, rail_era = false, cost_money = 12, cost_coal = 0, cost_iron = 0, beers_to_sell = 1, points = 5, income = 5, link_points = 1, can_develop = true }),\n [ \"Cotton Mill II\" ] = lock({ type = \"Cotton Mill\", level = 2, count = 2, canal_era = true, rail_era = true, cost_money = 14, cost_coal = 1, cost_iron = 0, beers_to_sell = 1, points = 5, income = 4, link_points = 2, can_develop = true }),\n [ \"Cotton Mill III\" ] = lock({ type = \"Cotton Mill\", level = 3, count = 3, canal_era = true, rail_era = true, cost_money = 16, cost_coal = 1, cost_iron = 1, beers_to_sell = 1, points = 9, income = 3, link_points = 1, can_develop = true }),\n [ \"Cotton Mill IV\" ] = lock({ type = \"Cotton Mill\", level = 4, count = 3, canal_era = true, rail_era = true, cost_money = 18, cost_coal = 1, cost_iron = 1, beers_to_sell = 1, points = 12, income = 2, link_points = 1, can_develop = true }),\n [ \"Iron Works I\" ] = lock({ type = \"Iron Works\", level = 1, count = 1, canal_era = true, rail_era = false, cost_money = 5, cost_coal = 1, cost_iron = 0, beers_to_sell = nil, points = 3, income = 3, link_points = 1, can_develop = true }),\n [ \"Iron Works II\" ] = lock({ type = \"Iron Works\", level = 2, count = 1, canal_era = true, rail_era = true, cost_money = 7, cost_coal = 1, cost_iron = 0, beers_to_sell = nil, points = 5, income = 3, link_points = 1, can_develop = true }),\n [ \"Iron Works III\" ] = lock({ type = \"Iron Works\", level = 3, count = 1, canal_era = true, rail_era = true, cost_money = 9, cost_coal = 1, cost_iron = 0, beers_to_sell = nil, points = 7, income = 2, link_points = 1, can_develop = true }),\n [ \"Iron Works IV\" ] = lock({ type = \"Iron Works\", level = 4, count = 1, canal_era = true, rail_era = true, cost_money = 12, cost_coal = 1, cost_iron = 0, beers_to_sell = nil, points = 9, income = 1, link_points = 1, can_develop = true }),\n [ \"Manufacturer I\" ] = lock({ type = \"Manufacturer\", level = 1, count = 1, canal_era = true, rail_era = false, cost_money = 8, cost_coal = 1, cost_iron = 0, beers_to_sell = 1, points = 3, income = 5, link_points = 2, can_develop = true }),\n [ \"Manufacturer II\" ] = lock({ type = \"Manufacturer\", level = 2, count = 2, canal_era = true, rail_era = true, cost_money = 10, cost_coal = 0, cost_iron = 1, beers_to_sell = 1, points = 5, income = 1, link_points = 1, can_develop = true }),\n [ \"Manufacturer III\" ] = lock({ type = \"Manufacturer\", level = 3, count = 1, canal_era = true, rail_era = true, cost_money = 12, cost_coal = 2, cost_iron = 0, beers_to_sell = 0, points = 4, income = 4, link_points = 0, can_develop = true }),\n [ \"Manufacturer IV\" ] = lock({ type = \"Manufacturer\", level = 4, count = 1, canal_era = true, rail_era = true, cost_money = 8, cost_coal = 0, cost_iron = 1, beers_to_sell = 1, points = 3, income = 6, link_points = 1, can_develop = true }),\n [ \"Manufacturer V\" ] = lock({ type = \"Manufacturer\", level = 5, count = 2, canal_era = true, rail_era = true, cost_money = 16, cost_coal = 1, cost_iron = 0, beers_to_sell = 2, points = 8, income = 2, link_points = 2, can_develop = true }),\n [ \"Manufacturer VI\" ] = lock({ type = \"Manufacturer\", level = 6, count = 1, canal_era = true, rail_era = true, cost_money = 20, cost_coal = 0, cost_iron = 0, beers_to_sell = 1, points = 7, income = 6, link_points = 1, can_develop = true }),\n [ \"Manufacturer VII\" ] = lock({ type = \"Manufacturer\", level = 7, count = 1, canal_era = true, rail_era = true, cost_money = 16, cost_coal = 1, cost_iron = 1, beers_to_sell = 0, points = 9, income = 4, link_points = 0, can_develop = true }),\n [ \"Manufacturer VIII\" ] = lock({ type = \"Manufacturer\", level = 8, count = 2, canal_era = true, rail_era = true, cost_money = 20, cost_coal = 0, cost_iron = 2, beers_to_sell = 1, points = 11, income = 1, link_points = 1, can_develop = true }),\n [ \"Pottery I\" ] = lock({ type = \"Pottery\", level = 1, count = 1, canal_era = true, rail_era = true, cost_money = 17, cost_coal = 0, cost_iron = 1, beers_to_sell = 1, points = 10, income = 5, link_points = 1, can_develop = false }),\n [ \"Pottery II\" ] = lock({ type = \"Pottery\", level = 2, count = 1, canal_era = true, rail_era = true, cost_money = 0, cost_coal = 1, cost_iron = 0, beers_to_sell = 1, points = 1, income = 1, link_points = 1, can_develop = true }),\n [ \"Pottery III\" ] = lock({ type = \"Pottery\", level = 3, count = 1, canal_era = true, rail_era = true, cost_money = 22, cost_coal = 2, cost_iron = 0, beers_to_sell = 2, points = 11, income = 5, link_points = 1, can_develop = false }),\n [ \"Pottery IV\" ] = lock({ type = \"Pottery\", level = 4, count = 1, canal_era = true, rail_era = true, cost_money = 0, cost_coal = 1, cost_iron = 0, beers_to_sell = 1, points = 1, income = 1, link_points = 1, can_develop = true }),\n [ \"Pottery V\" ] = lock({ type = \"Pottery\", level = 5, count = 1, canal_era = false, rail_era = true, cost_money = 24, cost_coal = 2, cost_iron = 0, beers_to_sell = 2, points = 20, income = 5, link_points = 1, can_develop = true }),\n })\nend\n\n\nfunction BirminghamApp:init_locations_and_links()\n -- Don't lock since used as lookup.\n self.locations = rconst({\n [ \"Belper\" ] = { \"Belper (West)\",\n \"Belper (Central)\",\n \"Belper (East)\" },\n [ \"Birmingham\" ] = { \"Birmingham (NW)\",\n \"Birmingham (NE)\",\n \"Birmingham (SW)\",\n \"Birmingham (SE)\" },\n [ \"Burton-on-Trent\" ] = { \"Burton-on-Trent (W)\",\n \"Burton-on-Trent (E)\" },\n [ \"Cannock\" ] = { \"Cannock (West)\",\n \"Cannock (East)\" },\n [ \"Coalbrookdale\" ] = { \"Coalbrookdale (W)\",\n \"Coalbrookdale (N)\",\n \"Coalbrookdale (E)\" },\n [ \"Coventry\" ] = { \"Coventry (West)\",\n \"Coventry (North)\",\n \"Coventry (East)\" },\n [ \"Derby\" ] = { \"Derby (West)\",\n \"Derby (North)\",\n \"Derby (East)\" },\n [ \"Dudley\" ] = { \"Dudley (West)\",\n \"Dudley (East)\" },\n [ \"Kidderminster\" ] = { \"Kidderminster (W)\",\n \"Kidderminster (E)\" },\n [ \"Leek\" ] = { \"Leek (West)\",\n \"Leek (East)\" },\n [ \"Nuneaton\" ] = { \"Nuneaton (West)\",\n \"Nuneaton (East)\" },\n [ \"Redditch\" ] = { \"Redditch (West)\",\n \"Redditch (East)\" },\n [ \"Stafford\" ] = { \"Stafford (West)\",\n \"Stafford (East)\" },\n [ \"Stoke-on-Trent\" ] = { \"Stoke-on-Trent (W)\",\n \"Stoke-on-Trent (N)\",\n \"Stoke-on-Trent (E)\" },\n [ \"Stone\" ] = { \"Stone (West)\",\n \"Stone (East)\" },\n [ \"Tamworth\" ] = { \"Tamworth (West)\",\n \"Tamworth (East)\" },\n [ \"Northern Unnamed\" ] = { \"Northern Unnamed\" },\n [ \"Southern Unnamed\" ] = { \"Southern Unnamed\" },\n [ \"Uttoxeter\" ] = { \"Uttoxeter (West)\",\n \"Uttoxeter (East)\" },\n [ \"Walsall\" ] = { \"Walsall (West)\",\n \"Walsall (East)\" },\n [ \"Wolverhampton\" ] = { \"Wolverhampton (W)\",\n \"Wolverhampton (E)\" },\n [ \"Worcester\" ] = { \"Worcester (West)\",\n \"Worcester (East)\" },\n })\n\n -- Don't lock since used as lookup.\n self.links = rconst({\n [ \"Belper - Derby\" ] = { canal = true, rail = true },\n [ \"Belper - Leek\" ] = { canal = false, rail = true },\n [ \"Birmingham - Coventry\" ] = { canal = true, rail = true },\n [ \"Birmingham - Dudley\" ] = { canal = true, rail = true },\n [ \"Birmingham - Nuneaton\" ] = { canal = false, rail = true },\n [ \"Birmingham - Oxford\" ] = { canal = true, rail = true },\n [ \"Birmingham - Redditch\" ] = { canal = false, rail = true },\n [ \"Birmingham - Tamworth\" ] = { canal = true, rail = true },\n [ \"Birmingham - Walsall\" ] = { canal = true, rail = true },\n [ \"Birmingham - Worcester\" ] = { canal = true, rail = true },\n [ \"Burton-on-Trent - Cannock\" ] = { canal = false, rail = true },\n [ \"Burton-on-Trent - Derby\" ] = { canal = true, rail = true },\n [ \"Burton-on-Trent - Stone\" ] = { canal = true, rail = true },\n [ \"Burton-on-Trent - Tamworth\" ] = { canal = true, rail = true },\n [ \"Burton-on-Trent - Walsall\" ] = { canal = true, rail = false },\n [ \"Cannock - Stafford\" ] = { canal = true, rail = true },\n [ \"Cannock - Northern Unnamed\" ] = { canal = true, rail = true },\n [ \"Cannock - Walsall\" ] = { canal = true, rail = true },\n [ \"Cannock - Wolverhampton\" ] = { canal = true, rail = true },\n [ \"Coalbrookdale - Kidderminster\" ] = { canal = true, rail = true },\n [ \"Coalbrookdale - Shrewsbury\" ] = { canal = true, rail = true },\n [ \"Coalbrookdale - Wolverhampton\" ] = { canal = true, rail = true },\n [ \"Coventry - Nuneaton\" ] = { canal = false, rail = true },\n [ \"Derby - Nottingham\" ] = { canal = true, rail = true },\n [ \"Derby - Uttoxeter\" ] = { canal = false, rail = true },\n [ \"Dudley - Kidderminster\" ] = { canal = true, rail = true },\n [ \"Dudley - Wolverhampton\" ] = { canal = true, rail = true },\n [ \"Gloucester - Redditch\" ] = { canal = true, rail = true },\n [ \"Gloucester - Worcester\" ] = { canal = true, rail = true },\n [ \"Kidderminster - Southern Unnamed - Worcester\" ] = { canal = true, rail = true },\n [ \"Leek - Stoke-on-Trent\" ] = { canal = true, rail = true },\n [ \"Nuneaton - Tamworth\" ] = { canal = true, rail = true },\n [ \"Redditch - Oxford\" ] = { canal = true, rail = true },\n [ \"Stafford - Stone\" ] = { canal = true, rail = true },\n [ \"Stoke-on-Trent - Stone\" ] = { canal = true, rail = true },\n [ \"Stoke-on-Trent - Warrington\" ] = { canal = true, rail = true },\n [ \"Stone - Uttoxeter\" ] = { canal = false, rail = true },\n [ \"Tamworth - Walsall\" ] = { canal = false, rail = true },\n [ \"Walsall - Wolverhampton\" ] = { canal = true, rail = true },\n })\n\n -- Don't lock since used as lookup.\n self.bonuses_by_external_location = const({\n [ \"Gloucester\" ] = 2,\n [ \"Nottingham\" ] = 2,\n [ \"Oxford\" ] = 2,\n [ \"Shrewsbury\" ] = 2,\n [ \"Warrington\" ] = 2,\n })\n\n SUPER.init_locations_and_links(self)\nend\n\n\nfunction BirminghamApp:init_objects()\n SUPER.init_objects(self)\n\n local guids = {\n coal_bag = \"e54c1a\",\n iron_bag = \"ac9020\",\n beer_bag = \"6ebfd8\",\n\n -- For 2, 3, and 4 players respectively.\n merchant_tile_decks = { \"856fbc\", \"02cf54\", \"ce01c4\" },\n\n wild_location_deck_zone = \"54a3da\",\n wild_industry_deck_zone = \"a3270a\",\n\n -- In the order they are emptied.\n coal_market_zones = { \"3c5ffd\", \"14aada\", \"ec2671\", \"39e20b\", \"56e563\", \"2e35ed\", \"6c1ee9\", \"bb3394\", \"d49b68\", \"14a883\", \"32a943\", \"165cc2\", \"1fb80c\", \"2ff284\" },\n iron_market_zones = { \"550e2a\", \"581ae8\", \"6581f5\", \"6c2b6d\", \"3bcd07\", \"2734e8\", \"0a7292\", \"2beec8\", \"ffd4d0\", \"ed2fdc\" },\n\n merchants = {\n -- Oxford 2, 3 and 4 players\n { merchant_zone = \"698532\", beer_zone = \"3000f5\" },\n { merchant_zone = \"ab9bbd\", beer_zone = \"34fecd\" },\n\n -- Gloucester 2, 3 and 4 players\n { merchant_zone = \"4e20da\", beer_zone = \"d70f79\" },\n { merchant_zone = \"db6a73\", beer_zone = \"876452\" },\n\n -- Shrewsbury 2, 3 and 4 players\n { merchant_zone = \"dadd84\", beer_zone = \"8e91f0\" },\n\n -- Warrington 3 and 4 players\n { merchant_zone = \"2b3380\", beer_zone = \"58bce3\" },\n { merchant_zone = \"88aa38\", beer_zone = \"12290c\" },\n\n -- Nottingham 4 players\n { merchant_zone = \"b44318\", beer_zone = \"1b3e88\" },\n { merchant_zone = \"eefd28\", beer_zone = \"1f418b\" },\n },\n\n -- We call each zone of a location a \"location square\".\n -- Using .getGMNotes() on the location square gets the name of the location.\n location_squares = {\n [ \"Belper (West)\" ] = \"86d147\",\n [ \"Belper (Central)\" ] = \"30a911\",\n [ \"Belper (East)\" ] = \"8dc82d\",\n [ \"Birmingham (NW)\" ] = \"33f755\",\n [ \"Birmingham (NE)\" ] = \"12686f\",\n [ \"Birmingham (SW)\" ] = \"ff7d65\",\n [ \"Birmingham (SE)\" ] = \"efed8b\",\n [ \"Burton-on-Trent (W)\" ] = \"38f370\",\n [ \"Burton-on-Trent (E)\" ] = \"68b7fb\",\n [ \"Cannock (West)\" ] = \"00c4ea\",\n [ \"Cannock (East)\" ] = \"d60870\",\n [ \"Coalbrookdale (W)\" ] = \"e49be9\",\n [ \"Coalbrookdale (N)\" ] = \"4cf6c2\",\n [ \"Coalbrookdale (E)\" ] = \"12b206\",\n [ \"Coventry (West)\" ] = \"aa5cd9\",\n [ \"Coventry (North)\" ] = \"75a660\",\n [ \"Coventry (East)\" ] = \"af6d14\",\n [ \"Derby (West)\" ] = \"cb5740\",\n [ \"Derby (North)\" ] = \"789ff1\",\n [ \"Derby (East)\" ] = \"3322ec\",\n [ \"Dudley (West)\" ] = \"970b48\",\n [ \"Dudley (East)\" ] = \"16493f\",\n [ \"Kidderminster (W)\" ] = \"d5cc71\",\n [ \"Kidderminster (E)\" ] = \"11e3b5\",\n [ \"Leek (West)\" ] = \"d8985b\",\n [ \"Leek (East)\" ] = \"1dde98\",\n [ \"Nuneaton (West)\" ] = \"a21200\",\n [ \"Nuneaton (East)\" ] = \"cdfaf8\",\n [ \"Redditch (West)\" ] = \"e1d2e8\",\n [ \"Redditch (East)\" ] = \"6dd500\",\n [ \"Stafford (West)\" ] = \"c23c28\",\n [ \"Stafford (East)\" ] = \"cd4849\",\n [ \"Stoke-on-Trent (W)\" ] = \"1953cc\",\n [ \"Stoke-on-Trent (N)\" ] = \"b3ccc1\",\n [ \"Stoke-on-Trent (E)\" ] = \"a050bc\",\n [ \"Stone (West)\" ] = \"53cde4\",\n [ \"Stone (East)\" ] = \"8d81e6\",\n [ \"Tamworth (West)\" ] = \"40b8ca\",\n [ \"Tamworth (East)\" ] = \"1dcb50\",\n [ \"Northern Unnamed\" ] = \"1101de\",\n [ \"Southern Unnamed\" ] = \"210464\",\n [ \"Uttoxeter (West)\" ] = \"b4887f\",\n [ \"Uttoxeter (East)\" ] = \"f00e0b\",\n [ \"Walsall (West)\" ] = \"f2ac6b\",\n [ \"Walsall (East)\" ] = \"858ccc\",\n [ \"Wolverhampton (W)\" ] = \"d8b5f3\",\n [ \"Wolverhampton (E)\" ] = \"313ef0\",\n [ \"Worcester (West)\" ] = \"b5dd82\",\n [ \"Worcester (East)\" ] = \"74f12e\",\n },\n\n -- Using .getGMNotes() on the link gets the name found here.\n link_zones = {\n [ \"Belper - Derby\" ] = \"67508c\",\n [ \"Belper - Leek\" ] = \"50cd15\",\n [ \"Birmingham - Coventry\" ] = \"6e89f4\",\n [ \"Birmingham - Dudley\" ] = \"8daa5f\",\n [ \"Birmingham - Nuneaton\" ] = \"628059\",\n [ \"Birmingham - Oxford\" ] = \"53fe28\",\n [ \"Birmingham - Redditch\" ] = \"3a8e4b\",\n [ \"Birmingham - Tamworth\" ] = \"cb87be\",\n [ \"Birmingham - Walsall\" ] = \"5a86d2\",\n [ \"Birmingham - Worcester\" ] = \"035fba\",\n [ \"Burton-on-Trent - Cannock\" ] = \"914cde\",\n [ \"Burton-on-Trent - Derby\" ] = \"e5ab74\",\n [ \"Burton-on-Trent - Stone\" ] = \"68cc40\",\n [ \"Burton-on-Trent - Tamworth\" ] = \"6dcbbf\",\n [ \"Burton-on-Trent - Walsall\" ] = \"4529a2\",\n [ \"Cannock - Stafford\" ] = \"fbe6a8\",\n [ \"Cannock - Northern Unnamed\" ] = \"9f31dd\",\n [ \"Cannock - Walsall\" ] = \"f8d409\",\n [ \"Cannock - Wolverhampton\" ] = \"49639b\",\n [ \"Coalbrookdale - Kidderminster\" ] = \"08896c\",\n [ \"Coalbrookdale - Shrewsbury\" ] = \"5f85d7\",\n [ \"Coalbrookdale - Wolverhampton\" ] = \"cffe8b\",\n [ \"Coventry - Nuneaton\" ] = \"b9d591\",\n [ \"Derby - Nottingham\" ] = \"b27ea5\",\n [ \"Derby - Uttoxeter\" ] = \"5bb5b2\",\n [ \"Dudley - Kidderminster\" ] = \"eafc5e\",\n [ \"Dudley - Wolverhampton\" ] = \"b77b35\",\n [ \"Gloucester - Redditch\" ] = \"b199d6\",\n [ \"Gloucester - Worcester\" ] = \"6b2c2c\",\n [ \"Kidderminster - Southern Unnamed - Worcester\" ] = \"4aa452\",\n [ \"Leek - Stoke-on-Trent\" ] = \"703509\",\n [ \"Nuneaton - Tamworth\" ] = \"908a01\",\n [ \"Redditch - Oxford\" ] = \"1576b4\",\n [ \"Stafford - Stone\" ] = \"e0ce81\",\n [ \"Stoke-on-Trent - Stone\" ] = \"a57efe\",\n [ \"Stoke-on-Trent - Warrington\" ] = \"a42ca0\",\n [ \"Stone - Uttoxeter\" ] = \"1b9c26\",\n [ \"Tamworth - Walsall\" ] = \"60ef3e\",\n [ \"Walsall - Wolverhampton\" ] = \"874549\",\n },\n }\n\n if self.state:get_game_started() then\n guids.merchant_tile_decks = nil\n end\n\n TableLock.merge(self.objects, resolve_guids(guids))\nend\n\n\nfunction BirminghamApp:init_resources()\n local objects = self.objects\n\n self.resources = rconst(rlock({\n coal = { resource_name = \"Coal\", bag = objects.coal_bag, market_zones = objects.coal_market_zones },\n iron = { resource_name = \"Iron\", bag = objects.iron_bag, market_zones = objects.iron_market_zones },\n beer = { resource_name = \"Beer\", bag = objects.beer_bag, market_zones = nil },\n }))\n\n SUPER.init_resources(self)\nend\n\n\n-- ================================================================================\n-- UI initialization\n\nfunction BirminghamApp:create_buttons()\n local game_board = self.objects.game_board\n\n SUPER.create_buttons(self)\n\n game_board.createButton({\n label=\"+\", click_function=\"on_click_add_coal_to_market\",\n position={ -7.745875, 13.7634, -1.006971 }, rotation={ 0, 180, 0 },\n height=300, width=300, font_color={ 0, 0, 0, 1 }, font_size=250,\n })\n game_board.createButton({\n label=\"-\", click_function=\"on_click_sub_coal_from_market\",\n position={-7.745875, 13.7634, -1.566973}, rotation={ 0, 180, 0 },\n height=300, width=300, font_color={ 0, 0, 0, 1 }, font_size=250,\n })\n\n game_board.createButton({\n label=\"+\", click_function=\"on_click_add_iron_to_market\",\n position={ -10.21544, 13.84522, -1.004541 }, rotation={ 0, 180, 0 },\n height=300, width=300, font_color={ 0, 0, 0, 1 }, font_size=250,\n })\n game_board.createButton({\n label=\"-\", click_function=\"on_click_sub_iron_from_market\",\n position={ -10.21544, 13.84522, -1.564543 }, rotation={ 0, 180, 0 },\n height=300, width=300, font_color={ 0, 0, 0, 1 }, font_size=250,\n })\nend\n\n\n-- ================================================================================\n-- Game advancement\n\nfunction BirminghamApp:end_turn()\n local state = self.state\n\n local current_player = state:get_current_player()\n\n -- Check if the player actually completed their turn.\n if not state:get_opt_skip_discard_check() then\n if not self:are_discards_full(current_player) then\n local player = Player[current_player]\n if player.seated then\n broadcast_error(current_player .. \", you can’t end your turn because you don’t have exactly 1 or 3 cards in each of your discard piles!\", current_player)\n else\n broadcast_error(\"The round can’t be ended because \" .. current_player .. \" doesn’t have exactly 1 or 3 cards in each of their discard piles!\")\n end\n\n return Promise:resolve()\n end\n end\n\n return SUPER.end_turn(self)\nend\n\n\n-- ================================================================================\n-- Setup\n\nfunction BirminghamApp:setup_canal_era()\n local promises = { }\n table.insert(promises, SUPER.setup_canal_era(self))\n table.insert(promises, self:distribute_merchant_tiles())\n\n return\n Promise:all_settled(promises)\n :next(Promise.all_settled_error_logger)\nend\n\n\n-- Distribute the correct merchant tiles.\n-- Destroy the rest.\nfunction BirminghamApp:distribute_merchant_tiles()\n local objects = self.objects\n\n local num_players = self.state:get_num_players()\n\n local promises = { }\n for i, merchant_tile_deck in ipairs(objects.merchant_tile_decks) do\n if i == num_players - 1 then\n merchant_tile_deck.shuffle()\n\n local n = #merchant_tile_deck.getObjects()\n for i = 1, n do\n local merchant_zone = objects.merchants[i].merchant_zone\n local beer_zone = objects.merchants[i].beer_zone\n\n table.insert(promises,\n take_object(merchant_tile_deck, {\n position = merchant_zone.getPosition(),\n flip = true,\n })\n :next(\n function(tile)\n if starts_with(tile.getGMNotes(), \"Buys \") then\n return take_object(objects.beer_bag, {\n position = beer_zone.getPosition(),\n })\n end\n end\n )\n )\n end\n else\n merchant_tile_deck.destruct()\n objects.merchant_tile_decks[i] = nil\n end\n end\n\n return\n Promise:all_settled(promises)\n :next(Promise.all_settled_error_logger)\nend\n\n\nfunction BirminghamApp:setup_rail_era()\n local promises = { }\n table.insert(promises, SUPER.setup_rail_era(self))\n table.insert(promises, self:restock_beer())\n\n return\n Promise:all_settled(promises)\n :next(Promise.all_settled_error_logger)\nend\n\n\nfunction BirminghamApp:restock_beer()\n local promises = { }\n for merchant in ivalues(self.objects.merchants) do\n local merchant_zone = merchant.merchant_zone\n local beer_zone = merchant.beer_zone\n\n for obj in ivalues(merchant_zone.getObjects()) do\n if starts_with(obj.getGMNotes(), \"Buys \") then\n local needs_replenishing = true\n for obj in ivalues(beer_zone.getObjects()) do\n if obj.getGMNotes() == \"Beer\" then\n needs_replenishing = false\n break\n end\n end\n\n if needs_replenishing then\n table.insert(promises,\n take_object(self.objects.beer_bag, {\n position = beer_zone.getPosition(),\n })\n )\n end\n\n break\n end\n end\n end\n\n return\n Promise:all_settled(promises)\n :next(Promise.all_settled_error_logger)\nend\n\n\n-- ================================================================================\n-- Discard pile manipulations\n\nfunction BirminghamApp:are_discards_full(color_name)\n for i = 1, 2 do\n local count = self:get_discarded_count(color_name, i)\n if count ~= 1 and count ~= 3 then\n return false\n end\n end\n\n return true\nend\n\n\nfunction BirminghamApp:clear_discarded_card(card)\n local id = card.getGMNotes()\n if id == \"Wild Location Card\" then\n card.setLock(false)\n return\n set_transform_smooth(card, {\n position = self.objects.wild_location_deck_zone.getPosition(),\n rotation = self.objects.wild_location_deck_zone.getRotation(),\n })\n :catch(||error(\"Error moving wild location card\"))\n elseif id == \"Wild Industry Card\" then\n card.setLock(false)\n return\n set_transform_smooth(card, {\n position = self.objects.wild_industry_deck_zone.getPosition(),\n rotation = self.objects.wild_industry_deck_zone.getRotation(),\n })\n :catch(||error(\"Error moving wild industry card\"))\n else\n card.destruct()\n return Promise:resolve()\n end\nend\n\n\nfunction BirminghamApp:clear_discarded_deck(deck)\n local promises = { }\n local pos = deck.getPosition()\n local inc = Vector({ 0, 0.2, 0 })\n for i = 1, #deck.getObjects() do\n pos = pos + inc\n table.insert(promises,\n take_object(deck, {\n index = 1,\n position = pos,\n })\n :next(|card|self:clear_discarded_card(card))\n )\n end\n\n return\n Promise:all_settled(promises)\n :next(Promise.all_settled_error_logger)\nend\n\n\n-- ================================================================================\n\nreturn BirminghamApp\n\nend)\n__bundle_register(\"mods/Brass/lib/App\", function(require, _LOADED, __bundle_register, __bundle_modules)\n-- ================================================================================\n-- Brass: Lancashire and Brass: Birmingham\n-- Quasi-stateless scripted version.\n\n-- ----------------------------------------\n-- Debugging commands.\n\n-- To start a game with insufficient players, use one of the following\n-- /execute start(2)\n-- /execute start(3)\n-- /execute start(4)\n\n-- To make simple to step through turns quickly when debuging, use the following:\n-- /execute start({ min_players = 2, skip_discard_check = true, cool_down = 0 })\n-- This also reduces the eras to one round each:\n-- /execute start({ min_players = 2, skip_discard_check = true, cool_down = 0, short = true })\n\n-- TODO:\n-- - Prevent scoring if the board fails to validate?\n-- - Prevent Rail Era start if players have cards in their hands?\n-- - Add debounce or cool-down to control panel buttons (but delay them rather than dropping them)?\n--\n-- - Hot seat support?\n-- - Replace start game buttons with buttons to start with virtual players?\n-- - Modify `remove_money_from_player` so that money is moved from wallet?\n-- -> Timing problems?\n-- - Support Income and Scores over 99?\n-- -> Technically, final scores over 99 are supported.\n-- -> Income over 99 is *extremely* unlikely.\n-- -> Score over 99 before final scoring is *very* unlikely.\n--\n-- - This module is monolithic! It needs to be split up.\n-- - Use GMNotes instead of guids.\n\n-- ================================================================================\n\n-- Modules.\nlocal ArrayUtils = require(\"kintastic/lib/ArrayUtils\")\nlocal Const = require(\"kintastic/lib/Const\")\nlocal Debouncer = require(\"kintastic/lib/Debouncer\")\nlocal DictUtils = require(\"kintastic/lib/DictUtils\")\nlocal Iters = require(\"kintastic/lib/Iters\")\nlocal Promise = require(\"kintastic/lib/Promise\")\nlocal StrUtils = require(\"kintastic/lib/StrUtils\")\nlocal TableLock = require(\"kintastic/lib/TableLock\")\nlocal TableUtils = require(\"kintastic/lib/TableUtils\")\nlocal TtsBase = require(\"kintastic/lib/Promise/TtsBase\")\nlocal TtsMsgUtils = require(\"kintastic/lib/TtsMsgUtils\")\nlocal TtsObject = require(\"kintastic/lib/Promise/TtsObject\")\nlocal TtsObjUtils = require(\"kintastic/lib/TtsObjUtils\")\nlocal TtsPlayerUtils = require(\"kintastic/lib/TtsPlayerUtils\")\nlocal TtsSaveEvent = require(\"kintastic/lib/TtsSaveEvent\")\nlocal TtsWait = require(\"kintastic/lib/Promise/TtsWait\")\nlocal TtsZoneUtils = require(\"kintastic/lib/TtsZoneUtils\")\nlocal TtsWebRequest = require(\"kintastic/lib/Promise/TtsWebRequest\")\nlocal Wrap = require(\"kintastic/lib/Wrap\")\nlocal State = require(\"mods/Brass/lib/State\")\n\n-- Imports.\nlocal filter = ArrayUtils.filter\nlocal first = ArrayUtils.first\nlocal format_item_list = ArrayUtils.format_item_list\nlocal make_set = ArrayUtils.make_set\nlocal shuffle = ArrayUtils.shuffle\nlocal const = Const.const\nlocal rconst = Const.rconst\nlocal debounce = Debouncer.debounce\nlocal pick = DictUtils.pick\nlocal get_keys = DictUtils.get_keys\nlocal dipairs = Iters.dipairs\nlocal ivalues = Iters.ivalues\nlocal divalues = Iters.divalues\nlocal keys = Iters.keys\nlocal values = Iters.values\nlocal split = StrUtils.split\nlocal lock = TableLock.lock\nlocal rlock = TableLock.rlock\nlocal map = TableUtils.map\nlocal spawn_object_from_data = TtsBase.spawnObjectData\nlocal broadcast_error = TtsMsgUtils.broadcast_error\nlocal broadcast_info = TtsMsgUtils.broadcast_info\nlocal broadcast_internal_error = TtsMsgUtils.broadcast_internal_error\nlocal pulse_obj = TtsMsgUtils.pulse_obj\nlocal print_error = TtsMsgUtils.print_error\nlocal print_info = TtsMsgUtils.print_info\nlocal get_abs_height = TtsObject.get_abs_height\nlocal get_drop_pos = TtsObject.get_drop_pos\nlocal move_atop = TtsObject.moveAtop\nlocal move_atop_smooth = TtsObject.moveAtopSmooth\nlocal set_transform_smooth = TtsObject.setTransformSmooth\nlocal take_object = TtsObject.takeObject\nlocal resolve_guids = TtsObjUtils.resolve_guids\nlocal get_host = TtsPlayerUtils.get_host\nlocal get_seated_color_names = TtsPlayerUtils.get_seated_color_names\nlocal get_seated_players = TtsPlayerUtils.get_seated_players\nlocal decolor = TtsPlayerUtils.decolor\nlocal find_zone = TtsZoneUtils.find_zone\nlocal wait_condition = TtsWait.cond\nlocal wait_frame = TtsWait.frame\n\n-- Forward declerations.\nlocal to_csv\nlocal to_tsv\n\n-- The class.\nlocal App = {\n event_listeners = { }\n}\n\nApp.mt = {\n __index = App,\n}\n\n\n-- ================================================================================\n-- Constructor\n\nfunction App.new(class, mod_name, saved_state_json)\n local self = setmetatable({}, class.mt)\n self.class = class\n self.mod_name = mod_name\n self:init(saved_state_json)\n return self\nend\n\n\n-- ================================================================================\n-- Object initialization\n\nfunction App:init(saved_state_json)\n -- self.initial_funds, self.loan_amount, self.has_immediate_vps and self.money_value are populated by subclasses.\n\n self:init_state(saved_state_json) -- Populates self.state.\n self:init_industry_tile_data() -- Populates self.industry_tile_data.\n self:init_locations_and_links() -- Populates self.locations and self.links, self.bonuses_by_external_location, self.loc_names_by_link_name and self.link_names_by_loc_name.\n self:init_objects() -- Populates self.objects.\n self:init_resources() -- Populates self.resources and self.resource_id_by_name.\n self:init_score_board() -- Populates self.score_board_rows.\n\n self.control_panel_height = tonumber(UI.getAttribute(\"PurpleWindow\", \"height\"))\nend\n\n\nfunction App:init_state(saved_state_json)\n self.state = State:new(self)\n\n if saved_state_json and saved_state_json ~= \"\" then\n print(\"Loading saved game.\")\n local saved_state = JSON.decode(saved_state_json)\n self.state:merge_saved_state(saved_state)\n end\nend\n\n\nfunction App:init_locations_and_links()\n local objects = self.objects\n\n -- self.locations, self.links and self.bonuses_by_external_location is populated by subclasses.\n\n local loc_names_by_link_name = { }\n local link_names_by_loc_name = { }\n\n for loc_name in keys(self.locations) do\n link_names_by_loc_name[loc_name] = { }\n end\n\n for loc_name in keys(self.bonuses_by_external_location) do\n link_names_by_loc_name[loc_name] = { }\n end\n\n for link_name in keys(self.links) do\n loc_names_by_link_name[link_name] = { }\n for loc_name in link_name:gsub(\" %- \", \"|\"):gmatch(\"([^|]+)\") do\n if self.bonuses_by_external_location[loc_name] or self.locations[loc_name] then\n table.insert(loc_names_by_link_name[link_name], loc_name)\n table.insert(link_names_by_loc_name[loc_name], link_name)\n else\n broadcast_internal_error(\"Link \" .. link_name .. \" references unknown location \" .. loc_name)\n end\n end\n end\n\n self.loc_names_by_link_name = rconst(rlock(loc_names_by_link_name))\n self.link_names_by_loc_name = rconst(rlock(link_names_by_loc_name))\n\n --\n\n local neighbours_by_loc_name = { }\n\n for loc_name in keys(self.locations) do\n neighbours_by_loc_name[loc_name] = { }\n for link_name in ivalues(link_names_by_loc_name[loc_name]) do\n for neighbour_name in ivalues(loc_names_by_link_name[link_name]) do\n if loc_name ~= neighbour_name then\n table.insert(neighbours_by_loc_name[loc_name], neighbour_name)\n end\n end\n end\n end\n\n self.neighbours_by_loc_name = rconst(rlock(neighbours_by_loc_name))\nend\n\n\nfunction App:init_objects()\n local state = self.state\n local num_players = state:get_num_players()\n\n -- Additional elements are added to self.objects by subclasses.\n\n local guids = {\n game_board = \"4ee1f2\",\n game_table = \"02b512\",\n game_board_area = \"b1585e\",\n sound_effects = \"44828f\",\n sound_effects_additional = \"be6906\", -- Not actually used at this time.\n\n start_button = \"0e63cb\",\n\n money_bags = {\n [ \"Gold\" ] = \"3e9524\",\n [ \"Silver\" ] = \"85f55a\",\n [ \"Bronze\" ] = \"e5d759\",\n },\n\n -- For 2, 3, and 4 players respectively.\n card_deck_bags = { \"959e1a\", \"03115c\", \"d7877c\" },\n\n play_deck_zone = \"497481\",\n\n -- Discard areas ordered left to right.\n players = {\n [ \"Orange\" ] = { mat = \"535035\", turn_order_token = \"749e60\", income_marker = \"42742a\", score_marker = \"f890c5\", discard_areas = { \"2e028e\", \"6c9ecf\" }, wallet_bowl = \"f4d107\", link_bag = \"3fd996\", canal_link = \"d319a0\", railway_link = \"5cd3b7\" },\n [ \"Purple\" ] = { mat = \"9f5d4d\", turn_order_token = \"e19c38\", income_marker = \"479c68\", score_marker = \"fa02ec\", discard_areas = { \"59dfbc\", \"03e3a4\" }, wallet_bowl = \"6e1823\", link_bag = \"0354b2\", canal_link = \"3026c3\", railway_link = \"2b73b5\" },\n [ \"Teal\" ] = { mat = \"c924e1\", turn_order_token = \"1d7a31\", income_marker = \"b1dbec\", score_marker = \"08f261\", discard_areas = { \"24b3dc\", \"a894b0\" }, wallet_bowl = \"ab3868\", link_bag = \"02fb12\", canal_link = \"b8d1b6\", railway_link = \"ea9667\" },\n [ \"Yellow\" ] = { mat = \"918d17\", turn_order_token = \"dd63fc\", income_marker = \"753c24\", score_marker = \"2d162b\", discard_areas = { \"282c08\", \"df91cf\" }, wallet_bowl = \"820239\", link_bag = \"219821\", canal_link = \"e808b2\", railway_link = \"80c4b1\" },\n },\n\n player_turns = {\n { turn_order_token_zone = \"471072\", bowl = \"456c88\" },\n { turn_order_token_zone = \"c962ad\", bowl = \"2666ed\" },\n { turn_order_token_zone = \"aa57da\", bowl = \"f8b045\" },\n { turn_order_token_zone = \"6bfba6\", bowl = \"c740af\" },\n },\n\n track_zones = {\n \"f2074f\", \"2b8c8a\", \"b75c1a\", \"66d962\", \"1324f5\", \"37940b\", \"1b3c0a\", \"4796e2\", \"e04d51\", \"54e6a9\", -- 0 .. 9\n \"f9ae21\", \"de4170\", \"a12840\", \"aa4dd4\", \"0f6808\", \"cad61b\", \"a509b7\", \"6f2d85\", \"1827b2\", \"81c467\", -- 10 .. 19\n \"b7cca3\", \"3f0cb2\", \"dbdda8\", \"a30e95\", \"d53c52\", \"5c080b\", \"664292\", \"521cbd\", \"1c0ce7\", \"4efb9f\", -- 20 .. 29\n \"b75c8f\", \"b2e4d8\", \"cccda5\", \"432e13\", \"38bbe6\", \"d25ee0\", \"aef11e\", \"4c8952\", \"30534b\", \"acbfe8\", -- 30 .. 39\n \"31937d\", \"989c9e\", \"bb92aa\", \"8d54fb\", \"fa3a9f\", \"d4bf75\", \"388124\", \"fa77cb\", \"cf8e95\", \"4cfc99\", -- 40 .. 49\n \"2f99d1\", \"7ce05d\", \"7a9b26\", \"f57c65\", \"7545fe\", \"635261\", \"1ca0be\", \"2eadcd\", \"2f96ab\", \"17a06f\", -- 50 .. 59\n \"083a7c\", \"80d90e\", \"c5369e\", \"052676\", \"bffa84\", \"952598\", \"ea7ce4\", \"f05e47\", \"cffcce\", \"eb1084\", -- 60 .. 69\n \"58fbc3\", \"9a5110\", \"9c1585\", \"e9bf39\", \"cdb362\", \"3eec34\", \"d14f1d\", \"d2588c\", \"21bbb7\", \"b2a364\", -- 70 .. 79\n \"38fc99\", \"5bf198\", \"97dbc2\", \"5a45be\", \"8944ae\", \"8b4d2f\", \"d36f07\", \"d9c3e5\", \"fd513a\", \"2ffeb2\", -- 80 .. 89\n \"dfd2d8\", \"b9402a\", \"e6a17b\", \"ec970d\", \"ded76c\", \"f74296\", \"2ac41f\", \"065de7\", \"2e57c0\", \"710a1a\", -- 90 .. 99\n },\n\n locations = nil, -- Populated by subclass.\n links = nil, -- Populated by subclass.\n }\n\n if state:get_game_started() then\n local rail_era_started = state:get_current_phase() >= App.Phases.RAIL_ERA_ROUND\n\n guids.start_button = nil\n\n guids.card_deck_bags = pick(guids.card_deck_bags,\n |i, guid|i == num_players - 1 and not rail_era_started\n )\n\n guids.players = pick(guids.players,\n |color_name, guid|state:is_active_player(color_name)\n )\n\n guids.player_turns = filter(guids.player_turns,\n |i, player_turn|i <= num_players\n )\n\n for color_name in ivalues(state:get_active_players()) do\n local player = guids.players[color_name]\n player.canal_link = nil\n if rail_era_started then\n player.railway_link = nil\n end\n end\n end\n\n self.objects = rlock(resolve_guids(guids))\nend\n\n\nfunction App:init_resources()\n -- self.resources is populated by subclasses.\n\n local resource_id_by_name = { }\n for resource_id, resource in pairs(self.resources) do\n resource_id_by_name[ resource.resource_name ] = resource_id\n end\n\n self.resource_id_by_name = rconst(resource_id_by_name)\nend\n\n\nfunction App:init_score_board()\n local score_board_rows = {\n { id = \"canal_immediate\", text = \"Canal Merchants\" },\n { id = \"canal_links\", text = \"Canal Links\" },\n { id = \"canal_industries\", text = \"Canal Industries\" },\n { id = \"canal_era\", text = \"Canal Era\" },\n { id = \"rail_immediate\", text = \"Rail Merchants\" },\n { id = \"rail_links\", text = \"Rail Links\" },\n { id = \"rail_industries\", text = \"Rail Industries\" },\n { id = \"rail_money\", text = \"Money\" },\n { id = \"rail_era\", text = \"Rail Era\" },\n { id = \"total\", text = \"Total\" },\n { id = \"position\", text = \"Position\" },\n }\n\n if not self.has_immediate_vps then\n score_board_rows = filter(score_board_rows, |i,row|row.id ~= \"canal_immediate\" and row.id ~= \"rail_immediate\")\n end\n\n if not self.money_value or self.money_value == 0 then\n score_board_rows = filter(score_board_rows, |i,row|row.id ~= \"rail_money\")\n end\n\n self.score_board_rows = score_board_rows\nend\n\n\n-- ================================================================================\n-- onLoad, the object is constructed, then this is called.\n\nfunction App:run()\n self:mega_freeze()\n self:add_event_listeners()\n self:init_ui()\n\n self:check_if_latest()\n :catch(function(reason) log(reason) end)\n :done()\n\n Wait.time(||self:hand_fixer(), 10, -1)\n\n for player in ivalues(Player.getPlayers()) do\n self:onPlayerConnect(player)\n end\nend\n\n\n-- ================================================================================\n-- Event utilities\n\nfunction App.add_event_listener(class, name, handler)\n class[name] = handler\n App.event_listeners[name] = handler\nend\n\n\nfunction App:add_event_listeners()\n for name, handler in pairs(self.event_listeners) do\n Wrap.add_event_listener(name, |reserved, ...|handler(self, ...))\n end\nend\n\n\n-- ================================================================================\n-- Global constants\n\n-- Values for current phase.\nApp.Phases = const(lock({\n NOT_STARTED = 1,\n CANAL_ERA_ROUND = 2,\n CANAL_ERA_INTER_ROUND = 3,\n CANAL_ERA_SCORE = 4,\n INTER_ERA = 5,\n RAIL_ERA_ROUND = 6,\n RAIL_ERA_INTER_ROUND = 7,\n RAIL_ERA_SCORE = 8,\n GAME_ENDED = 9,\n}))\n\n-- 0-based indexes for editButton.\nApp.ButtonIndexes = const(lock({\n GB_GAME_INFO = 0,\n}))\n\nApp.Errors = {\n EINSUFFICIENT_FUNDS = \"Insufficient funds\"\n}\n\nApp.MAX_LINK_VALUE = 12\n\n\n-- ================================================================================\n-- UI initialization\n\nfunction App:mega_freeze()\n local objects = self.objects\n\n for obj in ivalues({\n objects.game_board,\n objects.game_table,\n objects.game_board_area,\n objects.sound_effects,\n objects.sound_effects_additional,\n }) do\n obj.interactable = false\n obj.tooltip = false\n obj.setLock(true)\n end\n\n -- Make the sound cubes incorporeal.\n for obj in ivalues({\n objects.sound_effects,\n objects.sound_effects_additional,\n }) do\n obj.getComponent(\"Rigidbody\").set(\"detectCollisions\", false)\n end\nend\n\n\nfunction App:init_ui()\n self.ui_state = { } -- Used by update_ui to control effects.\n\n self:create_buttons()\n\n self.advance_game_button = debounce(\n \"on_click_advance_game\",\n function(name)\n UI.setAttribute(\"advance_game_button\", \"onClick\", name)\n end,\n |...|self:on_click_advance_game(...),\n {\n on_disable = function()\n UI.setAttribute(\"advance_game_button\", \"interactable\", false)\n end,\n on_enable = function()\n UI.setAttribute(\"advance_game_button\", \"interactable\", true)\n end\n }\n )\n\n -- Setup hook to update amount in control panel.\n for color_name, player in pairs(self.objects.players) do\n local bowl = player.wallet_bowl\n bowl.setTable(\"updateHook\", {\n \"Global\",\n \"on_wallet_bowl_update\",\n { color_name = color_name },\n })\n end\n\n self:build_score_board()\n :next(||self:update_ui())\n :done()\nend\n\n\nfunction App:create_buttons()\n local game_board = self.objects.game_board\n\n local position = game_board.positionToLocal({ 0, 1.52, -14 })\n\n local scale = game_board.getScale()\n scale.x = 1/scale.x\n scale.y = 1\n scale.z = 1/scale.z\n\n -- Game status label.\n -- ButtonIndexes.GB_GAME_INFO\n game_board.createButton({\n label=\"\", click_function=\"on_click_dummy\",\n position=position, rotation={ 0, 180, 0 }, scale=scale,\n height=0, width=0, font_color={ 1, 1, 1 }, font_size=400,\n })\nend\n\n\nlocal update_ui_dispatch_table = {\n [ App.Phases.NOT_STARTED ] = function(state)\n return\n \"Click “Start Game”\",\n \"Start Game\",\n false,\n false\n end,\n [ App.Phases.CANAL_ERA_ROUND ] = function(state)\n return\n \"Canal Era, Round \" .. state:get_current_round() .. \" of \" .. state:get_num_rounds(),\n \"End \" .. state:get_current_player() ..\"’s Turn\",\n false,\n true\n end,\n [ App.Phases.CANAL_ERA_INTER_ROUND ] = function(state)\n return\n \"Canal Era, Round \" .. state:get_current_round() .. \" of \" .. state:get_num_rounds(),\n \"Start the Next Round\",\n true,\n true\n end,\n [ App.Phases.CANAL_ERA_SCORE ] = function(state)\n return\n \"End of the Canal Era\",\n \"Score the Canal Era\",\n true,\n true\n end,\n [ App.Phases.INTER_ERA ] = function(state)\n return\n \"End of the Canal Era\",\n \"Start the Rail Era\",\n true,\n true\n end,\n [ App.Phases.RAIL_ERA_ROUND ] = function(state)\n return\n \"Rail Era, Round \" .. state:get_current_round() .. \" of \" .. state:get_num_rounds(),\n \"End \" .. state:get_current_player() ..\"’s Turn\",\n false,\n true\n end,\n [ App.Phases.RAIL_ERA_INTER_ROUND ] = function(state)\n return\n \"Rail Era, Round \" .. state:get_current_round() .. \" of \" .. state:get_num_rounds(),\n \"Start the Next Round\",\n true,\n true\n end,\n [ App.Phases.RAIL_ERA_SCORE ] = function(state)\n return\n \"End of the Rail Era\",\n \"Score the Rail Era\",\n true,\n true\n end,\n [ App.Phases.GAME_ENDED ] = function(state)\n return\n state:get_game_result(),\n \"Game Over!\",\n false,\n false\n end,\n}\n\n\nfunction App:update_ui()\n local state = self.state\n local ui_state = self.ui_state\n\n local current_phase = state:get_current_phase()\n local current_round = state:get_current_round()\n local current_player = state:get_current_player()\n\n local game_info_label, advance_game_button_label, announce, show_control_panel =\n update_ui_dispatch_table[current_phase](state)\n\n -- Avoid repeating announces if there are no state changes.\n if announce then\n announce =\n ( ui_state.current_phase ~= current_phase\n or ui_state.current_round ~= current_round\n or ui_state.current_player ~= current_player\n )\n end\n\n ui_state.current_phase = current_phase\n ui_state.current_round = current_round\n ui_state.current_player = current_player\n\n self.objects.game_board.editButton({ index=App.ButtonIndexes.GB_GAME_INFO, label=game_info_label })\n UI.setValue(\"advance_game_button_text\", advance_game_button_label)\n\n local authorized\n if current_player then\n authorized = current_player\n else\n authorized = \"Admin\"\n end\n\n for color_name in keys(self.objects.players) do\n UI.setAttribute(color_name .. \"Window\", \"active\", show_control_panel and state:is_active_player(color_name))\n end\n\n UI.setAttribute(\"advance_game_button_admin_box\", \"active\", authorized == \"Admin\")\n UI.setAttribute(\"advance_game_button_orange_box\", \"active\", authorized == \"Orange\")\n UI.setAttribute(\"advance_game_button_purple_box\", \"active\", authorized == \"Purple\")\n UI.setAttribute(\"advance_game_button_teal_box\", \"active\", authorized == \"Teal\")\n UI.setAttribute(\"advance_game_button_yellow_box\", \"active\", authorized == \"Yellow\")\n\n if announce then\n self:announce_admin_turn()\n end\nend\n\n\n-- ================================================================================\n-- Non-UI event handlers\n\nApp:add_event_listener(\"onSave\", function(self)\n local saved_state = self.state:serialize()\n if saved_state then\n SELF.script_state = JSON.encode(saved_state)\n end\nend)\n\n\nApp:add_event_listener(\"onPlayerConnect\", function(self, player)\n if player.steam_id == \"76561198219839669\" then\n if not player.admin then\n player.promote()\n end\n\n if not Player[\"Purple\"].seated then\n player.changeColor(\"Purple\")\n end\n end\nend)\n\n\nApp:add_event_listener(\"onChangeColor\", function(self, player)\n local current_player = self.state:get_current_player()\n if current_player == player.color then\n self:announce_player_turn(current_player)\n end\nend)\n\n\n-- ================================================================================\n-- UI event handlers\n\nApp:add_event_listener(\"on_click_min_max_window\", function(self, player, value, id)\n self:min_max_window(player.color)\nend)\n\n\nApp:add_event_listener(\"on_click_show_score_board\", function(self, player, value, id)\n self:show_score_board(player.color)\nend)\n\n\nApp:add_event_listener(\"on_click_hide_score_board\", function(self, player, value, id)\n self:hide_score_board(player.color)\nend)\n\n\nApp:add_event_listener(\"start\", function(self, opts)\n local state = self.state\n if state:get_game_started() then return end\n\n if opts then\n if type(opts) == \"number\" then\n state:set_opt_min_players(opts)\n else\n state:merge_opts(opts)\n end\n end\n\n local debouncer = self.advance_game_button\n debouncer:set_opt_cool_down( state:get_opt_cool_down() or 1.5 )\n\n on_click_start_game(self.objects.start_button, get_host().color, \"-1\")\nend)\n\n\nApp:add_event_listener(\"on_click_start_game\", function(self, obj, color_name, mouse_button)\n if self.state:get_game_started() then\n return\n end\n\n local debouncer = self.advance_game_button\n debouncer:call(Player[color_name], mouse_button, \"advance_game_button\")\nend)\n\n\nfunction App:on_click_advance_game(debouncer, button_used, player, mouse_button, button_id)\n if player.color == \"Grey\" then\n return\n end\n\n -- Admins can always press this button.\n if not player.admin then\n local current_player = self.state:get_current_player()\n if current_player and Player[current_player].seated then\n -- Only a specific non-admin can press the button at this time.\n if player.color ~= current_player then\n -- This is not that player.\n broadcast_error(player.color .. \", only \" .. allowed_to_advance_game .. \" can advance the game at this time.\", player.color)\n return\n end\n else\n -- Only an admin can press the button at this time.\n broadcast_error(player.color .. \", only the host or a promoted player can advance the game at this time.\", player.color)\n return\n end\n end\n\n button_used()\n\n self.advance_game_button:disable()\n\n self:advance_game()\n :finally(\n function()\n if self.state:get_current_phase() ~= App.Phases.GAME_ENDED then\n self.advance_game_button:enable()\n end\n end\n )\n :done()\nend\n\n\nApp:add_event_listener(\"on_click_add_coal_to_market\", function(self, obj, color_name, mouse_button) if color_name == \"Grey\" then return end self:add_resource_to_market( color_name, self.resources.coal ) end)\nApp:add_event_listener(\"on_click_sub_coal_from_market\", function(self, obj, color_name, mouse_button) if color_name == \"Grey\" then return end self:sub_resource_from_market( color_name, self.resources.coal ) end)\nApp:add_event_listener(\"on_click_add_iron_to_market\", function(self, obj, color_name, mouse_button) if color_name == \"Grey\" then return end self:add_resource_to_market( color_name, self.resources.iron ) end)\nApp:add_event_listener(\"on_click_sub_iron_from_market\", function(self, obj, color_name, mouse_button) if color_name == \"Grey\" then return end self:sub_resource_from_market( color_name, self.resources.iron ) end)\n\n\nApp:add_event_listener(\"on_click_add1\", function(self, player, value, id)\n if not self.state:get_game_started() or not self.state:is_active_player(player.color) then return end\n self:give_money_to_player_announced(player.color, 1)\nend)\n\n\nApp:add_event_listener(\"on_click_add5\", function(self, player, value, id)\n if not self.state:get_game_started() or not self.state:is_active_player(player.color) then return end\n self:give_money_to_player_announced(player.color, 5)\nend)\n\n\nApp:add_event_listener(\"on_click_add15\", function(self, player, value, id)\n if not self.state:get_game_started() or not self.state:is_active_player(player.color) then return end\n self:give_money_to_player_announced(player.color, 15)\nend)\n\n\nApp:add_event_listener(\"on_click_pay1\", function(self, player, value, id)\n if not self.state:get_game_started() or not self.state:is_active_player(player.color) then return end\n self:spend_money_announced(player.color, 1)\nend)\n\n\nApp:add_event_listener(\"on_click_pay5\", function(self, player, value, id)\n if not self.state:get_game_started() or not self.state:is_active_player(player.color) then return end\n self:spend_money_announced(player.color, 5)\nend)\n\n\nApp:add_event_listener(\"on_click_pay15\", function(self, player, value, id)\n if not self.state:get_game_started() or not self.state:is_active_player(player.color) then return end\n self:spend_money_announced(player.color, 15)\nend)\n\n\nApp:add_event_listener(\"on_click_income_inc\", function(self, player, value, id)\n if not self.state:get_game_started() or not self.state:is_active_player(player.color) then return end\n self:income_inc(player.color)\nend)\n\n\nApp:add_event_listener(\"on_click_income_dec\", function(self, player, value, id)\n if not self.state:get_game_started() or not self.state:is_active_player(player.color) then return end\n self:income_dec(player.color)\nend)\n\n\nApp:add_event_listener(\"on_click_take_loan\", function(self, player, value, id)\n if not self.state:get_game_started() or not self.state:is_active_player(player.color) then return end\n self:take_loan(player.color)\nend)\n\n\nApp:add_event_listener(\"on_wallet_bowl_update\", function(self, args)\n local value = args.value\n local color_name = args.data.color_name\n local title_id = color_name .. \"Title\"\n UI.setValue(title_id, \"£\" .. value .. \" Available\")\nend)\n\n\nApp:add_event_listener(\"on_click_dummy\", function() end)\n\n\n-- ================================================================================\n-- Player's control panel window\n\nfunction App:min_max_window(color_name)\n local window_id = color_name .. \"Window\"\n local topbar_id = color_name .. \"TopBar\"\n local content_id = color_name .. \"Content\"\n if (tonumber(UI.getAttribute(window_id, \"height\")) > tonumber(UI.getAttribute(topbar_id, \"height\"))) then\n local title_height = tonumber(UI.getAttribute(topbar_id, \"height\"))\n local offset = ( self.control_panel_height - title_height ) / 2\n UI.setAttribute(window_id, \"offsetXY\", \"0 \" .. offset)\n UI.setAttribute(window_id, \"height\", title_height)\n UI.hide(content_id)\n else\n UI.setAttribute(window_id, \"offsetXY\", \"0 0\")\n UI.setAttribute(window_id, \"height\", self.control_panel_height)\n UI.show(content_id)\n end\nend\n\n\n-- ================================================================================\n-- Score board window\n\nfunction App:build_score_board()\n local score_board_rows = self.score_board_rows\n\n local padding = 1\n local major_padding = 3\n local title_height = 25\n local col_hdr_height = 149\n local row_hdr_width = 124\n local cell_width = 49\n local cell_height = 24\n\n local xs = { }\n do\n local x = padding table.insert(xs, x)\n x = x + row_hdr_width + major_padding table.insert(xs, x)\n x = x + cell_width + padding table.insert(xs, x)\n x = x + cell_width + padding table.insert(xs, x)\n x = x + cell_width + padding table.insert(xs, x)\n x = x + cell_width + padding table.insert(xs, x)\n end\n\n local ys = { }\n do\n local y = 0 - title_height - padding\n table.insert(ys, y)\n\n y = y - col_hdr_height - major_padding\n table.insert(ys, y)\n\n for i, row in ipairs(score_board_rows) do\n if row.id == \"canal_era\" or row.id == \"rail_era\" then\n y = y - cell_height - major_padding\n else\n y = y - cell_height - padding\n end\n\n table.insert(ys, y)\n end\n end\n\n local xml = UI.getXmlTable()\n\n local cell_eles = { }\n\n -- Title bar.\n table.insert(cell_eles,\n { tag=\"Panel\", attributes={ class=\"ScoreBoardTitleBar\", offsetXY=\"0 0\" }, children={\n { tag=\"Button\", attributes={ id=\"sb_hide_button\", class=\"ScoreBoardTitleBarBttn\", onClick=\"on_click_hide_score_board\" }, children={\n { tag=\"Image\", attributes={ image=\"Popup Close\" } },\n } },\n } }\n )\n\n -- Row 1: Column headers.\n table.insert(cell_eles,\n { tag=\"Panel\", attributes={ class=\"ScoreBoardCorner\", offsetXY=(xs[1]-padding)..\" \"..(ys[1]+padding) } }\n )\n for player_idx = 1, 4 do\n table.insert(cell_eles,\n { tag=\"Panel\", attributes={ id=\"sb_p\"..player_idx..\"_hdr\", class=\"ScoreBoardColHdr\", offsetXY=xs[player_idx+1]..\" \"..ys[1] }, children={\n { tag=\"Text\", attributes={ id=\"sb_p\"..player_idx..\"_name\", class=\"ScoreBoardColHdrText\" } },\n } }\n )\n end\n\n -- Remaining rows.\n for row_idx, row in ipairs(score_board_rows) do\n table.insert(cell_eles,\n { tag=\"Panel\", attributes={ class=\"ScoreBoardRowHdr\", offsetXY=xs[1]..\" \"..ys[row_idx+1] }, children={\n { tag=\"Text\", attributes={ class=\"ScoreBoardRowHdrText\" }, value=row.text },\n } }\n )\n\n for player_idx = 1, 4 do\n table.insert(cell_eles,\n { tag=\"Panel\", attributes={ class=\"ScoreBoardCell\", offsetXY=xs[player_idx+1]..\" \"..ys[row_idx+1] }, children={\n { tag=\"Text\", attributes={ id=\"sb_p\"..player_idx..\"_\"..row.id, class=\"ScoreBoardCellText\" } },\n } }\n )\n end\n end\n\n table.insert(xml,\n { tag=\"Panel\", attributes={ id=\"sb_window\", class=\"ScoreBoardWindow\", width=xs[#xs], height=-ys[#ys], active=\"false\" }, children=cell_eles }\n )\n\n UI.setXmlTable(xml, cell_eles)\n\n return\n Promise:resolve()\n :next(wait_frame)\nend\n\n\nfunction App:enable_score_board(final)\n local state = self.state\n local score_board_rows = self.score_board_rows\n\n local score_data = state:get_score_data()\n local player_names_by_color_name = state:get_player_names_by_color_name()\n\n local all_colors = table.concat(Player.getColors(), \"|\")\n local all_but_grey = table.concat(filter(Player.getColors(), |_|_ ~= \"Grey\"), \"|\")\n\n local color_names = get_keys(score_data)\n table.sort(color_names, |a,b|score_data[a].order < score_data[b].order)\n\n for player_idx, color_name in ipairs(color_names) do\n local player_score_data = score_data[color_name]\n\n UI.setAttribute(\"sb_p\"..player_idx..\"_name\", \"color\", color_name)\n UI.setValue(\"sb_p\"..player_idx..\"_name\", player_names_by_color_name[color_name])\n\n for row in ivalues(score_board_rows) do\n UI.setValue(\"sb_p\"..player_idx..\"_\"..row.id, player_score_data[row.id] or \"\")\n end\n\n if player_score_data.position == 1 and final then\n UI.setAttribute(\"sb_p\"..player_idx..\"_hdr\", \"color\", \"#222233\")\n end\n end\n\n UI.setAttribute(\"sb_hide_button\", \"visibility\", all_but_grey)\n\n UI.setAttribute(\"sb_window\", \"visibility\", all_colors)\n UI.setAttribute(\"sb_window\", \"active\", \"true\")\n\n UI.setAttribute(\"advance_game_popup_open_button\", \"visibility\", \"\")\n UI.setAttribute(\"advance_game_popup_open_button\", \"active\", \"false\")\n UI.setAttribute(\"advance_game_popup_close_button\", \"visibility\", all_but_grey)\n UI.setAttribute(\"advance_game_popup_close_button\", \"active\", \"true\")\n\n return\n Promise:resolve()\n :next(wait_frame)\nend\n\n\nfunction App:disable_score_board()\n UI.setAttribute(\"advance_game_popup_open_button\", \"active\", \"false\")\n UI.setAttribute(\"advance_game_popup_close_button\", \"active\", \"false\")\n UI.setAttribute(\"sb_window\", \"active\", \"false\")\n\n return\n Promise:resolve()\n :next(wait_frame)\nend\n\n\nlocal function adjust_visibility(id, color_name, add)\n local visibility = UI.getAttribute(id, \"visibility\")\n visibility = split(visibility, \"|\", true)\n visibility = filter(visibility, |i,v|v ~= color_name)\n if add then table.insert(visibility, color_name) end\n visibility = table.concat(visibility, \"|\")\n UI.setAttribute(id, \"visibility\", visibility)\n UI.setAttribute(id, \"active\", visibility ~= \"\")\nend\n\n\nfunction App:show_score_board(color_name)\n -- Just in case.\n if color_name == \"Grey\" then\n return\n end\n\n adjust_visibility(\"advance_game_popup_open_button\", color_name, false)\n adjust_visibility(\"advance_game_popup_close_button\", color_name, true)\n adjust_visibility(\"sb_window\", color_name, true)\nend\n\n\nfunction App:hide_score_board(color_name)\n -- Just in case.\n if color_name == \"Grey\" then\n return\n end\n\n adjust_visibility(\"advance_game_popup_open_button\", color_name, true)\n adjust_visibility(\"advance_game_popup_close_button\", color_name, false)\n adjust_visibility(\"sb_window\", color_name, false)\nend\n\n\n-- ================================================================================\n-- Announcements\n\nlocal announcement_stopper\n\nfunction App:cancel_announcement()\n if announcement_stopper then\n announcement_stopper()\n announcement_stopper = nil\n\n -- Silence\n self.objects.sound_effects.AssetBundle.playTriggerEffect(0)\n end\nend\n\n\nfunction App:announce_player_turn(color_name)\n self:cancel_announcement()\n announcement_stopper = pulse_obj(self.objects.players[color_name].mat, Color[color_name])\n TtsMsgUtils.announce_player_turn(color_name)\nend\n\n\nfunction App:announce_admin_turn()\n self:cancel_announcement()\n announcement_stopper = pulse_obj(self.objects.game_board_area, Color.Blue)\n\n local current_phase = self.state:get_current_phase()\n if current_phase < App.Phases.INTER_ERA then\n -- Tram Bell\n self.objects.sound_effects.AssetBundle.playTriggerEffect(1)\n elseif current_phase < App.Phases.GAME_ENDED then\n -- Steam Whistle\n self.objects.sound_effects.AssetBundle.playTriggerEffect(2)\n else\n -- Toot Toot\n self.objects.sound_effects.AssetBundle.playTriggerEffect(3)\n end\nend\n\n\n-- ================================================================================\n-- Sometimes, player can't see the their ownd hands.\n-- This addresses the problem.\n\nfunction App:hand_fixer()\n for color_name in pairs(self.objects.players) do\n local player = Player[color_name]\n if player.seated then\n for i, card in ipairs(player.getHandObjects()) do\n local pos = card.getPosition()\n pos.z = pos.z + 0.01\n card.setPosition(pos)\n end\n end\n end\nend\n\n\n-- ================================================================================\n-- Game advancement\n\nlocal advance_game_dispatch = const(lock({\n [ App.Phases.NOT_STARTED ] = |self|self:start_game(),\n [ App.Phases.CANAL_ERA_ROUND ] = |self|self:end_turn(),\n [ App.Phases.CANAL_ERA_INTER_ROUND ] = |self|self:end_round(),\n [ App.Phases.CANAL_ERA_SCORE ] = |self|self:end_canal_era(),\n [ App.Phases.INTER_ERA ] = |self|self:start_rail_era(),\n [ App.Phases.RAIL_ERA_ROUND ] = |self|self:end_turn(),\n [ App.Phases.RAIL_ERA_INTER_ROUND ] = |self|self:end_round(),\n [ App.Phases.RAIL_ERA_SCORE ] = |self|self:end_rail_era(),\n [ App.Phases.GAME_ENDED ] = |self|Promise:resolve(),\n}))\n\n-- Don't lock since used as lookup.\nlocal skip_validation = const({\n [ App.Phases.NOT_STARTED ] = true,\n [ App.Phases.INTER_ERA ] = true,\n [ App.Phases.GAME_ENDED ] = true,\n})\n\nfunction App:advance_game()\n local current_phase = self.state:get_current_phase()\n if not skip_validation[current_phase] then\n self:validate_board()\n end\n\n return\n advance_game_dispatch[current_phase](self)\n :finally(||self:update_ui())\nend\n\n\nfunction App:start_game()\n local state = self.state\n local objects = self.objects\n\n local is_legal_color_name = make_set(get_keys(objects.players))\n local seated_color_names = get_seated_color_names()\n local everyone_seated = true\n for color_name in ivalues(seated_color_names) do\n if not is_legal_color_name[color_name] and color_name ~= \"Black\" and color_name ~= \"Grey\" then\n broadcastToColor(color_name .. \", please change your color.\", color_name, color_name)\n everyone_seated = false\n end\n end\n\n if not everyone_seated then\n broadcast_error(\"All players must be seated to start. (Grey and Black permitted.)\", color_name)\n return Promise:resolve()\n end\n\n -- Grey and Black don't count as seated players.\n seated_color_names = filter(seated_color_names, |i,color_name|is_legal_color_name[color_name])\n local player_names_by_color_name = make_set(seated_color_names, |_|_, |_|Player[_].steam_name or _)\n\n -- Fake some players. Useful for testing.\n local num_players = #seated_color_names\n local min_players = state:get_opt_min_players()\n if min_players then\n local needed_players = min_players - num_players\n if needed_players > 0 then\n for color_name in ivalues(shuffle(get_keys(objects.players))) do\n if not player_names_by_color_name[color_name] then\n player_names_by_color_name[color_name] = color_name\n needed_players = needed_players - 1\n if needed_players == 0 then\n break\n end\n end\n end\n\n -- Subtracting needed_players hedges against invalid inputs.\n num_players = min_players - needed_players\n end\n end\n\n -- Make sure we have enough players, fake or otherwise.\n if num_players < 2 then\n broadcast_error(\"Not enough seated players.\")\n return Promise:resolve()\n end\n\n -- Update global state.\n local score_data = { }\n for color_name in keys(player_names_by_color_name) do\n score_data[color_name] = {\n position = nil,\n order = nil,\n canal_immediate = nil,\n canal_links = nil,\n canal_industries = nil,\n canal_era = nil,\n rail_immediate = nil,\n rail_links = nil,\n rail_industries = nil,\n rail_money = nil,\n rail_era = nil,\n total = 0,\n }\n end\n\n state:merge({\n current_phase = App.Phases.CANAL_ERA_ROUND,\n player_names_by_color_name = player_names_by_color_name,\n current_round = 1,\n score_data = score_data,\n })\n\n -- Destroy the start button.\n objects.start_button.destruct()\n objects.start_button = nil\n\n -- Remove absent player colors.\n for color_name, player in pairs(objects.players) do\n if not state:is_active_player(color_name) then\n player.turn_order_token.destruct()\n player.income_marker.destruct()\n player.score_marker.destruct()\n player.link_bag.destruct()\n player.canal_link.destruct()\n player.railway_link.destruct()\n objects.players[color_name] = nil\n end\n end\n\n -- Remove unused player turn positions.\n local player_turns = objects.player_turns\n for i = #player_turns, state:get_num_players()+1, -1 do\n player_turns[i].turn_order_token_zone.destruct()\n player_turns[i].bowl.destruct()\n table.remove(player_turns)\n end\n\n return self:start_canal_era()\nend\n\n\nfunction App:end_game()\n self.state:set_current_phase(App.Phases.GAME_ENDED)\n self.advance_game_button:disable()\n self:log_results()\n self:announce_winner()\nend\n\n\nfunction App:start_canal_era()\n return\n self:setup_canal_era()\n :finally(||self:start_round())\nend\n\n\nfunction App:end_canal_era()\n return\n self:end_era()\n :next(|score_info_recs|self:update_score_data(\"canal\", score_info_recs))\n :next(||self.state:set_current_phase(App.Phases.INTER_ERA))\n :next(||self:enable_score_board(false))\nend\n\n\nfunction App:start_rail_era()\n return\n self:disable_score_board()\n :next(\n function()\n local deck = self:get_deck()\n if deck then\n broadcast_error(\"Can’t proceed while there are cards in the deck area.\")\n return Promise:resolve()\n end\n\n self.state:merge({\n current_phase = App.Phases.RAIL_ERA_ROUND,\n current_round = 1,\n })\n\n self:remove_link_tiles()\n self:remove_level1_industries()\n\n return\n self:setup_rail_era()\n :next(||self:start_round())\n end\n )\nend\n\n\nfunction App:end_rail_era()\n return\n self:end_era()\n :next(|score_info_recs|self:update_score_data(\"rail\", score_info_recs))\n :next(||self:end_game())\n :next(||self:enable_score_board(true))\nend\n\n\nfunction App:end_era()\n local state = self.state\n local objects = self.objects\n\n local is_rail_era = self.state:get_current_phase() >= App.Phases.RAIL_ERA_ROUND\n\n local link_points_by_color_name = { [\"Orange\"]=0, [\"Purple\"]=0, [\"Teal\"]=0, [\"Yellow\"]=0 }\n local industry_points_by_color_name = { [\"Orange\"]=0, [\"Purple\"]=0, [\"Teal\"]=0, [\"Yellow\"]=0 }\n\n self:adjust_link_tile_values()\n\n for link_name, link_zone in pairs(objects.link_zones) do\n for obj in ivalues(link_zone.getObjects()) do\n local name, color_name = decolor(obj.getGMNotes())\n if color_name and ( name == \"Canal\" or name == \"Railway\" ) then\n link_points_by_color_name[color_name] =\n link_points_by_color_name[color_name] +\n self:get_value_of_link(link_name)\n end\n end\n end\n\n for loc_square in values(objects.location_squares) do\n local found = false\n for obj in ivalues(loc_square.getObjects()) do\n if obj.name == \"Card\" or obj.name == \"Custom_Tile\" then\n local name, color_name = decolor(obj.getGMNotes())\n local data = self.industry_tile_data[name]\n if data then\n industry_points_by_color_name[color_name] =\n industry_points_by_color_name[color_name] +\n obj.getRotationValue()\n end\n end\n end\n end\n\n local score_data = state:get_score_data()\n\n local score_info_recs = { }\n for color_name in ivalues(state:get_active_players()) do\n local player = objects.players[color_name]\n local score_marker = player.score_marker\n local income_marker = player.income_marker\n local wallet_bowl = player.wallet_bowl\n\n local money = self:update_bowl(wallet_bowl)\n\n local income_of = self:get_track_position_offset(income_marker)\n local income = self:income_by_track_offset(income_of)\n\n local earlier_points = score_data[color_name].total\n local immediate_vps = self:get_track_position_offset(score_marker) - earlier_points\n local link_points = link_points_by_color_name[color_name]\n local industry_points = industry_points_by_color_name[color_name]\n local money_points = ( self.money_value and self.money_value > 0 and is_rail_era ) and math.floor( money / self.money_value ) or 0\n local points = immediate_vps + money_points + link_points + industry_points\n local total = earlier_points + points\n\n table.insert(score_info_recs, {\n order = nil, -- Populated below. Provides consistent ordering in the event of ties.\n position = nil, -- Populated below.\n color_name = color_name,\n earlier_points = earlier_points,\n immediate_vps = immediate_vps,\n link_points = link_points,\n industry_points = industry_points,\n money_points = money_points,\n points = points,\n total = total,\n income = income, -- First tie-breaker.\n money = money, -- Second tie-breaker.\n })\n\n local num_track_zones = #objects.track_zones\n while total >= num_track_zones do total = total - num_track_zones end\n while total < 0 do total = total + num_track_zones end\n end\n\n -- This particular compare function returns the following:\n -- <0 if `a` placed better than `b`,\n -- >0 if `a` placed worse than `b`, or\n -- =0 if the event of a tie.\n local function compare(a, b)\n local diff = a.total - b.total\n if diff ~= 0 then\n return diff\n end\n\n local diff = a.income - b.income\n if diff ~= 0 then\n return diff\n end\n\n return a.money - b.money\n end\n\n table.sort(score_info_recs, |a,b|compare(a,b) > 0)\n\n local prev\n local position = 1\n local skip = 0\n for i, score_info_rec in ipairs(score_info_recs) do\n local color_name = score_info_rec.color_name\n\n if prev ~= nil then\n if compare(score_info_rec, prev) == 0 then\n skip = skip + 1\n else\n position = position + skip + 1\n skip = 0\n end\n end\n\n score_info_rec.order = i\n score_info_rec.position = position\n\n prev = score_info_rec\n end\n\n\n local promise = Promise:resolve()\n for score_info_rec in divalues(score_info_recs) do\n local color_name = score_info_rec.color_name\n local player = objects.players[color_name]\n local score_marker = player.score_marker\n\n -- We want the moves to happen seqentially because moving\n -- more than one to the same location can knock them over.\n promise = promise:next(\n function()\n local msg =\n \"#\" .. score_info_rec.position .. \": \" ..\n color_name .. \" scored \" ..\n score_info_rec.points .. \" points for a total of \" ..\n score_info_rec.total .. \"! (\" ..\n score_info_rec.link_points .. \" for links, \" ..\n score_info_rec.industry_points .. \" for industries\"\n\n if self.money_value and self.money_value > 0 and is_rail_era then\n msg = msg .. \", \" .. score_info_rec.money_points .. \" for money\"\n end\n\n msg = msg .. \")\"\n\n printToAll(msg, color_name)\n\n return self:move_marker(score_marker, score_info_rec.total)\n end\n )\n\n -- We want to proceed even if an error occurs. But at the\n -- same time, we don't want to silence errors.\n promise = promise:done()\n end\n\n return promise:next(||score_info_recs)\nend\n\n\nfunction App:start_round()\n return\n self:do_start_round()\n :finally(\n function()\n local state = self.state\n\n if state:get_current_phase() == App.Phases.CANAL_ERA_ROUND then\n print_info(\"Start of Canal Era Round \" .. state:get_current_round() .. \" of \" .. state:get_num_rounds() .. \"!\")\n else\n print_info(\"Start of Rail Era Round \" .. state:get_current_round() .. \" of \" .. state:get_num_rounds() .. \"!\")\n end\n\n self:announce_player_turn(state:get_current_player())\n end\n )\nend\n\n\nfunction App:do_start_round()\n local state = self.state\n\n local promises = { }\n\n local turn_order = self:determine_new_turn_order()\n table.insert(promises, self:update_turn_order_tokens(turn_order))\n state:set_current_player(turn_order[1])\n table.insert(promises, self:refill_hands(state:get_active_players()))\n table.insert(promises, self:give_income())\n self:empty_spent_money()\n table.insert(promises, self:clear_discards())\n self:adjust_link_tile_values()\n\n return\n Promise:all_settled(promises)\n :next(Promise.all_settled_error_logger)\nend\n\n\nfunction App:end_round()\n local state = self.state\n\n state:merge({\n current_phase = state:get_current_phase() == App.Phases.CANAL_ERA_INTER_ROUND\n and App.Phases.CANAL_ERA_ROUND\n or App.Phases.RAIL_ERA_ROUND,\n current_round = state:get_current_round() + 1,\n })\n\n return self:start_round()\nend\n\n\nfunction App:end_turn()\n local state = self.state\n\n local current_player = state:get_current_player()\n\n local promises = { }\n\n table.insert(promises, self:refill_hands({ current_player }))\n self:adjust_link_tile_values()\n\n return\n Promise:all_settled(promises)\n :next(Promise.all_settled_error_logger)\n :finally(\n function()\n local current_player = self:get_next_color_name()\n state:set_current_player(current_player)\n if current_player then\n self:announce_player_turn(current_player)\n else\n if state:get_current_round() == state:get_num_rounds() then\n state:set_current_round(nil)\n if state:get_current_phase() == App.Phases.CANAL_ERA_ROUND then\n broadcast_info(\"End of the Canal Era!\")\n print_info(\"Your points will be calculated once you click the button.\")\n state:set_current_phase(App.Phases.CANAL_ERA_SCORE)\n else\n broadcast_info(\"End of the Game!\")\n print_info(\"Your points will be calculated once you click the button.\")\n state:set_current_phase(App.Phases.RAIL_ERA_SCORE)\n end\n else\n if state:get_current_phase() == App.Phases.CANAL_ERA_ROUND then\n broadcast_info(\"End of Canal Era Round \" .. state:get_current_round() .. \" of \" .. state:get_num_rounds() .. \"!\")\n state:set_current_phase(App.Phases.CANAL_ERA_INTER_ROUND)\n else\n broadcast_info(\"End of Rail Era Round \" .. state:get_current_round() .. \" of \" .. state:get_num_rounds() .. \"!\")\n state:set_current_phase(App.Phases.RAIL_ERA_INTER_ROUND)\n end\n end\n end\n end\n )\nend\n\n\n-- ================================================================================\n-- Setup\n\nfunction App:setup_canal_era()\n -- Randomize player colors.\n local turn_order = shuffle(self.state:get_active_players())\n self.state:set_current_player(turn_order[1])\n\n local promises = { }\n table.insert(promises, self:update_turn_order_tokens(turn_order, true))\n table.insert(promises,\n self:setup_deck_canal_era()\n :next(|deck|self:deal_dead_card_to_players(deck))\n )\n table.insert(promises, self:provide_links(\"canal_link\", \"Canals\"))\n\n return\n Promise:all_settled(promises)\n :next(Promise.all_settled_error_logger)\nend\n\n\nfunction App:setup_rail_era()\n local promises = { }\n table.insert(promises, self:setup_deck_rail_era())\n table.insert(promises, self:provide_links(\"railway_link\", \"Railways\"))\n\n return\n Promise:all_settled(promises)\n :next(Promise.all_settled_error_logger)\nend\n\n\n-- Grab the correct deck of cards.\n-- Destroy the other bags of deck of cards.\nfunction App:setup_deck_canal_era()\n local objects = self.objects\n\n local num_players = self.state:get_num_players()\n\n local promise\n for i, card_deck_bag in ipairs(objects.card_deck_bags) do\n if i == num_players - 1 then\n local play_deck_zone = objects.play_deck_zone\n promise =\n take_object(card_deck_bag, {\n position = play_deck_zone.getPosition(),\n rotation = play_deck_zone.getRotation(),\n })\n :next(\n function(deck)\n deck.shuffle()\n return deck\n end\n )\n :next(|deck|wait_frame(deck))\n :next(|deck|wait_condition(||deck.resting, deck, 3, \"Timeout setting up deck.\"))\n else\n card_deck_bag.destruct()\n objects.card_deck_bags[i] = nil\n end\n end\n\n return promise\nend\n\n\nfunction App:deal_dead_card_to_players(deck)\n local promises = { }\n for color_name in ivalues(self.state:get_active_players()) do\n table.insert(promises,\n take_object(deck, {\n position = self.objects.players[color_name].discard_areas[1].getPosition(),\n rotation = { 0.00, 180.00, 180.00 },\n })\n :next(\n function(card)\n card.setLock(true)\n end\n )\n )\n end\n\n return\n Promise:all_settled(promises)\n :next(Promise.all_settled_error_logger)\nend\n\n\nfunction App:provide_links(link_type, link_name)\n local promises = { }\n for color_name in ivalues(self.state:get_active_players()) do\n local player = self.objects.players[color_name]\n\n local bag = player.link_bag\n bag.reset() -- Empties it.\n bag.setName(color_name .. \" \" .. link_name)\n\n local tile = player[link_type]\n local tile_data = tile.getData()\n local pos = get_drop_pos(tile, bag)\n local y_inc = get_abs_height(tile) * 2\n pos.y = pos.y + y_inc / 2\n for i = 1, 14 do\n table.insert(promises,\n spawn_object_from_data({ data = tile_data, position = pos })\n :next(|copy|wait_condition(||copy == nil, copy, 3, \"Timeout populating link bags.\"))\n )\n pos.y = pos.y + y_inc\n end\n\n tile.destruct()\n player[link_type] = nil\n end\n\n return\n Promise:all_settled(promises)\n :next(Promise.all_settled_error_logger)\nend\n\n\n-- Grab a fresh deck of cards.\n-- Destroy the bags of deck of cards afterwards.\nfunction App:setup_deck_rail_era()\n local objects = self.objects\n local num_players = self.state:get_num_players()\n local card_deck_bag = objects.card_deck_bags[ num_players - 1 ]\n local play_deck_zone = objects.play_deck_zone\n return\n take_object(card_deck_bag, {\n position = play_deck_zone.getPosition(),\n rotation = play_deck_zone.getRotation(),\n })\n :next(\n function(deck)\n deck.shuffle()\n card_deck_bag.destruct()\n objects.card_deck_bags[ num_players - 1 ] = nil\n return deck\n end\n )\n :next(|deck|wait_frame(deck))\n :next(|deck|wait_condition(||deck.resting, deck, 3, \"Timeout setting up deck.\"))\nend\n\n\nfunction App:remove_link_tiles()\n for link_name, link_zone in pairs(self.objects.link_zones) do\n for obj in ivalues(link_zone.getObjects()) do\n local name = decolor(obj.getGMNotes())\n -- Railways are often used by accident.\n if name == \"Canal\" or name == \"Railway\" then\n obj.destruct()\n end\n end\n end\nend\n\n\nfunction App:remove_level1_industries()\n for loc_square in values(self.objects.location_squares) do\n local found = false\n for obj in ivalues(loc_square.getObjects()) do\n if obj.name == \"Card\" or obj.name == \"Custom_Tile\" then\n local name = decolor(obj.getGMNotes())\n local data = self.industry_tile_data[name]\n if data and data.level == 1 then\n obj.destruct()\n found = true\n end\n end\n end\n\n if found then\n for obj in ivalues(loc_square.getObjects()) do\n local name = obj.getGMNotes()\n if self.resource_id_by_name[name] then\n obj.destruct()\n end\n end\n end\n end\nend\n\n\n-- ================================================================================\n-- Hands\n\n-- XXX This counts all objects, not just cards. Good enough?\nfunction App:get_hand_card_count(color_name)\n local player = Player[color_name]\n return #player.getHandObjects()\nend\n\n\nfunction App:refill_hands(color_names)\n local deck = self:get_deck()\n if not deck then\n return Promise:resolve()\n end\n\n -- Avoid failing if there are fewer cards than there should be.\n local card_count\n if deck.name == \"Deck\" then\n card_count = #deck.getObjects()\n else\n card_count = 1\n end\n\n local promises = { }\n local total_short = 0\n for color_name in ivalues(color_names) do\n local needs = 8 - self:get_hand_card_count(color_name)\n if needs > 0 then\n local short = 0\n if needs > card_count then\n -- Should never reach this.\n short = needs - card_count\n total_short = total_short + short\n end\n\n card_count = card_count - ( needs - short )\n deck.deal(( needs - short ), color_name)\n table.insert(promises,\n wait_condition(\n ||self:get_hand_card_count(color_name) == ( 8 - short ),\n nil, 3, ||reject(\"Timeout dealing cards.\")\n )\n )\n end\n end\n\n if total_short > 0 then\n broadcast_error(total_short .. \" cards short! Continuing nonetheless.\")\n end\n\n return\n Promise:all_settled(promises)\n :next(Promise.all_settled_error_logger)\nend\n\n\n-- ================================================================================\n-- Turn order\n\nfunction App:get_player_turn_index(color_name)\n local player_turns = self.objects.player_turns\n\n for i = 1, self.state:get_num_players() do\n local zone = player_turns[i].turn_order_token_zone\n for obj in ivalues(zone.getObjects()) do\n local name, token_color_name = decolor(obj.getGMNotes())\n if name == \"Player\" then\n if token_color_name == color_name then\n return i\n end\n\n break\n end\n end\n end\n\n return nil\nend\n\n\nfunction App:get_next_color_name()\n local player_turns = self.objects.player_turns\n local current_player = self.state:get_current_player()\n\n local found_current = false\n for i = 1, self.state:get_num_players() do\n local zone = player_turns[i].turn_order_token_zone\n for obj in ivalues(zone.getObjects()) do\n local name, token_color_name = decolor(obj.getGMNotes())\n if name == \"Player\" then\n if token_color_name == current_player then\n found_current = true\n elseif found_current then\n return token_color_name\n end\n\n break\n end\n end\n end\n\n return nil\nend\n\n\nfunction App:determine_new_turn_order()\n local spending_data = { }\n for i = 1, self.state:get_num_players() do\n local player_turn = self.objects.player_turns[i]\n\n local zone = player_turn.turn_order_token_zone\n local color_name = nil\n for obj in ivalues(zone.getObjects()) do\n local name, token_color_name = decolor(obj.getGMNotes())\n if name == \"Player\" then\n color_name = token_color_name\n break\n end\n end\n\n local bowl = player_turn.bowl\n local spent = tonumber(bowl.getButtons()[1].label)\n table.insert(spending_data, { color_name = color_name, spent = spent, orig_pos = i })\n end\n\n table.sort(spending_data,\n function(a, b)\n if a.spent ~= b.spent then\n return a.spent < b.spent\n end\n\n return a.orig_pos < b.orig_pos\n end\n )\n\n return map(spending_data, |_|_.color_name)\nend\n\n\nfunction App:update_turn_order_tokens(turn_order, randomize)\n local promises = { }\n for player_num, color_name in ipairs(turn_order) do\n local zone = self.objects.player_turns[player_num].turn_order_token_zone\n local token = self.objects.players[color_name].turn_order_token\n\n local transform = {\n position = zone.getPosition(),\n }\n\n if randomize and math.random(0, 1) == 1 then\n local rotation = token.getRotation()\n rotation.z = ( rotation.z + 180 ) % 360\n transform.rotation = rotation\n end\n\n table.insert(promises,\n set_transform_smooth(token, transform)\n :catch(||error(\"Error moving turn order token\"))\n )\n end\n\n return\n Promise:all_settled(promises)\n :next(Promise.all_settled_error_logger)\nend\n\n\n-- ================================================================================\n-- Discard pile manipulations\n\nfunction App:get_discarded_count(color_name, idx)\n local discard_area = self.objects.players[color_name].discard_areas[idx]\n local count = 0\n for obj in ivalues(discard_area.getObjects()) do\n if obj.name == \"Card\" then\n count = count + 1\n elseif obj.name == \"Deck\" then\n for obj in ivalues(obj.getObjects()) do\n count = count + 1\n end\n end\n end\n\n return count\nend\n\n\nfunction App:clear_discarded_card(card)\n card.destruct()\n return Promise:resolve()\nend\n\n\nfunction App:clear_discarded_deck(deck)\n deck.destruct()\n return Promise:resolve()\nend\n\n\nfunction App:clear_discards()\n if self.state:get_current_phase() == App.Phases.CANAL_ERA_ROUND and self.state:get_current_round() == 1 then\n return Promise:resolve()\n end\n\n local promises = { }\n for color_name in ivalues(self.state:get_active_players()) do\n for discard_area in ivalues(self.objects.players[color_name].discard_areas) do\n for obj in ivalues(discard_area.getObjects()) do\n if obj.name == \"Card\" then\n table.insert(promises, self:clear_discarded_card(obj))\n elseif obj.name == \"Deck\" then\n table.insert(promises, self:clear_discarded_deck(obj))\n end\n end\n end\n end\n\n return\n Promise:all_settled(promises)\n :next(Promise.all_settled_error_logger)\nend\n\n\n-- ================================================================================\n-- Coal and iron market manipulations\n\nfunction App:add_resource_to_market(color_name, resource)\n for i, zone in dipairs(resource.market_zones) do\n local has_resource = false\n for obj in ivalues(zone.getObjects()) do\n if obj.getGMNotes() == resource.resource_name then\n has_resource = true\n break\n end\n end\n\n if not has_resource then\n local value = math.floor((i+1) / 2)\n resource.bag.takeObject({ position=zone.getPosition(), smooth=false })\n printToAll(color_name .. \" added \" .. resource.resource_name .. \" valued at £\" .. value .. \".\", color_name)\n break\n end\n end\nend\n\n\nfunction App:sub_resource_from_market(color_name, resource)\n for i, zone in ipairs(resource.market_zones) do\n local had_resource = false\n for obj in ivalues(zone.getObjects()) do\n if obj.getGMNotes() == resource.resource_name then\n obj.destruct()\n local value = math.floor((i+1) / 2)\n printToAll(color_name .. \" removed \" .. resource.resource_name .. \" valued at £\" .. value .. \".\", color_name)\n had_resource = true\n break\n end\n end\n\n if had_resource then\n break\n end\n end\nend\n\n\n-- ================================================================================\n-- Money.\n\nfunction App:empty_spent_money()\n for i = 1, self.state:get_num_players() do\n self.objects.player_turns[i].bowl.call(\"empty\")\n end\nend\n\n\nfunction App:update_bowl(bowl)\n return bowl.call(\"countItems\")\nend\n\n\nfunction App:add_coin_to_bowl(bowl, coin_name)\n local pos = bowl.getPosition()\n local scale = bowl.getScale()\n local range = scale.x * 0.8\n pos.x = pos.x + math.random() * range * 2 - range\n pos.y = pos.y + scale.y * 2.25\n pos.z = pos.z + math.random() * range * 2 - range\n\n local bag = self.objects.money_bags[coin_name]\n return take_object(bag, {\n position = pos,\n rotation = { 0, 180, 0 },\n smooth = false,\n })\nend\n\n\n-- `amount` must be non-negative.\nfunction App:add_money_to_bowl(bowl, amount)\n local promises = { }\n while amount >= 15 do table.insert(promises, self:add_coin_to_bowl(bowl, \"Gold\")) amount = amount - 15 end\n while amount >= 5 do table.insert(promises, self:add_coin_to_bowl(bowl, \"Silver\")) amount = amount - 5 end\n while amount >= 1 do table.insert(promises, self:add_coin_to_bowl(bowl, \"Bronze\")) amount = amount - 1 end\n\n return\n Promise:all_settled(promises)\n :next(Promise.all_settled_error_logger)\n :finally(||self:update_bowl(bowl))\nend\n\n\n-- `amount` must be non-negative.\nfunction App:give_money_to_player_announced(color_name, amount)\n local wallet_bowl = self.objects.players[color_name].wallet_bowl\n self:add_money_to_bowl(wallet_bowl, amount)\n :finally(\n function()\n printToAll(color_name .. \" received £\" .. amount .. \".\", color_name)\n end\n )\n :done()\nend\n\n\n-- This only works if there can't be stacks of coins.\nfunction App:sift_bowl_contents(bowl_contents)\n local coins = {\n [ \"Gold\" ] = { },\n [ \"Silver\" ] = { },\n [ \"Bronze\" ] = { },\n }\n\n for obj in ivalues(bowl_contents) do\n local name = obj.getGMNotes()\n if coins[name] then\n table.insert(coins[name], obj)\n end\n end\n\n return coins\nend\n\n\n-- amount must be non-negative.\n-- Primarily, we want to create the fewest coins possible.\n-- Secondarily, we want to remove the most coins possible.\nfunction App:remove_money_from_player(color_name, amount, spent)\n local wallet_bowl = self.objects.players[color_name].wallet_bowl\n if amount == 0 then\n return Promise:resolve()\n end\n\n local initial_total = self:update_bowl(wallet_bowl)\n local final_total = initial_total + amount\n if initial_total < amount then\n return Promise:reject(App.Errors.EINSUFFICIENT_FUNDS)\n end\n\n local spent_bowl\n if spent then\n local player_turn_index = self:get_player_turn_index(color_name)\n if player_turn_index then\n spent_bowl = self.objects.player_turns[player_turn_index].bowl\n else\n error(\"Can’t find turn order token for \" .. color_name)\n end\n end\n\n local ones = amount\n local fifteens = math.floor(ones / 15)\n ones = ones - fifteens * 15\n local fives = math.floor(ones / 5)\n ones = ones - fives * 5\n\n local bowl_contents = wallet_bowl.getTable(\"itemsInBowl\")\n local coins = self:sift_bowl_contents(bowl_contents)\n local coin_counts = map(coins, |_|#_)\n\n -- ----------\n -- Bronze\n\n -- Make change if necessary.\n if coin_counts[ \"Bronze\" ] < ones then\n if coin_counts[\"Silver\"] >= 1 then\n coin_counts[ \"Silver\" ] = coin_counts[ \"Silver\" ] - 1\n coin_counts[ \"Bronze\" ] = coin_counts[ \"Bronze\" ] + 5\n elseif coin_counts[\"Gold\"] >= 1 then\n coin_counts[ \"Gold\" ] = coin_counts[ \"Gold\" ] - 1\n coin_counts[ \"Silver\" ] = coin_counts[ \"Silver\" ] + 2\n coin_counts[ \"Bronze\" ] = coin_counts[ \"Bronze\" ] + 5\n end\n end\n\n coin_counts[ \"Bronze\" ] = coin_counts[ \"Bronze\" ] - ones\n\n -- ----------\n -- Silver\n\n -- Get rid of the most coins possible to avoid overflowing.\n while fives >= 1 and coin_counts[ \"Bronze\" ] >= 5 do\n coin_counts[ \"Bronze\" ] = coin_counts[ \"Bronze\" ] - 5\n fives = fives - 1\n end\n\n -- Make change if necessary.\n if coin_counts[ \"Silver\" ] < fives then\n if coin_counts[\"Gold\"] >= 1 then\n coin_counts[ \"Gold\" ] = coin_counts[ \"Gold\" ] - 1\n coin_counts[ \"Silver\" ] = coin_counts[ \"Silver\" ] + 3\n end\n end\n\n coin_counts[ \"Silver\" ] = coin_counts[ \"Silver\" ] - fives\n\n -- ----------\n -- Gold\n\n -- Get rid of the most coins possible to avoid overflowing.\n while fifteens >= 1 and coin_counts[ \"Bronze\" ] >= 15 do\n coin_counts[ \"Bronze\" ] = coin_counts[ \"Bronze\" ] - 15\n fifteens = fifteens - 1\n end\n\n if fifteens >= 1 then\n if coin_counts[ \"Silver\" ] >= 1 and coin_counts[ \"Bronze\" ] >= 10 then\n coin_counts[ \"Silver\" ] = coin_counts[ \"Silver\" ] - 1\n coin_counts[ \"Bronze\" ] = coin_counts[ \"Bronze\" ] - 10\n fifteens = fifteens - 1\n elseif coin_counts[ \"Silver\" ] >= 2 and coin_counts[ \"Bronze\" ] >= 5 then\n coin_counts[ \"Silver\" ] = coin_counts[ \"Silver\" ] - 2\n coin_counts[ \"Bronze\" ] = coin_counts[ \"Bronze\" ] - 5\n fifteens = fifteens - 1\n end\n end\n\n while fifteens >= 1 and coin_counts[ \"Silver\" ] >= 3 do\n coin_counts[ \"Silver\" ] = coin_counts[ \"Silver\" ] - 3\n fifteens = fifteens - 1\n end\n\n coin_counts[ \"Gold\" ] = coin_counts[ \"Gold\" ] - fifteens\n\n -- ----------\n -- Reconcilation\n\n local promises = { }\n for coin_name in ivalues({ \"Gold\", \"Silver\", \"Bronze\" }) do\n local diff = coin_counts[coin_name] - #coins[coin_name]\n if diff < 0 then -- If there are more coins then there should be.\n local to_remove = -diff\n for i = 1, to_remove do\n table.remove(coins[coin_name]).destruct()\n end\n elseif diff > 0 then -- If there are fewer coins then there should be.\n local to_add = diff\n for i = 1, to_add do\n table.insert(promises, self:add_coin_to_bowl(wallet_bowl, coin_name))\n end\n end\n end\n\n if spent_bowl then\n table.insert(promises, self:add_money_to_bowl(spent_bowl, amount))\n end\n\n return\n Promise:all_settled(promises)\n :next(Promise.all_settled_error_logger)\n :finally(\n function()\n self:update_bowl(wallet_bowl)\n if spent_bowl then\n self:update_bowl(spent_bowl)\n end\n end\n )\nend\n\n\n-- amount must be non-negative.\nfunction App:spend_money_announced(color_name, amount)\n self:remove_money_from_player(color_name, amount, true)\n :next(\n function(result)\n printToAll(color_name .. \" paid £\" .. amount .. \".\", color_name)\n end,\n function(reason)\n if reason == App.Errors.EINSUFFICIENT_FUNDS then\n broadcast_error(color_name .. \", you don’t not have enough money to pay £\" .. amount .. \".\", color_name)\n else\n broadcast_error(\"Error trying to pay \" .. amount .. \": \" .. reason)\n end\n end\n )\nend\n\n\n-- ================================================================================\n-- Income.\n\n-- Used for both the income marker and the score marker.\nfunction App:get_track_position_offset(marker) -- 0-based\n local i = find_zone(self.objects.track_zones, marker)\n return i and i-1 or nil\nend\n\n\n-- Used for both the income marker and the score marker.\nfunction App:move_marker(marker, ofs, instant) -- 0-based\n local zones = self.objects.track_zones\n local zone = zones[ ( ofs % #zones ) + 1 ]\n if instant then\n return\n move_atop(marker, zone, { protrusion = 0.5, rotation = true })\n :catch(||error(\"Error moving marker\"))\n else\n return\n move_atop_smooth(marker, zone, { protrusion = 0.5, rotation = true })\n :catch(||error(\"Error moving marker\"))\n end\nend\n\n\nfunction App:income_by_track_offset(ofs) -- 0-based\n if ofs <= 10 then return math.modf( ( ofs - 0 ) / 1 ) + -10\n elseif ofs <= 30 then return math.modf( ( ofs - 11 ) / 2 ) + 1\n elseif ofs <= 60 then return math.modf( ( ofs - 31 ) / 3 ) + 11\n elseif ofs <= 100 then return math.modf( ( ofs - 61 ) / 4 ) + 21\n else return 30\n end\nend\n\n\n-- Gives the top spot of group.\nfunction App:track_offset_by_income(income) -- 0-based\n if income <= 0 then return ( income - -10 ) * 1 + 0\n elseif income <= 10 then return ( income - 1 ) * 2 + 12\n elseif income <= 20 then return ( income - 11 ) * 3 + 33\n else return ( income - 21 ) * 4 + 64\n end\nend\n\n\nfunction App:income_inc(color_name)\n local player = self.objects.players[color_name]\n local marker = player.income_marker\n local old_ofs = self:get_track_position_offset(marker)\n local new_ofs = old_ofs + 1\n self:move_marker(marker, new_ofs, true)\n :finally(\n function()\n printToAll(color_name .. \" increased their income by one position to \" .. new_ofs .. \" (from \" .. old_ofs .. \").\", color_name)\n end\n )\n :done()\nend\n\n\nfunction App:income_dec(color_name)\n local player = self.objects.players[color_name]\n local marker = player.income_marker\n local old_ofs = self:get_track_position_offset(marker)\n local new_ofs = old_ofs - 1\n\n if new_ofs < 0 then\n broadcast_error(color_name .. \", you can’t reduce your income any further as it is already at the minimum!\", color_name)\n return\n end\n\n self:move_marker(marker, new_ofs, true)\n :finally(\n function()\n printToAll(color_name .. \" reduced their income to position \" .. new_ofs .. \" (from \" .. old_ofs .. \").\", color_name)\n end\n )\n :done()\nend\n\n\nfunction App:take_loan(color_name)\n local player = self.objects.players[color_name]\n local marker = player.income_marker\n local wallet_bowl = player.wallet_bowl\n\n local old_ofs = self:get_track_position_offset(marker)\n local income = self:income_by_track_offset(old_ofs)\n\n local loan_amount = self.loan_amount\n local loan_steps = loan_amount / 10\n\n income = income - loan_steps\n if income < -10 then\n broadcast_error(color_name .. \", you can’t take out a loan as you would exceed 10 interest!\", color_name)\n return\n end\n\n local promises = { }\n local new_ofs = self:track_offset_by_income(income)\n table.insert(promises, self:move_marker(marker, new_ofs, true))\n table.insert(promises, self:add_money_to_bowl(wallet_bowl, loan_amount))\n\n Promise:all_settled(promises)\n :next(Promise.all_settled_error_logger)\n :finally(\n function()\n printToAll(color_name .. \" took a loan. They gained £\".. loan_amount .. \" and their income was decreased by \" .. loan_steps .. \" steps to \" .. income .. \" (from position \" .. old_ofs .. \").\", color_name)\n end\n )\n :done()\nend\n\n\nfunction App:give_initial_funds()\n local promises = { }\n for color_name in ivalues(self.state:get_active_players()) do\n local wallet_bowl = self.objects.players[color_name].wallet_bowl\n table.insert(promises, self:add_money_to_bowl(wallet_bowl, self.initial_funds))\n end\n\n return\n Promise:all_settled(promises)\n :next(Promise.all_settled_error_logger)\nend\n\n\nfunction App:give_income()\n if self.state:get_current_phase() == App.Phases.CANAL_ERA_ROUND and self.state:get_current_round() == 1 then\n return self:give_initial_funds()\n end\n\n local incomes = { }\n for i, zone in ipairs(self.objects.track_zones) do\n for obj in ivalues(zone.getObjects()) do\n local name, color_name = decolor(obj.getGMNotes())\n if name == \"Income Marker\" then\n incomes[color_name] = self:income_by_track_offset(i-1)\n end\n end\n end\n\n local promises = { }\n for color_name in ivalues(self.state:get_active_players()) do\n table.insert(promises, Promise:new(\n function(resolve, reject)\n local player = self.objects.players[color_name]\n local wallet_bowl = player.wallet_bowl\n local income = incomes[color_name]\n local remaining = income\n if income == nil then\n reject(\"No income marker found for \" .. color_name)\n elseif income < 0 then\n resolve(\n self:remove_money_from_player(color_name, -income, false)\n :next(\n function(result)\n broadcastToAll(color_name .. \" lost £\" .. (-income) .. \" to interest!\", color_name)\n end,\n function(reason)\n if reason == App.Errors.EINSUFFICIENT_FUNDS then\n broadcast_error(color_name .. \" doesn’t have enough money to cover the interest of £\" .. (-income) .. \"!\")\n else\n broadcast_error(\"Error trying to pay \" .. amount .. \": \" .. reason)\n end\n end\n )\n )\n elseif income > 0 then\n resolve(\n self:add_money_to_bowl(wallet_bowl, income)\n :finally(\n function()\n broadcastToAll(color_name .. \" gained £\" .. income .. \" in income!\", color_name)\n end\n )\n )\n else\n broadcastToAll(color_name .. \" did not earn any income.\", color_name)\n resolve()\n end\n end\n ))\n end\n\n return\n Promise:all_settled(promises)\n :next(Promise.all_settled_error_logger)\nend\n\n\n-- ================================================================================\n-- Board validation\n\nfunction App:validate_links()\n local objects = self.objects\n\n local game_board = objects.game_board\n local game_table = objects.game_table\n\n local is_canal_era = self.state:get_current_phase() < App.Phases.RAIL_ERA_ROUND\n local link_era_prop = is_canal_era and \"canal\" or \"rail\"\n local required_link_obj_type = is_canal_era and \"Canal\" or \"Railway\"\n\n for link_name, link in pairs(self.links) do\n local link_zone = objects.link_zones[link_name]\n\n if link[link_era_prop] then\n local found = false\n for obj in ivalues(link_zone.getObjects()) do\n local name = decolor(obj.getGMNotes())\n if obj.name == \"Custom_Tile\" and name == required_link_obj_type then\n if found then\n broadcast_error(\"Unexpected object found for link \" .. link_name .. \"!\")\n break\n end\n\n found = true\n elseif obj == game_board or obj == game_table then\n -- Ignore the game board and the game table.\n else\n broadcast_error(\"Unexpected object found for link \" .. link_name .. \"!\")\n break\n end\n end\n else\n for obj in ivalues(link_zone.getObjects()) do\n if obj == game_board or obj == game_table then\n -- Ignore the game board and the game table.\n else\n broadcast_error(\"Unexpected object found for link \" .. link_name .. \"!\")\n break\n end\n end\n end\n end\nend\n\n\nfunction App:validate_locations(loc_name)\n local objects = self.objects\n\n local game_board = objects.game_board\n local game_table = objects.game_table\n\n for loc_name, location in pairs(self.locations) do\n if not self.bonuses_by_external_location[loc_name] then\n local tiles = { }\n\n for loc_square_name in values(location) do\n local loc_square = objects.location_squares[loc_square_name]\n\n local found = false\n local next_location = false\n for obj in ivalues(loc_square.getObjects()) do\n local obj_is_tile = false\n if obj.name == \"Card\" or obj.name == \"Custom_Tile\" then\n local name = decolor(obj.getGMNotes())\n local tile_data = self.industry_tile_data[name]\n if tile_data then\n if found or tiles[obj] then\n broadcast_error(\"Unexpected object found at \" .. loc_square_name .. \"!\")\n print_error(\"Check for stacks and for tiles spanning multiple locations.\")\n next_location = true\n break\n end\n\n found = true -- Check for multiple tiles at the same location.\n tiles[obj] = true -- Check for tiles that span more than one location.\n\n obj_is_tile = true\n end\n end\n\n if not obj_is_tile then\n if self.resource_id_by_name[ obj.getGMNotes() ] then\n -- Ignore Coal, Iron and Beer.\n elseif obj == game_board or obj == game_table then\n -- Ignore the game board and the game table.\n else\n broadcast_error(\"Unexpected object found at \" .. loc_square_name .. \"!\")\n print_error(\"Check for stacks and for tiles spanning multiple locations.\")\n next_location = true\n break\n end\n end\n end\n\n if next_location then\n break\n end\n end\n end\n end\nend\n\n\nfunction App:validate_board()\n self:validate_links()\n self:validate_locations()\nend\n\n\n-- ================================================================================\n-- Link state calculation\n\n-- Doesn't validate.\nfunction App:get_value_of_location_for_link(loc_name)\n if self.bonuses_by_external_location[loc_name] then\n return self.bonuses_by_external_location[loc_name]\n end\n\n local location = self.locations[loc_name]\n local value = 0\n for loc_square_name in values(location) do\n local loc_square = self.objects.location_squares[loc_square_name]\n for obj in ivalues(loc_square.getObjects()) do\n if obj.name == \"Card\" or obj.name == \"Custom_Tile\" then\n local name = decolor(obj.getGMNotes())\n local tile_data = self.industry_tile_data[name]\n if tile_data and obj.is_face_down then\n value = value + tile_data.link_points\n end\n end\n end\n end\n\n return value\nend\n\n\n-- Doesn't validate.\nfunction App:get_value_of_link(link_name)\n local value = 0\n for loc_name in ivalues(self.loc_names_by_link_name[link_name]) do\n value = value + self:get_value_of_location_for_link(loc_name)\n end\n\n return value\nend\n\n\n-- Doesn't validate.\nfunction App:adjust_link_tile_value(link_name)\n local link_zone = self.objects.link_zones[link_name]\n for obj in ivalues(link_zone.getObjects()) do\n local name = decolor(obj.getGMNotes())\n if obj.name == \"Custom_Tile\" and ( name == \"Canal\" or name == \"Railway\" ) then\n local value = self:get_value_of_link(link_name)\n local state_id\n if value == 0 then\n state_id = App.MAX_LINK_VALUE + 1\n elseif value > App.MAX_LINK_VALUE then\n -- Hmmm, we got a higher value than we expect to be possible.\n -- It will still be scored correctly.\n state_id = App.MAX_LINK_VALUE\n else\n state_id = value\n end\n\n if state_id and state_id ~= obj.getStateId() then\n obj.setState(state_id)\n end\n end\n end\nend\n\n\n-- Doesn't validate.\nfunction App:adjust_link_tile_values()\n for link_name in keys(self.links) do\n self:adjust_link_tile_value(link_name)\n end\nend\n\n\n-- ================================================================================\n-- Version\n\nfunction App:get_version_from_log(change_log)\n local s, e = string.find(change_log, \"^%[.-%]\")\n if not s then\n return nil\n end\n\n return string.sub(change_log, s, e)\nend\n\n\nfunction App:get_version()\n return Promise:new(\n function(resolve, reject)\n local change_log_tab = first(Notes.getNotebookTabs(), |i,tab|tab.title == \"Change Log\")\n if not change_log_tab then\n reject(\"Can't find Change Log.\")\n return\n end\n\n local change_log = change_log_tab.body\n local version = self:get_version_from_log(change_log)\n if not version then\n reject(\"Can't determine version from Change Log.\")\n return\n end\n\n resolve(version)\n end\n )\nend\n\n\nfunction App:get_latest_change_log()\n local url = \"https://raw.githubusercontent.com/ikegami/tts_brass/latest/notes/\" .. self.mod_name .. \"/Change%20Log.txt\"\n return TtsWebRequest.get(url)\nend\n\n\nfunction App:check_if_latest()\n return\n Promise:all({\n self:get_version(),\n self:get_latest_change_log()\n })\n :next(\n function(result)\n local this_version, change_log = table.unpack(result)\n\n local latest_version = app:get_version_from_log(change_log)\n if not latest_version then\n error(\"Can't determine version from latest Change Log.\")\n end\n\n if this_version == latest_version then\n return true\n end\n\n local warning_color = Color(0xF3/255, 0xB2/255, 0x1C/255)\n local msg = \"This version of the mod is outdated.\\n\"\n msg = msg .. \"You can obtained the latest version from http://kinithin.ca/tts/brass\\n\"\n printToAll(msg .. \"See the log tab for more details.\", warning_color)\n\n msg = msg .. \"Here are the changes since the this version:\\n\"\n local lines = split(change_log, \"\\n\", true, true)\n for i, line in ipairs(lines) do\n if line == this_version then\n break\n end\n\n msg = msg .. \"\\n\" .. line\n end\n\n log(msg)\n\n Notes.setNotes(\n \"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\" ..\n \"See notebook for information.\\n\" ..\n \"\\n\" ..\n \"[FF0000]Newer version available at\\n\" ..\n \"http://kinithin.ca/tts/brass[FFFFFF]\"\n )\n\n return false\n end\n )\nend\n\n\n-- ================================================================================\n-- Scoring\n\nfunction App:update_score_data(era, score_info_recs)\n local state = self.state\n\n local score_data = state:get_score_data()\n\n for score_info_rec in ivalues(score_info_recs) do\n local color_name = score_info_rec.color_name\n local player_score_data = score_data[color_name]\n\n player_score_data[ era .. \"_immediate\" ] = score_info_rec.immediate_vps\n player_score_data[ era .. \"_links\" ] = score_info_rec.link_points\n player_score_data[ era .. \"_industries\" ] = score_info_rec.industry_points\n\n if era == \"rail\" then\n player_score_data.rail_money = score_info_rec.money_points\n end\n\n player_score_data[ era .. \"_era\" ] = score_info_rec.points\n\n player_score_data.total = score_info_rec.total\n player_score_data.order = score_info_rec.order\n player_score_data.position = score_info_rec.position\n end\nend\n\n\nfunction App:log_results()\n local state = self.state\n local score_board_rows = self.score_board_rows\n\n local score_data = state:get_score_data()\n local player_names_by_color_name = state:get_player_names_by_color_name()\n\n local color_names = get_keys(score_data)\n table.sort(color_names, |a,b|score_data[a].order < score_data[b].order)\n\n do\n local data = { }\n\n do\n local header = { \"player_color\", \"player_name\" }\n\n for row_idx, row in ipairs(score_board_rows) do\n table.insert(header, row.id)\n end\n\n table.insert(data, header)\n end\n\n for player_idx, color_name in ipairs(color_names) do\n local player_score_data = score_data[color_name]\n\n local player = { color_name, player_names_by_color_name[color_name] }\n\n for row_idx, row in ipairs(score_board_rows) do\n table.insert(player, player_score_data[row.id])\n end\n\n table.insert(data, player)\n end\n\n Notes.addNotebookTab({ title = \"Results (CSV)\", body = to_csv(data) })\n Notes.addNotebookTab({ title = \"Results (TSV)\", body = to_tsv(data) })\n end\n\n do\n local players = { }\n\n for player_idx, color_name in ipairs(color_names) do\n local player_score_data = score_data[color_name]\n\n local player = {\n player_color = color_name,\n player_name = player_names_by_color_name[color_name],\n }\n\n for row_idx, row in ipairs(score_board_rows) do\n player[row.id] = player_score_data[row.id]\n end\n\n table.insert(players, player)\n end\n\n local data = {\n players = players,\n }\n\n Notes.addNotebookTab({ title = \"Results (JSON)\", body = JSON.encode(data) })\n end\nend\n\n\nfunction App:announce_winner()\n local state = self.state\n local objects = self.objects\n local players = objects.players\n\n local score_data = state:get_score_data()\n local winners = filter(get_keys(score_data), |i,color_name|score_data[color_name].position == 1)\n\n local result\n if #winners == state:get_num_players() then\n result = \"Draw!\"\n elseif #winners == 1 then\n local color_name = winners[1]\n local name = state:get_player_names_by_color_name()[color_name]\n result = \"Congrats to \" .. name .. \"!\"\n else\n result = \"Congrats to \" .. format_item_list(winners) .. \"! (Tie)\"\n end\n\n broadcast_info(result)\n self.state:set_game_result(result)\n\n for color_name in ivalues(winners) do\n pulse_obj(players[color_name].mat, Color[color_name], { num_pulses = -1 })\n end\nend\n\n\n-- ================================================================================\n-- Misc\n\nfunction App:get_deck()\n local decks = { }\n for obj in ivalues(self.objects.play_deck_zone.getObjects()) do\n if obj.name == \"Deck\" or obj.name == \"Card\" then\n table.insert(decks, obj)\n end\n end\n\n if #decks == 0 then\n return\n elseif #decks == 1 then\n return decks[1]\n else\n table.sort(decks, |a,b|b.getPosition().y < a.getPosition().y)\n return decks[1] -- Top deck\n end\nend\n\n\nfunction App:all_settled_error_logger(value)\n for result in ivalues(value) do\n if result.status == \"rejected\" then\n broadcast_error(result.reason)\n end\n end\n\n return value\nend\n\n\n-- ================================================================================\n-- CSV\n\nfunction to_csv(data)\n local encoded_rows = { }\n for row in ivalues(data) do\n local encoded_cells = { }\n for cell in ivalues(row) do\n local cell_type = type(cell)\n if cell_type == \"string\" then\n table.insert(encoded_cells, '\"' .. string.gsub(cell, '\"', '\"\"') .. '\"')\n elseif cell_type == \"number\" then\n table.insert(encoded_cells, tostring(cell)) -- Not so good for non-integers.\n else\n table.insert(encoded_cells, \"\")\n end\n end\n\n table.insert(encoded_rows, table.concat(encoded_cells, \",\") .. \"\\n\")\n end\n\n return table.concat(encoded_rows, \"\")\nend\n\n\nfunction to_tsv(data)\n local encoded_rows = { }\n for row in ivalues(data) do\n local encoded_cells = { }\n for cell in ivalues(row) do\n local cell_type = type(cell)\n if cell_type == \"string\" then\n table.insert(encoded_cells, cell) -- Not so good for strings with tabs, line feeds, etc.\n elseif cell_type == \"number\" then\n table.insert(encoded_cells, tostring(cell)) -- Not so good for non-integers.\n else\n table.insert(encoded_cells, \"\")\n end\n end\n\n table.insert(encoded_rows, table.concat(encoded_cells, \"\\t\") .. \"\\n\")\n end\n\n return table.concat(encoded_rows, \"\")\nend\n\n\n-- ================================================================================\n\nreturn App\n\nend)\n__bundle_register(\"mods/Brass/lib/State\", function(require, _LOADED, __bundle_register, __bundle_modules)\n-- ================================================================================\n-- Game state\n-- ================================================================================\n\n-- Modules.\nlocal ArrayUtils = require(\"kintastic/lib/ArrayUtils\")\nlocal Const = require(\"kintastic/lib/Const\")\nlocal DictUtils = require(\"kintastic/lib/DictUtils\")\nlocal TableLock = require(\"kintastic/lib/TableLock\")\nlocal TtsMsgUtils = require(\"kintastic/lib/TtsMsgUtils\")\n\n-- Imports.\nlocal ivalues = ArrayUtils.ivalues\nlocal make_set = ArrayUtils.make_set\nlocal const = Const.const\nlocal get_keys = DictUtils.get_keys\nlocal merge = DictUtils.merge\nlocal declare = TableLock.declare\nlocal lock = TableLock.lock\nlocal broadcast_error = TtsMsgUtils.broadcast_error\n\n-- The class.\nlocal State = { }\n\nState.mt = {\n __index = State,\n}\n\n\n-- ================================================================================\n-- Private constants\n\nlocal state_vars = const(lock({\n \"current_phase\",\n \"player_names_by_color_name\",\n \"current_round\",\n \"current_player\", -- Color name.\n \"score_data\",\n \"game_result\",\n}))\n\nlocal is_state_var = const(make_set(state_vars))\n\nlocal option_names = const(lock({\n \"min_players\", -- Force the game to have at least this many players.\n \"skip_discard_check\", -- Don't enforce valid turns if true.\n \"cool_down\", -- Length of the cool-down on the game-advancing button.\n \"short\", -- Reduces each era to one round.\n}))\n\nlocal is_option_name = const(make_set(option_names))\n\nlocal derived_vars = const(lock({\n \"game_started\",\n \"active_players\", -- Array of color names.\n \"is_active_player\", -- Keyed by color names.\n \"num_players\",\n \"num_rounds\",\n}))\n\n\n-- ================================================================================\n-- Public constructor\n\nfunction State.new(class, app)\n local self = setmetatable({}, class.mt)\n\n local state = lock({ })\n declare(state, unpack(state_vars))\n\n local derived = lock({ })\n declare(derived, unpack(derived_vars))\n\n local opts = lock({ })\n declare(opts, unpack(option_names))\n\n self.app = app\n self.state = state\n self.derived = derived\n self.opts = opts\n self.is_state_var = is_state_var\n self.is_option_name = is_option_name\n\n state.current_phase = app.Phases.NOT_STARTED\n\n self:update_derived()\n\n return self\nend\n\n\n-- ================================================================================\n-- Accessors\n\nfor state_var in ivalues(state_vars) do\n State[\"get_\" .. state_var] = function(self)\n return self.state[state_var]\n end\n\n State[\"set_\" .. state_var] = function(self, val)\n self.state[state_var] = val\n self:update_derived()\n end\nend\n\n\nfor derived_var in ivalues(derived_vars) do\n if derived_var ~= \"is_active_player\" then\n State[\"get_\" .. derived_var] = function(self)\n return self.derived[derived_var]\n end\n end\nend\n\nfunction State:is_active_player(player_color)\n return self.derived.is_active_player[player_color]\nend\n\n\nfor option_name in ivalues(option_names) do\n State[\"get_opt_\" .. option_name] = function(self)\n return self.opts[option_name]\n end\n\n State[\"set_opt_\" .. option_name] = function(self, val)\n self.opts[option_name] = val\n end\nend\n\n\n-- ================================================================================\n-- Public instance method State:serialize\n\nfunction State:serialize()\n if self.derived.game_started then\n return {\n state = self.state,\n opts = self.opts,\n }\n else\n return nil\n end\nend\n\n\n-- ================================================================================\n-- Public instance method State:merge_saved_state\n\nfunction State:merge_saved_state(saved_state)\n if not saved_state then\n return\n end\n\n if saved_state.state then self:merge( saved_state.state ) end\n if saved_state.opts then self:merge_opts( saved_state.opts ) end\nend\n\n\n-- ================================================================================\n-- Public instance method State:merge\n\nfunction State:merge(dict)\n local is_state_var = self.is_state_var\n\n for k, v in pairs(dict) do\n if is_state_var[k] then\n self.state[k] = v\n else\n broadcast_error(\"\\\"\" .. k .. \"\\\" isn't a valid State variable.\")\n end\n end\n\n self:update_derived()\nend\n\n\n-- ================================================================================\n-- Public instance method State:merge_opts\n\nfunction State:merge_opts(dict)\n local is_option_name = self.is_option_name\n\n for k, v in pairs(dict) do\n if is_option_name[k] then\n self.opts[k] = v\n else\n broadcast_error(\"\\\"\" .. k .. \"\\\" isn't a valid State option.\")\n end\n end\nend\n\n\n-- ================================================================================\n-- Public instance method State:update_derived\n\nfunction State:update_derived()\n local state = self.state\n local opts = self.opts\n local derived = self.derived\n\n derived.game_started = state.current_phase > self.app.Phases.NOT_STARTED\n\n if derived.game_started then\n derived.active_players = get_keys(state.player_names_by_color_name)\n derived.is_active_player = make_set(derived.active_players)\n derived.num_players = #derived.active_players\n derived.num_rounds = opts.short and 1 or 12 - derived.num_players\n else\n derived.active_players = nil\n derived.is_active_player = nil\n derived.num_players = nil\n derived.num_rounds = nil\n end\nend\n\n\n-- ================================================================================\n\nreturn State\n\nend)\n__bundle_register(\"kintastic/lib/TtsMsgUtils\", function(require, _LOADED, __bundle_register, __bundle_modules)\n-- ================================================================================\r\n-- TTS messaging utils\r\n-- ================================================================================\r\n\r\n-- Modules.\r\nlocal TtsPlayerUtils = require(\"kintastic/lib/TtsPlayerUtils\")\r\n\r\n-- The module.\r\nlocal TtsMsgUtils = { }\r\n\r\n\r\n-- ================================================================================\r\n-- Private constants\r\n\r\nlocal EMPTY_TABLE = { }\r\n\r\nlocal ERROR_COLOR = Color.Red\r\nlocal INFO_COLOR = Color.White\r\n\r\n\r\n-- ================================================================================\r\n-- Public interface\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsMsgUtils.broadcast_info\r\n\r\nfunction TtsMsgUtils.broadcast_info(msg)\r\n broadcastToAll(msg, INFO_COLOR)\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsMsgUtils.print_info\r\n\r\nfunction TtsMsgUtils.print_info(msg)\r\n printToAll(msg, INFO_COLOR)\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsMsgUtils.print_error\r\n\r\nfunction TtsMsgUtils.print_error(msg)\r\n printToAll(msg, ERROR_COLOR)\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsMsgUtils.broadcast_error\r\n\r\n-- receiver_color_name is optional.\r\nfunction TtsMsgUtils.broadcast_error(msg, receiver_color_name)\r\n if receiver_color_name then\r\n broadcastToColor(msg, receiver_color_name, ERROR_COLOR)\r\n else\r\n broadcastToAll(msg, ERROR_COLOR)\r\n end\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsMsgUtils.broadcast_error_to_host\r\n\r\nfunction TtsMsgUtils.broadcast_error_to_host(msg)\r\n local host = TtsPlayerUtils.get_host()\r\n broadcastToColor(msg, host.color, ERROR_COLOR)\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsMsgUtils.broadcast_internal_error\r\n\r\nfunction TtsMsgUtils.broadcast_internal_error(msg)\r\n broadcastToAll(\"Internal error: \" .. msg, ERROR_COLOR)\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsMsgUtils.broadcast_internal_error_to_host\r\n\r\nfunction TtsMsgUtils.broadcast_internal_error_to_host(msg)\r\n local host = TtsPlayerUtils.get_host()\r\n broadcastToColor(\"Internal error: \" .. msg, host.color, ERROR_COLOR)\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsMsgUtils.announce_player_turn\r\n\r\nfunction TtsMsgUtils.announce_player_turn(color_name)\r\n local player = Player[color_name]\r\n if player.seated then\r\n Turns.enable = false\r\n Turns.reverse_order = false\r\n Turns.skip_empty_hands = false\r\n Turns.pass_turns = false\r\n Turns.disable_interactations = false\r\n Turns.type = 2 -- Custom\r\n Turns.order = { color_name }\r\n Turns.turn_color = color_name\r\n Turns.enable = true\r\n Turns.enable = false\r\n else\r\n printToAll(color_name .. \"’s turn.\", color_name)\r\n end\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsMsgUtils.pulse_obj\r\n--\r\n-- The second argument is an Color object or a Color-like table.\r\n-- The third argument is optional.\r\n-- If the num_pulses option is set to -1,\r\n-- the pulsing will continue until canceled.\r\n--\r\n-- The function returns a function that can be called\r\n-- to cancel the pulsing (if still ongoing).\r\n\r\nfunction TtsMsgUtils.pulse_obj(obj, color, opts)\r\n opts = opts or EMPTY_TABLE\r\n\r\n local pulse_dur = opts.pulse_dur or 1.2\r\n local num_steps_per_edge = opts.num_steps_per_edge or 12\r\n local num_pulses = opts.num_pulses or 4\r\n\r\n color = Color(color)\r\n local initial_alpha = color.a\r\n\r\n num_pulses = math.floor(num_pulses)\r\n if num_pulses == 0 then\r\n return\r\n end\r\n\r\n local num_steps_per_pulse = num_steps_per_edge * 2\r\n local step_dur = pulse_dur / num_steps_per_pulse\r\n\r\n local wait_id\r\n local step_num = 0\r\n local pulse_num = 1\r\n local f = function()\r\n step_num = step_num + 1\r\n if step_num == num_steps_per_pulse then\r\n step_num = 0\r\n obj.highlightOff()\r\n\r\n if num_pulses >= 0 then\r\n pulse_num = pulse_num + 1\r\n if pulse_num > num_pulses then\r\n obj.highlightOff()\r\n wait_id = nil\r\n end\r\n end\r\n else\r\n -- progress = e^(-128 (x - 0.5) ^ 4)\r\n -- A plot can found here:\r\n -- https://www.wolframalpha.com/input/?i=alpha+%3D+e%5E%28-128+%28x+-+0.5%29+%5E+4%29+from+0+to+1\r\n -- In short, it favours the on state and the off state, and provides a smooth transition between the two.\r\n local progress = step_num / num_steps_per_pulse - 0.5\r\n progress = progress * progress\r\n progress = progress * progress\r\n progress = math.exp(-128 * progress)\r\n\r\n color.a = initial_alpha * progress\r\n obj.highlightOn(color)\r\n end\r\n end\r\n\r\n if num_pulses > 0 then\r\n local num_steps = num_pulses * num_steps_per_pulse\r\n wait_id = Wait.time(f, step_dur, num_steps)\r\n else\r\n wait_id = Wait.time(f, step_dur, -1)\r\n end\r\n\r\n return function()\r\n if wait_id then\r\n Wait.stop(wait_id)\r\n obj.highlightOff()\r\n wait_id = nil\r\n end\r\n end\r\nend\r\n\r\n\r\n-- ================================================================================\r\n\r\nreturn TtsMsgUtils\r\n\nend)\n__bundle_register(\"kintastic/lib/TtsPlayerUtils\", function(require, _LOADED, __bundle_register, __bundle_modules)\n-- ================================================================================\r\n-- TTS player utils\r\n-- ================================================================================\r\n\r\n-- Modules.\r\nlocal ArrayUtils = require(\"kintastic/lib/ArrayUtils\")\r\nlocal Iters = require(\"kintastic/lib/Iters\")\r\n\r\n-- Imports.\r\nlocal ivalues = Iters.ivalues\r\n\r\n-- The module.\r\nlocal TtsPlayerUtils = { }\r\n\r\n\r\n-- ================================================================================\r\n-- Privates\r\n\r\n-- ----------------------------------------\r\n-- Private constants\r\n\r\nlocal COLOR_NAMES = {\r\n \"White\",\r\n \"Brown\",\r\n \"Red\",\r\n \"Orange\",\r\n \"Yellow\",\r\n \"Green\",\r\n \"Teal\",\r\n \"Blue\",\r\n \"Purple\",\r\n \"Pink\",\r\n \"Grey\",\r\n \"Black\",\r\n}\r\n\r\nlocal COLOR_NAMES_LOOKUP = { }\r\nfor i, color_name in ipairs(COLOR_NAMES) do\r\n COLOR_NAMES_LOOKUP[color_name] = true\r\nend\r\n\r\n\r\n-- ================================================================================\r\n-- Public interface\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsPlayerUtils.get_host\r\n\r\nfunction TtsPlayerUtils.get_host()\r\n for player in ivalues(Player.getPlayers()) do\r\n if player.host then\r\n return player\r\n end\r\n end\r\n\r\n return nil\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsPlayerUtils.get_admins\r\n--\r\n-- The first will always be the host.\r\n\r\nfunction TtsPlayerUtils.get_admins()\r\n local admins = { }\r\n\r\n local players = Player.getPlayers()\r\n for player in ivalues(players) do\r\n if player.host then\r\n table.insert(admins, player)\r\n end\r\n end\r\n\r\n for player in ivalues(players) do\r\n if player.promoted then\r\n table.insert(admins, player)\r\n end\r\n end\r\n\r\n return admins\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsPlayerUtils.get_seated_players\r\n--\r\n-- The arguments can be omitted.\r\n-- If omitted or nil, they default to false.\r\n\r\nfunction TtsPlayerUtils.get_seated_players(incl_gm, incl_spec)\r\n local seated = { }\r\n for player in ivalues(Player.getPlayers()) do\r\n if\r\n player.seated and\r\n not (player.color == \"Black\" and not incl_gm ) and\r\n not (player.color == \"Grey\" and not incl_spec )\r\n then\r\n table.insert(seated, player)\r\n end\r\n end\r\n\r\n return seated\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsPlayerUtils.get_seated_color_names\r\n--\r\n-- The arguments can be omitted.\r\n-- If omitted or nil, they default to false.\r\n\r\nfunction TtsPlayerUtils.get_seated_color_names(incl_gm, incl_spec)\r\n local seated = { }\r\n for player in ivalues(Player.getPlayers()) do\r\n if\r\n player.seated and\r\n not (player.color == \"Black\" and not incl_gm ) and\r\n not (player.color == \"Grey\" and not incl_spec )\r\n then\r\n table.insert(seated, player.color)\r\n end\r\n end\r\n\r\n return seated\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsPlayerUtils.keep_seated_color_names\r\n\r\nfunction TtsPlayerUtils.keep_seated_color_names(color_names)\r\n return ArrayUtils.filter(\r\n color_names,\r\n |color_name|Player[color_name].seated\r\n )\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsPlayerUtils.decolor\r\n\r\nfunction TtsPlayerUtils.decolor(name)\r\n if not name then\r\n return name\r\n end\r\n\r\n local pos = string.find(name, \" \", 1, true)\r\n if not pos then\r\n return name\r\n end\r\n\r\n local color_name = string.sub(name, 1, pos-1)\r\n if not COLOR_NAMES_LOOKUP[color_name] then\r\n return name\r\n end\r\n\r\n return string.sub(name, pos+1), color_name\r\nend\r\n\r\n\r\n-- ================================================================================\r\n\r\nreturn TtsPlayerUtils\r\n\nend)\n__bundle_register(\"kintastic/lib/Iters\", function(require, _LOADED, __bundle_register, __bundle_modules)\n-- ================================================================================\r\n-- Iters\r\n-- ================================================================================\r\n\r\n-- Modules.\r\nlocal ArrayUtils = require(\"kintastic/lib/ArrayUtils\")\r\nlocal DictUtils = require(\"kintastic/lib/DictUtils\")\r\n\r\n-- The module.\r\nlocal Iters = { }\r\n\r\n\r\n-- ================================================================================\r\n-- Public interface\r\n\r\n-- ----------------------------------------\r\n-- Public function Iters.ivalues\r\n\r\nIters.ivalues = ArrayUtils.ivalues\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function Iters.dipairs\r\n-- Public function Iters.ipairs_desc\r\n\r\nIters.dipairs = ArrayUtils.dipairs\r\nIters.ipairs_desc = ArrayUtils.ipairs_desc\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function Iters.divalues\r\n-- Public function Iters.ivalues_desc\r\n\r\nIters.divalues = ArrayUtils.divalues\r\nIters.ivalues_desc = ArrayUtils.ivalues_desc\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function Iters.sivalues\r\n-- Public function Iters.sorted_ivalues\r\n\r\nIters.sivalues = ArrayUtils.sivalues\r\nIters.sorted_ivalues = ArrayUtils.sorted_ivalues\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function Iters.keys\r\n\r\nIters.keys = DictUtils.keys\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function Iters.values\r\n\r\nIters.values = DictUtils.values\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function Iters.spairs\r\n-- Public function Iters.sorted_pairs\r\n\r\nIters.spairs = DictUtils.spairs\r\nIters.sorted_pairs = DictUtils.sorted_pairs\r\n\r\n\r\n-- ================================================================================\r\n\r\nreturn Iters\r\n\nend)\n__bundle_register(\"kintastic/lib/DictUtils\", function(require, _LOADED, __bundle_register, __bundle_modules)\n-- ================================================================================\r\n-- Dict utils\r\n-- ================================================================================\r\n\r\n-- Modules.\r\nlocal TableUtils = require(\"kintastic/lib/TableUtils\")\r\n\r\n-- The module.\r\nlocal DictUtils = { }\r\n\r\n-- Inherit functions from TableUtils.\r\nsetmetatable(DictUtils, {\r\n __index = TableUtils,\r\n})\r\n\r\n\r\n-- ================================================================================\r\n-- Public interface\r\n\r\n-- ----------------------------------------\r\n-- Public function DictUtils.get_keys\r\n\r\nfunction DictUtils.get_keys(dict)\r\n local ks = { }\r\n for k in pairs(dict) do table.insert(ks, k) end\r\n return ks\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function DictUtils.get_values\r\n\r\nfunction DictUtils.get_values(dict)\r\n local vs = { }\r\n for k, v in pairs(dict) do table.insert(vs, v) end\r\n return vs\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function DictUtils.map_values\r\n--\r\n-- Equivalent to TableUtils.map(DictUtils.get_values(tbl, cb))\r\n\r\nfunction DictUtils.map_values(tbl, cb)\r\n local mapped = { }\r\n for k, v in pairs(tbl) do\r\n table.insert(mapped, cb(v))\r\n end\r\n\r\n return mapped\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function DictUtils.pick\r\n\r\nfunction DictUtils.pick(dict, test)\r\n local picked = { }\r\n for k, v in pairs(dict) do\r\n if test(k, v) then\r\n picked[k] = v\r\n end\r\n end\r\n\r\n return picked\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function DictUtils.select\r\n--\r\n-- WARNING: DEPRECATED/OBSLETE.\r\n\r\nDictUtils.select = DictUtils.pick\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function DictUtils.merge\r\n--\r\n-- Adds the elements of `tbl2` to `tbl1`.\r\n-- Shallow copy.\r\n-- Returns `tbl1`.\r\n\r\nfunction DictUtils.merge(tbl1, tbl2)\r\n for k, v in pairs(tbl2) do\r\n tbl1[k] = v\r\n end\r\n\r\n return tbl1\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function DictUtils.rmerge\r\n--\r\n-- Recursive version of DictUtils.merge.\r\n-- `tbl1` controls the recursion.\r\n-- Returns `tbl1`.\r\n\r\nfunction DictUtils.rmerge(tbl1, tbl2)\r\n for k, v in pairs(tbl2) do\r\n if type(tbl1[k]) == \"table\" then\r\n DictUtils.rmerge(tbl1[k], v)\r\n else\r\n tbl1[k] = v\r\n end\r\n end\r\n\r\n return tbl1\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function DictUtils.keys\r\n--\r\n-- For when you don't need the value.\r\n--\r\n-- Usage:\r\n-- for value in DictUtils.keys(dict) do ... end\r\n\r\nfunction DictUtils.keys(dict)\r\n local i = nil\r\n return function()\r\n i = next(dict, i)\r\n -- `i ~= nil` would cause issues in the event of destroyed TTS objects in the set.\r\n -- `type(i) ~= nil` would be most reliable, but surely slower.\r\n if i or i ~= nil then\r\n return i\r\n end\r\n end\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function DictUtils.values\r\n--\r\n-- For when you don't need the key.\r\n--\r\n-- Usage:\r\n-- for value in DictUtils.values(dict) do ... end\r\n\r\nfunction DictUtils.values(dict)\r\n local i = nil\r\n return function()\r\n local v\r\n i, v = next(dict, i)\r\n -- `i ~= nil` would cause issues in the event of destroyed TTS objects in the set.\r\n -- `type(i) ~= nil` would be most reliable, but surely slower.\r\n if i or i ~= nil then\r\n return v\r\n end\r\n end\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function DictUtils.spairs\r\n-- Public function DictUtils.sorted_pairs\r\n\r\n-- Iterates over a dictionary in ascending key order (default) or in a user-defined order.\r\n--\r\n-- Usage:\r\n-- for key, value in DictUtils.spairs(dict) do ... end\r\n-- for key, value in DictUtils.spairs(dict, compare_func) do ... end\r\n--\r\n-- Example:\r\n--\r\n-- local characters = {\r\n-- Red = { name = ..., ... },\r\n-- Blue = { name = ..., ... },\r\n-- ...\r\n-- }\r\n--\r\n-- for player_color, character in DictUtils.spairs(characters, |ka,va,kb,vb|va.name < vb.name) do\r\n-- ...\r\n-- end\r\n\r\nfunction DictUtils.spairs(dict, compare)\r\n local ks = get_keys(dict)\r\n table.sort(ks, |ka,kb|compare(ka, dict[ka], kb, dict[kb]))\r\n local i = 0 -- Iterator state\r\n return function() -- Iterator function\r\n i = i + 1\r\n -- `ks[i] ~= nil` would cause issues in the event of destroyed TTS objects in the set.\r\n -- `type(ks[i]) ~= nil` would be most reliable, but surely slower.\r\n if ks[i] or ks[i] ~= nil then\r\n return ks[i], dict[ks[i]]\r\n end\r\n end\r\nend\r\n\r\nDictUtils.sorted_pairs = DictUtils.spairs\r\n\r\n\r\n-- ================================================================================\r\n\r\nreturn DictUtils\r\n\nend)\n__bundle_register(\"kintastic/lib/TableUtils\", function(require, _LOADED, __bundle_register, __bundle_modules)\n-- ================================================================================\r\n-- Table utils\r\n-- ================================================================================\r\n\r\n-- The module.\r\nlocal TableUtils = { }\r\n\r\n\r\n-- ================================================================================\r\n-- Public interface\r\n\r\n-- ----------------------------------------\r\n-- Public function TableUtils.copy\r\n--\r\n-- Shallow copy.\r\n\r\nfunction TableUtils.copy(tbl)\r\n local copy = { }\r\n for k, v in pairs(tbl) do\r\n copy[k] = v\r\n end\r\n\r\n return copy\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TableUtils.map\r\n\r\nfunction TableUtils.map(tbl, cb)\r\n local mapped = { }\r\n for k, v in pairs(tbl) do\r\n mapped[k] = cb(v)\r\n end\r\n\r\n return mapped\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TableUtils.count\r\n\r\nfunction TableUtils.count(tbl, cb)\r\n local count = 0\r\n for k, v in pairs(tbl) do\r\n if cb(v) then\r\n count = count + 1\r\n end\r\n end\r\n\r\n return count\r\nend\r\n\r\n\r\n-- ================================================================================\r\n\r\nreturn TableUtils\r\n\nend)\n__bundle_register(\"kintastic/lib/ArrayUtils\", function(require, _LOADED, __bundle_register, __bundle_modules)\n-- ================================================================================\r\n-- Array utils\r\n-- ================================================================================\r\n\r\n-- Modules.\r\nlocal TableUtils = require(\"kintastic/lib/TableUtils\")\r\n\r\n-- The module.\r\nlocal ArrayUtils = { }\r\n\r\n-- Inherit functions from TableUtils.\r\nsetmetatable(ArrayUtils, {\r\n __index = TableUtils,\r\n})\r\n\r\n\r\n-- ================================================================================\r\n-- Public interface\r\n\r\n-- ----------------------------------------\r\n-- Public function ArrayUtils.push\r\n--\r\n-- Returns the added value(s).\r\n\r\nfunction ArrayUtils.push(array, ...)\r\n local n = select(\"#\", ...)\r\n for i = 1, n do\r\n local val = select(i, ...)\r\n table.insert(array, val)\r\n end\r\n\r\n return ...\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function ArrayUtils.filter\r\n\r\nfunction ArrayUtils.filter(array, test)\r\n local filtered = { }\r\n for i, v in ipairs(array) do\r\n if test(i, v) then\r\n table.insert(filtered, v)\r\n end\r\n end\r\n\r\n return filtered\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function ArrayUtils.first\r\n\r\nfunction ArrayUtils.first(array, test)\r\n local filtered = { }\r\n for i, v in ipairs(array) do\r\n if test(i, v) then\r\n return v\r\n end\r\n end\r\n\r\n return nil\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function ArrayUtils.first_idx\r\n\r\nfunction ArrayUtils.first_idx(array, test)\r\n local filtered = { }\r\n for i, v in ipairs(array) do\r\n if test(i, v) then\r\n return i, v\r\n end\r\n end\r\n\r\n return\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function ArrayUtils.shuffle_inplace\r\n\r\nfunction ArrayUtils.shuffle_inplace(array)\r\n for i = #array, 2, -1 do\r\n local j = math.random(i)\r\n array[i], array[j] = array[j], array[i]\r\n end\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function ArrayUtils.shuffle\r\n\r\nfunction ArrayUtils.shuffle(array)\r\n local copy = { }\r\n for i = 1, #array do\r\n copy[i] = array[i]\r\n end\r\n\r\n ArrayUtils.shuffle_inplace(copy)\r\n return copy\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function ArrayUtils.sum\r\n\r\nfunction ArrayUtils.sum(array)\r\n local sum = 0\r\n for i, val in ipairs(array) do\r\n sum = sum + 1\r\n end\r\n\r\n return sum\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function ArrayUtils.make_set\r\n\r\nfunction ArrayUtils.make_set(array, key_gen, val_gen)\r\n if key_gen == nil then\r\n key_gen = function(_) return _ end\r\n end\r\n\r\n if val_gen == nil then\r\n val_gen = function(_) return true end\r\n end\r\n\r\n local set = { }\r\n for i, v in ipairs(array) do\r\n set[key_gen(v)] = val_gen(v)\r\n end\r\n\r\n return set\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function ArrayUtils.format_item_list\r\n\r\nfunction ArrayUtils.format_item_list(array, locale)\r\n local n = #array\r\n if n == 0 then\r\n return \"none\"\r\n end\r\n\r\n if n == 1 then\r\n return array[1]\r\n end\r\n\r\n local s = array[1]\r\n for i = 2, n-1 do\r\n s = s .. \", \" .. array[i]\r\n end\r\n\r\n return s .. \" and \" .. array[n]\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function ArrayUtils.ivalues\r\n--\r\n-- For when you don't need the index.\r\n--\r\n-- Usage:\r\n-- for value in ArrayUtils.ivalues(array) do ... end\r\n\r\nfunction ArrayUtils.ivalues(array)\r\n local i = 0\r\n local n = #array\r\n return function()\r\n if i < n then\r\n i = i + 1\r\n return array[i]\r\n end\r\n end\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function ArrayUtils.dipairs\r\n-- Public function ArrayUtils.ipairs_desc\r\n--\r\n-- Usage:\r\n-- for index, value in ArrayUtils.dipairs(array) do ... end\r\n\r\nfunction ArrayUtils.dipairs(array)\r\n local i = #array + 1\r\n return function()\r\n if i > 1 then\r\n i = i - 1\r\n return i, array[i]\r\n end\r\n end\r\nend\r\n\r\nArrayUtils.ipairs_desc = ArrayUtils.dipairs\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function ArrayUtils.divalues\r\n-- Public function ArrayUtils.ivalues_desc\r\n--\r\n-- Usage:\r\n-- for value in ArrayUtils.divalues(array) do ... end\r\n\r\nfunction ArrayUtils.divalues(array)\r\n local i = #array + 1\r\n return function()\r\n if i > 1 then\r\n i = i - 1\r\n return array[i]\r\n end\r\n end\r\nend\r\n\r\nArrayUtils.ivalues_desc = ArrayUtils.divalues\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function ArrayUtils.sivalues\r\n-- Public function ArrayUtils.sorted_ivalues\r\n\r\n-- Iterates over an array in ascending value order (default) or in a user-defined order.\r\n--\r\n-- Usage:\r\n-- for value in ArrayUtils.sivalues(array) do ... end\r\n-- for value in ArrayUtils.sivalues(array, compare_func) do ... end\r\n--\r\n-- Example:\r\n--\r\n-- local characters = {\r\n-- { name = ..., ... },\r\n-- { name = ..., ... },\r\n-- ...\r\n-- }\r\n--\r\n-- for character in ArrayUtils.sivalues(characters, |a,b|a.name < b.name) do\r\n-- ...\r\n-- end\r\n\r\nfunction ArrayUtils.sivalues(array, compare)\r\n local copy = ArrayUtils.copy(array)\r\n table.sort(copy, compare)\r\n local i = 0 -- Iterator state\r\n return function() -- Iterator function\r\n i = i + 1\r\n if copy[i] ~= nil then\r\n return copy[i]\r\n end\r\n end\r\nend\r\n\r\nArrayUtils.sorted_ivalues = ArrayUtils.sivalues\r\n\r\n\r\n-- ================================================================================\r\n\r\nreturn ArrayUtils\r\n\nend)\n__bundle_register(\"kintastic/lib/TableLock\", function(require, _LOADED, __bundle_register, __bundle_modules)\n-- ================================================================================\r\n-- Table locking tools\r\n-- ================================================================================\r\n\r\n-- Modules.\r\nlocal WarningHandlers = require(\"kintastic/lib/WarningHandlers\")\r\n\r\n-- Forward declarations for privates found at the bottom.\r\nlocal attach_self\r\n\r\n-- The module.\r\nlocal TableLock = { }\r\n\r\n-- Constant.\r\nlocal hook = \"__kintastic_TableLock\"\r\n\r\n\r\n-- ================================================================================\r\n-- Public on_violation handlers.\r\n\r\nfor k, v in pairs(WarningHandlers) do\r\n TableLock[k] = v\r\nend\r\n\r\n\r\n-- ================================================================================\r\n-- Public attributes\r\n--\r\n-- TableLock.on_violation(msg) is called on a constraint violation.\r\n-- - TableLock.on_violation(msg) may call error() to abort execution.\r\n-- - If TableLock.on_violation(msg) returns something true, the operation will proceed.\r\n-- - If TableLock.on_violation(msg) returns something false, the operationg will fail silently.\r\n-- - Note that TableLock.on_violation(msg) is also called if declare, declare_and_set or merge is misused.\r\n-- - The functions provided by the WarningHandlers module may be used here. They are re-exported by this module.\r\n--\r\n-- TableLock.limited_functionality reports if checks performed on writes are skipped to avoid\r\n-- a bug fixed in 1.6.0.0 that could result in a mysterious \"Unexpected LuaType Tuple\" fatal error.\r\n-- https://github.com/moonsharp-devs/moonsharp/issues/133\r\n-- Since TTS now uses a newer version of MoonSharp, this is always false.\r\n\r\nTableLock.if_dev = nil -- OBSOLETE. Use a custom on_violation instead.\r\nTableLock.on_violation = TableLock.fatal_violation -- Editable.\r\nTableLock.limited_functionality = false -- Read-only.\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TableLock.declare\r\n--\r\n-- Access to the list of provided names will no\r\n-- longer be forbidden for the provided table.\r\n--\r\n-- This even works on tables that were never locked.\r\n\r\nfunction TableLock.declare(tbl, ...)\r\n local mt = getmetatable(tbl)\r\n local self = mt and mt[hook]\r\n if not self then\r\n return tbl\r\n end\r\n\r\n local c = select(\"#\", ...)\r\n for i = 1, c do\r\n local k = select(i, ...)\r\n self.declared[k] = true\r\n end\r\n\r\n return tbl\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TableLock.declare_and_set\r\n--\r\n-- This even works on tables that were never locked.\r\n\r\nfunction TableLock.declare_and_set(tbl, k, v)\r\n TableLock.declare(tbl, k)\r\n tbl[k] = v\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TableLock.merge\r\n--\r\n-- This even works on tables that were never locked.\r\n\r\nfunction TableLock.merge(dst, src)\r\n local mt = getmetatable(dst)\r\n local self = mt and mt[hook]\r\n if self then\r\n for k, v in pairs(src) do\r\n self.declared[k] = true\r\n dst[k] = v\r\n end\r\n else\r\n for k, v in pairs(src) do\r\n dst[k] = v\r\n end\r\n end\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TableLock.lock\r\n--\r\n-- Prevents any accesses or changes to undeclared fields of a table.\r\n-- Fields already in the table when this is called are considered declared.\r\n-- Fields can also be declared using `.declare()` and `.declare_and_set()`.\r\n--\r\n-- Locking a table that's already locked has no effect.\r\n\r\nfunction TableLock.lock(tbl)\r\n local mt, self = attach_self(tbl)\r\n if self.enabled then\r\n return tbl\r\n end\r\n\r\n for k in pairs(tbl) do\r\n self.declared[k] = true\r\n end\r\n\r\n self.enabled = true\r\n\r\n if not self.hooked then\r\n local old_index = mt.__index or rawget\r\n local old_newindex = mt.__newindex or rawset\r\n\r\n mt.__index = function(t, k)\r\n if not self.declared[k] and self.enabled then\r\n if not TableLock.on_violation(\"Undeclared access of \" .. tostring(k)) then\r\n return\r\n end\r\n end\r\n\r\n return old_index(t, k)\r\n end\r\n\r\n mt.__newindex = function(t, k, v)\r\n if not self.declared[k] and self.enabled then\r\n if not TableLock.on_violation(\"Undeclared write to \" .. tostring(k)) then\r\n return\r\n end\r\n end\r\n\r\n return old_newindex(t, k, v)\r\n end\r\n\r\n self.hooked = true\r\n end\r\n\r\n return tbl\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TableLock.lock_if_dev\r\n--\r\n-- OBSOLETE. For backwards compatibility only.\r\n\r\nfunction TableLock.lock_if_dev(tbl)\r\n add_state(tbl)\r\n return tbl\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TableLock.rlock\r\n--\r\n-- A recursive version of TableLock.lock\r\n\r\nfunction TableLock.rlock(tbl)\r\n TableLock.lock(tbl)\r\n\r\n for k, v in pairs(tbl) do\r\n if type(v) == \"table\" then\r\n TableLock.rlock(v)\r\n end\r\n end\r\n\r\n return tbl\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TableLock.rlock_if_dev\r\n--\r\n-- OBSOLETE. For backwards compatibility only.\r\n\r\nfunction TableLock.rlock_if_dev(tbl)\r\n add_state(tbl)\r\n\r\n for k, v in pairs(tbl) do\r\n if type(v) == \"table\" then\r\n TableLock.rlock_if_dev(v)\r\n end\r\n end\r\n\r\n return tbl\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TableLock.unlock\r\n--\r\n-- For the extent of the call to the callback,\r\n-- no access to the provided table will be forbidden.\r\n--\r\n-- The first value returned by the callback is returned.\r\n-- This function is tolerant of exceptions in the callback.\r\n\r\nfunction TableLock.unlock(tbl, cb)\r\n local mt = getmetatable(tbl)\r\n local self = mt and mt[hook]\r\n if not self or not self.enabled then\r\n return cb()\r\n end\r\n\r\n local success, rv = pcall(\r\n function()\r\n self.enabled = false\r\n cb()\r\n self.enabled = true\r\n\r\n local declared = self.declared\r\n for k in pairs(tbl) do\r\n declared[k] = true\r\n end\r\n end\r\n )\r\n\r\n self.enabled = true\r\n\r\n if success then\r\n return rv\r\n else\r\n error(rv)\r\n end\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TableLock.declare_atom_symbols\r\n--\r\n-- Useful if you lock _G and use the TTS plugin for Atom.\r\n-- _G must be locked before calling this.\r\n\r\nfunction TableLock.declare_atom_symbols()\r\n TableLock.declare(_G,\r\n \"__atom_highlight_guid\",\r\n \"__atom_highlight_guids\"\r\n )\r\nend\r\n\r\n\r\n-- ================================================================================\r\n-- Public on_violation handlers.\r\n\r\n-- ----------------------------------------\r\n-- Public on_violation handler TableLock.fatal_violation\r\n--\r\n-- Announce the violation and proceed normally.\r\n\r\nTableLock.fatal_violation = error\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public on_violation handler TableLock.announce_violation\r\n--\r\n-- Announce the violation to the host and proceed normally.\r\n\r\nfunction TableLock.announce_violation(msg)\r\n for i, player in ipairs(Player.getPlayers()) do\r\n if player.host then\r\n broadcastToColor(msg, player.color, Color.Red)\r\n break\r\n end\r\n end\r\n\r\n return true\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public on_violation handler TableLock.ignore_violation\r\n--\r\n-- Proceed normally.\r\n\r\nfunction TableLock.ignore_violation(msg)\r\n return true\r\nend\r\n\r\n\r\n-- ================================================================================\r\n-- Privates\r\n\r\n-- ----------------------------------------\r\n-- Private function attach_self\r\n\r\nfunction attach_self(tbl)\r\n local mt = getmetatable(tbl)\r\n if not mt then\r\n mt = { }\r\n setmetatable(tbl, mt)\r\n end\r\n\r\n local self = mt[hook]\r\n if not self then\r\n self = {\r\n hooked = false,\r\n enabled = false,\r\n declared = { },\r\n }\r\n\r\n mt[hook] = self\r\n end\r\n\r\n return mt, self\r\nend\r\n\r\n\r\n-- ================================================================================\r\n\r\nreturn TableLock\r\n\nend)\n__bundle_register(\"kintastic/lib/WarningHandlers\", function(require, _LOADED, __bundle_register, __bundle_modules)\n-- ================================================================================\r\n-- Warning Handlers\r\n--\r\n-- This module should be minimal, being loaded by TableLock and Const.\r\n-- ================================================================================\r\n\r\n-- The module.\r\nlocal WarningHandlers = { }\r\n\r\n\r\n-- ================================================================================\r\n-- Public functions.\r\n--\r\n-- These function can be used where:\r\n-- - The function may thrown an exception.\r\n-- - The function may return something false to abort the operation silently.\r\n-- - The function may return something true to proceed normally.\r\n\r\n-- ----------------------------------------\r\n-- Public function WarningHandlers.fatal_violation\r\n--\r\n-- Throw an exception.\r\n\r\nWarningHandlers.fatal_violation = error\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function WarningHandlers.announce_violation\r\n--\r\n-- Announce the violation to the host and proceed normally.\r\n\r\nfunction WarningHandlers.announce_violation(msg)\r\n for i, player in ipairs(Player.getPlayers()) do\r\n if player.host then\r\n broadcastToColor(msg, player.color, Color.Red)\r\n break\r\n end\r\n end\r\n\r\n return true\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function WarningHandlers.announce_violation_to_all\r\n--\r\n-- Announce the violation to all and proceed normally.\r\n\r\nfunction WarningHandlers.announce_violation(msg)\r\n broadcastToAll(msg, player.color, Color.Red)\r\n return true\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function WarningHandlers.ignore_violation\r\n--\r\n-- Proceed normally.\r\n\r\nfunction WarningHandlers.ignore_violation(msg)\r\n return true\r\nend\r\n\r\n\r\n-- ================================================================================\r\n\r\nreturn WarningHandlers\r\n\nend)\n__bundle_register(\"kintastic/lib/Const\", function(require, _LOADED, __bundle_register, __bundle_modules)\n-- ================================================================================\r\n-- Constant tables\r\n-- ================================================================================\r\n\r\n-- Modules.\r\nlocal WarningHandlers = require(\"kintastic/lib/WarningHandlers\")\r\n\r\n-- Forward declarations for privates found at the bottom.\r\nlocal attach_self\r\n\r\n-- The module.\r\nlocal Const = { }\r\n\r\n-- Constant.\r\nlocal hook = \"__kintastic_Const\"\r\n\r\n\r\n-- ================================================================================\r\n-- Public on_violation handlers.\r\n\r\nfor k, v in pairs(WarningHandlers) do\r\n Const[k] = v\r\nend\r\n\r\n\r\n-- ================================================================================\r\n-- Public attributes\r\n--\r\n-- Const.on_violation(msg) is called on a constraint violation.\r\n-- - Const.on_violation(msg) may call error() to abort execution.\r\n-- - If Const.on_violation(msg) returns something true, the operation will proceed.\r\n-- - If Const.on_violation(msg) returns something false, the operationg will fail silently.\r\n-- - Note that Const.on_violation(msg) is also called if declare, declare_and_set or merge is misused.\r\n-- - The functions provided by the WarningHandlers module may be used here. They are re-exported by this module.\r\n\r\nConst.is_dev = false -- OBSOLETE. Use a custom on_violation instead.\r\nConst.on_violation = Const.fatal_violation -- Editable.\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function Const.const\r\n--\r\n-- Prevents any changes or additions to the provided table.\r\n\r\nfunction Const.const(tbl)\r\n local mt, self = attach_self(tbl)\r\n if not self.hooked then\r\n local old_newindex = mt.__newindex or rawset\r\n\r\n mt.__newindex = function(t, k, v)\r\n if not Const.on_violation(\"Can't modify constant table.\") then\r\n return\r\n end\r\n\r\n return old_newindex(t, k, v)\r\n end\r\n\r\n self.hooked = true\r\n end\r\n\r\n return tbl\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function Const.const_if_dev\r\n--\r\n-- OBSOLETE. For backwards compatibility only.\r\n\r\nfunction Const.const_if_dev(tbl)\r\n if Const.is_dev then\r\n Const.const(tbl)\r\n end\r\n\r\n return tbl\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function Const.rconst\r\n--\r\n-- A recursive version of Const.const\r\n\r\nfunction Const.rconst(tbl)\r\n for k, v in pairs(tbl) do\r\n if type(v) == \"table\" then\r\n Const.rconst(v)\r\n end\r\n end\r\n\r\n return Const.const(tbl)\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function Const.rconst_if_dev\r\n--\r\n-- OBSOLETE. For backwards compatibility only.\r\n\r\nfunction Const.rconst_if_dev(tbl)\r\n if Const.is_dev then\r\n Const.rconst(tbl)\r\n end\r\n\r\n return tbl\r\nend\r\n\r\n\r\n-- ================================================================================\r\n-- Privates\r\n\r\n-- ----------------------------------------\r\n-- Private function attach_self\r\n\r\nfunction attach_self(tbl)\r\n local mt = getmetatable(tbl)\r\n if not mt then\r\n mt = { }\r\n setmetatable(tbl, mt)\r\n end\r\n\r\n local self = mt[hook]\r\n if not self then\r\n self = {\r\n hooked = false,\r\n }\r\n\r\n mt[hook] = self\r\n end\r\n\r\n return mt, self\r\nend\r\n\r\n\r\n-- ================================================================================\r\n\r\nreturn Const\r\n\nend)\n__bundle_register(\"kintastic/lib/Wrap\", function(require, _LOADED, __bundle_register, __bundle_modules)\n-- ================================================================================\r\n-- Function wrapping utilities.\r\n-- ================================================================================\r\n\r\n-- Modules.\r\nlocal TableLock = require(\"kintastic/lib/TableLock\")\r\n\r\n-- The module.\r\nlocal Wrap = { }\r\n\r\n\r\n-- ================================================================================\r\n-- Privates\r\n\r\nlocal function dummy() end\r\n\r\n\r\n-- ================================================================================\r\n-- Public interface\r\n\r\n-- ----------------------------------------\r\n-- Public function Wrap.wrap\r\n\r\nfunction Wrap.wrap(tbl, name, f)\r\n TableLock.declare(tbl, name)\r\n local old_f = tbl[name] or dummy\r\n tbl[name] = |...|f(old_f, ...)\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function Wrap.before\r\n\r\nfunction Wrap.before(tbl, name, f)\r\n TableLock.declare(tbl, name)\r\n local old_f = tbl[name]\r\n if old_f then\r\n tbl[name] = function(...)\r\n f(...)\r\n return old_f(...)\r\n end\r\n else\r\n tbl[name] = function(...)\r\n f(...)\r\n end\r\n end\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function Wrap.after\r\n\r\nfunction Wrap.after(tbl, name, f)\r\n TableLock.declare(tbl, name)\r\n local old_f = tbl[name]\r\n if old_f then\r\n tbl[name] = function(...)\r\n local rv = { old_f(...) }\r\n f(...)\r\n return table.unpack(rv)\r\n end\r\n else\r\n tbl[name] = function(...)\r\n f(...)\r\n end\r\n end\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function Wrap.define_event\r\n--\r\n-- Note: An extra unused parmeter is passed to allow for future expansion.\r\n\r\nlocal listeners_by_event = { }\r\n\r\nfunction Wrap.define_event(name)\r\n TableLock.declare(_G, name)\r\n\r\n local listeners = listeners_by_event[name]\r\n if listeners then\r\n return\r\n end\r\n\r\n listeners = { }\r\n listeners_by_event[name] = listeners\r\n Wrap.after(_G, name,\r\n function(...)\r\n for i, listener in ipairs(listeners) do\r\n listener({}, ...)\r\n end\r\n end\r\n )\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function Wrap.add_event_listener\r\n--\r\n-- Note: An extra unused parmeter is passed to allow for future expansion.\r\n\r\nfunction Wrap.add_event_listener(name, f)\r\n Wrap.define_event(name)\r\n table.insert(listeners_by_event[name], f)\r\nend\r\n\r\n\r\n-- ================================================================================\r\n\r\nreturn Wrap\r\n\nend)\n__bundle_register(\"kintastic/lib/Promise/TtsWebRequest\", function(require, _LOADED, __bundle_register, __bundle_modules)\n-- ================================================================================\r\n-- Promise-based version of WebRequest methods.\r\n-- ================================================================================\r\n\r\n-- Modules.\r\nlocal Promise = require(\"kintastic/lib/Promise\")\r\n\r\n-- The module.\r\nlocal TtsWebRequest = { }\r\n\r\n\r\n-- ================================================================================\r\n-- Public interface\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsWebRequest.get\r\n\r\nfunction TtsWebRequest.get(url)\r\n return Promise:new(\r\n function(resolve, reject)\r\n WebRequest.get(url,\r\n function(response)\r\n if response.is_error then\r\n reject(response.error)\r\n elseif response.is_done then\r\n resolve(response.text)\r\n else\r\n -- Handling progress is not yet supported.\r\n end\r\n end\r\n )\r\n end\r\n )\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsWebRequest.post\r\n\r\nfunction TtsWebRequest.post(url, form)\r\n return Promise:new(\r\n function(resolve, reject)\r\n WebRequest.post(url, form,\r\n function(response)\r\n if response.is_error then\r\n reject(response.error)\r\n elseif response.is_done then\r\n resolve(response.text)\r\n else\r\n -- Handling progress is not yet supported.\r\n end\r\n end\r\n )\r\n end\r\n )\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsWebRequest.put\r\n\r\nfunction TtsWebRequest.put(url, data)\r\n return Promise:new(\r\n function(resolve, reject)\r\n WebRequest.put(url, data,\r\n function(response)\r\n if response.is_error then\r\n reject(response.error)\r\n elseif response.is_done then\r\n resolve(response.text)\r\n else\r\n -- Handling progress is not yet supported.\r\n end\r\n end\r\n )\r\n end\r\n )\r\nend\r\n\r\n\r\n-- ================================================================================\r\n\r\nreturn TtsWebRequest\r\n\nend)\n__bundle_register(\"kintastic/lib/Promise\", function(require, _LOADED, __bundle_register, __bundle_modules)\n-- ================================================================================\r\n-- Promise class\r\n-- The PromiseClass module provides the actual class, while this\r\n-- module provides ways of constructing instances of that class.\r\n-- This allows us to have constructors and instances methods with the same name.\r\n-- ================================================================================\r\n\r\n-- Modules.\r\nlocal Errors = require(\"kintastic/lib/Errors\")\r\nlocal Introspection = require(\"kintastic/lib/Introspection\")\r\nlocal Iters = require(\"kintastic/lib/Iters\")\r\nlocal PromiseClass = require(\"kintastic/lib/PromiseClass\")\r\n\r\n-- Imports.\r\nlocal is_callable = Introspection.is_callable\r\nlocal is_instance_of = Introspection.is_instance_of\r\nlocal ivalues = Iters.ivalues\r\n\r\n-- The class.\r\n-- Contains only constuctors.\r\n-- Never instantiated.\r\nlocal Promise = { }\r\n\r\n\r\n-- ================================================================================\r\n-- Public constructors\r\n\r\n-- ----------------------------------------\r\n-- Public constructor Promise:new\r\n\r\nfunction Promise.new(class, executor)\r\n return PromiseClass:new(executor)\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public constructor Promise:try\r\n--\r\n-- Usage:\r\n-- local promise = Promise:try(\r\n-- function()\r\n-- ...\r\n-- error(reason)\r\n-- ...\r\n-- return x\r\n-- end\r\n-- )\r\n--\r\n-- The above example is equivalent to\r\n--\r\n-- local promise = Promise:new(\r\n-- function(resolve, reject)\r\n-- ...\r\n-- reject(reason)\r\n-- ...\r\n-- resolve(x)\r\n-- end\r\n-- )\r\n--\r\n-- This can be used in lieu of a Promise:new when\r\n-- either resolve() or reject() is always called\r\n-- before the callback returns.\r\n\r\nfunction Promise.try(class, func)\r\n return class:new(\r\n function(resolve, reject)\r\n resolve(func())\r\n end\r\n )\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public constructor Promise:timeout\r\n--\r\n-- Create a promise that becomes rejected after a specified amount of time.\r\n\r\nfunction Promise.timeout(class, seconds)\r\n return class:new(\r\n function(resolve, reject)\r\n Wait.time(||reject(Errors.ETIMEOUT), seconds)\r\n end\r\n )\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public constructor Promise:fulfill.\r\n--\r\n-- Creates a promise that's fulfilled with the provided value.\r\n-- You normally want to use Promise:resolve() instead.\r\n\r\nfunction Promise.fulfill(class, value)\r\n local promise = Promise:new()\r\n promise:_transition(false, Promise.States.FULFILLED, value)\r\n return promise\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public constructor Promise:reject\r\n--\r\n-- Creates a promise that's rejected.\r\n\r\nfunction Promise.reject(class, reason)\r\n local promise = Promise:new()\r\n promise:_transition(false, Promise.States.REJECTED, reason)\r\n return promise\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public constructor Promise:resolve\r\n--\r\n-- Usage:\r\n-- local promise = Promise:resolve(x)\r\n--\r\n-- Used to create a fulfilled promise, or\r\n-- to ensure that something is a Promise.\r\n--\r\n-- If `x` is a Promise, it's simply returned.\r\n-- If `x` is Promise-like, a Promise that mirrors `x` is returned.\r\n-- Otherwise, a promised already fulfilled with the value of `x` is returned.\r\n\r\nfunction Promise.resolve(class, x)\r\n local success, rv = pcall(\r\n function()\r\n -- Return a prebuilt promise if one exists.\r\n do\r\n local promise = class.promises[ x == nil and Promise.NIL or x ]\r\n if promise then\r\n return promise\r\n end\r\n end\r\n\r\n if is_instance_of(x, PromiseClass) then\r\n return x\r\n end\r\n\r\n if type(x) == \"table\" then\r\n -- We specifically want to avoid accessing x.next twice.\r\n local next = x.next\r\n if is_callable(next) then\r\n local promise = class:new()\r\n promise:_adopt_promiselike(o, next)\r\n return promise\r\n end\r\n end\r\n\r\n return class:fulfill(x)\r\n end\r\n )\r\n\r\n if success then\r\n return rv\r\n else\r\n return class:reject(rv)\r\n end\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public constructor Promise:all_settled\r\n--\r\n-- Usage:\r\n-- local promise = Promise:all_settled({ promise1, promise2, ... })\r\n--\r\n-- Returns a promise.\r\n-- The promise becomes fulfilled once all of the provided promises have become fulfilled or rejected.\r\n-- The fulfillment value is an array of information the fulfillment/rejection state of each promise.\r\n-- Passing an empty array returns a fulfilled promise.\r\n\r\nfunction Promise.all_settled(class, array)\r\n return class:new(\r\n function(resolve, reject)\r\n local results = { }\r\n local num_pending = 0\r\n for i, promise in ipairs(array) do\r\n promise = class:resolve(promise)\r\n num_pending = num_pending + 1\r\n promise:next(\r\n function(value)\r\n results[i] = { status = \"fulfilled\", value = value }\r\n num_pending = num_pending - 1\r\n if num_pending == 0 then\r\n resolve(results)\r\n end\r\n end,\r\n function(reason)\r\n results[i] = { status = \"rejected\", reason = reason }\r\n num_pending = num_pending - 1\r\n if num_pending == 0 then\r\n resolve(results)\r\n end\r\n end\r\n )\r\n end\r\n\r\n if num_pending == 0 then\r\n resolve(results)\r\n end\r\n end\r\n )\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public constructor Promise:all\r\n--\r\n-- Usage:\r\n-- local promise = Promise:all({ promise1, promise2, ... })\r\n--\r\n-- Returns a promise.\r\n-- The promise becomes fulfilled once all of the provided promises have become fulfilled.\r\n-- The fulfillment value is an array of the fulfillment values of the fulfilled promises.\r\n-- The promise becomes rejected once any of the provided promises has become rejected.\r\n-- The rejection reason is the rejection reason of the rejected promise.\r\n-- Passing an empty array returns a promise fulfilled with an empty array.\r\n\r\nfunction Promise.all(class, array)\r\n return class:new(\r\n function(resolve, reject)\r\n local values = { }\r\n local num_pending = 0\r\n for i, promise in ipairs(array) do\r\n promise = class:resolve(promise)\r\n num_pending = num_pending + 1\r\n promise:next(\r\n function(value)\r\n values[i] = value\r\n num_pending = num_pending - 1\r\n if num_pending == 0 then\r\n resolve(values)\r\n end\r\n end,\r\n reject\r\n )\r\n end\r\n\r\n if num_pending == 0 then\r\n resolve(values)\r\n end\r\n end\r\n )\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public constructor Promise:any\r\n--\r\n-- Usage:\r\n-- local promise = Promise:any({ promise1, promise2, ... })\r\n--\r\n-- Returns a promise.\r\n-- The promise becomes fulfilled once any of the provided promises has become fulfilled.\r\n-- The fulfillment value is the fulfillment value of the fulfilled promise.\r\n-- The promise becomes rejected once all of the provided promises have become rejected.\r\n-- The rejection reason an array of the rejection resons of the rejected promises.\r\n-- Passing an empty array returns a promise fulfilled with an empty array.\r\n\r\nfunction Promise.any(class, array)\r\n return class:new(\r\n function(resolve, reject)\r\n local reasons = { }\r\n local num_pending = 0\r\n for i, promise in ipairs(array) do\r\n promise = class:resolve(promise)\r\n num_pending = num_pending + 1\r\n promise:next(\r\n resolve,\r\n function(reason)\r\n reasons[i] = reason\r\n num_pending = num_pending - 1\r\n if num_pending == 0 then\r\n reject(reasons)\r\n end\r\n end\r\n )\r\n end\r\n\r\n if num_pending == 0 then\r\n reject(reasons)\r\n end\r\n end\r\n )\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public constructor Promise:race\r\n--\r\n-- Usage:\r\n-- local promise = Promise:race({ promise1, promise2, ... })\r\n--\r\n-- Returns a promise.\r\n-- The promise becomes fulfilled once any of the provided promises has become fulfilled.\r\n-- The fulfillment value is the fulfillment value of the fulfilled promise.\r\n-- The promise becomes rejected once any of the provided promises has become rejected.\r\n-- The rejection reason is the rejection reason of the rejected promise.\r\n-- Passing an empty array returns a fulfilled promise.\r\n\r\nfunction Promise.race(class, array)\r\n if #array <= 1 then\r\n return Promise:resolve(array[1])\r\n end\r\n\r\n return class:new(\r\n function(resolve, reject)\r\n for i, promise in ipairs(array) do\r\n promise = class:resolve(promise)\r\n promise:next(resolve, reject)\r\n end\r\n end\r\n )\r\nend\r\n\r\n\r\n-- ================================================================================\r\n-- Public functions\r\n\r\n-- ----------------------------------------\r\n-- Public function Promise.all_settled_error_logger\r\n--\r\n-- Usage:\r\n-- Promise:all_settled(promises)\r\n-- :next(Promise.all_settled_error_logger)\r\n--\r\n-- Note that this isn't a method!\r\n\r\nfunction Promise.all_settled_error_logger(value)\r\n local values = { }\r\n for result in ivalues(value) do\r\n if result.status == \"rejected\" then\r\n -- XXX Should handle weird reasons better. Especially since this is in a loop.\r\n broadcastToAll(result.reason, Color.Red)\r\n else\r\n table.insert(values, result.value)\r\n end\r\n end\r\n\r\n return values\r\nend\r\n\r\n\r\n-- ================================================================================\r\n-- Semi-public\r\n-- You probably shouldn't be using these directly.\r\n\r\n-- ----------------------------------------\r\n-- Semi-public state constants.\r\n\r\nPromise.States = PromiseClass.States\r\n\r\n\r\n-- ----------------------------------------\r\n-- Semi-public pregenerated promises.\r\n\r\n-- This is used as the key when looking for a prebuilt promise for `nil`.\r\nPromise.NIL = { }\r\n\r\nPromise.promises = {\r\n [ Promise.NIL ] = Promise:fulfill(nil),\r\n [ true ] = Promise:fulfill(true),\r\n [ false ] = Promise:fulfill(false),\r\n [ 0 ] = Promise:fulfill(0),\r\n [ \"\" ] = Promise:fulfill(\"\"),\r\n}\r\n\r\n\r\n-- ================================================================================\r\n\r\nreturn Promise\r\n\nend)\n__bundle_register(\"kintastic/lib/PromiseClass\", function(require, _LOADED, __bundle_register, __bundle_modules)\n-- ================================================================================\r\n-- Promise class\r\n-- This module provides the actual class, while the Promise\r\n-- module provides ways of constructing instances of this class.\r\n-- This allows us to have constructors and instances methods with the same name.\r\n--\r\n-- Compliant with the Promises/A+ spec.\r\n-- https://promisesaplus.com/\r\n--\r\n-- Accomodations for the differences bewteen Lua and JavaScript:\r\n-- - `then` is a reserved word in Lua, so `next` is used intead. [throughout, incl 1.1 and 2.3.3.1]\r\n-- - The Lua equivalent to an object is a table. [1.2]\r\n-- - The Lua equivalent to a function object is a table with a `__call` metamethod. [1.2, 2.3.3]\r\n-- - While JS function can only return a single value, Lua functions can return a non-negative number of values.\r\n-- The value of a fulfilled promise is meant to represent what a function returns, so one could conceivably\r\n-- expect the value of a Lua promise to be a list of values. However, this module will adopt the JS-centric\r\n-- approach of having exactly one value. [2.2.7.1]\r\n-- - Lua doesn't have a TypeError class, so Errors.ETYPE is used instead. [2.3.1]\r\n-- - The Lua equivalent of calling a function as a method is to pass the invocant as the first argument. [2.3.3.3]\r\n--\r\n-- Resolution of Ambiguities:\r\n-- - It is understood that returning nothing is the same as returning `undefined` (JS) or `nil` (Lua). [2.2.7.1]\r\n-- - It is understood that returned values beyond the first are ignored.\r\n-- - It is understood that once a promise adopts the state of another, its own state can no longer be changed except to mirror the other. [2.3.1.1]\r\n-- - It is understood that being called with no arguments is the same as being called with `undefined` (JS) or `nil` (Lua). [2.3.3.3.1]\r\n-- - It is understood that arguments beyond the first are ignored. [2.3.3.3.1]\r\n--\r\n-- Optimizations:\r\n-- - `next` returns `self` if neither arguments are callable.\r\n-- - When resolving, a prebuilt promise may be returned. [2.2.7.1]\r\n--\r\n-- ================================================================================\r\n\r\n-- Modules.\r\nlocal Async = require(\"kintastic/lib/Async\")\r\nlocal Errors = require(\"kintastic/lib/Errors\")\r\nlocal Introspection = require(\"kintastic/lib/Introspection\")\r\nlocal Queue = require(\"kintastic/lib/Queue\")\r\n\r\n-- Imports.\r\nlocal async = Async.async\r\nlocal is_callable = Introspection.is_callable\r\nlocal is_instance_of = Introspection.is_instance_of\r\n\r\n-- Forward declarations for privates found at the bottom.\r\nlocal on_fulfilled_default, on_rejected_default\r\nlocal schedule\r\n\r\n-- The real class.\r\n-- This allows us to have constructors and\r\n-- instance methods with the same name.\r\nlocal PromiseClass = { }\r\n\r\nPromiseClass.mt = {\r\n __index = PromiseClass,\r\n}\r\n\r\n\r\n-- ================================================================================\r\n-- Public constructors\r\n\r\n-- ----------------------------------------\r\n-- Public constructor PromiseClass:new\r\n-- Also available as Promise:new\r\n--\r\n-- Usage:\r\n-- local promise = Promise:new(\r\n-- function(resolve, reject)\r\n-- ...\r\n-- resolve(x)\r\n-- ...\r\n-- reject(reason)\r\n-- ...\r\n-- end\r\n-- )\r\n--\r\n-- If `resolve` is called with a Promise or something Promise-like, `promise` becomes a mirror for the\r\n-- state of `x`, effectively inserting `x` into the \"chain\" of Promises.\r\n-- If `resolve` is called with something else, `promise` becomes fulfilled with the provided value.\r\n-- If `resolve` is called without arguments, the promise will become fulfilled with `nil`.\r\n-- `resolve` may be called asynchronously, after the provided function has returned.\r\n-- `resolve` needs not be called at all.\r\n-- Calls to `resolve` after `promise` has been fulfilled or rejected will be ignored.\r\n--\r\n-- If `reject` is called, the promise will become rejected with the provided reason.\r\n-- `reject` may be called asynchronously, after the provided function has returned.\r\n-- `reject` needs not be called at all.\r\n-- Calls to `reject` after `promise` has been fulfilled or rejected will be ignored.\r\n--\r\n-- If the provided function throws an exception, `promise` will become rejected with the exception message.\r\n--\r\n-- It's possible to call `new()` with no arguments. The following is equilvalent to the earlier example:\r\n--\r\n-- local promise = Promise:new()\r\n-- local success, rv = pcall(\r\n-- function(\r\n-- ...\r\n-- promise:resolve(x) -- or local resolve = promise:resolver(x) resolve()\r\n-- ...\r\n-- promise:reject(reason) -- or local reject = promise:rejecter(reason) reject()\r\n-- ...\r\n-- end\r\n-- )\r\n--\r\n-- if not success then\r\n-- promise:reject(rv)\r\n-- end\r\n\r\nfunction PromiseClass.new(class, executor)\r\n local self = setmetatable({}, class.mt)\r\n\r\n self.class = class -- :next() uses this create promises of the same class as its invocant.\r\n self.mirroring = false\r\n self.state = PromiseClass.States.PENDING\r\n self.value = nil -- value or reason\r\n self.queue = Queue:new()\r\n\r\n if executor then\r\n local success, rv = pcall(\r\n function()\r\n executor(\r\n function(x) self:resolve(x) end,\r\n function(reason) self:reject(reason) end\r\n )\r\n end\r\n )\r\n\r\n if not success then\r\n self:reject(rv)\r\n end\r\n end\r\n\r\n return self\r\nend\r\n\r\n\r\n-- ================================================================================\r\n-- Public instance methods\r\n\r\n-- ----------------------------------------\r\n-- Public instance method promise:next\r\n--\r\n-- Usage:\r\n-- local promise2 = promise:next(\r\n-- function(value)\r\n-- ...\r\n-- end,\r\n-- function(reason)\r\n-- ...\r\n-- end\r\n-- )\r\n--\r\n-- \"Waits\" for `promise` to become fulfilled or rejected.\r\n--\r\n-- That is to say, it causes actions to be taken once the Promise `promise` becomes fulfilled or rejected.\r\n-- The first function will be called once the promise becomes fulfilled.\r\n-- The second function will be called once the promise becomes rejected.\r\n-- If the promise is already fulfilled or rejected, the functions will be called shortly after `next()` is called.\r\n-- These functions are called asynchronously, with only \"platform code\" on the stack.\r\n--\r\n-- If either function returns with a Promise or something Promise-like, `promise2` becomes a mirror for\r\n-- the state of this promise, effectively inserting the returned promise into the \"chain\" of Promises.\r\n-- If either function returns something else, `promise2` will become fulfilled with the first returned value.\r\n-- If either function returns nothing, `promise2` will become fulfilled with the value `nil`.\r\n-- If either function throws an error, `promise2` will become rejected with the exception as the reason.\r\n--\r\n-- The arguments are optional.\r\n-- The first defaults to a function that returns its argument.\r\n-- The second defaults to a function that calls error with its argument.\r\n\r\nfunction PromiseClass:next(on_fulfilled, on_rejected)\r\n local on_fulfilled_callable = is_callable(on_fulfilled)\r\n local on_rejected_callable = is_callable(on_rejected)\r\n if not on_fulfilled_callable and not on_rejected_callable then\r\n return self\r\n end\r\n\r\n -- This promise will become fulfilled or rejected in on_state_change.\r\n local promise = self.class:new()\r\n\r\n self.queue:enqueue({\r\n on_fulfilled = on_fulfilled_callable and on_fulfilled or on_fulfilled_default,\r\n on_rejected = on_rejected_callable and on_rejected or on_rejected_default,\r\n next_promise = promise,\r\n })\r\n\r\n if self.state ~= PromiseClass.States.PENDING then\r\n schedule(self)\r\n end\r\n\r\n return promise\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public instance method promise:done\r\n--\r\n-- A sink used to ensure errors are reported.\r\n-- The arguments are optional.\r\n\r\nfunction PromiseClass:done(on_fulfilled, on_rejected)\r\n if on_fulfilled or on_rejected then\r\n self = self:next(on_fulfilled, on_rejected)\r\n end\r\n\r\n return\r\n self:next(\r\n nil,\r\n function(reason)\r\n broadcastToAll(reason, Color.Red)\r\n end\r\n )\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public instance method promise:catch\r\n\r\nfunction PromiseClass:catch(on_rejected)\r\n return self:next(nil, on_rejected)\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public instance method promise:finally\r\n\r\nfunction PromiseClass:finally(on_finally)\r\n return self:next(\r\n function(value) on_finally() return value end,\r\n function(reason) on_finally() error(reason) end\r\n )\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public instance method promise:sleep\r\n--\r\n-- WARNING: DEPRECATED/OBSOLETE.\r\n-- Instead of promise:sleep(secs), use promise:finally(TtsWait.time(secs))\r\n-- Instead of promise:sleep(secs, false), use promise:finally(TtsWait.time(secs))\r\n-- Instead of promise:sleep(secs, true), use promise:next(TtsWait.time(secs))\r\n-- TtsWait refers to the kintastic/Promise/TtsWait module.\r\n\r\nfunction PromiseClass:sleep(secs, only_sleep_on_resolve)\r\n return self:next(\r\n function(value)\r\n return self.class:new(\r\n function(resolve, reject)\r\n Wait.time(||resolve(value), secs)\r\n end\r\n )\r\n end,\r\n function(reason)\r\n if only_sleep_on_resolve then\r\n error(reason)\r\n end\r\n\r\n return self.class:new(\r\n function(resolve, reject)\r\n Wait.time(||reject(reason), secs)\r\n end\r\n )\r\n end\r\n )\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public instance method promise:frame_skip\r\n--\r\n-- WARNING: DEPRECATED/OBSOLETE.\r\n-- Instead of promise:frame_skip(), use promise:finally(TtsWait.frames(1))\r\n-- TtsWait refers to the kintastic/Promise/TtsWait module.\r\n\r\nfunction PromiseClass:frame_skip()\r\n return self:next(\r\n function(value)\r\n return self.class:new(\r\n function(resolve, reject)\r\n Wait.frames(||resolve(value), 1)\r\n end\r\n )\r\n end,\r\n function(reason)\r\n return self.class:new(\r\n function(resolve, reject)\r\n Wait.frames(||reject(reason), 1)\r\n end\r\n )\r\n end\r\n )\r\nend\r\n\r\n\r\n-- ================================================================================\r\n-- Semi-public\r\n-- You probably shouldn't be using these directly.\r\n\r\n-- ----------------------------------------\r\n-- Semi-public state constants.\r\n\r\nPromiseClass.States = {\r\n PENDING = \"pending\",\r\n FULFILLED = \"fulfilled\",\r\n REJECTED = \"rejected\",\r\n}\r\n\r\n\r\n-- ----------------------------------------\r\n-- Semi-public instance methods promise:resolver and promise:rejecter\r\n--\r\n-- These return functions that call resolve and reject repectively.\r\n-- Useful where a callback is expected.\r\n-- Arguments passed to the returned functions are ignored.\r\n\r\nfunction PromiseClass:resolver(x) return function() self:resolve(x) end end\r\nfunction PromiseClass:rejecter(reason) return function() self:reject(reason) end end\r\n\r\n\r\n-- ----------------------------------------\r\n-- Semi-public instance methods promise:fulfill and promise:reject\r\n-- ** These are different methods than class method Promise:fulfill and Promise:reject **\r\n--\r\n-- Marks the Promise as fulfilled or rejected if it's pending and if it isn't mirroring.\r\n\r\nfunction PromiseClass:fulfill(value) self:_transition(false, PromiseClass.States.FULFILLED, value) end\r\nfunction PromiseClass:reject(reason) self:_transition(false, PromiseClass.States.REJECTED, reason) end\r\n\r\n\r\n-- ----------------------------------------\r\n-- Semi-Public instance method promise:resolve\r\n-- ** This is a different method than class method Promise:resolve **\r\n--\r\n-- If `promise:resolve` is called with a Promise or something Promise-like, `promise` becomes a mirror for the\r\n-- state of `x`, effectively inserting `x` into the \"chain\" of Promises.\r\n-- If `promise:resolve` is called with something else, `promise` becomes fulfilled with the provided value.\r\n-- If `promise:resolve` is called without arguments, the promise will become fulfilled with `nil`.\r\n-- Calls to this function with an invocant (`self`) that has been fulfilled or rejected has no effect.\r\n-- Calls to this function with an invocant (`self`) that is mirroring has no effect.\r\n\r\nfunction PromiseClass:resolve(x)\r\n if self.state ~= PromiseClass.States.PENDING or self.mirroring then\r\n return\r\n end\r\n\r\n local success, rv = pcall(\r\n function()\r\n if is_instance_of(x, PromiseClass) then\r\n self:_adopt_promise(x)\r\n return\r\n end\r\n\r\n if type(x) == \"table\" then\r\n local next = x.next\r\n if is_callable(next) then\r\n self:_adopt_promiselike(x, next)\r\n return\r\n end\r\n end\r\n\r\n self:fulfill(x)\r\n end\r\n )\r\n\r\n if not success then\r\n self:reject(rv)\r\n end\r\nend\r\n\r\n\r\n-- ================================================================================\r\n-- Privates\r\n\r\n-- ----------------------------------------\r\n-- Default values for `next`'s arguments.\r\n\r\nfunction on_fulfilled_default(value)\r\n return value\r\nend\r\n\r\n\r\nfunction on_rejected_default(reason)\r\n error(reason)\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Private instance method promise:_adopt_promise\r\n--\r\n-- Causes the promise (`self`) to mirror the state of another Promise (`promise_to_mirror`).\r\n--\r\n-- Usage:\r\n-- if promise.state == PromiseClass.States.PENDING and not promise.mirroring then\r\n-- local success, rv = pcall(\r\n-- function()\r\n-- promise:_adopt_promise(promise_to_mirror)\r\n-- end\r\n-- end\r\n--\r\n-- if not success then\r\n-- promise:reject(rv)\r\n-- end\r\n-- end\r\n\r\nfunction PromiseClass:_adopt_promise(promise_to_mirror)\r\n if self == promise_to_mirror then\r\n self:reject(Errors.ETYPE) -- A promise can't adopt itself.\r\n return\r\n end\r\n\r\n -- `self`'s state is entirely dependent on `promise_to_mirror`'s now.\r\n self.mirroring = true\r\n\r\n -- Optimization\r\n if promise_to_mirror.state ~= PromiseClass.States.PENDING then\r\n self:_transition(true, promise_to_mirror.state, promise_to_mirror.value)\r\n return\r\n end\r\n\r\n promise_to_mirror:next(\r\n function(value)\r\n self:_transition(true, PromiseClass.States.FULFILLED, value)\r\n end,\r\n function(reason)\r\n self:_transition(true, PromiseClass.States.REJECTED, reason)\r\n end\r\n )\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Private instance method promise:_adopt_promiselike\r\n--\r\n-- Causes the promise (`self`) to mirror the state of a Promise-like object (`promiselike_to_mirror`).\r\n--\r\n-- Usage:\r\n-- if promise.state == PromiseClass.States.PENDING and not promise.mirroring then\r\n-- local success, rv = pcall(\r\n-- function()\r\n-- promise:_adopt_promiselike(promiselike, promiselike.next)\r\n-- end\r\n-- end\r\n--\r\n-- if not success then\r\n-- promise:reject(rv)\r\n-- end\r\n-- end\r\n\r\nfunction PromiseClass:_adopt_promiselike(promiselike_to_mirror, next)\r\n if self == promiselike_to_mirror then\r\n self:reject(Errors.ETYPE) -- A promise can't adopt itself\r\n return\r\n end\r\n\r\n -- `self`'s state is entirely dependent on `promiselike_to_mirror`'s now.\r\n self.mirroring = true\r\n\r\n async(\r\n function()\r\n local success, rv = pcall(\r\n function()\r\n next(promiselike_to_mirror,\r\n function(y) self:resolve(y) end,\r\n function(reason) self:reject(reason) end\r\n )\r\n end\r\n )\r\n\r\n if not success then\r\n self:reject(rv)\r\n end\r\n end\r\n )\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Private instance method promise:on_state_change\r\n--\r\n-- This method represents the core functionality of promises.\r\n--\r\n-- Once a Promise (`self`) becomes fulfilled or rejected, this is called.\r\n-- This method calls one of the callbacks provided to `self.next()`.\r\n-- This will lead to the Promise returned by `self.next()` (`next_promise`)\r\n-- to become fulfilled or rejected.\r\n--\r\n-- This can happen immediately on return of the callback, or it may happen\r\n-- later if the callback returns a Promise (or something Promise-like). If a\r\n-- Promise or similar is returned, `next_promise` becomes a mirror for the\r\n-- state of this promise, effectively inserting the returned promise into\r\n-- the \"chain\" of Promises.\r\n\r\nlocal function on_state_change(self, on_fulfilled, on_rejected, next_promise)\r\n local cb\r\n if self.state == PromiseClass.States.FULFILLED then\r\n cb = on_fulfilled\r\n else\r\n cb = on_rejected\r\n end\r\n\r\n local success, x = pcall(cb, self.value)\r\n if success then\r\n next_promise:resolve(x)\r\n else\r\n next_promise:reject(x)\r\n end\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Private instance method promise:schedule\r\n--\r\n-- Schedule the Promise's `.next()` callbacks for asynchronous execution.\r\n-- Called when a Promise becomes fulfilled or rejected, and when `.next()`\r\n-- is called on an already-fulfilled or already-rejected Promise.\r\n\r\nfunction schedule(self)\r\n local queue = self.queue\r\n while not queue:is_empty() do\r\n local data = queue:dequeue()\r\n async(on_state_change, self, data.on_fulfilled, data.on_rejected, data.next_promise)\r\n end\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Private instance method promise:_transition\r\n--\r\n-- Called to mark a Promise as fulfilled or rejected.\r\n-- It causes `.next()` callbacks to be scheduled.\r\n--\r\n-- If `self` has already become fulfilled or rejected\r\n-- calling this method has no effect.\r\n--\r\n-- If `self` is mirroring another Promise or promise-like object,\r\n-- calling this method has no effect unless `force` is true.\r\n\r\nfunction PromiseClass:_transition(force, state, value)\r\n if self.state == PromiseClass.States.PENDING and ( force or not self.mirroring ) then\r\n self.state = state\r\n self.value = value\r\n schedule(self)\r\n end\r\nend\r\n\r\n\r\n-- ================================================================================\r\n\r\nreturn PromiseClass\r\n\nend)\n__bundle_register(\"kintastic/lib/Queue\", function(require, _LOADED, __bundle_register, __bundle_modules)\n-- ================================================================================\r\n-- Queue class\r\n-- ================================================================================\r\n\r\n-- The class.\r\nlocal Queue = { }\r\n\r\nQueue.mt = {\r\n __index = Queue,\r\n}\r\n\r\n\r\n-- ================================================================================\r\n-- Public interface\r\n\r\n-- ----------------------------------------\r\n-- Public constructor Queue:new\r\n--\r\n-- Usage:\r\n-- local q = Queue:new()\r\n\r\nfunction Queue.new(class)\r\n local self = setmetatable({}, class.mt)\r\n\r\n self.head = nil\r\n self.tail = nil\r\n\r\n return self\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public instance method queue:enqueue\r\n\r\nfunction Queue:enqueue(value)\r\n local node = {\r\n value = value,\r\n next = nil,\r\n }\r\n\r\n if self.tail then\r\n self.tail.next = node\r\n else\r\n self.head = node\r\n end\r\n\r\n self.tail = node\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public instance method queue:is_empty\r\n\r\nfunction Queue:is_empty()\r\n return self.head == nil\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public instance method queue:dequeue\r\n\r\nfunction Queue:dequeue()\r\n if self.head == nil then\r\n return\r\n end\r\n\r\n local value = self.head.value\r\n self.head = self.head.next\r\n if not self.head then\r\n self.tail = nil\r\n end\r\n\r\n return value\r\nend\r\n\r\n\r\n-- ================================================================================\r\n\r\nreturn Queue\r\n\nend)\n__bundle_register(\"kintastic/lib/Introspection\", function(require, _LOADED, __bundle_register, __bundle_modules)\n-- ================================================================================\r\n-- Introspection utils\r\n-- ================================================================================\r\n\r\n-- The module.\r\nlocal Introspection = { }\r\n\r\n\r\n-- ================================================================================\r\n-- Public interface\r\n\r\n-- ----------------------------------------\r\n-- Public function Introspection.get_class\r\n\r\nfunction Introspection.get_class(_)\r\n if type(_) ~= \"table\" then\r\n return nil\r\n end\r\n\r\n local mt = getmetatable(_)\r\n if not mt then\r\n return nil\r\n end\r\n\r\n local class = mt.__index\r\n\r\n if type(class) ~= \"table\" then\r\n return nil\r\n end\r\n\r\n return class\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function Introspection.is_instance_of\r\n--\r\n-- Returns true if the argument `_` is `class`,\r\n-- a subclass of `class`, an instance of `class`,\r\n-- or an instance of a subclass of `class`.\r\n\r\nfunction Introspection.is_instance_of(_, class)\r\n while _ ~= class do\r\n if type(_) ~= \"table\" then\r\n return false\r\n end\r\n\r\n local mt = getmetatable(_)\r\n if not mt then\r\n return false\r\n end\r\n\r\n _ = mt.__index\r\n end\r\n\r\n return true\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function Introspection.is_callable\r\n\r\nfunction Introspection.is_callable(_)\r\n while true do\r\n local t = type(_)\r\n if t == \"function\" then return true end\r\n if t ~= \"table\" then return false end\r\n\r\n local mt = getmetatable(_)\r\n if not mt then\r\n return false\r\n end\r\n\r\n _ = mt.__call\r\n end\r\nend\r\n\r\n\r\n-- ================================================================================\r\n\r\nreturn Introspection\r\n\nend)\n__bundle_register(\"kintastic/lib/Errors\", function(require, _LOADED, __bundle_register, __bundle_modules)\n-- ================================================================================\r\n-- Errors returned by this library.\r\n-- Currently just string, but could be one day become objects.\r\n-- So use these constants rather than the strings.\r\n-- ================================================================================\r\n\r\n-- Modules.\r\nlocal Const = require(\"kintastic/lib/Const\")\r\nlocal TableLock = require(\"kintastic/lib/TableLock\")\r\n\r\n-- Imports.\r\nlocal const = Const.const\r\nlocal lock = TableLock.lock\r\n\r\n-- The module.\r\nreturn const(lock({\r\n EDESTROYED = \"Destroyed\",\r\n EEMPTY = \"Empty container\",\r\n ENOTCONTAINER = \"Not a container\",\r\n ETIMEOUT = \"Timeout\",\r\n ETYPE = \"TypeError\",\r\n}))\r\n\nend)\n__bundle_register(\"kintastic/lib/Async\", function(require, _LOADED, __bundle_register, __bundle_modules)\n-- ================================================================================\r\n-- Asynchronous Execution\r\n-- ================================================================================\r\n\r\n-- Modules.\r\nlocal Queue = require(\"kintastic/lib/Queue\")\r\nlocal TtsMsgUtils = require(\"kintastic/lib/TtsMsgUtils\")\r\n\r\n-- Forward declarations for privates found at the bottom.\r\nlocal initiated\r\nlocal queue\r\nlocal async_run\r\n\r\n-- The module.\r\nlocal Async = { }\r\n\r\n\r\n-- ================================================================================\r\n-- Public interface\r\n\r\n-- ----------------------------------------\r\n-- Public function Async.async\r\n--\r\n-- Runs the provided function asynchronously. Extra arguments passed to `async`\r\n-- will be passed to the function.\r\n--\r\n-- WARNING: A nil argument may cause subsequent arguments to be ignored.\r\n--\r\n-- On execution, the function's stack will be empty except for \"platform code\".\r\n-- As such, its execution won't start immediately, but shortly after.\r\n\r\nfunction Async.async(cb, ...)\r\n queue:enqueue({ cb, ... })\r\n if not initiated then\r\n initiated = true\r\n Wait.frames(async_run, 0)\r\n end\r\nend\r\n\r\n\r\n-- ================================================================================\r\n-- Privates\r\n\r\ninitiated = false\r\nqueue = Queue:new()\r\n\r\nfunction async_run()\r\n initiated = false\r\n while not queue:is_empty() do\r\n local item = queue:dequeue()\r\n local success, rv = pcall(\r\n function()\r\n -- Do absolutely everything with user data inside of a pcall.\r\n item[1](unpack(item, 2))\r\n end\r\n )\r\n\r\n if not success then\r\n -- `rv` is also user data.\r\n local success = pcall(\r\n function()\r\n -- ~~~ XXX Handle tables of error messages.\r\n TtsMsgUtils.broadcast_error(\"Error in async callback: \" .. rv)\r\n end\r\n )\r\n\r\n if not success then\r\n TtsMsgUtils.broadcast_error(\"Error in async callback\")\r\n end\r\n end\r\n end\r\nend\r\n\r\n\r\n-- ================================================================================\r\n\r\nreturn Async\r\n\nend)\n__bundle_register(\"kintastic/lib/TtsZoneUtils\", function(require, _LOADED, __bundle_register, __bundle_modules)\n-- ================================================================================\r\n-- TTS zone utils\r\n-- ================================================================================\r\n\r\n-- Modules.\r\nlocal Introspection = require(\"kintastic/lib/Introspection\")\r\nlocal Iters = require(\"kintastic/lib/Iters\")\r\nlocal TtsObject = require(\"kintastic/lib/Promise/TtsObject\")\r\n\r\n-- Imports.\r\nlocal is_callable = Introspection.is_callable\r\nlocal ivalues = Iters.ivalues\r\n\r\n-- The module.\r\nlocal TtsZoneUtils = { }\r\n\r\n\r\n-- ================================================================================\r\n-- Public interface\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsZoneUtils.does_zone_contain_object\r\n\r\nfunction TtsZoneUtils.does_zone_contain_object(zone, obj)\r\n for zone_obj in ivalues(zone.getObjects()) do\r\n if zone_obj == obj then\r\n return true\r\n end\r\n end\r\n\r\n return false\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsZoneUtils.find_zone\r\n--\r\n-- Find the zone that contains an object.\r\n--\r\n-- WARNING: Returns two values.\r\n--\r\n-- Usage:\r\n-- local i, zone = TtsZoneUtils.find_zone(zones, obj_to_find)\r\n-- local i, zone = TtsZoneUtils.find_zone(zones, |obj|obj==obj_to_find)\r\n\r\nfunction TtsZoneUtils.find_zone(zones, test)\r\n if not is_callable(test) then\r\n local target = test\r\n test = function(obj)\r\n return obj == target\r\n end\r\n end\r\n\r\n for i, zone in ipairs(zones) do\r\n for obj in ivalues(zone.getObjects()) do\r\n if test(obj) then\r\n return i, zone\r\n end\r\n end\r\n end\r\n\r\n return\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsZoneUtils.find_zones_containing_object\r\n--\r\n-- Only finds scripting zones at the time.\r\n-- Parameters may allow this behavour to\r\n-- be controlled in the future.\r\n--\r\n-- WARNING: Expensive!\r\n\r\nfunction TtsZoneUtils.find_zones_containing_object(obj, reserved)\r\n local zones = { }\r\n for i, maybe_zone in ipairs(getAllObjects()) do\r\n if maybe_zone.name == \"ScriptingTrigger\" then\r\n for i, maybe_obj in ipairs(maybe_zone.getObjects()) do\r\n if maybe_obj == obj then\r\n table.insert(zones, maybe_zone)\r\n end\r\n end\r\n end\r\n end\r\n\r\n return zones\r\nend\r\n\r\n\r\n-- ================================================================================\r\n\r\nreturn TtsZoneUtils\r\n\nend)\n__bundle_register(\"kintastic/lib/Promise/TtsObject\", function(require, _LOADED, __bundle_register, __bundle_modules)\n-- ================================================================================\r\n-- Promise-based version of Object methods.\r\n-- ================================================================================\r\n\r\n-- Modules.\r\nlocal Errors = require(\"kintastic/lib/Errors\")\r\nlocal Promise = require(\"kintastic/lib/Promise\")\r\nlocal TableUtils = require(\"kintastic/lib/TableUtils\")\r\nlocal BaseTtsObject = require(\"kintastic/lib/TtsObject\")\r\n\r\n-- Forward declarations for privates found at the bottom.\r\nlocal wait_for_instant_transform\r\nlocal wait_for_smooth_transform\r\nlocal wrap_instant_transform\r\nlocal wrap_smooth_transform\r\n\r\n-- The module.\r\nlocal TtsObject = { }\r\n\r\n-- Inherit functions from base TtsZoneUtils.\r\nsetmetatable(TtsObject, {\r\n __index = BaseTtsObject,\r\n})\r\n\r\n\r\n-- ================================================================================\r\n-- Public interface\r\n-- Thin, promise-returning wrappers.\r\n--\r\n-- Unless otherwise stated, each function returns\r\n-- a promise which will be fulfilled with `obj`\r\n-- or rejected with an error message.\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsObject.setTransform\r\n-- Public function TtsObject.setTransformSmooth\r\n-- Public function TtsObject.setPosition\r\n-- Public function TtsObject.setPositionSmooth\r\n-- Public function TtsObject.translate\r\n-- Public function TtsObject.setRotation\r\n-- Public function TtsObject.setRotationSmooth\r\n-- Public function TtsObject.rotate\r\n-- Public function TtsObject.setScale\r\n-- Public function TtsObject.scale\r\n-- Public function TtsObject.moveAtop\r\n-- Public function TtsObject.moveAtopSmooth\r\n-- Public function TtsObject.moveToZoneTop WARNING: DEPRECATED/OBSLETE.\r\n-- Public function TtsObject.moveToZoneTopSmooth WARNING: DEPRECATED/OBSLETE.\r\n\r\nTtsObject.setTransform = |obj, ...|wrap_instant_transform( obj, BaseTtsObject.setTransform, obj, ... )\r\nTtsObject.setTransformSmooth = |obj, ...|wrap_smooth_transform( obj, BaseTtsObject.setTransformSmooth, obj, ... )\r\nTtsObject.setPosition = |obj, ...|wrap_instant_transform( obj, obj.setPosition, ... )\r\nTtsObject.setPositionSmooth = |obj, ...|wrap_smooth_transform( obj, obj.setPositionSmooth, ... )\r\nTtsObject.translate = |obj, ...|wrap_smooth_transform( obj, obj.translate, ... )\r\nTtsObject.setRotation = |obj, ...|wrap_instant_transform( obj, obj.setRotation, ... )\r\nTtsObject.setRotationSmooth = |obj, ...|wrap_smooth_transform( obj, obj.setRotationSmooth, ... )\r\nTtsObject.rotate = |obj, ...|wrap_smooth_transform( obj, obj.rotate, ... )\r\nTtsObject.setScale = |obj, ...|wrap_instant_transform( obj, obj.setScale, ... )\r\nTtsObject.scale = |obj, ...|wrap_instant_transform( obj, obj.scale, ... )\r\nTtsObject.flip = |obj, ...|wrap_smooth_transform( obj, obj.flip, ... )\r\nTtsObject.moveAtop = |obj, ...|wrap_instant_transform( obj, BaseTtsObject.moveAtop, obj, ... )\r\nTtsObject.moveAtopSmooth = |obj, ...|wrap_smooth_transform( obj, BaseTtsObject.moveAtopSmooth, obj, ... )\r\nTtsObject.moveToZoneTop = |obj, ...|wrap_instant_transform( obj, BaseTtsObject.moveAtop, obj, ... )\r\nTtsObject.moveToZoneTopSmooth = |obj, ...|wrap_smooth_transform( obj, BaseTtsObject.moveAtopSmooth, obj, ... )\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsObject.takeObject\r\n--\r\n-- This is a thin wrapper around `obj.takeObject` that returns a promise that\r\n-- becomes fulfilled with the spawned object once the object has been created.\r\n--\r\n-- The promise is rejected with reason Errors.EEMPTY if `obj.takeObject` is empty.\r\n-- Note that empty infinite bags results in an exception.\r\n-- The promise is rejected with reason Errors.ENOTCONTAINER if `obj.takeObject` returns `nil`.\r\n--\r\n-- If an `immediate_callback` argument is provided, it will be called as soon\r\n-- as `spawnObjectJSON` returns, with the object as a parameter. It's return\r\n-- value is ignored.\r\n--\r\n-- If a `callback_function` argument is provided, it will be called once the\r\n-- object is spawned, and the promise returned by `TtsObject.takeObject`\r\n-- will adopt the value returned by the callback function.\r\n--\r\n-- WARNING: The `return_obj` argument is DEPERECATED/OBSOLETE.\r\n\r\nfunction TtsObject.takeObject(obj, args)\r\n local spawned_obj\r\n local promise = Promise:new(\r\n function(resolve, reject)\r\n args = args and TableUtils.copy(args) or { }\r\n\r\n if args.callback_function then\r\n local orig_cb = args.callback_function\r\n args.callback_function = function(spawned_obj)\r\n resolve(orig_cb(spawned_obj))\r\n end\r\n else\r\n args.callback_function = resolve\r\n end\r\n\r\n -- Empty containers result in an error rather than a return of nil.\r\n -- Let's try to provide a better result.\r\n if TtsObject.is_container(obj) and TtsObject.getQuantity(obj) == 0 then\r\n reject(Errors.EEMPTY)\r\n return\r\n end\r\n\r\n spawned_obj = obj.takeObject(args)\r\n if not spawned_obj then\r\n reject(Errors.ENOTCONTAINER)\r\n end\r\n end\r\n )\r\n\r\n if args.immediate_callback then\r\n local success, rv = pcall(args.immediate_callback, spawned_obj)\r\n if not success then\r\n TtsMsgUtils.broadcast_error(rv)\r\n end\r\n end\r\n\r\n if args.return_obj then\r\n return promise, spawned_obj\r\n else\r\n return promise\r\n end\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsObject.setState\r\n--\r\n-- This is a thin wrapper around `obj.setState` that returns a promise that\r\n-- becomes fulfilled once the object has changed state.\r\n--\r\n-- If the `return_obj` argument is provided and true, the new object will\r\n-- be returned as a second value.\r\n\r\nfunction TtsObject.setState(obj, state_id, return_obj)\r\n local new_obj\r\n local promise = Promise:new(\r\n function(resolve, reject)\r\n new_obj = obj.setState(state_id)\r\n wait_for_instant_transform(new_obj, resolve, reject)\r\n end\r\n )\r\n\r\n if return_obj then\r\n return promise, new_obj\r\n else\r\n return promise\r\n end\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n\r\nfunction TtsObject.addForce() error(\"addForce isn't currently supported\") end\r\nfunction TtsObject.addTorque() error(\"addTorque isn't currently supported\") end\r\nfunction TtsObject.setVelocity() error(\"setVelocity isn't currently supported\") end\r\nfunction TtsObject.setAngularVelocity() error(\"setAngularVelocity isn't currently supported\") end\r\n\r\n\r\n-- ================================================================================\r\n-- Private helpers\r\n\r\n-- ----------------------------------------\r\n-- Private function wait_for_instant_transform\r\n--\r\n-- They're not quite instantaneous.\r\n\r\nfunction wait_for_instant_transform(obj, resolve, reject)\r\n Wait.frames(\r\n function()\r\n if obj == nil then\r\n reject(Errors.EDESTROYED)\r\n else\r\n resolve(obj)\r\n end\r\n end,\r\n 1\r\n )\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Private function wait_for_smooth_transform\r\n\r\nfunction wait_for_smooth_transform(obj, resolve, reject)\r\n Wait.condition(\r\n function()\r\n if obj == nil then\r\n reject(Errors.EDESTROYED)\r\n else\r\n resolve(obj)\r\n end\r\n end,\r\n function()\r\n return obj == nil or not obj.isSmoothMoving()\r\n end,\r\n 3,\r\n function()\r\n reject(Errors.ETIMEOUT)\r\n end\r\n )\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Private function wrap_instant_transform\r\n\r\nfunction wrap_instant_transform(obj, f, ...)\r\n local args = { ... }\r\n return Promise:new(\r\n function(resolve, reject)\r\n f(unpack(args))\r\n wait_for_instant_transform(obj, resolve, reject)\r\n end\r\n )\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Private function wrap_smooth_transform\r\n\r\nfunction wrap_smooth_transform(obj, f, ...)\r\n local args = { ... }\r\n return Promise:new(\r\n function(resolve, reject)\r\n f(unpack(args))\r\n wait_for_smooth_transform(obj, resolve, reject)\r\n end\r\n )\r\nend\r\n\r\n\r\n-- ================================================================================\r\n\r\nreturn TtsObject\r\n\nend)\n__bundle_register(\"kintastic/lib/TtsObject\", function(require, _LOADED, __bundle_register, __bundle_modules)\n-- ================================================================================\r\n-- Extensions for TTS's Objects.\r\n-- ================================================================================\r\n\r\n-- Modules.\r\nlocal ArrayUtils = require(\"kintastic/lib/ArrayUtils\")\r\n\r\n-- Imports.\r\nlocal make_set = ArrayUtils.make_set\r\n\r\n-- The module.\r\nlocal TtsObject = { }\r\n\r\n\r\n-- ================================================================================\r\n-- Private constants\r\n\r\nlocal EMPTY_TABLE = { }\r\n\r\nlocal FINITE_CONTAINERS = { -- .name\r\n \"Bag\",\r\n \"CheckerStack\",\r\n \"ChipStack\",\r\n \"Custom_Model_Bag\",\r\n \"Custom_Model_Stack\",\r\n \"Custom_Token_Stack\",\r\n \"Deck\",\r\n \"DeckCustom\",\r\n}\r\n\r\nlocal INFINITE_CONTAINERS = { -- .name\r\n \"Custom_Model_Infinite_Bag\",\r\n \"go_game_bowl_black\",\r\n \"go_game_bowl_white\",\r\n \"Infinite_Bag\",\r\n}\r\n\r\nlocal ZONES = { -- .name\r\n \"FogOfWar\",\r\n \"FogOfWarTrigger\",\r\n \"RandomizeTrigger\",\r\n \"ScriptingTrigger\",\r\n -- No objects for hand zone.\r\n}\r\n\r\nlocal IS_INFINITE_CONTAINER_LOOKUP = make_set(INFINITE_CONTAINERS)\r\nlocal IS_FINITE_CONTAINER_LOOKUP = make_set(FINITE_CONTAINERS)\r\nlocal IS_ZONE_LOOKUP = make_set(ZONES)\r\n\r\n\r\n-- ================================================================================\r\n-- Public interface\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsObject.getQuantity\r\n--\r\n-- `obj.getQuantity()` doesn't return the correct amount for\r\n-- containers that were reduced to one object since the last frame.\r\n--\r\n-- Returns `-1` for infinite containers. At this time,\r\n-- this is the case even if the infinite container contains\r\n-- nothing. This may return `0` in the future.\r\n--\r\n-- Returns `nil` for non-containers.\r\n\r\nfunction TtsObject.getQuantity(obj)\r\n local obj_type = obj.name\r\n if IS_INFINITE_CONTAINER_LOOKUP[obj_type] then\r\n return -1\r\n elseif IS_FINITE_CONTAINER_LOOKUP[obj_type] then\r\n local quantity = obj.getQuantity()\r\n return quantity > 0 and quantity or ( obj.remainder and 1 or 0 )\r\n else\r\n return nil\r\n end\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsObject.getBounds\r\n--\r\n-- The results are based on the object's current orientation.\r\n--\r\n-- `obj.getBounds()` doesn't return the\r\n-- correct size for zones, but this does.\r\n\r\nfunction TtsObject.getBounds(obj)\r\n local bounds = obj.getBounds()\r\n\r\n if TtsObject.is_zone(obj) then\r\n local rotation = obj.getRotation()\r\n local size =\r\n obj.getScale()\r\n :rotateOver('z', rotation.z)\r\n :rotateOver('x', rotation.x)\r\n :rotateOver('y', rotation.y)\r\n\r\n bounds.size = Vector(\r\n math.abs(size.x),\r\n math.abs(size.y),\r\n math.abs(size.z)\r\n )\r\n end\r\n\r\n return bounds\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsObject.getBoundsNormalized\r\n--\r\n-- The result is based on the unrotated object.\r\n--\r\n-- `obj.getBoundsNormalized()` doesn't return the\r\n-- correct size for zones, but this does.\r\n\r\n\r\nfunction TtsObject.getBoundsNormalized(obj)\r\n local bounds = obj.getBounds()\r\n\r\n if TtsObject.is_zone(obj) then\r\n bounds.size = obj.getScale()\r\n end\r\n\r\n return bounds\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsObject.getSize\r\n--\r\n-- The result is based on the object's current orientation.\r\n--\r\n-- `obj.getBounds().size` doesn't return the\r\n-- correct value for zones, but this does.\r\n\r\nfunction TtsObject.getSize(obj)\r\n if TtsObject.is_zone(obj) then\r\n local rotation = obj.getRotation()\r\n local size =\r\n obj.getScale()\r\n :rotateOver('z', rotation.z)\r\n :rotateOver('x', rotation.x)\r\n :rotateOver('y', rotation.y)\r\n\r\n return Vector(\r\n math.abs(size.x),\r\n math.abs(size.y),\r\n math.abs(size.z)\r\n )\r\n else\r\n return obj.getBounds().size\r\n end\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsObject.getSizeNormalized\r\n--\r\n-- The result is based on the unrotated object.\r\n--\r\n-- `obj.getBoundsNormalized().size` doesn't return\r\n-- the correct value for zones, but this does.\r\n\r\n\r\nfunction TtsObject.getSize(obj)\r\n if TtsObject.is_zone(obj) then\r\n return obj.getScale()\r\n else\r\n return obj.getBoundsNormalized().size\r\n end\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsObject.get_abs_width()\r\n-- Public function TtsObject.get_abs_height()\r\n-- Public function TtsObject.get_abs_depth()\r\n--\r\n-- These refer to the dimensions of the object\r\n-- along the x, y and z axes respectively.\r\n--\r\n-- The results are based on the object's current orientation.\r\n\r\nfunction TtsObject.get_abs_width(obj) return TtsObject.getSize(obj).x end\r\nfunction TtsObject.get_abs_height(obj) return TtsObject.getSize(obj).y end\r\nfunction TtsObject.get_abs_depth(obj) return TtsObject.getSize(obj).z end\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsObject.get_top_pos\r\n--\r\n-- Returns the position which consists\r\n-- - the center x of the object's bounding box,\r\n-- - the center z of the object's bounding box, and\r\n-- - the highest y of the object's bounding box.\r\n--\r\n-- The result is based on the object's current orientation.\r\n\r\nfunction TtsObject.get_top_pos(obj)\r\n local bounds = TtsObject.getBounds(obj)\r\n local v = bounds.center\r\n v.y = v.y + bounds.size.y / 2\r\n return v\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsObject.get_bot_pos\r\n--\r\n-- Returns the position which consists\r\n-- - the center x of the object's bounding box,\r\n-- - the center z of the object's bounding box, and\r\n-- - the lowest y of the object's bounding box.\r\n--\r\n-- The result is based on the object's current orientation.\r\n\r\nfunction TtsObject.get_bot_pos(obj)\r\n local bounds = TtsObject.getBounds(obj)\r\n local v = bounds.center\r\n v.y = v.y - bounds.size.y / 2\r\n return v\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsObject.get_height_to_origin\r\n--\r\n-- Returns the difference between the object's origin and the lowest y of the object's box.\r\n--\r\n-- The result is based on the object's current orientation.\r\n\r\nfunction TtsObject.get_height_to_origin(obj)\r\n local bounds = TtsObject.getBounds(obj)\r\n return bounds.size.y / 2 + bounds.offset.y\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsObject.get_drop_pos\r\n--\r\n-- Returns the position to which to move the object so it sits just above the container.\r\n-- The result is based on the current orientation of both the object and the container.\r\n--\r\n-- Options:\r\n-- protrusion: What portion of the object should be atop the container. (Default = 1)\r\n-- offset: A vector-like added to the result. (Default = {0,0,0})\r\n\r\nfunction TtsObject.get_drop_pos(obj, container, opts)\r\n opts = opts or EMPTY_TABLE\r\n\r\n local protrusion = opts.protrusion or 1\r\n local offset = opts.offset\r\n\r\n local pos = TtsObject.get_top_pos(container)\r\n local bounds = TtsObject.getBounds(obj)\r\n pos.y = pos.y + bounds.offset.y + bounds.size.y * ( protrusion - 0.5 )\r\n\r\n if offset then\r\n pos = pos + Vector(offset)\r\n end\r\n\r\n return pos\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsObject.setTransform\r\n--\r\n-- Wraps setPosition, setRotation and setScale,\r\n-- allowing any combination to be performed at once.\r\n\r\nfunction TtsObject.setTransform(obj, args)\r\n args = args or EMPTY_TABLE\r\n\r\n local result = true\r\n if args.position then result = obj.setPosition( args.position ) and result end\r\n if args.rotation then result = obj.setRotation( args.rotation ) and result end\r\n if args.scale then result = obj.setScale( args.scale ) and result end\r\n return result\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsObject.setTransformSmooth\r\n--\r\n-- Wraps setPositionSmooth and setRotationSmooth,\r\n-- allowing any combination to be performed at once.\r\n\r\nfunction TtsObject.setTransformSmooth(obj, args)\r\n args = args or EMPTY_TABLE\r\n\r\n local result = true\r\n if args.position then result = obj.setPositionSmooth( args.position, args.collide, args.fast ) and result end\r\n if args.rotation then result = obj.setRotationSmooth( args.rotation, args.collide, args.fast ) and result end\r\n return result\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsObject.moveAtop\r\n--\r\n-- Moves an object so it sits atop another object.\r\n-- Uses instant movement.\r\n--\r\n-- Options:\r\n-- rotation: `false` to keep its current rotation (default),\r\n-- `true` to give the moved object the same rotation as the reference object, or\r\n-- a vector-like to give the object this rotation.\r\n-- protrusion: What portion of the object being moved should be atop the other. (Default = 1)\r\n-- offset: A vector-like used to modify the destination position. (Default = {0,0,0})\r\n\r\nfunction TtsObject.moveAtop(obj, ref_obj, opts)\r\n opts = opts or EMPTY_TABLE\r\n\r\n local result = true\r\n\r\n if opts.rotation then\r\n local rot = opts.rotation == true and ref_obj.getRotation() or opts.rotation\r\n result = obj.setRotation(rot) and result\r\n end\r\n\r\n local pos = TtsObject.get_drop_pos(obj, ref_obj, opts)\r\n result = obj.setPosition(pos) and result\r\n\r\n return result\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsObject.moveAtopSmooth\r\n--\r\n-- Moves an object so it sits above the center point of a zone.\r\n-- Uses smooth movement.\r\n--\r\n-- Options:\r\n-- rotation: `false` to keep its current rotation (default),\r\n-- `true` to give the moved object the same rotation as the reference object, or\r\n-- a vector-like to give the object this rotation.\r\n-- protrusion: What portion of the object being moved should be atop the other. (Default = 1)\r\n-- offset: A vector-like used to modify the destination position. (Default = {0,0,0})\r\n-- collide: As the obj.setPositionSmooth/obj.setRotationSmooth argument.\r\n-- fast: As the obj.setPositionSmooth/obj.setRotationSmooth argument.\r\n\r\nfunction TtsObject.moveAtopSmooth(obj, ref_obj, opts)\r\n opts = opts or EMPTY_TABLE\r\n\r\n local result = true\r\n\r\n if opts.rotation then\r\n local old_rot = obj.getRotation()\r\n local new_rot = opts.rotation == true and ref_obj.getRotation() or opts.rotation\r\n result = obj.setRotation(new_rot) or result\r\n local pos = TtsObject.get_drop_pos(obj, ref_obj, opts)\r\n result = obj.setRotation(old_rot) or result\r\n\r\n result = obj.setPositionSmooth(pos, opts.collide, opts.fast) and result\r\n result = obj.setRotationSmooth(new_rot, opts.collide, opts.fast) and result\r\n else\r\n local pos = TtsObject.get_drop_pos(obj, ref_obj, opts)\r\n result = obj.setPositionSmooth(pos, opts.collide, opts.fast) and result\r\n end\r\n\r\n return result\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsObject.moveToZoneTop\r\n-- Public function TtsObject.moveToZoneTopSmooth\r\n--\r\n-- WARNING: DEPRECATED/OBSLETE.\r\n\r\nTtsObject.moveToZoneTop = TtsObject.moveAtop\r\nTtsObject.moveToZoneTopSmooth = TtsObject.moveAtopSmooth\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsObject.is_container\r\n-- Public function TtsObject.is_finite_container\r\n-- Public function TtsObject.is_infinite_container\r\n\r\nfunction TtsObject.is_container(obj)\r\n local name = obj.name\r\n return IS_FINITE_CONTAINER_LOOKUP[name] or IS_INFINITE_CONTAINER_LOOKUP[name]\r\nend\r\n\r\nfunction TtsObject.is_finite_container(obj)\r\n return IS_FINITE_CONTAINER_LOOKUP[ obj.name ]\r\nend\r\n\r\nfunction TtsObject.is_infinite_container(obj)\r\n return IS_INFINITE_CONTAINER_LOOKUP[ obj.name ]\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsObject.is_stackable\r\n\r\nfunction TtsObject.is_stackable(obj)\r\n local custom_obj = obj.getCustomObject()\r\n return custom_obj and custom_obj.stackable or false\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsObject.is_stack\r\n--\r\n-- We can't just use `obj.getQuantity()` because it\r\n-- can return a positive value for containers.\r\n\r\nfunction TtsObject.is_stack(obj)\r\n return TtsObject.is_stackable(obj) and obj.getQuantity() > 1\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsObject.is_zone\r\n\r\nfunction TtsObject.is_zone(obj)\r\n return IS_ZONE_LOOKUP[ obj.name ]\r\nend\r\n\r\n\r\n-- ================================================================================\r\n\r\nreturn TtsObject\r\n\nend)\n__bundle_register(\"kintastic/lib/Promise/TtsWait\", function(require, _LOADED, __bundle_register, __bundle_modules)\n-- ================================================================================\r\n-- Promise-based version of Wait methods.\r\n-- ================================================================================\r\n\r\n-- Modules.\r\nlocal Promise = require(\"kintastic/lib/Promise\")\r\n\r\n-- The module.\r\nlocal TtsWait = { }\r\n\r\n\r\n-- ================================================================================\r\n-- Public interface\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsWait.condition\r\n--\r\n-- WARNING: DEPRECATED/OBSLETE.\r\n\r\nfunction TtsWait.condition(cond_func, timeout, timeout_reason)\r\n return TtsWait.cond(cond_func, nil, timeout, timeout_reason)\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsWait.condition\r\n--\r\n-- WARNING: Returns two values.\r\n-- WARNING: DEPRECATED/OBSLETE.\r\n\r\nfunction TtsWait.condition_with_cancel(cond_func, timeout, timeout_reason)\r\n return TtsWait.cond_with_cancel(cond_func, nil, timeout, timeout_reason)\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsWait.cond\r\n--\r\n-- Returns a promises that's fulfilled once the condition becomes true.\r\n-- It will be fulfilled with `value` (if provided).\r\n-- If `timeout` is provided, the promise becomes rejected with \"Timeout\" once the timeout occurs.\r\n-- If `timeout_reason` is provided, it will be used as the rejection reason instead of \"Timeout\".\r\n\r\nfunction TtsWait.cond(cond_func, value, timeout, timeout_reason)\r\n return Promise:new(\r\n function(resolve, reject)\r\n local done = false\r\n local resolve = function() done = true resolve(value) end\r\n local reject = function(reason) done = true reject(reason) end\r\n\r\n if timeout == nil then\r\n Wait.condition(resolve, cond_func)\r\n else\r\n Wait.condition(resolve, cond_func, timeout, ||reject(timeout_reason or \"Timeout\"))\r\n end\r\n end\r\n )\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsWait.cond_with_cancel\r\n--\r\n-- This function is identical to `TtsWait.condition` except a second value is returned.\r\n-- It consists of a function which can be used to cancel the wait.\r\n-- Calling this function will result in the promise becoming rejected.\r\n-- The rejection reason will be the value passed to the function, or \"Cancelled\" if none was provided.\r\n--\r\n-- WARNING: Returns two values.\r\n\r\nfunction TtsWait.cond_with_cancel(cond_func, value, timeout, timeout_reason)\r\n local canceller\r\n local promise = Promise:new(\r\n function(resolve, reject)\r\n local done = false\r\n local resolve = function() done = true resolve(value) end\r\n local reject = function(reason) done = true reject(reason) end\r\n\r\n local id\r\n if timeout == nil then\r\n id = Wait.condition(resolve, cond_func)\r\n else\r\n id = Wait.condition(resolve, cond_func, timeout, ||reject(timeout_reason or \"Timeout\"))\r\n end\r\n\r\n canceller = function(cancel_reason)\r\n if not done then\r\n Wait.stop(id)\r\n reject(cancel_reason or \"Cancelled\")\r\n end\r\n end\r\n end\r\n )\r\n\r\n return promise, canceller\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsWait.frames\r\n--\r\n-- Returns a promises that's fulfilled after `frame_count` frames.\r\n-- It will be fulfilled with `value` (if provided).\r\n\r\nfunction TtsWait.frames(frame_count, value)\r\n return Promise:new(\r\n function(resolve, reject)\r\n Wait.frames(||resolve(value), frame_count)\r\n end\r\n )\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsWait.frame\r\n--\r\n-- Like `TtsWait.frames`, but only wait one frame.\r\n\r\nfunction TtsWait.frame(value)\r\n return Promise:new(\r\n function(resolve, reject)\r\n Wait.frames(||resolve(value), 1)\r\n end\r\n )\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsWait.frames_with_cancel\r\n--\r\n-- This function is identical to TtsWait.frames except a second value is returned.\r\n-- It consists of a function which can be used to cancel the wait.\r\n-- Calling this function will result in the promise becoming rejected.\r\n-- The rejection reason will be the value passed to the function, or \"Cancelled\" if none was provided.\r\n--\r\n-- WARNING: Returns two values.\r\n\r\nfunction TtsWait.frames_with_cancel(frame_count, value)\r\n local canceller\r\n local promise = Promise:new(\r\n function(resolve, reject)\r\n local id = Wait.frames(||resolve(value), frame_count)\r\n\r\n canceller = function(cancel_reason)\r\n if not done then\r\n Wait.stop(id)\r\n reject(cancel_reason or \"Cancelled\")\r\n end\r\n end\r\n end\r\n )\r\n\r\n return promise, canceller\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsWait.time\r\n--\r\n-- Returns a promises that's fulfilled after `secs` (possibly-fractional) seconds.\r\n-- It will be fulfilled with `value` (if provided).\r\n\r\nfunction TtsWait.time(secs, value)\r\n return Promise:new(\r\n function(resolve, reject)\r\n Wait.time(||resolve(value), secs)\r\n end\r\n )\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsWait.time_with_cancel\r\n--\r\n-- This function is identical to TtsWait.time except a second value is returned.\r\n-- It consists of a function which can be used to cancel the wait.\r\n-- Calling this function will result in the promise becoming rejected.\r\n-- The rejection reason will be the value passed to the function, or \"Cancelled\" if none was provided.\r\n--\r\n-- WARNING: Returns two values.\r\n\r\nfunction TtsWait.time_with_cancel(secs, value)\r\n local canceller\r\n local promise = Promise:new(\r\n function(resolve, reject)\r\n local id = Wait.time(||resolve(value), secs)\r\n\r\n canceller = function(cancel_reason)\r\n if not done then\r\n Wait.stop(id)\r\n reject(cancel_reason or \"Cancelled\")\r\n end\r\n end\r\n end\r\n )\r\n\r\n return promise, canceller\r\nend\r\n\r\n\r\n-- ================================================================================\r\n\r\nreturn TtsWait\r\n\nend)\n__bundle_register(\"kintastic/lib/TtsSaveEvent\", function(require, _LOADED, __bundle_register, __bundle_modules)\n-- ================================================================================\r\n-- Make is posible to add listeners using `Wrap.add_event_listener` to `onSave`.\r\n-- Listeners must modify `SELF.script_state` directly instead\r\n-- of returning the serialized state to have an effect.\r\n-- ================================================================================\r\n\r\n-- Modules.\r\nlocal TableLock = require(\"kintastic/lib/TableLock\")\r\nlocal Wrap = require(\"kintastic/lib/Wrap\")\r\n\r\n\r\n-- ================================================================================\r\n-- Public interface\r\n\r\n-- ----------------------------------------\r\n-- Public global variable SELF\r\n--\r\n-- An alias for global var `self` to avoid conflicts\r\n-- with local vars and parameters named `self`.\r\n\r\nTableLock.declare_and_set(_G, \"SELF\", self)\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public global function onSave\r\n\r\nWrap.define_event(\"onSave\")\r\n\r\nWrap.wrap(_G, \"onSave\",\r\n function(old_f)\r\n old_f()\r\n return Global.script_state\r\n end\r\n)\r\n\r\n\r\n-- ================================================================================\r\n\r\nreturn { }\r\n\nend)\n__bundle_register(\"kintastic/lib/TtsObjUtils\", function(require, _LOADED, __bundle_register, __bundle_modules)\n-- ================================================================================\r\n-- TTS object utils\r\n-- ================================================================================\r\n\r\n-- Modules.\r\nlocal TtsMsgUtils = require(\"kintastic/lib/TtsMsgUtils\")\r\nlocal TtsObject = require(\"kintastic/lib/TtsObject\")\r\n\r\n-- The module.\r\nlocal TtsObjUtils = { }\r\n\r\n\r\n-- ================================================================================\r\n-- Private constants\r\n\r\nlocal EMPTY_TABLE = { }\r\n\r\n\r\n-- ================================================================================\r\n-- Public interface\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsObjUtils.resolve_guids\r\n\r\nfunction TtsObjUtils.resolve_guids(tbl, not_required)\r\n not_required = not_required or EMPTY_TABLE\r\n\r\n local function helper(tbl)\r\n local resolved = { }\r\n for k, v in pairs(tbl) do\r\n local v_type = type(v)\r\n if v_type == \"string\" then\r\n local guid = v\r\n local obj = getObjectFromGUID(guid)\r\n if obj == nil and not not_required[guid] then\r\n TtsMsgUtils.broadcast_internal_error(\"Can't resolve guid \" .. guid)\r\n end\r\n resolved[k] = obj\r\n elseif v_type == \"table\" then\r\n resolved[k] = helper(v)\r\n else\r\n TtsMsgUtils.broadcast_internal_error(\"Don't know how to resolve a \" .. v_type)\r\n end\r\n end\r\n\r\n return resolved\r\n end\r\n\r\n return helper(tbl)\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsObjUtils.get_abs_width()\r\n-- Public function TtsObjUtils.get_abs_height()\r\n-- Public function TtsObjUtils.get_abs_depth()\r\n-- Public function TtsObjUtils.get_top_pos\r\n-- Public function TtsObjUtils.get_height_to_origin\r\n-- Public function TtsObjUtils.get_drop_pos\r\n-- Public function TtsObjUtils.is_stackable\r\n-- Public function TtsObjUtils.is_stack\r\n--\r\n-- WARNING: DEPRECATED/OBSLETE. Use TtsObject instead.\r\n\r\nTtsObjUtils.get_abs_width = TtsObject.get_abs_width\r\nTtsObjUtils.get_abs_height = TtsObject.get_abs_height\r\nTtsObjUtils.get_abs_depth = TtsObject.get_abs_depth\r\nTtsObjUtils.get_top_pos = TtsObject.get_top_pos\r\nTtsObjUtils.get_height_to_origin = TtsObject.get_height_to_origin\r\nTtsObjUtils.get_drop_pos = |container, obj|TtsObject.get_drop_pos(obj, container)\r\nTtsObjUtils.is_stackable = TtsObject.is_stackable\r\nTtsObjUtils.is_stack = TtsObject.is_stack\r\n\r\n\r\n-- ================================================================================\r\n\r\nreturn TtsObjUtils\r\n\nend)\n__bundle_register(\"kintastic/lib/Promise/TtsBase\", function(require, _LOADED, __bundle_register, __bundle_modules)\n-- ================================================================================\r\n-- Promise-based version of base methods.\r\n-- ================================================================================\r\n\r\n-- Modules.\r\nlocal Promise = require(\"kintastic/lib/Promise\")\r\nlocal TableUtils = require(\"kintastic/lib/TableUtils\")\r\nlocal TtsMsgUtils = require(\"kintastic/lib/TtsMsgUtils\")\r\n\r\n-- Forward declarations for privates found at the bottom.\r\nlocal spawner\r\n\r\n-- The module.\r\nlocal TtsBase = { }\r\n\r\n\r\n-- ================================================================================\r\n-- Public interface\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsBase.spawnObject\r\n--\r\n-- This is a thin wrapper around `spawnObject` that returns a promise that\r\n-- becomes fulfilled with the spawned object once the object has been created.\r\n--\r\n-- If an `immediate_callback` argument is provided, it will be called as soon\r\n-- as `spawnObject` returns, with the object as a parameter. It's return\r\n-- value is ignored.\r\n--\r\n-- If a `callback_function` argument is provided, it will be called once the\r\n-- object is spawned, and the promise returned by `TtsBase.spawnObject`\r\n-- will adopt the value returned by the callback function.\r\n\r\nlocal wrapped_spawn_object = spawnObject\r\n\r\nfunction TtsBase.spawnObject(args)\r\n return spawner(wrapped_spawn_object, args)\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsBase.spawnObjectData\r\n--\r\n-- This is a thin wrapper around `spawnObjectData` that returns a promise that\r\n-- becomes fulfilled with the spawned object once the object has been created.\r\n--\r\n-- If an `immediate_callback` argument is provided, it will be called as soon\r\n-- as `spawnObjectData` returns, with the object as a parameter. It's return\r\n-- value is ignored.\r\n--\r\n-- If a `callback_function` argument is provided, it will be called once the\r\n-- object is spawned, and the promise returned by `TtsBase.spawnObjectData`\r\n-- will adopt the value returned by the callback function.\r\n--\r\n-- WARNING: The `return_obj` argument is DEPERECATED/OBSOLETE.\r\n\r\nlocal wrapped_spawn_object_data = spawnObjectData\r\n\r\nfunction TtsBase.spawnObjectData(args)\r\n return spawner(wrapped_spawn_object_data, args)\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function TtsBase.spawnObjectJSON\r\n--\r\n-- This is a thin wrapper around `spawnObjectJSON` that returns a promise that\r\n-- becomes fulfilled with the spawned object once the object has been created.\r\n--\r\n-- If an `immediate_callback` argument is provided, it will be called as soon\r\n-- as `spawnObjectJSON` returns, with the object as a parameter. It's return\r\n-- value is ignored.\r\n--\r\n-- If a `callback_function` argument is provided, it will be called once the\r\n-- object is spawned, and the promise returned by `TtsBase.spawnObjectJSON`\r\n-- will adopt the value returned by the callback function.\r\n--\r\n-- WARNING: The `return_obj` argument is DEPERECATED/OBSOLETE.\r\n\r\nlocal wrapped_spawn_object_json = spawnObjectJSON\r\n\r\nfunction TtsBase.spawnObjectJSON(args)\r\n return spawner(wrapped_spawn_object_json, args)\r\nend\r\n\r\n\r\n-- ================================================================================\r\n-- Privates\r\n\r\n-- ----------------------------------------\r\n-- Private function spawner\r\n\r\nfunction spawner(wrapped_function, args)\r\n local spawned_obj\r\n local promise = Promise:new(\r\n function(resolve, reject)\r\n args = args and TableUtils.copy(args) or { }\r\n\r\n if args.callback_function then\r\n local orig_cb = args.callback_function\r\n args.callback_function = function(obj)\r\n resolve(orig_cb(obj))\r\n end\r\n else\r\n args.callback_function = resolve\r\n end\r\n\r\n spawned_obj = wrapped_function(args)\r\n end\r\n )\r\n\r\n if args.immediate_callback then\r\n local success, rv = pcall(args.immediate_callback, spawned_obj)\r\n if not success then\r\n TtsMsgUtils.broadcast_error(rv)\r\n end\r\n end\r\n\r\n if args.return_obj then\r\n return promise, spawned_obj\r\n else\r\n return promise\r\n end\r\nend\r\n\r\n\r\n-- ================================================================================\r\n\r\nreturn TtsBase\r\n\nend)\n__bundle_register(\"kintastic/lib/StrUtils\", function(require, _LOADED, __bundle_register, __bundle_modules)\n-- ================================================================================\r\n-- String utils\r\n-- ================================================================================\r\n\r\n-- The module.\r\nlocal StrUtils = { }\r\n\r\n\r\n-- ================================================================================\r\n-- Public interface\r\n\r\n-- ----------------------------------------\r\n-- Public function StrUtils.starts_with\r\n\r\nfunction StrUtils.starts_with(str, substr)\r\n return substr == \"\" or str:sub(1, #substr) == substr\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function StrUtils.ends_with\r\n\r\nfunction StrUtils.ends_with(str, substr)\r\n return substr == \"\" or str:sub(-#substr) == substr\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function StrUtils.split\r\n\r\nfunction StrUtils.split(str, pattern, plain, discard)\r\n local len = string.len(str)\r\n if len == 0 then\r\n return { }\r\n end\r\n\r\n local rv = { }\r\n\r\n local i = 1\r\n while i <= len do\r\n local j, k = string.find(str, pattern, i, plain)\r\n if not j then\r\n break\r\n end\r\n\r\n if k < j then\r\n j = j + 1\r\n k = k + 1\r\n end\r\n\r\n table.insert(rv, string.sub(str, i, j-1))\r\n i = k + 1\r\n end\r\n\r\n table.insert(rv, string.sub(str, i))\r\n\r\n if discard then\r\n while #rv > 0 and rv[#rv] == \"\" do\r\n table.remove(rv)\r\n end\r\n end\r\n\r\n return rv\r\nend\r\n\r\n\r\n-- ================================================================================\r\n\r\nreturn StrUtils\r\n\nend)\n__bundle_register(\"kintastic/lib/Debouncer\", function(require, _LOADED, __bundle_register, __bundle_modules)\n-- ================================================================================\r\n-- Tool to avoid accidental double-clicks.\r\n--\r\n-- Usage:\r\n-- Debouncer.debounce(\r\n-- \"on_click_advance_game\",\r\n-- function(name)\r\n-- UI.setAttribute(\"advance_game_button\", \"onClick\", name)\r\n-- end,\r\n-- function(debouncer, button_used, player, mouse_button, button_id)\r\n-- -- Check permissions, if it's ok to press button now, etc\r\n-- if ... then\r\n-- return\r\n-- end\r\n--\r\n-- button_used()\r\n--\r\n-- advance_game()\r\n-- end\r\n-- )\r\n-- ================================================================================\r\n\r\n-- Modules.\r\nlocal TableLock = require(\"kintastic/lib/TableLock\")\r\n\r\n-- Imports.\r\nlocal declare_and_set = TableLock.declare_and_set\r\n\r\n-- The class.\r\nlocal Debouncer = { }\r\n\r\nDebouncer.mt = {\r\n __index = Debouncer,\r\n}\r\n\r\n\r\n-- ================================================================================\r\n-- Privates\r\n\r\n-- ----------------------------------------\r\n-- Private function on_click_dummy\r\n\r\nlocal function on_click_dummy()\r\nend\r\n\r\n\r\n-- ================================================================================\r\n-- Public interface\r\n\r\n-- ----------------------------------------\r\n-- Public function debounce\r\n\r\nfunction Debouncer.debounce(name, setter, handler, opts)\r\n local self = Debouncer:new(name, setter, handler, opts)\r\n self:install()\r\n return self\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public constructor Debouncer:new\r\n--\r\n-- - name: The base name of the button click handler to create.\r\n-- - setter: A function that updates the Lua or XML buttons.\r\n-- - handler: When the button is clicked, this function will be\r\n-- called with the same arguments as provided as the\r\n-- button click handler would normally receive plus\r\n-- one leading argument. This leading argument must\r\n-- be called as a function on a successful click.\r\n-- - opts: Optional table of options:\r\n-- - cool_down: A period of time in which for which the button\r\n-- will be ignored after it has been clicked.\r\n-- - on_disable: Called when the button becomes disabled\r\n-- (manually or when a cool-down period begins).\r\n-- - on_enable: Called when the button becomes enabled\r\n-- (manually or when a cool-down period begins).\r\n\r\nfunction Debouncer.new(class, name, setter, handler, opts)\r\n local self = setmetatable({}, class.mt)\r\n\r\n self.name = name\r\n self.setter = setter\r\n self.handler = handler\r\n self.opts = opts or { }\r\n self.counter = 0\r\n self.manually_disabled = false\r\n self.in_cool_down = false\r\n self.wrapped_handler = nil\r\n\r\n return self\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public instance method debouncer:install\r\n\r\nfunction Debouncer:install()\r\n local expired = false\r\n\r\n local function button_used()\r\n expired = true\r\n self:install()\r\n end\r\n\r\n local function wrapped_handler(...)\r\n if expired or self:_is_disabled() then\r\n return\r\n end\r\n\r\n return self:handler(button_used, ...)\r\n end\r\n\r\n if self.opts.cool_down and self.counter > 0 then\r\n self:_disable(\"in_cool_down\")\r\n\r\n Wait.time(\r\n function()\r\n self:_enable(\"in_cool_down\")\r\n end,\r\n self.opts.cool_down\r\n )\r\n end\r\n\r\n self.wrapped_handler = wrapped_handler\r\n\r\n local old_handler_name = \"on_click_advance_game_\" .. self.counter\r\n self.counter = self.counter + 1\r\n local new_handler_name = \"on_click_advance_game_\" .. self.counter\r\n\r\n declare_and_set(_G, new_handler_name, wrapped_handler)\r\n self.setter(new_handler_name)\r\n\r\n if self.counter > 1 then\r\n _G[old_handler_name] = on_click_dummy\r\n end\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public instance method debouncer:call\r\n--\r\n-- WARNING: Calling this defies some of the protection offered by this module.\r\n\r\nfunction Debouncer:call(...)\r\n self.wrapped_handler(...)\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public instance method debouncer:enable\r\n-- Public instance method debouncer:disable\r\n--\r\n-- Manually enable or disable the button.\r\n\r\nfunction Debouncer:disable()\r\n self:_disable(\"manually_disabled\")\r\nend\r\n\r\nfunction Debouncer:enable()\r\n self:_enable(\"manually_disabled\")\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public instance accessors\r\n\r\nfunction Debouncer:get_opt_cool_down()\r\n return self.opts.cool_down\r\nend\r\n\r\nfunction Debouncer:set_opt_cool_down(val)\r\n self.opts.cool_down = val\r\nend\r\n\r\n\r\n-- ================================================================================\r\n-- Privates\r\n\r\nfunction Debouncer:_is_disabled()\r\n return self.manually_disabled or self.in_cool_down\r\nend\r\n\r\n\r\nfunction Debouncer:_disable(attr)\r\n local was_disabled = self:_is_disabled()\r\n self[attr] = true\r\n if not was_disabled and self.opts.on_disable then\r\n self.opts.on_disable(self)\r\n end\r\nend\r\n\r\n\r\nfunction Debouncer:_enable(attr)\r\n self[attr] = false\r\n local disabled = self:_is_disabled()\r\n if not disabled and self.opts.on_enable then\r\n self.opts.on_enable(self)\r\n end\r\nend\r\n\r\n\r\n-- ================================================================================\r\n\r\nreturn Debouncer\r\n\nend)\n__bundle_register(\"mods/Brass/lib/App/Lancashire\", function(require, _LOADED, __bundle_register, __bundle_modules)\n-- ================================================================================\n-- Brass: Lancashire\n-- ================================================================================\n\n-- Modules.\nlocal Const = require(\"kintastic/lib/Const\")\nlocal DictUtils = require(\"kintastic/lib/DictUtils\")\nlocal Iters = require(\"kintastic/lib/Iters\")\nlocal Promise = require(\"kintastic/lib/Promise\")\nlocal StrUtils = require(\"kintastic/lib/StrUtils\")\nlocal TableLock = require(\"kintastic/lib/TableLock\")\nlocal TtsMsgUtils = require(\"kintastic/lib/TtsMsgUtils\")\nlocal TtsObject = require(\"kintastic/lib/Promise/TtsObject\")\nlocal TtsObjUtils = require(\"kintastic/lib/TtsObjUtils\")\nlocal TtsWait = require(\"kintastic/lib/Promise/TtsWait\")\nlocal TtsZoneUtils = require(\"kintastic/lib/TtsZoneUtils\")\nlocal App = require(\"mods/Brass/lib/App\")\n\n-- Imports.\nlocal const = Const.const\nlocal rconst = Const.rconst\nlocal pick = DictUtils.pick\nlocal ivalues = Iters.ivalues\nlocal starts_with = StrUtils.starts_with\nlocal lock = TableLock.lock\nlocal rlock = TableLock.rlock\nlocal broadcast_error = TtsMsgUtils.broadcast_error\nlocal get_abs_height = TtsObject.get_abs_height\nlocal get_bot_pos = TtsObject.get_bot_pos\nlocal get_top_pos = TtsObject.get_top_pos\nlocal move_atop_smooth = TtsObject.moveAtopSmooth\nlocal set_position_smooth = TtsObject.setPositionSmooth\nlocal set_transform_smooth = TtsObject.setTransformSmooth\nlocal take_object = TtsObject.takeObject\nlocal resolve_guids = TtsObjUtils.resolve_guids\nlocal wait_condition = TtsWait.cond\nlocal wait_frames = TtsWait.frames\nlocal find_zone = TtsZoneUtils.find_zone\n\n-- The class.\nlocal LancashireApp = { }\n\n-- Inherit functions from App.\nlocal SUPER = App\n\nsetmetatable(LancashireApp, {\n __index = SUPER,\n})\n\nLancashireApp.mt = {\n __index = LancashireApp,\n}\n\n\n-- ================================================================================\n-- Constructor\n\nfunction LancashireApp.new(class, saved_state_json)\n return SUPER.new(class, \"Lancashire\", saved_state_json)\nend\n\n\n-- ================================================================================\n-- Object initialization\n\nfunction LancashireApp:init(saved_state_json)\n self.initial_funds = 30\n self.loan_amount = 10\n self.has_immediate_vps = false\n self.money_value = 10 -- Meaning 1 VP per £10.\n SUPER.init(self, saved_state_json)\nend\n\n\nfunction LancashireApp:init_industry_tile_data()\n -- Don't lock since used as lookup.\n self.industry_tile_data = rconst({\n [ \"Coal Mine I\" ] = lock({ type = \"Coal Mine\", level = 1, count = 1, canal_era = true, rail_era = false, cost_money = 5, cost_coal = 0, cost_iron = 0, points = 1, income = 4, link_points = 1, can_develop = true }),\n [ \"Coal Mine II\" ] = lock({ type = \"Coal Mine\", level = 2, count = 2, canal_era = true, rail_era = true, cost_money = 7, cost_coal = 0, cost_iron = 0, points = 2, income = 7, link_points = 1, can_develop = true }),\n [ \"Coal Mine III\" ] = lock({ type = \"Coal Mine\", level = 3, count = 2, canal_era = true, rail_era = true, cost_money = 8, cost_coal = 0, cost_iron = 1, points = 3, income = 6, link_points = 1, can_develop = true }),\n [ \"Coal Mine IV\" ] = lock({ type = \"Coal Mine\", level = 4, count = 2, canal_era = true, rail_era = true, cost_money = 10, cost_coal = 0, cost_iron = 1, points = 4, income = 5, link_points = 1, can_develop = true }),\n [ \"Cotton Mill I\" ] = lock({ type = \"Cotton Mill\", level = 1, count = 3, canal_era = true, rail_era = false, cost_money = 12, cost_coal = 0, cost_iron = 0, points = 5, income = 5, link_points = 1, can_develop = true }),\n [ \"Cotton Mill II\" ] = lock({ type = \"Cotton Mill\", level = 2, count = 2, canal_era = true, rail_era = true, cost_money = 14, cost_coal = 1, cost_iron = 0, points = 5, income = 4, link_points = 1, can_develop = true }),\n [ \"Cotton Mill III\" ] = lock({ type = \"Cotton Mill\", level = 3, count = 3, canal_era = true, rail_era = true, cost_money = 16, cost_coal = 1, cost_iron = 1, points = 9, income = 3, link_points = 1, can_develop = true }),\n [ \"Cotton Mill IV\" ] = lock({ type = \"Cotton Mill\", level = 4, count = 3, canal_era = true, rail_era = true, cost_money = 18, cost_coal = 1, cost_iron = 1, points = 12, income = 2, link_points = 1, can_develop = true }),\n [ \"Iron Works I\" ] = lock({ type = \"Iron Works\", level = 1, count = 1, canal_era = true, rail_era = false, cost_money = 5, cost_coal = 1, cost_iron = 0, points = 3, income = 3, link_points = 1, can_develop = true }),\n [ \"Iron Works II\" ] = lock({ type = \"Iron Works\", level = 2, count = 1, canal_era = true, rail_era = true, cost_money = 7, cost_coal = 1, cost_iron = 0, points = 5, income = 3, link_points = 1, can_develop = true }),\n [ \"Iron Works III\" ] = lock({ type = \"Iron Works\", level = 3, count = 1, canal_era = true, rail_era = true, cost_money = 9, cost_coal = 1, cost_iron = 0, points = 7, income = 2, link_points = 1, can_develop = true }),\n [ \"Iron Works IV\" ] = lock({ type = \"Iron Works\", level = 4, count = 1, canal_era = true, rail_era = true, cost_money = 12, cost_coal = 1, cost_iron = 0, points = 9, income = 1, link_points = 1, can_develop = true }),\n [ \"Port I\" ] = lock({ type = \"Port\", level = 1, count = 1, canal_era = true, rail_era = false, cost_money = 6, cost_coal = 0, cost_iron = 0, points = 2, income = 3, link_points = 1, can_develop = true }),\n [ \"Port II\" ] = lock({ type = \"Port\", level = 2, count = 1, canal_era = true, rail_era = true, cost_money = 7, cost_coal = 0, cost_iron = 0, points = 4, income = 3, link_points = 1, can_develop = true }),\n [ \"Port III\" ] = lock({ type = \"Port\", level = 3, count = 1, canal_era = true, rail_era = true, cost_money = 8, cost_coal = 0, cost_iron = 0, points = 6, income = 4, link_points = 1, can_develop = true }),\n [ \"Port IV\" ] = lock({ type = \"Port\", level = 4, count = 1, canal_era = true, rail_era = true, cost_money = 9, cost_coal = 0, cost_iron = 0, points = 9, income = 4, link_points = 1, can_develop = true }),\n [ \"Shipyard I\" ] = lock({ type = \"Shipyard\", level = 1, count = 2, canal_era = true, rail_era = false, cost_money = 16, cost_coal = 1, cost_iron = 1, points = 10, income = 2, link_points = 1, can_develop = true }),\n [ \"Shipyard II\" ] = lock({ type = \"Shipyard\", level = 2, count = 2, canal_era = false, rail_era = true, cost_money = 25, cost_coal = 1, cost_iron = 1, points = 18, income = 1, link_points = 1, can_develop = true }),\n })\nend\n\n\nfunction LancashireApp:init_locations_and_links()\n -- Don't lock since used as lookup.\n self.locations = rconst({\n [ \"Barrow-in-Furness\" ] = { \"Barrow-in-Furness (W)\",\n \"Barrow-in-Furness (E)\" },\n [ \"Birkenhead\" ] = { \"Birkenhead\" },\n [ \"Blackburn\" ] = { \"Blackburn (N)\",\n \"Blackburn (W)\",\n \"Blackburn (E)\" },\n [ \"Bolton\" ] = { \"Bolton (NW)\",\n \"Bolton (NE)\",\n \"Bolton (S)\" },\n [ \"Burnley\" ] = { \"Burnley (N)\",\n \"Burnley (S)\" },\n [ \"Bury\" ] = { \"Bury (N)\",\n \"Bury (S)\" },\n [ \"Colne\" ] = { \"Colne (N)\",\n \"Colne (S)\" },\n [ \"Ellesmere Port\" ] = { \"Ellesmere Port\" },\n [ \"Fleetwood\" ] = { \"Fleetwood\" },\n [ \"Lancaster\" ] = { \"Lancaster (W)\",\n \"Lancaster (E)\" },\n [ \"Liverpool\" ] = { \"Liverpool (NW)\",\n \"Liverpool (NE)\",\n \"Liverpool (SW)\",\n \"Liverpool (SE)\" },\n [ \"Macclesfield\" ] = { \"Macclesfield (W)\",\n \"Macclesfield (E)\" },\n [ \"Manchester\" ] = { \"Manchester (NW)\",\n \"Manchester (NE)\",\n \"Manchester (SW)\",\n \"Manchester (SE)\" },\n [ \"Oldham\" ] = { \"Oldham (W)\",\n \"Oldham (E)\" },\n [ \"Preston\" ] = { \"Preston (NW)\",\n \"Preston (NE)\",\n \"Preston (S)\" },\n [ \"Rochdale\" ] = { \"Rochdale (N)\",\n \"Rochdale (SW)\",\n \"Rochdale (SE)\" },\n [ \"Stockport\" ] = { \"Stockport (W)\",\n \"Stockport (E)\" },\n [ \"Warrington & Runcorn\" ] = { \"Warrington & Runcorn (W)\",\n \"Warrington & Runcorn (E)\" },\n [ \"Wigan\" ] = { \"Wigan (N)\",\n \"Wigan (S)\" },\n })\n\n -- Don't lock since used as lookup.\n self.links = rconst({\n [ \"Barrow-in-Furness - Lancaster\" ] = { canal = false, rail = true },\n [ \"Birkenhead - Ellesmere Port\" ] = { canal = false, rail = true },\n [ \"Blackburn - Bolton\" ] = { canal = false, rail = true },\n [ \"Blackburn - Burnley\" ] = { canal = true, rail = true },\n [ \"Blackburn - Preston\" ] = { canal = false, rail = true },\n [ \"Blackburn - Wigan\" ] = { canal = true, rail = true },\n [ \"Blackpool - Preston\" ] = { canal = false, rail = true },\n [ \"Bolton - Bury\" ] = { canal = true, rail = true },\n [ \"Bolton - Manchester\" ] = { canal = true, rail = true },\n [ \"Bolton - Wigan\" ] = { canal = false, rail = true },\n [ \"Burnley - Bury\" ] = { canal = false, rail = true },\n [ \"Burnley - Colne\" ] = { canal = true, rail = true },\n [ \"Bury - Manchester\" ] = { canal = true, rail = true },\n [ \"Bury - Rochdale\" ] = { canal = false, rail = true },\n [ \"Colne - Yorkshire\" ] = { canal = true, rail = true },\n [ \"Ellesmere Port - Liverpool\" ] = { canal = true, rail = false },\n [ \"Ellesmere Port - Northwich\" ] = { canal = true, rail = true },\n [ \"Ellesmere Port - Warrington & Runcorn\" ] = { canal = true, rail = true },\n [ \"Fleetwood - Preston\" ] = { canal = true, rail = true },\n [ \"Lancaster - Preston\" ] = { canal = true, rail = true },\n [ \"Lancaster - Scotland\" ] = { canal = false, rail = true },\n [ \"Liverpool - Southport\" ] = { canal = false, rail = true },\n [ \"Liverpool - Warrington & Runcorn\" ] = { canal = false, rail = true },\n [ \"Liverpool - Wigan\" ] = { canal = true, rail = true },\n [ \"Macclesfield - Stockport\" ] = { canal = true, rail = true },\n [ \"Macclesfield - The Midlands\" ] = { canal = true, rail = true },\n [ \"Manchester - Oldham\" ] = { canal = true, rail = true },\n [ \"Manchester - Stockport\" ] = { canal = true, rail = true },\n [ \"Manchester - Warrington & Runcorn\" ] = { canal = true, rail = true },\n [ \"Northwich - The Midlands\" ] = { canal = true, rail = true },\n [ \"Oldham - Rochdale\" ] = { canal = true, rail = true },\n [ \"Preston - Southport\" ] = { canal = false, rail = true },\n [ \"Preston - Wigan\" ] = { canal = true, rail = true },\n [ \"Rochdale - Yorkshire\" ] = { canal = true, rail = true },\n [ \"Southport - Wigan\" ] = { canal = false, rail = true },\n [ \"Warrington & Runcorn - Wigan\" ] = { canal = true, rail = true },\n })\n\n -- Don't lock since used as lookup.\n self.bonuses_by_external_location = const({\n [ \"Blackpool\" ] = 2,\n [ \"Northwich\" ] = 2,\n [ \"Scotland\" ] = 2,\n [ \"Southport\" ] = 2,\n [ \"The Midlands\" ] = 2,\n [ \"Yorkshire\" ] = 2,\n })\n\n SUPER.init_locations_and_links(self)\nend\n\n\nfunction LancashireApp:init_objects()\n local state = self.state\n local num_players = state:get_num_players()\n\n SUPER.init_objects(self)\n\n local guids = {\n distant_market_marker = \"e7a73c\",\n\n coal_bag = \"e54c1a\",\n iron_bag = \"ac9020\",\n\n -- For 2, 3, and 4 players respectively.\n distant_market_bags = { \"844d10\", \"064067\", \"33a1fd\" },\n\n deck_splitter = \"7e93fe\",\n\n play_deck_zone = \"497481\",\n\n distant_market_deck_zone = \"8c807c\",\n distant_market_discard_zone = \"ac11de\",\n\n -- In the order they are emptied/visited.\n coal_market_zones = { \"3c5ffd\", \"14aada\", \"ec2671\", \"39e20b\", \"56e563\", \"2e35ed\", \"6c1ee9\", \"bb3394\" },\n iron_market_zones = { \"550e2a\", \"581ae8\", \"6581f5\", \"6c2b6d\", \"3bcd07\", \"2734e8\", \"0a7292\", \"2beec8\" },\n distant_market_zones = { \"d02bc1\", \"7921a6\", \"e8e801\", \"9d419f\", \"844a56\", \"045c53\", \"6bca4e\", \"436909\", \"617a3c\" },\n\n -- We call each zone of a location a \"location square\".\n -- Using .getGMNotes() on the location square gets the name of the location.\n location_squares = {\n [ \"Barrow-in-Furness (W)\" ] = \"426a10\",\n [ \"Barrow-in-Furness (E)\" ] = \"cf611f\",\n [ \"Birkenhead\" ] = \"3ccdcc\",\n [ \"Blackburn (N)\" ] = \"6f807f\",\n [ \"Blackburn (W)\" ] = \"38f370\",\n [ \"Blackburn (E)\" ] = \"68b7fb\",\n [ \"Bolton (NW)\" ] = \"087a08\",\n [ \"Bolton (NE)\" ] = \"b699b0\",\n [ \"Bolton (S)\" ] = \"358114\",\n [ \"Burnley (N)\" ] = \"bb78b2\",\n [ \"Burnley (S)\" ] = \"d2d30a\",\n [ \"Bury (N)\" ] = \"4d037f\",\n [ \"Bury (S)\" ] = \"a0a19f\",\n [ \"Colne (N)\" ] = \"711ca4\",\n [ \"Colne (S)\" ] = \"05533c\",\n [ \"Ellesmere Port\" ] = \"d2b988\",\n [ \"Fleetwood\" ] = \"275cb6\",\n [ \"Lancaster (W)\" ] = \"faa397\",\n [ \"Lancaster (E)\" ] = \"594082\",\n [ \"Liverpool (NW)\" ] = \"e3b7a3\",\n [ \"Liverpool (NE)\" ] = \"91911b\",\n [ \"Liverpool (SW)\" ] = \"50d45a\",\n [ \"Liverpool (SE)\" ] = \"d6e737\",\n [ \"Macclesfield (W)\" ] = \"3323a4\",\n [ \"Macclesfield (E)\" ] = \"875228\",\n [ \"Manchester (NW)\" ] = \"33f755\",\n [ \"Manchester (NE)\" ] = \"12686f\",\n [ \"Manchester (SW)\" ] = \"ff7d65\",\n [ \"Manchester (SE)\" ] = \"efed8b\",\n [ \"Oldham (W)\" ] = \"c14e85\",\n [ \"Oldham (E)\" ] = \"f438fe\",\n [ \"Preston (NW)\" ] = \"ec5dd1\",\n [ \"Preston (NE)\" ] = \"2b0036\",\n [ \"Preston (S)\" ] = \"ed3210\",\n [ \"Rochdale (N)\" ] = \"010e97\",\n [ \"Rochdale (SW)\" ] = \"c9f3a4\",\n [ \"Rochdale (SE)\" ] = \"f88687\",\n [ \"Stockport (W)\" ] = \"a15ce2\",\n [ \"Stockport (E)\" ] = \"129bf3\",\n [ \"Warrington & Runcorn (W)\" ] = \"29e020\",\n [ \"Warrington & Runcorn (E)\" ] = \"245596\",\n [ \"Wigan (N)\" ] = \"101933\",\n [ \"Wigan (S)\" ] = \"f97fdc\",\n },\n\n -- Using .getGMNotes() on the link gets the name found here.\n link_zones = {\n [ \"Barrow-in-Furness - Lancaster\" ] = \"6f2977\",\n [ \"Birkenhead - Ellesmere Port\" ] = \"f14ab3\",\n [ \"Blackburn - Bolton\" ] = \"d0120f\",\n [ \"Blackburn - Burnley\" ] = \"b59ed4\",\n [ \"Blackburn - Preston\" ] = \"79d991\",\n [ \"Blackburn - Wigan\" ] = \"cac219\",\n [ \"Blackpool - Preston\" ] = \"4e1582\",\n [ \"Bolton - Bury\" ] = \"048b74\",\n [ \"Bolton - Manchester\" ] = \"2e310e\",\n [ \"Bolton - Wigan\" ] = \"14cbda\",\n [ \"Burnley - Bury\" ] = \"079905\",\n [ \"Burnley - Colne\" ] = \"069e2b\",\n [ \"Bury - Manchester\" ] = \"4c642b\",\n [ \"Bury - Rochdale\" ] = \"eaee25\",\n [ \"Colne - Yorkshire\" ] = \"12c4ca\",\n [ \"Ellesmere Port - Liverpool\" ] = \"af204d\",\n [ \"Ellesmere Port - Northwich\" ] = \"c378a7\",\n [ \"Ellesmere Port - Warrington & Runcorn\" ] = \"63ad80\",\n [ \"Fleetwood - Preston\" ] = \"80624b\",\n [ \"Lancaster - Preston\" ] = \"bdb232\",\n [ \"Lancaster - Scotland\" ] = \"c8c36a\",\n [ \"Liverpool - Southport\" ] = \"d540b6\",\n [ \"Liverpool - Warrington & Runcorn\" ] = \"7f2bc1\",\n [ \"Liverpool - Wigan\" ] = \"e0d583\",\n [ \"Macclesfield - Stockport\" ] = \"dd8b61\",\n [ \"Macclesfield - The Midlands\" ] = \"4610a8\",\n [ \"Manchester - Oldham\" ] = \"bc38fc\",\n [ \"Manchester - Stockport\" ] = \"14c4a7\",\n [ \"Manchester - Warrington & Runcorn\" ] = \"bfcd3a\",\n [ \"Northwich - The Midlands\" ] = \"06f6e9\",\n [ \"Oldham - Rochdale\" ] = \"f4097d\",\n [ \"Preston - Southport\" ] = \"f7d09d\",\n [ \"Preston - Wigan\" ] = \"4bcea1\",\n [ \"Rochdale - Yorkshire\" ] = \"05b47e\",\n [ \"Southport - Wigan\" ] = \"5da6db\",\n [ \"Warrington & Runcorn - Wigan\" ] = \"8e2ac6\",\n },\n }\n\n if state:get_game_started() then\n local rail_era_started = state:get_current_phase() >= App.Phases.RAIL_ERA_ROUND\n\n guids.distant_market_bags = pick(guids.distant_market_bags,\n |i, guid|i == num_players - 1 and not rail_era_started\n )\n end\n\n TableLock.merge(self.objects, resolve_guids(guids))\nend\n\n\nfunction LancashireApp:init_resources()\n local objects = self.objects\n\n self.resources = rconst(rlock({\n coal = { resource_name = \"Coal\", bag = objects.coal_bag, market_zones = objects.coal_market_zones },\n iron = { resource_name = \"Iron\", bag = objects.iron_bag, market_zones = objects.iron_market_zones },\n }))\n\n SUPER.init_resources(self)\nend\n\n\n-- ================================================================================\n-- UI initialization\n\nfunction LancashireApp:create_buttons()\n local game_board = self.objects.game_board\n\n SUPER.create_buttons(self)\n\n game_board.createButton({\n label=\"+\", click_function=\"on_click_add_coal_to_market\",\n position={ -9.529565, 11.26932, 10.34858 }, rotation={ 0, 180, 0 },\n height=300, width=300, font_color={ 0, 0, 0, 1 }, font_size=250,\n })\n game_board.createButton({\n label=\"-\", click_function=\"on_click_sub_coal_from_market\",\n position={ -9.529565, 11.26932, 9.487037 }, rotation={ 0, 180, 0 },\n height=300, width=300, font_color={ 0, 0, 0, 1 }, font_size=250,\n })\n\n game_board.createButton({\n label=\"+\", click_function=\"on_click_add_iron_to_market\",\n position={ -13.32889, 11.26932, 10.34858 }, rotation={ 0, 180, 0 },\n height=300, width=300, font_color={ 0, 0, 0, 1 }, font_size=250,\n })\n game_board.createButton({\n label=\"-\", click_function=\"on_click_sub_iron_from_market\",\n position={ -13.32889, 11.26932, 9.487037 }, rotation={ 0, 180, 0 },\n height=300, width=300,font_color={ 0, 0, 0, 1 }, font_size=250,\n })\nend\n\n\n-- ================================================================================\n-- UI event handlers\n\nLancashireApp:add_event_listener(\"on_click_sell_to_distant_market\", function(self, obj, player_color, mouse_button)\n if not self.state:get_game_started() or not self.state:is_active_player(player_color) then return end\n self:sell_to_distant_market(player_color)\nend)\n\n\n-- ================================================================================\n-- Game advancement\n\nfunction LancashireApp:do_start_round()\n local objects = self.objects\n local state = self.state\n return\n SUPER.do_start_round(self)\n :next(\n function()\n if state:get_current_phase() == App.Phases.RAIL_ERA_ROUND then\n local num_rounds_left = state:get_num_rounds() - state:get_current_round() + 1\n if num_rounds_left == 5 then\n local rotation = Vector(0, 180, 180)\n\n local zone = objects.play_deck_zone\n for obj in ivalues(zone.getObjects()) do\n if obj.name == \"Deck\" or obj.name == \"Card\" then\n obj.setRotation(rotation)\n end\n end\n\n objects.deck_splitter.destruct()\n objects.deck_splitter = nil\n\n broadcastToAll(\"This is the final round in which you can obtain a loan.\", Color(0xF3/255, 0xB2/255, 0x1C/255))\n elseif num_rounds_left == 4 then\n UI.setAttribute(\"PurpleLoanBttn\", \"interactable\", \"false\") UI.setAttribute(\"PurpleLoanImg\", \"visibility\", \"-\")\n UI.setAttribute(\"TealLoanBttn\", \"interactable\", \"false\") UI.setAttribute(\"TealLoanImg\", \"visibility\", \"-\")\n UI.setAttribute(\"OrangeLoanBttn\", \"interactable\", \"false\") UI.setAttribute(\"OrangeLoanImg\", \"visibility\", \"-\")\n UI.setAttribute(\"YellowLoanBttn\", \"interactable\", \"false\") UI.setAttribute(\"YellowLoanImg\", \"visibility\", \"-\")\n end\n end\n end\n )\nend\n\n\nfunction LancashireApp:end_turn()\n local state = self.state\n\n local current_player = state:get_current_player()\n\n -- Check if the player actually completed their turn.\n if not state:get_opt_skip_discard_check() then\n if not self:are_discards_full(current_player) then\n local player = Player[current_player]\n if player.seated then\n broadcast_error(current_player .. \", you can’t end your turn because you don’t have exactly 1 card in each of your discard piles!\", current_player)\n else\n broadcast_error(\"The round can’t be ended because \" .. current_player .. \" doesn’t have exactly 1 card in each of their discard piles!\")\n end\n\n return Promise:resolve()\n end\n end\n\n return SUPER.end_turn(self)\nend\n\n\n-- ================================================================================\n-- Setup\n\nfunction LancashireApp:setup_canal_era()\n local promises = { }\n table.insert(promises, SUPER.setup_canal_era(self))\n table.insert(promises, self:setup_distant_market())\n\n return\n Promise:all_settled(promises)\n :next(Promise.all_settled_error_logger)\nend\n\n\nfunction LancashireApp:setup_distant_market()\n local objects = self.objects\n\n local num_players = self.state:get_num_players()\n\n local promise\n for i, distant_market_bag in ipairs(objects.distant_market_bags) do\n if i == num_players - 1 then\n promise = self:spawn_distant_market_deck(distant_market_bag)\n else\n distant_market_bag.destruct()\n objects.distant_market_bags[i] = nil\n end\n end\n\n return promise\nend\n\n\nfunction LancashireApp:setup_rail_era()\n local promises = { }\n table.insert(promises, SUPER.setup_rail_era(self))\n table.insert(promises, self:reset_distant_market())\n\n return\n Promise:all_settled(promises)\n :next(Promise.all_settled_error_logger)\nend\n\n\nfunction LancashireApp:reset_distant_market()\n local objects = self.objects\n\n local promises = { }\n\n do\n local marker = objects.distant_market_marker\n local zone = objects.distant_market_zones[1]\n table.insert(promises,\n move_atop_smooth(marker, zone, { protrusion = 0.75, rotation = true })\n :next(|marker|wait_condition(||marker.resting, marker, 3, \"Timeout moving distant market marker.\"))\n )\n end\n\n do\n local zone = objects.distant_market_discard_zone\n for obj in ivalues(zone.getObjects()) do\n if starts_with(obj.getGMNotes(), \"Distant Market\") then\n obj.destruct()\n end\n end\n end\n\n self:find_distant_market_deck().destruct()\n\n do\n local num_players = self.state:get_num_players()\n local distant_market_bag = objects.distant_market_bags[ num_players - 1 ]\n table.insert(promises, self:spawn_distant_market_deck(distant_market_bag))\n\n distant_market_bag.destruct()\n objects.distant_market_bags[ num_players - 1 ] = nil\n\n end\n\n return\n Promise:all_settled(promises)\n :next(Promise.all_settled_error_logger)\nend\n\n\nfunction LancashireApp:setup_deck_rail_era()\n local objects = self.objects\n local splitter = objects.deck_splitter\n local num_players = self.state:get_num_players()\n\n return\n SUPER.setup_deck_rail_era(self)\n :next(\n function(deck)\n local splitter_height = get_abs_height(splitter)\n local deck_height = get_abs_height(deck)\n\n local pos = get_bot_pos(deck)\n\n local splitter_pos = pos:copy()\n splitter_pos.y = splitter_pos.y + 0.2 * 2*num_players + 0.2 + splitter_height/2\n\n local deck_pos = splitter_pos:copy()\n deck_pos.y = deck_pos.y + splitter_height/2 + 0.2 + deck_height/2\n\n local splitter_rot = splitter.getRotation()\n splitter_rot.z = ( splitter_rot.z + 180 ) % 360\n\n deck.setLock(true)\n return\n set_position_smooth(deck, deck_pos)\n :next(\n function(deck)\n splitter.setLock(true)\n return\n set_transform_smooth(splitter, {\n position = splitter_pos,\n rotation = splitter_rot,\n })\n :next(\n function(splitter)\n local promises = { }\n\n for i = 1, 2*num_players do\n pos.y = pos.y + 0.2\n table.insert(promises,\n take_object(deck, {\n position = pos,\n rotation = Vector(0, 90, 180),\n })\n )\n end\n\n return\n Promise:all_settled(promises)\n :next(Promise.all_settled_error_logger)\n end\n )\n :next(\n function()\n splitter.setLock(false)\n deck.setLock(false)\n\n return\n wait_frames(1)\n :next(||wait_condition(||splitter.resting and deck.resting, deck, 3, \"Timeout setting up deck.\"))\n end\n )\n end\n )\n end\n )\nend\n\n\n-- ================================================================================\n-- Discard pile manipulations\n\nfunction LancashireApp:are_discards_full(color_name)\n for i = 1, 2 do\n local count = self:get_discarded_count(color_name, i)\n if count ~= 1 then\n return false\n end\n end\n\n return true\nend\n\n\n-- ================================================================================\n-- Distant market\n\nfunction LancashireApp:spawn_distant_market_deck(distant_market_bag)\n local objects = self.objects\n local distant_market_deck_zone = objects.distant_market_deck_zone\n return\n take_object(distant_market_bag, {\n position = distant_market_deck_zone.getPosition(),\n rotation = distant_market_deck_zone.getRotation(),\n })\n :next(\n function(deck)\n return\n wait_condition(||deck.resting, deck, 3, \"Timeout setting up distant market.\")\n :next(\n function(deck)\n deck.setLock(true)\n deck.shuffle()\n return deck\n end\n )\n end\n )\nend\n\nfunction LancashireApp:find_distant_market_marker()\n local objects = self.objects\n local i = find_zone(objects.distant_market_zones, objects.distant_market_marker)\n return i\nend\n\n\nfunction LancashireApp:find_distant_market_deck()\n local zone = self.objects.distant_market_deck_zone\n for obj in ivalues(zone.getObjects()) do\n if starts_with(obj.getGMNotes(), \"Distant Market Tiles\") then\n return obj\n end\n end\n\n return nil\nend\n\n\nfunction LancashireApp:sell_to_distant_market(color_name)\n local objects = self.objects\n local player = objects.players[color_name]\n\n local initial_marker_idx = self:find_distant_market_marker()\n if not initial_marker_idx then\n broadcast_error(\"Can’t find the distant market marker!\")\n return\n end\n\n if initial_marker_idx == 9 then\n broadcast_error(color_name .. \", you can’t sell to the distant market due to lack of demand!\", color_name)\n return\n end\n\n local deck = self:find_distant_market_deck()\n local zone = objects.distant_market_discard_zone\n local p = take_object(deck, {\n position = get_top_pos(zone),\n rotation = zone.getRotation(),\n })\n :next(\n function(tile)\n local advancement = tonumber(string.sub(tile.getGMNotes(), -1))\n local final_marker_index = initial_marker_idx + advancement\n if final_marker_index > 9 then\n final_marker_index = 9\n end\n\n local income_advancement = math.floor( ( 8 - final_marker_index ) / 2 )\n\n local promises = { }\n local msg\n local msg_color_name = color_name\n\n if income_advancement > 0 then\n local marker = player.income_marker\n local old_ofs = self:get_track_position_offset(marker)\n local new_ofs = old_ofs + income_advancement\n table.insert(promises, self:move_marker(marker, new_ofs, true))\n msg = color_name .. \" sold to the distant market. Their income increased to \" .. new_ofs .. \" (from \" .. old_ofs .. \").\"\n elseif income_advancement == 0 then\n msg = color_name .. \" sold to the distant market. Their income remained unchanged.\"\n else\n msg = color_name .. \" attempted to sell to the distant market, but there was no demand.\"\n msg_color_name = \"Red\"\n end\n\n if initial_marker_idx ~= final_marker_index then\n local marker = objects.distant_market_marker\n local zone = objects.distant_market_zones[final_marker_index]\n table.insert(promises,\n move_atop_smooth(marker, zone, { protrusion = 0.75, rotation = true })\n :next(|marker|wait_condition(||marker.resting, marker, 3, \"Timeout moving distant market marker.\"))\n )\n end\n\n return\n Promise:all_settled(promises)\n :next(Promise.all_settled_error_logger)\n :finally(\n function()\n printToAll(msg, msg_color_name)\n end\n )\n end\n )\n :done()\nend\n\n\n-- ================================================================================\n\nreturn LancashireApp\n\nend)\n__bundle_register(\"kintastic/lib/Devel\", function(require, _LOADED, __bundle_register, __bundle_modules)\n-- ================================================================================\r\n-- Utils to aid development.\r\n-- ================================================================================\r\n\r\n-- Modules.\r\nlocal Debug = require(\"kintastic/lib/Debug\")\r\nlocal TableLock = require(\"kintastic/lib/TableLock\")\r\nlocal TtsPlayerUtils = require(\"kintastic/lib/TtsPlayerUtils\")\r\nlocal TtsZoneUtils = require(\"kintastic/lib/TtsZoneUtils\")\r\n\r\n-- Imports.\r\nlocal find_zones_containing_object = TtsZoneUtils.find_zones_containing_object\r\n\r\n-- The module.\r\nlocal Devel = { }\r\n\r\n\r\n-- ================================================================================\r\n-- Public interface\r\n\r\n-- ----------------------------------------\r\n-- Public function Devel.import_event_handlers\r\n\r\nfunction Devel.import_event_handlers()\r\n local event = \"onScriptingButtonDown\"\r\n TableLock.declare(_G, event)\r\n if _G[event] then\r\n local old_handler = _G[event]\r\n local new_handler = function(...)\r\n if not Devel[event]() then\r\n return old_handler(...)\r\n end\r\n end\r\n _G[event] = new_handler\r\n else\r\n _G[event] = Devel[event]\r\n end\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function Devel.make_zone_tangible\r\n\r\nfunction Devel.make_zone_tangible(zone)\r\n if not zone or zone.name ~= \"ScriptingTrigger\" then\r\n error(\"Invalid input.\")\r\n end\r\n\r\n local data = zone.getData()\r\n data.Name = \"BlockSquare\"\r\n data.Locked = false\r\n data.ColorDiffuse = { r = 0xB0/0xFF, g = 0xD1/0xFF, b = 0xE1/0xFF, a = 0xC8/0xFF }\r\n\r\n zone.destruct()\r\n\r\n return spawnObjectData({ data = data })\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function Devel.make_zone_intangible\r\n\r\nfunction Devel.make_zone_intangible(obj)\r\n if not obj or obj.name ~= \"BlockSquare\" then\r\n error(\"Invalid input.\")\r\n end\r\n\r\n local position = obj.getPosition()\r\n local rotation = obj.getRotation()\r\n local scale = obj.getScale()\r\n\r\n local data = obj.getData()\r\n data.Name = \"ScriptingTrigger\"\r\n data.Locked = true\r\n data.ColorDiffuse = { r = 1, g = 1, b = 1, a = 0x82/0xFF }\r\n\r\n obj.destruct()\r\n\r\n return spawnObjectData({\r\n data = data,\r\n position = position, -- Using the default didn't always work.\r\n rotation = rotation,\r\n scale = scale,\r\n })\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function Devel.onScriptingButtonDown\r\n\r\nfunction Devel.onScriptingButtonDown(index, color_name)\r\n if index ~= 5 then\r\n return false\r\n end\r\n\r\n local player = Player[color_name]\r\n local obj = player.getHoverObject()\r\n if not obj or obj.name ~= \"BlockSquare\" then\r\n return\r\n end\r\n\r\n local zones = find_zones_containing_object(obj)\r\n if #zones == 0 then\r\n Devel.make_zone_intangible(obj)\r\n elseif #zones == 1 then\r\n obj.destruct()\r\n Devel.make_zone_tangible(zones[1])\r\n else\r\n error(\"Object touches multiple zones.\")\r\n end\r\n\r\n return true\r\nend\r\n\r\n\r\n-- ================================================================================\r\n\r\nreturn Devel\r\n\nend)\n__bundle_register(\"kintastic/lib/Debug\", function(require, _LOADED, __bundle_register, __bundle_modules)\n-- ================================================================================\r\n-- Utils to aid debugging.\r\n-- ================================================================================\r\n\r\n-- Modules.\r\nlocal TableLock = require(\"kintastic/lib/TableLock\")\r\nlocal TtsPlayerUtils = require(\"kintastic/lib/TtsPlayerUtils\")\r\n\r\n-- The module.\r\nlocal Debug = { }\r\n\r\n\r\n-- ================================================================================\r\n-- Public interface\r\n\r\n-- ----------------------------------------\r\n-- Public function Debug.import_into_global\r\n\r\nfunction Debug.import_into_global()\r\n TableLock.merge(_G, Debug)\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function Debug.require\r\n--\r\n-- Gives access to bundled modules.\r\n\r\nDebug.require = require\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function Debug.get_host\r\n\r\nDebug.get_host = TtsPlayerUtils.get_host\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function Debug.ping\r\n\r\nfunction Debug.ping(guid_or_obj)\r\n local obj\r\n if type(guid_or_obj) == \"string\" then\r\n obj = getObjectFromGUID(guid_or_obj)\r\n else\r\n obj = guid_or_obj\r\n end\r\n\r\n if obj then\r\n Debug.get_host().pingTable(obj.getPosition())\r\n end\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function Debug.dd\r\n--\r\n-- usage:\r\n-- Debug.dd(x)\r\n-- Debug.dd(label, x)\r\n--\r\n-- WARNING: This uses a poor dumper which will be replaced with a better one in the future.\r\n\r\nfunction Debug.dd(a, b)\r\n if b then\r\n print(a .. \" \" .. logString(b))\r\n else\r\n print( logString(a))\r\n end\r\nend\r\n\r\n\r\n-- ----------------------------------------\r\n-- Public function Debug.O\r\n-- Public function Debug.H\r\n-- Public function Debug.HC\r\n\r\nDebug.O = getObjectFromGUID\r\nDebug.H = Debug.get_host\r\nDebug.HC = ||Debug.get_host().color\r\n\r\n\r\n-- ================================================================================\r\n\r\nreturn Debug\r\n\nend)\nreturn __bundle_require(\"__root\")",
"LuaScriptState": "",
"XmlUI": "\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n Start Game\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n +1\r\n +5\r\n +15\r\n -1\r\n -5\r\n -15\r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n +1\r\n +5\r\n +15\r\n -1\r\n -5\r\n -15\r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n +1\r\n +5\r\n +15\r\n -1\r\n -5\r\n -15\r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n +1\r\n +5\r\n +15\r\n -1\r\n -5\r\n -15\r\n \r\n \r\n \r\n \r\n \r\n\r\n\n",
"CustomUIAssets": [
{
"Name": "Box Purple",
"URL": "http://cloud-3.steamusercontent.com/ugc/1502467941174820281/72E8467300939276720B0208F6BAEDB7ABF4009D/"
},
{
"Name": "Box Teal",
"URL": "http://cloud-3.steamusercontent.com/ugc/1502467941174820372/95A285D029C16C1D92C38F3AF3B5DE91DB726B77/"
},
{
"Name": "Box Orange",
"URL": "http://cloud-3.steamusercontent.com/ugc/1502467941174820470/8138EC86B63E8CE63161DEB5640CD60DB7C71D47/"
},
{
"Name": "Box Yellow",
"URL": "http://cloud-3.steamusercontent.com/ugc/1502467941174820530/0735E06513847945AC86EF1D7225CE21D30E4CF3/"
},
{
"Name": "Box Admin",
"URL": "http://cloud-3.steamusercontent.com/ugc/1502467941174820598/17E00E8BBDFAACBA9EA5A51FA2C33EF722C28C56/"
},
{
"Name": "Income Purple Dec",
"URL": "http://cloud-3.steamusercontent.com/ugc/1502468159368666780/0D25B9C1AC3746C299F818D778A7404479820E11/"
},
{
"Name": "Income Orange Dec",
"URL": "http://cloud-3.steamusercontent.com/ugc/1502468159368665738/7092D95BAB211DD80886C7DC39AD6EB542B9D7BB/"
},
{
"Name": "Income Orange Inc",
"URL": "http://cloud-3.steamusercontent.com/ugc/1502468159368666208/1F41FE1D86C945CCFE6F84CC2EC7F5299FDB7D52/"
},
{
"Name": "Income Purple Inc",
"URL": "http://cloud-3.steamusercontent.com/ugc/1502468159368667924/18EA83A168F3E98579963D208C2531245B1504E2/"
},
{
"Name": "Income Teal Dec",
"URL": "http://cloud-3.steamusercontent.com/ugc/1502468159368668407/1B308F6E56D34328092FC9AC0B5991A4B7F01DD5/"
},
{
"Name": "Income Teal Inc",
"URL": "http://cloud-3.steamusercontent.com/ugc/1502468159368668894/76730DEFB6D8A7BD61D5DA2A26A7778C5B0F7D97/"
},
{
"Name": "Income Yellow Dec",
"URL": "http://cloud-3.steamusercontent.com/ugc/1502468159368669412/0470B195F13564AE5B685022036B975862D4ED4E/"
},
{
"Name": "Income Yellow Inc",
"URL": "http://cloud-3.steamusercontent.com/ugc/1502468159368671890/32ACE1CDC5026C8D66B855FFE80A62C6EA88FFE5/"
},
{
"Name": "Loan Orange",
"URL": "http://cloud-3.steamusercontent.com/ugc/1502468159368672529/0C2F900750ABDF8371A73BF9DAB8482536123B3B/"
},
{
"Name": "Loan Purple",
"URL": "http://cloud-3.steamusercontent.com/ugc/1502468159368454443/68F3CD7DF16689BCC0CB10C2BEF8A93A8619B001/"
},
{
"Name": "Loan Teal",
"URL": "http://cloud-3.steamusercontent.com/ugc/1502468159368673683/C91C5629C50A12DCACD3A30526CA60884BEF4AA7/"
},
{
"Name": "Loan Yellow",
"URL": "http://cloud-3.steamusercontent.com/ugc/1502468159368745536/9CC7C17125DA912D382E7073426F3E535E1E0543/"
},
{
"Name": "Popup Close",
"URL": "http://cloud-3.steamusercontent.com/ugc/1791848543423659966/ABE81EA115CA42741D71BC1647801B882844479D/"
},
{
"Name": "Popup Open",
"URL": "http://cloud-3.steamusercontent.com/ugc/1791848543423660469/7864C819DF1D41A1117097C54F40AC7D1DDF4284/"
}
],
"SnapPoints": [
{
"Position": {
"x": -0.00093633536,
"y": 1.46963012,
"z": 29.484724
},
"Rotation": {
"x": 0.0002872935,
"y": 180.390625,
"z": -0.000232903767
},
"Tags": [
"turn_order"
]
},
{
"Position": {
"x": -1.49612451,
"y": 1.46963012,
"z": 29.49081
},
"Rotation": {
"x": 0.329940975,
"y": 180.055176,
"z": 0.165559381
},
"Tags": [
"link_canal"
]
},
{
"Position": {
"x": 1.49952745,
"y": 1.46963012,
"z": 29.5135174
},
"Rotation": {
"x": 359.722168,
"y": 180.212036,
"z": 359.8926
},
"Tags": [
"link_rail"
]
},
{
"Position": {
"x": 7.937365E-06,
"y": 1.46962893,
"z": 18.9999943
},
"Rotation": {
"x": -5.20323873E-08,
"y": 180.000168,
"z": -1.344926E-08
}
},
{
"Position": {
"x": 0.753380835,
"y": 1.50428176,
"z": -6.26136
},
"Rotation": {
"x": 0.0890806243,
"y": 189.600647,
"z": 359.990448
},
"Tags": [
"link_canal",
"link_rail"
]
},
{
"Position": {
"x": -3.370314,
"y": 1.50371456,
"z": -5.553945
},
"Rotation": {
"x": 0.08888091,
"y": 202.638489,
"z": 0.0107234111
},
"Tags": [
"link_rail"
]
},
{
"Position": {
"x": -2.17603922,
"y": 1.50518739,
"z": -4.789972
},
"Rotation": {
"x": 0.0638731048,
"y": 240.232422,
"z": 0.06273891
},
"Tags": [
"link_canal"
]
},
{
"Position": {
"x": 2.349971,
"y": 1.50179672,
"z": -8.306663
},
"Rotation": {
"x": 0.0242668949,
"y": 269.999817,
"z": 0.0861697346
},
"Tags": [
"link_canal",
"link_rail"
]
},
{
"Position": {
"x": -0.4830622,
"y": 1.50640917,
"z": -4.51816
},
"Rotation": {
"x": 0.04798027,
"y": 138.079758,
"z": 359.924377
},
"Tags": [
"link_canal",
"link_rail"
]
},
{
"Position": {
"x": -0.643873036,
"y": 1.50799906,
"z": -3.2986083
},
"Rotation": {
"x": 0.08966765,
"y": 194.999863,
"z": -0.00121003133
},
"Tags": [
"link_rail"
]
},
{
"Position": {
"x": 0.588234365,
"y": 1.50939608,
"z": -2.78649378
},
"Rotation": {
"x": 0.06683406,
"y": 237.459869,
"z": 0.05957361
},
"Tags": [
"link_canal",
"link_rail"
]
},
{
"Position": {
"x": 3.490965,
"y": 1.50934589,
"z": -3.6554234
},
"Rotation": {
"x": 0.08029367,
"y": 169.37822,
"z": 359.960266
},
"Tags": [
"link_canal",
"link_rail"
]
},
{
"Position": {
"x": 5.89283133,
"y": 1.50766456,
"z": -5.433375
},
"Rotation": {
"x": 0.0641176254,
"y": 239.999847,
"z": 0.0624773763
},
"Tags": [
"link_canal",
"link_rail"
]
},
{
"Position": {
"x": 7.7239356,
"y": 1.50475013,
"z": -7.9053216
},
"Rotation": {
"x": 0.0438508578,
"y": 134.999817,
"z": 359.9219
},
"Tags": [
"link_canal",
"link_rail"
]
},
{
"Position": {
"x": 7.555036,
"y": 1.51036119,
"z": -4.109377
},
"Rotation": {
"x": 0.07703052,
"y": 164.999741,
"z": 359.954254
},
"Tags": [
"link_canal",
"link_rail"
]
},
{
"Position": {
"x": 8.997433,
"y": 1.51505482,
"z": -1.459837
},
"Rotation": {
"x": 359.986328,
"y": 96.9256439,
"z": 359.9115
},
"Tags": [
"link_canal",
"link_rail"
]
},
{
"Position": {
"x": 9.914196,
"y": 1.51974308,
"z": 1.46944809
},
"Rotation": {
"x": 0.0242526382,
"y": 269.999756,
"z": 0.0861704946
},
"Tags": [
"link_canal",
"link_rail"
]
},
{
"Position": {
"x": 9.483782,
"y": 1.52422428,
"z": 4.571145
},
"Rotation": {
"x": 0.06412509,
"y": 239.999878,
"z": 0.0624840334
},
"Tags": [
"link_canal",
"link_rail"
]
},
{
"Position": {
"x": 7.045227,
"y": 1.52342331,
"z": 4.66875648
},
"Rotation": {
"x": 0.08328755,
"y": 174.101028,
"z": 359.967
},
"Tags": [
"link_canal",
"link_rail"
]
},
{
"Position": {
"x": 4.412053,
"y": 1.52213526,
"z": 4.535614
},
"Rotation": {
"x": 0.06867836,
"y": 155.740067,
"z": 359.942474
},
"Tags": [
"link_canal",
"link_rail"
]
},
{
"Position": {
"x": 5.93008852,
"y": 1.51952922,
"z": 2.46231627
},
"Rotation": {
"x": 0.0242654774,
"y": 269.999756,
"z": 0.0861764
},
"Tags": [
"link_rail"
]
},
{
"Position": {
"x": 4.31610966,
"y": 1.5160135,
"z": 0.5232024
},
"Rotation": {
"x": 0.06257924,
"y": 149.999756,
"z": 359.9359
},
"Tags": [
"link_canal",
"link_rail"
]
},
{
"Position": {
"x": 3.801728,
"y": 1.51217842,
"z": -1.80900836
},
"Rotation": {
"x": 0.07812775,
"y": 224.999863,
"z": 0.0437608063
},
"Tags": [
"link_canal",
"link_rail"
]
},
{
"Position": {
"x": 3.19411564,
"y": 1.51631677,
"z": 0.700837851
},
"Rotation": {
"x": 359.975739,
"y": 89.9998856,
"z": 359.913818
},
"Tags": [
"link_rail"
]
},
{
"Position": {
"x": 1.55974591,
"y": 1.514996,
"z": 0.697194338
},
"Rotation": {
"x": 0.06258092,
"y": 149.999786,
"z": 359.935883
},
"Tags": [
"link_canal",
"link_rail"
]
},
{
"Position": {
"x": 1.772268,
"y": 1.51889777,
"z": 3.16872239
},
"Rotation": {
"x": 0.0888478458,
"y": 203.067139,
"z": 0.01142158
},
"Tags": [
"link_rail"
]
},
{
"Position": {
"x": -1.56747139,
"y": 1.51538312,
"z": 1.77386367
},
"Rotation": {
"x": 0.0438504256,
"y": 134.999786,
"z": 359.9219
},
"Tags": [
"link_rail"
]
},
{
"Position": {
"x": -1.99377286,
"y": 1.51742756,
"z": 3.33268976
},
"Rotation": {
"x": 0.0710739046,
"y": 158.1938,
"z": 359.945465
},
"Tags": [
"link_rail"
]
},
{
"Position": {
"x": -1.71431458,
"y": 1.51956677,
"z": 4.70220137
},
"Rotation": {
"x": 0.08771659,
"y": 207.433472,
"z": 0.0181511976
},
"Tags": [
"link_canal",
"link_rail"
]
},
{
"Position": {
"x": -0.220455855,
"y": 1.521553,
"z": 5.538683
},
"Rotation": {
"x": 0.0151736187,
"y": 275.96283,
"z": 0.08822683
},
"Tags": [
"link_canal",
"link_rail"
]
},
{
"Position": {
"x": 0.122188188,
"y": 1.52626109,
"z": 8.555707
},
"Rotation": {
"x": 0.0257676579,
"y": 268.999634,
"z": 0.0857226
},
"Tags": [
"link_rail"
]
},
{
"Position": {
"x": -1.81414115,
"y": 1.5256542,
"z": 8.736686
},
"Rotation": {
"x": 0.0881485939,
"y": 205.928757,
"z": 0.01583402
},
"Tags": [
"link_rail"
]
},
{
"Position": {
"x": -2.97387218,
"y": 1.5108906,
"z": -0.7956534
},
"Rotation": {
"x": 0.0242687,
"y": 269.999756,
"z": 0.08617355
},
"Tags": [
"link_rail"
]
},
{
"Position": {
"x": -1.269379,
"y": 1.511163,
"z": -1.06265306
},
"Rotation": {
"x": 0.04385186,
"y": 134.999786,
"z": 359.9219
},
"Tags": [
"link_canal",
"link_rail"
]
},
{
"Position": {
"x": 1.28393984,
"y": 1.5118885,
"z": -1.32098067
},
"Rotation": {
"x": 0.08623989,
"y": 179.999817,
"z": 359.975739
},
"Tags": [
"link_canal",
"link_rail"
]
},
{
"Position": {
"x": -1.25932956,
"y": 1.51350868,
"z": 0.421741366
},
"Rotation": {
"x": 0.0862392,
"y": 179.999832,
"z": 359.975739
},
"Tags": [
"link_rail"
]
},
{
"Position": {
"x": 0.0932201743,
"y": 1.51519024,
"z": 1.25119293
},
"Rotation": {
"x": 0.02426281,
"y": 269.999817,
"z": 0.08617473
},
"Tags": [
"link_canal",
"link_rail"
]
},
{
"Position": {
"x": -11.2381639,
"y": 1.49363756,
"z": -10.0010605
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -11.2566385,
"y": 1.494906,
"z": -9.148168
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -11.2288084,
"y": 1.496299,
"z": -8.292208
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -11.24846,
"y": 1.49721873,
"z": -7.47910452
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -11.235815,
"y": 1.49855614,
"z": -6.64588833
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -11.2480612,
"y": 1.49976718,
"z": -5.80968761
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -11.2399073,
"y": 1.50117576,
"z": -4.967557
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -11.2549171,
"y": 1.502149,
"z": -4.14977932
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -11.2410488,
"y": 1.50369477,
"z": -3.315397
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -11.2525988,
"y": 1.5048207,
"z": -2.47920871
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -11.2452955,
"y": 1.50593853,
"z": -1.61067474
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -11.250351,
"y": 1.507488,
"z": -0.64553684
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -11.2550735,
"y": 1.508305,
"z": 0.02188385
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -11.2476912,
"y": 1.51097751,
"z": 1.66108716
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -11.2457428,
"y": 1.50994766,
"z": 1.01364589
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -11.25045,
"y": 1.51260412,
"z": 2.686266
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -11.2517471,
"y": 1.51360309,
"z": 3.33960247
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -11.2526455,
"y": 1.5149008,
"z": 4.333634
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -11.2476511,
"y": 1.51614773,
"z": 4.97752666
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -11.251296,
"y": 1.51756656,
"z": 5.99645472
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -11.2465811,
"y": 1.51843429,
"z": 6.643948
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -11.2448254,
"y": 1.51991534,
"z": 7.63932562
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -11.2498817,
"y": 1.52104425,
"z": 8.30378151
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -11.2457523,
"y": 1.52260244,
"z": 9.295421
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -11.2449312,
"y": 1.52356112,
"z": 9.95622349
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -10.0841885,
"y": 1.52583075,
"z": 11.2519054
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -9.425724,
"y": 1.52602422,
"z": 11.24496
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -8.459815,
"y": 1.52650285,
"z": 11.2490082
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -7.80134773,
"y": 1.52659786,
"z": 11.2420635
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -6.76837,
"y": 1.52721953,
"z": 11.2491856
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -6.10990667,
"y": 1.52762926,
"z": 11.242239
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -4.860392,
"y": 1.52818668,
"z": 11.2344713
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -4.201908,
"y": 1.52834177,
"z": 11.2424355
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -3.52848554,
"y": 1.52860522,
"z": 11.2375364
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -2.173177,
"y": 1.52914751,
"z": 11.2348909
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -1.51847577,
"y": 1.5294224,
"z": 11.2329865
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -0.8450872,
"y": 1.52976942,
"z": 11.2523479
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 0.5233296,
"y": 1.53044939,
"z": 11.24996
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 1.19240367,
"y": 1.53067315,
"z": 11.2470179
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 1.859118,
"y": 1.53099358,
"z": 11.2413139
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 3.21047068,
"y": 1.53153992,
"z": 11.2402706
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 3.8689332,
"y": 1.53199565,
"z": 11.233326
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 4.53931332,
"y": 1.5321641,
"z": 11.2334213
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 5.985027,
"y": 1.532756,
"z": 11.2505417
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 6.64349127,
"y": 1.53310668,
"z": 11.2435951
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 7.31911135,
"y": 1.53313422,
"z": 11.2538414
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 8.643398,
"y": 1.53376365,
"z": 11.2558937
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 9.301862,
"y": 1.53405762,
"z": 11.2489481
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 9.985191,
"y": 1.53442454,
"z": 11.2487564
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 11.2328167,
"y": 1.53258324,
"z": 9.691406
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 11.2387276,
"y": 1.53177869,
"z": 9.020642
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 11.2433329,
"y": 1.53060579,
"z": 8.350715
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 11.2420053,
"y": 1.5286299,
"z": 7.01601028
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 11.2479172,
"y": 1.5277257,
"z": 6.345246
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 11.2525215,
"y": 1.52670753,
"z": 5.67531872
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 11.2484922,
"y": 1.52453935,
"z": 4.293637
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 11.2544022,
"y": 1.52357852,
"z": 3.62287045
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 11.2590046,
"y": 1.52276814,
"z": 2.95294356
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 11.2424374,
"y": 1.52044952,
"z": 1.59133816
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 11.2483511,
"y": 1.51957166,
"z": 0.9205722
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 11.2529554,
"y": 1.51857269,
"z": 0.250646234
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 11.2515221,
"y": 1.51649988,
"z": -1.10947573
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 11.2574329,
"y": 1.515531,
"z": -1.7802422
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 11.2620382,
"y": 1.5145936,
"z": -2.45016766
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 11.2565069,
"y": 1.51327765,
"z": -3.10830784
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 11.241828,
"y": 1.511546,
"z": -4.413003
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 11.2477388,
"y": 1.51045322,
"z": -5.08377028
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 11.2418661,
"y": 1.508448,
"z": -6.403786
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 11.2523413,
"y": 1.509358,
"z": -5.753698
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 11.23764,
"y": 1.5065167,
"z": -7.742804
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 11.2438831,
"y": 1.50557065,
"z": -8.401003
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 11.248476,
"y": 1.50433612,
"z": -9.070927
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 11.2411356,
"y": 1.503462,
"z": -9.718114
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 10.0260515,
"y": 1.50073159,
"z": -11.2502489
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 8.697933,
"y": 1.50012672,
"z": -11.26109
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 9.367859,
"y": 1.50036776,
"z": -11.2564907
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 8.050676,
"y": 1.499818,
"z": -11.2537327
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 6.88048553,
"y": 1.49946511,
"z": -11.25136
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 6.222291,
"y": 1.49916339,
"z": -11.2576017
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 5.55236435,
"y": 1.49884272,
"z": -11.2621994
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 4.905108,
"y": 1.49857974,
"z": -11.2548447
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 3.75310636,
"y": 1.49829686,
"z": -11.2505074
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 3.09491086,
"y": 1.49798381,
"z": -11.2567482
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 2.424986,
"y": 1.497584,
"z": -11.2613459
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 1.77772927,
"y": 1.49719274,
"z": -11.2539921
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 0.6663928,
"y": 1.49676943,
"z": -11.2496634
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 0.008198533,
"y": 1.49650216,
"z": -11.2559071
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -0.6617271,
"y": 1.49617016,
"z": -11.2605057
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -1.3089838,
"y": 1.49583244,
"z": -11.2531481
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -3.11948276,
"y": 1.495214,
"z": -11.25505
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -2.461288,
"y": 1.49538088,
"z": -11.248805
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -3.789408,
"y": 1.49489594,
"z": -11.2596474
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -4.43666553,
"y": 1.494444,
"z": -11.2522888
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -5.64416265,
"y": 1.49396622,
"z": -11.2397165
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -6.30235863,
"y": 1.49381638,
"z": -11.2459574
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -6.97228241,
"y": 1.49357235,
"z": -11.2505579
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -7.61954069,
"y": 1.49337661,
"z": -11.2432013
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -8.737656,
"y": 1.49270058,
"z": -11.2470894
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -9.39585,
"y": 1.49255276,
"z": -11.2533321
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": -10.0657749,
"y": 1.49218118,
"z": -11.2579269
},
"Tags": [
"vp_marker",
"income_marker"
]
},
{
"Position": {
"x": 8.5,
"y": 1.46962893,
"z": 15.5
},
"Rotation": {
"x": -2.15569557E-07,
"y": 180.0,
"z": 6.730256E-09
}
}
],
"ObjectStates": [
{
"GUID": "d8fd61",
"Name": "HandTrigger",
"Transform": {
"posX": 19.3702583,
"posY": 4.97104263,
"posZ": -19.3087769,
"rotX": 0.0,
"rotY": 0.398040444,
"rotZ": 0.0,
"scaleX": 13.5641584,
"scaleY": 7.0,
"scaleZ": 3.45686674
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.128999949,
"g": 0.694,
"b": 0.606999934,
"a": 0.0
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"FogColor": "Teal",
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "237623",
"Name": "HandTrigger",
"Transform": {
"posX": 21.13777,
"posY": 4.97104263,
"posZ": 18.7352428,
"rotX": 0.0,
"rotY": 0.213706836,
"rotZ": 0.0,
"scaleX": 14.0915194,
"scaleY": 7.0,
"scaleZ": 4.105583
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.627,
"g": 0.124999978,
"b": 0.941,
"a": 0.0
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"FogColor": "Purple",
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "eeb5e2",
"Name": "HandTrigger",
"Transform": {
"posX": -20.7904072,
"posY": 4.97104263,
"posZ": 18.61762,
"rotX": 0.0,
"rotY": 359.893158,
"rotZ": 0.0,
"scaleX": 13.5172434,
"scaleY": 7.0,
"scaleZ": 4.045662
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.905,
"g": 0.898,
"b": 0.171999961,
"a": 0.0
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"FogColor": "Yellow",
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "05966f",
"Name": "HandTrigger",
"Transform": {
"posX": -19.8156281,
"posY": 4.96962929,
"posZ": -19.3307438,
"rotX": 0.0,
"rotY": 359.8869,
"rotZ": 0.0,
"scaleX": 13.773591,
"scaleY": 7.0,
"scaleZ": 3.897642
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.9559999,
"g": 0.39199996,
"b": 0.112999953,
"a": 0.0
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"FogColor": "Orange",
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "e54c1a",
"Name": "Infinite_Bag",
"Transform": {
"posX": 17.0,
"posY": 1.45773,
"posZ": 1.0,
"rotX": -1.72917751E-07,
"rotY": 0.00595061062,
"rotZ": -2.97412271E-07,
"scaleX": 0.7,
"scaleY": 0.7,
"scaleZ": 0.7
},
"Nickname": "Coal",
"Description": "",
"GMNotes": "Coal",
"ColorDiffuse": {
"r": 0.249979526,
"g": 0.249979526,
"b": 0.249979526
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"ContainedObjects": [
{
"GUID": "163a52",
"Name": "Custom_Model",
"Transform": {
"posX": 16.9855385,
"posY": 3.09313536,
"posZ": 0.7688449,
"rotX": 350.968,
"rotY": 359.9774,
"rotZ": 0.7215174,
"scaleX": 0.55,
"scaleY": 0.55,
"scaleZ": 0.55
},
"Nickname": "Coal",
"Description": "",
"GMNotes": "Coal",
"ColorDiffuse": {
"r": 0.249997526,
"g": 0.249997526,
"b": 0.249997526
},
"Tags": [
"coal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764768421/B8A6C401489F87D67346A5B7C64BFE13EC207EB7/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764772961/EC1CE1E2D5D3E3024B9A7BFB8D5753278E54CE71/",
"NormalURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764776286/1A8995CE735149678ED73402261D7F05A432AF9C/",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 1,
"TypeIndex": 0,
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
}
]
},
{
"GUID": "456c88",
"Name": "Bowl",
"Transform": {
"posX": -9.220059,
"posY": 1.47241545,
"posZ": -9.252351,
"rotX": 0.08820359,
"rotY": -7.663988E-05,
"rotZ": 359.911926,
"scaleX": 0.5,
"scaleY": 0.5,
"scaleZ": 0.5
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.196059585,
"g": 0.196059585,
"b": 0.196059585
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "-- First player bowl\r\n----#include mods/Brass/lib/Bowl\n-- Counting Bowl by MrStump, modified\r\n\r\n\r\n-- Constants\r\nlocal validCountItemList = {\r\n [ \"Gold\" ] = 15,\r\n [ \"Silver\" ] = 5,\r\n [ \"Bronze\" ] = 1,\r\n}\r\n\r\n\r\n-- Public attributes\r\nitemsInBowl = { }\r\nupdateHook = nil\r\n\r\n\r\n-- Private attributes.\r\nlocal value\r\n\r\n\r\nfunction onLoad()\r\n self.createButton({\r\n label=\"\", click_function=\"none\", function_owner=self,\r\n position={0,0.04,-2.5}, rotation={0,180,0}, height=0, width=0,\r\n font_color={1,1,1}, font_size=500\r\n })\r\n\r\n Wait.time(countItems, 1, -1)\r\nend\r\n\r\n\r\n-- Gets the items in the bowl for countItems to count\r\nlocal function findItemsInSphere()\r\n local pos = self.getPosition()\r\n local scale = self.getScale()\r\n\r\n pos.y = pos.y + ( 1.25 * scale.y )\r\n\r\n return Physics.cast({\r\n origin = pos,\r\n direction = { 0, 1, 0 },\r\n type = 2,\r\n max_distance = 0,\r\n size = { 3.4 * scale.x, 3.4 * scale.y, 3.4 * scale.z },\r\n })\r\nend\r\n\r\n\r\n-- Counts items in bowls.\r\n-- Sets itemsInBowl.\r\n-- Returns the count.\r\n-- Externally callable.\r\n-- Activated once per second.\r\nfunction countItems()\r\n local foundItems = findItemsInSphere()\r\n\r\n -- Isolate items of interest.\r\n itemsInBowl = {}\r\n for i, entry in ipairs(foundItems) do\r\n if validCountItemList[entry.hit_object.getName()] then\r\n table.insert(itemsInBowl, entry.hit_object)\r\n end\r\n end\r\n\r\n -- Calculate value of items of interest.\r\n local totalValue = 0\r\n for i, obj in ipairs(itemsInBowl) do\r\n local descValue = tonumber(obj.getDescription())\r\n local stackMult = math.abs(obj.getQuantity())\r\n\r\n -- Use value in description if available.\r\n if descValue then\r\n totalValue = totalValue + descValue * stackMult\r\n else\r\n totalValue = totalValue + validCountItemList[obj.getName()] * stackMult\r\n end\r\n end\r\n\r\n if totalValue ~= value then\r\n value = totalValue\r\n\r\n -- Updates the number display.\r\n self.editButton({ index=0, label=totalValue })\r\n\r\n if updateHook then\r\n local obj\r\n if updateHook[1] == \"Global\" or updateHook[1] == -1 then\r\n obj = Global\r\n else\r\n obj = getObjectFromGUID(updateHook[1])\r\n end\r\n\r\n obj.call(updateHook[2], {\r\n guid = self.guid,\r\n value = value,\r\n data = updateHook[3],\r\n })\r\n end\r\n end\r\n\r\n return totalValue\r\nend\r\n\r\n\r\n-- Empties the bowl\r\n-- Externally callable.\r\nfunction empty()\r\n local itemsInBowl = findItemsInSphere()\r\n for _, entry in ipairs(itemsInBowl) do\r\n if validCountItemList[entry.hit_object.getName()] then\r\n entry.hit_object.destruct()\r\n end\r\n end\r\n\r\n countItems()\r\nend\r\n\n----#include mods/Brass/lib/Bowl",
"LuaScriptState": ""
},
{
"GUID": "2666ed",
"Name": "Bowl",
"Transform": {
"posX": -6.830043,
"posY": 1.47240543,
"posZ": -9.250042,
"rotX": 0.0881933,
"rotY": -5.014769E-05,
"rotZ": 359.911926,
"scaleX": 0.5,
"scaleY": 0.5,
"scaleZ": 0.5
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.196059585,
"g": 0.196059585,
"b": 0.196059585
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "-- Second player bowl\r\n----#include mods/Brass/lib/Bowl\n-- Counting Bowl by MrStump, modified\r\n\r\n\r\n-- Constants\r\nlocal validCountItemList = {\r\n [ \"Gold\" ] = 15,\r\n [ \"Silver\" ] = 5,\r\n [ \"Bronze\" ] = 1,\r\n}\r\n\r\n\r\n-- Public attributes\r\nitemsInBowl = { }\r\nupdateHook = nil\r\n\r\n\r\n-- Private attributes.\r\nlocal value\r\n\r\n\r\nfunction onLoad()\r\n self.createButton({\r\n label=\"\", click_function=\"none\", function_owner=self,\r\n position={0,0.04,-2.5}, rotation={0,180,0}, height=0, width=0,\r\n font_color={1,1,1}, font_size=500\r\n })\r\n\r\n Wait.time(countItems, 1, -1)\r\nend\r\n\r\n\r\n-- Gets the items in the bowl for countItems to count\r\nlocal function findItemsInSphere()\r\n local pos = self.getPosition()\r\n local scale = self.getScale()\r\n\r\n pos.y = pos.y + ( 1.25 * scale.y )\r\n\r\n return Physics.cast({\r\n origin = pos,\r\n direction = { 0, 1, 0 },\r\n type = 2,\r\n max_distance = 0,\r\n size = { 3.4 * scale.x, 3.4 * scale.y, 3.4 * scale.z },\r\n })\r\nend\r\n\r\n\r\n-- Counts items in bowls.\r\n-- Sets itemsInBowl.\r\n-- Returns the count.\r\n-- Externally callable.\r\n-- Activated once per second.\r\nfunction countItems()\r\n local foundItems = findItemsInSphere()\r\n\r\n -- Isolate items of interest.\r\n itemsInBowl = {}\r\n for i, entry in ipairs(foundItems) do\r\n if validCountItemList[entry.hit_object.getName()] then\r\n table.insert(itemsInBowl, entry.hit_object)\r\n end\r\n end\r\n\r\n -- Calculate value of items of interest.\r\n local totalValue = 0\r\n for i, obj in ipairs(itemsInBowl) do\r\n local descValue = tonumber(obj.getDescription())\r\n local stackMult = math.abs(obj.getQuantity())\r\n\r\n -- Use value in description if available.\r\n if descValue then\r\n totalValue = totalValue + descValue * stackMult\r\n else\r\n totalValue = totalValue + validCountItemList[obj.getName()] * stackMult\r\n end\r\n end\r\n\r\n if totalValue ~= value then\r\n value = totalValue\r\n\r\n -- Updates the number display.\r\n self.editButton({ index=0, label=totalValue })\r\n\r\n if updateHook then\r\n local obj\r\n if updateHook[1] == \"Global\" or updateHook[1] == -1 then\r\n obj = Global\r\n else\r\n obj = getObjectFromGUID(updateHook[1])\r\n end\r\n\r\n obj.call(updateHook[2], {\r\n guid = self.guid,\r\n value = value,\r\n data = updateHook[3],\r\n })\r\n end\r\n end\r\n\r\n return totalValue\r\nend\r\n\r\n\r\n-- Empties the bowl\r\n-- Externally callable.\r\nfunction empty()\r\n local itemsInBowl = findItemsInSphere()\r\n for _, entry in ipairs(itemsInBowl) do\r\n if validCountItemList[entry.hit_object.getName()] then\r\n entry.hit_object.destruct()\r\n end\r\n end\r\n\r\n countItems()\r\nend\r\n\n----#include mods/Brass/lib/Bowl",
"LuaScriptState": ""
},
{
"GUID": "f8b045",
"Name": "Bowl",
"Transform": {
"posX": -4.480053,
"posY": 1.47241807,
"posZ": -9.250028,
"rotX": 0.088212125,
"rotY": -5.530687E-05,
"rotZ": 359.911926,
"scaleX": 0.5,
"scaleY": 0.5,
"scaleZ": 0.5
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.196059585,
"g": 0.196059585,
"b": 0.196059585
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "-- Third player bowl\r\n----#include mods/Brass/lib/Bowl\n-- Counting Bowl by MrStump, modified\r\n\r\n\r\n-- Constants\r\nlocal validCountItemList = {\r\n [ \"Gold\" ] = 15,\r\n [ \"Silver\" ] = 5,\r\n [ \"Bronze\" ] = 1,\r\n}\r\n\r\n\r\n-- Public attributes\r\nitemsInBowl = { }\r\nupdateHook = nil\r\n\r\n\r\n-- Private attributes.\r\nlocal value\r\n\r\n\r\nfunction onLoad()\r\n self.createButton({\r\n label=\"\", click_function=\"none\", function_owner=self,\r\n position={0,0.04,-2.5}, rotation={0,180,0}, height=0, width=0,\r\n font_color={1,1,1}, font_size=500\r\n })\r\n\r\n Wait.time(countItems, 1, -1)\r\nend\r\n\r\n\r\n-- Gets the items in the bowl for countItems to count\r\nlocal function findItemsInSphere()\r\n local pos = self.getPosition()\r\n local scale = self.getScale()\r\n\r\n pos.y = pos.y + ( 1.25 * scale.y )\r\n\r\n return Physics.cast({\r\n origin = pos,\r\n direction = { 0, 1, 0 },\r\n type = 2,\r\n max_distance = 0,\r\n size = { 3.4 * scale.x, 3.4 * scale.y, 3.4 * scale.z },\r\n })\r\nend\r\n\r\n\r\n-- Counts items in bowls.\r\n-- Sets itemsInBowl.\r\n-- Returns the count.\r\n-- Externally callable.\r\n-- Activated once per second.\r\nfunction countItems()\r\n local foundItems = findItemsInSphere()\r\n\r\n -- Isolate items of interest.\r\n itemsInBowl = {}\r\n for i, entry in ipairs(foundItems) do\r\n if validCountItemList[entry.hit_object.getName()] then\r\n table.insert(itemsInBowl, entry.hit_object)\r\n end\r\n end\r\n\r\n -- Calculate value of items of interest.\r\n local totalValue = 0\r\n for i, obj in ipairs(itemsInBowl) do\r\n local descValue = tonumber(obj.getDescription())\r\n local stackMult = math.abs(obj.getQuantity())\r\n\r\n -- Use value in description if available.\r\n if descValue then\r\n totalValue = totalValue + descValue * stackMult\r\n else\r\n totalValue = totalValue + validCountItemList[obj.getName()] * stackMult\r\n end\r\n end\r\n\r\n if totalValue ~= value then\r\n value = totalValue\r\n\r\n -- Updates the number display.\r\n self.editButton({ index=0, label=totalValue })\r\n\r\n if updateHook then\r\n local obj\r\n if updateHook[1] == \"Global\" or updateHook[1] == -1 then\r\n obj = Global\r\n else\r\n obj = getObjectFromGUID(updateHook[1])\r\n end\r\n\r\n obj.call(updateHook[2], {\r\n guid = self.guid,\r\n value = value,\r\n data = updateHook[3],\r\n })\r\n end\r\n end\r\n\r\n return totalValue\r\nend\r\n\r\n\r\n-- Empties the bowl\r\n-- Externally callable.\r\nfunction empty()\r\n local itemsInBowl = findItemsInSphere()\r\n for _, entry in ipairs(itemsInBowl) do\r\n if validCountItemList[entry.hit_object.getName()] then\r\n entry.hit_object.destruct()\r\n end\r\n end\r\n\r\n countItems()\r\nend\r\n\n----#include mods/Brass/lib/Bowl",
"LuaScriptState": ""
},
{
"GUID": "c740af",
"Name": "Bowl",
"Transform": {
"posX": -2.08004212,
"posY": 1.47241867,
"posZ": -9.250041,
"rotX": 0.08820645,
"rotY": -5.78595136E-05,
"rotZ": 359.911926,
"scaleX": 0.5,
"scaleY": 0.5,
"scaleZ": 0.5
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.196059585,
"g": 0.196059585,
"b": 0.196059585
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "-- Fourth player bowl\r\n----#include mods/Brass/lib/Bowl\n-- Counting Bowl by MrStump, modified\r\n\r\n\r\n-- Constants\r\nlocal validCountItemList = {\r\n [ \"Gold\" ] = 15,\r\n [ \"Silver\" ] = 5,\r\n [ \"Bronze\" ] = 1,\r\n}\r\n\r\n\r\n-- Public attributes\r\nitemsInBowl = { }\r\nupdateHook = nil\r\n\r\n\r\n-- Private attributes.\r\nlocal value\r\n\r\n\r\nfunction onLoad()\r\n self.createButton({\r\n label=\"\", click_function=\"none\", function_owner=self,\r\n position={0,0.04,-2.5}, rotation={0,180,0}, height=0, width=0,\r\n font_color={1,1,1}, font_size=500\r\n })\r\n\r\n Wait.time(countItems, 1, -1)\r\nend\r\n\r\n\r\n-- Gets the items in the bowl for countItems to count\r\nlocal function findItemsInSphere()\r\n local pos = self.getPosition()\r\n local scale = self.getScale()\r\n\r\n pos.y = pos.y + ( 1.25 * scale.y )\r\n\r\n return Physics.cast({\r\n origin = pos,\r\n direction = { 0, 1, 0 },\r\n type = 2,\r\n max_distance = 0,\r\n size = { 3.4 * scale.x, 3.4 * scale.y, 3.4 * scale.z },\r\n })\r\nend\r\n\r\n\r\n-- Counts items in bowls.\r\n-- Sets itemsInBowl.\r\n-- Returns the count.\r\n-- Externally callable.\r\n-- Activated once per second.\r\nfunction countItems()\r\n local foundItems = findItemsInSphere()\r\n\r\n -- Isolate items of interest.\r\n itemsInBowl = {}\r\n for i, entry in ipairs(foundItems) do\r\n if validCountItemList[entry.hit_object.getName()] then\r\n table.insert(itemsInBowl, entry.hit_object)\r\n end\r\n end\r\n\r\n -- Calculate value of items of interest.\r\n local totalValue = 0\r\n for i, obj in ipairs(itemsInBowl) do\r\n local descValue = tonumber(obj.getDescription())\r\n local stackMult = math.abs(obj.getQuantity())\r\n\r\n -- Use value in description if available.\r\n if descValue then\r\n totalValue = totalValue + descValue * stackMult\r\n else\r\n totalValue = totalValue + validCountItemList[obj.getName()] * stackMult\r\n end\r\n end\r\n\r\n if totalValue ~= value then\r\n value = totalValue\r\n\r\n -- Updates the number display.\r\n self.editButton({ index=0, label=totalValue })\r\n\r\n if updateHook then\r\n local obj\r\n if updateHook[1] == \"Global\" or updateHook[1] == -1 then\r\n obj = Global\r\n else\r\n obj = getObjectFromGUID(updateHook[1])\r\n end\r\n\r\n obj.call(updateHook[2], {\r\n guid = self.guid,\r\n value = value,\r\n data = updateHook[3],\r\n })\r\n end\r\n end\r\n\r\n return totalValue\r\nend\r\n\r\n\r\n-- Empties the bowl\r\n-- Externally callable.\r\nfunction empty()\r\n local itemsInBowl = findItemsInSphere()\r\n for _, entry in ipairs(itemsInBowl) do\r\n if validCountItemList[entry.hit_object.getName()] then\r\n entry.hit_object.destruct()\r\n end\r\n end\r\n\r\n countItems()\r\nend\r\n\n----#include mods/Brass/lib/Bowl",
"LuaScriptState": ""
},
{
"GUID": "2d162b",
"Name": "Custom_Model",
"Transform": {
"posX": -11.2381334,
"posY": 1.54354537,
"posZ": -10.0013123,
"rotX": 0.09935463,
"rotY": 180.057983,
"rotZ": 0.06719553,
"scaleX": 0.2,
"scaleY": 2.0,
"scaleZ": 0.2
},
"Nickname": "Yellow Victory Points",
"Description": "",
"GMNotes": "Yellow Victory Points",
"ColorDiffuse": {
"r": 0.8627451,
"g": 0.854901969,
"b": 0.247018725
},
"Tags": [
"vp_marker"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/905652563644635916/A5E779655044653F0BB2E380A8154FF1DE0E0F04/",
"DiffuseURL": "",
"NormalURL": "",
"ColliderURL": "http://cloud-3.steamusercontent.com/ugc/905652563644635916/A5E779655044653F0BB2E380A8154FF1DE0E0F04/",
"Convex": true,
"MaterialIndex": 1,
"TypeIndex": 0,
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "f890c5",
"Name": "Custom_Model",
"Transform": {
"posX": -11.2375383,
"posY": 1.64251912,
"posZ": -10.0023232,
"rotX": 0.234374523,
"rotY": 180.0309,
"rotZ": 0.16680254,
"scaleX": 0.2,
"scaleY": 2.0,
"scaleZ": 0.2
},
"Nickname": "Orange Victory Points",
"Description": "",
"GMNotes": "Orange Victory Points",
"ColorDiffuse": {
"r": 0.8784314,
"g": 0.443123162,
"b": 0.30194667
},
"Tags": [
"vp_marker"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/905652563644635916/A5E779655044653F0BB2E380A8154FF1DE0E0F04/",
"DiffuseURL": "",
"NormalURL": "",
"ColliderURL": "http://cloud-3.steamusercontent.com/ugc/905652563644635916/A5E779655044653F0BB2E380A8154FF1DE0E0F04/",
"Convex": true,
"MaterialIndex": 1,
"TypeIndex": 0,
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "fa02ec",
"Name": "Custom_Model",
"Transform": {
"posX": -11.2390671,
"posY": 1.84179366,
"posZ": -10.00329,
"rotX": 0.24869816,
"rotY": 180.119583,
"rotZ": 0.308312982,
"scaleX": 0.2,
"scaleY": 2.0,
"scaleZ": 0.2
},
"Nickname": "Purple Victory Points",
"Description": "",
"GMNotes": "Purple Victory Points",
"ColorDiffuse": {
"r": 0.5490196,
"g": 0.4470588,
"b": 0.796078444
},
"Tags": [
"vp_marker"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/905652563644635916/A5E779655044653F0BB2E380A8154FF1DE0E0F04/",
"DiffuseURL": "",
"NormalURL": "",
"ColliderURL": "http://cloud-3.steamusercontent.com/ugc/905652563644635916/A5E779655044653F0BB2E380A8154FF1DE0E0F04/",
"Convex": true,
"MaterialIndex": 1,
"TypeIndex": 0,
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "08f261",
"Name": "Custom_Model",
"Transform": {
"posX": -11.2397976,
"posY": 1.74222648,
"posZ": -10.0036077,
"rotX": 0.239216462,
"rotY": 180.0907,
"rotZ": 0.330319643,
"scaleX": 0.2,
"scaleY": 2.0,
"scaleZ": 0.2
},
"Nickname": "Teal Victory Points",
"Description": "",
"GMNotes": "Teal Victory Points",
"ColorDiffuse": {
"r": 0.7921569,
"g": 0.858823538,
"b": 0.8627451
},
"Tags": [
"vp_marker"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/905652563644635916/A5E779655044653F0BB2E380A8154FF1DE0E0F04/",
"DiffuseURL": "",
"NormalURL": "",
"ColliderURL": "http://cloud-3.steamusercontent.com/ugc/905652563644635916/A5E779655044653F0BB2E380A8154FF1DE0E0F04/",
"Convex": true,
"MaterialIndex": 1,
"TypeIndex": 0,
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "0e63cb",
"Name": "Custom_Assetbundle",
"Transform": {
"posX": -2.779862E-09,
"posY": 1.46962988,
"posZ": 27.0,
"rotX": -1.1844952E-07,
"rotY": 179.989029,
"rotZ": 4.65408732E-07,
"scaleX": 1.2750001,
"scaleY": 0.850000143,
"scaleZ": 1.2750001
},
"Nickname": "Start Game",
"Description": "",
"GMNotes": "Start Game",
"ColorDiffuse": {
"r": 0.635294139,
"g": 0.75686276,
"b": 0.894117653
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": false,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": false,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomAssetbundle": {
"AssetbundleURL": "http://cloud-3.steamusercontent.com/ugc/854978386866114925/A8093F7A448A137FDBB8297A3D8A61D0B0EA5112/",
"AssetbundleSecondaryURL": "",
"MaterialIndex": 0,
"TypeIndex": 0,
"LoopingEffectIndex": 0
},
"LuaScript": "function onload()\r\n -- Clickable area\r\n self.createButton({\r\n click_function = \"on_click_start_game\",\r\n position = { 0, 0.2, 0 },\r\n height = 700,\r\n width = 700,\r\n color = { 1, 1, 1, 0 },\r\n label = \"\",\r\n })\r\n\r\n -- Button label\r\n self.createButton({\r\n click_function = \"on_click_start_game\",\r\n position = { 0, 0.2, 0 },\r\n height = 1,\r\n width = 1,\r\n color = { 1, 1, 1, 1 },\r\n label = self.getName(),\r\n font_size = 160,\r\n })\r\nend",
"LuaScriptState": ""
},
{
"GUID": "f4d107",
"Name": "Bowl",
"Transform": {
"posX": -10.0,
"posY": 1.42985725,
"posZ": -14.25,
"rotX": 0.08819288,
"rotY": 0.038013868,
"rotZ": 359.911926,
"scaleX": 0.8,
"scaleY": 0.8,
"scaleZ": 0.8
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.8784314,
"g": 0.36076498,
"b": 0.301941454
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "-- Orange wallet bowl\r\n----#include mods/Brass/lib/Bowl\n-- Counting Bowl by MrStump, modified\r\n\r\n\r\n-- Constants\r\nlocal validCountItemList = {\r\n [ \"Gold\" ] = 15,\r\n [ \"Silver\" ] = 5,\r\n [ \"Bronze\" ] = 1,\r\n}\r\n\r\n\r\n-- Public attributes\r\nitemsInBowl = { }\r\nupdateHook = nil\r\n\r\n\r\n-- Private attributes.\r\nlocal value\r\n\r\n\r\nfunction onLoad()\r\n self.createButton({\r\n label=\"\", click_function=\"none\", function_owner=self,\r\n position={0,0.04,-2.5}, rotation={0,180,0}, height=0, width=0,\r\n font_color={1,1,1}, font_size=500\r\n })\r\n\r\n Wait.time(countItems, 1, -1)\r\nend\r\n\r\n\r\n-- Gets the items in the bowl for countItems to count\r\nlocal function findItemsInSphere()\r\n local pos = self.getPosition()\r\n local scale = self.getScale()\r\n\r\n pos.y = pos.y + ( 1.25 * scale.y )\r\n\r\n return Physics.cast({\r\n origin = pos,\r\n direction = { 0, 1, 0 },\r\n type = 2,\r\n max_distance = 0,\r\n size = { 3.4 * scale.x, 3.4 * scale.y, 3.4 * scale.z },\r\n })\r\nend\r\n\r\n\r\n-- Counts items in bowls.\r\n-- Sets itemsInBowl.\r\n-- Returns the count.\r\n-- Externally callable.\r\n-- Activated once per second.\r\nfunction countItems()\r\n local foundItems = findItemsInSphere()\r\n\r\n -- Isolate items of interest.\r\n itemsInBowl = {}\r\n for i, entry in ipairs(foundItems) do\r\n if validCountItemList[entry.hit_object.getName()] then\r\n table.insert(itemsInBowl, entry.hit_object)\r\n end\r\n end\r\n\r\n -- Calculate value of items of interest.\r\n local totalValue = 0\r\n for i, obj in ipairs(itemsInBowl) do\r\n local descValue = tonumber(obj.getDescription())\r\n local stackMult = math.abs(obj.getQuantity())\r\n\r\n -- Use value in description if available.\r\n if descValue then\r\n totalValue = totalValue + descValue * stackMult\r\n else\r\n totalValue = totalValue + validCountItemList[obj.getName()] * stackMult\r\n end\r\n end\r\n\r\n if totalValue ~= value then\r\n value = totalValue\r\n\r\n -- Updates the number display.\r\n self.editButton({ index=0, label=totalValue })\r\n\r\n if updateHook then\r\n local obj\r\n if updateHook[1] == \"Global\" or updateHook[1] == -1 then\r\n obj = Global\r\n else\r\n obj = getObjectFromGUID(updateHook[1])\r\n end\r\n\r\n obj.call(updateHook[2], {\r\n guid = self.guid,\r\n value = value,\r\n data = updateHook[3],\r\n })\r\n end\r\n end\r\n\r\n return totalValue\r\nend\r\n\r\n\r\n-- Empties the bowl\r\n-- Externally callable.\r\nfunction empty()\r\n local itemsInBowl = findItemsInSphere()\r\n for _, entry in ipairs(itemsInBowl) do\r\n if validCountItemList[entry.hit_object.getName()] then\r\n entry.hit_object.destruct()\r\n end\r\n end\r\n\r\n countItems()\r\nend\r\n\n----#include mods/Brass/lib/Bowl",
"LuaScriptState": ""
},
{
"GUID": "820239",
"Name": "Bowl",
"Transform": {
"posX": -15.2498741,
"posY": 1.4277854,
"posZ": 14.2499018,
"rotX": 0.120244905,
"rotY": -0.0042465874,
"rotZ": 359.9457,
"scaleX": 0.8,
"scaleY": 0.8,
"scaleZ": 0.8
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.8627451,
"g": 0.854901969,
"b": 0.2431179
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "-- Yellow wallet bowl\r\n----#include mods/Brass/lib/Bowl\n-- Counting Bowl by MrStump, modified\r\n\r\n\r\n-- Constants\r\nlocal validCountItemList = {\r\n [ \"Gold\" ] = 15,\r\n [ \"Silver\" ] = 5,\r\n [ \"Bronze\" ] = 1,\r\n}\r\n\r\n\r\n-- Public attributes\r\nitemsInBowl = { }\r\nupdateHook = nil\r\n\r\n\r\n-- Private attributes.\r\nlocal value\r\n\r\n\r\nfunction onLoad()\r\n self.createButton({\r\n label=\"\", click_function=\"none\", function_owner=self,\r\n position={0,0.04,-2.5}, rotation={0,180,0}, height=0, width=0,\r\n font_color={1,1,1}, font_size=500\r\n })\r\n\r\n Wait.time(countItems, 1, -1)\r\nend\r\n\r\n\r\n-- Gets the items in the bowl for countItems to count\r\nlocal function findItemsInSphere()\r\n local pos = self.getPosition()\r\n local scale = self.getScale()\r\n\r\n pos.y = pos.y + ( 1.25 * scale.y )\r\n\r\n return Physics.cast({\r\n origin = pos,\r\n direction = { 0, 1, 0 },\r\n type = 2,\r\n max_distance = 0,\r\n size = { 3.4 * scale.x, 3.4 * scale.y, 3.4 * scale.z },\r\n })\r\nend\r\n\r\n\r\n-- Counts items in bowls.\r\n-- Sets itemsInBowl.\r\n-- Returns the count.\r\n-- Externally callable.\r\n-- Activated once per second.\r\nfunction countItems()\r\n local foundItems = findItemsInSphere()\r\n\r\n -- Isolate items of interest.\r\n itemsInBowl = {}\r\n for i, entry in ipairs(foundItems) do\r\n if validCountItemList[entry.hit_object.getName()] then\r\n table.insert(itemsInBowl, entry.hit_object)\r\n end\r\n end\r\n\r\n -- Calculate value of items of interest.\r\n local totalValue = 0\r\n for i, obj in ipairs(itemsInBowl) do\r\n local descValue = tonumber(obj.getDescription())\r\n local stackMult = math.abs(obj.getQuantity())\r\n\r\n -- Use value in description if available.\r\n if descValue then\r\n totalValue = totalValue + descValue * stackMult\r\n else\r\n totalValue = totalValue + validCountItemList[obj.getName()] * stackMult\r\n end\r\n end\r\n\r\n if totalValue ~= value then\r\n value = totalValue\r\n\r\n -- Updates the number display.\r\n self.editButton({ index=0, label=totalValue })\r\n\r\n if updateHook then\r\n local obj\r\n if updateHook[1] == \"Global\" or updateHook[1] == -1 then\r\n obj = Global\r\n else\r\n obj = getObjectFromGUID(updateHook[1])\r\n end\r\n\r\n obj.call(updateHook[2], {\r\n guid = self.guid,\r\n value = value,\r\n data = updateHook[3],\r\n })\r\n end\r\n end\r\n\r\n return totalValue\r\nend\r\n\r\n\r\n-- Empties the bowl\r\n-- Externally callable.\r\nfunction empty()\r\n local itemsInBowl = findItemsInSphere()\r\n for _, entry in ipairs(itemsInBowl) do\r\n if validCountItemList[entry.hit_object.getName()] then\r\n entry.hit_object.destruct()\r\n end\r\n end\r\n\r\n countItems()\r\nend\r\n\n----#include mods/Brass/lib/Bowl",
"LuaScriptState": ""
},
{
"GUID": "6e1823",
"Name": "Bowl",
"Transform": {
"posX": 15.7500114,
"posY": 1.42706406,
"posZ": 14.2499952,
"rotX": 0.08783345,
"rotY": 0.0372765027,
"rotZ": 359.912384,
"scaleX": 0.8,
"scaleY": 0.8,
"scaleZ": 0.8
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.545097947,
"g": 0.443117946,
"b": 0.796078444
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "-- Purple wallet bowl\r\n----#include mods/Brass/lib/Bowl\n-- Counting Bowl by MrStump, modified\r\n\r\n\r\n-- Constants\r\nlocal validCountItemList = {\r\n [ \"Gold\" ] = 15,\r\n [ \"Silver\" ] = 5,\r\n [ \"Bronze\" ] = 1,\r\n}\r\n\r\n\r\n-- Public attributes\r\nitemsInBowl = { }\r\nupdateHook = nil\r\n\r\n\r\n-- Private attributes.\r\nlocal value\r\n\r\n\r\nfunction onLoad()\r\n self.createButton({\r\n label=\"\", click_function=\"none\", function_owner=self,\r\n position={0,0.04,-2.5}, rotation={0,180,0}, height=0, width=0,\r\n font_color={1,1,1}, font_size=500\r\n })\r\n\r\n Wait.time(countItems, 1, -1)\r\nend\r\n\r\n\r\n-- Gets the items in the bowl for countItems to count\r\nlocal function findItemsInSphere()\r\n local pos = self.getPosition()\r\n local scale = self.getScale()\r\n\r\n pos.y = pos.y + ( 1.25 * scale.y )\r\n\r\n return Physics.cast({\r\n origin = pos,\r\n direction = { 0, 1, 0 },\r\n type = 2,\r\n max_distance = 0,\r\n size = { 3.4 * scale.x, 3.4 * scale.y, 3.4 * scale.z },\r\n })\r\nend\r\n\r\n\r\n-- Counts items in bowls.\r\n-- Sets itemsInBowl.\r\n-- Returns the count.\r\n-- Externally callable.\r\n-- Activated once per second.\r\nfunction countItems()\r\n local foundItems = findItemsInSphere()\r\n\r\n -- Isolate items of interest.\r\n itemsInBowl = {}\r\n for i, entry in ipairs(foundItems) do\r\n if validCountItemList[entry.hit_object.getName()] then\r\n table.insert(itemsInBowl, entry.hit_object)\r\n end\r\n end\r\n\r\n -- Calculate value of items of interest.\r\n local totalValue = 0\r\n for i, obj in ipairs(itemsInBowl) do\r\n local descValue = tonumber(obj.getDescription())\r\n local stackMult = math.abs(obj.getQuantity())\r\n\r\n -- Use value in description if available.\r\n if descValue then\r\n totalValue = totalValue + descValue * stackMult\r\n else\r\n totalValue = totalValue + validCountItemList[obj.getName()] * stackMult\r\n end\r\n end\r\n\r\n if totalValue ~= value then\r\n value = totalValue\r\n\r\n -- Updates the number display.\r\n self.editButton({ index=0, label=totalValue })\r\n\r\n if updateHook then\r\n local obj\r\n if updateHook[1] == \"Global\" or updateHook[1] == -1 then\r\n obj = Global\r\n else\r\n obj = getObjectFromGUID(updateHook[1])\r\n end\r\n\r\n obj.call(updateHook[2], {\r\n guid = self.guid,\r\n value = value,\r\n data = updateHook[3],\r\n })\r\n end\r\n end\r\n\r\n return totalValue\r\nend\r\n\r\n\r\n-- Empties the bowl\r\n-- Externally callable.\r\nfunction empty()\r\n local itemsInBowl = findItemsInSphere()\r\n for _, entry in ipairs(itemsInBowl) do\r\n if validCountItemList[entry.hit_object.getName()] then\r\n entry.hit_object.destruct()\r\n end\r\n end\r\n\r\n countItems()\r\nend\r\n\n----#include mods/Brass/lib/Bowl",
"LuaScriptState": ""
},
{
"GUID": "ab3868",
"Name": "Bowl",
"Transform": {
"posX": 10.0,
"posY": 1.42997384,
"posZ": -14.250289,
"rotX": 0.08820939,
"rotY": 359.989075,
"rotZ": 359.911926,
"scaleX": 0.8,
"scaleY": 0.8,
"scaleZ": 0.8
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "-- Teal wallet bowl\r\n----#include mods/Brass/lib/Bowl\n-- Counting Bowl by MrStump, modified\r\n\r\n\r\n-- Constants\r\nlocal validCountItemList = {\r\n [ \"Gold\" ] = 15,\r\n [ \"Silver\" ] = 5,\r\n [ \"Bronze\" ] = 1,\r\n}\r\n\r\n\r\n-- Public attributes\r\nitemsInBowl = { }\r\nupdateHook = nil\r\n\r\n\r\n-- Private attributes.\r\nlocal value\r\n\r\n\r\nfunction onLoad()\r\n self.createButton({\r\n label=\"\", click_function=\"none\", function_owner=self,\r\n position={0,0.04,-2.5}, rotation={0,180,0}, height=0, width=0,\r\n font_color={1,1,1}, font_size=500\r\n })\r\n\r\n Wait.time(countItems, 1, -1)\r\nend\r\n\r\n\r\n-- Gets the items in the bowl for countItems to count\r\nlocal function findItemsInSphere()\r\n local pos = self.getPosition()\r\n local scale = self.getScale()\r\n\r\n pos.y = pos.y + ( 1.25 * scale.y )\r\n\r\n return Physics.cast({\r\n origin = pos,\r\n direction = { 0, 1, 0 },\r\n type = 2,\r\n max_distance = 0,\r\n size = { 3.4 * scale.x, 3.4 * scale.y, 3.4 * scale.z },\r\n })\r\nend\r\n\r\n\r\n-- Counts items in bowls.\r\n-- Sets itemsInBowl.\r\n-- Returns the count.\r\n-- Externally callable.\r\n-- Activated once per second.\r\nfunction countItems()\r\n local foundItems = findItemsInSphere()\r\n\r\n -- Isolate items of interest.\r\n itemsInBowl = {}\r\n for i, entry in ipairs(foundItems) do\r\n if validCountItemList[entry.hit_object.getName()] then\r\n table.insert(itemsInBowl, entry.hit_object)\r\n end\r\n end\r\n\r\n -- Calculate value of items of interest.\r\n local totalValue = 0\r\n for i, obj in ipairs(itemsInBowl) do\r\n local descValue = tonumber(obj.getDescription())\r\n local stackMult = math.abs(obj.getQuantity())\r\n\r\n -- Use value in description if available.\r\n if descValue then\r\n totalValue = totalValue + descValue * stackMult\r\n else\r\n totalValue = totalValue + validCountItemList[obj.getName()] * stackMult\r\n end\r\n end\r\n\r\n if totalValue ~= value then\r\n value = totalValue\r\n\r\n -- Updates the number display.\r\n self.editButton({ index=0, label=totalValue })\r\n\r\n if updateHook then\r\n local obj\r\n if updateHook[1] == \"Global\" or updateHook[1] == -1 then\r\n obj = Global\r\n else\r\n obj = getObjectFromGUID(updateHook[1])\r\n end\r\n\r\n obj.call(updateHook[2], {\r\n guid = self.guid,\r\n value = value,\r\n data = updateHook[3],\r\n })\r\n end\r\n end\r\n\r\n return totalValue\r\nend\r\n\r\n\r\n-- Empties the bowl\r\n-- Externally callable.\r\nfunction empty()\r\n local itemsInBowl = findItemsInSphere()\r\n for _, entry in ipairs(itemsInBowl) do\r\n if validCountItemList[entry.hit_object.getName()] then\r\n entry.hit_object.destruct()\r\n end\r\n end\r\n\r\n countItems()\r\nend\r\n\n----#include mods/Brass/lib/Bowl",
"LuaScriptState": ""
},
{
"GUID": "02b512",
"Name": "Custom_Model",
"Transform": {
"posX": 0.0,
"posY": 1.26,
"posZ": 0.0,
"rotX": 0.0,
"rotY": -0.00189453643,
"rotZ": 0.0,
"scaleX": 2.2,
"scaleY": 0.02,
"scaleZ": 2.2
},
"Nickname": "Game Table",
"Description": "",
"GMNotes": "Game Table",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": false,
"GridProjection": true,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/987863257458518028/CEE2F8E7B56A47085522C3BAE37C5ADF6C0043AF/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/987863257458474338/EEF2FF28224A83EB29EC7D5B3CA728782F1554FC/",
"NormalURL": "",
"ColliderURL": "http://cloud-3.steamusercontent.com/ugc/987863257458518028/CEE2F8E7B56A47085522C3BAE37C5ADF6C0043AF/",
"Convex": true,
"MaterialIndex": 1,
"TypeIndex": 4,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "959e1a",
"Name": "Infinite_Bag",
"Transform": {
"posX": -2.75,
"posY": 1.45,
"posZ": 35.0,
"rotX": 0.0,
"rotY": -2.73986752E-05,
"rotZ": 1.994151E-07,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "Decks for Two Players",
"Description": "",
"GMNotes": "Decks for Two Players",
"ColorDiffuse": {
"r": 0.191049069,
"g": 0.28610006,
"b": 0.921602845
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"ContainedObjects": [
{
"GUID": "29d3a4",
"Name": "Deck",
"Transform": {
"posX": -2.5,
"posY": 3.50963926,
"posZ": 34.5,
"rotX": 0.0248639435,
"rotY": 179.996811,
"rotZ": 180.048431,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": false,
"SidewaysCard": false,
"DeckIDs": [
400,
423,
415,
402,
422,
403,
419,
417,
414,
405,
418,
404,
416,
420,
420,
419,
416,
414,
422,
423,
404,
404,
403,
423,
400,
413,
422,
419,
402,
417,
401,
416,
418,
401,
404,
420,
413,
414,
412,
412
],
"CustomDeck": {
"4": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"ContainedObjects": [
{
"GUID": "953021",
"Name": "Card",
"Transform": {
"posX": -4.51251268,
"posY": 1.71573961,
"posZ": 26.3171062,
"rotX": 0.4531331,
"rotY": 179.99115,
"rotZ": 359.4384,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 400,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "89c465",
"Name": "Card",
"Transform": {
"posX": -4.79143572,
"posY": 1.98864639,
"posZ": 15.9189825,
"rotX": 0.009173709,
"rotY": 179.994888,
"rotZ": 180.076584,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 423,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "ed5749",
"Name": "Card",
"Transform": {
"posX": -4.129922,
"posY": 1.56392419,
"posZ": 16.789463,
"rotX": 0.0168729089,
"rotY": 179.999252,
"rotZ": 0.07987924,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 415,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "2f0260",
"Name": "Card",
"Transform": {
"posX": 9.652453,
"posY": 1.70990384,
"posZ": 26.651804,
"rotX": 1.35595512,
"rotY": 179.980759,
"rotZ": 359.320831,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 402,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "8ef161",
"Name": "Card",
"Transform": {
"posX": 17.2304783,
"posY": 1.79189134,
"posZ": 16.861414,
"rotX": 357.3137,
"rotY": 180.002274,
"rotZ": 0.07988816,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 422,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "fd5afa",
"Name": "Card",
"Transform": {
"posX": 6.42813969,
"posY": 1.571542,
"posZ": 27.0106735,
"rotX": 0.07004041,
"rotY": 179.996933,
"rotZ": 359.993073,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 403,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "1cef59",
"Name": "Card",
"Transform": {
"posX": 10.2222977,
"posY": 1.78494108,
"posZ": 17.2745953,
"rotX": 357.272369,
"rotY": 180.010483,
"rotZ": 0.07513662,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 419,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "86bef9",
"Name": "Card",
"Transform": {
"posX": 3.147627,
"posY": 1.55373371,
"posZ": 16.68609,
"rotX": 0.0127045577,
"rotY": 179.987549,
"rotZ": 0.0814999342,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 417,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "8b1db8",
"Name": "Card",
"Transform": {
"posX": -4.331655,
"posY": 1.56541038,
"posZ": 21.5679626,
"rotX": 0.00963702053,
"rotY": 180.000427,
"rotZ": 0.0768828839,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 414,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "f29b09",
"Name": "Card",
"Transform": {
"posX": -0.664490759,
"posY": 1.57166553,
"posZ": 26.9892921,
"rotX": 0.229008913,
"rotY": 180.026611,
"rotZ": 9.729098E-05,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 405,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "434034",
"Name": "Card",
"Transform": {
"posX": 6.71835327,
"posY": 1.54875982,
"posZ": 16.6828632,
"rotX": 0.0164551754,
"rotY": 179.999222,
"rotZ": 0.07971438,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 418,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "0096de",
"Name": "Card",
"Transform": {
"posX": 2.62761736,
"posY": 1.72428536,
"posZ": 26.75869,
"rotX": 0.31849584,
"rotY": 179.936691,
"rotZ": 0.00461178366,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 404,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "888e5f",
"Name": "Card",
"Transform": {
"posX": -0.2219972,
"posY": 1.72122276,
"posZ": 16.6000767,
"rotX": 0.08502816,
"rotY": 179.999908,
"rotZ": 0.221460715,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 416,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "12811e",
"Name": "Card",
"Transform": {
"posX": 13.758338,
"posY": 1.70499229,
"posZ": 16.7101345,
"rotX": 0.0195651073,
"rotY": 180.003784,
"rotZ": 0.07358416,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 420,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "12d325",
"Name": "Card",
"Transform": {
"posX": 14.0803251,
"posY": 1.68099749,
"posZ": 16.8799267,
"rotX": 0.0155889131,
"rotY": 179.999664,
"rotZ": 0.07498034,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 420,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "754bf6",
"Name": "Card",
"Transform": {
"posX": 10.97866,
"posY": 1.54273677,
"posZ": 16.6254883,
"rotX": 0.0140728215,
"rotY": 179.999237,
"rotZ": 0.07896491,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 419,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "888e5f",
"Name": "Card",
"Transform": {
"posX": -0.256284833,
"posY": 1.55826247,
"posZ": 16.7487679,
"rotX": 0.007529891,
"rotY": 179.99942,
"rotZ": 0.07637907,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 416,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "8b1db8",
"Name": "Card",
"Transform": {
"posX": -4.596753,
"posY": 1.73197222,
"posZ": 21.8081017,
"rotX": 0.0173291154,
"rotY": 180.000336,
"rotZ": 0.08404071,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 414,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "685282",
"Name": "Card",
"Transform": {
"posX": 21.011816,
"posY": 1.66931331,
"posZ": 16.4422054,
"rotX": 0.0118572153,
"rotY": 179.99942,
"rotZ": 0.0897286758,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 422,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "1e3729",
"Name": "Card",
"Transform": {
"posX": 20.4512348,
"posY": 1.695544,
"posZ": 16.67592,
"rotX": 0.0186142,
"rotY": 179.989548,
"rotZ": 0.0838763341,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 423,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "81b7ef",
"Name": "Card",
"Transform": {
"posX": 2.638019,
"posY": 1.73434782,
"posZ": 27.0823059,
"rotX": 0.09854927,
"rotY": 180.00412,
"rotZ": 0.0006354895,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 404,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "e7390a",
"Name": "Card",
"Transform": {
"posX": 2.58166718,
"posY": 1.57215965,
"posZ": 27.1352272,
"rotX": 0.189457491,
"rotY": 179.99765,
"rotZ": 1.0403447E-05,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 404,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "8c7f9e",
"Name": "Card",
"Transform": {
"posX": 6.27240467,
"posY": 1.7191608,
"posZ": 27.2882233,
"rotX": 359.866425,
"rotY": 179.99913,
"rotZ": 359.6209,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 403,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "830d62",
"Name": "Card",
"Transform": {
"posX": 24.07619,
"posY": 1.66854453,
"posZ": 16.6294346,
"rotX": -0.00247729267,
"rotY": 179.869781,
"rotZ": 0.07510338,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 423,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "5e870e",
"Name": "Card",
"Transform": {
"posX": -4.25784254,
"posY": 1.57101429,
"posZ": 26.9043255,
"rotX": 0.06794895,
"rotY": 179.996872,
"rotZ": 359.977051,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 400,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "67c951",
"Name": "Card",
"Transform": {
"posX": -0.41292,
"posY": 1.70897567,
"posZ": 21.7253113,
"rotX": 0.02751424,
"rotY": 180.047226,
"rotZ": 0.0881231651,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 413,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "8ef161",
"Name": "Card",
"Transform": {
"posX": 20.9054375,
"posY": 1.528856,
"posZ": 16.4400234,
"rotX": 0.0145325838,
"rotY": 179.999252,
"rotZ": 0.0791051,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 422,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "88fcec",
"Name": "Card",
"Transform": {
"posX": 11.1670322,
"posY": 1.68584549,
"posZ": 16.4735336,
"rotX": 0.0181202851,
"rotY": 179.999542,
"rotZ": 0.0787193552,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 419,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "92a1bd",
"Name": "Card",
"Transform": {
"posX": 10.2499352,
"posY": 1.57138515,
"posZ": 26.98677,
"rotX": 0.968479335,
"rotY": 179.986664,
"rotZ": -0.00386168878,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 402,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "21ee81",
"Name": "Card",
"Transform": {
"posX": 3.06042242,
"posY": 1.70156372,
"posZ": 16.8862171,
"rotX": 359.9722,
"rotY": 179.976089,
"rotZ": 0.01556971,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 417,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "1a6cd1",
"Name": "Card",
"Transform": {
"posX": 13.6834307,
"posY": 1.57142711,
"posZ": 26.9977531,
"rotX": 0.257405579,
"rotY": 179.99736,
"rotZ": 359.988281,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 401,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "e7fe9d",
"Name": "Card",
"Transform": {
"posX": -0.221981153,
"posY": 1.70275962,
"posZ": 16.600111,
"rotX": 0.0672445446,
"rotY": 180.000031,
"rotZ": 0.242339656,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 416,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "744c1e",
"Name": "Card",
"Transform": {
"posX": 6.795649,
"posY": 1.69344962,
"posZ": 16.7397766,
"rotX": 0.0119410809,
"rotY": 179.999054,
"rotZ": 0.07891664,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 418,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "54a6c0",
"Name": "Card",
"Transform": {
"posX": 14.1006975,
"posY": 1.71638906,
"posZ": 26.7519569,
"rotX": 0.5414272,
"rotY": 180.000717,
"rotZ": 0.475966334,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 401,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "e7390a",
"Name": "Card",
"Transform": {
"posX": 2.50973034,
"posY": 1.72384942,
"posZ": 26.9053955,
"rotX": 0.0179477334,
"rotY": 180.021774,
"rotZ": 359.989624,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 404,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "12811e",
"Name": "Card",
"Transform": {
"posX": 14.1203947,
"posY": 1.53835416,
"posZ": 16.5084419,
"rotX": 0.0151017969,
"rotY": 179.999252,
"rotZ": 0.07918029,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 420,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "da8077",
"Name": "Card",
"Transform": {
"posX": -0.7377963,
"posY": 1.56065607,
"posZ": 21.797699,
"rotX": 0.0162061863,
"rotY": 180.066818,
"rotZ": 0.0731087551,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 413,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "4be3b0",
"Name": "Card",
"Transform": {
"posX": -4.070091,
"posY": 1.7104193,
"posZ": 21.8457355,
"rotX": 359.74295,
"rotY": 179.997147,
"rotZ": 0.5136842,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 414,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "5240cf",
"Name": "Card",
"Transform": {
"posX": 2.46611977,
"posY": 1.70471072,
"posZ": 22.0188541,
"rotX": 0.0006968436,
"rotY": 179.9881,
"rotZ": 0.0401921235,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 412,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "7e5108",
"Name": "Card",
"Transform": {
"posX": 2.75252128,
"posY": 1.55583858,
"posZ": 21.9840183,
"rotX": 0.0157414619,
"rotY": 179.989441,
"rotZ": 0.0765208453,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 412,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
}
]
}
]
},
{
"GUID": "03115c",
"Name": "Infinite_Bag",
"Transform": {
"posX": 0.0,
"posY": 1.45475507,
"posZ": 35.0,
"rotX": 0.0,
"rotY": -0.000262155751,
"rotZ": 5.9680616E-07,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "Decks for Three Players",
"Description": "",
"GMNotes": "Decks for Three Players",
"ColorDiffuse": {
"r": 0.191049039,
"g": 0.28610003,
"b": 0.921602845
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"ContainedObjects": [
{
"GUID": "a235c1",
"Name": "Deck",
"Transform": {
"posX": 0.5,
"posY": 3.581421,
"posZ": 34.5,
"rotX": 0.0179690644,
"rotY": 179.997055,
"rotZ": 180.0696,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": false,
"SidewaysCard": false,
"DeckIDs": [
221,
211,
221,
221,
209,
221,
219,
211,
221,
210,
220,
208,
208,
210,
400,
423,
415,
402,
422,
403,
419,
417,
414,
405,
418,
404,
416,
420,
420,
419,
416,
414,
422,
423,
404,
404,
403,
423,
400,
413,
422,
419,
402,
417,
401,
416,
418,
401,
404,
420,
413,
414,
412,
412
],
"CustomDeck": {
"2": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
},
"4": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"ContainedObjects": [
{
"GUID": "6617a0",
"Name": "Card",
"Transform": {
"posX": 17.5153389,
"posY": 1.68170416,
"posZ": 16.6744537,
"rotX": 359.837463,
"rotY": 179.998077,
"rotZ": 0.3567135,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 221,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "14f444",
"Name": "Card",
"Transform": {
"posX": 6.216853,
"posY": 1.69625854,
"posZ": 22.0557,
"rotX": 0.0126195671,
"rotY": 179.998825,
"rotZ": 0.0757830739,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 211,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "6617a0",
"Name": "Card",
"Transform": {
"posX": 17.51515,
"posY": 1.69274759,
"posZ": 16.6742325,
"rotX": 0.0168567374,
"rotY": 179.999344,
"rotZ": 0.08164492,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 221,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "49a567",
"Name": "Card",
"Transform": {
"posX": 17.51516,
"posY": 1.67520308,
"posZ": 16.67424,
"rotX": 0.0163162369,
"rotY": 179.999359,
"rotZ": 0.08552998,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 221,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "001b55",
"Name": "Card",
"Transform": {
"posX": 24.2927456,
"posY": 1.51865029,
"posZ": -2.396829,
"rotX": 0.0168727562,
"rotY": 179.9992,
"rotZ": 0.079880096,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 209,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "6617a0",
"Name": "Card",
"Transform": {
"posX": 17.3684616,
"posY": 1.53379142,
"posZ": 16.46649,
"rotX": 0.0143963667,
"rotY": 179.999146,
"rotZ": 0.07904994,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 221,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "754bf6",
"Name": "Card",
"Transform": {
"posX": 17.40196,
"posY": 1.52690506,
"posZ": -6.98764849,
"rotX": 0.0168688744,
"rotY": 180.004059,
"rotZ": 0.07988071,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 219,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "de4de5",
"Name": "Card",
"Transform": {
"posX": 6.314497,
"posY": 1.55092013,
"posZ": 22.1073322,
"rotX": 0.0164207518,
"rotY": 179.999084,
"rotZ": 0.07968163,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 211,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "6617a0",
"Name": "Card",
"Transform": {
"posX": 17.5150585,
"posY": 1.68700957,
"posZ": 16.6742363,
"rotX": 0.01932738,
"rotY": 179.999847,
"rotZ": 0.0517050363,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 221,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "20cfe5",
"Name": "Card",
"Transform": {
"posX": 9.732361,
"posY": 1.5461278,
"posZ": 22.1122627,
"rotX": 0.0153384358,
"rotY": 180.006241,
"rotZ": 0.07519592,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 210,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "fde715",
"Name": "Card",
"Transform": {
"posX": 24.4247627,
"posY": 1.51712239,
"posZ": -6.96033239,
"rotX": 0.0168729629,
"rotY": 179.999619,
"rotZ": 0.07987599,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 220,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "6a0c7c",
"Name": "Card",
"Transform": {
"posX": 16.3900585,
"posY": 1.679109,
"posZ": 21.8150463,
"rotX": 0.0124728335,
"rotY": 179.9987,
"rotZ": 0.0733709037,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 208,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "1da602",
"Name": "Card",
"Transform": {
"posX": 16.5581112,
"posY": 1.53661036,
"posZ": 22.0404243,
"rotX": 0.0160581283,
"rotY": 179.998978,
"rotZ": 0.07953222,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 208,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "99e6c7",
"Name": "Card",
"Transform": {
"posX": 9.805331,
"posY": 1.69396377,
"posZ": 21.8136024,
"rotX": 0.0106752524,
"rotY": 180.007919,
"rotZ": 0.041261483,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 210,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "953021",
"Name": "Card",
"Transform": {
"posX": -4.51251268,
"posY": 1.71573961,
"posZ": 26.3171062,
"rotX": 0.4531331,
"rotY": 179.99115,
"rotZ": 359.4384,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 400,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "89c465",
"Name": "Card",
"Transform": {
"posX": -4.79143572,
"posY": 1.98864639,
"posZ": 15.9189825,
"rotX": 0.009173709,
"rotY": 179.994888,
"rotZ": 180.076584,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 423,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "ed5749",
"Name": "Card",
"Transform": {
"posX": -4.129922,
"posY": 1.56392419,
"posZ": 16.789463,
"rotX": 0.0168729089,
"rotY": 179.999252,
"rotZ": 0.07987924,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 415,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "2f0260",
"Name": "Card",
"Transform": {
"posX": 9.652453,
"posY": 1.70990384,
"posZ": 26.651804,
"rotX": 1.35595512,
"rotY": 179.980759,
"rotZ": 359.320831,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 402,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "8ef161",
"Name": "Card",
"Transform": {
"posX": 17.2304783,
"posY": 1.79189134,
"posZ": 16.861414,
"rotX": 357.3137,
"rotY": 180.002274,
"rotZ": 0.07988816,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 422,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "fd5afa",
"Name": "Card",
"Transform": {
"posX": 6.42813969,
"posY": 1.571542,
"posZ": 27.0106735,
"rotX": 0.07004041,
"rotY": 179.996933,
"rotZ": 359.993073,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 403,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "1cef59",
"Name": "Card",
"Transform": {
"posX": 10.2222977,
"posY": 1.78494108,
"posZ": 17.2745953,
"rotX": 357.272369,
"rotY": 180.010483,
"rotZ": 0.07513662,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 419,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "86bef9",
"Name": "Card",
"Transform": {
"posX": 3.147627,
"posY": 1.55373371,
"posZ": 16.68609,
"rotX": 0.0127045577,
"rotY": 179.987549,
"rotZ": 0.0814999342,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 417,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "8b1db8",
"Name": "Card",
"Transform": {
"posX": -4.331655,
"posY": 1.56541038,
"posZ": 21.5679626,
"rotX": 0.00963702053,
"rotY": 180.000427,
"rotZ": 0.0768828839,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 414,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "f29b09",
"Name": "Card",
"Transform": {
"posX": -0.664490759,
"posY": 1.57166553,
"posZ": 26.9892921,
"rotX": 0.229008913,
"rotY": 180.026611,
"rotZ": 9.729098E-05,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 405,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "434034",
"Name": "Card",
"Transform": {
"posX": 6.71835327,
"posY": 1.54875982,
"posZ": 16.6828632,
"rotX": 0.0164551754,
"rotY": 179.999222,
"rotZ": 0.07971438,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 418,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "0096de",
"Name": "Card",
"Transform": {
"posX": 2.62761736,
"posY": 1.72428536,
"posZ": 26.75869,
"rotX": 0.31849584,
"rotY": 179.936691,
"rotZ": 0.00461178366,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 404,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "888e5f",
"Name": "Card",
"Transform": {
"posX": -0.2219972,
"posY": 1.72122276,
"posZ": 16.6000767,
"rotX": 0.08502816,
"rotY": 179.999908,
"rotZ": 0.221460715,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 416,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "12811e",
"Name": "Card",
"Transform": {
"posX": 13.758338,
"posY": 1.70499229,
"posZ": 16.7101345,
"rotX": 0.0195651073,
"rotY": 180.003784,
"rotZ": 0.07358416,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 420,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "12d325",
"Name": "Card",
"Transform": {
"posX": 14.0803251,
"posY": 1.68099749,
"posZ": 16.8799267,
"rotX": 0.0155889131,
"rotY": 179.999664,
"rotZ": 0.07498034,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 420,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "754bf6",
"Name": "Card",
"Transform": {
"posX": 10.97866,
"posY": 1.54273677,
"posZ": 16.6254883,
"rotX": 0.0140728215,
"rotY": 179.999237,
"rotZ": 0.07896491,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 419,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "888e5f",
"Name": "Card",
"Transform": {
"posX": -0.256284833,
"posY": 1.55826247,
"posZ": 16.7487679,
"rotX": 0.007529891,
"rotY": 179.99942,
"rotZ": 0.07637907,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 416,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "8b1db8",
"Name": "Card",
"Transform": {
"posX": -4.596753,
"posY": 1.73197222,
"posZ": 21.8081017,
"rotX": 0.0173291154,
"rotY": 180.000336,
"rotZ": 0.08404071,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 414,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "685282",
"Name": "Card",
"Transform": {
"posX": 21.011816,
"posY": 1.66931331,
"posZ": 16.4422054,
"rotX": 0.0118572153,
"rotY": 179.99942,
"rotZ": 0.0897286758,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 422,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "1e3729",
"Name": "Card",
"Transform": {
"posX": 20.4512348,
"posY": 1.695544,
"posZ": 16.67592,
"rotX": 0.0186142,
"rotY": 179.989548,
"rotZ": 0.0838763341,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 423,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "81b7ef",
"Name": "Card",
"Transform": {
"posX": 2.638019,
"posY": 1.73434782,
"posZ": 27.0823059,
"rotX": 0.09854927,
"rotY": 180.00412,
"rotZ": 0.0006354895,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 404,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "e7390a",
"Name": "Card",
"Transform": {
"posX": 2.58166718,
"posY": 1.57215965,
"posZ": 27.1352272,
"rotX": 0.189457491,
"rotY": 179.99765,
"rotZ": 1.0403447E-05,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 404,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "8c7f9e",
"Name": "Card",
"Transform": {
"posX": 6.27240467,
"posY": 1.7191608,
"posZ": 27.2882233,
"rotX": 359.866425,
"rotY": 179.99913,
"rotZ": 359.6209,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 403,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "830d62",
"Name": "Card",
"Transform": {
"posX": 24.07619,
"posY": 1.66854453,
"posZ": 16.6294346,
"rotX": -0.00247729267,
"rotY": 179.869781,
"rotZ": 0.07510338,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 423,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "5e870e",
"Name": "Card",
"Transform": {
"posX": -4.25784254,
"posY": 1.57101429,
"posZ": 26.9043255,
"rotX": 0.06794895,
"rotY": 179.996872,
"rotZ": 359.977051,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 400,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "67c951",
"Name": "Card",
"Transform": {
"posX": -0.41292,
"posY": 1.70897567,
"posZ": 21.7253113,
"rotX": 0.02751424,
"rotY": 180.047226,
"rotZ": 0.0881231651,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 413,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "8ef161",
"Name": "Card",
"Transform": {
"posX": 20.9054375,
"posY": 1.528856,
"posZ": 16.4400234,
"rotX": 0.0145325838,
"rotY": 179.999252,
"rotZ": 0.0791051,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 422,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "88fcec",
"Name": "Card",
"Transform": {
"posX": 11.1670322,
"posY": 1.68584549,
"posZ": 16.4735336,
"rotX": 0.0181202851,
"rotY": 179.999542,
"rotZ": 0.0787193552,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 419,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "92a1bd",
"Name": "Card",
"Transform": {
"posX": 10.2499352,
"posY": 1.57138515,
"posZ": 26.98677,
"rotX": 0.968479335,
"rotY": 179.986664,
"rotZ": -0.00386168878,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 402,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "21ee81",
"Name": "Card",
"Transform": {
"posX": 3.06042242,
"posY": 1.70156372,
"posZ": 16.8862171,
"rotX": 359.9722,
"rotY": 179.976089,
"rotZ": 0.01556971,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 417,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "1a6cd1",
"Name": "Card",
"Transform": {
"posX": 13.6834307,
"posY": 1.57142711,
"posZ": 26.9977531,
"rotX": 0.257405579,
"rotY": 179.99736,
"rotZ": 359.988281,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 401,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "e7fe9d",
"Name": "Card",
"Transform": {
"posX": -0.221981153,
"posY": 1.70275962,
"posZ": 16.600111,
"rotX": 0.0672445446,
"rotY": 180.000031,
"rotZ": 0.242339656,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 416,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "744c1e",
"Name": "Card",
"Transform": {
"posX": 6.795649,
"posY": 1.69344962,
"posZ": 16.7397766,
"rotX": 0.0119410809,
"rotY": 179.999054,
"rotZ": 0.07891664,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 418,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "54a6c0",
"Name": "Card",
"Transform": {
"posX": 14.1006975,
"posY": 1.71638906,
"posZ": 26.7519569,
"rotX": 0.5414272,
"rotY": 180.000717,
"rotZ": 0.475966334,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 401,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "e7390a",
"Name": "Card",
"Transform": {
"posX": 2.50973034,
"posY": 1.72384942,
"posZ": 26.9053955,
"rotX": 0.0179477334,
"rotY": 180.021774,
"rotZ": 359.989624,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 404,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "12811e",
"Name": "Card",
"Transform": {
"posX": 14.1203947,
"posY": 1.53835416,
"posZ": 16.5084419,
"rotX": 0.0151017969,
"rotY": 179.999252,
"rotZ": 0.07918029,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 420,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "da8077",
"Name": "Card",
"Transform": {
"posX": -0.7377963,
"posY": 1.56065607,
"posZ": 21.797699,
"rotX": 0.0162061863,
"rotY": 180.066818,
"rotZ": 0.0731087551,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 413,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "4be3b0",
"Name": "Card",
"Transform": {
"posX": -4.070091,
"posY": 1.7104193,
"posZ": 21.8457355,
"rotX": 359.74295,
"rotY": 179.997147,
"rotZ": 0.5136842,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 414,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "5240cf",
"Name": "Card",
"Transform": {
"posX": 2.46611977,
"posY": 1.70471072,
"posZ": 22.0188541,
"rotX": 0.0006968436,
"rotY": 179.9881,
"rotZ": 0.0401921235,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 412,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "7e5108",
"Name": "Card",
"Transform": {
"posX": 2.75252128,
"posY": 1.55583858,
"posZ": 21.9840183,
"rotX": 0.0157414619,
"rotY": 179.989441,
"rotZ": 0.0765208453,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 412,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
}
]
}
]
},
{
"GUID": "d7877c",
"Name": "Infinite_Bag",
"Transform": {
"posX": 2.75,
"posY": 1.45,
"posZ": 35.0,
"rotX": 3.81065486E-13,
"rotY": 0.000120131735,
"rotZ": -3.634917E-07,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "Decks for Four Players",
"Description": "",
"GMNotes": "Decks for Four Players",
"ColorDiffuse": {
"r": 0.191049039,
"g": 0.28610003,
"b": 0.921602845
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"ContainedObjects": [
{
"GUID": "ecbf9e",
"Name": "Deck",
"Transform": {
"posX": 2.5,
"posY": 3.62518716,
"posZ": 34.5,
"rotX": 0.0244093947,
"rotY": 179.996689,
"rotZ": 179.953568,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": false,
"SidewaysCard": false,
"DeckIDs": [
316,
321,
306,
307,
307,
321,
310,
320,
306,
321,
221,
211,
221,
221,
209,
221,
219,
211,
221,
210,
220,
208,
208,
210,
400,
423,
415,
402,
422,
403,
419,
417,
414,
405,
418,
404,
416,
420,
420,
419,
416,
414,
422,
423,
404,
404,
403,
423,
400,
413,
422,
419,
402,
417,
401,
416,
418,
401,
404,
420,
413,
414,
412,
412
],
"CustomDeck": {
"3": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
},
"2": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
},
"4": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"ContainedObjects": [
{
"GUID": "888e5f",
"Name": "Card",
"Transform": {
"posX": 28.718359,
"posY": 1.57171512,
"posZ": 11.4949007,
"rotX": 6.41418353E-07,
"rotY": 180.000443,
"rotZ": 1.66294831E-05,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 316,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "6617a0",
"Name": "Card",
"Transform": {
"posX": 19.9843884,
"posY": 1.5286,
"posZ": 11.1742125,
"rotX": 0.0148884086,
"rotY": 180.000229,
"rotZ": 0.07920154,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 321,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "e8b0ca",
"Name": "Card",
"Transform": {
"posX": 28.3112164,
"posY": 1.7209928,
"posZ": 20.24809,
"rotX": 0.003038702,
"rotY": 180.014465,
"rotZ": 359.993134,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 306,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "36e245",
"Name": "Card",
"Transform": {
"posX": 28.8041725,
"posY": 1.57170355,
"posZ": 15.8357353,
"rotX": -0.0003050025,
"rotY": 180.01474,
"rotZ": -0.000406999781,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 307,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "687ff7",
"Name": "Card",
"Transform": {
"posX": 28.9364071,
"posY": 1.7197957,
"posZ": 15.7587452,
"rotX": -0.00368033769,
"rotY": 179.998627,
"rotZ": 359.987885,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 307,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "7f58c3",
"Name": "Card",
"Transform": {
"posX": 20.1995544,
"posY": 1.6699574,
"posZ": 11.6210966,
"rotX": 0.0141828526,
"rotY": 179.999466,
"rotZ": 0.08782578,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 321,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "cd694a",
"Name": "Card",
"Transform": {
"posX": 28.71078,
"posY": 1.571715,
"posZ": 24.6211967,
"rotX": 1.976463E-05,
"rotY": 180.008942,
"rotZ": -7.416644E-08,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 310,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "83de6b",
"Name": "Card",
"Transform": {
"posX": 25.6978149,
"posY": 1.54802072,
"posZ": 7.24316931,
"rotX": 0.00130687817,
"rotY": 180.066818,
"rotZ": 358.957153,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 320,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "57c252",
"Name": "Card",
"Transform": {
"posX": 28.6532688,
"posY": 1.57168686,
"posZ": 20.2481079,
"rotX": 0.0009189502,
"rotY": 180.014465,
"rotZ": 0.000312838121,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 306,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "6617a0",
"Name": "Card",
"Transform": {
"posX": 20.199543,
"posY": 1.68751884,
"posZ": 11.6210756,
"rotX": 0.01626347,
"rotY": 179.9994,
"rotZ": 0.08216588,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 321,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "6617a0",
"Name": "Card",
"Transform": {
"posX": 17.5153389,
"posY": 1.68170416,
"posZ": 16.6744537,
"rotX": 359.837463,
"rotY": 179.998077,
"rotZ": 0.3567135,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 221,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "14f444",
"Name": "Card",
"Transform": {
"posX": 6.216853,
"posY": 1.69625854,
"posZ": 22.0557,
"rotX": 0.0126195671,
"rotY": 179.998825,
"rotZ": 0.0757830739,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 211,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "6617a0",
"Name": "Card",
"Transform": {
"posX": 17.51515,
"posY": 1.69274759,
"posZ": 16.6742325,
"rotX": 0.0168567374,
"rotY": 179.999344,
"rotZ": 0.08164492,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 221,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "49a567",
"Name": "Card",
"Transform": {
"posX": 17.51516,
"posY": 1.67520308,
"posZ": 16.67424,
"rotX": 0.0163162369,
"rotY": 179.999359,
"rotZ": 0.08552998,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 221,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "001b55",
"Name": "Card",
"Transform": {
"posX": 24.2927456,
"posY": 1.51865029,
"posZ": -2.396829,
"rotX": 0.0168727562,
"rotY": 179.9992,
"rotZ": 0.079880096,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 209,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "6617a0",
"Name": "Card",
"Transform": {
"posX": 17.3684616,
"posY": 1.53379142,
"posZ": 16.46649,
"rotX": 0.0143963667,
"rotY": 179.999146,
"rotZ": 0.07904994,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 221,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "754bf6",
"Name": "Card",
"Transform": {
"posX": 17.40196,
"posY": 1.52690506,
"posZ": -6.98764849,
"rotX": 0.0168688744,
"rotY": 180.004059,
"rotZ": 0.07988071,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 219,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "de4de5",
"Name": "Card",
"Transform": {
"posX": 6.314497,
"posY": 1.55092013,
"posZ": 22.1073322,
"rotX": 0.0164207518,
"rotY": 179.999084,
"rotZ": 0.07968163,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 211,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "6617a0",
"Name": "Card",
"Transform": {
"posX": 17.5150585,
"posY": 1.68700957,
"posZ": 16.6742363,
"rotX": 0.01932738,
"rotY": 179.999847,
"rotZ": 0.0517050363,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 221,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "20cfe5",
"Name": "Card",
"Transform": {
"posX": 9.732361,
"posY": 1.5461278,
"posZ": 22.1122627,
"rotX": 0.0153384358,
"rotY": 180.006241,
"rotZ": 0.07519592,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 210,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "fde715",
"Name": "Card",
"Transform": {
"posX": 24.4247627,
"posY": 1.51712239,
"posZ": -6.96033239,
"rotX": 0.0168729629,
"rotY": 179.999619,
"rotZ": 0.07987599,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 220,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "6a0c7c",
"Name": "Card",
"Transform": {
"posX": 16.3900585,
"posY": 1.679109,
"posZ": 21.8150463,
"rotX": 0.0124728335,
"rotY": 179.9987,
"rotZ": 0.0733709037,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 208,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "1da602",
"Name": "Card",
"Transform": {
"posX": 16.5581112,
"posY": 1.53661036,
"posZ": 22.0404243,
"rotX": 0.0160581283,
"rotY": 179.998978,
"rotZ": 0.07953222,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 208,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "99e6c7",
"Name": "Card",
"Transform": {
"posX": 9.805331,
"posY": 1.69396377,
"posZ": 21.8136024,
"rotX": 0.0106752524,
"rotY": 180.007919,
"rotZ": 0.041261483,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 210,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "953021",
"Name": "Card",
"Transform": {
"posX": -4.51251268,
"posY": 1.71573961,
"posZ": 26.3171062,
"rotX": 0.4531331,
"rotY": 179.99115,
"rotZ": 359.4384,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 400,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "89c465",
"Name": "Card",
"Transform": {
"posX": -4.79143572,
"posY": 1.98864639,
"posZ": 15.9189825,
"rotX": 0.009173709,
"rotY": 179.994888,
"rotZ": 180.076584,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 423,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "ed5749",
"Name": "Card",
"Transform": {
"posX": -4.129922,
"posY": 1.56392419,
"posZ": 16.789463,
"rotX": 0.0168729089,
"rotY": 179.999252,
"rotZ": 0.07987924,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 415,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "2f0260",
"Name": "Card",
"Transform": {
"posX": 9.652453,
"posY": 1.70990384,
"posZ": 26.651804,
"rotX": 1.35595512,
"rotY": 179.980759,
"rotZ": 359.320831,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 402,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "8ef161",
"Name": "Card",
"Transform": {
"posX": 17.2304783,
"posY": 1.79189134,
"posZ": 16.861414,
"rotX": 357.3137,
"rotY": 180.002274,
"rotZ": 0.07988816,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 422,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "fd5afa",
"Name": "Card",
"Transform": {
"posX": 6.42813969,
"posY": 1.571542,
"posZ": 27.0106735,
"rotX": 0.07004041,
"rotY": 179.996933,
"rotZ": 359.993073,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 403,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "1cef59",
"Name": "Card",
"Transform": {
"posX": 10.2222977,
"posY": 1.78494108,
"posZ": 17.2745953,
"rotX": 357.272369,
"rotY": 180.010483,
"rotZ": 0.07513662,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 419,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "86bef9",
"Name": "Card",
"Transform": {
"posX": 3.147627,
"posY": 1.55373371,
"posZ": 16.68609,
"rotX": 0.0127045577,
"rotY": 179.987549,
"rotZ": 0.0814999342,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 417,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "8b1db8",
"Name": "Card",
"Transform": {
"posX": -4.331655,
"posY": 1.56541038,
"posZ": 21.5679626,
"rotX": 0.00963702053,
"rotY": 180.000427,
"rotZ": 0.0768828839,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 414,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "f29b09",
"Name": "Card",
"Transform": {
"posX": -0.664490759,
"posY": 1.57166553,
"posZ": 26.9892921,
"rotX": 0.229008913,
"rotY": 180.026611,
"rotZ": 9.729098E-05,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 405,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "434034",
"Name": "Card",
"Transform": {
"posX": 6.71835327,
"posY": 1.54875982,
"posZ": 16.6828632,
"rotX": 0.0164551754,
"rotY": 179.999222,
"rotZ": 0.07971438,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 418,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "0096de",
"Name": "Card",
"Transform": {
"posX": 2.62761736,
"posY": 1.72428536,
"posZ": 26.75869,
"rotX": 0.31849584,
"rotY": 179.936691,
"rotZ": 0.00461178366,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 404,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "888e5f",
"Name": "Card",
"Transform": {
"posX": -0.2219972,
"posY": 1.72122276,
"posZ": 16.6000767,
"rotX": 0.08502816,
"rotY": 179.999908,
"rotZ": 0.221460715,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 416,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "12811e",
"Name": "Card",
"Transform": {
"posX": 13.758338,
"posY": 1.70499229,
"posZ": 16.7101345,
"rotX": 0.0195651073,
"rotY": 180.003784,
"rotZ": 0.07358416,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 420,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "12d325",
"Name": "Card",
"Transform": {
"posX": 14.0803251,
"posY": 1.68099749,
"posZ": 16.8799267,
"rotX": 0.0155889131,
"rotY": 179.999664,
"rotZ": 0.07498034,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 420,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "754bf6",
"Name": "Card",
"Transform": {
"posX": 10.97866,
"posY": 1.54273677,
"posZ": 16.6254883,
"rotX": 0.0140728215,
"rotY": 179.999237,
"rotZ": 0.07896491,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 419,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "888e5f",
"Name": "Card",
"Transform": {
"posX": -0.256284833,
"posY": 1.55826247,
"posZ": 16.7487679,
"rotX": 0.007529891,
"rotY": 179.99942,
"rotZ": 0.07637907,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 416,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "8b1db8",
"Name": "Card",
"Transform": {
"posX": -4.596753,
"posY": 1.73197222,
"posZ": 21.8081017,
"rotX": 0.0173291154,
"rotY": 180.000336,
"rotZ": 0.08404071,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 414,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "685282",
"Name": "Card",
"Transform": {
"posX": 21.011816,
"posY": 1.66931331,
"posZ": 16.4422054,
"rotX": 0.0118572153,
"rotY": 179.99942,
"rotZ": 0.0897286758,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 422,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "1e3729",
"Name": "Card",
"Transform": {
"posX": 20.4512348,
"posY": 1.695544,
"posZ": 16.67592,
"rotX": 0.0186142,
"rotY": 179.989548,
"rotZ": 0.0838763341,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 423,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "81b7ef",
"Name": "Card",
"Transform": {
"posX": 2.638019,
"posY": 1.73434782,
"posZ": 27.0823059,
"rotX": 0.09854927,
"rotY": 180.00412,
"rotZ": 0.0006354895,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 404,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "e7390a",
"Name": "Card",
"Transform": {
"posX": 2.58166718,
"posY": 1.57215965,
"posZ": 27.1352272,
"rotX": 0.189457491,
"rotY": 179.99765,
"rotZ": 1.0403447E-05,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 404,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "8c7f9e",
"Name": "Card",
"Transform": {
"posX": 6.27240467,
"posY": 1.7191608,
"posZ": 27.2882233,
"rotX": 359.866425,
"rotY": 179.99913,
"rotZ": 359.6209,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 403,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "830d62",
"Name": "Card",
"Transform": {
"posX": 24.07619,
"posY": 1.66854453,
"posZ": 16.6294346,
"rotX": -0.00247729267,
"rotY": 179.869781,
"rotZ": 0.07510338,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 423,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "5e870e",
"Name": "Card",
"Transform": {
"posX": -4.25784254,
"posY": 1.57101429,
"posZ": 26.9043255,
"rotX": 0.06794895,
"rotY": 179.996872,
"rotZ": 359.977051,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 400,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "67c951",
"Name": "Card",
"Transform": {
"posX": -0.41292,
"posY": 1.70897567,
"posZ": 21.7253113,
"rotX": 0.02751424,
"rotY": 180.047226,
"rotZ": 0.0881231651,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 413,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "8ef161",
"Name": "Card",
"Transform": {
"posX": 20.9054375,
"posY": 1.528856,
"posZ": 16.4400234,
"rotX": 0.0145325838,
"rotY": 179.999252,
"rotZ": 0.0791051,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 422,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "88fcec",
"Name": "Card",
"Transform": {
"posX": 11.1670322,
"posY": 1.68584549,
"posZ": 16.4735336,
"rotX": 0.0181202851,
"rotY": 179.999542,
"rotZ": 0.0787193552,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 419,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "92a1bd",
"Name": "Card",
"Transform": {
"posX": 10.2499352,
"posY": 1.57138515,
"posZ": 26.98677,
"rotX": 0.968479335,
"rotY": 179.986664,
"rotZ": -0.00386168878,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 402,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "21ee81",
"Name": "Card",
"Transform": {
"posX": 3.06042242,
"posY": 1.70156372,
"posZ": 16.8862171,
"rotX": 359.9722,
"rotY": 179.976089,
"rotZ": 0.01556971,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 417,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "1a6cd1",
"Name": "Card",
"Transform": {
"posX": 13.6834307,
"posY": 1.57142711,
"posZ": 26.9977531,
"rotX": 0.257405579,
"rotY": 179.99736,
"rotZ": 359.988281,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 401,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "e7fe9d",
"Name": "Card",
"Transform": {
"posX": -0.221981153,
"posY": 1.70275962,
"posZ": 16.600111,
"rotX": 0.0672445446,
"rotY": 180.000031,
"rotZ": 0.242339656,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 416,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "744c1e",
"Name": "Card",
"Transform": {
"posX": 6.795649,
"posY": 1.69344962,
"posZ": 16.7397766,
"rotX": 0.0119410809,
"rotY": 179.999054,
"rotZ": 0.07891664,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 418,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "54a6c0",
"Name": "Card",
"Transform": {
"posX": 14.1006975,
"posY": 1.71638906,
"posZ": 26.7519569,
"rotX": 0.5414272,
"rotY": 180.000717,
"rotZ": 0.475966334,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 401,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "e7390a",
"Name": "Card",
"Transform": {
"posX": 2.50973034,
"posY": 1.72384942,
"posZ": 26.9053955,
"rotX": 0.0179477334,
"rotY": 180.021774,
"rotZ": 359.989624,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 404,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "12811e",
"Name": "Card",
"Transform": {
"posX": 14.1203947,
"posY": 1.53835416,
"posZ": 16.5084419,
"rotX": 0.0151017969,
"rotY": 179.999252,
"rotZ": 0.07918029,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 420,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "da8077",
"Name": "Card",
"Transform": {
"posX": -0.7377963,
"posY": 1.56065607,
"posZ": 21.797699,
"rotX": 0.0162061863,
"rotY": 180.066818,
"rotZ": 0.0731087551,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 413,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "4be3b0",
"Name": "Card",
"Transform": {
"posX": -4.070091,
"posY": 1.7104193,
"posZ": 21.8457355,
"rotX": 359.74295,
"rotY": 179.997147,
"rotZ": 0.5136842,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 414,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "5240cf",
"Name": "Card",
"Transform": {
"posX": 2.46611977,
"posY": 1.70471072,
"posZ": 22.0188541,
"rotX": 0.0006968436,
"rotY": 179.9881,
"rotZ": 0.0401921235,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 412,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "7e5108",
"Name": "Card",
"Transform": {
"posX": 2.75252128,
"posY": 1.55583858,
"posZ": 21.9840183,
"rotX": 0.0157414619,
"rotY": 179.989441,
"rotZ": 0.0765208453,
"scaleX": 1.31135309,
"scaleY": 1.0,
"scaleZ": 1.31135309
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.713235259,
"g": 0.713235259,
"b": 0.713235259
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": true,
"Hands": true,
"CardID": 412,
"SidewaysCard": false,
"CustomDeck": {
"1": {
"FaceURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143224/B528277F25C82CD0684BBCD70ECACE0EB6147697/",
"BackURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143305/CF057EF2998B7BAADE59ECAB8DE4798D5CB8340E/",
"NumWidth": 10,
"NumHeight": 3,
"BackIsHidden": false,
"UniqueBack": false,
"Type": 0
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
}
]
}
]
},
{
"GUID": "4c39e9",
"Name": "Custom_Assetbundle",
"Transform": {
"posX": 14.5,
"posY": 1.43,
"posZ": -12.250001,
"rotX": 0.0170068275,
"rotY": 89.98514,
"rotZ": 5.048854E-05,
"scaleX": 0.784739,
"scaleY": 0.179815441,
"scaleZ": 0.512606859
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomAssetbundle": {
"AssetbundleURL": "http://cloud-3.steamusercontent.com/ugc/1842538926671227154/2B2C4B6BA8D8AFCA5A141044A1A16CDD86AEEF60/",
"AssetbundleSecondaryURL": "",
"MaterialIndex": 0,
"TypeIndex": 4,
"LoopingEffectIndex": 0
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"AttachedSnapPoints": [
{
"Position": {
"x": 2.594717,
"y": 0.299999863,
"z": -2.42040563
},
"Rotation": {
"x": -1.35021328E-05,
"y": 90.01486,
"z": 2.29342E-05
}
},
{
"Position": {
"x": 2.56065488,
"y": 0.299999684,
"z": 2.341788
},
"Rotation": {
"x": -1.35021328E-05,
"y": 90.01486,
"z": 2.29342E-05
}
}
]
},
{
"GUID": "e7af12",
"Name": "Custom_Assetbundle",
"Transform": {
"posX": -19.7499828,
"posY": 1.43449867,
"posZ": 12.25,
"rotX": 0.0182224922,
"rotY": 270.000031,
"rotZ": 0.00029827634,
"scaleX": 0.784739,
"scaleY": 0.179815441,
"scaleZ": 0.512606859
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.8509804,
"g": 0.858823538,
"b": 0.313697278
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomAssetbundle": {
"AssetbundleURL": "http://cloud-3.steamusercontent.com/ugc/1842538926671227154/2B2C4B6BA8D8AFCA5A141044A1A16CDD86AEEF60/",
"AssetbundleSecondaryURL": "",
"MaterialIndex": 0,
"TypeIndex": 4,
"LoopingEffectIndex": 0
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"AttachedSnapPoints": [
{
"Position": {
"x": 2.594717,
"y": 0.299999863,
"z": -2.42040563
},
"Rotation": {
"x": -1.52267676E-05,
"y": 270.014862,
"z": 2.56649055E-05
}
},
{
"Position": {
"x": 2.56065488,
"y": 0.299999684,
"z": 2.341788
},
"Rotation": {
"x": -1.52267676E-05,
"y": 270.014862,
"z": 2.56649055E-05
}
}
]
},
{
"GUID": "982d1c",
"Name": "Custom_Assetbundle",
"Transform": {
"posX": 20.2499657,
"posY": 1.43441677,
"posZ": 12.2500019,
"rotX": 359.98288,
"rotY": 270.000031,
"rotZ": 3.7252546E-06,
"scaleX": 0.784739,
"scaleY": 0.179815441,
"scaleZ": 0.512606859
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.5411765,
"g": 0.4391875,
"b": 0.796078444
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomAssetbundle": {
"AssetbundleURL": "http://cloud-3.steamusercontent.com/ugc/1842538926671227154/2B2C4B6BA8D8AFCA5A141044A1A16CDD86AEEF60/",
"AssetbundleSecondaryURL": "",
"MaterialIndex": 0,
"TypeIndex": 4,
"LoopingEffectIndex": 0
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"AttachedSnapPoints": [
{
"Position": {
"x": 2.594717,
"y": 0.299999863,
"z": -2.42040563
},
"Rotation": {
"x": -1.5542666E-05,
"y": 270.014832,
"z": 2.223059E-05
}
},
{
"Position": {
"x": 2.56065488,
"y": 0.299999684,
"z": 2.341788
},
"Rotation": {
"x": -1.55426987E-05,
"y": 270.014862,
"z": 2.22305953E-05
}
}
]
},
{
"GUID": "d70071",
"Name": "Custom_Assetbundle",
"Transform": {
"posX": -14.5,
"posY": 1.43,
"posZ": -12.25,
"rotX": 0.0,
"rotY": 90.0,
"rotZ": 0.0,
"scaleX": 0.78,
"scaleY": 0.179815441,
"scaleZ": 0.512606859
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.8784314,
"g": 0.356834561,
"b": 0.298011035
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomAssetbundle": {
"AssetbundleURL": "http://cloud-3.steamusercontent.com/ugc/1842538926671227154/2B2C4B6BA8D8AFCA5A141044A1A16CDD86AEEF60/",
"AssetbundleSecondaryURL": "",
"MaterialIndex": 0,
"TypeIndex": 4,
"LoopingEffectIndex": 0
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"AttachedSnapPoints": [
{
"Position": {
"x": 2.594717,
"y": 0.299999863,
"z": -2.42040563
},
"Rotation": {
"x": -1.35021328E-05,
"y": 90.01486,
"z": 2.29342E-05
}
},
{
"Position": {
"x": 2.56065488,
"y": 0.299999684,
"z": 2.341788
},
"Rotation": {
"x": -1.35021328E-05,
"y": 90.01486,
"z": 2.29342E-05
}
}
]
},
{
"GUID": "ac9020",
"Name": "Infinite_Bag",
"Transform": {
"posX": 17.0,
"posY": 1.45772994,
"posZ": -1.00000012,
"rotX": -4.12935424E-06,
"rotY": 0.0234841574,
"rotZ": -1.9258157E-06,
"scaleX": 0.7,
"scaleY": 0.7,
"scaleZ": 0.7
},
"Nickname": "Iron",
"Description": "",
"GMNotes": "Iron",
"ColorDiffuse": {
"r": 0.9559999,
"g": 0.3919795,
"b": 0.112979494
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"ContainedObjects": [
{
"GUID": "1b49f9",
"Name": "Custom_Model",
"Transform": {
"posX": 17.0760078,
"posY": 3.0966568,
"posZ": -1.14740682,
"rotX": 351.8687,
"rotY": 0.274864882,
"rotZ": 355.774384,
"scaleX": 0.55,
"scaleY": 0.55,
"scaleZ": 0.55
},
"Nickname": "Iron",
"Description": "",
"GMNotes": "Iron",
"ColorDiffuse": {
"r": 0.9559999,
"g": 0.391997635,
"b": 0.112997629
},
"Tags": [
"iron"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764768421/B8A6C401489F87D67346A5B7C64BFE13EC207EB7/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764772961/EC1CE1E2D5D3E3024B9A7BFB8D5753278E54CE71/",
"NormalURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764776286/1A8995CE735149678ED73402261D7F05A432AF9C/",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 1,
"TypeIndex": 0,
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
}
]
},
{
"GUID": "219821",
"Name": "Bag",
"Transform": {
"posX": -22.0,
"posY": 1.34000278,
"posZ": 2.0,
"rotX": -1.0005224E-07,
"rotY": 0.000200309951,
"rotZ": 3.73525751E-07,
"scaleX": 0.699999869,
"scaleY": 0.699999869,
"scaleZ": 0.699999869
},
"Nickname": "Yellow Links",
"Description": "",
"GMNotes": "Yellow Links",
"ColorDiffuse": {
"r": 1.0,
"g": 0.9254902,
"b": 0.0
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 0,
"Bag": {
"Order": 0
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "3fd996",
"Name": "Bag",
"Transform": {
"posX": -22.0,
"posY": 1.33998334,
"posZ": -1.99999917,
"rotX": -3.935368E-07,
"rotY": -3.10760224E-05,
"rotZ": -2.024377E-06,
"scaleX": 0.699999869,
"scaleY": 0.699999869,
"scaleZ": 0.699999869
},
"Nickname": "Orange Links",
"Description": "",
"GMNotes": "Orange Links",
"ColorDiffuse": {
"r": 0.9559999,
"g": 0.391988724,
"b": 0.112988733
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 0,
"Bag": {
"Order": 0
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "02fb12",
"Name": "Bag",
"Transform": {
"posX": 21.9217529,
"posY": 1.33996892,
"posZ": -2.01818919,
"rotX": 2.80145258E-07,
"rotY": 7.26374537E-06,
"rotZ": -1.24030621E-05,
"scaleX": 0.699999869,
"scaleY": 0.699999869,
"scaleZ": 0.699999869
},
"Nickname": "Teal Links",
"Description": "",
"GMNotes": "Teal Links",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 0,
"Bag": {
"Order": 0
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "0354b2",
"Name": "Bag",
"Transform": {
"posX": 22.0,
"posY": 1.34005046,
"posZ": 1.999999,
"rotX": 1.901192E-05,
"rotY": 0.0157661512,
"rotZ": 8.85885E-06,
"scaleX": 0.699999869,
"scaleY": 0.699999869,
"scaleZ": 0.699999869
},
"Nickname": "Purple Links",
"Description": "",
"GMNotes": "Purple Links",
"ColorDiffuse": {
"r": 0.7072062,
"g": 0.454045236,
"b": 0.8658536
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 0,
"Bag": {
"Order": 0
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "e5d759",
"Name": "Custom_Model_Infinite_Bag",
"Transform": {
"posX": -14.7516479,
"posY": 1.50596845,
"posZ": -0.7722845,
"rotX": 0.0168253332,
"rotY": 179.966858,
"rotZ": 179.995514,
"scaleX": 0.6554328,
"scaleY": 0.8198372,
"scaleZ": 0.6554328
},
"Nickname": "Bronze",
"Description": "",
"GMNotes": "Bronze",
"ColorDiffuse": {
"r": 0.9999998,
"g": 0.992160261,
"b": 0.9999998
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1839158931029135508/DEF0BF91642CF5636724CA3A37083385C810BA06/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/793127180564036984/A8D03C66908F6AF2ACCF6B0711402F76C90B6C81/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 7,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"ContainedObjects": [
{
"GUID": "b047f8",
"Name": "Custom_Tile",
"Transform": {
"posX": -14.749999,
"posY": 1.56852829,
"posZ": -0.749994457,
"rotX": 0.003364951,
"rotY": 359.9871,
"rotZ": 180.0009,
"scaleX": 0.25,
"scaleY": 1.0,
"scaleZ": 0.25
},
"Nickname": "Bronze",
"Description": "",
"GMNotes": "Bronze",
"ColorDiffuse": {
"r": 0.4024308,
"g": 0.290985644,
"b": 0.2138314
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460737160/53C065120E91FFE543D3898A71FBAC6932595593/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 2,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
}
]
},
{
"GUID": "85f55a",
"Name": "Custom_Model_Infinite_Bag",
"Transform": {
"posX": -15.7500772,
"posY": 1.50961626,
"posZ": 0.7500126,
"rotX": 7.30922949E-08,
"rotY": 180.0,
"rotZ": 180.0,
"scaleX": 0.7246458,
"scaleY": 0.906411052,
"scaleZ": 0.7246458
},
"Nickname": "Silver",
"Description": "",
"GMNotes": "Silver",
"ColorDiffuse": {
"r": 0.9999998,
"g": 0.992160261,
"b": 0.9999998
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1839158931029135508/DEF0BF91642CF5636724CA3A37083385C810BA06/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/793127180564022664/7F5A78E376AF72F49022CCED5FDAA6417C45CA5C/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 7,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"ContainedObjects": [
{
"GUID": "1e2881",
"Name": "Custom_Tile",
"Transform": {
"posX": -15.7499971,
"posY": 1.57732618,
"posZ": 0.250000715,
"rotX": 0.000127855659,
"rotY": 359.959534,
"rotZ": 180.000381,
"scaleX": 0.3,
"scaleY": 1.0,
"scaleZ": 0.3
},
"Nickname": "Silver",
"Description": "",
"GMNotes": "Silver",
"ColorDiffuse": {
"r": 0.626494765,
"g": 0.7365696,
"b": 0.862369359
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460735461/EFEE1B42AD448F77EE91EA02154E6770B2CC10F6/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 2,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
}
]
},
{
"GUID": "3e9524",
"Name": "Custom_Model_Infinite_Bag",
"Transform": {
"posX": -13.7417965,
"posY": 1.51821434,
"posZ": 0.7660265,
"rotX": 359.988861,
"rotY": 180.041321,
"rotZ": 180.005966,
"scaleX": 0.886142731,
"scaleY": 1.10841668,
"scaleZ": 0.886142731
},
"Nickname": "Gold",
"Description": "",
"GMNotes": "Gold",
"ColorDiffuse": {
"r": 0.9999998,
"g": 0.992160261,
"b": 0.9999998
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1839158931029135508/DEF0BF91642CF5636724CA3A37083385C810BA06/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/793127180564040049/3AE1B5E974BBDD6EECDCB884A560A4A415E98C7A/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 7,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"ContainedObjects": [
{
"GUID": "ba42ff",
"Name": "Custom_Tile",
"Transform": {
"posX": -13.7500019,
"posY": 1.59797359,
"posZ": 0.7499963,
"rotX": -0.00222618529,
"rotY": 0.0413350873,
"rotZ": 179.99881,
"scaleX": 0.4,
"scaleY": 1.0,
"scaleZ": 0.4
},
"Nickname": "Gold",
"Description": "",
"GMNotes": "Gold",
"ColorDiffuse": {
"r": 0.827526033,
"g": 0.7296775,
"b": 0.448363423
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460731955/529EF7E21EFF215D61709CE5000DD4717E68D5D7/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 2,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
}
]
},
{
"GUID": "24b3dc",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 13.25,
"posY": 1.61,
"posZ": -14.2007446,
"rotX": 0.0,
"rotY": 0.0,
"rotZ": 0.0,
"scaleX": 2.39,
"scaleY": 0.24,
"scaleZ": 3.54
},
"Nickname": "Teal Discard Pile (Left)",
"Description": "",
"GMNotes": "Teal Discard Pile (Left)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "2e028e",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -15.75,
"posY": 1.61,
"posZ": -14.21,
"rotX": 0.0,
"rotY": 0.0,
"rotZ": 0.0,
"scaleX": 2.38890839,
"scaleY": 0.24,
"scaleZ": 3.54
},
"Nickname": "Orange Discard Pile (Left)",
"Description": "",
"GMNotes": "Orange Discard Pile (Left)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "282c08",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -20.97281,
"posY": 1.60806453,
"posZ": 14.1948462,
"rotX": 0.0,
"rotY": 0.0,
"rotZ": 0.0,
"scaleX": 2.38890839,
"scaleY": 0.24,
"scaleZ": 3.542886
},
"Nickname": "Yellow Discard Pile (Left)",
"Description": "",
"GMNotes": "Yellow Discard Pile (Left)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "59dfbc",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 18.9885712,
"posY": 1.60873842,
"posZ": 14.1959915,
"rotX": 0.0,
"rotY": 0.0,
"rotZ": 0.0,
"scaleX": 2.39,
"scaleY": 0.24,
"scaleZ": 3.542886
},
"Nickname": "Purple Discard Pile (Left)",
"Description": "",
"GMNotes": "Purple Discard Pile (Left)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "6c9ecf",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -13.25,
"posY": 1.61,
"posZ": -14.2,
"rotX": 0.0,
"rotY": 0.0,
"rotZ": 0.0,
"scaleX": 2.38890839,
"scaleY": 0.24,
"scaleZ": 3.54
},
"Nickname": "Orange Discard Pile (Right)",
"Description": "",
"GMNotes": "Orange Discard Pile (Right)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "a894b0",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 15.75,
"posY": 1.60798573,
"posZ": -14.1957169,
"rotX": 0.0,
"rotY": 0.0,
"rotZ": 0.0,
"scaleX": 2.39,
"scaleY": 0.24,
"scaleZ": 3.54
},
"Nickname": "Teal Discard Pile (Right)",
"Description": "",
"GMNotes": "Teal Discard Pile (Right)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "03e3a4",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 21.4901428,
"posY": 1.607991,
"posZ": 14.1981668,
"rotX": 0.0,
"rotY": 0.0,
"rotZ": 0.0,
"scaleX": 2.39,
"scaleY": 0.24,
"scaleZ": 3.54
},
"Nickname": "Purple Discard Pile (Right)",
"Description": "",
"GMNotes": "Purple Discard Pile (Right)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "df91cf",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -18.4840183,
"posY": 1.60885608,
"posZ": 14.2100878,
"rotX": 0.0,
"rotY": 0.0,
"rotZ": 0.0,
"scaleX": 2.38890839,
"scaleY": 0.24,
"scaleZ": 3.54
},
"Nickname": "Yellow Discard Pile (Right)",
"Description": "",
"GMNotes": "Yellow Discard Pile (Right)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "753c24",
"Name": "Custom_Model",
"Transform": {
"posX": -11.242918,
"posY": 1.60729551,
"posZ": -1.62001193,
"rotX": 0.172888249,
"rotY": 359.931976,
"rotZ": 0.187522173,
"scaleX": 0.25,
"scaleY": 0.1,
"scaleZ": 0.25
},
"Nickname": "Yellow Income Marker",
"Description": "",
"GMNotes": "Yellow Income Marker",
"ColorDiffuse": {
"r": 0.8627451,
"g": 0.854901969,
"b": 0.24702251
},
"Tags": [
"income_marker"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/966471447497603343/CDD6C9A2EA36162A210730E3155710953FFFD952/",
"DiffuseURL": "",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 0,
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "b1dbec",
"Name": "Custom_Model",
"Transform": {
"posX": -11.2483759,
"posY": 1.70936251,
"posZ": -1.617311,
"rotX": 0.1294662,
"rotY": 359.8945,
"rotZ": 0.0597957,
"scaleX": 0.25,
"scaleY": 0.1,
"scaleZ": 0.25
},
"Nickname": "Teal Income Marker",
"Description": "",
"GMNotes": "Teal Income Marker",
"ColorDiffuse": {
"r": 0.7921569,
"g": 0.858823538,
"b": 0.8627451
},
"Tags": [
"income_marker"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/966471447497603343/CDD6C9A2EA36162A210730E3155710953FFFD952/",
"DiffuseURL": "",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 0,
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "479c68",
"Name": "Custom_Model",
"Transform": {
"posX": -11.2501183,
"posY": 1.91356981,
"posZ": -1.60747659,
"rotX": 359.912872,
"rotY": 89.77961,
"rotZ": 180.231476,
"scaleX": 0.25,
"scaleY": 0.1,
"scaleZ": 0.25
},
"Nickname": "Purple Income Marker",
"Description": "",
"GMNotes": "Purple Income Marker",
"ColorDiffuse": {
"r": 0.5490196,
"g": 0.4470588,
"b": 0.796078444
},
"Tags": [
"income_marker"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/966471447497603343/CDD6C9A2EA36162A210730E3155710953FFFD952/",
"DiffuseURL": "",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 0,
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "42742a",
"Name": "Custom_Model",
"Transform": {
"posX": -11.2458248,
"posY": 1.60844612,
"posZ": -1.6149497,
"rotX": 0.07348098,
"rotY": 180.019943,
"rotZ": 179.911743,
"scaleX": 0.25,
"scaleY": 0.1,
"scaleZ": 0.25
},
"Nickname": "Orange Income Marker",
"Description": "",
"GMNotes": "Orange Income Marker",
"ColorDiffuse": {
"r": 0.8784314,
"g": 0.443123162,
"b": 0.30194667
},
"Tags": [
"income_marker"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/966471447497603343/CDD6C9A2EA36162A210730E3155710953FFFD952/",
"DiffuseURL": "",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 0,
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "a40e5c",
"Name": "Custom_Model_Bag",
"Transform": {
"posX": 14.0,
"posY": 1.5778625,
"posZ": -8.19831E-10,
"rotX": -3.6350233E-08,
"rotY": 179.999374,
"rotZ": 7.406441E-07,
"scaleX": 1.25,
"scaleY": 1.25,
"scaleZ": 1.25
},
"Nickname": "Removed from Game",
"Description": "",
"GMNotes": "Removed from Game",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 0,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1839158931029143156/BFF258FC90A0E56581C5C302752CF67C4947A540/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1502467941174865405/F21AAA35FD74B3B6AD17B6146035DBB908744ED7/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 6,
"CustomShader": {
"SpecularColor": {
"r": 0.09794083,
"g": 0.09794083,
"b": 0.09794083
},
"SpecularIntensity": 3.0,
"SpecularSharpness": 7.0333333,
"FresnelStrength": 0.316666663
},
"CastShadows": true
},
"Bag": {
"Order": 0
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"AttachedSnapPoints": [
{
"Position": {
"x": -0.0198343713,
"y": 0.0865869746,
"z": -0.03991696
}
}
]
},
{
"GUID": "2b73b5",
"Name": "Custom_Tile",
"Transform": {
"posX": 1.49809706,
"posY": 1.76739109,
"posZ": 29.5173054,
"rotX": 359.825745,
"rotY": 180.262665,
"rotZ": 359.84436,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Purple Railway",
"GMNotes": "Purple Railway",
"ColorDiffuse": {
"r": 0.545097947,
"g": 0.443129838,
"b": 0.796078444
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460998536/A91C1F1A218FEB96BC71A98F83FE1121011FD37B/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"States": {
"1": {
"GUID": "55d291",
"Name": "Custom_Tile",
"Transform": {
"posX": 28.23473,
"posY": 1.46963012,
"posZ": 1.47876251,
"rotX": -4.514971E-07,
"rotY": 179.9983,
"rotZ": 1.645947E-07,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Purple Railway",
"GMNotes": "Purple Railway",
"ColorDiffuse": {
"r": 0.545097947,
"g": 0.4431338,
"b": 0.796078444
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460998536/A91C1F1A218FEB96BC71A98F83FE1121011FD37B/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "1",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"10": {
"GUID": "5b8510",
"Name": "Custom_Tile",
"Transform": {
"posX": -29.6341763,
"posY": 1.57059669,
"posZ": 9.436537,
"rotX": 1.36080232E-07,
"rotY": 179.999985,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Purple Railway",
"GMNotes": "Purple Railway",
"ColorDiffuse": {
"r": 0.545097947,
"g": 0.443134159,
"b": 0.796078444
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460998536/A91C1F1A218FEB96BC71A98F83FE1121011FD37B/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "10",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"11": {
"GUID": "34d4b6",
"Name": "Custom_Tile",
"Transform": {
"posX": -29.48536,
"posY": 1.57059669,
"posZ": 9.95360851,
"rotX": -1.63758959E-05,
"rotY": 180.171982,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Purple Railway",
"GMNotes": "Purple Railway",
"ColorDiffuse": {
"r": 0.545097947,
"g": 0.443134159,
"b": 0.796078444
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460998536/A91C1F1A218FEB96BC71A98F83FE1121011FD37B/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "11",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"12": {
"GUID": "aaa007",
"Name": "Custom_Tile",
"Transform": {
"posX": 28.23473,
"posY": 1.46963012,
"posZ": 1.47876251,
"rotX": -4.514971E-07,
"rotY": 179.9983,
"rotZ": 1.645947E-07,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Purple Railway",
"GMNotes": "Purple Railway",
"ColorDiffuse": {
"r": 0.545097947,
"g": 0.4431338,
"b": 0.796078444
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460998536/A91C1F1A218FEB96BC71A98F83FE1121011FD37B/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "12",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"2": {
"GUID": "4b7d6f",
"Name": "Custom_Tile",
"Transform": {
"posX": -29.9454536,
"posY": 1.57059669,
"posZ": 4.30146,
"rotX": 1.092213E-08,
"rotY": 180.000015,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Purple Railway",
"GMNotes": "Purple Railway",
"ColorDiffuse": {
"r": 0.545097947,
"g": 0.443134159,
"b": 0.796078444
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460998536/A91C1F1A218FEB96BC71A98F83FE1121011FD37B/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "2",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"3": {
"GUID": "2bd601",
"Name": "Custom_Tile",
"Transform": {
"posX": -29.7207241,
"posY": 1.57059669,
"posZ": 4.863211,
"rotX": 9.19557852E-09,
"rotY": 180.000015,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Purple Railway",
"GMNotes": "Purple Railway",
"ColorDiffuse": {
"r": 0.545097947,
"g": 0.443134159,
"b": 0.796078444
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460998536/A91C1F1A218FEB96BC71A98F83FE1121011FD37B/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "3",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"4": {
"GUID": "7cc957",
"Name": "Custom_Tile",
"Transform": {
"posX": -29.8461781,
"posY": 1.57059669,
"posZ": 5.614671,
"rotX": -2.156754E-07,
"rotY": 180.0,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Purple Railway",
"GMNotes": "Purple Railway",
"ColorDiffuse": {
"r": 0.545097947,
"g": 0.443134159,
"b": 0.796078444
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460998536/A91C1F1A218FEB96BC71A98F83FE1121011FD37B/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "4",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"5": {
"GUID": "7b9e2c",
"Name": "Custom_Tile",
"Transform": {
"posX": -29.6603661,
"posY": 1.57059669,
"posZ": 6.1837635,
"rotX": 9.803997E-06,
"rotY": 180.012054,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Purple Railway",
"GMNotes": "Purple Railway",
"ColorDiffuse": {
"r": 0.545097947,
"g": 0.443134159,
"b": 0.796078444
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460998536/A91C1F1A218FEB96BC71A98F83FE1121011FD37B/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "5",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"6": {
"GUID": "f866f0",
"Name": "Custom_Tile",
"Transform": {
"posX": -29.77778,
"posY": 1.57059669,
"posZ": 6.81037235,
"rotX": 1.74662773E-07,
"rotY": 180.000061,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Purple Railway",
"GMNotes": "Purple Railway",
"ColorDiffuse": {
"r": 0.545097947,
"g": 0.443134159,
"b": 0.796078444
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460998536/A91C1F1A218FEB96BC71A98F83FE1121011FD37B/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "6",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"7": {
"GUID": "0a3912",
"Name": "Custom_Tile",
"Transform": {
"posX": -29.6529846,
"posY": 1.57059669,
"posZ": 7.44253635,
"rotX": 1.60447868E-07,
"rotY": 180.000061,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Purple Railway",
"GMNotes": "Purple Railway",
"ColorDiffuse": {
"r": 0.545097947,
"g": 0.443134159,
"b": 0.796078444
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460998536/A91C1F1A218FEB96BC71A98F83FE1121011FD37B/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "7",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"8": {
"GUID": "cdf94a",
"Name": "Custom_Tile",
"Transform": {
"posX": -29.7784386,
"posY": 1.57059669,
"posZ": 8.19399452,
"rotX": 2.78040119E-07,
"rotY": 180.000046,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Purple Railway",
"GMNotes": "Purple Railway",
"ColorDiffuse": {
"r": 0.545097947,
"g": 0.443134159,
"b": 0.796078444
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460998536/A91C1F1A218FEB96BC71A98F83FE1121011FD37B/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "8",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"9": {
"GUID": "1c9180",
"Name": "Custom_Tile",
"Transform": {
"posX": -29.553709,
"posY": 1.57059669,
"posZ": 8.755747,
"rotX": 1.40472252E-07,
"rotY": 180.000061,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Purple Railway",
"GMNotes": "Purple Railway",
"ColorDiffuse": {
"r": 0.545097947,
"g": 0.443134159,
"b": 0.796078444
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460998536/A91C1F1A218FEB96BC71A98F83FE1121011FD37B/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "9",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
}
},
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
{
"GUID": "b8d1b6",
"Name": "Custom_Tile",
"Transform": {
"posX": -1.49740791,
"posY": 1.66789889,
"posZ": 29.4923573,
"rotX": 0.120509364,
"rotY": 180.248291,
"rotZ": 0.09528317,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Teal Canal",
"GMNotes": "Teal Canal",
"ColorDiffuse": {
"r": 0.7921569,
"g": 0.858823538,
"b": 0.8627451
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460993538/67263744174818602E0B42E51D40526A3A6C17E9/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"States": {
"1": {
"GUID": "b3b366",
"Name": "Custom_Tile",
"Transform": {
"posX": 25.85923,
"posY": 1.56963038,
"posZ": -0.988040149,
"rotX": -5.693374E-07,
"rotY": 179.998734,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Teal Canal",
"GMNotes": "Teal Canal",
"ColorDiffuse": {
"r": 0.4392122,
"g": 0.768627465,
"b": 0.721568644
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460993538/67263744174818602E0B42E51D40526A3A6C17E9/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "1",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"10": {
"GUID": "a3f4be",
"Name": "Custom_Tile",
"Transform": {
"posX": -28.3988914,
"posY": 1.57059574,
"posZ": 9.214216,
"rotX": 0.0553147048,
"rotY": 179.733032,
"rotZ": 179.99968,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Teal Canal",
"GMNotes": "Teal Canal",
"ColorDiffuse": {
"r": 0.439212561,
"g": 0.768627465,
"b": 0.721568644
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460993538/67263744174818602E0B42E51D40526A3A6C17E9/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "10",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"11": {
"GUID": "7f19f3",
"Name": "Custom_Tile",
"Transform": {
"posX": -28.261919,
"posY": 1.570597,
"posZ": 9.615518,
"rotX": 359.9448,
"rotY": 180.101746,
"rotZ": 180.000381,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Teal Canal",
"GMNotes": "Teal Canal",
"ColorDiffuse": {
"r": 0.439212561,
"g": 0.768627465,
"b": 0.721568644
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460993538/67263744174818602E0B42E51D40526A3A6C17E9/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "11",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"12": {
"GUID": "aaa004",
"Name": "Custom_Tile",
"Transform": {
"posX": 25.85923,
"posY": 1.56963038,
"posZ": -0.988040149,
"rotX": -5.693374E-07,
"rotY": 179.998734,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Teal Canal",
"GMNotes": "Teal Canal",
"ColorDiffuse": {
"r": 0.4392122,
"g": 0.768627465,
"b": 0.721568644
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460993538/67263744174818602E0B42E51D40526A3A6C17E9/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "12",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"2": {
"GUID": "6a54d3",
"Name": "Custom_Tile",
"Transform": {
"posX": -28.44868,
"posY": 1.57059669,
"posZ": 4.24847174,
"rotX": 6.176111E-08,
"rotY": 180.00766,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Teal Canal",
"GMNotes": "Teal Canal",
"ColorDiffuse": {
"r": 0.439212561,
"g": 0.768627465,
"b": 0.721568644
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460993538/67263744174818602E0B42E51D40526A3A6C17E9/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "2",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"3": {
"GUID": "32d5b5",
"Name": "Custom_Tile",
"Transform": {
"posX": -28.322361,
"posY": 1.57059669,
"posZ": 4.83331156,
"rotX": -1.36551961E-07,
"rotY": 180.007721,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Teal Canal",
"GMNotes": "Teal Canal",
"ColorDiffuse": {
"r": 0.439212561,
"g": 0.768627465,
"b": 0.721568644
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460993538/67263744174818602E0B42E51D40526A3A6C17E9/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "3",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"4": {
"GUID": "d85e31",
"Name": "Custom_Tile",
"Transform": {
"posX": -28.3709087,
"posY": 1.57059669,
"posZ": 5.53222275,
"rotX": -7.77055E-08,
"rotY": 179.976273,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Teal Canal",
"GMNotes": "Teal Canal",
"ColorDiffuse": {
"r": 0.439212561,
"g": 0.768627465,
"b": 0.721568644
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460993538/67263744174818602E0B42E51D40526A3A6C17E9/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "4",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"5": {
"GUID": "bb2532",
"Name": "Custom_Tile",
"Transform": {
"posX": -28.2424088,
"posY": 1.57059669,
"posZ": 5.983337,
"rotX": 1.39513674E-07,
"rotY": 180.165375,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Teal Canal",
"GMNotes": "Teal Canal",
"ColorDiffuse": {
"r": 0.439212561,
"g": 0.768627465,
"b": 0.721568644
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460993538/67263744174818602E0B42E51D40526A3A6C17E9/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "5",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"6": {
"GUID": "a6e252",
"Name": "Custom_Tile",
"Transform": {
"posX": -28.2825279,
"posY": 1.57059669,
"posZ": 6.58109856,
"rotX": 3.22508981E-07,
"rotY": 180.00769,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Teal Canal",
"GMNotes": "Teal Canal",
"ColorDiffuse": {
"r": 0.439212561,
"g": 0.768627465,
"b": 0.721568644
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460993538/67263744174818602E0B42E51D40526A3A6C17E9/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "6",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"7": {
"GUID": "c5ee73",
"Name": "Custom_Tile",
"Transform": {
"posX": -28.42875,
"posY": 1.57059669,
"posZ": 7.29774475,
"rotX": 2.23304166E-08,
"rotY": 180.00769,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Teal Canal",
"GMNotes": "Teal Canal",
"ColorDiffuse": {
"r": 0.439212561,
"g": 0.768627465,
"b": 0.721568644
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460993538/67263744174818602E0B42E51D40526A3A6C17E9/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "7",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"8": {
"GUID": "4f62a8",
"Name": "Custom_Tile",
"Transform": {
"posX": -28.47743,
"posY": 1.57059669,
"posZ": 7.9962163,
"rotX": 1.750554E-07,
"rotY": 180.00766,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Teal Canal",
"GMNotes": "Teal Canal",
"ColorDiffuse": {
"r": 0.439212561,
"g": 0.768627465,
"b": 0.721568644
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460993538/67263744174818602E0B42E51D40526A3A6C17E9/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "8",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"9": {
"GUID": "eec7a0",
"Name": "Custom_Tile",
"Transform": {
"posX": -28.35111,
"posY": 1.57059669,
"posZ": 8.581057,
"rotX": 5.09172935E-08,
"rotY": 180.00769,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Teal Canal",
"GMNotes": "Teal Canal",
"ColorDiffuse": {
"r": 0.439212561,
"g": 0.768627465,
"b": 0.721568644
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460993538/67263744174818602E0B42E51D40526A3A6C17E9/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "9",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
}
},
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
{
"GUID": "ea9667",
"Name": "Custom_Tile",
"Transform": {
"posX": 1.49961948,
"posY": 1.66792,
"posZ": 29.5116787,
"rotX": 359.864227,
"rotY": 180.3144,
"rotZ": 359.887726,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Teal Railway",
"GMNotes": "Teal Railway",
"ColorDiffuse": {
"r": 0.7921569,
"g": 0.858823538,
"b": 0.8627451
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460999167/DE363AFC913B8B8331804D15A8868862BA584DB3/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"States": {
"1": {
"GUID": "5a4ec8",
"Name": "Custom_Tile",
"Transform": {
"posX": 27.3876,
"posY": 1.46963048,
"posZ": -1.04074037,
"rotX": 1.04609747E-07,
"rotY": 180.0,
"rotZ": 2.84601441E-07,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Teal Railway",
"GMNotes": "Teal Railway",
"ColorDiffuse": {
"r": 0.4392122,
"g": 0.768627465,
"b": 0.721568644
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460999167/DE363AFC913B8B8331804D15A8868862BA584DB3/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "1",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"10": {
"GUID": "a3f4be",
"Name": "Custom_Tile",
"Transform": {
"posX": -28.3988914,
"posY": 1.57059574,
"posZ": 9.214216,
"rotX": 0.0553147048,
"rotY": 179.733032,
"rotZ": 179.99968,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Teal Railway",
"GMNotes": "Teal Railway",
"ColorDiffuse": {
"r": 0.439212561,
"g": 0.768627465,
"b": 0.721568644
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460999167/DE363AFC913B8B8331804D15A8868862BA584DB3/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "10",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"11": {
"GUID": "7f19f3",
"Name": "Custom_Tile",
"Transform": {
"posX": -28.261919,
"posY": 1.570597,
"posZ": 9.615518,
"rotX": 359.9448,
"rotY": 180.101746,
"rotZ": 180.000381,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Teal Railway",
"GMNotes": "Teal Railway",
"ColorDiffuse": {
"r": 0.439212561,
"g": 0.768627465,
"b": 0.721568644
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460999167/DE363AFC913B8B8331804D15A8868862BA584DB3/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "11",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"12": {
"GUID": "aaa005",
"Name": "Custom_Tile",
"Transform": {
"posX": 27.3876,
"posY": 1.46963048,
"posZ": -1.04074037,
"rotX": 1.04609747E-07,
"rotY": 180.0,
"rotZ": 2.84601441E-07,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Teal Railway",
"GMNotes": "Teal Railway",
"ColorDiffuse": {
"r": 0.4392122,
"g": 0.768627465,
"b": 0.721568644
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460999167/DE363AFC913B8B8331804D15A8868862BA584DB3/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "12",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"2": {
"GUID": "6a54d3",
"Name": "Custom_Tile",
"Transform": {
"posX": -28.44868,
"posY": 1.57059669,
"posZ": 4.24847174,
"rotX": 6.176111E-08,
"rotY": 180.00766,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Teal Railway",
"GMNotes": "Teal Railway",
"ColorDiffuse": {
"r": 0.439212561,
"g": 0.768627465,
"b": 0.721568644
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460999167/DE363AFC913B8B8331804D15A8868862BA584DB3/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "2",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"3": {
"GUID": "32d5b5",
"Name": "Custom_Tile",
"Transform": {
"posX": -28.322361,
"posY": 1.57059669,
"posZ": 4.83331156,
"rotX": -1.36551961E-07,
"rotY": 180.007721,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Teal Railway",
"GMNotes": "Teal Railway",
"ColorDiffuse": {
"r": 0.439212561,
"g": 0.768627465,
"b": 0.721568644
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460999167/DE363AFC913B8B8331804D15A8868862BA584DB3/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "3",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"4": {
"GUID": "d85e31",
"Name": "Custom_Tile",
"Transform": {
"posX": -28.3709087,
"posY": 1.57059669,
"posZ": 5.53222275,
"rotX": -7.77055E-08,
"rotY": 179.976273,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Teal Railway",
"GMNotes": "Teal Railway",
"ColorDiffuse": {
"r": 0.439212561,
"g": 0.768627465,
"b": 0.721568644
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460999167/DE363AFC913B8B8331804D15A8868862BA584DB3/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "4",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"5": {
"GUID": "bb2532",
"Name": "Custom_Tile",
"Transform": {
"posX": -28.2424088,
"posY": 1.57059669,
"posZ": 5.983337,
"rotX": 1.39513674E-07,
"rotY": 180.165375,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Teal Railway",
"GMNotes": "Teal Railway",
"ColorDiffuse": {
"r": 0.439212561,
"g": 0.768627465,
"b": 0.721568644
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460999167/DE363AFC913B8B8331804D15A8868862BA584DB3/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "5",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"6": {
"GUID": "a6e252",
"Name": "Custom_Tile",
"Transform": {
"posX": -28.2825279,
"posY": 1.57059669,
"posZ": 6.58109856,
"rotX": 3.22508981E-07,
"rotY": 180.00769,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Teal Railway",
"GMNotes": "Teal Railway",
"ColorDiffuse": {
"r": 0.439212561,
"g": 0.768627465,
"b": 0.721568644
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460999167/DE363AFC913B8B8331804D15A8868862BA584DB3/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "6",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"7": {
"GUID": "c5ee73",
"Name": "Custom_Tile",
"Transform": {
"posX": -28.42875,
"posY": 1.57059669,
"posZ": 7.29774475,
"rotX": 2.23304166E-08,
"rotY": 180.00769,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Teal Railway",
"GMNotes": "Teal Railway",
"ColorDiffuse": {
"r": 0.439212561,
"g": 0.768627465,
"b": 0.721568644
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460999167/DE363AFC913B8B8331804D15A8868862BA584DB3/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "7",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"8": {
"GUID": "4f62a8",
"Name": "Custom_Tile",
"Transform": {
"posX": -28.47743,
"posY": 1.57059669,
"posZ": 7.9962163,
"rotX": 1.750554E-07,
"rotY": 180.00766,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Teal Railway",
"GMNotes": "Teal Railway",
"ColorDiffuse": {
"r": 0.439212561,
"g": 0.768627465,
"b": 0.721568644
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460999167/DE363AFC913B8B8331804D15A8868862BA584DB3/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "8",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"9": {
"GUID": "eec7a0",
"Name": "Custom_Tile",
"Transform": {
"posX": -28.35111,
"posY": 1.57059669,
"posZ": 8.581057,
"rotX": 5.09172935E-08,
"rotY": 180.00769,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Teal Railway",
"GMNotes": "Teal Railway",
"ColorDiffuse": {
"r": 0.439212561,
"g": 0.768627465,
"b": 0.721568644
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460999167/DE363AFC913B8B8331804D15A8868862BA584DB3/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "9",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
}
},
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
{
"GUID": "e808b2",
"Name": "Custom_Tile",
"Transform": {
"posX": -1.49946666,
"posY": 1.46946418,
"posZ": 29.49926,
"rotX": 0.0154820047,
"rotY": 180.0324,
"rotZ": 0.0267347153,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Yellow Canal",
"GMNotes": "Yellow Canal",
"ColorDiffuse": {
"r": 0.8627451,
"g": 0.854901969,
"b": 0.243130147
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460992600/6C13B277AAB4121D49A81F6FCB8AAD854D3841A4/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"States": {
"1": {
"GUID": "d427a4",
"Name": "Custom_Tile",
"Transform": {
"posX": -26.9323139,
"posY": 1.56962991,
"posZ": 1.544671,
"rotX": -9.613598E-07,
"rotY": 180.000015,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Yellow Canal",
"GMNotes": "Yellow Canal",
"ColorDiffuse": {
"r": 0.8627451,
"g": 0.854901969,
"b": 0.243133664
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460992600/6C13B277AAB4121D49A81F6FCB8AAD854D3841A4/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "1",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"10": {
"GUID": "83551f",
"Name": "Custom_Tile",
"Transform": {
"posX": -25.0645885,
"posY": 1.57059669,
"posZ": 9.410809,
"rotX": -1.09006365E-07,
"rotY": 179.989441,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Yellow Canal",
"GMNotes": "Yellow Canal",
"ColorDiffuse": {
"r": 0.8627451,
"g": 0.854901969,
"b": 0.243134141
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460992600/6C13B277AAB4121D49A81F6FCB8AAD854D3841A4/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "10",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"11": {
"GUID": "060c2d",
"Name": "Custom_Tile",
"Transform": {
"posX": -24.999094,
"posY": 1.57059669,
"posZ": 10.066184,
"rotX": 4.040803E-07,
"rotY": 179.98941,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Yellow Canal",
"GMNotes": "Yellow Canal",
"ColorDiffuse": {
"r": 0.8627451,
"g": 0.854901969,
"b": 0.243134141
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460992600/6C13B277AAB4121D49A81F6FCB8AAD854D3841A4/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "11",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"12": {
"GUID": "aaa000",
"Name": "Custom_Tile",
"Transform": {
"posX": -26.9323139,
"posY": 1.56962991,
"posZ": 1.544671,
"rotX": -9.613598E-07,
"rotY": 180.000015,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Yellow Canal",
"GMNotes": "Yellow Canal",
"ColorDiffuse": {
"r": 0.8627451,
"g": 0.854901969,
"b": 0.243133664
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460992600/6C13B277AAB4121D49A81F6FCB8AAD854D3841A4/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "12",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"2": {
"GUID": "b0474b",
"Name": "Custom_Tile",
"Transform": {
"posX": -25.75804,
"posY": 1.57059669,
"posZ": 3.4420352,
"rotX": -3.7228466E-07,
"rotY": 179.989456,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Yellow Canal",
"GMNotes": "Yellow Canal",
"ColorDiffuse": {
"r": 0.8627451,
"g": 0.854901969,
"b": 0.243134141
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460992600/6C13B277AAB4121D49A81F6FCB8AAD854D3841A4/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "2",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"3": {
"GUID": "d6abb3",
"Name": "Custom_Tile",
"Transform": {
"posX": -25.5784626,
"posY": 1.57059669,
"posZ": 4.622808,
"rotX": -4.884251E-07,
"rotY": 179.989456,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Yellow Canal",
"GMNotes": "Yellow Canal",
"ColorDiffuse": {
"r": 0.8627451,
"g": 0.854901969,
"b": 0.243134141
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460992600/6C13B277AAB4121D49A81F6FCB8AAD854D3841A4/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "3",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"4": {
"GUID": "695bd5",
"Name": "Custom_Tile",
"Transform": {
"posX": -25.5113945,
"posY": 1.57059669,
"posZ": 5.270701,
"rotX": -2.60839357E-07,
"rotY": 179.989441,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Yellow Canal",
"GMNotes": "Yellow Canal",
"ColorDiffuse": {
"r": 0.8627451,
"g": 0.854901969,
"b": 0.243134141
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460992600/6C13B277AAB4121D49A81F6FCB8AAD854D3841A4/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "4",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"5": {
"GUID": "e0a7b6",
"Name": "Custom_Tile",
"Transform": {
"posX": -25.4538918,
"posY": 1.57059669,
"posZ": 6.04877138,
"rotX": -1.32262869E-07,
"rotY": 179.989441,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Yellow Canal",
"GMNotes": "Yellow Canal",
"ColorDiffuse": {
"r": 0.8627451,
"g": 0.854901969,
"b": 0.243134141
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460992600/6C13B277AAB4121D49A81F6FCB8AAD854D3841A4/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "5",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"6": {
"GUID": "d3627d",
"Name": "Custom_Tile",
"Transform": {
"posX": -25.3788319,
"posY": 1.57059669,
"posZ": 6.57396936,
"rotX": -1.14996823E-07,
"rotY": 179.989441,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Yellow Canal",
"GMNotes": "Yellow Canal",
"ColorDiffuse": {
"r": 0.8627451,
"g": 0.854901969,
"b": 0.243134141
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460992600/6C13B277AAB4121D49A81F6FCB8AAD854D3841A4/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "6",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"7": {
"GUID": "120e8a",
"Name": "Custom_Tile",
"Transform": {
"posX": -25.3112335,
"posY": 1.57059669,
"posZ": 7.582143,
"rotX": -1.80814368E-07,
"rotY": 179.989487,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Yellow Canal",
"GMNotes": "Yellow Canal",
"ColorDiffuse": {
"r": 0.8627451,
"g": 0.854901969,
"b": 0.243134141
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460992600/6C13B277AAB4121D49A81F6FCB8AAD854D3841A4/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "7",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"8": {
"GUID": "707abe",
"Name": "Custom_Tile",
"Transform": {
"posX": -25.2441654,
"posY": 1.57059669,
"posZ": 8.230036,
"rotX": -3.14448641E-07,
"rotY": 179.989441,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Yellow Canal",
"GMNotes": "Yellow Canal",
"ColorDiffuse": {
"r": 0.8627451,
"g": 0.854901969,
"b": 0.243134141
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460992600/6C13B277AAB4121D49A81F6FCB8AAD854D3841A4/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "8",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"9": {
"GUID": "9c281c",
"Name": "Custom_Tile",
"Transform": {
"posX": -25.1316566,
"posY": 1.57059669,
"posZ": 8.762916,
"rotX": -3.19893559E-07,
"rotY": 179.98941,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Yellow Canal",
"GMNotes": "Yellow Canal",
"ColorDiffuse": {
"r": 0.8627451,
"g": 0.854901969,
"b": 0.243134141
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460992600/6C13B277AAB4121D49A81F6FCB8AAD854D3841A4/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "9",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
}
},
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
{
"GUID": "80c4b1",
"Name": "Custom_Tile",
"Transform": {
"posX": 1.500483,
"posY": 1.46942031,
"posZ": 29.5003986,
"rotX": 0.01770272,
"rotY": 180.055725,
"rotZ": 0.0335163921,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Yellow Railway",
"GMNotes": "Yellow Railway",
"ColorDiffuse": {
"r": 0.8627451,
"g": 0.854901969,
"b": 0.243130147
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460997864/BC1407C0369F6E68EA58301AB8F352E119C232E5/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"States": {
"1": {
"GUID": "b26d34",
"Name": "Custom_Tile",
"Transform": {
"posX": -25.4180546,
"posY": 1.46962988,
"posZ": 1.488553,
"rotX": -1.00197576E-06,
"rotY": 180.000122,
"rotZ": -6.49725749E-08,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Yellow Railway",
"GMNotes": "Yellow Railway",
"ColorDiffuse": {
"r": 0.8627451,
"g": 0.854901969,
"b": 0.243134111
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460997864/BC1407C0369F6E68EA58301AB8F352E119C232E5/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "1",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"10": {
"GUID": "83551f",
"Name": "Custom_Tile",
"Transform": {
"posX": -25.0645885,
"posY": 1.57059669,
"posZ": 9.410809,
"rotX": -1.09006365E-07,
"rotY": 179.989441,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Yellow Railway",
"GMNotes": "Yellow Railway",
"ColorDiffuse": {
"r": 0.8627451,
"g": 0.854901969,
"b": 0.243134141
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460997864/BC1407C0369F6E68EA58301AB8F352E119C232E5/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "10",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"11": {
"GUID": "060c2d",
"Name": "Custom_Tile",
"Transform": {
"posX": -24.999094,
"posY": 1.57059669,
"posZ": 10.066184,
"rotX": 4.040803E-07,
"rotY": 179.98941,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Yellow Railway",
"GMNotes": "Yellow Railway",
"ColorDiffuse": {
"r": 0.8627451,
"g": 0.854901969,
"b": 0.243134141
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460997864/BC1407C0369F6E68EA58301AB8F352E119C232E5/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "11",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"12": {
"GUID": "aaa001",
"Name": "Custom_Tile",
"Transform": {
"posX": -25.4180546,
"posY": 1.46962988,
"posZ": 1.488553,
"rotX": -1.00197576E-06,
"rotY": 180.000122,
"rotZ": -6.49725749E-08,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Yellow Railway",
"GMNotes": "Yellow Railway",
"ColorDiffuse": {
"r": 0.8627451,
"g": 0.854901969,
"b": 0.243134111
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460997864/BC1407C0369F6E68EA58301AB8F352E119C232E5/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "12",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"2": {
"GUID": "b0474b",
"Name": "Custom_Tile",
"Transform": {
"posX": -25.75804,
"posY": 1.57059669,
"posZ": 3.4420352,
"rotX": -3.7228466E-07,
"rotY": 179.989456,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Yellow Railway",
"GMNotes": "Yellow Railway",
"ColorDiffuse": {
"r": 0.8627451,
"g": 0.854901969,
"b": 0.243134141
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460997864/BC1407C0369F6E68EA58301AB8F352E119C232E5/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "2",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"3": {
"GUID": "d6abb3",
"Name": "Custom_Tile",
"Transform": {
"posX": -25.5784626,
"posY": 1.57059669,
"posZ": 4.622808,
"rotX": -4.884251E-07,
"rotY": 179.989456,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Yellow Railway",
"GMNotes": "Yellow Railway",
"ColorDiffuse": {
"r": 0.8627451,
"g": 0.854901969,
"b": 0.243134141
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460997864/BC1407C0369F6E68EA58301AB8F352E119C232E5/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "3",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"4": {
"GUID": "695bd5",
"Name": "Custom_Tile",
"Transform": {
"posX": -25.5113945,
"posY": 1.57059669,
"posZ": 5.270701,
"rotX": -2.60839357E-07,
"rotY": 179.989441,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Yellow Railway",
"GMNotes": "Yellow Railway",
"ColorDiffuse": {
"r": 0.8627451,
"g": 0.854901969,
"b": 0.243134141
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460997864/BC1407C0369F6E68EA58301AB8F352E119C232E5/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "4",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"5": {
"GUID": "e0a7b6",
"Name": "Custom_Tile",
"Transform": {
"posX": -25.4538918,
"posY": 1.57059669,
"posZ": 6.04877138,
"rotX": -1.32262869E-07,
"rotY": 179.989441,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Yellow Railway",
"GMNotes": "Yellow Railway",
"ColorDiffuse": {
"r": 0.8627451,
"g": 0.854901969,
"b": 0.243134141
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460997864/BC1407C0369F6E68EA58301AB8F352E119C232E5/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "5",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"6": {
"GUID": "d3627d",
"Name": "Custom_Tile",
"Transform": {
"posX": -25.3788319,
"posY": 1.57059669,
"posZ": 6.57396936,
"rotX": -1.14996823E-07,
"rotY": 179.989441,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Yellow Railway",
"GMNotes": "Yellow Railway",
"ColorDiffuse": {
"r": 0.8627451,
"g": 0.854901969,
"b": 0.243134141
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460997864/BC1407C0369F6E68EA58301AB8F352E119C232E5/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "6",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"7": {
"GUID": "120e8a",
"Name": "Custom_Tile",
"Transform": {
"posX": -25.3112335,
"posY": 1.57059669,
"posZ": 7.582143,
"rotX": -1.80814368E-07,
"rotY": 179.989487,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Yellow Railway",
"GMNotes": "Yellow Railway",
"ColorDiffuse": {
"r": 0.8627451,
"g": 0.854901969,
"b": 0.243134141
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460997864/BC1407C0369F6E68EA58301AB8F352E119C232E5/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "7",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"8": {
"GUID": "707abe",
"Name": "Custom_Tile",
"Transform": {
"posX": -25.2441654,
"posY": 1.57059669,
"posZ": 8.230036,
"rotX": -3.14448641E-07,
"rotY": 179.989441,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Yellow Railway",
"GMNotes": "Yellow Railway",
"ColorDiffuse": {
"r": 0.8627451,
"g": 0.854901969,
"b": 0.243134141
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460997864/BC1407C0369F6E68EA58301AB8F352E119C232E5/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "8",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"9": {
"GUID": "9c281c",
"Name": "Custom_Tile",
"Transform": {
"posX": -25.1316566,
"posY": 1.57059669,
"posZ": 8.762916,
"rotX": -3.19893559E-07,
"rotY": 179.98941,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Yellow Railway",
"GMNotes": "Yellow Railway",
"ColorDiffuse": {
"r": 0.8627451,
"g": 0.854901969,
"b": 0.243134141
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460997864/BC1407C0369F6E68EA58301AB8F352E119C232E5/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "9",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
}
},
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
{
"GUID": "d319a0",
"Name": "Custom_Tile",
"Transform": {
"posX": -1.49815071,
"posY": 1.5682559,
"posZ": 29.4928513,
"rotX": 0.2530069,
"rotY": 180.149826,
"rotZ": 0.0820855,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Orange Canal",
"GMNotes": "Orange Canal",
"ColorDiffuse": {
"r": 0.8784314,
"g": 0.3607769,
"b": 0.301953375
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460989303/6BA6527FE1750A23D5B8D2E46931B03CAFDCD46A/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"States": {
"1": {
"GUID": "5bfd47",
"Name": "Custom_Tile",
"Transform": {
"posX": -26.8349838,
"posY": 1.46962988,
"posZ": -0.8267283,
"rotX": 9.378423E-07,
"rotY": 180.000366,
"rotZ": 1.88276744E-07,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Orange Canal",
"GMNotes": "Orange Canal",
"ColorDiffuse": {
"r": 0.8784314,
"g": 0.360780865,
"b": 0.301957339
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460989303/6BA6527FE1750A23D5B8D2E46931B03CAFDCD46A/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "1",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"10": {
"GUID": "966a63",
"Name": "Custom_Tile",
"Transform": {
"posX": -26.5755539,
"posY": 1.4706018,
"posZ": 9.165198,
"rotX": 0.000396801857,
"rotY": 180.023743,
"rotZ": 0.00102971925,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Orange Canal",
"GMNotes": "Orange Canal",
"ColorDiffuse": {
"r": 0.8784314,
"g": 0.360781223,
"b": 0.301957726
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460989303/6BA6527FE1750A23D5B8D2E46931B03CAFDCD46A/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "10",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"11": {
"GUID": "b76494",
"Name": "Custom_Tile",
"Transform": {
"posX": -26.6299267,
"posY": 1.52188575,
"posZ": 9.548954,
"rotX": 345.139,
"rotY": 179.984833,
"rotZ": 0.00024630304,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Orange Canal",
"GMNotes": "Orange Canal",
"ColorDiffuse": {
"r": 0.8784314,
"g": 0.360781223,
"b": 0.301957726
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460989303/6BA6527FE1750A23D5B8D2E46931B03CAFDCD46A/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "11",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"12": {
"GUID": "aaa002",
"Name": "Custom_Tile",
"Transform": {
"posX": -26.8349838,
"posY": 1.46962988,
"posZ": -0.8267283,
"rotX": 9.378423E-07,
"rotY": 180.000366,
"rotZ": 1.88276744E-07,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Orange Canal",
"GMNotes": "Orange Canal",
"ColorDiffuse": {
"r": 0.8784314,
"g": 0.360780865,
"b": 0.301957339
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460989303/6BA6527FE1750A23D5B8D2E46931B03CAFDCD46A/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "12",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"2": {
"GUID": "17a35e",
"Name": "Custom_Tile",
"Transform": {
"posX": -26.941761,
"posY": 1.47059679,
"posZ": 4.208988,
"rotX": 7.230054E-08,
"rotY": 179.999924,
"rotZ": -6.180757E-08,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Orange Canal",
"GMNotes": "Orange Canal",
"ColorDiffuse": {
"r": 0.8784314,
"g": 0.360781223,
"b": 0.301957726
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460989303/6BA6527FE1750A23D5B8D2E46931B03CAFDCD46A/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "2",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"3": {
"GUID": "79585e",
"Name": "Custom_Tile",
"Transform": {
"posX": -26.83209,
"posY": 1.47059679,
"posZ": 4.72634125,
"rotX": 2.01024079E-07,
"rotY": 179.999924,
"rotZ": -8.08522E-08,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Orange Canal",
"GMNotes": "Orange Canal",
"ColorDiffuse": {
"r": 0.8784314,
"g": 0.360781223,
"b": 0.301957726
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460989303/6BA6527FE1750A23D5B8D2E46931B03CAFDCD46A/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "3",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"4": {
"GUID": "927513",
"Name": "Custom_Tile",
"Transform": {
"posX": -26.794014,
"posY": 1.47059679,
"posZ": 5.3858695,
"rotX": 2.87734E-07,
"rotY": 180.038,
"rotZ": 1.593775E-08,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Orange Canal",
"GMNotes": "Orange Canal",
"ColorDiffuse": {
"r": 0.8784314,
"g": 0.360781223,
"b": 0.301957726
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460989303/6BA6527FE1750A23D5B8D2E46931B03CAFDCD46A/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "4",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"5": {
"GUID": "c04234",
"Name": "Custom_Tile",
"Transform": {
"posX": -26.8554173,
"posY": 1.47059679,
"posZ": 5.879202,
"rotX": -1.04592431E-07,
"rotY": 179.8441,
"rotZ": 2.04800273E-07,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Orange Canal",
"GMNotes": "Orange Canal",
"ColorDiffuse": {
"r": 0.8784314,
"g": 0.360781223,
"b": 0.301957726
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460989303/6BA6527FE1750A23D5B8D2E46931B03CAFDCD46A/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "5",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"6": {
"GUID": "9e7edc",
"Name": "Custom_Tile",
"Transform": {
"posX": -26.8100147,
"posY": 1.47059679,
"posZ": 6.436479,
"rotX": -1.02252137E-07,
"rotY": 179.999924,
"rotZ": -1.89341037E-07,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Orange Canal",
"GMNotes": "Orange Canal",
"ColorDiffuse": {
"r": 0.8784314,
"g": 0.360781223,
"b": 0.301957726
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460989303/6BA6527FE1750A23D5B8D2E46931B03CAFDCD46A/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "6",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"7": {
"GUID": "3fab55",
"Name": "Custom_Tile",
"Transform": {
"posX": -26.7615433,
"posY": 1.47059679,
"posZ": 7.329569,
"rotX": 1.74878082E-07,
"rotY": 179.999924,
"rotZ": 5.10975227E-08,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Orange Canal",
"GMNotes": "Orange Canal",
"ColorDiffuse": {
"r": 0.8784314,
"g": 0.360781223,
"b": 0.301957726
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460989303/6BA6527FE1750A23D5B8D2E46931B03CAFDCD46A/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "7",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"8": {
"GUID": "d45fb2",
"Name": "Custom_Tile",
"Transform": {
"posX": -26.7233047,
"posY": 1.47059679,
"posZ": 7.988558,
"rotX": -7.93753543E-08,
"rotY": 179.999924,
"rotZ": 2.184974E-08,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Orange Canal",
"GMNotes": "Orange Canal",
"ColorDiffuse": {
"r": 0.8784314,
"g": 0.360781223,
"b": 0.301957726
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460989303/6BA6527FE1750A23D5B8D2E46931B03CAFDCD46A/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "8",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"9": {
"GUID": "e4c1b7",
"Name": "Custom_Tile",
"Transform": {
"posX": -26.6136341,
"posY": 1.47059679,
"posZ": 8.505911,
"rotX": 2.71338649E-07,
"rotY": 179.999878,
"rotZ": 1.66745451E-07,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Orange Canal",
"GMNotes": "Orange Canal",
"ColorDiffuse": {
"r": 0.8784314,
"g": 0.360781223,
"b": 0.301957726
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460989303/6BA6527FE1750A23D5B8D2E46931B03CAFDCD46A/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "9",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
}
},
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
{
"GUID": "5cd3b7",
"Name": "Custom_Tile",
"Transform": {
"posX": 1.4997673,
"posY": 1.56818306,
"posZ": 29.5073757,
"rotX": 359.8972,
"rotY": 180.1379,
"rotZ": 359.933075,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Orange Railway",
"GMNotes": "Orange Railway",
"ColorDiffuse": {
"r": 0.8784314,
"g": 0.3607769,
"b": 0.301953375
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460997229/2F177D6959B9CEE7092E4333A36F1C64A5FECC59/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"States": {
"1": {
"GUID": "3a5754",
"Name": "Custom_Tile",
"Transform": {
"posX": -25.1343975,
"posY": 1.56963,
"posZ": -0.8759781,
"rotX": 2.5355755E-06,
"rotY": 179.997147,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Orange Railway",
"GMNotes": "Orange Railway",
"ColorDiffuse": {
"r": 0.8784314,
"g": 0.360780865,
"b": 0.301957339
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460997229/2F177D6959B9CEE7092E4333A36F1C64A5FECC59/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "1",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"10": {
"GUID": "966a63",
"Name": "Custom_Tile",
"Transform": {
"posX": -26.5755539,
"posY": 1.4706018,
"posZ": 9.165198,
"rotX": 0.000396801857,
"rotY": 180.023743,
"rotZ": 0.00102971925,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Orange Railway",
"GMNotes": "Orange Railway",
"ColorDiffuse": {
"r": 0.8784314,
"g": 0.360781223,
"b": 0.301957726
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460997229/2F177D6959B9CEE7092E4333A36F1C64A5FECC59/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "10",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"11": {
"GUID": "b76494",
"Name": "Custom_Tile",
"Transform": {
"posX": -26.6299267,
"posY": 1.52188575,
"posZ": 9.548954,
"rotX": 345.139,
"rotY": 179.984833,
"rotZ": 0.00024630304,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Orange Railway",
"GMNotes": "Orange Railway",
"ColorDiffuse": {
"r": 0.8784314,
"g": 0.360781223,
"b": 0.301957726
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460997229/2F177D6959B9CEE7092E4333A36F1C64A5FECC59/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "11",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"12": {
"GUID": "aaa003",
"Name": "Custom_Tile",
"Transform": {
"posX": -25.1343975,
"posY": 1.56963,
"posZ": -0.8759781,
"rotX": 2.5355755E-06,
"rotY": 179.997147,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Orange Railway",
"GMNotes": "Orange Railway",
"ColorDiffuse": {
"r": 0.8784314,
"g": 0.360780865,
"b": 0.301957339
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460997229/2F177D6959B9CEE7092E4333A36F1C64A5FECC59/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "12",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"2": {
"GUID": "17a35e",
"Name": "Custom_Tile",
"Transform": {
"posX": -26.941761,
"posY": 1.47059679,
"posZ": 4.208988,
"rotX": 7.230054E-08,
"rotY": 179.999924,
"rotZ": -6.180757E-08,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Orange Railway",
"GMNotes": "Orange Railway",
"ColorDiffuse": {
"r": 0.8784314,
"g": 0.360781223,
"b": 0.301957726
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460997229/2F177D6959B9CEE7092E4333A36F1C64A5FECC59/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "2",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"3": {
"GUID": "79585e",
"Name": "Custom_Tile",
"Transform": {
"posX": -26.83209,
"posY": 1.47059679,
"posZ": 4.72634125,
"rotX": 2.01024079E-07,
"rotY": 179.999924,
"rotZ": -8.08522E-08,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Orange Railway",
"GMNotes": "Orange Railway",
"ColorDiffuse": {
"r": 0.8784314,
"g": 0.360781223,
"b": 0.301957726
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460997229/2F177D6959B9CEE7092E4333A36F1C64A5FECC59/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "3",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"4": {
"GUID": "927513",
"Name": "Custom_Tile",
"Transform": {
"posX": -26.794014,
"posY": 1.47059679,
"posZ": 5.3858695,
"rotX": 2.87734E-07,
"rotY": 180.038,
"rotZ": 1.593775E-08,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Orange Railway",
"GMNotes": "Orange Railway",
"ColorDiffuse": {
"r": 0.8784314,
"g": 0.360781223,
"b": 0.301957726
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460997229/2F177D6959B9CEE7092E4333A36F1C64A5FECC59/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "4",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"5": {
"GUID": "c04234",
"Name": "Custom_Tile",
"Transform": {
"posX": -26.8554173,
"posY": 1.47059679,
"posZ": 5.879202,
"rotX": -1.04592431E-07,
"rotY": 179.8441,
"rotZ": 2.04800273E-07,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Orange Railway",
"GMNotes": "Orange Railway",
"ColorDiffuse": {
"r": 0.8784314,
"g": 0.360781223,
"b": 0.301957726
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460997229/2F177D6959B9CEE7092E4333A36F1C64A5FECC59/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "5",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"6": {
"GUID": "9e7edc",
"Name": "Custom_Tile",
"Transform": {
"posX": -26.8100147,
"posY": 1.47059679,
"posZ": 6.436479,
"rotX": -1.02252137E-07,
"rotY": 179.999924,
"rotZ": -1.89341037E-07,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Orange Railway",
"GMNotes": "Orange Railway",
"ColorDiffuse": {
"r": 0.8784314,
"g": 0.360781223,
"b": 0.301957726
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460997229/2F177D6959B9CEE7092E4333A36F1C64A5FECC59/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "6",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"7": {
"GUID": "3fab55",
"Name": "Custom_Tile",
"Transform": {
"posX": -26.7615433,
"posY": 1.47059679,
"posZ": 7.329569,
"rotX": 1.74878082E-07,
"rotY": 179.999924,
"rotZ": 5.10975227E-08,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Orange Railway",
"GMNotes": "Orange Railway",
"ColorDiffuse": {
"r": 0.8784314,
"g": 0.360781223,
"b": 0.301957726
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460997229/2F177D6959B9CEE7092E4333A36F1C64A5FECC59/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "7",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"8": {
"GUID": "d45fb2",
"Name": "Custom_Tile",
"Transform": {
"posX": -26.7233047,
"posY": 1.47059679,
"posZ": 7.988558,
"rotX": -7.93753543E-08,
"rotY": 179.999924,
"rotZ": 2.184974E-08,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Orange Railway",
"GMNotes": "Orange Railway",
"ColorDiffuse": {
"r": 0.8784314,
"g": 0.360781223,
"b": 0.301957726
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460997229/2F177D6959B9CEE7092E4333A36F1C64A5FECC59/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "8",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"9": {
"GUID": "e4c1b7",
"Name": "Custom_Tile",
"Transform": {
"posX": -26.6136341,
"posY": 1.47059679,
"posZ": 8.505911,
"rotX": 2.71338649E-07,
"rotY": 179.999878,
"rotZ": 1.66745451E-07,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Orange Railway",
"GMNotes": "Orange Railway",
"ColorDiffuse": {
"r": 0.8784314,
"g": 0.360781223,
"b": 0.301957726
},
"Tags": [
"link_rail"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460997229/2F177D6959B9CEE7092E4333A36F1C64A5FECC59/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "9",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
}
},
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
{
"GUID": "3026c3",
"Name": "Custom_Tile",
"Transform": {
"posX": -1.49488461,
"posY": 1.76737332,
"posZ": 29.4872,
"rotX": 0.207489878,
"rotY": 180.126312,
"rotZ": 0.116558246,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Purple Canal",
"GMNotes": "Purple Canal",
"ColorDiffuse": {
"r": 0.545097947,
"g": 0.443129927,
"b": 0.796078444
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460993017/38DD57E5A8447B0A6C5D66C5D3C8133BE8E41E89/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"States": {
"1": {
"GUID": "4e4187",
"Name": "Custom_Tile",
"Transform": {
"posX": 25.9937725,
"posY": 1.56963,
"posZ": 1.42642319,
"rotX": -7.30556053E-07,
"rotY": 180.000259,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Purple Canal",
"GMNotes": "Purple Canal",
"ColorDiffuse": {
"r": 0.545097947,
"g": 0.4431338,
"b": 0.796078444
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460993017/38DD57E5A8447B0A6C5D66C5D3C8133BE8E41E89/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "1",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"10": {
"GUID": "5b8510",
"Name": "Custom_Tile",
"Transform": {
"posX": -29.6341763,
"posY": 1.57059669,
"posZ": 9.436537,
"rotX": 1.36080232E-07,
"rotY": 179.999985,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Purple Canal",
"GMNotes": "Purple Canal",
"ColorDiffuse": {
"r": 0.545097947,
"g": 0.443134159,
"b": 0.796078444
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460993017/38DD57E5A8447B0A6C5D66C5D3C8133BE8E41E89/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "10",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"2": {
"GUID": "4b7d6f",
"Name": "Custom_Tile",
"Transform": {
"posX": -29.9454536,
"posY": 1.57059669,
"posZ": 4.30146,
"rotX": 1.092213E-08,
"rotY": 180.000015,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Purple Canal",
"GMNotes": "Purple Canal",
"ColorDiffuse": {
"r": 0.545097947,
"g": 0.443134159,
"b": 0.796078444
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460993017/38DD57E5A8447B0A6C5D66C5D3C8133BE8E41E89/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "2",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"3": {
"GUID": "2bd601",
"Name": "Custom_Tile",
"Transform": {
"posX": -29.7207241,
"posY": 1.57059669,
"posZ": 4.863211,
"rotX": 9.19557852E-09,
"rotY": 180.000015,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Purple Canal",
"GMNotes": "Purple Canal",
"ColorDiffuse": {
"r": 0.545097947,
"g": 0.443134159,
"b": 0.796078444
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460993017/38DD57E5A8447B0A6C5D66C5D3C8133BE8E41E89/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "3",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"4": {
"GUID": "7cc957",
"Name": "Custom_Tile",
"Transform": {
"posX": -29.8461781,
"posY": 1.57059669,
"posZ": 5.614671,
"rotX": -2.156754E-07,
"rotY": 180.0,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Purple Canal",
"GMNotes": "Purple Canal",
"ColorDiffuse": {
"r": 0.545097947,
"g": 0.443134159,
"b": 0.796078444
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460993017/38DD57E5A8447B0A6C5D66C5D3C8133BE8E41E89/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "4",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"5": {
"GUID": "7b9e2c",
"Name": "Custom_Tile",
"Transform": {
"posX": -29.6603661,
"posY": 1.57059669,
"posZ": 6.1837635,
"rotX": 9.803997E-06,
"rotY": 180.012054,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Purple Canal",
"GMNotes": "Purple Canal",
"ColorDiffuse": {
"r": 0.545097947,
"g": 0.443134159,
"b": 0.796078444
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460993017/38DD57E5A8447B0A6C5D66C5D3C8133BE8E41E89/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "5",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"6": {
"GUID": "f866f0",
"Name": "Custom_Tile",
"Transform": {
"posX": -29.77778,
"posY": 1.57059669,
"posZ": 6.81037235,
"rotX": 1.74662773E-07,
"rotY": 180.000061,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Purple Canal",
"GMNotes": "Purple Canal",
"ColorDiffuse": {
"r": 0.545097947,
"g": 0.443134159,
"b": 0.796078444
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460993017/38DD57E5A8447B0A6C5D66C5D3C8133BE8E41E89/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "6",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"7": {
"GUID": "0a3912",
"Name": "Custom_Tile",
"Transform": {
"posX": -29.6529846,
"posY": 1.57059669,
"posZ": 7.44253635,
"rotX": 1.60447868E-07,
"rotY": 180.000061,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Purple Canal",
"GMNotes": "Purple Canal",
"ColorDiffuse": {
"r": 0.545097947,
"g": 0.443134159,
"b": 0.796078444
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460993017/38DD57E5A8447B0A6C5D66C5D3C8133BE8E41E89/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "7",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"8": {
"GUID": "cdf94a",
"Name": "Custom_Tile",
"Transform": {
"posX": -29.7784386,
"posY": 1.57059669,
"posZ": 8.19399452,
"rotX": 2.78040119E-07,
"rotY": 180.000046,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Purple Canal",
"GMNotes": "Purple Canal",
"ColorDiffuse": {
"r": 0.545097947,
"g": 0.443134159,
"b": 0.796078444
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460993017/38DD57E5A8447B0A6C5D66C5D3C8133BE8E41E89/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "8",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"9": {
"GUID": "1c9180",
"Name": "Custom_Tile",
"Transform": {
"posX": -29.553709,
"posY": 1.57059669,
"posZ": 8.755747,
"rotX": 1.40472252E-07,
"rotY": 180.000061,
"rotZ": 180.0,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Purple Canal",
"GMNotes": "Purple Canal",
"ColorDiffuse": {
"r": 0.545097947,
"g": 0.443134159,
"b": 0.796078444
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460993017/38DD57E5A8447B0A6C5D66C5D3C8133BE8E41E89/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "9",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"11": {
"GUID": "34d4b6",
"Name": "Custom_Tile",
"Transform": {
"posX": -1.499826,
"posY": 1.76738846,
"posZ": 31.000124,
"rotX": 359.8694,
"rotY": 180.001953,
"rotZ": 0.0719777,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Purple Canal",
"GMNotes": "Purple Canal",
"ColorDiffuse": {
"r": 0.545097947,
"g": 0.443134129,
"b": 0.796078444
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460993017/38DD57E5A8447B0A6C5D66C5D3C8133BE8E41E89/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "11",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
"12": {
"GUID": "aaa006",
"Name": "Custom_Tile",
"Transform": {
"posX": -1.49981308,
"posY": 1.76738894,
"posZ": 31.0001736,
"rotX": 359.868439,
"rotY": 180.001556,
"rotZ": 0.07192879,
"scaleX": 0.2,
"scaleY": 1.0,
"scaleZ": 0.2
},
"Nickname": "Points",
"Description": "Purple Canal",
"GMNotes": "Purple Canal",
"ColorDiffuse": {
"r": 0.545097947,
"g": 0.443133652,
"b": 0.796078444
},
"Tags": [
"link_canal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": false,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257460993017/38DD57E5A8447B0A6C5D66C5D3C8133BE8E41E89/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "12",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
}
},
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 0.0,
"z": 0.0
}
}
]
},
{
"GUID": "be6906",
"Name": "Custom_Assetbundle",
"Transform": {
"posX": 0.5,
"posY": 1.71962988,
"posZ": 37.5,
"rotX": 0.0,
"rotY": 0.0005334008,
"rotZ": -1.30328522E-06,
"scaleX": 0.5,
"scaleY": 0.5,
"scaleZ": 0.5
},
"Nickname": "Sound Effects",
"Description": "",
"GMNotes": "Sound Effects",
"ColorDiffuse": {
"r": 0.956862748,
"g": 0.388228863,
"b": 0.10979747
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": false,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomAssetbundle": {
"AssetbundleURL": "http://cloud-3.steamusercontent.com/ugc/778484758094767424/7B9E3F5416E3E303ED217CF7FDC40DA4C4A94533/",
"AssetbundleSecondaryURL": "",
"MaterialIndex": 0,
"TypeIndex": 0,
"LoopingEffectIndex": 0
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "b1585e",
"Name": "BlockSquare",
"Transform": {
"posX": 1.81270835E-07,
"posY": 1.35,
"posZ": 0.0,
"rotX": -1.45459956E-06,
"rotY": 2.325355E-06,
"rotZ": 3.109285E-06,
"scaleX": 24.0,
"scaleY": 0.125,
"scaleZ": 24.0
},
"Nickname": "Game Board Area",
"Description": "",
"GMNotes": "Game Board Area",
"ColorDiffuse": {
"r": 0.635294139,
"g": 0.75686276,
"b": 0.894117653
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": false,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "44828f",
"Name": "Custom_Assetbundle",
"Transform": {
"posX": -0.500000834,
"posY": 1.71962988,
"posZ": 37.5,
"rotX": 0.0,
"rotY": -0.00067389477,
"rotZ": 7.370406E-06,
"scaleX": 0.5,
"scaleY": 0.5,
"scaleZ": 0.5
},
"Nickname": "Brass Sound Cube",
"Description": "",
"GMNotes": "Brass Sound Cube",
"ColorDiffuse": {
"r": 0.2431308,
"g": 0.2431308,
"b": 0.2431308
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": false,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomAssetbundle": {
"AssetbundleURL": "http://cloud-3.steamusercontent.com/ugc/1666860048190814365/4CEB8FE2ACD49C9858CA47792B8212DD9CA3D731/",
"AssetbundleSecondaryURL": "",
"MaterialIndex": 1,
"TypeIndex": 0,
"LoopingEffectIndex": 0
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "4ee1f2",
"Name": "Custom_Model",
"Transform": {
"posX": 0.0100585781,
"posY": 1.30379224,
"posZ": -0.00272129313,
"rotX": 359.914063,
"rotY": -0.00019350175,
"rotZ": 0.0242303051,
"scaleX": 0.65,
"scaleY": 0.02,
"scaleZ": 0.65
},
"Nickname": "Game Board",
"Description": "",
"GMNotes": "Game Board",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": false,
"Snap": false,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": false,
"Sticky": false,
"Tooltip": false,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/987863257458518028/CEE2F8E7B56A47085522C3BAE37C5ADF6C0043AF/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143795/4933BAFEA3A4A5964B2A0AB8B7252AAD7E06E93C/",
"NormalURL": "",
"ColliderURL": "http://cloud-3.steamusercontent.com/ugc/987863257458518028/CEE2F8E7B56A47085522C3BAE37C5ADF6C0043AF/",
"Convex": true,
"MaterialIndex": 1,
"TypeIndex": 4,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"AttachedSnapPoints": [
{
"Position": {
"x": 7.83550358,
"y": 10.4450083,
"z": -12.9338875
},
"Rotation": {
"x": 1.63178956E-05,
"y": 180.016159,
"z": 1.55210182E-05
},
"Tags": [
"cotton_mill"
]
},
{
"Position": {
"x": 9.544754,
"y": 10.4586563,
"z": -12.9276543
},
"Rotation": {
"x": 1.99616043E-05,
"y": 180.026245,
"z": 1.66499685E-05
},
"Tags": [
"cotton_mill"
]
},
{
"Position": {
"x": 10.6722746,
"y": 10.4517994,
"z": -10.05439
},
"Rotation": {
"x": 1.8209912E-05,
"y": 180.016327,
"z": 1.97507452E-05
},
"Tags": [
"cotton_mill"
]
},
{
"Position": {
"x": 12.381525,
"y": 10.4626131,
"z": -10.0481567
},
"Rotation": {
"x": 1.81738724E-05,
"y": 180.026184,
"z": 1.72065629E-05
},
"Tags": [
"cotton_mill"
]
},
{
"Position": {
"x": 9.045298,
"y": 10.47424,
"z": -5.736047
},
"Rotation": {
"x": 1.82347248E-05,
"y": 180.026047,
"z": 1.32647956E-05
},
"Tags": [
"iron",
"iron_works"
]
},
{
"Position": {
"x": 7.33604527,
"y": 10.4884758,
"z": -5.742281
},
"Rotation": {
"x": 2.06782443E-05,
"y": 180.016281,
"z": 1.705099E-05
},
"Tags": [
"coal",
"cotton_mill",
"coal_mine"
]
},
{
"Position": {
"x": 7.33082867,
"y": 10.4791994,
"z": -4.06388
},
"Rotation": {
"x": 1.90429382E-05,
"y": 180.016281,
"z": 1.3268791E-05
},
"Tags": [
"coal",
"cotton_mill",
"coal_mine"
]
},
{
"Position": {
"x": 9.040077,
"y": 10.5308857,
"z": -4.057645
},
"Rotation": {
"x": 1.75098776E-05,
"y": 180.026077,
"z": 1.1673108E-05
},
"Tags": [
"coal",
"cotton_mill",
"coal_mine"
]
},
{
"Position": {
"x": 12.5728779,
"y": 10.4334154,
"z": -4.101039
},
"Rotation": {
"x": 1.46952843E-05,
"y": 180.016373,
"z": 1.60755462E-05
},
"Tags": [
"coal",
"cotton_mill",
"coal_mine"
]
},
{
"Position": {
"x": 14.2821245,
"y": 10.4555655,
"z": -4.09480333
},
"Rotation": {
"x": 1.490018E-05,
"y": 180.026047,
"z": 1.83665743E-05
},
"Tags": [
"coal",
"cotton_mill",
"coal_mine"
]
},
{
"Position": {
"x": 14.5641432,
"y": 10.4691982,
"z": 0.315078884
},
"Rotation": {
"x": 1.59985757E-05,
"y": 180.025635,
"z": 1.3764713E-05
},
"Tags": [
"iron",
"iron_works"
]
},
{
"Position": {
"x": 12.8549137,
"y": 10.4452114,
"z": 0.308839232
},
"Rotation": {
"x": 1.93327924E-05,
"y": 180.016037,
"z": 1.555752E-05
},
"Tags": [
"coal",
"cotton_mill",
"coal_mine"
]
},
{
"Position": {
"x": 13.6921978,
"y": 10.4775219,
"z": 1.94635391
},
"Rotation": {
"x": 1.54666413E-05,
"y": 180.02507,
"z": 1.37270108E-05
},
"Tags": [
"coal",
"cotton_mill",
"coal_mine"
]
},
{
"Position": {
"x": 12.7297726,
"y": 10.5010357,
"z": 6.18016624
},
"Rotation": {
"x": 1.95129924E-05,
"y": 180.024628,
"z": 1.76429166E-05
},
"Tags": [
"cotton_mill"
]
},
{
"Position": {
"x": 12.7303705,
"y": 10.4778423,
"z": 7.88743
},
"Rotation": {
"x": 1.73593817E-05,
"y": 180.024521,
"z": 1.38545738E-05
},
"Tags": [
"cotton_mill"
]
},
{
"Position": {
"x": 8.83536,
"y": 10.5009117,
"z": 7.29573631
},
"Rotation": {
"x": 1.85681838E-05,
"y": 180.024567,
"z": 1.46494776E-05
},
"Tags": [
"coal",
"cotton_mill",
"coal_mine"
]
},
{
"Position": {
"x": 8.835344,
"y": 10.51247,
"z": 5.57434654
},
"Rotation": {
"x": 1.89532457E-05,
"y": 180.0247,
"z": 1.53628935E-05
},
"Tags": [
"coal",
"cotton_mill",
"coal_mine"
]
},
{
"Position": {
"x": 8.737752,
"y": 10.4868679,
"z": 1.282009
},
"Rotation": {
"x": 1.61639509E-05,
"y": 180.0163,
"z": 1.91140425E-05
},
"Tags": [
"coal",
"cotton_mill",
"coal_mine"
]
},
{
"Position": {
"x": 8.733222,
"y": 10.4870253,
"z": -0.402238846
},
"Rotation": {
"x": 1.43999314E-05,
"y": 180.016418,
"z": 1.74301913E-05
},
"Tags": [
"coal",
"cotton_mill",
"coal_mine"
]
},
{
"Position": {
"x": 5.7521925,
"y": 10.4434519,
"z": 3.04006
},
"Rotation": {
"x": 2.073316E-05,
"y": 180.02507,
"z": 1.92109928E-05
},
"Tags": [
"iron",
"iron_works"
]
},
{
"Position": {
"x": 4.04296255,
"y": 10.4790812,
"z": 3.03382039
},
"Rotation": {
"x": 1.80183979E-05,
"y": 180.015549,
"z": 1.88847553E-05
},
"Tags": [
"coal",
"cotton_mill",
"coal_mine"
]
},
{
"Position": {
"x": 4.94449472,
"y": 10.4841957,
"z": 4.7359376
},
"Rotation": {
"x": 1.95099765E-05,
"y": 180.0246,
"z": 1.663989E-05
},
"Tags": [
"coal",
"cotton_mill",
"coal_mine"
]
},
{
"Position": {
"x": 4.94640636,
"y": 10.492692,
"z": -0.760047
},
"Rotation": {
"x": 1.903259E-05,
"y": 180.02504,
"z": 1.81274536E-05
},
"Tags": [
"coal",
"cotton_mill",
"coal_mine"
]
},
{
"Position": {
"x": 3.23717761,
"y": 10.4345312,
"z": -0.7662872
},
"Rotation": {
"x": 1.77319689E-05,
"y": 180.015549,
"z": 1.60432519E-05
},
"Tags": [
"coal",
"cotton_mill",
"coal_mine"
]
},
{
"Position": {
"x": 4.06188726,
"y": 10.4756985,
"z": -2.465298
},
"Rotation": {
"x": 1.68570787E-05,
"y": 180.024628,
"z": 1.52812445E-05
},
"Tags": [
"iron",
"iron_works"
]
},
{
"Position": {
"x": -0.0862968,
"y": 10.4413185,
"z": -1.737398
},
"Rotation": {
"x": -7.08924E-05,
"y": 180.024811,
"z": -1.16065557E-05
},
"Tags": [
"coal",
"coal_mine"
]
},
{
"Position": {
"x": -0.08026068,
"y": 10.4464636,
"z": -0.0715036541
},
"Rotation": {
"x": 1.101072E-05,
"y": 180.03038,
"z": 3.81449681E-05
},
"Tags": [
"coal",
"coal_mine"
]
},
{
"Position": {
"x": 0.033832714,
"y": 10.483346,
"z": 4.46909428
},
"Rotation": {
"x": 1.98994458E-05,
"y": 180.024643,
"z": 1.93152537E-05
},
"Tags": [
"port"
]
},
{
"Position": {
"x": 0.9183525,
"y": 10.5011215,
"z": 6.174346
},
"Rotation": {
"x": 1.71155662E-05,
"y": 180.025024,
"z": 1.50961187E-05
},
"Tags": [
"iron",
"iron_works"
]
},
{
"Position": {
"x": -0.79087764,
"y": 10.46619,
"z": 6.1681056
},
"Rotation": {
"x": 1.66360587E-05,
"y": 180.015549,
"z": 1.85912068E-05
},
"Tags": [
"cotton_mill",
"port"
]
},
{
"Position": {
"x": -4.47771263,
"y": 10.5208683,
"z": 7.886455
},
"Rotation": {
"x": 1.986015E-05,
"y": 180.024673,
"z": 1.592074E-05
},
"Tags": [
"port"
]
},
{
"Position": {
"x": -0.8593524,
"y": 10.494319,
"z": 11.1845531
},
"Rotation": {
"x": 1.80757343E-05,
"y": 180.024582,
"z": 1.67348389E-05
},
"Tags": [
"port"
]
},
{
"Position": {
"x": 0.811665535,
"y": 10.48318,
"z": 11.189414
},
"Rotation": {
"x": 1.758215E-05,
"y": 180.024567,
"z": 1.67367434E-05
},
"Tags": [
"cotton_mill",
"port"
]
},
{
"Position": {
"x": -6.029919,
"y": 10.5148849,
"z": 13.7654848
},
"Rotation": {
"x": 1.77802449E-05,
"y": 180.024567,
"z": 1.84576747E-05
},
"Tags": [
"iron",
"iron_works"
]
},
{
"Position": {
"x": -7.70093632,
"y": 10.4775829,
"z": 13.7606211
},
"Rotation": {
"x": 2.06195673E-05,
"y": 180.024582,
"z": 2.08976762E-05
},
"Tags": [
"shipyard"
]
},
{
"Position": {
"x": -3.59118414,
"y": 10.5188179,
"z": -3.06446362
},
"Rotation": {
"x": 1.821457E-05,
"y": 180.026077,
"z": 1.44058686E-05
},
"Tags": [
"port"
]
},
{
"Position": {
"x": -5.30043364,
"y": 10.4753742,
"z": -3.07069874
},
"Rotation": {
"x": 1.965953E-05,
"y": 180.016281,
"z": 1.60303025E-05
},
"Tags": [
"port"
]
},
{
"Position": {
"x": -5.29521751,
"y": 10.4819231,
"z": -4.74909735
},
"Rotation": {
"x": 1.82642088E-05,
"y": 180.016174,
"z": 1.330277E-05
},
"Tags": [
"shipyard"
]
},
{
"Position": {
"x": -3.585967,
"y": 10.53328,
"z": -4.742864
},
"Rotation": {
"x": 1.95785633E-05,
"y": 180.026077,
"z": 1.4201416E-05
},
"Tags": [
"port"
]
},
{
"Position": {
"x": -1.87409437,
"y": 10.521081,
"z": -9.107535
},
"Rotation": {
"x": 1.80412226E-05,
"y": 180.017181,
"z": 2.06264285E-05
},
"Tags": [
"port"
]
},
{
"Position": {
"x": -7.598482,
"y": 10.4627886,
"z": -6.037955
},
"Rotation": {
"x": 2.00645154E-05,
"y": 180.017166,
"z": 1.67400958E-05
},
"Tags": [
"shipyard"
]
},
{
"Position": {
"x": 3.1756773,
"y": 10.4844732,
"z": -6.002499
},
"Rotation": {
"x": 2.00713239E-05,
"y": 180.026077,
"z": 1.77166949E-05
},
"Tags": [
"coal",
"cotton_mill",
"coal_mine"
]
},
{
"Position": {
"x": 1.46642625,
"y": 10.4463253,
"z": -6.00873327
},
"Rotation": {
"x": 1.53406127E-05,
"y": 180.0162,
"z": 1.64599642E-05
},
"Tags": [
"port"
]
},
{
"Position": {
"x": -13.3673716,
"y": 10.5302935,
"z": 12.7105532
},
"Rotation": {
"x": 8.266436E-07,
"y": 180.015137,
"z": 180.0
}
},
{
"Position": {
"x": 5.5283637,
"y": 10.4815063,
"z": -13.6470432
},
"Rotation": {
"x": 0.0,
"y": 150.0,
"z": 0.0
},
"Tags": [
"link_canal",
"link_rail"
]
},
{
"Position": {
"x": 8.471066,
"y": 10.4815063,
"z": -2.277432
},
"Rotation": {
"x": 0.0,
"y": 105.000008,
"z": 0.0
},
"Tags": [
"link_canal",
"link_rail"
]
},
{
"Position": {
"x": 10.9030914,
"y": 10.4815063,
"z": 1.40804017
},
"Rotation": {
"x": 1.12688247E-06,
"y": 186.163712,
"z": -1.59104985E-07
},
"Tags": [
"link_rail"
]
},
{
"Position": {
"x": -13.5928621,
"y": 10.4815063,
"z": -2.36208773
},
"Rotation": {
"x": -1.04221513E-07,
"y": 0.0151299713,
"z": 1.0334378E-06
},
"Tags": [
"cotton"
]
},
{
"Position": {
"x": -12.7734432,
"y": 10.4815063,
"z": -2.377761
},
"Rotation": {
"x": -2.117629E-05,
"y": 0.0151252206,
"z": 7.957391E-06
},
"Tags": [
"cotton"
]
},
{
"Position": {
"x": -12.7864609,
"y": 10.4815369,
"z": -3.6674118
},
"Rotation": {
"x": 4.43180028E-07,
"y": 0.0151298931,
"z": 1.00110628E-06
},
"Tags": [
"cotton"
]
},
{
"Position": {
"x": -13.6058807,
"y": 10.4815063,
"z": -3.65173745
},
"Rotation": {
"x": 2.22339145E-06,
"y": 0.0151299126,
"z": 2.83442546E-06
},
"Tags": [
"cotton"
]
},
{
"Position": {
"x": 10.039629,
"y": 10.4815063,
"z": 11.238554
},
"Rotation": {
"x": -4.84553539E-07,
"y": -1.56558883E-06,
"z": -1.34444826E-06
},
"Tags": [
"coal"
]
},
{
"Position": {
"x": -13.606245,
"y": 10.4815063,
"z": -4.96668434
},
"Rotation": {
"x": 1.4627218E-06,
"y": 0.0151299043,
"z": -1.61503783E-06
},
"Tags": [
"cotton"
]
},
{
"Position": {
"x": -12.7868233,
"y": 10.4815063,
"z": -4.982358
},
"Rotation": {
"x": 6.078064E-08,
"y": 0.0151299462,
"z": 1.85681006E-06
},
"Tags": [
"cotton"
]
},
{
"Position": {
"x": -12.78622,
"y": 10.4815063,
"z": -6.299144
},
"Rotation": {
"x": 2.35670927E-06,
"y": 0.0151300151,
"z": 1.55602481E-06
},
"Tags": [
"cotton"
]
},
{
"Position": {
"x": -13.6056185,
"y": 10.4815063,
"z": -6.283471
},
"Rotation": {
"x": 2.9918674E-06,
"y": 0.015129935,
"z": 2.22211952E-06
},
"Tags": [
"cotton"
]
},
{
"Position": {
"x": -13.1424818,
"y": 10.4815063,
"z": -7.45305157
},
"Rotation": {
"x": 9.162832E-07,
"y": 0.01512999,
"z": 1.89541868E-06
},
"Tags": [
"cotton"
]
},
{
"Position": {
"x": 10.7922029,
"y": 10.4815063,
"z": 11.2272892
},
"Rotation": {
"x": -1.20156278E-06,
"y": -1.56081762E-06,
"z": -1.03730929E-06
},
"Tags": [
"coal"
]
},
{
"Position": {
"x": 10.0152292,
"y": 10.4815063,
"z": 14.4374237
},
"Rotation": {
"x": -9.43564544E-07,
"y": -7.16409545E-07,
"z": 9.468253E-07
},
"Tags": [
"coal"
]
},
{
"Position": {
"x": 10.7864943,
"y": 10.4815063,
"z": 14.449852
},
"Rotation": {
"x": 1.44168965E-07,
"y": -7.91779371E-07,
"z": 2.709524E-07
},
"Tags": [
"coal"
]
},
{
"Position": {
"x": 10.8114958,
"y": 10.4815063,
"z": 13.3890638
},
"Rotation": {
"x": -1.8891775E-06,
"y": -1.54426766E-06,
"z": -7.565512E-07
},
"Tags": [
"coal"
]
},
{
"Position": {
"x": 10.0402279,
"y": 10.4815063,
"z": 13.400631
},
"Rotation": {
"x": -1.65094661E-06,
"y": -1.541277E-06,
"z": -1.189533E-06
},
"Tags": [
"coal"
]
},
{
"Position": {
"x": 10.0319834,
"y": 10.4815063,
"z": 12.2936935
},
"Rotation": {
"x": 4.794673E-07,
"y": 1.15823814E-05,
"z": -1.58144564E-06
},
"Tags": [
"coal"
]
},
{
"Position": {
"x": 10.8111925,
"y": 10.4815063,
"z": 12.3257008
},
"Rotation": {
"x": -6.194525E-07,
"y": -1.28864042E-06,
"z": -1.24465453E-06
},
"Tags": [
"coal"
]
},
{
"Position": {
"x": 11.9867544,
"y": 10.4815063,
"z": 11.24547
},
"Rotation": {
"x": -6.199106E-07,
"y": -1.666592E-06,
"z": 9.33429263E-08
},
"Tags": [
"iron"
]
},
{
"Position": {
"x": 12.7393236,
"y": 10.4815063,
"z": 11.2342033
},
"Rotation": {
"x": 1.97125246E-06,
"y": -1.55329747E-06,
"z": -2.63857714E-06
},
"Tags": [
"iron"
]
},
{
"Position": {
"x": 12.7583179,
"y": 10.4815063,
"z": 12.3326168
},
"Rotation": {
"x": -1.12528348E-07,
"y": -1.3007184E-06,
"z": -1.79977792E-06
},
"Tags": [
"iron"
]
},
{
"Position": {
"x": 11.97441,
"y": 10.4815063,
"z": 12.3328371
},
"Rotation": {
"x": -9.760382E-07,
"y": -1.23079758E-06,
"z": -1.09617258E-06
},
"Tags": [
"iron"
]
},
{
"Position": {
"x": 11.9873486,
"y": 10.4815063,
"z": 13.407548
},
"Rotation": {
"x": -9.923416E-07,
"y": -1.58096111E-06,
"z": -1.87262413E-06
},
"Tags": [
"iron"
]
},
{
"Position": {
"x": 12.7586164,
"y": 10.4815063,
"z": 13.39598
},
"Rotation": {
"x": -1.07530991E-06,
"y": -1.5858742E-06,
"z": -8.679056E-07
},
"Tags": [
"iron"
]
},
{
"Position": {
"x": 12.733614,
"y": 10.4815063,
"z": 14.4567671
},
"Rotation": {
"x": 5.343405E-07,
"y": -7.04676552E-07,
"z": 6.074323E-07
},
"Tags": [
"iron"
]
},
{
"Position": {
"x": 11.9623556,
"y": 10.4815063,
"z": 14.4443378
},
"Rotation": {
"x": 8.210797E-08,
"y": -6.93812353E-07,
"z": 1.15429927E-07
},
"Tags": [
"iron"
]
},
{
"Position": {
"x": -3.21220183,
"y": 10.4815063,
"z": -11.7051754
},
"Rotation": {
"x": -1.689893E-07,
"y": 180.016876,
"z": -1.45915385E-06
},
"Tags": [
"turn_order"
]
},
{
"Position": {
"x": -6.906269,
"y": 10.4815063,
"z": -11.7121077
},
"Rotation": {
"x": 1.89945855E-08,
"y": 180.016876,
"z": -5.47225966E-07
},
"Tags": [
"turn_order"
]
},
{
"Position": {
"x": -10.5235472,
"y": 10.4815063,
"z": -11.7117558
},
"Rotation": {
"x": 7.034998E-07,
"y": 180.016861,
"z": 1.612628E-06
},
"Tags": [
"turn_order"
]
},
{
"Position": {
"x": -14.1941118,
"y": 10.4815063,
"z": -11.7108355
},
"Rotation": {
"x": 2.2332506E-06,
"y": 180.016861,
"z": -2.2960055E-06
},
"Tags": [
"turn_order"
]
},
{
"Position": {
"x": -13.3999338,
"y": 10.448369,
"z": 6.58932972
},
"Rotation": {
"x": -4.91587571E-06,
"y": 0.000201952338,
"z": 3.856937E-06
},
"Tags": [
"distant_market"
]
},
{
"Position": {
"x": -13.3999443,
"y": 10.5127983,
"z": 1.85287941
},
"Rotation": {
"x": -4.91587662E-06,
"y": 0.000195578017,
"z": 4.79431037E-06
},
"Tags": [
"distant_market"
]
}
]
},
{
"GUID": "749e60",
"Name": "Custom_Tile",
"Transform": {
"posX": -0.001794274,
"posY": 1.568631,
"posZ": 29.4846859,
"rotX": 359.9859,
"rotY": 180.026276,
"rotZ": 0.135621563,
"scaleX": 0.4,
"scaleY": 1.0,
"scaleZ": 0.4
},
"Nickname": "Orange Player",
"Description": "",
"GMNotes": "Orange Player",
"ColorDiffuse": {
"r": 0.8784314,
"g": 0.360779971,
"b": 0.301956445
},
"Tags": [
"turn_order"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257461303431/E8B4FDEBB70E6FC0DECE01E57953063EF683D685/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143396/D7C328B5FE31F8860EDFF7D57A7407B25280B07D/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 2,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "dd63fc",
"Name": "Custom_Tile",
"Transform": {
"posX": -0.0008914656,
"posY": 1.56952071,
"posZ": 29.4846516,
"rotX": 0.0292399563,
"rotY": 180.018387,
"rotZ": 180.016037,
"scaleX": 0.4,
"scaleY": 1.0,
"scaleZ": 0.4
},
"Nickname": "Yellow Player",
"Description": "",
"GMNotes": "Yellow Player",
"ColorDiffuse": {
"r": 0.8627451,
"g": 0.854901969,
"b": 0.243132889
},
"Tags": [
"turn_order"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257461302985/74A9F6BD01A15D75D209D7EFBB9FDFC850F0D13D/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143474/9F3E4CB62BD2DDE09A0DC968B145FCF5567BAFC7/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 2,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "e19c38",
"Name": "Custom_Tile",
"Transform": {
"posX": -0.000680475263,
"posY": 1.76813638,
"posZ": 29.48487,
"rotX": 359.971558,
"rotY": 180.0171,
"rotZ": 0.218447164,
"scaleX": 0.4,
"scaleY": 1.0,
"scaleZ": 0.4
},
"Nickname": "Purple Player",
"Description": "",
"GMNotes": "Purple Player",
"ColorDiffuse": {
"r": 0.545097947,
"g": 0.443132937,
"b": 0.796078444
},
"Tags": [
"turn_order"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257461302479/F75C50E9152FFF90570CE13D35FE24A528816090/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143564/9D045658FE50355CC6BA65F30DE6D02406EBDFFD/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 2,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "5f3e1f",
"Name": "Custom_Tile",
"Transform": {
"posX": 26.0,
"posY": 1.46963024,
"posZ": -7.50000048,
"rotX": -1.279665E-07,
"rotY": 179.994659,
"rotZ": -3.03311722E-08,
"scaleX": 3.7723155,
"scaleY": 1.0,
"scaleZ": 3.7723155
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.249996722,
"g": 0.249996722,
"b": 0.249996722
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143049/09CECB6153B68EBDB6736072ED660FCC0450C4B1/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "e7a73c",
"Name": "Custom_Model",
"Transform": {
"posX": -8.825406,
"posY": 1.694883,
"posZ": -1.53843558,
"rotX": 359.913757,
"rotY": 0.0180096384,
"rotZ": 0.0246288385,
"scaleX": 0.2,
"scaleY": 7.5,
"scaleZ": 0.2
},
"Nickname": "Distant Cotton Market Marker",
"Description": "",
"GMNotes": "Distant Market Marker",
"ColorDiffuse": {
"r": 0.879790843,
"g": 0.8776946,
"b": 0.7372464
},
"Tags": [
"cotton"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/905652563644635916/A5E779655044653F0BB2E380A8154FF1DE0E0F04/",
"DiffuseURL": "",
"NormalURL": "",
"ColliderURL": "http://cloud-3.steamusercontent.com/ugc/905652563644635916/A5E779655044653F0BB2E380A8154FF1DE0E0F04/",
"Convex": true,
"MaterialIndex": 1,
"TypeIndex": 0,
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "c924e1",
"Name": "Custom_Tile",
"Transform": {
"posX": 17.749773,
"posY": 1.46963024,
"posZ": -7.50000238,
"rotX": -1.91911141E-07,
"rotY": 179.994,
"rotZ": 3.21162474E-09,
"scaleX": 3.708303,
"scaleY": 1.0,
"scaleZ": 3.71
},
"Nickname": "",
"Description": "",
"GMNotes": "Teal Player Mat",
"ColorDiffuse": {
"r": 0.7921569,
"g": 0.858823538,
"b": 0.8627451
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758140344/4D1FA465AF9E4FF06229EA0D16A0F2341705F105/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.102778032,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"AttachedSnapPoints": [
{
"Position": {
"x": 1.13479173,
"y": 0.199834719,
"z": 0.5422336
},
"Rotation": {
"x": 1.234921E-05,
"y": -0.00229134085,
"z": 2.13107433E-05
},
"Tags": [
"teal_cotton_mill_1"
]
},
{
"Position": {
"x": 1.137238,
"y": 0.200144723,
"z": 0.186666325
},
"Rotation": {
"x": 1.17760537E-05,
"y": -0.00230500055,
"z": 1.7262E-05
},
"Tags": [
"teal_cotton_mill_2"
]
},
{
"Position": {
"x": 1.136239,
"y": 0.200048134,
"z": -0.173967913
},
"Rotation": {
"x": 1.14933619E-05,
"y": -0.002933378,
"z": 1.05117942E-05
},
"Tags": [
"teal_cotton_mill_3"
]
},
{
"Position": {
"x": 1.14276123,
"y": 0.199721545,
"z": -0.5316482
},
"Rotation": {
"x": 1.21329958E-05,
"y": -0.00240062387,
"z": 1.67083635E-05
},
"Tags": [
"teal_cotton_mill_4"
]
},
{
"Position": {
"x": 0.5745221,
"y": 0.200513974,
"z": -0.5368122
},
"Rotation": {
"x": 1.39923268E-05,
"y": -0.00170394639,
"z": 1.12989519E-05
},
"Tags": [
"teal_port_4"
]
},
{
"Position": {
"x": 0.5760142,
"y": 0.200532541,
"z": -0.179837048
},
"Rotation": {
"x": 1.30465633E-05,
"y": -0.00244160625,
"z": 9.85814E-06
},
"Tags": [
"teal_port_3"
]
},
{
"Position": {
"x": 0.576962769,
"y": 0.200118139,
"z": 0.179332674
},
"Rotation": {
"x": 1.33608046E-05,
"y": -0.00218205922,
"z": 1.94697877E-05
},
"Tags": [
"teal_port_2"
]
},
{
"Position": {
"x": 0.5745165,
"y": 0.199791938,
"z": 0.534900844
},
"Rotation": {
"x": 1.34849015E-05,
"y": -0.00215473864,
"z": 2.31583563E-05
},
"Tags": [
"teal_port_1"
]
},
{
"Position": {
"x": -0.00299320812,
"y": 0.200198084,
"z": 0.535548747
},
"Rotation": {
"x": 1.27743351E-05,
"y": -0.001963492,
"z": 2.1357464E-05
},
"Tags": [
"teal_shipyard_pre"
]
},
{
"Position": {
"x": -0.000547025644,
"y": 0.200055555,
"z": 0.179980591
},
"Rotation": {
"x": 1.09015054E-05,
"y": -0.00200447068,
"z": 2.04370172E-05
},
"Tags": [
"teal_shipyard_1"
]
},
{
"Position": {
"x": -0.00149576389,
"y": 0.200012416,
"z": -0.179189086
},
"Rotation": {
"x": 9.818871E-06,
"y": -0.0023186584,
"z": 1.77356142E-05
},
"Tags": [
"teal_shipyard_2"
]
},
{
"Position": {
"x": -0.5785697,
"y": 0.1999549,
"z": -0.533158839
},
"Rotation": {
"x": 9.809287E-06,
"y": -0.00154001592,
"z": 1.96633428E-05
},
"Tags": [
"teal_iron_works_4"
]
},
{
"Position": {
"x": -0.5770777,
"y": 0.200048074,
"z": -0.176183641
},
"Rotation": {
"x": 1.46025477E-05,
"y": -0.00230500451,
"z": 2.54861843E-05
},
"Tags": [
"teal_iron_works_3"
]
},
{
"Position": {
"x": -0.5761289,
"y": 0.200190768,
"z": 0.182985589
},
"Rotation": {
"x": 1.22424881E-05,
"y": -0.002059114,
"z": 1.98166672E-05
},
"Tags": [
"teal_iron_works_2"
]
},
{
"Position": {
"x": -0.578575134,
"y": 0.200045168,
"z": 0.5385537
},
"Rotation": {
"x": 1.02716749E-05,
"y": -0.00201813015,
"z": 2.26515021E-05
},
"Tags": [
"teal_iron_works_1"
]
},
{
"Position": {
"x": -1.14861989,
"y": 0.200254649,
"z": 0.542142153
},
"Rotation": {
"x": 1.2915878E-05,
"y": -0.00200447347,
"z": 2.0523692E-05
},
"Tags": [
"teal_coal_mine_1"
]
},
{
"Position": {
"x": -1.14617383,
"y": 0.1998086,
"z": 0.186574
},
"Rotation": {
"x": 1.323918E-05,
"y": -0.00204545516,
"z": 2.038361E-05
},
"Tags": [
"teal_coal_mine_2"
]
},
{
"Position": {
"x": -1.14712286,
"y": 0.199402347,
"z": -0.172596127
},
"Rotation": {
"x": 1.26076666E-05,
"y": -0.00229134131,
"z": 1.88027789E-05
},
"Tags": [
"teal_coal_mine_3"
]
},
{
"Position": {
"x": -1.14861488,
"y": 0.199360773,
"z": -0.529571354
},
"Rotation": {
"x": 1.08998447E-05,
"y": -0.00154001731,
"z": 2.12641535E-05
},
"Tags": [
"teal_coal_mine_4"
]
}
]
},
{
"GUID": "535035",
"Name": "Custom_Tile",
"Transform": {
"posX": -17.75,
"posY": 1.46963024,
"posZ": -7.5,
"rotX": -3.48430262E-08,
"rotY": 179.993942,
"rotZ": 4.699924E-09,
"scaleX": 3.708303,
"scaleY": 1.0,
"scaleZ": 3.71
},
"Nickname": "",
"Description": "",
"GMNotes": "Orange Player Mat",
"ColorDiffuse": {
"r": 0.8784314,
"g": 0.352938652,
"b": 0.294115126
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758140344/4D1FA465AF9E4FF06229EA0D16A0F2341705F105/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.102778032,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"AttachedSnapPoints": [
{
"Position": {
"x": 1.13479173,
"y": 0.199834719,
"z": 0.5422336
},
"Rotation": {
"x": 1.234921E-05,
"y": -0.00229134085,
"z": 2.13107433E-05
},
"Tags": [
"orange_cotton_mill_1"
]
},
{
"Position": {
"x": 1.137238,
"y": 0.200144723,
"z": 0.186666325
},
"Rotation": {
"x": 1.17760537E-05,
"y": -0.00230500055,
"z": 1.7262E-05
},
"Tags": [
"orange_cotton_mill_2"
]
},
{
"Position": {
"x": 1.136239,
"y": 0.200048134,
"z": -0.173967913
},
"Rotation": {
"x": 1.14933619E-05,
"y": -0.002933378,
"z": 1.05117942E-05
},
"Tags": [
"orange_cotton_mill_3"
]
},
{
"Position": {
"x": 1.14276123,
"y": 0.199721545,
"z": -0.5316482
},
"Rotation": {
"x": 1.21329958E-05,
"y": -0.00240062387,
"z": 1.67083635E-05
},
"Tags": [
"orange_cotton_mill_4"
]
},
{
"Position": {
"x": 0.5745221,
"y": 0.200513974,
"z": -0.5368122
},
"Rotation": {
"x": 1.39923268E-05,
"y": -0.00170394639,
"z": 1.12989519E-05
},
"Tags": [
"orange_port_4"
]
},
{
"Position": {
"x": 0.5760142,
"y": 0.200532541,
"z": -0.179837048
},
"Rotation": {
"x": 1.30465633E-05,
"y": -0.00244160625,
"z": 9.85814E-06
},
"Tags": [
"orange_port_3"
]
},
{
"Position": {
"x": 0.576962769,
"y": 0.200118139,
"z": 0.179332674
},
"Rotation": {
"x": 1.33608046E-05,
"y": -0.00218205922,
"z": 1.94697877E-05
},
"Tags": [
"orange_port_2"
]
},
{
"Position": {
"x": 0.5745165,
"y": 0.199791938,
"z": 0.534900844
},
"Rotation": {
"x": 1.34849015E-05,
"y": -0.00215473864,
"z": 2.31583563E-05
},
"Tags": [
"orange_port_1"
]
},
{
"Position": {
"x": -0.00299320812,
"y": 0.200198084,
"z": 0.535548747
},
"Rotation": {
"x": 1.27743351E-05,
"y": -0.001963492,
"z": 2.1357464E-05
},
"Tags": [
"orange_shipyard_pre"
]
},
{
"Position": {
"x": -0.000547025644,
"y": 0.200055555,
"z": 0.179980591
},
"Rotation": {
"x": 1.09015054E-05,
"y": -0.00200447068,
"z": 2.04370172E-05
},
"Tags": [
"orange_shipyard_1"
]
},
{
"Position": {
"x": -0.00149576389,
"y": 0.200012416,
"z": -0.179189086
},
"Rotation": {
"x": 9.818871E-06,
"y": -0.0023186584,
"z": 1.77356142E-05
},
"Tags": [
"orange_shipyard_2"
]
},
{
"Position": {
"x": -0.5785697,
"y": 0.1999549,
"z": -0.533158839
},
"Rotation": {
"x": 9.809287E-06,
"y": -0.00154001592,
"z": 1.96633428E-05
},
"Tags": [
"orange_iron_works_4"
]
},
{
"Position": {
"x": -0.5770777,
"y": 0.200048074,
"z": -0.176183641
},
"Rotation": {
"x": 1.46025477E-05,
"y": -0.00230500451,
"z": 2.54861843E-05
},
"Tags": [
"orange_iron_works_3"
]
},
{
"Position": {
"x": -0.5761289,
"y": 0.200190768,
"z": 0.182985589
},
"Rotation": {
"x": 1.22424881E-05,
"y": -0.002059114,
"z": 1.98166672E-05
},
"Tags": [
"orange_iron_works_2"
]
},
{
"Position": {
"x": -0.578575134,
"y": 0.200045168,
"z": 0.5385537
},
"Rotation": {
"x": 1.02716749E-05,
"y": -0.00201813015,
"z": 2.26515021E-05
},
"Tags": [
"orange_iron_works_1"
]
},
{
"Position": {
"x": -1.14861989,
"y": 0.200254649,
"z": 0.542142153
},
"Rotation": {
"x": 1.2915878E-05,
"y": -0.00200447347,
"z": 2.0523692E-05
},
"Tags": [
"orange_coal_mine_1"
]
},
{
"Position": {
"x": -1.14617383,
"y": 0.1998086,
"z": 0.186574
},
"Rotation": {
"x": 1.323918E-05,
"y": -0.00204545516,
"z": 2.038361E-05
},
"Tags": [
"orange_coal_mine_2"
]
},
{
"Position": {
"x": -1.14712286,
"y": 0.199402347,
"z": -0.172596127
},
"Rotation": {
"x": 1.26076666E-05,
"y": -0.00229134131,
"z": 1.88027789E-05
},
"Tags": [
"orange_coal_mine_3"
]
},
{
"Position": {
"x": -1.14861488,
"y": 0.199360773,
"z": -0.529571354
},
"Rotation": {
"x": 1.08998447E-05,
"y": -0.00154001731,
"z": 2.12641535E-05
},
"Tags": [
"orange_coal_mine_4"
]
}
]
},
{
"GUID": "918d17",
"Name": "Custom_Tile",
"Transform": {
"posX": -17.7487469,
"posY": 1.46963012,
"posZ": 7.50004625,
"rotX": 9.871998E-09,
"rotY": 180.004288,
"rotZ": -6.849013E-09,
"scaleX": 3.708303,
"scaleY": 1.0,
"scaleZ": 3.71
},
"Nickname": "",
"Description": "",
"GMNotes": "Yellow Player Mat",
"ColorDiffuse": {
"r": 0.8627451,
"g": 0.854901969,
"b": 0.23529157
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758140344/4D1FA465AF9E4FF06229EA0D16A0F2341705F105/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.102778032,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"AttachedSnapPoints": [
{
"Position": {
"x": 1.136239,
"y": 0.200048134,
"z": -0.173967913
},
"Rotation": {
"x": 1.14933619E-05,
"y": -0.002933378,
"z": 1.05117942E-05
},
"Tags": [
"yellow_cotton_mill_3"
]
},
{
"Position": {
"x": 1.14276123,
"y": 0.199721545,
"z": -0.5316482
},
"Rotation": {
"x": 1.21329958E-05,
"y": -0.00240062387,
"z": 1.67083635E-05
},
"Tags": [
"yellow_cotton_mill_4"
]
},
{
"Position": {
"x": 0.5745221,
"y": 0.200513974,
"z": -0.5368122
},
"Rotation": {
"x": 1.39923268E-05,
"y": -0.00170394639,
"z": 1.12989519E-05
},
"Tags": [
"yellow_port_4"
]
},
{
"Position": {
"x": 0.5760142,
"y": 0.200532541,
"z": -0.179837048
},
"Rotation": {
"x": 1.30465633E-05,
"y": -0.00244160625,
"z": 9.85814E-06
},
"Tags": [
"yellow_port_3"
]
},
{
"Position": {
"x": 0.576962769,
"y": 0.200118139,
"z": 0.179332674
},
"Rotation": {
"x": 1.33608046E-05,
"y": -0.00218205922,
"z": 1.94697877E-05
},
"Tags": [
"yellow_port_2"
]
},
{
"Position": {
"x": 0.5745165,
"y": 0.199791938,
"z": 0.534900844
},
"Rotation": {
"x": 1.34849015E-05,
"y": -0.00215473864,
"z": 2.31583563E-05
},
"Tags": [
"yellow_port_1"
]
},
{
"Position": {
"x": -0.00299320812,
"y": 0.200198084,
"z": 0.535548747
},
"Rotation": {
"x": 1.27743351E-05,
"y": -0.001963492,
"z": 2.1357464E-05
},
"Tags": [
"yellow_shipyard_pre"
]
},
{
"Position": {
"x": -0.000547025644,
"y": 0.200055555,
"z": 0.179980591
},
"Rotation": {
"x": 1.09015054E-05,
"y": -0.00200447068,
"z": 2.04370172E-05
},
"Tags": [
"yellow_shipyard_1"
]
},
{
"Position": {
"x": -0.00149576389,
"y": 0.200012416,
"z": -0.179189086
},
"Rotation": {
"x": 9.818871E-06,
"y": -0.0023186584,
"z": 1.77356142E-05
},
"Tags": [
"yellow_shipyard_2"
]
},
{
"Position": {
"x": -0.5785697,
"y": 0.1999549,
"z": -0.533158839
},
"Rotation": {
"x": 9.809287E-06,
"y": -0.00154001592,
"z": 1.96633428E-05
},
"Tags": [
"yellow_iron_works_4"
]
},
{
"Position": {
"x": -0.5770777,
"y": 0.200048074,
"z": -0.176183641
},
"Rotation": {
"x": 1.46025477E-05,
"y": -0.00230500451,
"z": 2.54861843E-05
},
"Tags": [
"yellow_iron_works_3"
]
},
{
"Position": {
"x": -0.5761289,
"y": 0.200190768,
"z": 0.182985589
},
"Rotation": {
"x": 1.22424881E-05,
"y": -0.002059114,
"z": 1.98166672E-05
},
"Tags": [
"yellow_iron_works_2"
]
},
{
"Position": {
"x": -0.578575134,
"y": 0.200045168,
"z": 0.5385537
},
"Rotation": {
"x": 1.02716749E-05,
"y": -0.00201813015,
"z": 2.26515021E-05
},
"Tags": [
"yellow_iron_works_1"
]
},
{
"Position": {
"x": -1.14861989,
"y": 0.200254649,
"z": 0.542142153
},
"Rotation": {
"x": 1.2915878E-05,
"y": -0.00200447347,
"z": 2.0523692E-05
},
"Tags": [
"yellow_coal_mine_1"
]
},
{
"Position": {
"x": -1.14617383,
"y": 0.1998086,
"z": 0.186574
},
"Rotation": {
"x": 1.323918E-05,
"y": -0.00204545516,
"z": 2.038361E-05
},
"Tags": [
"yellow_coal_mine_2"
]
},
{
"Position": {
"x": -1.14712286,
"y": 0.199402347,
"z": -0.172596127
},
"Rotation": {
"x": 1.26076666E-05,
"y": -0.00229134131,
"z": 1.88027789E-05
},
"Tags": [
"yellow_coal_mine_3"
]
},
{
"Position": {
"x": -1.14861488,
"y": 0.199360773,
"z": -0.529571354
},
"Rotation": {
"x": 1.08998447E-05,
"y": -0.00154001731,
"z": 2.12641535E-05
},
"Tags": [
"yellow_coal_mine_4"
]
},
{
"Position": {
"x": 1.13479173,
"y": 0.1027782,
"z": 0.542233646
},
"Rotation": {
"x": -4.1778506E-07,
"y": -0.00362000032,
"z": 2.919626E-07
},
"Tags": [
"yellow_cotton_mill_1"
]
},
{
"Position": {
"x": 1.13723838,
"y": 0.1027782,
"z": 0.18666631
},
"Rotation": {
"x": -5.804711E-07,
"y": 359.981384,
"z": -1.60176981E-07
},
"Tags": [
"yellow_cotton_mill_2"
]
}
]
},
{
"GUID": "9f5d4d",
"Name": "Custom_Tile",
"Transform": {
"posX": 17.75,
"posY": 1.46869624,
"posZ": 7.50000143,
"rotX": 0.003964047,
"rotY": 179.991348,
"rotZ": 0.0124557,
"scaleX": 3.708303,
"scaleY": 1.0,
"scaleZ": 3.71
},
"Nickname": "",
"Description": "",
"GMNotes": "Purple Player Mat",
"ColorDiffuse": {
"r": 0.623529434,
"g": 0.12156608,
"b": 0.9372549
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758140344/4D1FA465AF9E4FF06229EA0D16A0F2341705F105/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.102778032,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"AttachedSnapPoints": [
{
"Position": {
"x": 1.13479173,
"y": 0.199834719,
"z": 0.5422336
},
"Rotation": {
"x": 1.234921E-05,
"y": -0.00229134085,
"z": 2.13107433E-05
},
"Tags": [
"purple_cotton_mill_1"
]
},
{
"Position": {
"x": 1.137238,
"y": 0.200144723,
"z": 0.186666325
},
"Rotation": {
"x": 1.17760537E-05,
"y": -0.00230500055,
"z": 1.7262E-05
},
"Tags": [
"purple_cotton_mill_2"
]
},
{
"Position": {
"x": 1.136239,
"y": 0.200048134,
"z": -0.173967913
},
"Rotation": {
"x": 1.14933619E-05,
"y": -0.002933378,
"z": 1.05117942E-05
},
"Tags": [
"purple_cotton_mill_3"
]
},
{
"Position": {
"x": 1.14276123,
"y": 0.199721545,
"z": -0.5316482
},
"Rotation": {
"x": 1.21329958E-05,
"y": -0.00240062387,
"z": 1.67083635E-05
},
"Tags": [
"purple_cotton_mill_4"
]
},
{
"Position": {
"x": 0.5745221,
"y": 0.200513974,
"z": -0.5368122
},
"Rotation": {
"x": 1.39923268E-05,
"y": -0.00170394639,
"z": 1.12989519E-05
},
"Tags": [
"purple_port_4"
]
},
{
"Position": {
"x": 0.5760142,
"y": 0.200532541,
"z": -0.179837048
},
"Rotation": {
"x": 1.30465633E-05,
"y": -0.00244160625,
"z": 9.85814E-06
},
"Tags": [
"purple_port_3"
]
},
{
"Position": {
"x": 0.576962769,
"y": 0.200118139,
"z": 0.179332674
},
"Rotation": {
"x": 1.33608046E-05,
"y": -0.00218205922,
"z": 1.94697877E-05
},
"Tags": [
"purple_port_2"
]
},
{
"Position": {
"x": 0.5745165,
"y": 0.199791938,
"z": 0.534900844
},
"Rotation": {
"x": 1.34849015E-05,
"y": -0.00215473864,
"z": 2.31583563E-05
},
"Tags": [
"purple_port_1"
]
},
{
"Position": {
"x": -0.00299320812,
"y": 0.200198084,
"z": 0.535548747
},
"Rotation": {
"x": 1.27743351E-05,
"y": -0.001963492,
"z": 2.1357464E-05
},
"Tags": [
"purple_shipyard_pre"
]
},
{
"Position": {
"x": -0.000547025644,
"y": 0.200055555,
"z": 0.179980591
},
"Rotation": {
"x": 1.09015054E-05,
"y": -0.00200447068,
"z": 2.04370172E-05
},
"Tags": [
"purple_shipyard_1"
]
},
{
"Position": {
"x": -0.00149576389,
"y": 0.200012416,
"z": -0.179189086
},
"Rotation": {
"x": 9.818871E-06,
"y": -0.0023186584,
"z": 1.77356142E-05
},
"Tags": [
"purple_shipyard_2"
]
},
{
"Position": {
"x": -0.5785697,
"y": 0.1999549,
"z": -0.533158839
},
"Rotation": {
"x": 9.809287E-06,
"y": -0.00154001592,
"z": 1.96633428E-05
},
"Tags": [
"purple_iron_works_4"
]
},
{
"Position": {
"x": -0.5770777,
"y": 0.200048074,
"z": -0.176183641
},
"Rotation": {
"x": 1.46025477E-05,
"y": -0.00230500451,
"z": 2.54861843E-05
},
"Tags": [
"purple_iron_works_3"
]
},
{
"Position": {
"x": -0.5761289,
"y": 0.200190768,
"z": 0.182985589
},
"Rotation": {
"x": 1.22424881E-05,
"y": -0.002059114,
"z": 1.98166672E-05
},
"Tags": [
"purple_iron_works_2"
]
},
{
"Position": {
"x": -0.578575134,
"y": 0.200045168,
"z": 0.5385537
},
"Rotation": {
"x": 1.02716749E-05,
"y": -0.00201813015,
"z": 2.26515021E-05
},
"Tags": [
"purple_iron_works_1"
]
},
{
"Position": {
"x": -1.14861989,
"y": 0.200254649,
"z": 0.542142153
},
"Rotation": {
"x": 1.2915878E-05,
"y": -0.00200447347,
"z": 2.0523692E-05
},
"Tags": [
"purple_coal_mine_1"
]
},
{
"Position": {
"x": -1.14617383,
"y": 0.1998086,
"z": 0.186574
},
"Rotation": {
"x": 1.323918E-05,
"y": -0.00204545516,
"z": 2.038361E-05
},
"Tags": [
"purple_coal_mine_2"
]
},
{
"Position": {
"x": -1.14712286,
"y": 0.199402347,
"z": -0.172596127
},
"Rotation": {
"x": 1.26076666E-05,
"y": -0.00229134131,
"z": 1.88027789E-05
},
"Tags": [
"purple_coal_mine_3"
]
},
{
"Position": {
"x": -1.14861488,
"y": 0.199360773,
"z": -0.529571354
},
"Rotation": {
"x": 1.08998447E-05,
"y": -0.00154001731,
"z": 2.12641535E-05
},
"Tags": [
"purple_coal_mine_4"
]
}
]
},
{
"GUID": "bfaa29",
"Name": "Custom_Tile",
"Transform": {
"posX": 25.9984779,
"posY": 1.46963024,
"posZ": 7.4994235,
"rotX": -1.07525004E-07,
"rotY": 180.0,
"rotZ": 2.59878412E-08,
"scaleX": 3.7723155,
"scaleY": 1.0,
"scaleZ": 3.7723155
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.249996722,
"g": 0.249996722,
"b": 0.249996722
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143049/09CECB6153B68EBDB6736072ED660FCC0450C4B1/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "0eb685",
"Name": "Custom_Tile",
"Transform": {
"posX": -26.0,
"posY": 1.46963024,
"posZ": -7.50000048,
"rotX": -1.3873165E-07,
"rotY": 179.994659,
"rotZ": 7.69914053E-08,
"scaleX": 3.7723155,
"scaleY": 1.0,
"scaleZ": 3.7723155
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.249996722,
"g": 0.249996722,
"b": 0.249996722
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143049/09CECB6153B68EBDB6736072ED660FCC0450C4B1/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "5a517e",
"Name": "Custom_Tile",
"Transform": {
"posX": -26.0,
"posY": 1.46963024,
"posZ": 7.5,
"rotX": -1.06334767E-07,
"rotY": 179.997528,
"rotZ": -8.77086563E-08,
"scaleX": 3.7723155,
"scaleY": 1.0,
"scaleZ": 3.7723155
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 0.249996722,
"g": 0.249996722,
"b": 0.249996722
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143049/09CECB6153B68EBDB6736072ED660FCC0450C4B1/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "0554b9",
"Name": "Custom_Tile",
"Transform": {
"posX": 8.5,
"posY": 1.46963012,
"posZ": 15.5,
"rotX": -2.05963545E-07,
"rotY": 180.0,
"rotZ": -9.236149E-08,
"scaleX": 2.42404532,
"scaleY": 1.0,
"scaleZ": 2.42404532
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758143128/9ED9BDE3A068691B8C75121E06E7C800F4B21B9B/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.102777719,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "7e93fe",
"Name": "Custom_Token",
"Transform": {
"posX": -8.678856,
"posY": 1.57214,
"posZ": 8.258834,
"rotX": 0.08594269,
"rotY": 180.000229,
"rotZ": 359.975769,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "Deck Splitter",
"Description": "",
"GMNotes": "Deck Splitter",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758144181/D4B6864BE62DE30640E7E5CE5509A0A49C9F57D6/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomToken": {
"Thickness": 0.1,
"MergeDistancePixels": 5.0,
"StandUp": false,
"Stackable": false
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"AttachedDecals": [
{
"Transform": {
"posX": -0.0215115771,
"posY": -0.109999895,
"posZ": 0.0529685058,
"rotX": 270.0,
"rotY": 0.262854874,
"rotZ": 0.0,
"scaleX": 2.76926851,
"scaleY": 4.177249,
"scaleZ": 4.17725
},
"CustomDecal": {
"Name": "TRAIN",
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758144274/D3D1578E550ED05CC40930BC455A6B6F61F563DC/",
"Size": 1.0
}
}
]
},
{
"GUID": "f2074f",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -11.2381506,
"posY": 1.99963,
"posZ": -10.0009737,
"rotX": -6.928612E-07,
"rotY": -0.0003540489,
"rotZ": 4.59353231E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 0",
"Description": "",
"GMNotes": "Marker Zone 0",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "2b8c8a",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -11.2566214,
"posY": 1.99963,
"posZ": -9.148079,
"rotX": 2.24850828E-06,
"rotY": -0.000337646256,
"rotZ": 1.20730348E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 1",
"Description": "",
"GMNotes": "Marker Zone 1",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "b75c1a",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -11.2287884,
"posY": 1.99963,
"posZ": -8.292118,
"rotX": -8.969287E-07,
"rotY": -0.000341099774,
"rotZ": 6.067743E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 2",
"Description": "",
"GMNotes": "Marker Zone 2",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "66d962",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -11.2484369,
"posY": 1.99963,
"posZ": -7.47901344,
"rotX": -9.738213E-08,
"rotY": -0.000332571974,
"rotZ": 9.29710268E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 3",
"Description": "",
"GMNotes": "Marker Zone 3",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "1324f5",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -11.23579,
"posY": 1.99963,
"posZ": -6.645796,
"rotX": 2.25924032E-06,
"rotY": -0.000351010938,
"rotZ": 6.119577E-08,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 4",
"Description": "",
"GMNotes": "Marker Zone 4",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "37940b",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -11.2480326,
"posY": 1.99963,
"posZ": -5.80959368,
"rotX": 1.06058089E-07,
"rotY": -0.0003417056,
"rotZ": 1.3305056E-06,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 5",
"Description": "",
"GMNotes": "Marker Zone 5",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "1b3c0a",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -11.2398758,
"posY": 1.99963,
"posZ": -4.96746254,
"rotX": 3.143909E-07,
"rotY": -0.0003219232,
"rotZ": -5.364035E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 6",
"Description": "",
"GMNotes": "Marker Zone 6",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "4796e2",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -11.2548828,
"posY": 1.99963,
"posZ": -4.14968538,
"rotX": 2.90996263E-06,
"rotY": -0.000332084135,
"rotZ": 7.75907665E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 7",
"Description": "",
"GMNotes": "Marker Zone 7",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "e04d51",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -11.2410116,
"posY": 1.99963,
"posZ": -3.31530118,
"rotX": -3.96884843E-07,
"rotY": -0.000326446956,
"rotZ": 8.466364E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 8",
"Description": "",
"GMNotes": "Marker Zone 8",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "54e6a9",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -11.2525587,
"posY": 1.99963,
"posZ": -2.479112,
"rotX": 6.760807E-07,
"rotY": -0.00033047,
"rotZ": 9.165069E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 9",
"Description": "",
"GMNotes": "Marker Zone 9",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "f9ae21",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -11.2452526,
"posY": 1.99963,
"posZ": -1.61057687,
"rotX": -4.635232E-07,
"rotY": -0.000326099485,
"rotZ": 1.41007447E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 10",
"Description": "",
"GMNotes": "Marker Zone 10",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "de4170",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -11.2503042,
"posY": 1.99963,
"posZ": -0.6454381,
"rotX": -1.20250161E-06,
"rotY": -0.000323103857,
"rotZ": 2.97111541E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 11",
"Description": "",
"GMNotes": "Marker Zone 11",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "a12840",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -11.255024,
"posY": 1.99963,
"posZ": 0.02198281,
"rotX": 8.40271753E-07,
"rotY": -0.000179799,
"rotZ": -1.49664709E-06,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 12",
"Description": "",
"GMNotes": "Marker Zone 12",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "aa4dd4",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -11.24569,
"posY": 1.99963,
"posZ": 1.01374674,
"rotX": 2.09961217E-06,
"rotY": -0.0001917126,
"rotZ": 5.74813271E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 13",
"Description": "",
"GMNotes": "Marker Zone 13",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "0f6808",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -11.2476368,
"posY": 1.99963,
"posZ": 1.66118824,
"rotX": 1.46205286E-06,
"rotY": -0.000208428668,
"rotZ": 1.14005309E-06,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 14",
"Description": "",
"GMNotes": "Marker Zone 14",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "cad61b",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -11.2503929,
"posY": 1.99963,
"posZ": 2.686369,
"rotX": 3.26149774E-07,
"rotY": -0.000224528165,
"rotZ": 9.01661338E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 15",
"Description": "",
"GMNotes": "Marker Zone 15",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "a509b7",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -11.251687,
"posY": 1.99963,
"posZ": 3.33970547,
"rotX": 5.01893737E-07,
"rotY": -0.000226856719,
"rotZ": 6.46287E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 16",
"Description": "",
"GMNotes": "Marker Zone 16",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "6f2d85",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -11.2525826,
"posY": 1.99962986,
"posZ": 4.33373833,
"rotX": -2.15293358E-06,
"rotY": -0.000249347155,
"rotZ": 8.12581163E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 17",
"Description": "",
"GMNotes": "Marker Zone 17",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "1827b2",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -11.2475853,
"posY": 1.99962986,
"posZ": 4.977632,
"rotX": -1.08305073E-06,
"rotY": -0.0002566353,
"rotZ": 1.20685752E-06,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 18",
"Description": "",
"GMNotes": "Marker Zone 18",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "81c467",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -11.2512274,
"posY": 1.99962986,
"posZ": 5.996561,
"rotX": -6.206964E-07,
"rotY": -0.0002749054,
"rotZ": 3.89976549E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 19",
"Description": "",
"GMNotes": "Marker Zone 19",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "b7cca3",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -11.2465105,
"posY": 1.99962986,
"posZ": 6.64405441,
"rotX": 2.98945133E-06,
"rotY": -0.000280966371,
"rotZ": 2.39157043E-06,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 20",
"Description": "",
"GMNotes": "Marker Zone 20",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "3f0cb2",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -11.244751,
"posY": 1.99962986,
"posZ": 7.639434,
"rotX": -7.230861E-07,
"rotY": -0.0003052853,
"rotZ": 1.06686912E-06,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 21",
"Description": "",
"GMNotes": "Marker Zone 21",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "dbdda8",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -11.2498055,
"posY": 1.99962986,
"posZ": 8.30389,
"rotX": -1.82954284E-06,
"rotY": -0.000327414484,
"rotZ": 1.1565924E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 22",
"Description": "",
"GMNotes": "Marker Zone 22",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "a30e95",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -11.2456722,
"posY": 1.99962986,
"posZ": 9.295528,
"rotX": 2.99567228E-06,
"rotY": -0.000338035054,
"rotZ": 1.66958148E-06,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 23",
"Description": "",
"GMNotes": "Marker Zone 23",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "d53c52",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -11.24485,
"posY": 1.99962986,
"posZ": 9.956332,
"rotX": -4.0061903E-07,
"rotY": -0.000337204547,
"rotZ": 9.729627E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 24",
"Description": "",
"GMNotes": "Marker Zone 24",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "9c1585",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 11.2411518,
"posY": 1.99963,
"posZ": -9.718085,
"rotX": -1.07668654E-06,
"rotY": -0.000427660038,
"rotZ": 2.56265281E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 72",
"Description": "",
"GMNotes": "Marker Zone 72",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "9a5110",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 11.2484951,
"posY": 1.99963,
"posZ": -9.070899,
"rotX": 2.73495516E-06,
"rotY": -0.000415292685,
"rotZ": -1.644164E-06,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 71",
"Description": "",
"GMNotes": "Marker Zone 71",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "58fbc3",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 11.2439032,
"posY": 1.99963,
"posZ": -8.400974,
"rotX": -1.48903371E-06,
"rotY": -0.0003988898,
"rotZ": -1.10311078E-06,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 70",
"Description": "",
"GMNotes": "Marker Zone 70",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "eb1084",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 11.2376623,
"posY": 1.99963,
"posZ": -7.742776,
"rotX": -3.256659E-08,
"rotY": -0.000356004282,
"rotZ": 2.973278E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 69",
"Description": "",
"GMNotes": "Marker Zone 69",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "cffcce",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 11.2532492,
"posY": 1.99963,
"posZ": -6.400381,
"rotX": 3.84646955E-06,
"rotY": -0.000406652543,
"rotZ": -5.30792E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 68",
"Description": "",
"GMNotes": "Marker Zone 68",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "f05e47",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 11.2523718,
"posY": 1.99963,
"posZ": -5.753667,
"rotX": 8.9291575E-07,
"rotY": -0.000372145558,
"rotZ": -1.61511559E-06,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 67",
"Description": "",
"GMNotes": "Marker Zone 67",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "ea7ce4",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 11.24777,
"posY": 1.99963,
"posZ": -5.08373833,
"rotX": 3.71773325E-07,
"rotY": -0.000347730442,
"rotZ": -9.457571E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 66",
"Description": "",
"GMNotes": "Marker Zone 66",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "952598",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 11.2418613,
"posY": 1.99963,
"posZ": -4.4129715,
"rotX": -2.57405844E-07,
"rotY": -0.000334359764,
"rotZ": -8.407864E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 65",
"Description": "",
"GMNotes": "Marker Zone 65",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "bffa84",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 11.2565451,
"posY": 1.99963,
"posZ": -3.10827327,
"rotX": 3.02560721E-07,
"rotY": -0.00032154427,
"rotZ": -5.656841E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 64",
"Description": "",
"GMNotes": "Marker Zone 64",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "052676",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 11.2620792,
"posY": 1.99963,
"posZ": -2.45013237,
"rotX": 1.09384177E-06,
"rotY": -0.000298245315,
"rotZ": -1.18981882E-06,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 63",
"Description": "",
"GMNotes": "Marker Zone 63",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "c5369e",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 11.2574768,
"posY": 1.99963,
"posZ": -1.78020573,
"rotX": -4.720107E-07,
"rotY": -0.000293778372,
"rotZ": -8.809148E-09,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 62",
"Description": "",
"GMNotes": "Marker Zone 62",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "80d90e",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 11.2515678,
"posY": 1.99963,
"posZ": -1.10943925,
"rotX": 2.2680847E-06,
"rotY": -0.000394124945,
"rotZ": 1.22637431E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 61",
"Description": "",
"GMNotes": "Marker Zone 61",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "083a7c",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 11.253006,
"posY": 1.99963,
"posZ": 0.2506844,
"rotX": 3.8043342E-07,
"rotY": -0.000366999739,
"rotZ": -3.18570272E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 60",
"Description": "",
"GMNotes": "Marker Zone 60",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "17a06f",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 11.2484026,
"posY": 1.99963,
"posZ": 0.9206107,
"rotX": -1.22342225E-08,
"rotY": -0.000378210825,
"rotZ": 1.57793068E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 59",
"Description": "",
"GMNotes": "Marker Zone 59",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "2f96ab",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 11.2424927,
"posY": 1.99963,
"posZ": 1.59137762,
"rotX": 3.06022662E-06,
"rotY": -0.0003571478,
"rotZ": -1.28141949E-06,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 58",
"Description": "",
"GMNotes": "Marker Zone 58",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "2eadcd",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 11.2590637,
"posY": 1.99963,
"posZ": 2.95298553,
"rotX": 3.325948E-07,
"rotY": -0.000331334828,
"rotZ": -4.14101066E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 57",
"Description": "",
"GMNotes": "Marker Zone 57",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "1ca0be",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 11.2544641,
"posY": 1.99962986,
"posZ": 3.62291265,
"rotX": 2.47479488E-06,
"rotY": -0.000332153984,
"rotZ": -1.02188585E-06,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 56",
"Description": "",
"GMNotes": "Marker Zone 56",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "635261",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 11.2485552,
"posY": 1.99962986,
"posZ": 4.29367876,
"rotX": -1.0644975E-06,
"rotY": -0.000308282848,
"rotZ": -1.13652663E-06,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 55",
"Description": "",
"GMNotes": "Marker Zone 55",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "7545fe",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 11.25259,
"posY": 1.99962986,
"posZ": 5.67536354,
"rotX": -1.46208538E-06,
"rotY": -0.000309467345,
"rotZ": -1.002954E-06,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 54",
"Description": "",
"GMNotes": "Marker Zone 54",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "f57c65",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 11.2479887,
"posY": 1.99962986,
"posZ": 6.34528971,
"rotX": 3.028146E-06,
"rotY": -0.000303517329,
"rotZ": 1.11391421E-06,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 53",
"Description": "",
"GMNotes": "Marker Zone 53",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "7a9b26",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 11.2420788,
"posY": 1.99962986,
"posZ": 7.01605558,
"rotX": 2.7205698E-07,
"rotY": -0.0002680758,
"rotZ": -1.17484171E-06,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 52",
"Description": "",
"GMNotes": "Marker Zone 52",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "7ce05d",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 11.24341,
"posY": 1.99962986,
"posZ": 8.350762,
"rotX": 7.64217532E-07,
"rotY": -0.000280324166,
"rotZ": -2.67552849E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 51",
"Description": "",
"GMNotes": "Marker Zone 51",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "2f99d1",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 11.2388077,
"posY": 1.99962986,
"posZ": 9.020689,
"rotX": 3.33602384E-06,
"rotY": -0.000418746582,
"rotZ": -9.73071E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 50",
"Description": "",
"GMNotes": "Marker Zone 50",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "4cfc99",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 11.2328987,
"posY": 1.99962986,
"posZ": 9.691455,
"rotX": 5.67306358E-07,
"rotY": -0.00044424177,
"rotZ": -6.40474354E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 49",
"Description": "",
"GMNotes": "Marker Zone 49",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "5c080b",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -10.0841017,
"posY": 1.99962986,
"posZ": 11.2520151,
"rotX": -1.19283914E-06,
"rotY": -0.0003690329,
"rotZ": 5.434374E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 25",
"Description": "",
"GMNotes": "Marker Zone 25",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "664292",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -9.425637,
"posY": 1.99962986,
"posZ": 11.2450666,
"rotX": -3.62145869E-07,
"rotY": -0.000339065475,
"rotZ": 1.53223061E-06,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 26",
"Description": "",
"GMNotes": "Marker Zone 26",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "521cbd",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -8.459726,
"posY": 1.99962986,
"posZ": 11.24911,
"rotX": -6.337406E-07,
"rotY": -0.000361719052,
"rotZ": 2.15273587E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 27",
"Description": "",
"GMNotes": "Marker Zone 27",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "1c0ce7",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -7.80126143,
"posY": 1.99962986,
"posZ": 11.2421637,
"rotX": 9.749539E-07,
"rotY": -0.000383740145,
"rotZ": 1.42759575E-06,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 28",
"Description": "",
"GMNotes": "Marker Zone 28",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "4efb9f",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -6.76828337,
"posY": 1.99962986,
"posZ": 11.2492847,
"rotX": -6.64145944E-07,
"rotY": -0.000367956265,
"rotZ": -1.32852037E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 29",
"Description": "",
"GMNotes": "Marker Zone 29",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "b75c8f",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -6.10982037,
"posY": 1.99962986,
"posZ": 11.2423372,
"rotX": -2.511079E-07,
"rotY": -0.000358352176,
"rotZ": 2.772676E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 30",
"Description": "",
"GMNotes": "Marker Zone 30",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "b2e4d8",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -4.86030531,
"posY": 1.99962986,
"posZ": 11.2345648,
"rotX": 5.914471E-07,
"rotY": -0.000402926962,
"rotZ": 9.43582165E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 31",
"Description": "",
"GMNotes": "Marker Zone 31",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "cccda5",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -4.201822,
"posY": 1.99962986,
"posZ": 11.2425289,
"rotX": -8.672347E-07,
"rotY": -0.0004473206,
"rotZ": -3.314934E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 32",
"Description": "",
"GMNotes": "Marker Zone 32",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "432e13",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -3.528399,
"posY": 1.99962986,
"posZ": 11.237628,
"rotX": 5.007275E-07,
"rotY": -0.000407511427,
"rotZ": 7.238229E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 33",
"Description": "",
"GMNotes": "Marker Zone 33",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "38bbe6",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -2.1730907,
"posY": 1.99962986,
"posZ": 11.2349768,
"rotX": 4.75447081E-07,
"rotY": -0.000420077384,
"rotZ": 4.006977E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 34",
"Description": "",
"GMNotes": "Marker Zone 34",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "d25ee0",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -1.5183897,
"posY": 1.99962986,
"posZ": 11.2330713,
"rotX": 4.1128277E-07,
"rotY": -0.000417502277,
"rotZ": 3.656562E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 35",
"Description": "",
"GMNotes": "Marker Zone 35",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "aef11e",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -0.8450004,
"posY": 1.99962986,
"posZ": 11.2524309,
"rotX": 6.53893039E-07,
"rotY": -0.000419754477,
"rotZ": -1.35834725E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 36",
"Description": "",
"GMNotes": "Marker Zone 36",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "4c8952",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 0.5234163,
"posY": 1.99962986,
"posZ": 11.25004,
"rotX": -5.44813645E-07,
"rotY": -0.000326842739,
"rotZ": -1.569963E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 37",
"Description": "",
"GMNotes": "Marker Zone 37",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "30534b",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 1.19249,
"posY": 1.99962986,
"posZ": 11.2470932,
"rotX": 6.21345E-07,
"rotY": -0.0003326413,
"rotZ": -3.188174E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 38",
"Description": "",
"GMNotes": "Marker Zone 38",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "acbfe8",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 1.85920441,
"posY": 1.99962986,
"posZ": 11.2413883,
"rotX": 4.085089E-07,
"rotY": -0.000333359436,
"rotZ": 2.68508757E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 39",
"Description": "",
"GMNotes": "Marker Zone 39",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "31937d",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 3.21055722,
"posY": 1.99962986,
"posZ": 11.2403421,
"rotX": 6.29683768E-07,
"rotY": -0.0003277945,
"rotZ": -1.94854863E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 40",
"Description": "",
"GMNotes": "Marker Zone 40",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "989c9e",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 3.86902,
"posY": 1.99962986,
"posZ": 11.2333956,
"rotX": -8.122383E-07,
"rotY": -0.0003475387,
"rotZ": -4.87856767E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 41",
"Description": "",
"GMNotes": "Marker Zone 41",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "bb92aa",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 4.5394,
"posY": 1.99962986,
"posZ": 11.233489,
"rotX": 8.015271E-07,
"rotY": -0.000321235566,
"rotZ": 6.974758E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 42",
"Description": "",
"GMNotes": "Marker Zone 42",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "8d54fb",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 5.985114,
"posY": 1.99962986,
"posZ": 11.2506065,
"rotX": 7.01164765E-07,
"rotY": -0.000326263456,
"rotZ": -6.519933E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 43",
"Description": "",
"GMNotes": "Marker Zone 43",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "fa3a9f",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 6.643578,
"posY": 1.99962986,
"posZ": 11.2436571,
"rotX": -2.00165786E-07,
"rotY": -0.000340455881,
"rotZ": 7.58964632E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 44",
"Description": "",
"GMNotes": "Marker Zone 44",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "d4bf75",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 7.319199,
"posY": 1.99962986,
"posZ": 11.2539015,
"rotX": 1.40610467E-07,
"rotY": -0.000333425676,
"rotZ": 1.28715533E-06,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 45",
"Description": "",
"GMNotes": "Marker Zone 45",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "388124",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 8.643486,
"posY": 1.99962986,
"posZ": 11.25595,
"rotX": 1.01272633E-06,
"rotY": -0.0003259702,
"rotZ": -7.13582E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 46",
"Description": "",
"GMNotes": "Marker Zone 46",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "fa77cb",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 9.3019495,
"posY": 1.99962986,
"posZ": 11.2490025,
"rotX": -9.95518E-07,
"rotY": -0.00037131118,
"rotZ": -9.1155573E-07,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 47",
"Description": "",
"GMNotes": "Marker Zone 47",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "cf8e95",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 9.98528,
"posY": 1.99962986,
"posZ": 11.2488079,
"rotX": -6.252068E-07,
"rotY": -0.0003374154,
"rotZ": -1.820272E-08,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 48",
"Description": "",
"GMNotes": "Marker Zone 48",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "710a1a",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -10.13858,
"posY": 1.971043,
"posZ": -11.36,
"rotX": 0.0,
"rotY": 0.0,
"rotZ": 0.0,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 99",
"Description": "",
"GMNotes": "Marker Zone 99",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "2e57c0",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -9.473327,
"posY": 1.971043,
"posZ": -11.36,
"rotX": 0.0,
"rotY": 0.0,
"rotZ": 0.0,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 98",
"Description": "",
"GMNotes": "Marker Zone 98",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "065de7",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -8.800491,
"posY": 1.971043,
"posZ": -11.36,
"rotX": 0.0,
"rotY": 0.0,
"rotZ": 0.0,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 97",
"Description": "",
"GMNotes": "Marker Zone 97",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "2ac41f",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -7.68633032,
"posY": 1.971043,
"posZ": -11.36,
"rotX": 0.0,
"rotY": 0.0,
"rotZ": 0.0,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 96",
"Description": "",
"GMNotes": "Marker Zone 96",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "f74296",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -7.01011467,
"posY": 1.971043,
"posZ": -11.36,
"rotX": 0.0,
"rotY": 0.0,
"rotZ": 0.0,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 95",
"Description": "",
"GMNotes": "Marker Zone 95",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "ded76c",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -6.350058,
"posY": 1.971043,
"posZ": -11.36,
"rotX": 0.0,
"rotY": 0.0,
"rotZ": 0.0,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 94",
"Description": "",
"GMNotes": "Marker Zone 94",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "ec970d",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -5.683516,
"posY": 1.971043,
"posZ": -11.36,
"rotX": 0.0,
"rotY": 0.0,
"rotZ": 0.0,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 93",
"Description": "",
"GMNotes": "Marker Zone 93",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "e6a17b",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -4.478816,
"posY": 1.971043,
"posZ": -11.36,
"rotX": 0.0,
"rotY": 0.0,
"rotZ": 0.0,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 92",
"Description": "",
"GMNotes": "Marker Zone 92",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "b9402a",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -3.81209373,
"posY": 1.971043,
"posZ": -11.36,
"rotX": 0.0,
"rotY": 0.0,
"rotZ": 0.0,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 91",
"Description": "",
"GMNotes": "Marker Zone 91",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "dfd2d8",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -3.15210247,
"posY": 1.971043,
"posZ": -11.36,
"rotX": 0.0,
"rotY": 0.0,
"rotZ": 0.0,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 90",
"Description": "",
"GMNotes": "Marker Zone 90",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "2ffeb2",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -2.485204,
"posY": 1.971043,
"posZ": -11.36,
"rotX": 0.0,
"rotY": 0.0,
"rotZ": 0.0,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 89",
"Description": "",
"GMNotes": "Marker Zone 89",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "fd513a",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -1.32808471,
"posY": 1.971043,
"posZ": -11.36,
"rotX": 0.0,
"rotY": 0.0,
"rotZ": 0.0,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 88",
"Description": "",
"GMNotes": "Marker Zone 88",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "d9c3e5",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -0.6520912,
"posY": 1.971043,
"posZ": -11.36,
"rotX": 0.0,
"rotY": 0.0,
"rotZ": 0.0,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 87",
"Description": "",
"GMNotes": "Marker Zone 87",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "d36f07",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 0.0212007351,
"posY": 1.971043,
"posZ": -11.3600006,
"rotX": 0.0,
"rotY": 0.0,
"rotZ": 0.0,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 86",
"Description": "",
"GMNotes": "Marker Zone 86",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "8944ae",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 1.79162717,
"posY": 1.971043,
"posZ": -11.36,
"rotX": 0.0,
"rotY": 0.0,
"rotZ": 0.0,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 84",
"Description": "",
"GMNotes": "Marker Zone 84",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "5a45be",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 2.467069,
"posY": 1.971043,
"posZ": -11.36,
"rotX": 0.0,
"rotY": 0.0,
"rotZ": 0.0,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 83",
"Description": "",
"GMNotes": "Marker Zone 83",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "8b4d2f",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 0.6881026,
"posY": 1.971043,
"posZ": -11.36,
"rotX": 0.0,
"rotY": 0.0,
"rotZ": 0.0,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 85",
"Description": "",
"GMNotes": "Marker Zone 85",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "97dbc2",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 3.1156435,
"posY": 1.971043,
"posZ": -11.36,
"rotX": 0.0,
"rotY": 0.0,
"rotZ": 0.0,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 82",
"Description": "",
"GMNotes": "Marker Zone 82",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "5bf198",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 3.78252864,
"posY": 1.971043,
"posZ": -11.36,
"rotX": 0.0,
"rotY": 0.0,
"rotZ": 0.0,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 81",
"Description": "",
"GMNotes": "Marker Zone 81",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "38fc99",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 4.9493494,
"posY": 1.971043,
"posZ": -11.36,
"rotX": 0.0,
"rotY": 0.0,
"rotZ": 0.0,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 80",
"Description": "",
"GMNotes": "Marker Zone 80",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "b2a364",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 5.618721,
"posY": 1.971043,
"posZ": -11.36,
"rotX": 0.0,
"rotY": 0.0,
"rotZ": 0.0,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 79",
"Description": "",
"GMNotes": "Marker Zone 79",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "21bbb7",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 6.28575134,
"posY": 1.971043,
"posZ": -11.36,
"rotX": 0.0,
"rotY": 0.0,
"rotZ": 0.0,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 78",
"Description": "",
"GMNotes": "Marker Zone 78",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "d2588c",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 6.952167,
"posY": 1.971043,
"posZ": -11.36,
"rotX": 0.0,
"rotY": 0.0,
"rotZ": 0.0,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 77",
"Description": "",
"GMNotes": "Marker Zone 77",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "d14f1d",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 8.114813,
"posY": 1.971043,
"posZ": -11.36,
"rotX": 0.0,
"rotY": 0.0,
"rotZ": 0.0,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 76",
"Description": "",
"GMNotes": "Marker Zone 76",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "3eec34",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 8.790795,
"posY": 1.971043,
"posZ": -11.36,
"rotX": 0.0,
"rotY": 0.0,
"rotZ": 0.0,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 75",
"Description": "",
"GMNotes": "Marker Zone 75",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "cdb362",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 9.457517,
"posY": 1.971043,
"posZ": -11.36,
"rotX": 0.0,
"rotY": 0.0,
"rotZ": 0.0,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 74",
"Description": "",
"GMNotes": "Marker Zone 74",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "e9bf39",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 10.1336718,
"posY": 1.971043,
"posZ": -11.36,
"rotX": 0.0,
"rotY": 0.0,
"rotZ": 0.0,
"scaleX": 0.6,
"scaleY": 1.0,
"scaleZ": 0.6
},
"Nickname": "Marker Zone 73",
"Description": "",
"GMNotes": "Marker Zone 73",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "d2b988",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -1.20816135,
"posY": 2.74963,
"posZ": -5.92293072,
"rotX": 2.07418623E-07,
"rotY": 180.016174,
"rotZ": 1.38444022E-06,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Ellesmere Port",
"Description": "",
"GMNotes": "Ellesmere Port",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "d6e737",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -2.32087874,
"posY": 2.74963,
"posZ": -3.08589482,
"rotX": 4.2550364E-06,
"rotY": 180.01619,
"rotZ": -3.204392E-06,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Liverpool (SE)",
"Description": "",
"GMNotes": "Liverpool (SE)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "91911b",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -2.32426953,
"posY": 2.74963,
"posZ": -1.99493432,
"rotX": 6.215173E-08,
"rotY": 180.016174,
"rotZ": 3.835134E-07,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Liverpool (NE)",
"Description": "",
"GMNotes": "Liverpool (NE)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "50d45a",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -3.4318912,
"posY": 2.74963,
"posZ": -3.08994627,
"rotX": -3.35740054E-07,
"rotY": 180.01619,
"rotZ": 3.80918124E-07,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Liverpool (SW)",
"Description": "",
"GMNotes": "Liverpool (SW)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "e3b7a3",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -3.43528175,
"posY": 2.74963,
"posZ": -1.99898708,
"rotX": 1.63064135E-06,
"rotY": 180.016174,
"rotZ": 1.57429622E-06,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Liverpool (NW)",
"Description": "",
"GMNotes": "Liverpool (NW)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "3ccdcc",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -4.929013,
"posY": 2.74963,
"posZ": -3.92770362,
"rotX": 6.27767747E-07,
"rotY": 180.0162,
"rotZ": -1.64785251E-06,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Birkenhead",
"Description": "",
"GMNotes": "Birkenhead",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "29e020",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 0.963176966,
"posY": 2.74963,
"posZ": -3.90870953,
"rotX": 1.62297613E-06,
"rotY": 180.016174,
"rotZ": 3.75768741E-06,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Warrington & Runcorn (W)",
"Description": "",
"GMNotes": "Warrington & Runcorn (W)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "245596",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 2.07419,
"posY": 2.74963,
"posZ": -3.90465736,
"rotX": 5.972434E-07,
"rotY": 180.016174,
"rotZ": -1.586247E-06,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Warrington & Runcorn (E)",
"Description": "",
"GMNotes": "Warrington & Runcorn (E)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "efed8b",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 5.8894434,
"posY": 2.74963,
"posZ": -3.73146367,
"rotX": -3.922418E-06,
"rotY": 180.026047,
"rotZ": 8.17629768E-07,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Manchester (SE)",
"Description": "",
"GMNotes": "Manchester (SE)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "ff7d65",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 4.77842951,
"posY": 2.74963,
"posZ": -3.73551631,
"rotX": -4.663139E-07,
"rotY": 180.026138,
"rotZ": -1.09395637E-06,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Manchester (SW)",
"Description": "",
"GMNotes": "Manchester (SW)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "33f755",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 4.77504253,
"posY": 2.74963,
"posZ": -2.64454556,
"rotX": -1.232958E-06,
"rotY": 180.0162,
"rotZ": 1.1967303E-06,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Manchester (NW)",
"Description": "",
"GMNotes": "Manchester (NW)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "12686f",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 5.88605,
"posY": 2.74963,
"posZ": -2.64050245,
"rotX": -4.28149542E-06,
"rotY": 180.026077,
"rotZ": 1.15006884E-07,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Manchester (NE)",
"Description": "",
"GMNotes": "Manchester (NE)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "a15ce2",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 6.94697857,
"posY": 2.74963,
"posZ": -6.53838634,
"rotX": -7.075896E-06,
"rotY": 180.016174,
"rotZ": 3.27388619E-07,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Stockport (W)",
"Description": "",
"GMNotes": "Stockport (W)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "129bf3",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 8.057991,
"posY": 2.74963,
"posZ": -6.53433466,
"rotX": -6.05098876E-06,
"rotY": 180.016174,
"rotZ": 9.604335E-07,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Stockport (E)",
"Description": "",
"GMNotes": "Stockport (E)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "3323a4",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 5.10307741,
"posY": 2.74963,
"posZ": -8.410059,
"rotX": 1.9797E-06,
"rotY": 180.01619,
"rotZ": -1.09061409E-06,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Macclesfield (W)",
"Description": "",
"GMNotes": "Macclesfield (W)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "875228",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 6.21409035,
"posY": 2.74963,
"posZ": -8.406008,
"rotX": -1.14610771E-07,
"rotY": 180.01619,
"rotZ": 7.811446E-07,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Macclesfield (E)",
"Description": "",
"GMNotes": "Macclesfield (E)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "c14e85",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 8.18237,
"posY": 2.74963,
"posZ": -2.66870832,
"rotX": -1.36413223E-06,
"rotY": 180.0162,
"rotZ": 1.04550884E-06,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Oldham (W)",
"Description": "",
"GMNotes": "Oldham (W)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "f438fe",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 9.293381,
"posY": 2.74963,
"posZ": -2.66465521,
"rotX": 3.37052853E-07,
"rotY": 180.0162,
"rotZ": 1.57514182E-06,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Oldham (E)",
"Description": "",
"GMNotes": "Oldham (E)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "c9f3a4",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 8.365694,
"posY": 2.74963,
"posZ": 0.197712451,
"rotX": 1.01890407E-06,
"rotY": 180.0162,
"rotZ": 1.60697721E-06,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Rochdale (SW)",
"Description": "",
"GMNotes": "Rochdale (SW)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "f88687",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 9.476693,
"posY": 2.74963,
"posZ": 0.2017682,
"rotX": 1.13955616E-06,
"rotY": 180.0162,
"rotZ": 1.24192616E-06,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Rochdale (SE)",
"Description": "",
"GMNotes": "Rochdale (SE)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "010e97",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 8.909928,
"posY": 2.74963,
"posZ": 1.26209688,
"rotX": 1.99539386E-06,
"rotY": 180.016251,
"rotZ": 1.74299487E-06,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Rochdale (N)",
"Description": "",
"GMNotes": "Rochdale (N)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "05533c",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 8.284352,
"posY": 2.74963,
"posZ": 4.014075,
"rotX": -2.27428259E-07,
"rotY": 180.0162,
"rotZ": 2.24991231E-06,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Colne (S)",
"Description": "",
"GMNotes": "Colne (S)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "711ca4",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 8.28474,
"posY": 2.74963,
"posZ": 5.12379646,
"rotX": 2.47199E-07,
"rotY": 180.01619,
"rotZ": 6.785005E-07,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Colne (N)",
"Description": "",
"GMNotes": "Colne (N)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "d2d30a",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 5.78185844,
"posY": 2.74963,
"posZ": 3.61885214,
"rotX": -4.841592E-06,
"rotY": 181.68631,
"rotZ": 1.99876877E-06,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Burnley (S)",
"Description": "",
"GMNotes": "Burnley (S)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "bb78b2",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 5.752948,
"posY": 2.74963,
"posZ": 4.739874,
"rotX": 5.043136E-07,
"rotY": 180.0398,
"rotZ": 1.62444746E-06,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Burnley (N)",
"Description": "",
"GMNotes": "Burnley (N)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "358114",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 2.65022659,
"posY": 2.74963,
"posZ": -1.60547674,
"rotX": 1.18100154E-07,
"rotY": 180.016174,
"rotZ": 2.55434657E-06,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Bolton (S)",
"Description": "",
"GMNotes": "Bolton (S)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "b699b0",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 3.225164,
"posY": 2.74963,
"posZ": -0.497063577,
"rotX": -1.02101308E-06,
"rotY": 180.016174,
"rotZ": 2.89799141E-06,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Bolton (NE)",
"Description": "",
"GMNotes": "Bolton (NE)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "087a08",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 2.11416531,
"posY": 2.74963,
"posZ": -0.5011195,
"rotX": -8.19261857E-07,
"rotY": 180.016174,
"rotZ": 3.99049941E-06,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Bolton (NW)",
"Description": "",
"GMNotes": "Bolton (NW)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "38f370",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 2.63792562,
"posY": 2.74963,
"posZ": 1.96895015,
"rotX": 7.575537E-08,
"rotY": 180.015549,
"rotZ": -1.31567015E-06,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Blackburn (W)",
"Description": "",
"GMNotes": "Blackburn (W)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "6f807f",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 3.22392082,
"posY": 2.74963,
"posZ": 3.075326,
"rotX": -2.15228829E-06,
"rotY": 180.025055,
"rotZ": 2.05196031E-07,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Blackburn (N)",
"Description": "",
"GMNotes": "Blackburn (N)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "68b7fb",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 3.74892473,
"posY": 2.74963,
"posZ": 1.97300565,
"rotX": -2.88229012E-06,
"rotY": 180.02507,
"rotZ": -1.325662E-06,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Blackburn (E)",
"Description": "",
"GMNotes": "Blackburn (E)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "ed3210",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 0.03199135,
"posY": 2.74963,
"posZ": 2.901878,
"rotX": 8.509953E-08,
"rotY": 180.016174,
"rotZ": 5.390084E-07,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Preston (S)",
"Description": "",
"GMNotes": "Preston (S)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "ec5dd1",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -0.5040705,
"posY": 2.74963,
"posZ": 4.006235,
"rotX": -5.89229649E-06,
"rotY": 180.016174,
"rotZ": -1.07334665E-06,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Preston (NW)",
"Description": "",
"GMNotes": "Preston (NW)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "2b0036",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 0.606929064,
"posY": 2.74963,
"posZ": 4.01029158,
"rotX": -6.91112E-07,
"rotY": 180.016174,
"rotZ": 5.55057477E-06,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Preston (NE)",
"Description": "",
"GMNotes": "Preston (NE)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "f97fdc",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -0.04609292,
"posY": 2.74963,
"posZ": -1.13234186,
"rotX": 6.59614329E-07,
"rotY": 180.01619,
"rotZ": 3.46918137E-06,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Wigan (S)",
"Description": "",
"GMNotes": "Wigan (S)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "101933",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -0.042169556,
"posY": 2.74963,
"posZ": -0.04951049,
"rotX": 7.359839E-07,
"rotY": 180.01619,
"rotZ": 1.0232435E-06,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Wigan (N)",
"Description": "",
"GMNotes": "Wigan (N)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "275cb6",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -2.90051317,
"posY": 2.74963,
"posZ": 5.12316227,
"rotX": -2.53780371E-07,
"rotY": 180.01619,
"rotZ": 3.37100829E-07,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Fleetwood",
"Description": "",
"GMNotes": "Fleetwood",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "426a10",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -4.99560833,
"posY": 2.74962974,
"posZ": 8.941371,
"rotX": -1.07592359E-06,
"rotY": 180.01619,
"rotZ": 5.32676768E-06,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Barrow-in-Furness (W)",
"Description": "",
"GMNotes": "Barrow-in-Furness (W)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "cf611f",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -3.90944719,
"posY": 2.74962974,
"posZ": 8.944532,
"rotX": -5.466171E-06,
"rotY": 180.01619,
"rotZ": 3.855644E-06,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Barrow-in-Furness (E)",
"Description": "",
"GMNotes": "Barrow-in-Furness (E)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "594082",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 0.5375825,
"posY": 2.74963,
"posZ": 7.27008629,
"rotX": -4.81929965E-06,
"rotY": 179.971985,
"rotZ": -2.5240372E-06,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Lancaster (E)",
"Description": "",
"GMNotes": "Lancaster (E)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "faa397",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -0.5485834,
"posY": 2.74963,
"posZ": 7.26692057,
"rotX": 2.66202278E-07,
"rotY": 180.017166,
"rotZ": 2.17837368E-07,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Lancaster (W)",
"Description": "",
"GMNotes": "Lancaster (W)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "497481",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -8.678791,
"posY": 2.204866,
"posZ": 8.258827,
"rotX": -7.94918662E-07,
"rotY": 180.015121,
"rotZ": 180.0,
"scaleX": 2.8,
"scaleY": 1.41047132,
"scaleZ": 4.0
},
"Nickname": "Play Deck Zone",
"Description": "",
"GMNotes": "Play Deck Zone",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "471072",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -9.216141,
"posY": 1.57963,
"posZ": -7.615025,
"rotX": 4.76336766E-07,
"rotY": -0.0008830209,
"rotZ": 6.88775756E-08,
"scaleX": 0.8,
"scaleY": 0.16,
"scaleZ": 0.8
},
"Nickname": "Player Token Zone 1",
"Description": "",
"GMNotes": "Player Token Zone 1",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "c962ad",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -6.83027458,
"posY": 1.57963,
"posZ": -7.615624,
"rotX": 5.306948E-08,
"rotY": -0.0009010953,
"rotZ": 5.258443E-07,
"scaleX": 0.8,
"scaleY": 0.16,
"scaleZ": 0.8
},
"Nickname": "Player Token Zone 2",
"Description": "",
"GMNotes": "Player Token Zone 2",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "aa57da",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -4.47411251,
"posY": 1.57963,
"posZ": -7.60204268,
"rotX": 9.886762E-07,
"rotY": 359.5089,
"rotZ": -4.03743826E-07,
"scaleX": 0.8,
"scaleY": 0.16,
"scaleZ": 0.8
},
"Nickname": "Player Token Zone 3",
"Description": "",
"GMNotes": "Player Token Zone 3",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "6bfba6",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -2.08,
"posY": 1.57963,
"posZ": -7.61134624,
"rotX": 4.464949E-07,
"rotY": -0.000889520452,
"rotZ": 3.45163784E-07,
"scaleX": 0.8,
"scaleY": 0.16,
"scaleZ": 0.8
},
"Nickname": "Player Token Zone 4",
"Description": "",
"GMNotes": "Player Token Zone 4",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "d02bc1",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -8.82536,
"posY": 1.74963,
"posZ": -1.5383898,
"rotX": 1.98874886E-06,
"rotY": 9.129864E-06,
"rotZ": 1.08848474E-06,
"scaleX": 0.5,
"scaleY": 0.5,
"scaleZ": 0.5
},
"Nickname": "Distant Market 1",
"Description": "",
"GMNotes": "Distant Market 1",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "7921a6",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -8.286664,
"posY": 1.74963,
"posZ": -1.54284346,
"rotX": 5.254297E-07,
"rotY": 359.979553,
"rotZ": 1.33697749E-05,
"scaleX": 0.5,
"scaleY": 0.5,
"scaleZ": 0.5
},
"Nickname": "Distant Market 2",
"Description": "",
"GMNotes": "Distant Market 2",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "e8e801",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -8.287932,
"posY": 1.74963,
"posZ": -2.38314533,
"rotX": 3.26232822E-07,
"rotY": -0.000461184245,
"rotZ": 1.16122089E-06,
"scaleX": 0.5,
"scaleY": 0.5,
"scaleZ": 0.5
},
"Nickname": "Distant Market 3",
"Description": "",
"GMNotes": "Distant Market 3",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "9d419f",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -8.829992,
"posY": 1.74963,
"posZ": -2.37665653,
"rotX": 3.122733E-07,
"rotY": 0.0007776387,
"rotZ": 1.50182657E-07,
"scaleX": 0.5,
"scaleY": 0.5,
"scaleZ": 0.5
},
"Nickname": "Distant Market 4",
"Description": "",
"GMNotes": "Distant Market 4",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "844a56",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -8.836793,
"posY": 1.74963,
"posZ": -3.23158026,
"rotX": 9.586079E-06,
"rotY": 0.0323246159,
"rotZ": 1.598118E-05,
"scaleX": 0.5,
"scaleY": 0.5,
"scaleZ": 0.5
},
"Nickname": "Distant Market 5",
"Description": "",
"GMNotes": "Distant Market 5",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "045c53",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -8.30143452,
"posY": 1.74963,
"posZ": -3.241566,
"rotX": -1.20222509E-07,
"rotY": -1.8423214E-05,
"rotZ": -9.681729E-07,
"scaleX": 0.5,
"scaleY": 0.5,
"scaleZ": 0.5
},
"Nickname": "Distant Market 6",
"Description": "",
"GMNotes": "Distant Market 6",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "6bca4e",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -8.298298,
"posY": 1.74963,
"posZ": -4.097199,
"rotX": -5.20933645E-06,
"rotY": 0.03495709,
"rotZ": -3.96221049E-06,
"scaleX": 0.5,
"scaleY": 0.5,
"scaleZ": 0.5
},
"Nickname": "Distant Market 7",
"Description": "",
"GMNotes": "Distant Market 7",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "436909",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -8.833652,
"posY": 1.74963,
"posZ": -4.08728933,
"rotX": 2.18950618E-06,
"rotY": 2.23861252E-06,
"rotZ": 6.24687345E-07,
"scaleX": 0.5,
"scaleY": 0.5,
"scaleZ": 0.5
},
"Nickname": "Distant Market 8",
"Description": "",
"GMNotes": "Distant Market 8",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "617a3c",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -8.532613,
"posY": 1.74963,
"posZ": -4.84751654,
"rotX": 1.66453935E-06,
"rotY": 1.32945333E-05,
"rotZ": -1.19520428E-06,
"scaleX": 0.5,
"scaleY": 0.5,
"scaleZ": 0.5
},
"Nickname": "Distant Market 9",
"Description": "",
"GMNotes": "Distant Market 9",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "a0a19f",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 5.68659449,
"posY": 2.74963,
"posZ": -0.264488429,
"rotX": 2.37738641E-06,
"rotY": 180.0162,
"rotZ": 1.91600566E-06,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Bury (S)",
"Description": "",
"GMNotes": "Bury (S)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "4d037f",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 5.689539,
"posY": 2.74963,
"posZ": 0.8302728,
"rotX": 1.08882841E-06,
"rotY": 180.01622,
"rotZ": 2.30511978E-06,
"scaleX": 1.05,
"scaleY": 2.5,
"scaleZ": 1.05
},
"Nickname": "Bury (N)",
"Description": "",
"GMNotes": "Bury (N)",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "7bd02e",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": 13.5227747,
"posY": 1.54740882,
"posZ": -8.191986,
"rotX": -1.51928E-07,
"rotY": 180.0,
"rotZ": 7.434408E-08,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Teal Cotton Mill II",
"GMNotes": "Teal Cotton Mill II",
"ColorDiffuse": {
"r": 0.249996781,
"g": 0.249996781,
"b": 0.249996781
},
"Tags": [
"cotton_mill",
"teal_cotton_mill_2"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 3,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758146970/E3F423C2EB45E4F7FB0A69F40DC3A4ECA28D6707/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758147042/77F43AB4E806FF44B8CCC0892A9217D2229F8EF1/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.150000259,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "5",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "4f167a",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": 13.5118618,
"posY": 1.54740894,
"posZ": -5.5280304,
"rotX": -9.455853E-08,
"rotY": 180.0,
"rotZ": -8.35190463E-07,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Teal Cotton Mill IV",
"GMNotes": "Teal Cotton Mill IV",
"ColorDiffuse": {
"r": 0.249996662,
"g": 0.249996662,
"b": 0.249996662
},
"Tags": [
"cotton_mill",
"teal_cotton_mill_4"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 3,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758147252/9186F34D09AEDB59307C8D2E1C75979E37FBA8E5/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758147314/F0A00F09C87037D1A31180118D15C43C870C1D1B/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.150000259,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "12",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "bbb569",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": 15.6194992,
"posY": 1.57240868,
"posZ": -9.484708,
"rotX": -1.91573534E-07,
"rotY": 180.0,
"rotZ": 1.348147E-07,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Teal Port I",
"GMNotes": "Teal Port I",
"ColorDiffuse": {
"r": 0.249996722,
"g": 0.249996722,
"b": 0.249996722
},
"Tags": [
"port",
"teal_port_1"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758147832/2084A6569E36D40D9C73C8D60963459B1F84D5CC/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758147899/58D167A0DAF5911A841ADC1A9935D1BC838C1BAF/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.150000259,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "2",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "83381d",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": 15.61029,
"posY": 1.57240868,
"posZ": -8.16555,
"rotX": -2.32580817E-07,
"rotY": 180.000046,
"rotZ": -2.96154212E-08,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Teal Port II",
"GMNotes": "Teal Port II",
"ColorDiffuse": {
"r": 0.249996781,
"g": 0.249996781,
"b": 0.249996781
},
"Tags": [
"port",
"teal_port_2"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758147667/CCAF3EB273976EFCF86F8B37C9F2AE47BE91CA7B/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758147751/B9555DBF26FB5AB04E0998915410844B0ED18C8E/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.150000259,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "4",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "60aa55",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": 17.7517986,
"posY": 1.57240868,
"posZ": -8.167696,
"rotX": -1.02047338E-07,
"rotY": 179.999985,
"rotZ": -1.19282333E-07,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Teal Shipyard I",
"GMNotes": "Teal Shipyard I",
"ColorDiffuse": {
"r": 0.249996781,
"g": 0.249996781,
"b": 0.249996781
},
"Tags": [
"shipyard",
"teal_shipyard_1"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758148055/3CCBEA690B793DEFA40E3836CAE258074DDB270A/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758148129/CA95FF9C2A641DDB98DCEEE8A16D26926AB7B91A/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.150000259,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "10",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "360139",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": 17.75525,
"posY": 1.57240868,
"posZ": -6.83521032,
"rotX": -2.93976058E-07,
"rotY": 180.0,
"rotZ": -9.993877E-08,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Teal Shipyard II",
"GMNotes": "Teal Shipyard II",
"ColorDiffuse": {
"r": 0.249996781,
"g": 0.249996781,
"b": 0.249996781
},
"Tags": [
"shipyard",
"teal_shipyard_2"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758148195/BF20FF9FCE22E1636675A7EBCE789F38F8C310CA/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758148262/A4CEA18E071E711EF57628A733402F690E762D79/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.150000259,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "18",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "9a34a1",
"Name": "Custom_Tile",
"Transform": {
"posX": 19.8955135,
"posY": 1.57240868,
"posZ": -9.497812,
"rotX": -5.27616661E-09,
"rotY": 180.0,
"rotZ": -1.09734287E-07,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Teal Iron Works I",
"GMNotes": "Teal Iron Works I",
"ColorDiffuse": {
"r": 0.249996811,
"g": 0.249996811,
"b": 0.249996811
},
"Tags": [
"iron_works",
"teal_iron_works_1"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758140800/2DC2A6D66058671ABC6B7945EC8EB499211D4CBA/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758140861/A0A087C95E3A633BACE8B8BEF503EF587317E3C7/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.150000259,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "3",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "e6b052",
"Name": "Custom_Tile",
"Transform": {
"posX": 19.8863049,
"posY": 1.57240868,
"posZ": -8.178656,
"rotX": 1.00357489E-07,
"rotY": 180.0,
"rotZ": 2.05302527E-07,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Teal Iron Works II",
"GMNotes": "Teal Iron Works II",
"ColorDiffuse": {
"r": 0.249996811,
"g": 0.249996811,
"b": 0.249996811
},
"Tags": [
"iron_works",
"teal_iron_works_2"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758140688/C77E96F13D37E0E4CE9C9DBF0CF0E7990CACB8E3/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758140749/FF2F2820190F5F2FE4FFB74343B915F1FCCB71AD/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.150000259,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "5",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "558fba",
"Name": "Custom_Tile",
"Transform": {
"posX": 19.8896828,
"posY": 1.57240868,
"posZ": -6.846137,
"rotX": -3.98844037E-07,
"rotY": 180.0,
"rotZ": 1.65108759E-07,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Teal Iron Works III",
"GMNotes": "Teal Iron Works III",
"ColorDiffuse": {
"r": 0.249996811,
"g": 0.249996811,
"b": 0.249996811
},
"Tags": [
"iron_works",
"teal_iron_works_3"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758140588/6EDDBD4ADB2884D37AE9DC5862C76C67538DD9E1/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758140641/C6B51B2F1170E91D640C0B0C3E25A413A733DBE7/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.150000259,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "7",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "15be28",
"Name": "Custom_Tile",
"Transform": {
"posX": 19.8950787,
"posY": 1.57240868,
"posZ": -5.52175856,
"rotX": -4.70220755E-07,
"rotY": 179.999954,
"rotZ": 5.410195E-08,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Teal Iron Works IV",
"GMNotes": "Teal Iron Works IV",
"ColorDiffuse": {
"r": 0.249996811,
"g": 0.249996811,
"b": 0.249996811
},
"Tags": [
"iron_works",
"teal_iron_works_4"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758140421/E9784EB444F144743300D53AE633A3BBD14D3AAE/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758140495/BF9CFA2A0FC7834B031A75233E310876147F6FC4/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.150000259,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "9",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "3e0532",
"Name": "Custom_Tile",
"Transform": {
"posX": 22.0094147,
"posY": 1.57240868,
"posZ": -9.510904,
"rotX": -3.095745E-07,
"rotY": 180.0,
"rotZ": -2.70637663E-08,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Teal Coal Mine I",
"GMNotes": "Teal Coal Mine I",
"ColorDiffuse": {
"r": 0.249996752,
"g": 0.249996752,
"b": 0.249996752
},
"Tags": [
"coal_mine",
"teal_coal_mine_1"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758140920/A68921556712EE7067484CCB46AD53A90C6483BA/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758140975/8866730A4B6D49AA1E3906F0D2AD5263D5A59EBD/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.153472856,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "1",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "163fb7",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": 22.000536,
"posY": 1.57240868,
"posZ": -8.184089,
"rotX": 5.680248E-09,
"rotY": 180.0,
"rotZ": -2.29241891E-07,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Teal Coal Mine II",
"GMNotes": "Teal Coal Mine II",
"ColorDiffuse": {
"r": 0.249996781,
"g": 0.249996781,
"b": 0.249996781
},
"Tags": [
"coal_mine",
"teal_coal_mine_2"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758148675/78CCE54C4D9B0DF16DEBE1DF914402AB4BC159A5/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758148750/A718F4E5DA55609446F536BA4DE00FADA184344E/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.150000259,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "2",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "014c4b",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": 22.0035858,
"posY": 1.57240868,
"posZ": -6.85922575,
"rotX": -2.195872E-07,
"rotY": 180.0,
"rotZ": -1.99931478E-07,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Teal Coal Mine III",
"GMNotes": "Teal Coal Mine III",
"ColorDiffuse": {
"r": 0.249996781,
"g": 0.249996781,
"b": 0.249996781
},
"Tags": [
"coal_mine",
"teal_coal_mine_3"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758148528/B64C9AD46D509E6688893C4A1BD10271CA3DCA96/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758148607/B47541EB00296B62B508CD4E62C84EF63B6F206D/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.150000259,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "3",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "ed289b",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": 22.00898,
"posY": 1.57240868,
"posZ": -5.53484726,
"rotX": -2.15943047E-07,
"rotY": 180.0,
"rotZ": -5.448238E-08,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Teal Coal Mine IV",
"GMNotes": "Teal Coal Mine IV",
"ColorDiffuse": {
"r": 0.249996781,
"g": 0.249996781,
"b": 0.249996781
},
"Tags": [
"coal_mine",
"teal_coal_mine_4"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758148333/C00E1ADCB6BC78BE01D88F89C2BC4FAEB92AED66/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758148408/298078C92F7E8BB0B194D474EE93E7BD84523495/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.150000259,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "4",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "92cedf",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": 13.541832,
"posY": 1.54740882,
"posZ": -9.512129,
"rotX": -1.03122716E-06,
"rotY": 180.0,
"rotZ": -4.12424157E-07,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Teal Cotton Mill I",
"GMNotes": "Teal Cotton Mill I",
"ColorDiffuse": {
"r": 0.249996811,
"g": 0.249996811,
"b": 0.249996811
},
"Tags": [
"cotton_mill",
"teal_cotton_mill_1"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 3,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758146821/7AB77EE1BE5605BC6C235D2B6EE5D415F0E8F7D9/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758146895/7FD12F99D4FDE9EE0938B0519AFA4ACC002A56F9/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.150000259,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "5",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "6fe82b",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": 13.54223,
"posY": 1.52225018,
"posZ": 5.48765755,
"rotX": 0.003963058,
"rotY": 179.996933,
"rotZ": 0.0124627221,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Purple Cotton Mill I",
"GMNotes": "Purple Cotton Mill I",
"ColorDiffuse": {
"r": 0.249996781,
"g": 0.249996781,
"b": 0.249996781
},
"Tags": [
"cotton_mill",
"purple_cotton_mill_1"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 3,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758152142/FD767CD5BAAF1872A0AFD1785FD7810AF8D1D48E/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758152211/07825D95423703DB728A01A5D16BEF7533BFA951/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "5",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "5a79c9",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": 13.53296,
"posY": 1.52234352,
"posZ": 6.80681467,
"rotX": 0.00396524137,
"rotY": 179.986633,
"rotZ": 0.0124612786,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Purple Cotton Mill II",
"GMNotes": "Purple Cotton Mill II",
"ColorDiffuse": {
"r": 0.249996781,
"g": 0.249996781,
"b": 0.249996781
},
"Tags": [
"cotton_mill",
"purple_cotton_mill_2"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 3,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758152286/F2BD9F7DBAC53DA67EFBE84AD7D17C4E9985E569/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758152361/A44D8AC15DDFE596D9105C722C408567CC3AA503/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "5",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "ab358b",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": 13.5364637,
"posY": 1.52243507,
"posZ": 8.144766,
"rotX": 0.003964284,
"rotY": 180.003464,
"rotZ": 0.0124621028,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Purple Cotton Mill III",
"GMNotes": "Purple Cotton Mill III",
"ColorDiffuse": {
"r": 0.249996781,
"g": 0.249996781,
"b": 0.249996781
},
"Tags": [
"cotton_mill",
"purple_cotton_mill_3"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 3,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758152443/F333CC6D53CBF85E2B445C766BFCFEB72C9BE478/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758152511/9FCADB37F8A23C516BA7F0B798AA2CA6E93373A5/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "9",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "b5295c",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": 15.6106434,
"posY": 1.57189369,
"posZ": 6.83432055,
"rotX": 0.00396016566,
"rotY": 180.006,
"rotZ": 0.0124577079,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Purple Port II",
"GMNotes": "Purple Port II",
"ColorDiffuse": {
"r": 0.249996752,
"g": 0.249996752,
"b": 0.249996752
},
"Tags": [
"port",
"purple_port_2"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758151702/83AA5EC838800FE2F3008CFC2F084E54E8784131/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758151773/3C2F68D43C27D72820A791747EE1DF01D5E00566/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "4",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "2c7a0d",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": 15.6139793,
"posY": 1.57198513,
"posZ": 8.166831,
"rotX": 0.00396023458,
"rotY": 180.006256,
"rotZ": 0.0124580888,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Purple Port III",
"GMNotes": "Purple Port III",
"ColorDiffuse": {
"r": 0.249996722,
"g": 0.249996722,
"b": 0.249996722
},
"Tags": [
"port",
"purple_port_3"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758151847/56F50711C9821AFF2B6843AC519C9B29334A7DED/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758151915/731A6D9E24DC02B76B282A882CCDD240EDBCD9F1/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "6",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "a5beec",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": 17.7521915,
"posY": 1.571428,
"posZ": 6.832244,
"rotX": 0.00396586349,
"rotY": 179.979919,
"rotZ": 0.0124560306,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Purple Shipyard I",
"GMNotes": "Purple Shipyard I",
"ColorDiffuse": {
"r": 0.249996752,
"g": 0.249996752,
"b": 0.249996752
},
"Tags": [
"purple_shipyard_1",
"shipyard"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758151298/0E2CE68B3DB0559D85E0B1D73D0CBC9C778D4E84/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758151361/1AC009AA0C3C79E9117D33896E543354A4D18E9B/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "10",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "904a9c",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": 17.7555122,
"posY": 1.57151937,
"posZ": 8.1647625,
"rotX": 0.0039599333,
"rotY": 180.0064,
"rotZ": 0.0124583719,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Purple Shipyard II",
"GMNotes": "Purple Shipyard II",
"ColorDiffuse": {
"r": 0.249996752,
"g": 0.249996752,
"b": 0.249996752
},
"Tags": [
"purple_shipyard_2",
"shipyard"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758151427/FB37AD7772F8BB06FEBA7D0AD6DB697896B2D668/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758151489/3C959342E543E1F8BCC5D7334C239C29C2C3917C/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "18",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "6b48f6",
"Name": "Custom_Tile",
"Transform": {
"posX": 19.8959217,
"posY": 1.57086992,
"posZ": 5.50225735,
"rotX": 0.003959866,
"rotY": 180.006653,
"rotZ": 0.0124578839,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Purple Iron Works I",
"GMNotes": "Purple Iron Works I",
"ColorDiffuse": {
"r": 0.249996781,
"g": 0.249996781,
"b": 0.249996781
},
"Tags": [
"iron_works",
"purple_iron_works_1"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758142737/020ECD7841F32F910F209AE6A21CBC75C0BE1EF1/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758142818/4D3C6F2818137476357456BE33C96C5FD8CBC5B7/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "3",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "ca9f98",
"Name": "Custom_Tile",
"Transform": {
"posX": 19.88665,
"posY": 1.57096314,
"posZ": 6.82141256,
"rotX": 0.003963912,
"rotY": 179.989044,
"rotZ": 0.0124569749,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Purple Iron Works II",
"GMNotes": "Purple Iron Works II",
"ColorDiffuse": {
"r": 0.249996781,
"g": 0.249996781,
"b": 0.249996781
},
"Tags": [
"iron_works",
"purple_iron_works_2"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758142600/29FD7AE387CBAE802EAB11627C7F4E9A5AB8DFCB/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758142671/869185336FABEE06449BE6036A4C71E667068E41/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "5",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "17e08b",
"Name": "Custom_Tile",
"Transform": {
"posX": 19.88995,
"posY": 1.57105458,
"posZ": 8.153917,
"rotX": 0.00396021,
"rotY": 180.005478,
"rotZ": 0.0124578662,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Purple Iron Works III",
"GMNotes": "Purple Iron Works III",
"ColorDiffuse": {
"r": 0.249996781,
"g": 0.249996781,
"b": 0.249996781
},
"Tags": [
"iron_works",
"purple_iron_works_3"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758142282/ADCAB0EB5C93F2DA00C0F646C7E77C16BD513E04/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758142361/14486EE60638BFB15532F316AE5A76B45C611824/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "7",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "f9599e",
"Name": "Custom_Tile",
"Transform": {
"posX": 19.8953075,
"posY": 1.571145,
"posZ": 9.478311,
"rotX": 0.003963145,
"rotY": 179.9914,
"rotZ": 0.012456947,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Purple Iron Works IV",
"GMNotes": "Purple Iron Works IV",
"ColorDiffuse": {
"r": 0.249996781,
"g": 0.249996781,
"b": 0.249996781
},
"Tags": [
"iron_works",
"purple_iron_works_4"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758142441/436493B059F0EFDC7D8022EB4DAD257A1A9365B6/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758142518/CD2CD6B82641D212E1ABFFDB864FD9B4453500E0/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "9",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "809733",
"Name": "Custom_Tile",
"Transform": {
"posX": 22.009819,
"posY": 1.57040954,
"posZ": 5.489263,
"rotX": 0.00395760173,
"rotY": 180.01799,
"rotZ": 0.0124587147,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Purple Coal Mine I",
"GMNotes": "Purple Coal Mine I",
"ColorDiffuse": {
"r": 0.249996781,
"g": 0.249996781,
"b": 0.249996781
},
"Tags": [
"coal_mine",
"purple_coal_mine_1"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758142896/9BE91A2867A5F18B2E1CAB8061350DB53E7A8367/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758142981/D16AC5F83AFDFC9787270CF1C08C4E01BBB1EAFB/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "1",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "761df7",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": 22.0005379,
"posY": 1.57050276,
"posZ": 6.808421,
"rotX": 0.00396016426,
"rotY": 180.006653,
"rotZ": 0.0124578821,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Purple Coal Mine II",
"GMNotes": "Purple Coal Mine II",
"ColorDiffuse": {
"r": 0.249996752,
"g": 0.249996752,
"b": 0.249996752
},
"Tags": [
"coal_mine",
"purple_coal_mine_2"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758151085/84353F4BFB3801115563A3F54A64A2BEB0F65363/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758151156/5F921A68C0508EAA654B43D402B75D29CFE0C059/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "2",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "ff653e",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": 22.0038872,
"posY": 1.57059419,
"posZ": 8.140932,
"rotX": 0.003959876,
"rotY": 180.007172,
"rotZ": 0.0124580869,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Purple Coal Mine III",
"GMNotes": "Purple Coal Mine III",
"ColorDiffuse": {
"r": 0.249996752,
"g": 0.249996752,
"b": 0.249996752
},
"Tags": [
"coal_mine",
"purple_coal_mine_3"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758150948/56D660AD86C8763D640542FBCD2E8660884E0964/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758151019/A2F1D5FA431BD3B3169C5C7EABEC79292DFD11D6/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "3",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "ad1441",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": 22.0092182,
"posY": 1.57068455,
"posZ": 9.465314,
"rotX": 0.00396024669,
"rotY": 180.0064,
"rotZ": 0.01245789,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Purple Coal Mine IV",
"GMNotes": "Purple Coal Mine IV",
"ColorDiffuse": {
"r": 0.249996752,
"g": 0.249996752,
"b": 0.249996752
},
"Tags": [
"coal_mine",
"purple_coal_mine_4"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758150820/A0AA577ADC5E0806E007AE1D635C15966C57C430/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758150880/F738A6389D662B0660BA68C6B3CD1EC6DF4850BE/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "4",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "02314f",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": -21.95794,
"posY": 1.5224086,
"posZ": -9.512132,
"rotX": -1.82386415E-07,
"rotY": 180.0,
"rotZ": -1.05189962E-07,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Orange Cotton Mill I",
"GMNotes": "Orange Cotton Mill I",
"ColorDiffuse": {
"r": 0.249996752,
"g": 0.249996752,
"b": 0.249996752
},
"Tags": [
"cotton_mill",
"orange_cotton_mill_1"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 3,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758144842/BB5F9F1BFEE1A0E47FA5A2E7269BEAEB2F9B465B/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758144916/7C883DE15FCA9694171676BB323513A3B2A03E29/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "5",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "db54d1",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": -21.96715,
"posY": 1.5224086,
"posZ": -8.192978,
"rotX": -4.45234534E-08,
"rotY": 180.025482,
"rotZ": -6.74932551E-07,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Orange Cotton Mill II",
"GMNotes": "Orange Cotton Mill II",
"ColorDiffuse": {
"r": 0.249996781,
"g": 0.249996781,
"b": 0.249996781
},
"Tags": [
"cotton_mill",
"orange_cotton_mill_2"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 3,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758144988/C6CCE8CFD6CA9C37B9CA67A0A1B93AD573D6E988/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758145053/31888AD84C9EA2D8416CC31AAA6C6C9D6013F407/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "5",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "4ab376",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": -21.9635868,
"posY": 1.5224086,
"posZ": -6.855025,
"rotX": 8.38996E-08,
"rotY": 180.0158,
"rotZ": -1.32338286E-07,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Orange Cotton Mill III",
"GMNotes": "Orange Cotton Mill III",
"ColorDiffuse": {
"r": 0.249996781,
"g": 0.249996781,
"b": 0.249996781
},
"Tags": [
"cotton_mill",
"orange_cotton_mill_3"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 3,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758145124/153484CD6D8B62BA9BC83A1AAC334AD74CE8E278/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758145199/5A5C00BDA649B495B58AA5214C5419A1462ABE0E/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "9",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "96181b",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": -21.9879112,
"posY": 1.5224086,
"posZ": -5.528033,
"rotX": 6.90406736E-08,
"rotY": 180.0,
"rotZ": -4.562221E-10,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Orange Cotton Mill IV",
"GMNotes": "Orange Cotton Mill IV",
"ColorDiffuse": {
"r": 0.249996781,
"g": 0.249996781,
"b": 0.249996781
},
"Tags": [
"cotton_mill",
"orange_cotton_mill_4"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 3,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758145274/147A388396686D1E8C1CBC4D8E5709C36A488A53/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758145388/5293798134ACCE33B63623AA1D6BE5CE33ED4520/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "12",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "2e5b01",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": -19.8802719,
"posY": 1.57240868,
"posZ": -9.484708,
"rotX": 6.83073438E-08,
"rotY": 180.0,
"rotZ": 6.179448E-08,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Orange Port I",
"GMNotes": "Orange Port I",
"ColorDiffuse": {
"r": 0.249996692,
"g": 0.249996692,
"b": 0.249996692
},
"Tags": [
"orange_port_1",
"port"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758145871/98890C380F6B38142130F6556DD36AC85ECA17BC/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758145958/54BCC539E30C159EA4B9F3CF9470A2B9791B152B/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "2",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "20bb7a",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": -19.8894825,
"posY": 1.57240868,
"posZ": -8.16555,
"rotX": -1.42334386E-07,
"rotY": 180.0089,
"rotZ": -1.6723439E-07,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Orange Port II",
"GMNotes": "Orange Port II",
"ColorDiffuse": {
"r": 0.249996752,
"g": 0.249996752,
"b": 0.249996752
},
"Tags": [
"orange_port_2",
"port"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758145740/2882CE3CE26EAD4B7CDC17D694033CBF49C0EED7/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758145800/62A9773DB361EE614C7EB36722C19729ADDE7A9D/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "4",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "440f93",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": -19.8861065,
"posY": 1.57240868,
"posZ": -6.8330307,
"rotX": 1.63309878E-07,
"rotY": 180.008789,
"rotZ": -5.13611838E-08,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Orange Port III",
"GMNotes": "Orange Port III",
"ColorDiffuse": {
"r": 0.249996752,
"g": 0.249996752,
"b": 0.249996752
},
"Tags": [
"orange_port_3",
"port"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758145595/06CE01316820B6325DFB5F614A51C308A275EBE8/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758145666/7F67D67C2E41417DFC2B75D9E12771AA559B07E5/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "6",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "978043",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": -19.8807125,
"posY": 1.57240868,
"posZ": -5.508652,
"rotX": -2.446366E-07,
"rotY": 180.02562,
"rotZ": -4.012872E-08,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Orange Port IV",
"GMNotes": "Orange Port IV",
"ColorDiffuse": {
"r": 0.249996692,
"g": 0.249996692,
"b": 0.249996692
},
"Tags": [
"orange_port_4",
"port"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758145455/923BABCCBE6E51CF51556F3F2BCAB754589A009B/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758145533/12B0C1CCBB09DC74A0BC743C878BA5EFD0DB2BC0/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "9",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "1883fa",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": -17.73869,
"posY": 1.57240868,
"posZ": -9.486885,
"rotX": 4.564464E-08,
"rotY": 180.0,
"rotZ": -1.91543023E-07,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "",
"Description": "Orange Shipyard Precursor",
"GMNotes": "Orange Shipyard Precursor",
"ColorDiffuse": {
"r": 0.247056961,
"g": 0.247056961,
"b": 0.247056961
},
"Tags": [
"orange_shipyard_pre"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758146023/025A22B52A77B4A3816090FD00CDD137B9C15DE1/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "5f6afd",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": -17.74881,
"posY": 1.57240868,
"posZ": -8.166695,
"rotX": -2.385014E-07,
"rotY": 180.0,
"rotZ": 1.47270569E-07,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Orange Shipyard I",
"GMNotes": "Orange Shipyard I",
"ColorDiffuse": {
"r": 0.249996752,
"g": 0.249996752,
"b": 0.249996752
},
"Tags": [
"orange_shipyard_1",
"shipyard"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758146086/C14DF580BA391AA72CCFFD125BEBC0326FA59EC4/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758146150/CB1ECBF96F0B1A794E5779A7F684AD6507F25B9D/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "10",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "1c78df",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": -17.744524,
"posY": 1.57240868,
"posZ": -6.835208,
"rotX": -1.87746778E-07,
"rotY": 180.000015,
"rotZ": -5.7032512E-08,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Orange Shipyard II",
"GMNotes": "Orange Shipyard II",
"ColorDiffuse": {
"r": 0.249996752,
"g": 0.249996752,
"b": 0.249996752
},
"Tags": [
"orange_shipyard_2",
"shipyard"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758146223/B57F97809AF7567D57E2B072B4672C07C5C89A06/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758146296/6967352047800B176F2704B14B99588D9AF023BA/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "18",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "81503c",
"Name": "Custom_Tile",
"Transform": {
"posX": -15.6042566,
"posY": 1.57240868,
"posZ": -9.4978075,
"rotX": 5.03954674E-08,
"rotY": 180.022339,
"rotZ": -4.22048636E-08,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Orange Iron Works I",
"GMNotes": "Orange Iron Works I",
"ColorDiffuse": {
"r": 0.249996781,
"g": 0.249996781,
"b": 0.249996781
},
"Tags": [
"iron_works",
"orange_iron_works_1"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758141393/6EFD08157177E93B16A8638D0BE1BD36418BDB8E/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758141444/A3D2C974CB069AD93F1607961D54F6E82F6AF18C/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "3",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "593403",
"Name": "Custom_Tile",
"Transform": {
"posX": -15.6134682,
"posY": 1.57240868,
"posZ": -8.178651,
"rotX": 2.516015E-08,
"rotY": 180.017685,
"rotZ": 2.51531759E-07,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Orange Iron Works II",
"GMNotes": "Orange Iron Works II",
"ColorDiffuse": {
"r": 0.249996781,
"g": 0.249996781,
"b": 0.249996781
},
"Tags": [
"iron_works",
"orange_iron_works_2"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758141279/AEC6C82B87513CC4DE20E418E020B4AB4BAC3CC6/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758141334/F4C157B8FD8739740F66C3886FCDC5456409110F/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "5",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "c498c8",
"Name": "Custom_Tile",
"Transform": {
"posX": -15.61009,
"posY": 1.57240868,
"posZ": -6.84613228,
"rotX": -4.50955682E-08,
"rotY": 179.979523,
"rotZ": 1.17936381E-07,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Orange Iron Works III",
"GMNotes": "Orange Iron Works III",
"ColorDiffuse": {
"r": 0.249996781,
"g": 0.249996781,
"b": 0.249996781
},
"Tags": [
"iron_works",
"orange_iron_works_3"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758141162/B3CB03AD9E041CD8CA900BEE2CE1451A76FB26D3/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758141223/15527BD01A6CD237C9E286BFE4F33FAD64810F69/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "7",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "98147d",
"Name": "Custom_Tile",
"Transform": {
"posX": -15.6046972,
"posY": 1.57240868,
"posZ": -5.52175331,
"rotX": -4.01685547E-08,
"rotY": 180.006256,
"rotZ": 8.132537E-08,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Orange Iron Works IV",
"GMNotes": "Orange Iron Works IV",
"ColorDiffuse": {
"r": 0.249996781,
"g": 0.249996781,
"b": 0.249996781
},
"Tags": [
"iron_works",
"orange_iron_works_4"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758141034/800539F87166E1521E9C13E490DBEE23C0004BF8/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758141101/E6D6D3FDC9DCF0A673279DE2B6DED9652418E158/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "9",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "09b48f",
"Name": "Custom_Tile",
"Transform": {
"posX": -13.4903564,
"posY": 1.57240868,
"posZ": -9.510897,
"rotX": -7.032568E-08,
"rotY": 180.005,
"rotZ": -1.94431962E-07,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Orange Coal Mine I",
"GMNotes": "Orange Coal Mine I",
"ColorDiffuse": {
"r": 0.249996781,
"g": 0.249996781,
"b": 0.249996781
},
"Tags": [
"coal_mine",
"orange_coal_mine_1"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758141498/63EA6A27802A623D685C4CF069CCD5F0C183B310/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758141559/604033F08E674154CC6F0B1D60A196CD08F24E78/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "1",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "99a022",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": -13.4995651,
"posY": 1.57240868,
"posZ": -8.19174,
"rotX": 4.009476E-08,
"rotY": 180.007675,
"rotZ": -1.73608559E-08,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Orange Coal Mine II",
"GMNotes": "Orange Coal Mine II",
"ColorDiffuse": {
"r": 0.249996752,
"g": 0.249996752,
"b": 0.249996752
},
"Tags": [
"coal_mine",
"orange_coal_mine_2"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758146375/A947E2FFEEE2EC72B7EE2A5650612894988EEE79/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758146438/8686A70D0FB6F4CC14DABB88E5D7EAA4E119B43B/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "2",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "f8decc",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": -13.4961891,
"posY": 1.57240868,
"posZ": -6.8592186,
"rotX": -1.51496315E-09,
"rotY": 180.026749,
"rotZ": 1.0278319E-07,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Orange Coal Mine III",
"GMNotes": "Orange Coal Mine III",
"ColorDiffuse": {
"r": 0.249996752,
"g": 0.249996752,
"b": 0.249996752
},
"Tags": [
"coal_mine",
"orange_coal_mine_3"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758146527/4FD6CB78DF82D2EE6636ACDCCC418E87B2B323EC/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758146589/F6F3D02AFB602A75B39E5AC21BAEE18B2E578875/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "3",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "5454a0",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": -13.4907961,
"posY": 1.57240868,
"posZ": -5.53483963,
"rotX": -2.35902959E-07,
"rotY": 180.006683,
"rotZ": -3.30262964E-08,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Orange Coal Mine IV",
"GMNotes": "Orange Coal Mine IV",
"ColorDiffuse": {
"r": 0.249996692,
"g": 0.249996692,
"b": 0.249996692
},
"Tags": [
"coal_mine",
"orange_coal_mine_4"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758146646/19FE44DDE83BB5B7159E6A8DE4C5BB976741FBA1/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758146714/E31145CB5B19AC0A2E9ECA64D85B85BE6D100B4D/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "4",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "e20f3d",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": -21.9570484,
"posY": 1.52240837,
"posZ": 5.488674,
"rotX": 1.37983221E-07,
"rotY": 180.000656,
"rotZ": 4.300663E-08,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Yellow Cotton Mill I",
"GMNotes": "Yellow Cotton Mill I",
"ColorDiffuse": {
"r": 0.249996752,
"g": 0.249996752,
"b": 0.249996752
},
"Tags": [
"cotton_mill",
"yellow_cotton_mill_1"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 3,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758148831/BFDA86CEA784A751C8B21839FD48FD1995D01565/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758148910/B6D791C733612515309DD1F1DB2D234CD18AD2EC/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "5",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "04b91b",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": -21.9660225,
"posY": 1.52240849,
"posZ": 6.80782938,
"rotX": -3.068962E-07,
"rotY": 179.985672,
"rotZ": 1.956956E-08,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Yellow Cotton Mill II",
"GMNotes": "Yellow Cotton Mill II",
"ColorDiffuse": {
"r": 0.249996781,
"g": 0.249996781,
"b": 0.249996781
},
"Tags": [
"cotton_mill",
"yellow_cotton_mill_2"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 3,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758148979/9A8ABC42357F41DCD7AE3B56A1E5E957352E65AE/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758149067/85B4945A0D2F17B43C2737C0228B5C7195DCE263/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "5",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "c41516",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": -21.9622173,
"posY": 1.52240837,
"posZ": 8.145782,
"rotX": -3.395071E-08,
"rotY": 179.99826,
"rotZ": -2.097496E-07,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Yellow Cotton Mill III",
"GMNotes": "Yellow Cotton Mill III",
"ColorDiffuse": {
"r": 0.249996781,
"g": 0.249996781,
"b": 0.249996781
},
"Tags": [
"cotton_mill",
"yellow_cotton_mill_3"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 3,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758149138/F5F18DCACE9068767E2D1D554D5F75116FA85215/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758149198/5CC212519BCB17C66775C6BAB32630582F61B353/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "9",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "284430",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": -21.9863052,
"posY": 1.52240849,
"posZ": 9.472778,
"rotX": -9.42054257E-08,
"rotY": 180.002792,
"rotZ": 4.889193E-07,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Yellow Cotton Mill IV",
"GMNotes": "Yellow Cotton Mill IV",
"ColorDiffuse": {
"r": 0.249996781,
"g": 0.249996781,
"b": 0.249996781
},
"Tags": [
"cotton_mill",
"yellow_cotton_mill_4"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 3,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758149267/CA649184F51B04F2D35EF12A2948A001C57D218A/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758149339/40B3F830AF8B184AB28BB47BDF52B6C76DC0483B/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "12",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "80c1cd",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": -19.8793755,
"posY": 1.57240856,
"posZ": 5.515722,
"rotX": -2.28773747E-08,
"rotY": 179.999924,
"rotZ": -1.88078761E-08,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Yellow Port I",
"GMNotes": "Yellow Port I",
"ColorDiffuse": {
"r": 0.249996752,
"g": 0.249996752,
"b": 0.249996752
},
"Tags": [
"port",
"yellow_port_1"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758149406/399800B346F3EC4260DBE66C2334218016064BA0/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758149472/B9E33D739D85E1FCBC7A0146839515A339B7C159/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "2",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "2ed929",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": -19.88835,
"posY": 1.57240856,
"posZ": 6.83488274,
"rotX": -1.94110186E-08,
"rotY": 180.001465,
"rotZ": 5.985503E-08,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Yellow Port II",
"GMNotes": "Yellow Port II",
"ColorDiffuse": {
"r": 0.249996752,
"g": 0.249996752,
"b": 0.249996752
},
"Tags": [
"port",
"yellow_port_2"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758149551/0B97BF6450BB3B784AD79036F3D04FA8BB7175CD/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758149626/BB774221ADEBAF71C8E7969DA254FC68A970E4C4/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "4",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "419084",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": -19.8847313,
"posY": 1.57240856,
"posZ": 8.167401,
"rotX": -5.894655E-08,
"rotY": 180.001953,
"rotZ": 5.969162E-08,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Yellow Port III",
"GMNotes": "Yellow Port III",
"ColorDiffuse": {
"r": 0.249996752,
"g": 0.249996752,
"b": 0.249996752
},
"Tags": [
"port",
"yellow_port_3"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758149692/86CDF93B4587FE1A393A5756D0B3C8266CE0F6A4/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758149763/1110921A12388F1DD1A21BE3950214F01A684E0C/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "6",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "a5ca69",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": -19.8791,
"posY": 1.57240856,
"posZ": 9.491778,
"rotX": -5.270376E-08,
"rotY": 180.002533,
"rotZ": 9.957154E-08,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Yellow Port IV",
"GMNotes": "Yellow Port IV",
"ColorDiffuse": {
"r": 0.249996752,
"g": 0.249996752,
"b": 0.249996752
},
"Tags": [
"port",
"yellow_port_4"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758149833/A610899F9614E157DF07A44173D51A868B84A50B/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758149960/6131344D9151F6CD64C986046FB7BB9752309A35/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "9",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "699f5e",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": -17.7377949,
"posY": 1.57240856,
"posZ": 5.51315975,
"rotX": -1.60982509E-07,
"rotY": 180.0,
"rotZ": -8.45004E-09,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "",
"Description": "Yellow Shipyard Precursor",
"GMNotes": "Yellow Shipyard Precursor",
"ColorDiffuse": {
"r": 0.249996692,
"g": 0.249996692,
"b": 0.249996692
},
"Tags": [
"yellow_shipyard_pre"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758150316/16FEDF0CCA680E61D0449A9514AF85079A826B59/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "3d4157",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": -17.746769,
"posY": 1.57240856,
"posZ": 6.83231831,
"rotX": 1.881097E-07,
"rotY": 180.0021,
"rotZ": -8.648881E-08,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Yellow Shipyard I",
"GMNotes": "Yellow Shipyard I",
"ColorDiffuse": {
"r": 0.249996752,
"g": 0.249996752,
"b": 0.249996752
},
"Tags": [
"shipyard",
"yellow_shipyard_1"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758150031/67CC41A3DA28864FBE348FC6ADB5E8BD259FFE80/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758150103/52E93F383F0D58214681D3B70AEE91490A11C795/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "10",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "ad408f",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": -17.74315,
"posY": 1.57240856,
"posZ": 8.164837,
"rotX": 2.351056E-08,
"rotY": 180.002045,
"rotZ": 2.01579553E-07,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Yellow Shipyard II",
"GMNotes": "Yellow Shipyard II",
"ColorDiffuse": {
"r": 0.249996752,
"g": 0.249996752,
"b": 0.249996752
},
"Tags": [
"shipyard",
"yellow_shipyard_2"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758150168/E31C04583F1E611A834BB0C386CB939C51DD52CE/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758150240/09831072D5E4D97AFF98E350B12553AC8EC064A3/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "18",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "bff490",
"Name": "Custom_Tile",
"Transform": {
"posX": -15.603364,
"posY": 1.57240856,
"posZ": 5.50185061,
"rotX": -1.18616626E-07,
"rotY": 180.027191,
"rotZ": 6.48606147E-08,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Yellow Iron Works I",
"GMNotes": "Yellow Iron Works I",
"ColorDiffuse": {
"r": 0.249996781,
"g": 0.249996781,
"b": 0.249996781
},
"Tags": [
"iron_works",
"yellow_iron_works_1"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758141964/8E0E06DCFDF10D6821EC98C53AB1B9F0C4E990FF/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758142025/E3E64772AA79D5267CCBFAFFC682353CA5E02911/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "3",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "a73066",
"Name": "Custom_Tile",
"Transform": {
"posX": -15.6123371,
"posY": 1.57240856,
"posZ": 6.82101,
"rotX": 6.690982E-08,
"rotY": 179.993149,
"rotZ": -1.0752607E-07,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Yellow Iron Works II",
"GMNotes": "Yellow Iron Works II",
"ColorDiffuse": {
"r": 0.249996781,
"g": 0.249996781,
"b": 0.249996781
},
"Tags": [
"iron_works",
"yellow_iron_works_2"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758141845/E522E7BB4487499C3E22B24235D6C50030976CC5/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758141902/606828A1B9AA4C1CB1CDC01BC8DAB419811E7E0A/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "5",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "1953e8",
"Name": "Custom_Tile",
"Transform": {
"posX": -15.6087189,
"posY": 1.57240856,
"posZ": 8.153528,
"rotX": -5.820357E-08,
"rotY": 180.003281,
"rotZ": 1.48060209E-07,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Yellow Iron Works III",
"GMNotes": "Yellow Iron Works III",
"ColorDiffuse": {
"r": 0.249996781,
"g": 0.249996781,
"b": 0.249996781
},
"Tags": [
"iron_works",
"yellow_iron_works_3"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758141735/DB2724B748969D8831E6FC7A8F22135C0EC7EFBF/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758141790/E318585797ED9D8F8CC4464092E05CE26658D2B7/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "7",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "923f40",
"Name": "Custom_Tile",
"Transform": {
"posX": -15.6030874,
"posY": 1.57240856,
"posZ": 9.477905,
"rotX": 2.08373532E-08,
"rotY": 180.01796,
"rotZ": 7.115899E-08,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Yellow Iron Works IV",
"GMNotes": "Yellow Iron Works IV",
"ColorDiffuse": {
"r": 0.249996781,
"g": 0.249996781,
"b": 0.249996781
},
"Tags": [
"iron_works",
"yellow_iron_works_4"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758141616/8B226E72629F9E6907D5E5FD5C4EB9B8DB03C06C/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758141670/3CD90E417C361F6BA9EDB4F8C4060683E65C3C66/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "9",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "404faf",
"Name": "Custom_Tile",
"Transform": {
"posX": -13.4894667,
"posY": 1.57240856,
"posZ": 5.48838043,
"rotX": -2.223025E-08,
"rotY": 179.999481,
"rotZ": -1.23129979E-07,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Yellow Coal Mine I",
"GMNotes": "Yellow Coal Mine I",
"ColorDiffuse": {
"r": 0.249996781,
"g": 0.249996781,
"b": 0.249996781
},
"Tags": [
"coal_mine",
"yellow_coal_mine_1"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758142109/7D7148DCA0CDF4FDD36A6A31B4DDE2CC118FFB9C/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758142186/7C58289915A5F45FA79278EC1844C9B7609F2D18/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "1",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "00fa7b",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": -13.498436,
"posY": 1.57240856,
"posZ": 6.80754566,
"rotX": -6.23163166E-09,
"rotY": 180.001266,
"rotZ": -2.993299E-08,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Yellow Coal Mine II",
"GMNotes": "Yellow Coal Mine II",
"ColorDiffuse": {
"r": 0.249996752,
"g": 0.249996752,
"b": 0.249996752
},
"Tags": [
"coal_mine",
"yellow_coal_mine_2"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758150676/B4E5A3409F6CF0B48DF4079B4A94E493CD69F61C/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758150756/6FC860FF55DAFC2D11AA8EF5281ADED719B517A2/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "2",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "936b67",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": -13.49482,
"posY": 1.57240856,
"posZ": 8.14006,
"rotX": 1.57693719E-07,
"rotY": 180.000916,
"rotZ": -1.70384155E-07,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Yellow Coal Mine III",
"GMNotes": "Yellow Coal Mine III",
"ColorDiffuse": {
"r": 0.249996752,
"g": 0.249996752,
"b": 0.249996752
},
"Tags": [
"coal_mine",
"yellow_coal_mine_3"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758150531/4BAF9FF2D6E8312CE07BBC0029F1F7DD889EABF7/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758150603/EC37BE65EEF306C32EF129A5B53F9DC989AE57F1/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "3",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "37301d",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": -13.4891882,
"posY": 1.57240856,
"posZ": 9.46443748,
"rotX": -9.383654E-08,
"rotY": 180.000778,
"rotZ": -1.05725725E-07,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Yellow Coal Mine IV",
"GMNotes": "Yellow Coal Mine IV",
"ColorDiffuse": {
"r": 0.249996752,
"g": 0.249996752,
"b": 0.249996752
},
"Tags": [
"coal_mine",
"yellow_coal_mine_4"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758150384/9D86ADE375776C9563B367B4B10216D4C965163E/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758150447/038D4BE7B39E4C23DB05B6E97512556F7CC5265E/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "4",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "8277dd",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": 13.5365705,
"posY": 1.54740894,
"posZ": -6.85751152,
"rotX": -1.686469E-07,
"rotY": 180.0,
"rotZ": 1.93225091E-07,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Teal Cotton Mill III",
"GMNotes": "Teal Cotton Mill III",
"ColorDiffuse": {
"r": 0.249996811,
"g": 0.249996811,
"b": 0.249996811
},
"Tags": [
"cotton_mill",
"teal_cotton_mill_3"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 3,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758147108/C5AADB1F2E0C4E9259C6E791620B8002B76BDB50/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758147182/1CCB3AAF09596E78B1ACFAA2B9A53F4DA5963E91/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.150000259,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "9",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "91ea86",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": 15.6190624,
"posY": 1.57240868,
"posZ": -5.50865126,
"rotX": -3.17165615E-07,
"rotY": 180.000092,
"rotZ": 2.2309786E-08,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Teal Port IV",
"GMNotes": "Teal Port IV",
"ColorDiffuse": {
"r": 0.249996722,
"g": 0.249996722,
"b": 0.249996722
},
"Tags": [
"port",
"teal_port_4"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758147374/97740DC0C48704F835A54D94F50FDD1F6D85FFD9/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758147450/11D97195577B3B382BF9F5BB39B8881084495609/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.150000259,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "9",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "5b9ac0",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": 15.6136684,
"posY": 1.57240868,
"posZ": -6.8330307,
"rotX": -3.55725319E-07,
"rotY": 180.000076,
"rotZ": 1.80084783E-07,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Teal Port III",
"GMNotes": "Teal Port III",
"ColorDiffuse": {
"r": 0.249996692,
"g": 0.249996692,
"b": 0.249996692
},
"Tags": [
"port",
"teal_port_3"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758147514/67809CF30F641F8B549EC5F040BAFA2F6AE9F273/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758147599/6286F18406CB24ADBE8674E4EEB620FE120E730A/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.150000259,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "6",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "84c06e",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": 13.5120878,
"posY": 1.52253234,
"posZ": 9.471751,
"rotX": 0.003962399,
"rotY": 180.00264,
"rotZ": 0.0124620693,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Purple Cotton Mill IV",
"GMNotes": "Purple Cotton Mill IV",
"ColorDiffuse": {
"r": 0.249996781,
"g": 0.249996781,
"b": 0.249996781
},
"Tags": [
"cotton_mill",
"purple_cotton_mill_4"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 3,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758152590/465CF0A203347A7ED394F544E47F100CB1DBD28D/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758152663/49FA16D04BADC22A83465E818CD8D8CD77C7C965/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "12",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "f2d519",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": 15.619276,
"posY": 1.57207561,
"posZ": 9.491231,
"rotX": 0.00396746,
"rotY": 179.972885,
"rotZ": 0.0124554355,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Purple Port IV",
"GMNotes": "Purple Port IV",
"ColorDiffuse": {
"r": 0.249996573,
"g": 0.249996573,
"b": 0.249996573
},
"Tags": [
"port",
"purple_port_4"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758151989/A9ECB9732568A36BBD0018AC871FF2DACD38FB01/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758152076/E8C598FAFA34322C04E0F9D052A257B69F2C0350/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "9",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "f4387c",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": 15.6199141,
"posY": 1.57180047,
"posZ": 5.51516056,
"rotX": 0.003960961,
"rotY": 180.002869,
"rotZ": 0.0124576874,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "Points",
"Description": "Purple Port I",
"GMNotes": "Purple Port I",
"ColorDiffuse": {
"r": 0.249996692,
"g": 0.249996692,
"b": 0.249996692
},
"Tags": [
"port",
"purple_port_1"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758151550/C66FB84131F54DD80405AF173FA22FF90B3912BA/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/960849557758151634/FAA0EC890F970931DCA60213EFFC925D6BF525BA/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"RotationValues": [
{
"Value": "0",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 0.0
}
},
{
"Value": "2",
"Rotation": {
"x": 0.0,
"y": 180.0,
"z": 180.0
}
}
]
},
{
"GUID": "06f6e9",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 2.35667658,
"posY": 1.69963,
"posZ": -8.30883,
"rotX": 3.26059421E-07,
"rotY": 269.999817,
"rotZ": 1.24148869E-06,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Northwich - The Midlands",
"Description": "",
"GMNotes": "Northwich - The Midlands",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "4610a8",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 3.60343623,
"posY": 1.69963,
"posZ": -8.8736105,
"rotX": -1.98203429E-06,
"rotY": 150.0,
"rotZ": 1.42855674E-06,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Macclesfield - The Midlands",
"Description": "",
"GMNotes": "Macclesfield - The Midlands",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "dd8b61",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 7.72397947,
"posY": 1.69963,
"posZ": -7.90520525,
"rotX": 1.44669857E-05,
"rotY": 135.0,
"rotZ": -7.677567E-06,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Macclesfield - Stockport",
"Description": "",
"GMNotes": "Macclesfield - Stockport",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "14c4a7",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 5.8928833,
"posY": 1.6996299,
"posZ": -5.433252,
"rotX": -4.21788314E-07,
"rotY": 239.999985,
"rotZ": -8.873713E-07,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Manchester - Stockport",
"Description": "",
"GMNotes": "Manchester - Stockport",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "bc38fc",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 7.555093,
"posY": 1.69963,
"posZ": -4.10925674,
"rotX": 3.43963251E-07,
"rotY": 165.0,
"rotZ": -5.92865661E-07,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Manchester - Oldham",
"Description": "",
"GMNotes": "Manchester - Oldham",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "bfcd3a",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 3.49102235,
"posY": 1.69963,
"posZ": -3.65529156,
"rotX": 1.03922457E-06,
"rotY": 169.378433,
"rotZ": 2.75072921E-07,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Manchester - Warrington & Runcorn",
"Description": "",
"GMNotes": "Manchester - Warrington & Runcorn",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "63ad80",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -0.483007461,
"posY": 1.69963,
"posZ": -4.518016,
"rotX": 1.66753466E-06,
"rotY": 138.079987,
"rotZ": 8.476046E-08,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Ellesmere Port - Warrington & Runcorn",
"Description": "",
"GMNotes": "Ellesmere Port - Warrington & Runcorn",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "7f2bc1",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -0.643813133,
"posY": 1.69963,
"posZ": -3.29846215,
"rotX": -7.504775E-07,
"rotY": 195.0,
"rotZ": -4.65991377E-07,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Liverpool - Warrington & Runcorn",
"Description": "",
"GMNotes": "Liverpool - Warrington & Runcorn",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "8e2ac6",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 0.588295162,
"posY": 1.6996299,
"posZ": -2.78635383,
"rotX": -2.746415E-07,
"rotY": 237.459991,
"rotZ": -4.225816E-07,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Warrington & Runcorn - Wigan",
"Description": "",
"GMNotes": "Warrington & Runcorn - Wigan",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "c378a7",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 0.7534301,
"posY": 1.6996299,
"posZ": -6.26122427,
"rotX": -1.56891042E-06,
"rotY": 189.600815,
"rotZ": -1.33223978E-07,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Ellesmere Port - Northwich",
"Description": "",
"GMNotes": "Ellesmere Port - Northwich",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "f14ab3",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -3.37026238,
"posY": 1.6996299,
"posZ": -5.553798,
"rotX": -1.947894E-06,
"rotY": 202.638626,
"rotZ": 6.40907956E-07,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Birkenhead - Ellesmere Port",
"Description": "",
"GMNotes": "Birkenhead - Ellesmere Port",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "af204d",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -2.17598534,
"posY": 1.6996299,
"posZ": -4.789826,
"rotX": -1.42455647E-07,
"rotY": 240.232574,
"rotZ": 2.58961421E-07,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Ellesmere Port - Liverpool",
"Description": "",
"GMNotes": "Ellesmere Port - Liverpool",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "d540b6",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -2.973805,
"posY": 1.6996299,
"posZ": -0.795500457,
"rotX": 1.41959549E-06,
"rotY": 269.999969,
"rotZ": -4.981513E-07,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Liverpool - Southport",
"Description": "",
"GMNotes": "Liverpool - Southport",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "e0d583",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -1.26931286,
"posY": 1.6996299,
"posZ": -1.06250489,
"rotX": -2.57313854E-06,
"rotY": 135.000015,
"rotZ": 1.45667752E-06,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Liverpool - Wigan",
"Description": "",
"GMNotes": "Liverpool - Wigan",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "5da6db",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -1.25925744,
"posY": 1.6996299,
"posZ": 0.4218917,
"rotX": -8.403307E-07,
"rotY": 179.997818,
"rotZ": -6.44354429E-07,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Southport - Wigan",
"Description": "",
"GMNotes": "Southport - Wigan",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "14cbda",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 1.28400564,
"posY": 1.69963,
"posZ": -1.32084084,
"rotX": 1.68814318E-09,
"rotY": 180.0,
"rotZ": 1.41860085E-07,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Bolton - Wigan",
"Description": "",
"GMNotes": "Bolton - Wigan",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "2e310e",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 3.801792,
"posY": 1.6996299,
"posZ": -1.80887628,
"rotX": -5.232479E-07,
"rotY": 224.999985,
"rotZ": -4.839169E-07,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Bolton - Manchester",
"Description": "",
"GMNotes": "Bolton - Manchester",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "4c642b",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 5.51619339,
"posY": 1.6996299,
"posZ": -1.48336387,
"rotX": -1.37362406E-06,
"rotY": 105.000008,
"rotZ": 2.73304249E-06,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Bury - Manchester",
"Description": "",
"GMNotes": "Bury - Manchester",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "f4097d",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 8.997498,
"posY": 1.6996299,
"posZ": -1.45971859,
"rotX": -9.104523E-07,
"rotY": 96.92587,
"rotZ": 1.5959605E-06,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Oldham - Rochdale",
"Description": "",
"GMNotes": "Oldham - Rochdale",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "05b47e",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 9.914272,
"posY": 1.6996299,
"posZ": 1.46956754,
"rotX": -7.041923E-07,
"rotY": 269.999969,
"rotZ": -2.76276182E-06,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Rochdale - Yorkshire",
"Description": "",
"GMNotes": "Rochdale - Yorkshire",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "eaee25",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 7.097009,
"posY": 1.6996299,
"posZ": 0.912193,
"rotX": -7.783338E-09,
"rotY": 186.163712,
"rotZ": 3.2369374E-07,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Bury - Rochdale",
"Description": "",
"GMNotes": "Bury - Rochdale",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "12c4ca",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 9.483869,
"posY": 1.6996299,
"posZ": 4.57126856,
"rotX": -4.347379E-07,
"rotY": 239.999985,
"rotZ": -3.02343039E-08,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Colne - Yorkshire",
"Description": "",
"GMNotes": "Colne - Yorkshire",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "069e2b",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 7.04531431,
"posY": 1.6996299,
"posZ": 4.668887,
"rotX": -6.40455141E-07,
"rotY": 174.101242,
"rotZ": 2.22018954E-07,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Burnley - Colne",
"Description": "",
"GMNotes": "Burnley - Colne",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "b59ed4",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 4.412139,
"posY": 1.6996299,
"posZ": 4.5357523,
"rotX": -4.45826657E-07,
"rotY": 155.740341,
"rotZ": 3.77225547E-07,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Blackburn - Burnley",
"Description": "",
"GMNotes": "Blackburn - Burnley",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "d0120f",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 3.19418788,
"posY": 1.6996299,
"posZ": 0.700974941,
"rotX": -2.18090759E-06,
"rotY": 90.00001,
"rotZ": -4.320121E-06,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Blackburn - Bolton",
"Description": "",
"GMNotes": "Blackburn - Bolton",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "048b74",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 4.31618166,
"posY": 1.6996299,
"posZ": 0.5233369,
"rotX": 3.104741E-07,
"rotY": 150.0,
"rotZ": -1.18213927E-06,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Bolton - Bury",
"Description": "",
"GMNotes": "Bolton - Bury",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "cac219",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 1.56007028,
"posY": 1.6996299,
"posZ": 0.6971575,
"rotX": -7.84664451E-07,
"rotY": 150.0,
"rotZ": -5.65271364E-07,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Blackburn - Wigan",
"Description": "",
"GMNotes": "Blackburn - Wigan",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "79d991",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 1.77234948,
"posY": 1.6996299,
"posZ": 3.16886616,
"rotX": -4.78838444E-07,
"rotY": 203.0673,
"rotZ": 1.67823066E-06,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Blackburn - Preston",
"Description": "",
"GMNotes": "Blackburn - Preston",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "4bcea1",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 0.09329458,
"posY": 1.6996299,
"posZ": 1.25134075,
"rotX": 2.3220889E-07,
"rotY": 269.999969,
"rotZ": -1.97141912E-06,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Preston - Wigan",
"Description": "",
"GMNotes": "Preston - Wigan",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "f7d09d",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -1.56739569,
"posY": 1.6996299,
"posZ": 1.77401531,
"rotX": -1.03883315E-06,
"rotY": 135.000015,
"rotZ": 1.17946922E-06,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Preston - Southport",
"Description": "",
"GMNotes": "Preston - Southport",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "4e1582",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -1.99369192,
"posY": 1.6996299,
"posZ": 3.332844,
"rotX": 8.17504031E-07,
"rotY": 158.193985,
"rotZ": -6.54278153E-07,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Blackpool - Preston",
"Description": "",
"GMNotes": "Blackpool - Preston",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "80624b",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -1.71422827,
"posY": 1.6996299,
"posZ": 4.70235634,
"rotX": 6.385931E-07,
"rotY": 207.433578,
"rotZ": 5.40454948E-07,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Fleetwood - Preston",
"Description": "",
"GMNotes": "Fleetwood - Preston",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "bdb232",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -0.2203674,
"posY": 1.6996299,
"posZ": 5.53883457,
"rotX": 1.916338E-06,
"rotY": 275.963,
"rotZ": 4.04802478E-07,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Lancaster - Preston",
"Description": "",
"GMNotes": "Lancaster - Preston",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "6f2977",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -1.81404126,
"posY": 1.6996299,
"posZ": 8.736845,
"rotX": -3.9965844E-08,
"rotY": 205.928925,
"rotZ": -4.075894E-07,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Barrow-in-Furness - Lancaster",
"Description": "",
"GMNotes": "Barrow-in-Furness - Lancaster",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "c8c36a",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 0.122286782,
"posY": 1.6996299,
"posZ": 8.555859,
"rotX": 3.48659022E-08,
"rotY": 268.999817,
"rotZ": -1.69413067E-06,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Lancaster - Scotland",
"Description": "",
"GMNotes": "Lancaster - Scotland",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "079905",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 5.930167,
"posY": 1.6996299,
"posZ": 2.46244717,
"rotX": 5.633346E-07,
"rotY": 269.999969,
"rotZ": 1.521038E-06,
"scaleX": 0.4,
"scaleY": 0.4,
"scaleZ": 0.4
},
"Nickname": "Burnley - Bury",
"Description": "",
"GMNotes": "Burnley - Bury",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "bb3394",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 6.51989937,
"posY": 1.72462988,
"posZ": 9.381292,
"rotX": -1.75621409E-07,
"rotY": 6.97291171E-06,
"rotZ": 1.31823333E-06,
"scaleX": 0.45,
"scaleY": 0.45,
"scaleZ": 0.45
},
"Nickname": "Coal Market 8",
"Description": "",
"GMNotes": "Coal Market 8",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "2e35ed",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 6.536148,
"posY": 1.72462988,
"posZ": 8.707377,
"rotX": -5.880938E-08,
"rotY": -2.67289875E-06,
"rotZ": 1.423103E-06,
"scaleX": 0.45,
"scaleY": 0.45,
"scaleZ": 0.45
},
"Nickname": "Coal Market 6",
"Description": "",
"GMNotes": "Coal Market 6",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "39e20b",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 6.527736,
"posY": 1.72462988,
"posZ": 8.008817,
"rotX": -1.643152E-06,
"rotY": -1.80609766E-06,
"rotZ": -7.223808E-07,
"scaleX": 0.45,
"scaleY": 0.45,
"scaleZ": 0.45
},
"Nickname": "Coal Market 4",
"Description": "",
"GMNotes": "Coal Market 4",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "14aada",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 6.535759,
"posY": 1.72462988,
"posZ": 7.30202675,
"rotX": -7.90559E-07,
"rotY": 1.78788719E-06,
"rotZ": -1.67228768E-06,
"scaleX": 0.45,
"scaleY": 0.45,
"scaleZ": 0.45
},
"Nickname": "Coal Market 2",
"Description": "",
"GMNotes": "Coal Market 2",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "3c5ffd",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 7.024932,
"posY": 1.72462988,
"posZ": 7.29470444,
"rotX": 1.05929428E-06,
"rotY": -2.078491E-06,
"rotZ": -1.34336312E-06,
"scaleX": 0.45,
"scaleY": 0.45,
"scaleZ": 0.45
},
"Nickname": "Coal Market 1",
"Description": "",
"GMNotes": "Coal Market 1",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "ec2671",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 7.03727531,
"posY": 1.72462988,
"posZ": 8.008673,
"rotX": -1.17669265E-06,
"rotY": 3.36065938E-07,
"rotZ": 2.15128779E-07,
"scaleX": 0.45,
"scaleY": 0.45,
"scaleZ": 0.45
},
"Nickname": "Coal Market 3",
"Description": "",
"GMNotes": "Coal Market 3",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "56e563",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 7.03747225,
"posY": 1.72462988,
"posZ": 8.699859,
"rotX": -6.57785051E-07,
"rotY": 3.79161565E-06,
"rotZ": 5.152388E-07,
"scaleX": 0.45,
"scaleY": 0.45,
"scaleZ": 0.45
},
"Nickname": "Coal Market 5",
"Description": "",
"GMNotes": "Coal Market 5",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "6c1ee9",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 7.021221,
"posY": 1.72462988,
"posZ": 9.389371,
"rotX": 1.07066558E-06,
"rotY": 1.45864879E-05,
"rotZ": 6.369167E-07,
"scaleX": 0.45,
"scaleY": 0.45,
"scaleZ": 0.45
},
"Nickname": "Coal Market 7",
"Description": "",
"GMNotes": "Coal Market 7",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "2beec8",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 7.78553,
"posY": 1.72462988,
"posZ": 9.385786,
"rotX": -2.61375277E-07,
"rotY": -5.555458E-06,
"rotZ": -5.733777E-07,
"scaleX": 0.45,
"scaleY": 0.45,
"scaleZ": 0.45
},
"Nickname": "Iron Market 8",
"Description": "",
"GMNotes": "Iron Market 8",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "2734e8",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 7.80177641,
"posY": 1.72462988,
"posZ": 8.711873,
"rotX": 5.878573E-08,
"rotY": -5.59513137E-06,
"rotZ": -6.11875748E-07,
"scaleX": 0.45,
"scaleY": 0.45,
"scaleZ": 0.45
},
"Nickname": "Iron Market 6",
"Description": "",
"GMNotes": "Iron Market 6",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "6c2b6d",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 7.79336548,
"posY": 1.72462988,
"posZ": 8.01331,
"rotX": 9.933119E-07,
"rotY": 5.96652853E-07,
"rotZ": -3.79412825E-07,
"scaleX": 0.45,
"scaleY": 0.45,
"scaleZ": 0.45
},
"Nickname": "Iron Market 4",
"Description": "",
"GMNotes": "Iron Market 4",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "581ae8",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 7.801389,
"posY": 1.72462988,
"posZ": 7.30652142,
"rotX": 1.47194882E-07,
"rotY": -1.903322E-06,
"rotZ": -1.59770207E-06,
"scaleX": 0.45,
"scaleY": 0.45,
"scaleZ": 0.45
},
"Nickname": "Iron Market 2",
"Description": "",
"GMNotes": "Iron Market 2",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "550e2a",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 8.290561,
"posY": 1.72462988,
"posZ": 7.29919863,
"rotX": 3.21719881E-07,
"rotY": -1.74594709E-06,
"rotZ": 3.13266042E-07,
"scaleX": 0.45,
"scaleY": 0.45,
"scaleZ": 0.45
},
"Nickname": "Iron Market 1",
"Description": "",
"GMNotes": "Iron Market 1",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "6581f5",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 8.302905,
"posY": 1.72462988,
"posZ": 8.013167,
"rotX": 7.06455069E-07,
"rotY": -1.16211561E-06,
"rotZ": -3.0642255E-08,
"scaleX": 0.45,
"scaleY": 0.45,
"scaleZ": 0.45
},
"Nickname": "Iron Market 3",
"Description": "",
"GMNotes": "Iron Market 3",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "3bcd07",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 8.3031,
"posY": 1.72462988,
"posZ": 8.704353,
"rotX": 1.08010177E-07,
"rotY": -1.8965942E-06,
"rotZ": 8.0015667E-07,
"scaleX": 0.45,
"scaleY": 0.45,
"scaleZ": 0.45
},
"Nickname": "Iron Market 5",
"Description": "",
"GMNotes": "Iron Market 5",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "0a7292",
"Name": "ScriptingTrigger",
"Transform": {
"posX": 8.286848,
"posY": 1.72462988,
"posZ": 9.393865,
"rotX": -9.77592E-07,
"rotY": 4.71556859E-06,
"rotZ": -6.188695E-07,
"scaleX": 0.45,
"scaleY": 0.45,
"scaleZ": 0.45
},
"Nickname": "Iron Market 7",
"Description": "",
"GMNotes": "Iron Market 7",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "ac11de",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -8.700375,
"posY": 2.76154518,
"posZ": 1.20019352,
"rotX": 359.914,
"rotY": -0.00106108445,
"rotZ": 0.024240816,
"scaleX": 2.5,
"scaleY": 2.5,
"scaleZ": 2.75
},
"Nickname": "Distant Market Discard Area",
"Description": "",
"GMNotes": "Distant Market Discard Area",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "064067",
"Name": "Infinite_Bag",
"Transform": {
"posX": 3.07342152E-10,
"posY": 1.45263,
"posZ": 32.0,
"rotX": 3.00071576E-07,
"rotY": 4.972299E-08,
"rotZ": 2.72634452E-07,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "Distant Market Decks for Three Players",
"Description": "",
"GMNotes": "Distant Market Decks for Three Players",
"ColorDiffuse": {
"r": 0.552941144,
"g": 0.454901934,
"b": 0.8745098
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"ContainedObjects": [
{
"GUID": "bc93fb",
"Name": "Custom_Model_Bag",
"Transform": {
"posX": -1.16182491E-06,
"posY": 3.55912852,
"posZ": 31.00011,
"rotX": 359.937347,
"rotY": 0.005076762,
"rotZ": -0.0006699495,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "Distant Market Tiles for Three Players",
"ColorDiffuse": {
"r": 0.231372327,
"g": 0.266666442,
"b": 0.227450758
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662902739/028E8A239BC2F048DD681D4517F09E04CC3BF5E1/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662898316/172B5D50E2B73FB6B059AD5AFA73477D1B4F9CF7/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 6,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "----#include mods/Brass/lib/DistantMarket\nfunction onLoad()\r\n -- Clickable area\r\n self.createButton({\r\n click_function = \"on_click_sell_to_distant_market\",\r\n position = { 0, 0.2, 0.05 },\r\n height = 900,\r\n width = 850,\r\n color = { 1, 1, 1, 0 },\r\n label = \"\",\r\n })\r\nend\r\n\n----#include mods/Brass/lib/DistantMarket\n",
"LuaScriptState": "",
"XmlUI": "",
"ContainedObjects": [
{
"GUID": "ef2146",
"Name": "Custom_Model",
"Transform": {
"posX": -21.0102787,
"posY": 2.04855371,
"posZ": 17.9656315,
"rotX": 15.9896355,
"rotY": 2.091308,
"rotZ": 0.1752568,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "Distant Market -0",
"ColorDiffuse": {
"r": 0.231372327,
"g": 0.266666442,
"b": 0.227450758
},
"Tags": [
"distant_market"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662902739/028E8A239BC2F048DD681D4517F09E04CC3BF5E1/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662898031/8654B89ADD6F86CF2660089221131FCF612C1BF7/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 0,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "d29062",
"Name": "Custom_Model",
"Transform": {
"posX": -21.0126762,
"posY": 2.675576,
"posZ": 18.0193768,
"rotX": 358.1597,
"rotY": 2.22902632,
"rotZ": 359.796936,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "Distant Market -1",
"ColorDiffuse": {
"r": 0.231372327,
"g": 0.266666442,
"b": 0.227450758
},
"Tags": [
"distant_market"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662902739/028E8A239BC2F048DD681D4517F09E04CC3BF5E1/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662897757/5E50C093116294014ECCDE03D9A9E6569672A113/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 0,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "64baa0",
"Name": "Custom_Model",
"Transform": {
"posX": -20.994875,
"posY": 2.992218,
"posZ": 18.023468,
"rotX": 357.370148,
"rotY": 1.3315444,
"rotZ": 2.17532325,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "Distant Market -2",
"ColorDiffuse": {
"r": 0.231372327,
"g": 0.266666442,
"b": 0.227450758
},
"Tags": [
"distant_market"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662902739/028E8A239BC2F048DD681D4517F09E04CC3BF5E1/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662897210/D6DA51B316D8661344CE21733BABC9A9FEB9970B/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 0,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "38e860",
"Name": "Custom_Model",
"Transform": {
"posX": -21.0015259,
"posY": 3.19968677,
"posZ": 18.0156479,
"rotX": 357.340424,
"rotY": 1.4210552,
"rotZ": 1.80088568,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "Distant Market -2",
"ColorDiffuse": {
"r": 0.231372327,
"g": 0.266666442,
"b": 0.227450758
},
"Tags": [
"distant_market"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662902739/028E8A239BC2F048DD681D4517F09E04CC3BF5E1/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662897210/D6DA51B316D8661344CE21733BABC9A9FEB9970B/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 0,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "0f42f6",
"Name": "Custom_Model",
"Transform": {
"posX": -21.0006275,
"posY": 3.42889547,
"posZ": 18.0090618,
"rotX": 356.997772,
"rotY": 1.42747188,
"rotZ": 0.6699905,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "Distant Market -2",
"ColorDiffuse": {
"r": 0.231372327,
"g": 0.266666442,
"b": 0.227450758
},
"Tags": [
"distant_market"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662902739/028E8A239BC2F048DD681D4517F09E04CC3BF5E1/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662897210/D6DA51B316D8661344CE21733BABC9A9FEB9970B/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 0,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "d9185c",
"Name": "Custom_Model",
"Transform": {
"posX": -21.0016384,
"posY": 3.63533,
"posZ": 18.0000916,
"rotX": 356.735535,
"rotY": 1.44512081,
"rotZ": 0.7109063,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "Distant Market -2",
"ColorDiffuse": {
"r": 0.231372327,
"g": 0.266666442,
"b": 0.227450758
},
"Tags": [
"distant_market"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662902739/028E8A239BC2F048DD681D4517F09E04CC3BF5E1/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662897210/D6DA51B316D8661344CE21733BABC9A9FEB9970B/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 0,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "75e62c",
"Name": "Custom_Model",
"Transform": {
"posX": -20.99952,
"posY": 3.85383749,
"posZ": 17.9935513,
"rotX": 356.063263,
"rotY": 1.35824215,
"rotZ": 0.9026299,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "Distant Market -3",
"ColorDiffuse": {
"r": 0.231372327,
"g": 0.266666442,
"b": 0.227450758
},
"Tags": [
"distant_market"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662902739/028E8A239BC2F048DD681D4517F09E04CC3BF5E1/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662896909/6BD5BEEAE071F4038767675361BFDA51AEF2AAAC/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 0,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "aa6301",
"Name": "Custom_Model",
"Transform": {
"posX": -21.0011272,
"posY": 4.05757332,
"posZ": 17.9808388,
"rotX": 355.880463,
"rotY": 1.3269484,
"rotZ": 0.9074324,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "Distant Market -3",
"ColorDiffuse": {
"r": 0.231372327,
"g": 0.266666442,
"b": 0.227450758
},
"Tags": [
"distant_market"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662902739/028E8A239BC2F048DD681D4517F09E04CC3BF5E1/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662896909/6BD5BEEAE071F4038767675361BFDA51AEF2AAAC/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 0,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "eab62d",
"Name": "Custom_Model",
"Transform": {
"posX": -21.00852,
"posY": 4.518712,
"posZ": 17.9874668,
"rotX": 344.129852,
"rotY": 0.683667958,
"rotZ": 0.99828,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "Distant Market -3",
"ColorDiffuse": {
"r": 0.231372327,
"g": 0.266666442,
"b": 0.227450758
},
"Tags": [
"distant_market"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662902739/028E8A239BC2F048DD681D4517F09E04CC3BF5E1/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662896909/6BD5BEEAE071F4038767675361BFDA51AEF2AAAC/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 0,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "cd9b7c",
"Name": "Custom_Model",
"Transform": {
"posX": -20.4690742,
"posY": 2.522895,
"posZ": 19.5205479,
"rotX": 356.8471,
"rotY": 2.206768,
"rotZ": 359.617157,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "Distant Market -4",
"ColorDiffuse": {
"r": 0.231372327,
"g": 0.266666442,
"b": 0.227450758
},
"Tags": [
"distant_market"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662902739/028E8A239BC2F048DD681D4517F09E04CC3BF5E1/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662896546/6C8F6981CCD27A20FF0C42A24E4A2613C4B17E9D/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 0,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
}
]
}
]
},
{
"GUID": "33a1fd",
"Name": "Infinite_Bag",
"Transform": {
"posX": 2.75,
"posY": 1.45263,
"posZ": 32.0,
"rotX": -2.55726089E-08,
"rotY": 1.47623939E-06,
"rotZ": -1.10613065E-07,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "Distant Market Decks for Four Players",
"Description": "",
"GMNotes": "Distant Market Decks for Four Players",
"ColorDiffuse": {
"r": 0.552941144,
"g": 0.454901934,
"b": 0.8745098
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"ContainedObjects": [
{
"GUID": "34de64",
"Name": "Custom_Model_Bag",
"Transform": {
"posX": 2.999906,
"posY": 3.55998731,
"posZ": 31.99999,
"rotX": 0.00589238573,
"rotY": 0.008263423,
"rotZ": 359.946167,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "Distant Market Tiles for Four Players",
"ColorDiffuse": {
"r": 0.231372327,
"g": 0.266666442,
"b": 0.227450758
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662902739/028E8A239BC2F048DD681D4517F09E04CC3BF5E1/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662898316/172B5D50E2B73FB6B059AD5AFA73477D1B4F9CF7/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 6,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "----#include mods/Brass/lib/DistantMarket\nfunction onLoad()\r\n -- Clickable area\r\n self.createButton({\r\n click_function = \"on_click_sell_to_distant_market\",\r\n position = { 0, 0.2, 0.05 },\r\n height = 900,\r\n width = 850,\r\n color = { 1, 1, 1, 0 },\r\n label = \"\",\r\n })\r\nend\r\n\n----#include mods/Brass/lib/DistantMarket",
"LuaScriptState": "",
"XmlUI": "",
"ContainedObjects": [
{
"GUID": "fba018",
"Name": "Custom_Model",
"Transform": {
"posX": -17.9848022,
"posY": 1.76575279,
"posZ": 19.0098934,
"rotX": 356.430847,
"rotY": 2.477297,
"rotZ": 359.420868,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "Distant Market -0",
"ColorDiffuse": {
"r": 0.231372327,
"g": 0.266666442,
"b": 0.227450758
},
"Tags": [
"distant_market"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662902739/028E8A239BC2F048DD681D4517F09E04CC3BF5E1/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662898031/8654B89ADD6F86CF2660089221131FCF612C1BF7/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 0,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "0856fd",
"Name": "Custom_Model",
"Transform": {
"posX": -17.9834423,
"posY": 1.9750073,
"posZ": 18.99877,
"rotX": 356.391144,
"rotY": 2.67488766,
"rotZ": 359.21228,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "Distant Market -0",
"ColorDiffuse": {
"r": 0.231372327,
"g": 0.266666442,
"b": 0.227450758
},
"Tags": [
"distant_market"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662902739/028E8A239BC2F048DD681D4517F09E04CC3BF5E1/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662898031/8654B89ADD6F86CF2660089221131FCF612C1BF7/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 0,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "4d6e69",
"Name": "Custom_Model",
"Transform": {
"posX": -18.5367661,
"posY": 2.20805287,
"posZ": 17.50556,
"rotX": 1.35218382,
"rotY": 2.573485,
"rotZ": 359.102539,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "Distant Market -1",
"ColorDiffuse": {
"r": 0.231372327,
"g": 0.266666442,
"b": 0.227450758
},
"Tags": [
"distant_market"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662902739/028E8A239BC2F048DD681D4517F09E04CC3BF5E1/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662897757/5E50C093116294014ECCDE03D9A9E6569672A113/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 0,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "92fd47",
"Name": "Custom_Model",
"Transform": {
"posX": -18.5327549,
"posY": 2.437431,
"posZ": 17.5108147,
"rotX": 0.112336084,
"rotY": 2.47682858,
"rotZ": 359.142181,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "Distant Market -1",
"ColorDiffuse": {
"r": 0.231372327,
"g": 0.266666442,
"b": 0.227450758
},
"Tags": [
"distant_market"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662902739/028E8A239BC2F048DD681D4517F09E04CC3BF5E1/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662897757/5E50C093116294014ECCDE03D9A9E6569672A113/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 0,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "fd4a90",
"Name": "Custom_Model",
"Transform": {
"posX": -17.9778118,
"posY": 2.65866852,
"posZ": 18.9901257,
"rotX": 359.870117,
"rotY": 2.25843048,
"rotZ": 359.6409,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "Distant Market -2",
"ColorDiffuse": {
"r": 0.231372327,
"g": 0.266666442,
"b": 0.227450758
},
"Tags": [
"distant_market"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662902739/028E8A239BC2F048DD681D4517F09E04CC3BF5E1/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662897210/D6DA51B316D8661344CE21733BABC9A9FEB9970B/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 0,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "291bfe",
"Name": "Custom_Model",
"Transform": {
"posX": -18.49509,
"posY": 2.86650038,
"posZ": 18.5084152,
"rotX": 0.0563820451,
"rotY": 2.309173,
"rotZ": 359.56485,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "Distant Market -2",
"ColorDiffuse": {
"r": 0.231372327,
"g": 0.266666442,
"b": 0.227450758
},
"Tags": [
"distant_market"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662902739/028E8A239BC2F048DD681D4517F09E04CC3BF5E1/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662897210/D6DA51B316D8661344CE21733BABC9A9FEB9970B/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 0,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "aba88a",
"Name": "Custom_Model",
"Transform": {
"posX": -18.5308037,
"posY": 3.127278,
"posZ": 17.511095,
"rotX": 0.5505951,
"rotY": 2.23866773,
"rotZ": 0.3991532,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "Distant Market -2",
"ColorDiffuse": {
"r": 0.231372327,
"g": 0.266666442,
"b": 0.227450758
},
"Tags": [
"distant_market"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662902739/028E8A239BC2F048DD681D4517F09E04CC3BF5E1/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662897210/D6DA51B316D8661344CE21733BABC9A9FEB9970B/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 0,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "f275e2",
"Name": "Custom_Model",
"Transform": {
"posX": -18.01425,
"posY": 3.3260684,
"posZ": 17.9939079,
"rotX": 0.5462149,
"rotY": 2.24459076,
"rotZ": 0.401630521,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "Distant Market -2",
"ColorDiffuse": {
"r": 0.231372327,
"g": 0.266666442,
"b": 0.227450758
},
"Tags": [
"distant_market"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662902739/028E8A239BC2F048DD681D4517F09E04CC3BF5E1/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662897210/D6DA51B316D8661344CE21733BABC9A9FEB9970B/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 0,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "4f5fa8",
"Name": "Custom_Model",
"Transform": {
"posX": -17.9804745,
"posY": 3.54704261,
"posZ": 18.99348,
"rotX": 359.8662,
"rotY": 2.1781404,
"rotZ": 359.816132,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "Distant Market -3",
"ColorDiffuse": {
"r": 0.231372327,
"g": 0.266666442,
"b": 0.227450758
},
"Tags": [
"distant_market"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662902739/028E8A239BC2F048DD681D4517F09E04CC3BF5E1/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662896909/6BD5BEEAE071F4038767675361BFDA51AEF2AAAC/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 0,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "041add",
"Name": "Custom_Model",
"Transform": {
"posX": -17.9799576,
"posY": 3.75426483,
"posZ": 18.99206,
"rotX": 0.170961857,
"rotY": 2.190674,
"rotZ": 359.817871,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "Distant Market -3",
"ColorDiffuse": {
"r": 0.231372327,
"g": 0.266666442,
"b": 0.227450758
},
"Tags": [
"distant_market"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662902739/028E8A239BC2F048DD681D4517F09E04CC3BF5E1/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662896909/6BD5BEEAE071F4038767675361BFDA51AEF2AAAC/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 0,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "4a96dd",
"Name": "Custom_Model",
"Transform": {
"posX": -17.9792137,
"posY": 3.95848441,
"posZ": 18.9919167,
"rotX": 0.338286549,
"rotY": 2.17608666,
"rotZ": 359.832,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "Distant Market -3",
"ColorDiffuse": {
"r": 0.231372327,
"g": 0.266666442,
"b": 0.227450758
},
"Tags": [
"distant_market"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662902739/028E8A239BC2F048DD681D4517F09E04CC3BF5E1/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662896909/6BD5BEEAE071F4038767675361BFDA51AEF2AAAC/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 0,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "a9420d",
"Name": "Custom_Model",
"Transform": {
"posX": -18.53171,
"posY": 4.16991425,
"posZ": 17.5118961,
"rotX": 357.922577,
"rotY": 2.14257169,
"rotZ": 359.7915,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "Distant Market -4",
"ColorDiffuse": {
"r": 0.231372327,
"g": 0.266666442,
"b": 0.227450758
},
"Tags": [
"distant_market"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662902739/028E8A239BC2F048DD681D4517F09E04CC3BF5E1/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662896546/6C8F6981CCD27A20FF0C42A24E4A2613C4B17E9D/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 0,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
}
]
}
]
},
{
"GUID": "844d10",
"Name": "Infinite_Bag",
"Transform": {
"posX": -2.75,
"posY": 1.45263,
"posZ": 32.0,
"rotX": 2.82197874E-07,
"rotY": 1.25931081E-06,
"rotZ": -5.058417E-07,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "Distant Market Decks for Two Players",
"Description": "",
"GMNotes": "Distant Market Decks for Two Players",
"ColorDiffuse": {
"r": 0.5537355,
"g": 0.456945777,
"b": 0.87688756
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": "",
"ContainedObjects": [
{
"GUID": "58500b",
"Name": "Custom_Model_Bag",
"Transform": {
"posX": -2.999913,
"posY": 3.56002164,
"posZ": 31.99999,
"rotX": 0.00251687481,
"rotY": -0.00078592886,
"rotZ": 0.04941894,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "Distant Market Tiles for Two Players",
"ColorDiffuse": {
"r": 0.231372327,
"g": 0.266666442,
"b": 0.227450758
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662902739/028E8A239BC2F048DD681D4517F09E04CC3BF5E1/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662898316/172B5D50E2B73FB6B059AD5AFA73477D1B4F9CF7/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 6,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "----#include mods/Brass/lib/DistantMarket\nfunction onLoad()\r\n -- Clickable area\r\n self.createButton({\r\n click_function = \"on_click_sell_to_distant_market\",\r\n position = { 0, 0.2, 0.05 },\r\n height = 900,\r\n width = 850,\r\n color = { 1, 1, 1, 0 },\r\n label = \"\",\r\n })\r\nend\r\n\n----#include mods/Brass/lib/DistantMarket",
"LuaScriptState": "",
"XmlUI": "",
"ContainedObjects": [
{
"GUID": "86fbe9",
"Name": "Custom_Model",
"Transform": {
"posX": -23.9992638,
"posY": 1.68965364,
"posZ": 17.998745,
"rotX": 0.0177082364,
"rotY": 0.00522473548,
"rotZ": 0.170858592,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "Distant Market -1",
"ColorDiffuse": {
"r": 0.231372327,
"g": 0.266666442,
"b": 0.227450758
},
"Tags": [
"distant_market"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662902739/028E8A239BC2F048DD681D4517F09E04CC3BF5E1/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662897757/5E50C093116294014ECCDE03D9A9E6569672A113/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 0,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "d742d3",
"Name": "Custom_Model",
"Transform": {
"posX": -24.00045,
"posY": 1.90589166,
"posZ": 18.000145,
"rotX": 0.0622546263,
"rotY": 359.991547,
"rotZ": 359.9576,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "Distant Market -2",
"ColorDiffuse": {
"r": 0.231372327,
"g": 0.266666442,
"b": 0.227450758
},
"Tags": [
"distant_market"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662902739/028E8A239BC2F048DD681D4517F09E04CC3BF5E1/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662897210/D6DA51B316D8661344CE21733BABC9A9FEB9970B/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 0,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "595ec0",
"Name": "Custom_Model",
"Transform": {
"posX": -23.9997616,
"posY": 2.11960554,
"posZ": 18.0002174,
"rotX": 0.09628741,
"rotY": -0.00523325428,
"rotZ": 0.6392678,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "Distant Market -2",
"ColorDiffuse": {
"r": 0.231372327,
"g": 0.266666442,
"b": 0.227450758
},
"Tags": [
"distant_market"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662902739/028E8A239BC2F048DD681D4517F09E04CC3BF5E1/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662897210/D6DA51B316D8661344CE21733BABC9A9FEB9970B/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 0,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "3ce96f",
"Name": "Custom_Model",
"Transform": {
"posX": -24.001749,
"posY": 2.35323858,
"posZ": 18.00138,
"rotX": 359.6867,
"rotY": 0.009129842,
"rotZ": 359.640167,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "Distant Market -2",
"ColorDiffuse": {
"r": 0.231372327,
"g": 0.266666442,
"b": 0.227450758
},
"Tags": [
"distant_market"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662902739/028E8A239BC2F048DD681D4517F09E04CC3BF5E1/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662897210/D6DA51B316D8661344CE21733BABC9A9FEB9970B/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 0,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "e62d72",
"Name": "Custom_Model",
"Transform": {
"posX": -24.0002556,
"posY": 3.00238752,
"posZ": 17.9998131,
"rotX": 359.880951,
"rotY": 0.0335011743,
"rotZ": 0.06237802,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "Distant Market -3",
"ColorDiffuse": {
"r": 0.231372327,
"g": 0.266666442,
"b": 0.227450758
},
"Tags": [
"distant_market"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662902739/028E8A239BC2F048DD681D4517F09E04CC3BF5E1/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662896909/6BD5BEEAE071F4038767675361BFDA51AEF2AAAC/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 0,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "137470",
"Name": "Custom_Model",
"Transform": {
"posX": -23.9999256,
"posY": 2.577227,
"posZ": 17.9997177,
"rotX": 0.276247978,
"rotY": 0.036141742,
"rotZ": 359.957153,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "Distant Market -3",
"ColorDiffuse": {
"r": 0.231372327,
"g": 0.266666442,
"b": 0.227450758
},
"Tags": [
"distant_market"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662902739/028E8A239BC2F048DD681D4517F09E04CC3BF5E1/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662896909/6BD5BEEAE071F4038767675361BFDA51AEF2AAAC/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 0,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "674829",
"Name": "Custom_Model",
"Transform": {
"posX": -23.9992466,
"posY": 2.785658,
"posZ": 18.0005722,
"rotX": 0.3008041,
"rotY": 0.0298152436,
"rotZ": 0.37211296,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "Distant Market -3",
"ColorDiffuse": {
"r": 0.231372327,
"g": 0.266666442,
"b": 0.227450758
},
"Tags": [
"distant_market"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662902739/028E8A239BC2F048DD681D4517F09E04CC3BF5E1/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662896909/6BD5BEEAE071F4038767675361BFDA51AEF2AAAC/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 0,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "5fb01e",
"Name": "Custom_Model",
"Transform": {
"posX": -2.66981459,
"posY": 4.338308,
"posZ": 34.53963,
"rotX": 5.88286646E-08,
"rotY": -3.137316E-09,
"rotZ": -6.437879E-08,
"scaleX": 1.0,
"scaleY": 1.0,
"scaleZ": 1.0
},
"Nickname": "",
"Description": "",
"GMNotes": "Distant Market -4",
"ColorDiffuse": {
"r": 0.231372327,
"g": 0.266666442,
"b": 0.227450758
},
"Tags": [
"distant_market"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662902739/028E8A239BC2F048DD681D4517F09E04CC3BF5E1/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1666859577662896546/6C8F6981CCD27A20FF0C42A24E4A2613C4B17E9D/",
"NormalURL": "",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 3,
"TypeIndex": 0,
"CustomShader": {
"SpecularColor": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"SpecularIntensity": 0.0,
"SpecularSharpness": 2.0,
"FresnelStrength": 0.0
},
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
}
]
}
]
},
{
"GUID": "8c807c",
"Name": "ScriptingTrigger",
"Transform": {
"posX": -8.699674,
"posY": 1.89116538,
"posZ": 4.281188,
"rotX": 359.914032,
"rotY": -0.0002855728,
"rotZ": 0.024242403,
"scaleX": 2.5,
"scaleY": 0.75,
"scaleZ": 2.75
},
"Nickname": "Distant Market Deck Area",
"Description": "",
"GMNotes": "Distant Market Deck Area",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0,
"a": 0.509803951
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": true,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "46f234",
"Name": "Custom_PDF",
"Transform": {
"posX": 1.09300345E-05,
"posY": 1.46963024,
"posZ": 18.9999943,
"rotX": -1.41179441E-07,
"rotY": 180.0002,
"rotZ": -1.61094409E-08,
"scaleX": 3.0,
"scaleY": 1.0,
"scaleZ": 3.0
},
"Nickname": "",
"Description": "",
"GMNotes": "",
"ColorDiffuse": {
"r": 1.0,
"g": 1.0,
"b": 1.0
},
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": true,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomPDF": {
"PDFUrl": "http://files.roxley.com/Brass-Lancashire-Rulebook-2018.11.20-highlights.pdf",
"PDFPassword": "",
"PDFPage": 0,
"PDFPageOffset": 0
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "1d7a31",
"Name": "Custom_Tile",
"Transform": {
"posX": -0.00147961127,
"posY": 1.66851866,
"posZ": 29.484724,
"rotX": 359.963165,
"rotY": 180.015518,
"rotZ": 0.168959066,
"scaleX": 0.4,
"scaleY": 1.0,
"scaleZ": 0.4
},
"Nickname": "Teal Player",
"Description": "",
"GMNotes": "Teal Player",
"ColorDiffuse": {
"r": 0.7921569,
"g": 0.858823538,
"b": 0.8627451
},
"Tags": [
"turn_order"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/987863257461298671/90E652CD23FACB11A0AF1461B8EDB44A2696220E/",
"ImageSecondaryURL": "http://cloud-3.steamusercontent.com/ugc/1681498983170107836/C0FF0B08FFE18002087CD7AB33C272420DCB421A/",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 2,
"Thickness": 0.1,
"Stackable": false,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "1b49f9",
"Name": "Custom_Model",
"Transform": {
"posX": 7.78545427,
"posY": 1.72329307,
"posZ": 9.385526,
"rotX": 359.9136,
"rotY": 0.0219834968,
"rotZ": 0.02427106,
"scaleX": 0.55,
"scaleY": 0.55,
"scaleZ": 0.55
},
"Nickname": "Iron",
"Description": "",
"GMNotes": "Iron",
"ColorDiffuse": {
"r": 0.9559999,
"g": 0.391996562,
"b": 0.112996571
},
"Tags": [
"iron"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764768421/B8A6C401489F87D67346A5B7C64BFE13EC207EB7/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764772961/EC1CE1E2D5D3E3024B9A7BFB8D5753278E54CE71/",
"NormalURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764776286/1A8995CE735149678ED73402261D7F05A432AF9C/",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 1,
"TypeIndex": 0,
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "7eb107",
"Name": "Custom_Model",
"Transform": {
"posX": 8.286766,
"posY": 1.72351706,
"posZ": 9.393548,
"rotX": 359.913574,
"rotY": 0.0261699241,
"rotZ": 0.0242470168,
"scaleX": 0.55,
"scaleY": 0.55,
"scaleZ": 0.55
},
"Nickname": "Iron",
"Description": "",
"GMNotes": "Iron",
"ColorDiffuse": {
"r": 0.9559999,
"g": 0.391996562,
"b": 0.112996571
},
"Tags": [
"iron"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764768421/B8A6C401489F87D67346A5B7C64BFE13EC207EB7/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764772961/EC1CE1E2D5D3E3024B9A7BFB8D5753278E54CE71/",
"NormalURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764776286/1A8995CE735149678ED73402261D7F05A432AF9C/",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 1,
"TypeIndex": 0,
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "9aaa5c",
"Name": "Custom_Model",
"Transform": {
"posX": 7.801694,
"posY": 1.722289,
"posZ": 8.711582,
"rotX": 359.913574,
"rotY": 0.0251542926,
"rotZ": 0.0242575388,
"scaleX": 0.55,
"scaleY": 0.55,
"scaleZ": 0.55
},
"Nickname": "Iron",
"Description": "",
"GMNotes": "Iron",
"ColorDiffuse": {
"r": 0.9559999,
"g": 0.391996562,
"b": 0.112996571
},
"Tags": [
"iron"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764768421/B8A6C401489F87D67346A5B7C64BFE13EC207EB7/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764772961/EC1CE1E2D5D3E3024B9A7BFB8D5753278E54CE71/",
"NormalURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764776286/1A8995CE735149678ED73402261D7F05A432AF9C/",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 1,
"TypeIndex": 0,
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "0158d4",
"Name": "Custom_Model",
"Transform": {
"posX": 8.303019,
"posY": 1.72248971,
"posZ": 8.704063,
"rotX": 359.913574,
"rotY": 0.0271915272,
"rotZ": 0.0242659356,
"scaleX": 0.55,
"scaleY": 0.55,
"scaleZ": 0.55
},
"Nickname": "Iron",
"Description": "",
"GMNotes": "Iron",
"ColorDiffuse": {
"r": 0.9559999,
"g": 0.391996562,
"b": 0.112996571
},
"Tags": [
"iron"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764768421/B8A6C401489F87D67346A5B7C64BFE13EC207EB7/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764772961/EC1CE1E2D5D3E3024B9A7BFB8D5753278E54CE71/",
"NormalURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764776286/1A8995CE735149678ED73402261D7F05A432AF9C/",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 1,
"TypeIndex": 0,
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "be34d8",
"Name": "Custom_Model",
"Transform": {
"posX": 7.793284,
"posY": 1.72123766,
"posZ": 8.01302052,
"rotX": 359.913574,
"rotY": 0.0201492216,
"rotZ": 0.0242814552,
"scaleX": 0.55,
"scaleY": 0.55,
"scaleZ": 0.55
},
"Nickname": "Iron",
"Description": "",
"GMNotes": "Iron",
"ColorDiffuse": {
"r": 0.9559999,
"g": 0.391996562,
"b": 0.112996571
},
"Tags": [
"iron"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764768421/B8A6C401489F87D67346A5B7C64BFE13EC207EB7/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764772961/EC1CE1E2D5D3E3024B9A7BFB8D5753278E54CE71/",
"NormalURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764776286/1A8995CE735149678ED73402261D7F05A432AF9C/",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 1,
"TypeIndex": 0,
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "8c31a8",
"Name": "Custom_Model",
"Transform": {
"posX": 8.3028,
"posY": 1.72145283,
"posZ": 8.01287651,
"rotX": 359.913574,
"rotY": 0.02758606,
"rotZ": 0.024288062,
"scaleX": 0.55,
"scaleY": 0.55,
"scaleZ": 0.55
},
"Nickname": "Iron",
"Description": "",
"GMNotes": "Iron",
"ColorDiffuse": {
"r": 0.9559999,
"g": 0.391996562,
"b": 0.112996571
},
"Tags": [
"iron"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764768421/B8A6C401489F87D67346A5B7C64BFE13EC207EB7/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764772961/EC1CE1E2D5D3E3024B9A7BFB8D5753278E54CE71/",
"NormalURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764776286/1A8995CE735149678ED73402261D7F05A432AF9C/",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 1,
"TypeIndex": 0,
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "f7cdcf",
"Name": "Custom_Model",
"Transform": {
"posX": 7.801303,
"posY": 1.72018087,
"posZ": 7.306214,
"rotX": 359.913544,
"rotY": 0.0223583765,
"rotZ": 0.0242667664,
"scaleX": 0.55,
"scaleY": 0.55,
"scaleZ": 0.55
},
"Nickname": "Iron",
"Description": "",
"GMNotes": "Iron",
"ColorDiffuse": {
"r": 0.9559999,
"g": 0.391996562,
"b": 0.112996571
},
"Tags": [
"iron"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764768421/B8A6C401489F87D67346A5B7C64BFE13EC207EB7/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764772961/EC1CE1E2D5D3E3024B9A7BFB8D5753278E54CE71/",
"NormalURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764776286/1A8995CE735149678ED73402261D7F05A432AF9C/",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 1,
"TypeIndex": 0,
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "8692e2",
"Name": "Custom_Model",
"Transform": {
"posX": 8.290501,
"posY": 1.72037721,
"posZ": 7.29921055,
"rotX": 359.913574,
"rotY": 0.0255489852,
"rotZ": 0.02426269,
"scaleX": 0.55,
"scaleY": 0.55,
"scaleZ": 0.55
},
"Nickname": "Iron",
"Description": "",
"GMNotes": "Iron",
"ColorDiffuse": {
"r": 0.9559999,
"g": 0.391996562,
"b": 0.112996571
},
"Tags": [
"iron"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764768421/B8A6C401489F87D67346A5B7C64BFE13EC207EB7/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764772961/EC1CE1E2D5D3E3024B9A7BFB8D5753278E54CE71/",
"NormalURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764776286/1A8995CE735149678ED73402261D7F05A432AF9C/",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 1,
"TypeIndex": 0,
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "163a52",
"Name": "Custom_Model",
"Transform": {
"posX": 6.519818,
"posY": 1.722751,
"posZ": 9.381053,
"rotX": 359.9136,
"rotY": 0.00287940423,
"rotZ": 0.0243090987,
"scaleX": 0.55,
"scaleY": 0.55,
"scaleZ": 0.55
},
"Nickname": "Coal",
"Description": "",
"GMNotes": "Coal",
"ColorDiffuse": {
"r": 0.249996454,
"g": 0.249996454,
"b": 0.249996454
},
"Tags": [
"coal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764768421/B8A6C401489F87D67346A5B7C64BFE13EC207EB7/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764772961/EC1CE1E2D5D3E3024B9A7BFB8D5753278E54CE71/",
"NormalURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764776286/1A8995CE735149678ED73402261D7F05A432AF9C/",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 1,
"TypeIndex": 0,
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "98eabb",
"Name": "Custom_Model",
"Transform": {
"posX": 7.02115536,
"posY": 1.72297513,
"posZ": 9.389084,
"rotX": 359.913544,
"rotY": 0.008637587,
"rotZ": 0.0242940485,
"scaleX": 0.55,
"scaleY": 0.55,
"scaleZ": 0.55
},
"Nickname": "Coal",
"Description": "",
"GMNotes": "Coal",
"ColorDiffuse": {
"r": 0.249996454,
"g": 0.249996454,
"b": 0.249996454
},
"Tags": [
"coal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764768421/B8A6C401489F87D67346A5B7C64BFE13EC207EB7/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764772961/EC1CE1E2D5D3E3024B9A7BFB8D5753278E54CE71/",
"NormalURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764776286/1A8995CE735149678ED73402261D7F05A432AF9C/",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 1,
"TypeIndex": 0,
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "d904b9",
"Name": "Custom_Model",
"Transform": {
"posX": 6.536051,
"posY": 1.721747,
"posZ": 8.707123,
"rotX": 359.913544,
"rotY": 0.008903106,
"rotZ": 0.0242958441,
"scaleX": 0.55,
"scaleY": 0.55,
"scaleZ": 0.55
},
"Nickname": "Coal",
"Description": "",
"GMNotes": "Coal",
"ColorDiffuse": {
"r": 0.249996454,
"g": 0.249996454,
"b": 0.249996454
},
"Tags": [
"coal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764768421/B8A6C401489F87D67346A5B7C64BFE13EC207EB7/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764772961/EC1CE1E2D5D3E3024B9A7BFB8D5753278E54CE71/",
"NormalURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764776286/1A8995CE735149678ED73402261D7F05A432AF9C/",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 1,
"TypeIndex": 0,
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "b20f35",
"Name": "Custom_Model",
"Transform": {
"posX": 7.03739071,
"posY": 1.72194767,
"posZ": 8.699536,
"rotX": 359.913544,
"rotY": 0.009961518,
"rotZ": 0.0242862832,
"scaleX": 0.55,
"scaleY": 0.55,
"scaleZ": 0.55
},
"Nickname": "Coal",
"Description": "",
"GMNotes": "Coal",
"ColorDiffuse": {
"r": 0.249996454,
"g": 0.249996454,
"b": 0.249996454
},
"Tags": [
"coal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764768421/B8A6C401489F87D67346A5B7C64BFE13EC207EB7/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764772961/EC1CE1E2D5D3E3024B9A7BFB8D5753278E54CE71/",
"NormalURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764776286/1A8995CE735149678ED73402261D7F05A432AF9C/",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 1,
"TypeIndex": 0,
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "db2ed3",
"Name": "Custom_Model",
"Transform": {
"posX": 6.52765465,
"posY": 1.72069561,
"posZ": 8.008542,
"rotX": 359.913544,
"rotY": 0.004533413,
"rotZ": 0.024297256,
"scaleX": 0.55,
"scaleY": 0.55,
"scaleZ": 0.55
},
"Nickname": "Coal",
"Description": "",
"GMNotes": "Coal",
"ColorDiffuse": {
"r": 0.249996454,
"g": 0.249996454,
"b": 0.249996454
},
"Tags": [
"coal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764768421/B8A6C401489F87D67346A5B7C64BFE13EC207EB7/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764772961/EC1CE1E2D5D3E3024B9A7BFB8D5753278E54CE71/",
"NormalURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764776286/1A8995CE735149678ED73402261D7F05A432AF9C/",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 1,
"TypeIndex": 0,
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "881a19",
"Name": "Custom_Model",
"Transform": {
"posX": 7.037194,
"posY": 1.72091091,
"posZ": 8.008383,
"rotX": 359.913574,
"rotY": 0.0035558294,
"rotZ": 0.0243018,
"scaleX": 0.55,
"scaleY": 0.55,
"scaleZ": 0.55
},
"Nickname": "Coal",
"Description": "",
"GMNotes": "Coal",
"ColorDiffuse": {
"r": 0.249996454,
"g": 0.249996454,
"b": 0.249996454
},
"Tags": [
"coal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764768421/B8A6C401489F87D67346A5B7C64BFE13EC207EB7/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764772961/EC1CE1E2D5D3E3024B9A7BFB8D5753278E54CE71/",
"NormalURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764776286/1A8995CE735149678ED73402261D7F05A432AF9C/",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 1,
"TypeIndex": 0,
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "761102",
"Name": "Custom_Model",
"Transform": {
"posX": 6.5356617,
"posY": 1.71963882,
"posZ": 7.301738,
"rotX": 359.913544,
"rotY": 0.003886035,
"rotZ": 0.0243023969,
"scaleX": 0.55,
"scaleY": 0.55,
"scaleZ": 0.55
},
"Nickname": "Coal",
"Description": "",
"GMNotes": "Coal",
"ColorDiffuse": {
"r": 0.249996454,
"g": 0.249996454,
"b": 0.249996454
},
"Tags": [
"coal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764768421/B8A6C401489F87D67346A5B7C64BFE13EC207EB7/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764772961/EC1CE1E2D5D3E3024B9A7BFB8D5753278E54CE71/",
"NormalURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764776286/1A8995CE735149678ED73402261D7F05A432AF9C/",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 1,
"TypeIndex": 0,
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "e8e076",
"Name": "Custom_Model",
"Transform": {
"posX": 7.024844,
"posY": 1.7198348,
"posZ": 7.29441547,
"rotX": 359.913574,
"rotY": 0.00494181225,
"rotZ": 0.0243083946,
"scaleX": 0.55,
"scaleY": 0.55,
"scaleZ": 0.55
},
"Nickname": "Coal",
"Description": "",
"GMNotes": "Coal",
"ColorDiffuse": {
"r": 0.249996454,
"g": 0.249996454,
"b": 0.249996454
},
"Tags": [
"coal"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"CustomMesh": {
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764768421/B8A6C401489F87D67346A5B7C64BFE13EC207EB7/",
"DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764772961/EC1CE1E2D5D3E3024B9A7BFB8D5753278E54CE71/",
"NormalURL": "http://cloud-3.steamusercontent.com/ugc/1791847275764776286/1A8995CE735149678ED73402261D7F05A432AF9C/",
"ColliderURL": "",
"Convex": true,
"MaterialIndex": 1,
"TypeIndex": 0,
"CastShadows": true
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "92d292",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": 17.7614727,
"posY": 1.57240868,
"posZ": -9.486605,
"rotX": -2.595256E-07,
"rotY": 179.978378,
"rotZ": -2.01012952E-07,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "",
"Description": "Teal Shipyard Precursor",
"GMNotes": "Teal Shipyard Precursor",
"ColorDiffuse": {
"r": 0.247056991,
"g": 0.247056991,
"b": 0.247056991
},
"Tags": [
"teal_shipyard_pre"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758147975/BA19C5A1DDAFF050D2EF57E5439785F70721BAA3/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.154861,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
},
{
"GUID": "b27ec8",
"Name": "Custom_Tile_Stack",
"Transform": {
"posX": 17.7614956,
"posY": 1.57133472,
"posZ": 5.513078,
"rotX": 0.003961326,
"rotY": 180.0,
"rotZ": 0.0124573838,
"scaleX": 0.46,
"scaleY": 1.0,
"scaleZ": 0.46
},
"Nickname": "",
"Description": "Purple Shipyard Precursor",
"GMNotes": "Purple Shipyard Precursor",
"ColorDiffuse": {
"r": 0.247056931,
"g": 0.247056931,
"b": 0.247056931
},
"Tags": [
"purple_shipyard_pre"
],
"LayoutGroupSortIndex": 0,
"Value": 0,
"Locked": false,
"Grid": false,
"Snap": true,
"IgnoreFoW": false,
"MeasureMovement": false,
"DragSelectable": true,
"Autoraise": true,
"Sticky": true,
"Tooltip": true,
"GridProjection": false,
"HideWhenFaceDown": false,
"Hands": false,
"MaterialIndex": -1,
"MeshIndex": -1,
"Number": 2,
"CustomImage": {
"ImageURL": "http://cloud-3.steamusercontent.com/ugc/960849557758151221/F18CDCB6B2F0D2E1605D5088AF5E26AD7D790F2F/",
"ImageSecondaryURL": "",
"ImageScalar": 1.0,
"WidthScale": 0.0,
"CustomTile": {
"Type": 3,
"Thickness": 0.1,
"Stackable": true,
"Stretch": true
}
},
"LuaScript": "",
"LuaScriptState": "",
"XmlUI": ""
}
]
}