非官方同人致敬作品 —— 基于 KAMITSUBAKI STUDIO「神椿市」世界观的吸血鬼幸存者 like 游戏。 灵感来自《神椿市建設中。》动画与《神椿市協奏中。》音游。与官方无任何关联。 当前版本以
js/config.js的KUP.CONFIG.VERSION为准(v0.21 起派生(合并)武器——两把武器按中等几率合成一把、释放一个武器槽;v0.20.6 起第一体 Boss=官方名「笛卡尔」、〈観測〉改名〈走査〉、攻击预警跟随 Boss;v0.20.5 起敌袭统一警报 UI+射弹 Boss〈弾片〉;v0.20.4 起升级四选一;v0.20.2 起破维魔按体型=参数原型分类;v0.20 起武器/模组/模组族三层命名;v0.19 起数据层按域拆分)· 零依赖 · 零构建 · 纯 HTML5 Canvas。
⚠️ 本作目前是 DEMO(可玩原型)阶段。 核心循环已经能玩通,但内容、数值、存档格式都仍会变(存档 schema 已多次迁移)。 ⇒ 请把它当作能跑的样品,而不是完成品:功能会增删、平衡会重调、旧存档可能失效。 已实现/待实现清单见 DESIGN.md(§0 版本史、§6.8 下一步方向)。
 
