Add scene-chain adapter layout workflow

This commit is contained in:
2026-06-27 23:51:42 +02:00
parent 3c54bb4bbe
commit e2c4ecb853
2 changed files with 965 additions and 0 deletions
@@ -0,0 +1,960 @@
{
"last_node_id": 45,
"last_link_id": 56,
"nodes": [
{
"id": 1,
"type": "SxCPGlobalSeed",
"pos": [-1900, -1040],
"size": [300, 90],
"flags": {},
"order": 0,
"mode": 0,
"inputs": [],
"outputs": [
{"name": "seed", "type": "INT", "links": null, "slot_index": 0},
{"name": "seed_config", "type": "STRING", "links": [1], "slot_index": 1},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 2}
],
"properties": {"Node name for S&R": "SxCPGlobalSeed"},
"widgets_values": [20260821]
},
{
"id": 2,
"type": "SxCPSceneStart",
"pos": [-1260, -600],
"size": [360, 250],
"flags": {},
"order": 1,
"mode": 0,
"inputs": [
{"name": "seed_config", "type": "STRING", "link": 1}
],
"outputs": [
{"name": "scene", "type": "STRING", "links": [2], "slot_index": 0},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 1},
{"name": "metadata_json", "type": "STRING", "links": null, "slot_index": 2}
],
"properties": {"Node name for S&R": "SxCPSceneStart"},
"widgets_values": [1, 41, 20260821, "raw", "provocative_erotic", "random", "balanced", "sxcppnl7", true]
},
{
"id": 3,
"type": "SxCPSceneCastOptions",
"pos": [-840, -1040],
"size": [340, 180],
"flags": {},
"order": 2,
"mode": 0,
"inputs": [],
"outputs": [
{"name": "cast_options", "type": "STRING", "links": [11], "slot_index": 0},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 1},
{"name": "metadata_json", "type": "STRING", "links": null, "slot_index": 2}
],
"properties": {"Node name for S&R": "SxCPSceneCastOptions"},
"widgets_values": ["replace", "mixed_couple", 1, 1, "woman_a", "none"]
},
{
"id": 4,
"type": "SxCPSceneCast",
"pos": [-840, -600],
"size": [360, 150],
"flags": {},
"order": 3,
"mode": 0,
"inputs": [
{"name": "scene", "type": "STRING", "link": 2},
{"name": "cast_options", "type": "STRING", "link": 11}
],
"outputs": [
{"name": "scene", "type": "STRING", "links": [12], "slot_index": 0},
{"name": "cast_config", "type": "STRING", "links": null, "slot_index": 1},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 2},
{"name": "metadata_json", "type": "STRING", "links": null, "slot_index": 3}
],
"properties": {"Node name for S&R": "SxCPSceneCast"},
"widgets_values": ["mixed_couple", 1, 1, "woman_a", "none"]
},
{
"id": 5,
"type": "SxCPSceneCharacterOptions",
"pos": [-420, -1040],
"size": [390, 260],
"flags": {},
"order": 4,
"mode": 0,
"inputs": [],
"outputs": [
{"name": "character_options", "type": "STRING", "links": [14], "slot_index": 0},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 1},
{"name": "metadata_json", "type": "STRING", "links": null, "slot_index": 2}
],
"properties": {"Node name for S&R": "SxCPSceneCharacterOptions"},
"widgets_values": ["replace", "medium", "visible", "enabled", 0.45, 0.35, 0.85, "creator remains visually central"]
},
{
"id": 6,
"type": "SxCPSceneCharacter",
"pos": [-420, -760],
"size": [390, 360],
"flags": {},
"order": 5,
"mode": 0,
"inputs": [
{"name": "scene", "type": "STRING", "link": 12},
{"name": "character_options", "type": "STRING", "link": 14},
{"name": "seed_options", "type": "STRING", "link": 9}
],
"outputs": [
{"name": "scene", "type": "STRING", "links": [15], "slot_index": 0},
{"name": "character_cast", "type": "STRING", "links": null, "slot_index": 1},
{"name": "character_slot", "type": "STRING", "links": null, "slot_index": 2},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 3},
{"name": "metadata_json", "type": "STRING", "links": null, "slot_index": 4}
],
"properties": {"Node name for S&R": "SxCPSceneCharacter"},
"widgets_values": [true, "woman", "A", -1, "25-year-old adult", "random", "random", "random", "medium", true, 0.45, "visible", -1.0, -1.0]
},
{
"id": 7,
"type": "SxCPSceneCharacter",
"pos": [-420, -310],
"size": [390, 360],
"flags": {},
"order": 6,
"mode": 0,
"inputs": [
{"name": "scene", "type": "STRING", "link": 15},
{"name": "seed_options", "type": "STRING", "link": 13}
],
"outputs": [
{"name": "scene", "type": "STRING", "links": [16], "slot_index": 0},
{"name": "character_cast", "type": "STRING", "links": null, "slot_index": 1},
{"name": "character_slot", "type": "STRING", "links": null, "slot_index": 2},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 3},
{"name": "metadata_json", "type": "STRING", "links": null, "slot_index": 4}
],
"properties": {"Node name for S&R": "SxCPSceneCharacter"},
"widgets_values": [true, "man", "A", -1, "40-year-old adult", "random", "random", "average", "compact", true, 0.35, "visible", -1.0, -1.0]
},
{
"id": 8,
"type": "SxCPSceneWardrobeOptions",
"pos": [40, -1040],
"size": [410, 320],
"flags": {},
"order": 7,
"mode": 0,
"inputs": [],
"outputs": [
{"name": "wardrobe_options", "type": "STRING", "links": [18], "slot_index": 0},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 1},
{"name": "metadata_json", "type": "STRING", "links": null, "slot_index": 2}
],
"properties": {"Node name for S&R": "SxCPSceneWardrobeOptions"},
"widgets_values": ["replace", "woman", "A", "minimal", "explicit_nude", true, "black lace lingerie set with stockings and garter details", "", "thin necklace, small earrings", "softcore outfit only; hardcore branch should not repeat outfit tokens"]
},
{
"id": 9,
"type": "SxCPSceneWardrobe",
"pos": [40, -760],
"size": [390, 250],
"flags": {},
"order": 8,
"mode": 0,
"inputs": [
{"name": "scene", "type": "STRING", "link": 16},
{"name": "wardrobe_options", "type": "STRING", "link": 18},
{"name": "seed_options", "type": "STRING", "link": 17}
],
"outputs": [
{"name": "scene", "type": "STRING", "links": [19], "slot_index": 0},
{"name": "character_cast", "type": "STRING", "links": null, "slot_index": 1},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 2},
{"name": "metadata_json", "type": "STRING", "links": null, "slot_index": 3}
],
"properties": {"Node name for S&R": "SxCPSceneWardrobe"},
"widgets_values": [true, "woman", "A", "minimal", "black lace lingerie set with stockings and garter details", "fully nude", ""]
},
{
"id": 10,
"type": "SxCPSceneWardrobeOptions",
"pos": [40, 10],
"size": [410, 290],
"flags": {},
"order": 9,
"mode": 0,
"inputs": [],
"outputs": [
{"name": "wardrobe_options", "type": "STRING", "links": [20], "slot_index": 0},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 1},
{"name": "metadata_json", "type": "STRING", "links": null, "slot_index": 2}
],
"properties": {"Node name for S&R": "SxCPSceneWardrobeOptions"},
"widgets_values": ["replace", "man", "A", "full", "dressed", true, "half-open black shirt with dark trousers", "shirt open, lower body mostly off-camera when explicit action is framed", "", "partner outfit stays simpler than creator outfit"]
},
{
"id": 11,
"type": "SxCPSceneWardrobe",
"pos": [40, -360],
"size": [390, 250],
"flags": {},
"order": 10,
"mode": 0,
"inputs": [
{"name": "scene", "type": "STRING", "link": 19},
{"name": "wardrobe_options", "type": "STRING", "link": 20},
{"name": "seed_options", "type": "STRING", "link": 21}
],
"outputs": [
{"name": "scene", "type": "STRING", "links": [22], "slot_index": 0},
{"name": "character_cast", "type": "STRING", "links": null, "slot_index": 1},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 2},
{"name": "metadata_json", "type": "STRING", "links": null, "slot_index": 3}
],
"properties": {"Node name for S&R": "SxCPSceneWardrobe"},
"widgets_values": [true, "man", "A", "full", "half-open black shirt with dark trousers", "shirt open, lower body mostly off-camera when explicit action is framed", ""]
},
{
"id": 12,
"type": "SxCPSceneLocationLayoutOptions",
"pos": [500, -1040],
"size": [410, 250],
"flags": {},
"order": 11,
"mode": 0,
"inputs": [],
"outputs": [
{"name": "location_options", "type": "STRING", "links": [23], "slot_index": 0},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 1},
{"name": "metadata_json", "type": "STRING", "links": null, "slot_index": 2}
],
"properties": {"Node name for S&R": "SxCPSceneLocationLayoutOptions"},
"widgets_values": ["replace", "near desk edge, laptop corner, chair back", "warm work desks, laptop tables, glass partition seams", "repeated desk rows, plants, tall windows", "semi_public", "semi_public", "coworking lounge layout that survives camera rerolls"]
},
{
"id": 13,
"type": "SxCPSceneLocation",
"pos": [500, -760],
"size": [410, 210],
"flags": {},
"order": 12,
"mode": 0,
"inputs": [
{"name": "scene", "type": "STRING", "link": 22},
{"name": "location_options", "type": "STRING", "link": 23},
{"name": "seed_options", "type": "STRING", "link": 24}
],
"outputs": [
{"name": "scene", "type": "STRING", "links": [25], "slot_index": 0},
{"name": "location_config", "type": "STRING", "links": null, "slot_index": 1},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 2},
{"name": "metadata_json", "type": "STRING", "links": null, "slot_index": 3}
],
"properties": {"Node name for S&R": "SxCPSceneLocation"},
"widgets_values": [true, "replace", "custom_only", "coworking lounge with tall windows, warm desks, glass partitions, plants, and polished office-lounge surfaces", "shared location base"]
},
{
"id": 14,
"type": "SxCPSceneSetDressingOptions",
"pos": [500, -170],
"size": [410, 230],
"flags": {},
"order": 13,
"mode": 0,
"inputs": [],
"outputs": [
{"name": "set_options", "type": "STRING", "links": [26], "slot_index": 0},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 1},
{"name": "metadata_json", "type": "STRING", "links": null, "slot_index": 2}
],
"properties": {"Node name for S&R": "SxCPSceneSetDressingOptions"},
"widgets_values": ["replace", "laptop corner and polished tabletop line", "desks, chairs, glass seams, plant rows", "phone, coffee cup, folded jacket", "warm wood, glass reflections, muted office light", "keep props beside or behind the action, not blocking the subject"]
},
{
"id": 15,
"type": "SxCPSceneSetDressing",
"pos": [500, -470],
"size": [410, 250],
"flags": {},
"order": 14,
"mode": 0,
"inputs": [
{"name": "scene", "type": "STRING", "link": 25},
{"name": "set_options", "type": "STRING", "link": 26}
],
"outputs": [
{"name": "scene", "type": "STRING", "links": [27], "slot_index": 0},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 1},
{"name": "metadata_json", "type": "STRING", "links": null, "slot_index": 2}
],
"properties": {"Node name for S&R": "SxCPSceneSetDressing"},
"widgets_values": [true, "", "", "", ""]
},
{
"id": 16,
"type": "SxCPSceneBlockingOptions",
"pos": [960, -1040],
"size": [410, 270],
"flags": {},
"order": 15,
"mode": 0,
"inputs": [],
"outputs": [
{"name": "blocking_options", "type": "STRING", "links": [28], "slot_index": 0},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 1},
{"name": "metadata_json", "type": "STRING", "links": null, "slot_index": 2}
],
"properties": {"Node name for S&R": "SxCPSceneBlockingOptions"},
"widgets_values": ["replace", "custom", "woman close to the desk edge with room depth behind her", "man close enough for the hardcore branch but not forced into the softcore pose", "three_quarter", "foreground", "subjects dominate the frame while the coworking pattern remains visible", "shared blocking base before branch-specific action"]
},
{
"id": 17,
"type": "SxCPSceneBlocking",
"pos": [960, -760],
"size": [410, 250],
"flags": {},
"order": 16,
"mode": 0,
"inputs": [
{"name": "scene", "type": "STRING", "link": 27},
{"name": "blocking_options", "type": "STRING", "link": 28}
],
"outputs": [
{"name": "scene", "type": "STRING", "links": [29], "slot_index": 0},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 1},
{"name": "metadata_json", "type": "STRING", "links": null, "slot_index": 2}
],
"properties": {"Node name for S&R": "SxCPSceneBlocking"},
"widgets_values": [true, "custom", "", "", ""]
},
{
"id": 18,
"type": "SxCPSceneActionOptions",
"pos": [960, -170],
"size": [410, 190],
"flags": {},
"order": 17,
"mode": 0,
"inputs": [],
"outputs": [
{"name": "action_options", "type": "STRING", "links": [30], "slot_index": 0},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 1},
{"name": "metadata_json", "type": "STRING", "links": null, "slot_index": 2}
],
"properties": {"Node name for S&R": "SxCPSceneActionOptions"},
"widgets_values": ["replace", "softcore", "softcore_tease", "no_change", "soft branch starts as an outfit tease; hardcore branch replaces action through the action filter"]
},
{
"id": 19,
"type": "SxCPSceneAction",
"pos": [960, -470],
"size": [410, 210],
"flags": {},
"order": 18,
"mode": 0,
"inputs": [
{"name": "scene", "type": "STRING", "link": 29},
{"name": "action_options", "type": "STRING", "link": 30},
{"name": "seed_options", "type": "STRING", "link": 31}
],
"outputs": [
{"name": "scene", "type": "STRING", "links": [32], "slot_index": 0},
{"name": "hardcore_position_config", "type": "STRING", "links": null, "slot_index": 1},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 2},
{"name": "metadata_json", "type": "STRING", "links": null, "slot_index": 3}
],
"properties": {"Node name for S&R": "SxCPSceneAction"},
"widgets_values": [true, "regular", "no_change", ""]
},
{
"id": 20,
"type": "SxCPScenePerformanceOptions",
"pos": [1420, -1040],
"size": [410, 250],
"flags": {},
"order": 19,
"mode": 0,
"inputs": [],
"outputs": [
{"name": "performance_options", "type": "STRING", "links": [33], "slot_index": 0},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 1},
{"name": "metadata_json", "type": "STRING", "links": null, "slot_index": 2}
],
"properties": {"Node name for S&R": "SxCPScenePerformanceOptions"},
"widgets_values": ["replace", "enabled", "fixed", 0.55, "camera", "on_body", "posed", "controlled creator-camera expression"]
},
{
"id": 21,
"type": "SxCPScenePerformance",
"pos": [1420, -760],
"size": [410, 180],
"flags": {},
"order": 20,
"mode": 0,
"inputs": [
{"name": "scene", "type": "STRING", "link": 32},
{"name": "performance_options", "type": "STRING", "link": 33}
],
"outputs": [
{"name": "scene", "type": "STRING", "links": [34], "slot_index": 0},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 1},
{"name": "metadata_json", "type": "STRING", "links": null, "slot_index": 2}
],
"properties": {"Node name for S&R": "SxCPScenePerformance"},
"widgets_values": [true, "fixed", 0.55, ""]
},
{
"id": 22,
"type": "SxCPSceneCameraOptions",
"pos": [1420, -150],
"size": [410, 170],
"flags": {},
"order": 21,
"mode": 0,
"inputs": [],
"outputs": [
{"name": "camera_options", "type": "STRING", "links": [35], "slot_index": 0},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 1},
{"name": "metadata_json", "type": "STRING", "links": null, "slot_index": 2}
],
"properties": {"Node name for S&R": "SxCPSceneCameraOptions"},
"widgets_values": ["replace", "from_camera_config", true, "camera should adapt to the location layout instead of replacing it"]
},
{
"id": 23,
"type": "SxCPSceneCamera",
"pos": [1420, -530],
"size": [410, 330],
"flags": {},
"order": 22,
"mode": 0,
"inputs": [
{"name": "scene", "type": "STRING", "link": 34},
{"name": "camera_options", "type": "STRING", "link": 35}
],
"outputs": [
{"name": "scene", "type": "STRING", "links": [36], "slot_index": 0},
{"name": "camera_config", "type": "STRING", "links": null, "slot_index": 1},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 2},
{"name": "metadata_json", "type": "STRING", "links": null, "slot_index": 3}
],
"properties": {"Node name for S&R": "SxCPSceneCamera"},
"widgets_values": [true, "standard", "three_quarter", "eye_level", "auto", "auto", "vertical_story", "auto", "strong", "compact", ""]
},
{
"id": 24,
"type": "SxCPSceneCompositionOptions",
"pos": [1880, -1040],
"size": [410, 200],
"flags": {},
"order": 23,
"mode": 0,
"inputs": [],
"outputs": [
{"name": "composition_options", "type": "STRING", "links": [37], "slot_index": 0},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 1},
{"name": "metadata_json", "type": "STRING", "links": null, "slot_index": 2}
],
"properties": {"Node name for S&R": "SxCPSceneCompositionOptions"},
"widgets_values": ["replace", "body", "three_quarter", "clear", "subject remains dominant while desk rows and glass seams prove the location"]
},
{
"id": 25,
"type": "SxCPSceneComposition",
"pos": [1880, -760],
"size": [410, 210],
"flags": {},
"order": 24,
"mode": 0,
"inputs": [
{"name": "scene", "type": "STRING", "link": 36},
{"name": "composition_options", "type": "STRING", "link": 37}
],
"outputs": [
{"name": "scene", "type": "STRING", "links": [38], "slot_index": 0},
{"name": "composition_config", "type": "STRING", "links": null, "slot_index": 1},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 2},
{"name": "metadata_json", "type": "STRING", "links": null, "slot_index": 3}
],
"properties": {"Node name for S&R": "SxCPSceneComposition"},
"widgets_values": [true, "replace", "no_outfit_check", "", ""]
},
{
"id": 26,
"type": "SxCPSceneLightingOptions",
"pos": [1880, -150],
"size": [410, 220],
"flags": {},
"order": 25,
"mode": 0,
"inputs": [],
"outputs": [
{"name": "lighting_options", "type": "STRING", "links": [39], "slot_index": 0},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 1},
{"name": "metadata_json", "type": "STRING", "links": null, "slot_index": 2}
],
"properties": {"Node name for S&R": "SxCPSceneLightingOptions"},
"widgets_values": ["replace", "window_light", "soft", "medium", "warm", "evening", "soft office-window light with practical lamps in the background"]
},
{
"id": 27,
"type": "SxCPSceneLighting",
"pos": [1880, -470],
"size": [410, 210],
"flags": {},
"order": 26,
"mode": 0,
"inputs": [
{"name": "scene", "type": "STRING", "link": 38},
{"name": "lighting_options", "type": "STRING", "link": 39}
],
"outputs": [
{"name": "scene", "type": "STRING", "links": [40], "slot_index": 0},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 1},
{"name": "metadata_json", "type": "STRING", "links": null, "slot_index": 2}
],
"properties": {"Node name for S&R": "SxCPSceneLighting"},
"widgets_values": [true, "auto", "auto", "auto", "auto", ""]
},
{
"id": 28,
"type": "SxCPSceneBranchOptions",
"pos": [2340, -1040],
"size": [390, 180],
"flags": {},
"order": 27,
"mode": 0,
"inputs": [],
"outputs": [
{"name": "branch_options", "type": "STRING", "links": [41, 44, 47], "slot_index": 0},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 1},
{"name": "metadata_json", "type": "STRING", "links": null, "slot_index": 2}
],
"properties": {"Node name for S&R": "SxCPSceneBranchOptions"},
"widgets_values": ["replace", "both", "same_creator_same_room", "hybrid", "same cast, same coworking room, different explicitness"]
},
{
"id": 29,
"type": "SxCPSceneBranchPair",
"pos": [2340, -600],
"size": [340, 130],
"flags": {},
"order": 28,
"mode": 0,
"inputs": [
{"name": "scene", "type": "STRING", "link": 40},
{"name": "branch_options", "type": "STRING", "link": 41},
{"name": "seed_options", "type": "STRING", "link": 42}
],
"outputs": [
{"name": "softcore_scene", "type": "STRING", "links": [43], "slot_index": 0},
{"name": "hardcore_scene", "type": "STRING", "links": [45], "slot_index": 1},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 2},
{"name": "metadata_json", "type": "STRING", "links": null, "slot_index": 3}
],
"properties": {"Node name for S&R": "SxCPSceneBranchPair"},
"widgets_values": ["same_creator_same_room", "hybrid"]
},
{
"id": 30,
"type": "SxCPSoftcoreBranchOptions",
"pos": [2760, -760],
"size": [390, 260],
"flags": {},
"order": 29,
"mode": 0,
"inputs": [
{"name": "scene", "type": "STRING", "link": 43},
{"name": "branch_options", "type": "STRING", "link": 44}
],
"outputs": [
{"name": "scene", "type": "STRING", "links": [49], "slot_index": 0},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 1},
{"name": "metadata_json", "type": "STRING", "links": null, "slot_index": 2}
],
"properties": {"Node name for S&R": "SxCPSoftcoreBranchOptions"},
"widgets_values": ["same_as_hardcore", "lingerie_tease", true, 0.45, "from_camera_config", "compact", ""]
},
{
"id": 31,
"type": "SxCPHardcoreActionFilter",
"pos": [2340, -310],
"size": [360, 300],
"flags": {},
"order": 30,
"mode": 0,
"inputs": [],
"outputs": [
{"name": "hardcore_position_config", "type": "STRING", "links": [46], "slot_index": 0},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 1}
],
"properties": {"Node name for S&R": "SxCPHardcoreActionFilter"},
"widgets_values": ["penetration_only", false, false, true, false, false, false, false, false, false, false]
},
{
"id": 32,
"type": "SxCPHardcoreBranchOptions",
"pos": [2760, -350],
"size": [390, 360],
"flags": {},
"order": 31,
"mode": 0,
"inputs": [
{"name": "scene", "type": "STRING", "link": 45},
{"name": "hardcore_position_config", "type": "STRING", "link": 46},
{"name": "branch_options", "type": "STRING", "link": 47},
{"name": "seed_options", "type": "STRING", "link": 48}
],
"outputs": [
{"name": "scene", "type": "STRING", "links": [50], "slot_index": 0},
{"name": "hardcore_position_config", "type": "STRING", "links": null, "slot_index": 1},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 2},
{"name": "metadata_json", "type": "STRING", "links": null, "slot_index": 3}
],
"properties": {"Node name for S&R": "SxCPHardcoreBranchOptions"},
"widgets_values": ["couple", 1, 1, "hardcore", true, 0.85, "explicit_nude", "from_camera_config", "compact", "balanced", ""]
},
{
"id": 33,
"type": "SxCPScenePairOutput",
"pos": [3220, -600],
"size": [430, 290],
"flags": {},
"order": 32,
"mode": 0,
"inputs": [
{"name": "softcore_scene", "type": "STRING", "link": 49},
{"name": "hardcore_scene", "type": "STRING", "link": 50}
],
"outputs": [
{"name": "softcore_prompt", "type": "STRING", "links": [53], "slot_index": 0},
{"name": "hardcore_prompt", "type": "STRING", "links": [54], "slot_index": 1},
{"name": "softcore_negative_prompt", "type": "STRING", "links": null, "slot_index": 2},
{"name": "hardcore_negative_prompt", "type": "STRING", "links": null, "slot_index": 3},
{"name": "softcore_caption", "type": "STRING", "links": null, "slot_index": 4},
{"name": "hardcore_caption", "type": "STRING", "links": null, "slot_index": 5},
{"name": "shared_descriptor", "type": "STRING", "links": null, "slot_index": 6},
{"name": "metadata_json", "type": "STRING", "links": [51, 52], "slot_index": 7},
{"name": "scene_metadata_json", "type": "STRING", "links": null, "slot_index": 8}
],
"properties": {"Node name for S&R": "SxCPScenePairOutput"},
"widgets_values": []
},
{
"id": 34,
"type": "SxCPKrea2Formatter",
"pos": [3720, -760],
"size": [390, 270],
"flags": {},
"order": 33,
"mode": 0,
"inputs": [
{"name": "metadata_json", "type": "STRING", "link": 51}
],
"outputs": [
{"name": "krea_prompt", "type": "STRING", "links": null, "slot_index": 0},
{"name": "negative_prompt", "type": "STRING", "links": null, "slot_index": 1},
{"name": "krea_softcore_prompt", "type": "STRING", "links": [55], "slot_index": 2},
{"name": "krea_hardcore_prompt", "type": "STRING", "links": [56], "slot_index": 3},
{"name": "softcore_negative_prompt", "type": "STRING", "links": null, "slot_index": 4},
{"name": "hardcore_negative_prompt", "type": "STRING", "links": null, "slot_index": 5},
{"name": "method", "type": "STRING", "links": null, "slot_index": 6},
{"name": "route_trace_json", "type": "STRING", "links": null, "slot_index": 7}
],
"properties": {"Node name for S&R": "SxCPKrea2Formatter"},
"widgets_values": ["", "metadata_json", "auto", "balanced", "preserve", false, "", ""]
},
{
"id": 35,
"type": "SxCPCaptionNaturalizer",
"pos": [3720, -370],
"size": [390, 240],
"flags": {},
"order": 34,
"mode": 0,
"inputs": [
{"name": "metadata_json", "type": "STRING", "link": 52}
],
"outputs": [
{"name": "natural_caption", "type": "STRING", "links": null, "slot_index": 0},
{"name": "method", "type": "STRING", "links": null, "slot_index": 1},
{"name": "route_trace_json", "type": "STRING", "links": null, "slot_index": 2}
],
"properties": {"Node name for S&R": "SxCPCaptionNaturalizer"},
"widgets_values": ["", "metadata_json", "training_dense", "balanced", "drop_style_tail", "sxcppnl7", true, "auto"]
},
{
"id": 36,
"type": "SxCPPreviewAnyAsText",
"pos": [4200, -900],
"size": [420, 180],
"flags": {},
"order": 35,
"mode": 0,
"inputs": [
{"name": "value", "type": "*", "link": 53}
],
"outputs": [
{"name": "text", "type": "STRING", "links": null, "slot_index": 0}
],
"properties": {"Node name for S&R": "SxCPPreviewAnyAsText"},
"widgets_values": ["Raw softcore prompt preview", "auto", 30000]
},
{
"id": 37,
"type": "SxCPPreviewAnyAsText",
"pos": [4200, -690],
"size": [420, 180],
"flags": {},
"order": 36,
"mode": 0,
"inputs": [
{"name": "value", "type": "*", "link": 54}
],
"outputs": [
{"name": "text", "type": "STRING", "links": null, "slot_index": 0}
],
"properties": {"Node name for S&R": "SxCPPreviewAnyAsText"},
"widgets_values": ["Raw hardcore prompt preview", "auto", 30000]
},
{
"id": 38,
"type": "SxCPPreviewAnyAsText",
"pos": [4200, -480],
"size": [420, 180],
"flags": {},
"order": 37,
"mode": 0,
"inputs": [
{"name": "value", "type": "*", "link": 55}
],
"outputs": [
{"name": "text", "type": "STRING", "links": null, "slot_index": 0}
],
"properties": {"Node name for S&R": "SxCPPreviewAnyAsText"},
"widgets_values": ["Krea softcore prompt preview", "auto", 30000]
},
{
"id": 39,
"type": "SxCPPreviewAnyAsText",
"pos": [4200, -270],
"size": [420, 180],
"flags": {},
"order": 38,
"mode": 0,
"inputs": [
{"name": "value", "type": "*", "link": 56}
],
"outputs": [
{"name": "text", "type": "STRING", "links": null, "slot_index": 0}
],
"properties": {"Node name for S&R": "SxCPPreviewAnyAsText"},
"widgets_values": ["Krea hardcore prompt preview", "auto", 30000]
},
{
"id": 40,
"type": "Note",
"pos": [-1900, -470],
"size": [560, 260],
"flags": {},
"order": 39,
"mode": 0,
"inputs": [],
"outputs": [],
"properties": {},
"widgets_values": [
"Proposed adapter layout: the center row is the mental-model chain (scene start -> cast -> characters -> wardrobe -> location -> set -> blocking -> action -> performance -> camera -> composition -> lighting -> branch). Adapter nodes sit above/below the layer they override. The seed adapter bus on the left is chained once and reused by character, wardrobe, location, action, and hardcore branch nodes."
]
},
{
"id": 41,
"type": "SxCPSceneLayerSeedOptions",
"pos": [-1900, -900],
"size": [340, 170],
"flags": {},
"order": 40,
"mode": 0,
"inputs": [],
"outputs": [
{"name": "seed_options", "type": "STRING", "links": [3], "slot_index": 0},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 1},
{"name": "metadata_json", "type": "STRING", "links": null, "slot_index": 2}
],
"properties": {"Node name for S&R": "SxCPSceneLayerSeedOptions"},
"widgets_values": ["character", "fixed", 20260831, "person", "same_for_all_rows", "replace_layer"]
},
{
"id": 42,
"type": "SxCPSceneLayerSeedOptions",
"pos": [-1900, -710],
"size": [340, 170],
"flags": {},
"order": 41,
"mode": 0,
"inputs": [
{"name": "seed_options", "type": "STRING", "link": 3}
],
"outputs": [
{"name": "seed_options", "type": "STRING", "links": [4], "slot_index": 0},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 1},
{"name": "metadata_json", "type": "STRING", "links": null, "slot_index": 2}
],
"properties": {"Node name for S&R": "SxCPSceneLayerSeedOptions"},
"widgets_values": ["wardrobe", "fixed", 20260832, "content", "same_for_all_rows", "add"]
},
{
"id": 43,
"type": "SxCPSceneLayerSeedOptions",
"pos": [-1540, -900],
"size": [340, 170],
"flags": {},
"order": 42,
"mode": 0,
"inputs": [
{"name": "seed_options", "type": "STRING", "link": 4}
],
"outputs": [
{"name": "seed_options", "type": "STRING", "links": [5], "slot_index": 0},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 1},
{"name": "metadata_json", "type": "STRING", "links": null, "slot_index": 2}
],
"properties": {"Node name for S&R": "SxCPSceneLayerSeedOptions"},
"widgets_values": ["location", "fixed", 20260833, "scene", "same_for_all_rows", "add"]
},
{
"id": 44,
"type": "SxCPSceneLayerSeedOptions",
"pos": [-1540, -710],
"size": [340, 170],
"flags": {},
"order": 43,
"mode": 0,
"inputs": [
{"name": "seed_options", "type": "STRING", "link": 5}
],
"outputs": [
{"name": "seed_options", "type": "STRING", "links": [6], "slot_index": 0},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 1},
{"name": "metadata_json", "type": "STRING", "links": null, "slot_index": 2}
],
"properties": {"Node name for S&R": "SxCPSceneLayerSeedOptions"},
"widgets_values": ["action", "fixed", 20260834, "pose", "same_for_all_rows", "add"]
},
{
"id": 45,
"type": "SxCPSceneLayerSeedOptions",
"pos": [-1540, -520],
"size": [340, 170],
"flags": {},
"order": 44,
"mode": 0,
"inputs": [
{"name": "seed_options", "type": "STRING", "link": 6}
],
"outputs": [
{"name": "seed_options", "type": "STRING", "links": [9, 13, 17, 21, 24, 31, 42, 48], "slot_index": 0},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 1},
{"name": "metadata_json", "type": "STRING", "links": null, "slot_index": 2}
],
"properties": {"Node name for S&R": "SxCPSceneLayerSeedOptions"},
"widgets_values": ["hardcore_branch", "fixed", 20260835, "pose", "same_for_all_rows", "add"]
}
],
"links": [
[1, 1, 1, 2, 0, "STRING"],
[2, 2, 0, 4, 0, "STRING"],
[3, 41, 0, 42, 0, "STRING"],
[4, 42, 0, 43, 0, "STRING"],
[5, 43, 0, 44, 0, "STRING"],
[6, 44, 0, 45, 0, "STRING"],
[9, 45, 0, 6, 2, "STRING"],
[11, 3, 0, 4, 1, "STRING"],
[12, 4, 0, 6, 0, "STRING"],
[13, 45, 0, 7, 1, "STRING"],
[14, 5, 0, 6, 1, "STRING"],
[15, 6, 0, 7, 0, "STRING"],
[16, 7, 0, 9, 0, "STRING"],
[17, 45, 0, 9, 2, "STRING"],
[18, 8, 0, 9, 1, "STRING"],
[19, 9, 0, 11, 0, "STRING"],
[20, 10, 0, 11, 1, "STRING"],
[21, 45, 0, 11, 2, "STRING"],
[22, 11, 0, 13, 0, "STRING"],
[23, 12, 0, 13, 1, "STRING"],
[24, 45, 0, 13, 2, "STRING"],
[25, 13, 0, 15, 0, "STRING"],
[26, 14, 0, 15, 1, "STRING"],
[27, 15, 0, 17, 0, "STRING"],
[28, 16, 0, 17, 1, "STRING"],
[29, 17, 0, 19, 0, "STRING"],
[30, 18, 0, 19, 1, "STRING"],
[31, 45, 0, 19, 2, "STRING"],
[32, 19, 0, 21, 0, "STRING"],
[33, 20, 0, 21, 1, "STRING"],
[34, 21, 0, 23, 0, "STRING"],
[35, 22, 0, 23, 1, "STRING"],
[36, 23, 0, 25, 0, "STRING"],
[37, 24, 0, 25, 1, "STRING"],
[38, 25, 0, 27, 0, "STRING"],
[39, 26, 0, 27, 1, "STRING"],
[40, 27, 0, 29, 0, "STRING"],
[41, 28, 0, 29, 1, "STRING"],
[42, 45, 0, 29, 2, "STRING"],
[43, 29, 0, 30, 0, "STRING"],
[44, 28, 0, 30, 1, "STRING"],
[45, 29, 1, 32, 0, "STRING"],
[46, 31, 0, 32, 1, "STRING"],
[47, 28, 0, 32, 2, "STRING"],
[48, 45, 0, 32, 3, "STRING"],
[49, 30, 0, 33, 0, "STRING"],
[50, 32, 0, 33, 1, "STRING"],
[51, 33, 7, 34, 0, "STRING"],
[52, 33, 7, 35, 0, "STRING"],
[53, 33, 0, 36, 0, "STRING"],
[54, 33, 1, 37, 0, "STRING"],
[55, 34, 2, 38, 0, "STRING"],
[56, 34, 3, 39, 0, "STRING"]
],
"groups": [
{
"title": "Seed Adapter Bus",
"bounding": [-1930, -1090, 760, 780],
"color": "#4d6b8f",
"font_size": 24
},
{
"title": "Main Scene Chain",
"bounding": [-1290, -810, 3610, 900],
"color": "#3f789e",
"font_size": 24
},
{
"title": "Layer Option Adapters",
"bounding": [-870, -1090, 3220, 1180],
"color": "#6b5a8f",
"font_size": 24
},
{
"title": "Softcore/Hardcore Branch Adapters",
"bounding": [2310, -1090, 880, 1160],
"color": "#8a5a5a",
"font_size": 24
},
{
"title": "Pair Output, Formatters, Persistent Text Previews",
"bounding": [3190, -950, 1470, 900],
"color": "#4d7f45",
"font_size": 24
}
],
"config": {},
"extra": {
"ds": {
"scale": 0.52,
"offset": [1290, 665]
}
},
"version": 0.4
}