bandersnatch-graph
bandersnatch-graph copied to clipboard
Handle multiple moments by segment
Take 7D for example. It currently renders this:

The first choice you have is 'Yes' or 'Fuck yes'. Both lead to the same video. Then, You are presented with 'Fight her' or 'leap through the window'. I think these can be ordered by one of the timestamps.
{
"7D": [
{
"type": "scene:cs_bs",
"startMs": 2619520,
"endMs": 2637160,
"activationWindow": [
2619520,
2633160
],
"id": "7D",
"layoutType": "l2",
"uiDisplayMS": 2623160,
"uiHideMS": 2633160,
"defaultChoiceIndex": 0,
"choiceActivationThresholdMS": 2619520,
"choices": [
{
"id": "Yeah",
"startTimeMs": 0,
"trackingInfo": {
"segmentId": "Yeah"
},
"text": "YES"
},
{
"id": "FYeah",
"startTimeMs": 0,
"trackingInfo": {
"segmentId": "FYeah"
},
"text": "FUCK YEAH"
}
],
"trackingInfo": {
"viewableId": 80988062,
"optionType": "fakeOption"
},
"uiInteractionStartMS": 2623160,
"config": {
"intervalBasedVideoTimer": true,
"disableImmediateSceneTransition": true,
"disablePrematureUserInteraction": true,
"hideChoiceLabelWhenChoiceHasImage": true,
"randomInitialDefault": true
}
},
{
"type": "scene:cs_bs",
"startMs": 2642680,
"endMs": 2659280,
"activationWindow": [
2642680,
2655280
],
"id": "7D",
"layoutType": "l2",
"uiDisplayMS": 2646320,
"uiHideMS": 2655280,
"defaultChoiceIndex": 0,
"choiceActivationThresholdMS": 2642680,
"choices": [
{
"id": "7L",
"segmentId": "7L",
"startTimeMs": 2659280,
"text": "LEAP THROUGH THE WINDOW",
"impressionData": {
"type": "userState",
"data": {
"persistent": {
"p_np": true,
"p_ne": true
}
}
}
},
{
"id": "7H",
"segmentId": "7H",
"startTimeMs": 6699080,
"text": "FIGHT HER"
}
],
"trackingInfo": {
"viewableId": 80988062
},
"uiInteractionStartMS": 2646320,
"config": {
"intervalBasedVideoTimer": true,
"disableImmediateSceneTransition": true,
"disablePrematureUserInteraction": true,
"hideChoiceLabelWhenChoiceHasImage": true,
"randomInitialDefault": true
}
}
]
}
I couldn't really figure out a better method when I looked briefly. Feel free to PR.