文档导航
| 我想要… | 看 |
|---|---|
| 装起来玩、看懂玩法、想改点东西 | 本文件 |
| 知道已经做了什么、接下来要做什么 | DESIGN.md |
| 查世界观设定(考据、术语、出处) | docs/lore/README.md |
零依赖、无构建。 两种方式:
# 方式 A:直接双击 index.html 即可游玩
# (WebAudio 需要一次点击激活 —— 进游戏点「开始净化」即可)
# 方式 B:本地静态服务器(推荐)
python -m http.server 8080
# 浏览器打开 http://localhost:8080- 部署到静态托管(GitHub Pages / 任意 web 服务器):把仓库根目录整个上传即可,没有构建步骤、没有环境变量、没有后端。
- 唯一要求:现代浏览器(用到 Canvas 2D、WebAudio、
localStorage、ES2018+)。 - 没有
localStorage也能玩(会退化成内存档并在界面提示)。
一局 5 分钟,局与局之间构成元进度循环。
| 时间 | 事件 |
|---|---|
| 0:00 | 横幅「『Q』発生」(关卡=番街,章节名取自动画各话副标题;治安战没有章节名,不会出现「治安戦 · 治安戦」这类重复) |
| 0:00–1:30 | 基本型/鸟型/人形杂兵混编涌来,发育、拾取「片段(フラグメント)」(经验) |
| 1:30 / 2:30 / 3:30 | 破维魔(強化型) 出现,掉落回复 ♥ |
| 4:00 | 大テセラクター(Boss)接近(陸番街提前至 3:30) |
| 5:00 | Boss 暴走(移速 ×1.8,攻击更密)—— 暴走后击破同样是普通胜利(v0.15.2 起不再区分「惨胜」) |
胜利:击破 Boss(画面显示「浄化完了」)。失败:生命归零。
破维魔按体型分成八形。体型只决定参数原型(快/慢/硬/大/转向灵),不是另一套画法—— 场上仍是同一套多边形故障体,靠颜色、边数、大小与速度区分(v0.20.1 的剪影绘制已按人类要求回退)。
| 体型 | 谁是这个体型 | 手感 |
|---|---|---|
| 球型 | 基本型、笛卡尔 | 基线,所有数值居中 |
| 鸟型 | 鸟型(新杂兵)、〈爆塵〉 | 快一点、脆一点 |
| 人形(杂兵) | 人形・杂兵(新杂兵)、〈弾片〉(治安战) | 慢一点、硬一点、更疼 |
| 鱼形 | 高速型、〈誘惑〉 | 最快、血最少、转向最灵 |
| 爬行类 | 巨躯型、〈再生〉 | 慢、硬、撞击疼 |
| 人形 | 強化型(精英)、〈緘黙〉 | 血厚、稳、压迫感强 |
| 虫型 | 〈走査〉 | 敏捷(目前只有 Boss) |
| 植物形 | 〈枯死〉 | 最慢、最大、靠散播占场 |
- 新增的鸟型与人形・杂兵只是把基本型的刷怪权重拆出来(70 : 15 : 15),总刷怪率不变,不会更难。
- Boss 是"先选体型、再单独调参":体型给手感(鱼/虫/鸟更灵、植物/爬行更重),血量与伤害按关卡顺序单独写, 不继承同体型杂兵的数值。
- 体型是设计分类,不是阵营:与魔女结盟的使魔(眷魔/ファミリア)是另一层,不会作为敌人出现。
Boss 出现时,有 35% 概率进入一处「不可解空間」——空间会把这一场 Boss 战的规则临时改写(横幅 + 顶部常驻「空间名 + 规则原文」;v0.20.5 起规则不再只靠横幅一闪而过):
| 空間 | 规则变化 |
|---|---|
| 過密空間 | 刷怪更密、敌人更脆、掉落更多 |
| 深霧空間 | 视野被浓雾吞没;拾取与经验提高 |
| 硬直空間 | 玩家移速下降;冷却缩短、伤害提高 |
| 静音空間 | 伤害提高,但浄化の歌被封印(充能条置灰) |
| 豊穣空間 | 拾取与经验大增;敌人更快 |
| 高熱空間 | 双方伤害同时提高 |
| 錯乱空間 | 每 25 秒随机改写为另一条空间 |
- 空間持续到这场 Boss 战结束(场上所有 Boss 都被击破),随后规则回归(横幅提示)。
- 治安战多体 Boss 并存时不会叠加:同一时间只允许一处空间;触发体先被击破、但另一体还在时,空间不会提前退出(规则要等整场 Boss 战结束才回退)。
- 治安战每体 Boss 出现时都会尝试掷骰;若当前已有空间(或正在延迟展开)则跳过——所以一处空间结束后,下一体 Boss 仍可能再触发。
- 効果不是只作用于新刷的怪:进入/退出时,场上活着的敌人会按比例同步速度/伤害/血量。
| 操作 | 按键 | 触屏/鼠标 |
|---|---|---|
| 移动 | WASD / 方向键 |
按住画面(魔女朝指针移动) |
| 冲刺(位移 + 0.4s 无敌帧) | Shift |
HUD 的 » 按钮 |
| 角色大招(充能满 100 + 冷却结束;每个角色不同,见 §2.3) | Space |
HUD 大招条(显示当前大招名与冷却) |
| 切换瞄准模式 | V |
HUD 瞄准按钮(◎ 自动/✛ 鼠标/➙ 移动) |
| 升级四选一 | 1 / 2 / 3 / 4 |
点卡片 |
| 重掷(3 次/局,与「排除」共用) | R |
「⟳ 重掷」按钮 |
| 排除某张卡(本局不再出现;消耗 1 次重掷,该格作废、不补新卡) | B 进排除模式后按 1/2/3/4 |
卡片右上角 ✕ |
| 暂停 / 静音 | Esc / M |
HUD 按钮 |
攻击全自动 —— 你只需要走位。武器由「歌声」具象化,拾取片段升级。
-
升级:拾取片段累积经验 → 四选一(新武器 / 武器升级 / 被动强化 / 回复 / 觉醒)。
- 四张卡走四桶保底(觉醒优先 → 武器/被动/道具各一 → 补足 → heal 兜底),位置随机;
- 血线 <45% 时道具占 2 格且优先;
- 「系谱之心」升级时最大生命 +25% 并回满;「魔女的休息」回复 40%;回复片段 ♥ 回复 30%。
-
覚醒:初期武装满级后再次选中 → 觉醒演出,武器化为乐曲名进化形态(如「私論理 -theory-」)。
-
派生(合并)卡(v0.21):手里同时有两把能配对的武器时,升级四选一里会按中等几率(约 45%)出现一张「派生」卡——不是每次都有。选中后两把武器合成一把、释放 1 个武器槽,等级取两把里较低的那把;合并武器强于其中任意一把、弱于两把叠加,而且不是两把效果的简单相加——每一把都是一件有自己机制的新武器。用掉的两把本局不会再回到卡池(有了魔法就不会再抽到私論理/食虫植物)。曲名取自 V.W.P《繁殖》里这两位角色真实存在的对唱曲:
- 魔法 = 私論理(追踪)× 食虫植物(环绕)——一片追着玩家走的小范围音符雨:冷却很长(3.4–5.4 秒),但音符密集落下、单枚很痛;因为会跟着你跑,半径比固定雨区更小(88→140),是那种轻快又噼里啪啦砸下来的曲子(花譜×理芽)
- 深淵 = 過去を喰らう(吞噬)× シリウスの心臓(光束)——加强版吞噬:范围更大的一片领域一直向内收缩,越收越紧、边缘持续掉血,收到底整片塌陷;没有光束(花譜×ヰ世界情緒)
- 本懐 = 法螺話(击退)× 台風の子(重弹)——一枚蛇行的巨弹,沿途不断甩出风压环,风道跟着弹走(理芽×春猿火)
- 古傷 = Terra(冲击环)× 白昼夢(空爆)——旧伤在四周同时裂开:数道圆心偏移的冲击环朝不同方向炸出去(春猿火×幸祜)
- 刻印 = the last bullet(穿透枪)× ヰ世界の宝石譚(宝光)——不再是一枪一角,而是给敌人刻印:被刻印者受伤 +30%,印记到期或宿主被击破时爆裂(按期间累计伤害结算)并传染给旁边的敌人(幸祜×ヰ世界情緒)
这一批先做 V.W.P 五人这 5 条做手感验证(花譜的第三武装「不可解」暂不参与);《繁殖》另外 15 首对应的是后续批次的配对。
-
武器(v0.21:26 把 / 20 种行为):武器 id=歌与武装(数据)、模组 id=行为实现、模组族=大模组,三层互不重名(如武器
note=私論理,behavior 是模组homing,属于大模组projectile)。可招募角色的专属武器需先招募才会入池(v0.11);近战挥刀「斩音太刀」以扇形角度与刀长为参数,圆形波(テラ・ドロップ等)亦可配角度变成定向扇形冲击波——两者都在js/data/weapon.js的等级表里用arc(度)/len(px)调节。弹道大模组projectile含homing(追踪)、sniper(贯通)、machinegun(弹夹 mag+换弹 reload)、shotgun(总散布角 spread)、typhoon(巨大重弹);另外devour(聚怪群伤)、chain(最近怪连锁)、summon(召唤幻影)各自成系;合奏系duet只服务派生(合并)武装。 -
「范围」对所有武器都有效(v0.13.1):角色/形态/被动「電脳領域」带来的范围加成,会成比例放大每把武器的作用尺寸——环绕音球的球体体积与环绕半径、太刀刀长、冲击环与冲击波的半径、光束长度、音符与音枪的命中半径、投掷距离与滞留区半径、空爆与地雷的作用半径。哪些参数放大、哪些刻意不变(如光束宽度、音符飞行距离)全部写在
KUP.WEAPON_MODULES[*].area里。 -
环绕音球(食虫植物,v0.15.1):判定是球体本身碰到敌人(不是「玩家到球的那条线」),球体贴着玩家转(环绕半径 Lv1 46 → Lv5 54 → 覚醒 58)。转速按「半圈律」标定:普通破维魔走过球体直径的这段时间里,武器恰好转半圈,它会在接触窗口里吃到 2–3 次命中——所以能被打死(开局 10 血、4 分钟后 23 血都测得穿)。为了不吃亏,它的球体更大(11→19…24)、单发更痛(Lv5 17→22、覚醒 20→28),实测实战输出与上一版持平。
-
音之地雷(v0.15.1):地上只画很小的一枚(显示缩放 0.32,面积约 1/10)+一圈淡虚线的触发圈;破维魔踏进触发圈(半径 = 爆炸半径 ×0.6)才起爆,爆炸按更大的击杀半径结算——起爆瞬间会推出向外扩散的圆(先到触发半径、再到击杀半径),把真实范围一次性"摊"给你看。
-
記憶の卵(v0.17:局内「現象」卡):极低概率在升级四选一里出现,和普通卡一样占一格、固定第 4 张(番街一局最多出现一次;治安战在充能耗掉后可再次抽到)。选中=用这次升级换 1 次復活:生命归零时自动回 50% 生命、释放小范围冲击波(伤害+击退,半径 240)、并获得 2.5 秒无敌帧。不产出任何局外进度(旧版图鉴/復興率 +1% 已移除);胜利结算后不能再復活。
-
角色大招(v0.14:每个角色都不同):击破充能满 100 →
Space释放 → 清零并进入冷却(各角色时长不同)。效果全部由js/data/char.js的KUP.ULTIMATES定义:角色 大招 效果 森先化歩 双极谐振 双重反相冲击环横扫全场(伤害 ×3.2 / ×2.4),冲散全部敌袭 谷置狸眼 静止帧 全场怪异冻结 3.2s(Boss 减免)+ 回血 15% + 冲散敌袭 朝主派流(春猿火) 九龍噴火 朝瞄准方向喷 160° 扇形烈焰(×4.5,最高单发伤害),小火回血 夜河世界 星海陷落 全场减速至 35% 持续 10 秒 + 留下 4 处星屑滞留区(控场型) 輪廻此処 终结弹幕 向 12 个方向同时打出贯穿光束(各 ×1.6) 天祢亜留 救済の聖歌 回复 40% 最大生命 + 3 秒无敌(支援型) 地邑阿栖 終楽章・箭雨 16 方向放射贯穿箭雨(各 ×1.3) -
会心(暴击,v0.18.3/v0.18.4):所有玩家伤害都有机会「会心」,倍率与概率按角色不同,期望增伤都被压在 1.08~1.10(谁的数值都不白给),差别在「打得勤但单发小」还是「偶尔一发爆炸」:
角色 会心率 会心倍率 期望增伤 森先化歩 12% ×1.75 +9% 谷置狸眼 18% ×1.55 +9.9% 朝主派流 8% ×2.10 +8.8% 夜河世界 15% ×1.65 +9.8% 輪廻此処 22% ×1.45 +9.9% 天祢亜留 10% ×1.80 +8% 地邑阿栖 14% ×1.60 +8.4% - 会心率不常驻 HUD:初始值写在魔女介绍里(出击界面选中角色后显示「初始会心 12% · 会心伤害 ×1.75」),局内想看完整状态请按
Esc暂停(见下)。 - 会心伤害显示为金色「会心 N」;结算屏记「✦ 次数 · 最高单发」。
- Boss 的会心倍率 ×0.85(Boss 血厚、一场打很久,避免"会心就是唯一解");会心率上限 60%、倍率上限 3.0。
- 成长卡:「鋭音」会心率 +4%/级、「重音」会心伤害 +0.20/级——两张都只加一项,期望分别约 +3%/级 与 +2.4%/级,低于标准「力量 +12%」;互相放大但同受上限约束。
- 特殊触发(v0.18.4 起暂时注释):v0.18.3 的七种按角色会心特效已整体停用,代码保留在
game.onCrit里备后续重做。
- 会心率不常驻 HUD:初始值写在魔女介绍里(出击界面选中角色后显示「初始会心 12% · 会心伤害 ×1.75」),局内想看完整状态请按
-
暂停界面(v0.18.4):
Esc暂停时显示本局当前完整状态——生命、护盾耐久/上限与当前减伤、回避率、会心率与会心伤害、等级、所持武器(含等级/覚醒)、是否持有記憶の卵。 -
瞄准规则(v0.14):投掷型(残留音块)会分别投向最近的两个敌人(每个音块各自追向自己那个目标);激光双光束分射最近的两个敌人,只有一个敌人时前后对穿;射弹类(追唱之矢/音枪)的夹角变小到约 5°,能拿到不同目标时各打一个。
-
护盾(v0.20.3:耐久与保护效率分开,耐久 > 0 就一直减伤):护盾不吸收"血量",而是按受击类型给你减伤——贴靠最高 95%、音波 85%、毒区 75%、轰炸 70%、光束 50%。
- 耐久:「防音护盾」每级 +20 耐久(20/40/60/80/100),挡下的伤害会消耗耐久;只要耐久 > 0 就一直有减伤,耐久打空才暂时失去减伤。
- 保护效率:1~4 级一律 88(贴靠 89%,相当于原来的第四级),第 5 级才升到 100(贴靠 95%)——等级先加"能扛多久",满级再加"挡得多好"。
- 恢复:脱战 3 秒后,在 1.5 秒内自动回满(期间再受伤则重新计时)。HUD 显示
盾 当前/上限 · 近身减伤 %,残盾时整行变暗。 - 防音の符:+60 耐久、并额外 +12 保护效率(封顶 100;没有被动护盾时也能单独挡)。
- 唯一规则:只要耐久 > 0,任何伤害类型都照常减伤,耐久归零才失去(v0.20.3 起删除了"挡一次后失效""被光束/轰炸打穿后失灵"两个窗口)。
| 道具 | 效果 |
|---|---|
| 防音の符 | 30 秒内 +60 耐久、+12 保护效率(不是回血;没有被动护盾时也能单独挡) |
| 無傷の符 | 15 秒内 MISS(完全回避)率 +25% |
| 治癒の符 | 立即回复 45% 最大生命 |
| 余韵の符 | 20 秒内每秒回复 4 生命 |
| 磁石の符(v0.11) | 8 秒内全场片段被吸向魔女(回复 ♥ 同样被吸引;可叠加续时) |
| 凍結の符(v0.13) | 全场怪异 2.6 秒僵直(冷冻):不动、不攻击、无接触伤害(Boss 减免 50%、精英 75%) |
| 鈍足の符(v0.13) | 全场怪异 8 秒减速至 50%(与滞留音场减速叠加,取最强) |
状态异常机制(v0.13):敌人有僵直(冷冻)与减速两种状态—— 冷冻=完全停止(含 Boss 的行动计时器一起冻结),减速=速度乘倍率(取最强来源、时间取最长)。 两个状态都会在敌人身上显示(冰晶覆盖/蓝色光环),施加入口为
game.applyFreeze/game.applySlow。
MISS 是全局机制:任何敌对伤害(近身、音波环、光束、毒区、轰炸)都会先判定回避,成功则显示
MISS且完全不掉血(上限 85%)。
片段的掉落配额与存活期(v0.18.1):击杀掉落按空间格配额——每 240px 方格最多 160 个, 同一格满了之后不再生成新片段,而是把经验合并进该格已有的片段(优先并进经验片段, 不会因为场上恰好有回复 ♥ 就吞掉经验)。片段 5 分钟内没被拾取会直接消失(不结算经验)。 全局另有 480 的兜底上限,防止长期不捡导致实体堆积。参数在
js/config.js:GEM_CELL/GEM_CELL_CAP/GEM_LIFE/MAX_GEMS。
所有敌袭都有预警期,预警期间只示警、不结算伤害:
| Boss | 攻击 | 预警 |
|---|---|---|
| 笛卡尔 | 音波环 + 召唤 | 0.5s |
| 〈緘黙〉 | 冲锋 + 沿途滞留带 | 0.45s |
| 〈誘惑〉 | 三段音波环(错开成"缝隙") | 0.42 / 0.72 / 1.02s |
| 〈枯死〉 | 毒区(周期伤害) | 0.9s |
| 〈走査〉 | 指向玩家的光束(前摇 0.6s 内只慢速微调,约 0.35 rad/s;两发间有 ≥1.0s 后摇;暴走时双光束夹角约 29°) | 0.6s |
| 〈爆塵〉 | 轰炸压在玩家附近(含预判点)+ 视野遮蔽 | 0.95–1.15s |
| 〈再生〉 | 阶段1 音波环/阶段2 轰炸 + 精英 | 0.5s / 1.05s |
| 〈弾片〉(治安战第 8 体,v0.20.5) | 射弹:5 发扇形齐射(暴走 7 发)+ 单发重弹;弹丸有飞行时间、会被楼体挡住 | 0.55s / 0.8s |
所有 Boss 攻击共用同一套「警报」UI(v0.20.5):近黑底 + 黄色斜纹 + 红色虚线硬边 + 白色「!」+ 收缩倒计时。 颜色不随 Boss 变——看到红色斜纹和「!」就是"这里会伤到你",与玩家武器的青/金柔光完全区分开。 v0.20.6:Boss 被击退时,瞄准线会跟着 Boss 走(不再钉在原来的位置);轰炸/毒区仍留在地面坐标。 预警期间只示警、不结算伤害;有未生效敌袭贴近时,HUD 显示「⚠ 危険 —— 回避せよ」并加强屏幕红晕。
一局结束即结算,达阈值解锁下一番街:
| 来源 | 復興率 |
|---|---|
| 首次通关某番街 | +12% |
| 重复通关 | +2% |
| 败北 | +1% |
解锁阈值:壱番街 8% → 弐番街 20% → 参番街 32% → 肆番街 45% → 伍番街 58% → 陸番街 70%。
每局结束都会发钱(通关或败北、治安战都发):
| 来源 | 数量 |
|---|---|
| 净化数 | 每 10 体 +4 元 |
| 通关 / 败北 | +60 / +12 元 |
| 首次通关某番街 | 额外 +40 元 |
| 番街深度 | 番街序号 ×8 元 |
- 瓦利斯的一切消费都用现金(元):局外强化、支援物品解锁。
- 市民票不再直接发放,而是由现金按小比例兑换:瓦利斯页头「兑换市民票(100 元 → 1 张)」按钮,一次换 1 张。
- 一张市民票即可招募一名魔女候補/同伴(门槛仍是「通关某番街」或「復興率达到某值」)。
节奏参考:通关一局约 120–200 元(≈ 1.5–2 张票的兑换量);瓦利斯一级强化 32–88 元,支援物品 400 元。
主菜单 →「🍜 瓦利斯(商店)」。出处:REGENERATE 官方页「弐番街 歌と中華料理の店・瓦利欺」(VALIS 六人店员)【官方】。 表记约定:日语保留官方当て字「瓦利欺」,中文写作「瓦利斯」,英文用 VALIS。
① 局外强化(小幅永久强化,共 10 项,价格随等级递增)
| 品项 | 效果/级 | 上限 |
|---|---|---|
| 中华馒头 | 最大生命 +3% | 5 |
| 糖醋里脊 | 全部伤害 +2% | 5 |
| 杏仁豆腐 | 拾取范围 +6% | 5 |
| 饺子 | 移动速度 +2% | 5 |
| 绍兴酒 | 全部冷却 −2% | 5 |
| 回转台 | 经验 +4% | 5 |
| 瓦利斯招牌 | 开局大招充能 +15% | 3 |
| 老主顾席位 | 开局等级 +1 | 3 |
| 薬膳スープ | 每秒回血 +0.5 | 3 |
| 常連の勘 | MISS(完全回避)率 +3% | 3 |
后两项(薬膳スープ/常連の勘)是 v0.9 追加的生存向强化,与局内道具叠加:局外永久小幅,局内即时/限时。
② 培养・招募(招募用 1 张市民票;支援物品用现金)
| 对象 | 分类 | 门槛 | 费用 |
|---|---|---|---|
| 天祢 亜留 | 可操作角色(魔女候補) | 通关参番街 | 1 张市民票 |
| 地邑 阿栖 | 可操作角色(魔女候補) | 復興率 55% | 1 张市民票 |
| 冰淇淋/巧克力/糖果/泡芙/炸年糕果子 | 支援物品(v0.13.3 起取代同伴层) | 无(随时可买) | 各 400 元 |
⚠️ 条件达成 ≠ 自动加入 —— 门槛满足后进入"可招募"状态,仍需1 张市民票(在页头用现金兑换)。 (支援物品没有门槛:现金够就能解锁,解锁后在出击界面选一件携带。)
薬膳スープ(每秒回血 +0.5/级)、常連の勘(MISS 率 +3%/级)—— 见 §3.3 ① 表末两行。
与局内道具叠加:局外永久小幅,局内即时/限时。
出撃前依次选择:番街 → 角色 → 皮肤 → 支援物品。选择会记入当前槽位,并作为下次「再次净化」的默认配置。
★ 角色 ≠ 声优。游戏内一律显示角色名;括号里的「声 — ○○」是声之担当(现实侧艺人),只作 CAST 标注。
| 魔女之子 | 读音 | 声 | 居住番街 | 初期武装 | 第二武装 | 特性 |
|---|---|---|---|---|---|---|
| 森先 化歩 | モリサキ カフ | 花譜 | 零番街(下町) | 私論理(私論理) | 過去を喰らう/不可解 | 攻撃 ×1.15,均衡 |
| 谷置 狸眼 | タニオキ リメ | 理芽 | 壱番街(办公区) | 食虫植物 | 法螺話 | 拾取 ×1.5、经验 ×1.25,脆皮 |
| 朝主 派流 | アサヌシ ハル | 春猿火 | 弐番街(欢乐街) | テラ | 台風の子 | HP ×1.35、范围 ×1.2,重装 |
| 夜河 世界 | ヨルカワ セカイ | ヰ世界情緒 | 参番街(农园地区) | シリウスの心臓 | ヰ世界の宝石譚 | 冷却 ×0.85 |
| 輪廻 此処 | リンネ ココ | 幸祜 | 肆番街(科学研究特区) | the last bullet | 白昼夢 | 攻撃 ×1.25,连射稍迟 |
| 角色 | 声 | 阵营/阶位 | 初期武装 | 第二武装 | 招募条件 |
|---|---|---|---|---|---|
| 天祢 亜留 | 存流 | ヰ世界救済教団 · 教徒兼魔女候補 | あおいゆめ | さよなら | 通关参番街 |
| 地邑 阿栖 | 明透 | ヰ世界救済教団 · 教徒兼魔女候補(亜留的妹分) | オレンジ | 虚言 | 復興率 55% |
阶位:魔女候補 → 魔女的资质者 → 魔女之子 → 覚醒。「魔女候補」低于魔女之子,故作为招募式追加可操作角色层。
武装解锁(v0.11):招募对应角色前,其专属武器(あおいゆめ/オレンジ)不会出现在升级卡池;招募后立即入池。魔女之子的初期武装不受此限(角色恒可选用)。
同模组、两种性格(v0.21.3):
Terra(テラ)与「湛蓝之梦」(あおいゆめ)共用同一个「圆形波」模组,但手感完全分开——Terra 重(冷却 2.7–3.4 秒、半径 150–220、单发 24–47、击退强),湛蓝之梦 轻(冷却 1.4–2.2 秒、半径 125–180、单发 15–26、命中附加减速)。武器 id 与模组 id 是两层:换手感只改等级表,不用动行为代码。
v0.13.3 起彩季 詩得先退出(数据与 JK 皮肤保留,只是暂不登场);同行支援改由支援物品承担。 每局出击可携带一件支援物品:先在瓦利斯(培养・招募页)花现金(元)解锁,再在出击界面选。
| 支援物品 | 顺序对应(暂只作记录) | 效果 | 解锁 |
|---|---|---|---|
| 冰淇淋 | 花譜 | 支援:拾取 +20%、经验 +15% | 400 元 |
| 巧克力 | 理芽 | 同上 | 400 元 |
| 糖果 | 異世界情緒 | 同上 | 400 元 |
| 泡芙 | 春猿火 | 同上 | 400 元 |
| 炸年糕果子(arare) | 幸祜 | 同上 | 400 元 |
先不做差异化:五件支援物品当前数值完全相同(顺序与五人的对应关系已写进数据表
owner字段,以后要做出区别只改各自那条perk)。
采集稿里有名有姓的形态全部做了出来(其中一批按人类要求注释保留、暂不上线):当前生效 38 条魔女形态,按系列组织(出击界面用一行「系列按钮」切换,卡片自动换行,全在同一屏内、无滚动条)。
v0.18.2 取消「通常形態」:出击时每位魔女之子直接使用自己系列的第一件形态——化歩=雏鸟/狸眼=Nightwings/派流=纏 其ノ壱 -丹頂-/世界=AnemoneⅠ/此処=type-1st Bellatrix;魔女候補(天祢亜留/地邑阿栖)统一用白。换角色即回到该角色的第一形态,之后仍可自由改选。
| 系列 | 持有人 | 条数 | 例(形态名) | 带数值的「覚醒/戦闘形態」 |
|---|---|---|---|---|
| 特殊歌唱用形態 | 化歩 | 11 | 雛鳥・星鴉・瑠璃鶲・青雀・隼・金糸雀・燕・雉・雷鳥・犀鳥・梟(雛鳥黑/青雀黑/金鸡/军鸡/扇鸠按人类要求注释保留) | 青雀 攻击 +10%/范围 +6%/生命 −5% |
| Metamorphose | 狸眼 | 7 | Nightwings・幼年期の終わり・The Cosmic Puppets・The Crack in Space・Counter-Clock World・Dr.Futurity・UBIK | 幼年期の終わり 拾取 +25%/经验 +10%/速度 +5%/生命 −8% |
| 纏 与 新衣装 | 派流 | 8 | 纏 其ノ壱 -丹頂-・其ノ弐 -浅黄-・其ノ特 -九紋龍-・其ノ参 -落葉-・其ノ肆 -昭和三色-・其ノ特 -五色-・銀兜・金兜 | 九紋龍 生命 +15%/范围 +8%/速度 −5% |
| 普遍体・変異体 | 世界 | 5 | AnemoneⅠ・NemophiraⅠ・Heliotrope・Calla lily・「parallel canvas」衣装 | Heliotrope 冷却 −10%/范围 +8%/生命 −5% |
| type- | 此処 | 4 | type-1st Bellatrix・type-real Alnair・type-2nd ζ Capricorni・type-real Betelgeuse | アルナイル 速度 +12%/攻击 +6%/冷却 +4% |
| 魔女特殊歌唱用形態 | 五人共用 | 3 | 花魁鳥・八咫烏・姬連雀(花魁鳥 Revolutions 注释保留) | 花魁鳥 范围 +15%/冷却 −8%/生命 −8%;Revolutions 范围 +18%/冷却 −10%/生命 −12%;八咫烏 攻击 +8%/范围 +10%/生命 −8%;姬連雀 速度 +12%/拾取 +20%/经验 +8%/攻击 −5% |
| 魔女候補 | 亜留/阿栖 | 2 | 黑/白 | 黑:攻击 +6%;白:拾取 +15% |
| 同伴(暂不登场) | 彩季詩得 | 2 | JK制服・夏服/冬服 | 夏服:拾取 +10%/速度 +5%;冬服:生命 +6%/冷却 −3% |
UI 取舍(人类 2026-10-17):形态一多就不能"进几次页面"或"一屏堆一堵墙"。所以出击界面只用同一屏: 皮肤一栏上方是系列按钮(默认停在该角色自己的系列,例如选化歩就是「化歩 17」),下面只画当前系列的卡片, 卡片自动换行(没有横向滚动条);另有「共用/全部」按钮(「自创」系列目前为空,故不显示),三个系列按钮都可点击并会在当前分组内高亮选中项。跨角色形态会被拒并回落到该角色的默认形态(第一形态/白)。
全尺寸自适应(v0.13.7):间距/字号/卡片宽全部用
clamp(vmin)归一化,角色卡改 auto-fit 网格 (宽屏一排多列、窄屏自动减列),长描述做行数钳制 ⇒ 1920×1080 到 800×600 都不出现滚动条。两条取舍(人类 2026-10-17):① 花魁鳥・八咫烏・姬連雀算五人共用(只列一次,五位都能穿;姬連雀=V.W.P 4th ONE-MAN LIVE「現象Ⅳ-反転運命-」的官方形态名,2026-10-21 更正); ② 仅用数字或括号区分的变体不做——燕(壊)/燕(想)/軍鶏(想)/雉(怪)/花魁鳥(戒)/八咫烏(解)/梟(巡)/AnemoneⅡ/NemophiraⅡ 等一律跳过。 数值从简(同上):只有「覚醒/戦闘形態」(上表最后一列)带数值,其余形态纯外观。
出处:形态名=官方(花譜公式 WORDS 全表/官方 VR 曲目表/官方 FINDME STORE 商品页)或非公式 wiki 整理(各项带名称出典); 服装设计(配色/部件/纹样)为本作自创。采集稿标「名称不明」的照原样保留、不替它取名。 详见
docs/lore/research/vwp_forms_and_mascots.md(§2.1 官方全表/§2.2 衣装一览/§2.5 FINDME STORE 穷举/§3.0 觉醒名印证)。
皮肤=调色板 + 轮廓配件(羽饰 plume/冠羽 crest/面纱 veil/光晕 halo/水手领 sailor/西装外套 blazer/青雀翼羽 sparrow_wing/银环 star_ring/鲤纹带 koi_sash/花冠 flower_crown/星冕 star_tiara/羽根 bird_plume/尾羽 bird_tail/SF バイザー sf_visor/鲤鳞 koi_scales/花面纱 flower_veil/星轨 star_orbit) —— 有意做成「颜色之外还有轮廓差异」。三类皮肤互不串用。
前五区按 REGENERATE 官方页定位命名;伍・陸番街官方未给定位,本作沿用 NARRATIVE 侧分区并显式标注。
| 番街 | 官方定位 | 魔女之子 | 势力 | Boss(笛卡尔=官方名;其余★本作二创) |
|---|---|---|---|---|
| 零番街 | 下町 | 森先 化歩 | 観統衿架(化歩的姐姐/養育者) | 笛卡尔 |
| 壱番街 | 办公区 | 谷置 狸眼 | 谷置家/谷置 制磁(室長) | 〈緘黙〉 |
| 弐番街 | 欢乐街 | 朝主 派流 | 台風眼 | 〈誘惑〉 |
| 参番街 | 农园区 | 夜河 世界 | ヰ世界救済教団(崇巫教团) | 〈枯死〉 |
| 肆番街 | 科学研究特区 | 輪廻 此処 | 復興課 | 〈走査〉 |
| 伍番街 | ※官方网页未给(沿用 NARRATIVE 侧=工业/工场地区,旧・眼裏町) | — | — | 〈爆塵〉 |
| 陸番街 | ※官方网页未给(沿用 NARRATIVE 侧=立入禁止区画) | — | — | 〈再生〉 |
⚠️ 伍・陸番街的定位不是本作自创:它们来自 NARRATIVE(TRPG)的 CITYGUIDE,出处记在代码的AREAS[].src与注释里(界面上不显示)。Boss 名中只有零番街「笛卡尔」是官方 REGENERATE 敌人名,其余 7 体称号才是本作二创(见 DESIGN.md §6.4)。 ★ 英文界面沿用官方英文:前五区=**Area 0〜Area 4**+Downtown/Office District/Entertainment District/Agricultural Area/Science Research Zone(官方 VIRTUAL REALITY EN 页);中文界面与官方中文一致,区名保留「○番街」不译。
- 每区独立波次表、章节演出事件与地图主题: 壱「悪意」增援潮/弐「欲望」増殖/参「ファミリア」巨躯群/肆「現象」高速群/伍「ブラックアウト」视野遮蔽/陸「再生」终盘。
- 地图主题:温室田垄/烟囱/锈迹骨架/残骸等。
- 建筑实体(v0.11):楼体按道路网格布局(每格至多一栋、格间必有 ≥80px 通路),
是角色与敌人不可通过的实体——走位要贴墙绕行,敌人也会被楼体挡住;
弹幕不受影响(歌=魔法,掠过楼顶);Boss 碾压建筑。
?solid=0可关闭对比。 - 敌人会绕楼(v0.13.1):敌人不再傻撞墙——被楼体挡住时把「朝你」的方向投影到可走路径上
沿墙绕行,朝向再以角速度上限转向(
js/data/enemy.js的敌人表turn,度/秒:巨躯型转得慢、 高速型转得快),所以绕弯是弧线;躲在楼后不再能无限放风筝。手感参数在js/config.js的C.NAV。 - Boss 血量随番街递增(2000 → 3600);陸番街 Boss 3:30 提前出现。
番街选择里的第 8 张卡(∞ 治安战,恒可出击、不占復興率解锁链)。
「最佳成绩」只显示治安战(v0.15.2):主菜单的成绩行只保留治安战的最高记录;番街(主线)的战绩不再单独记录/显示——主线的进度看「復興率」与各番街的通关次数就够。
| 规则 | 说明 |
|---|---|
| 无尽 | 波次每 30 秒推进(横幅提示),刷怪率与怪种逐波升级;每 45 秒一体精英;Boss 首次 4 分钟出现,之后每 2 分钟一体(7 体轮换,第 n 体血量 ×(1+n×0.35)) |
| 多体 Boss 并存 | 前一体还没打完又到点,就同时存在多体——各自独立行动、各自暴走;屏幕上方每个 Boss 一行血条依次排列(暴走的那条变橙色),击破其中一体只少一行、不会影响其余(旧版:只显示最新一体,且击破任一体血条整块消失) |
| 没有败北 | HP 归零只表示「战斗结束」——界面不写失败,也不写「信号消失」 |
| 击破 Boss ≠ 结束 | 击破 Boss 会清场并继续下一轮(不是通关) |
| 成绩独立 | 点数 = 净化数×10 + 存活秒数×2 + 波次×100,记入治安战最高记录(主菜单唯一显示的成绩、结算屏单独展示);不发復興率;記憶の卵改为局内現象卡——充能耗掉后可再次抽到,因此一场可復活多次(概率依旧极低) |
| 收入 | 现金照常按净化数结算(市民票由现金兑换) |
相关按钮/文案:结算标题「战斗结束。」、按钮「再战一场 ▶」、HUD 常驻
WAVE N。
主菜单「中文 / EN / 日本語」按钮即时切换(或 ?lang=zh|en|ja),覆盖全部界面文本与数据表文本。缺词自动回退中文;字体栈按语言自动切换。
不译项:角色名与其读音、声之担当名、武器代表曲名、SingSong(); 母题。
主菜单「💾 存档 / 观测记录」→ 多槽位管理。
- 槽位:新建 / 改名 / 复制 / 删除(二次确认,始终保留至少一个)/ 选用切换。
- 导入导出:导出为一段 base64 文本(同时尝试写入剪贴板);导入一律作为新槽位加入,绝不覆盖现有档。
- 安全设计:写入是两阶段提交(先写
.tmp回读校验,再提交并回读),配额爆/隐私模式不会破坏盘上旧值;解析失败的档会被隔离(kup.corrupt.*)而不是静默清零。 - 不静默失败:
localStorage不可用时退化为内存档并提示「本次进度仅在内存中」;写入失败会在存档界面显示原因。 - 多标签页:另一标签页写入时自动重载并提示,避免互相覆盖。
- 旧档升级:
kup_meta/kup_best/kup_vol/kup_lang启动时一次性升级进 s1 槽与全局设置。
技术细节(键结构、schema、幂等结算)见 DESIGN.md §6.0 的「存档层」与「结算幂等」两行。
index.html?t=235&lv=12&god=1&char=kaf&skip=1&xp=10&mv=1&hurt=0.5&pick=heart&gem=heal&lang=ja&area=area5&seed=777
| 参数 | 作用 |
|---|---|
?t= ?lv= |
起始时间(秒)/初始等级 |
?god=1 |
无敌 |
?char= |
直接选角色:魔女之子 kaf/rim/harusaruhi/isekaijoucho/koko;招募角色 aru/asu(未招募时仅提示) |
?skip=1 |
跳过菜单直接开局 |
?xp= ?mv=1 ?hurt=0.5 |
立即获得经验(触发升级)/自动向上行走/初始损失 50% HP |
?dmg=3 |
玩家伤害倍率(默认 1,仅调试用) |
?pick=heart,heal,ward |
强制指定升级四选一(被动/武器/道具/派生武器 id 或 heal) |
?egg=1 |
v0.17:下一次升级必出「記憶の卵」現象卡(验证抽卡/復活;仍受"番街一局一次"限制) |
?derived=1 |
v0.21:必出派生卡(验证合并手感;仍需手里同时有两把能配对的武器,可配 ?w=note,orbit) |
?revive=1 |
v0.17:开局带 1 次卵復活充能(验证復活手感:回血/小 AOE/无敌帧) |
?auto=first|last |
自动采升级卡(总选第 1/第 4 张;验证被动叠层、护盾 HUD、大招充能等需要频繁升级的效果) |
?reroll=N |
本局重掷/排除次数(默认 3,两者共用;0 验证耗尽置灰) |
?solid=0 |
关闭建筑实体(楼体退回纯装饰,用于对比/回退;默认开启) |
?gem=heal |
周期生成回复/经验片段 |
?ult=1 |
开局即充满大招(v0.14 起大招按角色不同,见 §2.3;HUD 大招条会显示当前角色的名字) |
?w=toss,bomb,mine,slash |
追加初始武器(最多带 5 把;slash=近战挥刀) |
?recruit=1 ?tickets=300 |
临时解锁全部招募/临时发放市民票(仅内存,不落盘)· ?cash=1200 临时发放现金 |
?form= |
皮肤(特殊歌唱用形態):按系列组织(当前生效 40 条=38 条魔女形态+黑/白;其余注释保留,v0.18.2 起没有「通常形態」)(?form=fukurou 枭、?form=ubik、?form=matoi_goshiki、?form=betelgeuse…)。跨角色形态会被拒并回落通常形態;kuro/shiro(魔女候補) |
?companion=ciel ?cform= |
同伴/同伴皮肤(jk_summer/jk_winter;同伴层 v0.13.3 起暂不登场) |
?support=icecream |
支援物品(icecream/chocolate/candy/puff/arare;需先在瓦利斯解锁,否则不带) |
?lang= ?aim=auto|mouse|move |
界面语言/瞄准模式 |
?seed= ?area= ?mod= |
随机种子(同 seed + 同区 = 同一局,可复现)/番街 area0〜area6/规则修正(当前仅 none) |
?space=off / ?space=1 / ?space=<id> |
v0.18:Boss 战「不可解空間」——off 关闭、1 必进但随机、<id> 指定(dense/fog/stiff/mute/bloom/heat/chaos) |
?boss=<id> |
v0.20.5:强制本局 Boss(如 ?boss=boss7 直接看射弹 Boss〈弾片〉;缺省按番街表) |
?slot=s2 |
切到指定槽位后再执行其余调试 |
?reset=1 ?wipe=1 |
重置当前槽进度/删除全部槽位(危险) |
一局(run)由
{ char, area, mod, seed, companion, form, support }七个字段完整描述 —— 凑齐即可复现任意一局。
零构建意味着改完刷新即可生效(浏览器缓存顽固时用 Ctrl+F5)。
数据层(v0.19 起):
js/data/一个玩法概念一个文件——char(角色/会心/大招)·weapon(模组+武器)·passive·item·enemy(含 7 体 Boss)·skin(形態)·support(支援物品/同伴)·shop。加载顺序的唯一真值是js/data/manifest.js:加数据域=建域文件+在 manifest 加一条+在index.html补一行<script>(node tools/check-html.js会核对三者是否一致)。 跨域引用(角色↔武器↔形态↔支援↔Boss↔商店)由KUP.DATA.audit()在启动时统一校验;node tools/inventory.js会打印模块清单与 audit 结果。域文件之间不要互相引用。
| 我想改… | 动这个文件 | 说明 |
|---|---|---|
| 数值平衡(角色/武器/被动/敌人/Boss 血量) | js/data/*.js(按域) |
纯数据表,全部三语 {zh,en,ja}。改完跑 node tools/inventory.js 看计数与 audit |
| 破维魔的体型/新增杂兵 | js/data/enemy.js(shape)+ js/config.js(波次权重) |
八形=参数原型(KUP.ENEMY_SHAPES,三语名+参数方向,见 DESIGN §4.1)。加杂兵=数据加一条并写 shape(必须命中八形之一);观感只靠 hp/speed/dmg/r/sides/color/turn 这些参数,不要另写绘制分支(v0.20.1 的剪影方案已回退)。新杂兵要接入波次:把对应基本型的权重拆出去(当前的拆法是 70 : 15 : 15),rate 不要提高 |
| 难度曲线、波次表、番街配置、规则修正 | js/config.js |
KUP.CONFIG / KUP.AREAS(七区的定位·势力·Boss·waves·events·theme)/ KUP.MODIFIERS |
| 加角色 / 加武器 / 加被动 | js/data/char.js / weapon.js / passive.js → js/entities.js → js/game.js |
数据表加条目,实体加行为,主循环加接线。加武器要向 game.js 的武器分派注册;新域还要登记 manifest.js |
| 武器形状参数(扇形角度 / 刀长 / 圆形波角度) | js/data/weapon.js |
等级表里 arc=扇形角度(度)、len=刀长(px)——见武器 slash(近战挥刀,模组 cleave)与 bass(圆形波,模组 shock,arc<360 即定向扇形冲击波) |
| 武器模组(行为)与「范围」生效面 | js/data/weapon.js → KUP.WEAPON_MODULES / KUP.WEAPON_FAMILIES |
三层命名:武器 id=歌(数据)、模组 id=行为、模组族=大模组(projectile 含 homing/sniper/machinegun/shotgun)。一个模组可被多把武器共用(shock=テラ・ドロップ+法螺話+あおいゆめ、sniper=the last bullet)。模组里写清 family、base(模组级基准值)、params(等级表可用参数键,写错键名会被回归测试当场拦下)、area(哪些参数随「范围」放大)。加武器=数据表加一条并指向模组;验证:KUP.MODULE_OF('bass') / KUP.WEAPONS_OF('shock') / KUP.FAMILY_OF('note') |
| 模组族/模组/武器三层的总览 | node tools/inventory.js(打印整棵树)+ DESIGN.md §6.16 |
族→模组→武器的唯一真值是 WEAPONS[*].behavior 与 WEAPON_MODULES[*].family;KUP.FAMILY_TREE() 把两者拼成树,文档/盘点/audit 都从它取 |
| 界面文案(三语) | js/i18n.js |
必须三语齐全,缺词静默回落中文 |
| 皮肤(特殊歌唱用形態) | js/data/skin.js → KUP.FORM_SERIES + KUP.FORMS + js/entities.js Player._accent |
系列承载共同字段(三语说明/配色/轮廓配件/出处),每条形态只写一行差异({ id, series, name, note?, mods? }),载入后自动补齐;加形态=加一行。kinds 决定谁能用、char 决定专属某位魔女之子(无 char=共用)、accent 决定轮廓配件、mods 决定数值(政策:只有覚醒/戦闘形態带数值)。UI 分组用 KUP.formGroups(kind, charId)。不要改已有 id(已写入存档 run.form) |
| 支援物品(一局带一件) | js/data/support.js → KUP.SUPPORTS |
五件支援物(冰淇淋/巧克力/糖果/泡芙/炸年糕果子)顺序对应五位魔女之子(owner 字段),但先不做差异化(各自 perk 数值相同)。改效果=改那条 perk;改价钱=改 unlock.cost;解锁状态存在存档 supports/support 字段(js/meta.js) |
| 界面结构 / 新增屏幕 | index.html + js/ui.js |
静态文本用 data-i18n 标注,不要内联硬编码中文 |
| 视觉(配色 / 霓虹 / 字体栈) | css/style.css |
只改样式别动结构 |
| 画法 / 背景 / 特效 | js/render.js |
|
| 卡顿 / 掉帧 | 先读 DESIGN.md §6.0 的「性能」一条 |
三个已知大坑:① 菜单/选择屏上的全屏 backdrop-filter: blur()(v0.13.6 已删,别再给 .screen 加)② 全屏 mix-blend-mode 层(已去)③ 每个弹体各自设 ctx.shadowBlur(已按密度自适应,阈值 140)。两条常备纪律:弹幕碰撞走 game.enemyIndex()(别写回 O(弹体×敌人) 双循环);非游玩状态不要每帧 game.render()(主循环已限 ~20fps) |
| 敌人 AI / 敌袭模式 | js/director.js |
按 pattern 分派;生成逻辑须走同一随机流 |
| 敌人绕楼寻路 / 楼体碰撞与空间索引 | js/game.js + js/config.js |
steerCity(局部避障转向)+ cityIndex/_near(分桶查询);可调参数在 C.NAV。node tools/path-cmp.cjs 对比绕楼质量 |
| 手感(移动 / 冲刺 / 碰撞 / 大招) | js/entities.js + js/game.js |
改完务必实机验证 |
| 存档结构 | js/store.js + js/meta.js |
node tests/save.test.cjs,并考虑 schema 迁移 |
| 加 URL 调试参数 | js/main.js |
记得同步更新本文件第八节 |
三条不能碰的(会破坏可复现性或协作约定):
- 不要在渲染/UI 路径里用随机数 —— 一律走模拟路径的随机流(
KUP.U.rng),否则同seed复现不出来。 - 不要把官方素材(图片/音频)放进仓库 —— 官方 GUIDELINES 禁止直接使用官方素材;本项目的程序化绘制/合成是刻意为之(见 docs/lore/worldview.md §13)。
- 不要引入 npm / 打包器 / 框架 —— 零依赖是项目核心约束。新增运行时依赖属于破坏性设计决定,必须先确认。
改完提交前跑一遍:
node tests/save.test.cjs(存档)+node tools/verify-run.js(玩法)+node tools/check-html.js(HTML 结构)+node tools/inventory.js(数据计数)。
游戏里用到的官方设定、术语统一表、以及「哪些是官方 / 哪些是本作自创」,全部整理在 docs/lore/:
- docs/lore/README.md —— 一页总览:三条铁律、世界观骨架 10 条、用了/没用什么、查询速查表
- docs/lore/worldview.md —— 主世界观详录(术语统一表、世界线总图、13 话副标题表、REGENERATE CAST、交叉核对 42 行、玩法映射、二创合规)
- docs/lore/related-settings.md —— 周边考据(官方年表、角色读音全表、术语词典、官方小说章目)
- docs/lore/legacy-research-2025.md ——
⚠️ 2025 年早期调研,多处结论已被推翻,勿当依据
- 源代码:MIT —— 可自由使用、修改、再发布,保留版权与许可声明即可。
- 同人内容(角色名、世界观引用、曲名等):不属于本许可范围,权利归原权利方;本项目按官方二次創作ガイドライン以非商业同人方式发布。
- 不含官方素材:所有图像与音效均为程序化生成(Canvas 绘制 + WebAudio 合成),仓库内没有任何官方图片/音频。
一句话:代码随便用,神椿的 IP 请按官方规矩用。
本作品为非商业、非官方同人作品,仅供学习交流。原始作品《神椿市建設中。》《神椿市協奏中。》及「KAMITSUBAKI STUDIO」「V.W.P」等名称、角色、世界观的权利归 KAMITSUBAKI STUDIO/THINKR Inc./orange inc./SINKA ANIMATION PROJECT 等原权利方所有。请支持官方作品。