Bad Apple!!
masayoshi minoshima feat. nomico

Created by: Emik
Submitted: about 2 months ago
Last updated: about 2 months ago
Source: Lovelight
Tags:
electronic, touhou 4, 東方幻想郷 ~ Lotus Land Story, happy birthday spartan
BPM: 138
Length: 3:36
Passes/Fails: 0 / 7
Description

birthday gift for Spartan! very playable! (use no-fail)

Source Code

Video to image sequence

yt-dlp -f 140 https://www.youtube.com/watch?v=FtutLA63Cp8
yt-dlp -f 251 https://www.youtube.com/watch?v=FtutLA63Cp8
ffmpeg -i badapple.mp4 -s 7x48 -sws_flags neighbor small.webm
mkdir images
ffmpeg -r 1 -i small.webm -r 1 "images/$filename%03d.png"

Requires Emik.Morsels.

Imports

#r "nuget: SixLabors.ImageSharp.Drawing"
using SixLabors.ImageSharp;
using SixLabors.ImageSharp.Drawing.Processing;
using SixLabors.ImageSharp.Processing;

Notes

Directory
    .EnumerateFiles("/home/emik/Documents/bad_apple_chart/images")
    .Select(File.ReadAllBytes)
    .Select(x => SixLabors.ImageSharp.Image.Load<SixLabors.ImageSharp.PixelFormats.Rgba32>(x))
    .Index()
    .Where(x => x.Index % 5 is 0)
    .Select(x => x.Item)
    .Select((x, k) => x.Height.For().Where(x => x % 4 is 0).Select(i => x.Width.For(j => x[j, i].R + x[j, i].G + x[j, i].B > 128 * 3 ? $@"- StartTime: {(int)(((x.Height + 7.548) * k + (x.Height - i - 4)) * 3)}
  Lane: {j + 1}
  KeySounds: []{(i is 0 ? "\n  EditorLayer: 2" : i == x.Height - 4 ? "\n  EditorLayer: 1" : "")}
" : "")))
    .Flatten3()
    .Concat()
    .Peek(x => SetText(x));

SVs

StringBuilder sb = new();

for (var d = 0; ; d++)
{
    var mapped = (int)((48 + 7.548) * d * 3);

    if (mapped >= 216970)
        break;

    sb.Append(@$"- StartTime: {mapped - 1}
  Multiplier: 100000    
");

    for (var i = 0; i < 48; i += 4)
    {
        sb.Append(@$"- StartTime: {mapped + i * 3 - 1 / 64.0}
  Multiplier: {(i + 12) * 340}        
- StartTime: {mapped + i * 3}        
  Multiplier: {(i + 12) * -340}        
- StartTime: {mapped + i * 3 + 1 / 64.0}        
  Multiplier: 0        
");
    }
}

SetText(sb.ToString());
Leaderboard Unranked
# Grade Player Perf. Rating Accuracy Max Combo Marvelous Perfect Great Good Okay Miss Mods Date