diff --git a/pop/loner/bin/halo3.py b/pop/loner/bin/halo3.py index aeb096c3c..0dbb881a7 100644 --- a/pop/loner/bin/halo3.py +++ b/pop/loner/bin/halo3.py @@ -248,7 +248,11 @@ CHART = { # on 20 — so OF starts the instant think ends # ("of should start sooner, right after # 'think' ends") with no rest needed at all. - "durs": { 0: 2.0, 1: 2.0, 2: 2.0, 3: 1.5, + # curled 2.29 is not a grid value on purpose: up's peak sits + # 0.71 beats into its slot, so the slot has + # to open at 6.29 for the peak to land on + # the bar 1 beat 4 line. + "durs": { 0: 2.0, 1: 2.0, 2: 2.29, 3: 2.5, # "my" a beat sooner: the warp is one # sequential frame map, so units cannot # truly overlap — "in" simply ends where diff --git a/pop/loner/c/loner-chart.h b/pop/loner/c/loner-chart.h index 37199ee75..adb1c98ae 100644 --- a/pop/loner/c/loner-chart.h +++ b/pop/loner/c/loner-chart.h @@ -15,28 +15,28 @@ typedef struct { const char *name; double leadIn; double beats; static const ChartNote w_whole_line_notes[] = { { 0.00, 2.00, 7 }, { 2.00, 2.00, 5 }, - { 4.00, 2.00, 3 }, - { 6.00, 1.50, 2 }, - { 7.50, 2.50, 0 }, - { 10.00, 0.50, 5 }, - { 10.50, 2.00, 2 }, - { 12.50, 2.00, -2 }, - { 14.50, 2.00, -5 }, - { 16.50, 4.00, 12 }, - { 20.50, 3.00, 10 }, - { 23.50, 3.00, 5 }, - { 26.50, 4.00, 2 }, - { 30.50, 2.00, 3 }, - { 32.50, 2.00, 2 }, - { 34.50, 2.00, 0 }, - { 36.50, 2.00, -2 }, - { 38.50, 2.00, 7 }, - { 40.50, 2.50, 5 }, - { 43.00, 2.50, 3 }, - { 45.50, 2.00, 5 }, - { 47.50, 4.00, 7 }, - { 51.50, 4.00, 3 }, - { 55.50, 3.00, 3 }, + { 4.00, 2.29, 3 }, + { 6.29, 2.50, 2 }, + { 8.79, 2.50, 0 }, + { 11.29, 0.50, 5 }, + { 11.79, 2.00, 2 }, + { 13.79, 2.00, -2 }, + { 15.79, 2.00, -5 }, + { 17.79, 4.00, 12 }, + { 21.79, 3.00, 10 }, + { 24.79, 3.00, 5 }, + { 27.79, 4.00, 2 }, + { 31.79, 2.00, 3 }, + { 33.79, 2.00, 2 }, + { 35.79, 2.00, 0 }, + { 37.79, 2.00, -2 }, + { 39.79, 2.00, 7 }, + { 41.79, 2.50, 5 }, + { 44.29, 2.50, 3 }, + { 46.79, 2.00, 5 }, + { 48.79, 4.00, 7 }, + { 52.79, 4.00, 3 }, + { 56.79, 3.00, 3 }, }; static const ChartNote w_sitting_curled_notes[] = { { 0.00, 3.00, 6 }, @@ -93,7 +93,7 @@ static const ChartNote w_n_for_time_to_pass_notes[] = { }; static const ChartPhrase CHART[] = { - { "w-whole-line", 0.510, 58.50, 24, w_whole_line_notes }, + { "w-whole-line", 0.510, 59.79, 24, w_whole_line_notes }, { "w-sitting-curled", 0.020, 11.00, 5, w_sitting_curled_notes }, { "w-i-think", 0.020, 3.50, 2, w_i_think_notes }, { "w-of-a-stone", 0.000, 8.00, 3, w_of_a_stone_notes }, diff --git a/pop/loner/vox4/.chart.json b/pop/loner/vox4/.chart.json index aff18d325..4b270658b 100644 --- a/pop/loner/vox4/.chart.json +++ b/pop/loner/vox4/.chart.json @@ -1,59 +1,59 @@ { "w-whole-line": { "leadIn": 0.51, - "beats": 58.5, + "beats": 59.79, "voiced": [ [ -0.0407, - 7.4725 + 8.7433 ], [ - 7.503, - 11.0105 + 8.7942, + 12.2915 ], [ - 11.0308, - 12.4237 + 12.322, + 13.7047 ], [ - 12.4542, - 16.3277 + 13.7352, + 17.6188 ], [ - 16.4903, - 23.0987 + 17.7815, + 24.3898 ], [ - 23.4443, - 30.3577 + 24.7355, + 31.6488 ], [ - 30.4593, - 38.1555 + 31.7505, + 39.4467 ], [ - 38.2673, - 40.3718 + 39.5585, + 41.6528 ], [ - 40.443, - 42.395 + 41.724, + 43.676 ], [ - 42.4865, - 45.445 + 43.7675, + 46.726 ], [ - 45.4755, - 47.3258 + 46.7667, + 48.617 ], [ - 47.3665, - 55.0932 + 48.6577, + 56.3843 ], [ - 55.2762, - 59.3123 + 56.5673, + 60.6035 ] ], "notes": [ @@ -73,153 +73,153 @@ }, { "beat": 4.0, - "dur": 2.0, + "dur": 2.29, "st": 3, "t": "curled", "lead": 0.0 }, { - "beat": 6.0, - "dur": 1.5, + "beat": 6.29, + "dur": 2.5, "st": 2, "t": "up", "lead": 0.0 }, { - "beat": 7.5, + "beat": 8.79, "dur": 2.5, "st": 0, "t": "in", "lead": 0.0 }, { - "beat": 10.0, + "beat": 11.29, "dur": 0.5, "st": 5, "t": "my", "lead": 0.0 }, { - "beat": 10.5, + "beat": 11.79, "dur": 2.0, "st": 2, "t": "self", "lead": 0.0 }, { - "beat": 12.5, + "beat": 13.79, "dur": 2.0, "st": -2, "t": "i", "lead": 0.0 }, { - "beat": 14.5, + "beat": 15.79, "dur": 2.0, "st": -5, "t": "think", "lead": 0.0 }, { - "beat": 16.5, + "beat": 17.79, "dur": 4.0, "st": 12, "t": "of", "lead": 0.0203 }, { - "beat": 20.5, + "beat": 21.79, "dur": 3.0, "st": 10, "t": "a", "lead": 0.0 }, { - "beat": 23.5, + "beat": 24.79, "dur": 3.0, "st": 5, "t": "stone", "lead": 0.1017 }, { - "beat": 26.5, + "beat": 27.79, "dur": 4.0, "st": 2, "t": "just", "lead": 0.0 }, { - "beat": 30.5, + "beat": 31.79, "dur": 2.0, "st": 3, "t": "wait", "lead": 0.0813 }, { - "beat": 32.5, + "beat": 33.79, "dur": 2.0, "st": 2, "t": "ing", "lead": 0.0 }, { - "beat": 34.5, + "beat": 35.79, "dur": 2.0, "st": 0, "t": "ve", "lead": 0.0 }, { - "beat": 36.5, + "beat": 37.79, "dur": 2.0, "st": -2, "t": "ry", "lead": 0.0 }, { - "beat": 38.5, + "beat": 39.79, "dur": 2.0, "st": 7, "t": "pa", "lead": 0.0 }, { - "beat": 40.5, + "beat": 41.79, "dur": 2.5, "st": 5, "t": "tient", "lead": 0.122 }, { - "beat": 43.0, + "beat": 44.29, "dur": 2.5, "st": 3, "t": "ly", "lead": 0.0 }, { - "beat": 45.5, + "beat": 46.79, "dur": 2.0, "st": 5, "t": "for", "lead": 0.0 }, { - "beat": 47.5, + "beat": 48.79, "dur": 4.0, "st": 7, "t": "time", "lead": 0.0 }, { - "beat": 51.5, + "beat": 52.79, "dur": 4.0, "st": 3, "t": "to", "lead": 0.0 }, { - "beat": 55.5, + "beat": 56.79, "dur": 3.0, "st": 3, "t": "pass", diff --git a/pop/loner/vox4/.manifest.json b/pop/loner/vox4/.manifest.json index e61a8d394..5bd660a18 100644 --- a/pop/loner/vox4/.manifest.json +++ b/pop/loner/vox4/.manifest.json @@ -124,9 +124,9 @@ 23.97 ] ], - "beats": 58.5, + "beats": 59.79, "renders": { - "lead": 29.68 + "lead": 30.315 }, "snaps": [ "curled +65ms",