基于 MajdataView / MajdataEdit 4.4.0 修改与扩展。 感谢原作者 bbben(GitHub:LingFeng-bbben)及原项目所有贡献者。
MajdataViewAlpha 是面向 maimai / 舞萌谱面制作、预览与视频导出的工具,在原版 4.4.0 基础上增加了 Alpha 扩展语法、编辑辅助、动态显示、画面特效、媒体时间线、录制导出和桌宠启动器。
项目地址:https://github.com/Jian04/MajdataViewAlpha
- 编辑器设置新增编辑区字号与播放器字体,可分别调整谱面文本和 View 判定信息;播放器仍保留原版字体选项,新增编辑器字体大小可调整。
- 修复编辑器宽度变化时波形图视野不同步、光标落在下一时间格以及暂停后媒体丢失等问题。
- 完善双视频轨、双音频轨媒体时间线:点击仅选中片段,拖动时才应用拍线吸附;支持切割、删除、撤销、续编和与主波形同步预览。
- 媒体导出支持手动选择分辨率、帧率与码率,也可使用智能策略优先保持 30 FPS,并逐步调整分辨率和码率至 20 MB 以内;音频可选是否转换为 44100 Hz。
- 新增可重叠音符流
@{分拍}...,用于在不推进主谱时间的情况下叠加另一条音符序列。
- 新增
BOUNCE:让 Tap、Star、Each 与 Hold 从判定线运动到指定出生半径后回落;支持秒数、拍长、按音符类型设置和NULL恢复。 SV、HS、SPAWN、SIZE等命令支持按音符类型单独设置;全局SIZE不再缩放 Slide 轨迹,需使用slide=显式调整,SV可以控制Slide移动的速度。- 新增 Touch Slide,支持普通键与 A/B/C/D/E Touch 区互连、连续路径、无头以及 Break 头 / Break 轨迹,例如
1d-E5[8:1]、A1<A3<A5[8:1]、A1b-A2b[8:1],目前只支持圆弧和直线星星。 - 完善 D 区 Tap、Hold 与 Slide。D 区
s/z保留原版中段判定路线,只重新连接 D 区头尾;D 区端点同时接入 Touch Slide 的绘制和传感器判定。 - 修正 D 区直线、圆弧、
p/q、pp/qq等路径的间距、切线衔接、星星方向和终点判定特效位置。 PVOVERLAY支持图片或视频替换当前 PV,并可在连续覆盖之间进行渐变。
- 修复中途播放、暂停续播、时间轴拖动后播放、PV 恢复、All Perfect 语音和录制结束等流程中的状态同步问题。
- PV / BGA 新增保持宽高比的缩放方式,录制可独立选择常用分辨率、帧率、码率和智能压制策略。
- 完善 Launcher、桌宠状态和发布目录;Unity Windows 构建完成后会自动组装 View、Edit、Launcher、皮肤、主题及配套工具。
- 加强无效谱面和异常音符的容错,避免单条解析错误直接卡死 View 或 Edit。
- 新增「自动踩音」,支持填写 BPM、First、难度和阈值预设。
- 新增音符密度图和全谱 16 分整理。
- 新增 Alpha 命令补全、参数提示和分类语法帮助。
- 新增基础语法错误标记和「导出无特效谱面」。
- 新增 4/4、3/4 小节模板,以及选中配置直接检索谱面库。
- 新增可视化音符插入,可在 View 中点击或拖动生成 Tap、Touch 与 Slide。
- 新增统一的录制设置窗口,可选择 60 / 120 FPS、输出分辨率、歌曲信息卡片、开头背景和 All Perfect。
- 新增双视频轨、双音频轨媒体时间线,支持拖放、吸附、切割、复制、删除、撤销、混合导出及与主波形同步预览。
- 媒体时间线采用临时工程事务:退出再进入保留撤销记录,保存谱面时提交,选择不保存时丢弃修改。
- 视频时间线导出自动采用最高素材分辨率并按 20MB 内目标压制;音频导出固定为 44100Hz。
- 新增简体中文、英语和日语界面。
- 新增浅色、CiRCLE 和 CiRCLE PLUS 编辑器主题。
- 新增「星星速度」设置,仅调整 Slide 路径的提前显现时间;
0对应 4.4.0 默认效果,不改变 Slide 移动、判定或 DJAuto 逻辑。 - 优化 D 区 Slide 与 Touch Slide 的等距路径绘制、星星朝向和终点判定特效位置。
COLOR染色统一采用保留原素材明暗、纹理、高光与暗边的色相替换方式,覆盖 Tap、Each、Break、Hold、Star 与 Slide。- 修复媒体时间线中途播放、暂停续播、视频轨层级和同轨重叠片段恢复,并补充保持宽高比的 PV / BGA 缩放模式。
- 新增
JLINE判定线颜色和ShowJudgeArea判定区显示控制。 - 新增按音符类型分别设置的 SV / HS,以及环形音符视觉出生半径
SPAWN。 - 新增 Hue、Tint、Move、Rotate、Shake 画面特效。
- 新增
AUDIO,可在谱面中播放 OGG、WAV 或 MP3。 - 新增
PVOVERLAY,可用 PNG、JPG 或 MP4 替换当前 PV,并支持可选的交叉渐变时间。 - 新增 Touch Slide:
E1-E4[8:1]为直线,E1<E6[8:1]/E1>E7[8:1]为定向弧线,E1^E3[8:1]为短弧;起点和终点支持 A/B/C/D/E 区且必须填写时长。 - Touch Slide 支持连段与绝赞:
A1<A3<A5[8:1]、A1b-A2b[8:1];b位于起点后表示绝赞 Touch 头,位于路径终点后表示绝赞 Slide 路径。A1!-A2[8:1]/A1?-A2[8:1]为无头写法。 - 新增
@3/4、@4/4波形拍号和@RRGGBB编辑区分段背景。 - 新增 D 区音符和 Break Touch / TouchHold 专用显示。
- 新增可选方向的
Shake,可直接填写角度控制震动方向。 - 新增 Default、CiRCLE、CiRCLE PLUS 三种开头背景。
- 新增桌宠启动器,负责依次启动 View 和 Edit,并显示运行状态。
- 发布包改为 Launcher 位于根目录,View 与 Edit 分别放在
App/MajdataView和App/MajdataEdit。 - Unity 构建结束后自动发布 Edit、Launcher,并复制皮肤、主题、工具与配置库。
- 发布根目录统一只保留一份
README.md。
以下为 MajdataViewAlpha 在 MajdataView / MajdataEdit 4.4.0 基础上增加的主要功能。
- 支持深色、浅色、CiRCLE、CiRCLE PLUS 主题和自定义编辑器字体。
- 支持
dx、sd及自定义皮肤目录。 - 新增 Master / Re:Master 歌曲信息卡片、独立缓存、DX 满分和等级显示。
- 新增配置库 / 节奏型检索,可查找相似配置片段。
- 新增 8 / 12 / 16 / 24 / 32 / 最高分拍格式刷和全谱整理。
- 新增选区镜像、右键小节模板、语法错误标记和 Alpha 命令补全。
- 新增配置即时预览和星星形状预览。
- 新增可视化音符插入。
- 新增音符密度图。
- 新增自动踩音。
- 新增音频转 44100 Hz 和音频 / 视频区段剪辑。
- 新增媒体时间线编辑器,可组合两条视频轨和两条音频轨,并与谱面保存状态统一管理。
- 集成 MaiMuriDX 无理配置检查。
- 波形图可显示音符、BPM、Clock Count、拍号、歌曲信息卡片、All Perfect 和录制区段。
- 新增独立录制参数窗口。
- 支持简体中文、英语和日语。
- 支持谱面内动态修改音符 SV、HS、视觉出生半径、颜色、尺寸和透明度。
- 支持按 Tap、Each、Hold、Slide、Star、Break、Touch、TouchHold 分别设置音符属性。
- 支持动态控制判定线、判定区、判定文字、左右信息栏、中央数据显示和背景亮度。
- 支持 Gaussian、Neon、Trail、Fade、Flash、Brightness、Saturation、Contrast、Rainbow、Vignette、Zoom、Glitch、TVNoise、Hue、Tint、Move、Rotate、Shake 等画面特效。
- 支持谱面内附加音频和图片 / 视频 PV 覆盖。
- 支持非 C 区 TouchHold、Break Touch / TouchHold、Mine、D 区和
rp/rqSlide。 - 支持新版歌曲信息卡片、开头背景、All Perfect 结尾和生成标识。
- 支持从 View 向 Edit 发送可视化音符编辑操作。
- 支持固定帧视频录制和自定义输出分辨率。
Alpha 命令写在谱面时间线中:
<命令*参数>
<命令*(参数,时间)>
命令分为四类:
- 音符:
SV、HS、SPAWN、BOUNCE、COLOR、SIZE、ALPHA - 显示:
JLINE、TEXT、显示开关、ComboDisplay、内外圈亮度 - 滤镜:Gaussian、Neon、Trail、Fade、Flash、Brightness、Saturation、Contrast、Rainbow、Vignette、Zoom、Glitch、TVNoise、Hue、Tint、Move、Rotate、Shake
- 媒体:
AUDIO、PVOVERLAY
示例:
<SV*tap=1.5,slide=0.8>
<SPAWN*tap=-4.8,hold=0>
<BOUNCE*tap=8:1,hold=4:1>
<COLOR*star=FF66CC,break=FF4500>
<ShowJudgeLine*(False,8:1)>
<Tint*(True,000000,0.6,8:1)>
<Shake*(True,0.5,12,30,0.2)>
<AUDIO*(True,media/voice.ogg)>
<PVOVERLAY*(True,media/cutin.mp4,8:1)>
<PVOVERLAY*(False,8:1)>
完整签名和示例请在 Edit 中打开:
工具 → Alpha 语法帮助
||:单行注释。|* … *|:块注释。@分子/分母:编辑器波形拍号。@RRGGBB/@NULL:编辑区分段背景色。m:Mine。d:D 区。- Touch Slide:普通键与 A/B/C/D/E Touch 区之间的直线或圆弧 Slide,必须填写时长。
rp/rq:反向圆弧 Slide。
- 自动查找并依次启动 View 与 Edit。
- 显示启动、播放、制谱、录制和错误状态。
- 支持透明桌宠动画和状态气泡。
- 支持跟随 Edit 窗口或固定在桌面位置。
从 Releases 下载完整 Windows 发布包,解压后运行:
MajdataLauncher.exe
发布目录:
MajdataViewAlpha/
MajdataLauncher.exe
README.md
Pets/
App/
MajdataView/
MajdataEdit/
请保持目录结构完整。也可以直接运行 App/MajdataEdit/MajdataEdit.exe。
Linux 包从本仓库 Releases 下载 MajdataViewAlpha-Linux-*.tar.gz,解压后运行:
./bin/setup-python-env
./bin/majdata doctor
./bin/majdata-edit详见 README-LINUX.md。
Linux 上提供 Avalonia 轻量编辑器、majdata CLI、Maicaiyin 自动踩音、simai_parser 及 Unity Standalone Linux64 播放器构建。完整 WPF 编辑器与桌宠启动器仍为 Windows 专用。详见 README-LINUX.md。
./scripts/linux-install.sh
./scripts/smoke-linux.sh
./scripts/linux-release.sh # 输出 dist/linux/MajdataViewAlpha-Linux-*.tar.gz- Windows 10 / 11 x64
- Unity 6000.4.2f1
- Unity Windows Build Support(x86_64)
- .NET SDK 6.0 或更新版本
- 用 Unity 打开仓库根目录。
- 选择 Windows x86_64。
- 使用 Build,不要使用 Build And Run。
- 输出到例如:
%USERPROFILE%\Desktop\MajdataViewAlpha\MajdataView.exe
Unity 构建完成后会自动组装完整发布包。
dotnet build .\MajdataEdit\MajdataEdit.csproj -c Release
dotnet build .\MajdataLauncher\MajdataLauncher.csproj -c Release这两个命令只检查 Edit 和 Launcher,不会重新构建 Unity View。
- Alpha Edit 与 Alpha View 需要配套使用。
- 自动踩音使用发布包内的专用运行环境,请保持
tools/Maicaiyin完整。 - 自定义录制分辨率的宽和高必须为偶数。
- 高分辨率、高帧率和多滤镜录制会增加设备负担,程序会提示但不会强制阻止。
- 分层导出当前关闭。
- D 区 Tap 使用星星或与星星 Slide 组合时,可能出现未知的显示或判定表现。
- 部分 View 背景样式下,D 区音符可能不显示。
- 原项目及原作者:MajdataView / MajdataEdit,bbben(LingFeng-bbben)
- 自动踩音:Maicaiyin
- 配置库 / 节奏型检索:MaiChartAssistant
- 配置库谱面来源:Maichart-Converts
- Simai:Celeca
- Hanabi 特效:青山散人
- 仿官谱歌曲封面制作:筱崎文音
本项目遵循 GPL-3.0,与原版保持一致。谱面、音乐、图片、视频及其他素材版权归各自权利人所有。