{ "format_version": 1, "source": "Generated from freesr-data.json avatars + resources/EidolonConfig.json by tools/build_gacha_banner_mapping.py; stable IDs: existing pairs preserved, new avatars get max+1.", "note": "Custom per-character banner mapping for the custom gacha presentation. Banner IDs use a 900000+ sandbox namespace that cannot collide with the Client captured GachaBasicInfo rows (1001/4001/2001/2002/3001/3002). Draws grant the mapped avatar; duplicates convert at its configured first Eidolon cost; first acquisition of a not-yet-owned avatar is rejected until the avatar acquisition path exists.", "client_assembly_sha256": "4aa08a0706f27d2cf9951b61920c179140ece9ea94f7e34422c18e46922939b6", "banners": [ { "gacha_id": 900001, "avatar_id": 1001, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900002, "avatar_id": 1002, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900003, "avatar_id": 1003, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900004, "avatar_id": 1004, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900005, "avatar_id": 1005, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900006, "avatar_id": 1006, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900007, "avatar_id": 1008, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900008, "avatar_id": 1009, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900009, "avatar_id": 1013, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900010, "avatar_id": 1101, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900011, "avatar_id": 1102, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900012, "avatar_id": 1103, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900013, "avatar_id": 1104, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900014, "avatar_id": 1105, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900015, "avatar_id": 1106, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900016, "avatar_id": 1107, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900017, "avatar_id": 1108, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900018, "avatar_id": 1109, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900019, "avatar_id": 1110, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900020, "avatar_id": 1111, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900021, "avatar_id": 1112, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900022, "avatar_id": 1201, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900023, "avatar_id": 1202, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900024, "avatar_id": 1203, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900025, "avatar_id": 1204, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900026, "avatar_id": 1205, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900027, "avatar_id": 1206, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900028, "avatar_id": 1207, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900029, "avatar_id": 1208, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900030, "avatar_id": 1209, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900031, "avatar_id": 1210, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900032, "avatar_id": 1211, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900033, "avatar_id": 1212, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900034, "avatar_id": 1213, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900035, "avatar_id": 1214, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900036, "avatar_id": 1215, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900037, "avatar_id": 1217, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900038, "avatar_id": 1218, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900039, "avatar_id": 1220, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900040, "avatar_id": 1221, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900041, "avatar_id": 1222, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900042, "avatar_id": 1223, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900043, "avatar_id": 1224, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900044, "avatar_id": 1225, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900045, "avatar_id": 1301, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900046, "avatar_id": 1302, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900047, "avatar_id": 1303, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900048, "avatar_id": 1304, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900049, "avatar_id": 1305, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900050, "avatar_id": 1306, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900051, "avatar_id": 1307, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900052, "avatar_id": 1308, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900053, "avatar_id": 1309, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900054, "avatar_id": 1310, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900055, "avatar_id": 1312, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900056, "avatar_id": 1313, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900057, "avatar_id": 1314, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900058, "avatar_id": 1315, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900059, "avatar_id": 1317, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900060, "avatar_id": 1321, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900061, "avatar_id": 1401, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900062, "avatar_id": 1402, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900063, "avatar_id": 1403, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900064, "avatar_id": 1404, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900065, "avatar_id": 1405, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900066, "avatar_id": 1406, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900067, "avatar_id": 1407, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900068, "avatar_id": 1408, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900069, "avatar_id": 1409, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900070, "avatar_id": 1410, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900071, "avatar_id": 1412, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900072, "avatar_id": 1413, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900073, "avatar_id": 1414, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900074, "avatar_id": 1415, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900075, "avatar_id": 1501, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900076, "avatar_id": 1502, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900077, "avatar_id": 1503, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900078, "avatar_id": 1504, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900079, "avatar_id": 1505, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900080, "avatar_id": 1506, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900081, "avatar_id": 1507, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900082, "avatar_id": 1510, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900083, "avatar_id": 1512, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900084, "avatar_id": 1513, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900085, "avatar_id": 8001, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900086, "avatar_id": 8002, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900087, "avatar_id": 8003, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900088, "avatar_id": 8004, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900089, "avatar_id": 8005, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900090, "avatar_id": 8006, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900091, "avatar_id": 8007, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900092, "avatar_id": 8008, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900093, "avatar_id": 8009, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900094, "avatar_id": 8010, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900095, "avatar_id": 1014, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900096, "avatar_id": 1015, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900097, "avatar_id": 1508, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900098, "avatar_id": 1509, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" }, { "gacha_id": 900099, "avatar_id": 1511, "roster_available": true, "provenance": "sandbox custom banner; avatar from imported roster; not official Client banner config" } ] }