Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

烬芯回廊 · EMBERCORE

网页版 2D 像素 Roguelike | 元素共鸣 · 芯核替换 · 三重回廊

Play License Deps Assets

A top-down 2D pixel roguelike that runs entirely in the browser. Three biomes, three multi-phase bosses, 16 hot-swappable skill cores and 42 relics — built around an elemental-reaction combat system. Every sprite, tile, icon and sound is generated procedurally in code: no external assets, no dependencies, no build step required. Just open index.html.

标题界面

目录


玩什么

你是灰烬行者,携带一枚仍在燃烧的芯核潜入回廊深处。每一局都会重新生成关卡布局、敌人配置与掉落, 穿过三片截然不同的生态、击溃三位守关者,就能抵达回廊尽头 —— 然后进入更凶险的轮回

一局大约 20–35 分钟。死亡即结束,从头再来。

核心机制

⬢ 元素反应

伤害不只是数字。五种元素会在同一个敌人身上叠加,触发连锁爆发

组合 反应 效果
炽焰 + 霜寒 蒸爆 中范围爆炸
炽焰 + 雷弧 过载 最高单体爆发伤害
雷弧 + 腐蚀 剧毒扩散 大范围传染腐蚀
霜寒 + 腐蚀 凝滞 长时间定身
霜寒 + 雷弧 导电冰 感电扩散
虚蚀 + 任意 湮焰 / 虚霜 / 溃能 / 侵蚀 高倍率范围爆发

共 10 种反应。遗物「元素反应堆」能让反应伤害与范围 +80%,把配装彻底变成一套连锁引擎。

⬢ 可替换芯核

技能不是固定的。你有 2 个芯核插槽(史诗遗物「第三插槽」可扩到 3 个), 路上捡到的任何芯核都能随时换上;捡到重复的芯核则升级(最高 Lv3,威力提升、冷却缩短)。

共鸣会根据你的搭配自动生效:

  • 同元素共鸣 → 该元素伤害 +25%
  • 异元共鸣 → 全伤害 +8%,技能冷却 -10%

传奇遗物「织界之匙」让两种共鸣同时生效,并让所有芯核等级 +1。

⬢ 三层推进

每一关是一张随机房间图:战斗房、精英房、商栈、宝藏、芯核祭坛,最深处是守关者。 战斗房会在首波打掉一半时刷出增援波,避免一波流的平淡节奏。


截图

苔垣地宫
苔垣地宫 — 孢沼、藤射手、发光孢子
熔渣工房
熔渣工房 — 岩浆池、锻炉傀儡、飞锤浮械
霜海圣所
霜海圣所 — 裂冰渊、霜镜刺客、回响体
奖励选择
遗骸宝匣 — 三选一的构筑决策
石髓
石髓 · 苔巨像
铁颚
铁颚 · 熔炉守卫
永眠
永眠 · 霜海织者 — 第三阶段「时之停滞」:全场弹幕定格,随后一齐收束

操作

键位 动作
W A S D 移动
鼠标 瞄准
左键 攻击(近战有连段,第三段伤害更高)
空格 闪避冲刺(带无敌帧,可被遗物提升次数)
E / 右键 释放芯核 1
Q 释放芯核 2
R 释放芯核 3(需要「第三插槽」)
F 交互(开箱 / 购买 / 传送)
ESC 暂停(查看完整构筑)
M 静音

提示:闪避的无敌帧是应对 Boss 弹幕的核心手段。Boss 的红圈预警落地前躲开即可完全免伤。


内容清单

3 张地图 苔垣地宫 / 熔渣工房 / 霜海圣所 —— 各自独立的配色、瓦片纹理、环境光、危险地形与音阶
3 个关底 Boss 每个 3 阶段、5–6 套招式:拳砸冲击波、地刺、滚碾、旋转激光、熔岩通道、火雨、螺旋弹幕、镜像分身、收缩冰环、时之停滞
12 种敌人 冲锋、自爆、远程、持盾、钻地、环绕、瞬闪、多重弹幕、分裂等 10 类 AI,外加精英变种
16 枚芯核 烈焰喷涌、陨火天罚、霜爆新星、冰晶壁垒、链式雷弧、雷矛突袭、腐蚀孢云、蚀骨飞刃、回旋钢刃、震地裂波、幻影突刺、守护壁垒、血契献祭、余烬仆从、时滞领域、裂魂射线
42 件遗物 常见 / 稀有 / 史诗 / 传奇四档,含「不死鸟余烬」「奇点残核」「织界之匙」「深渊吞噬者」等改变构筑走向的传奇
6 种武器 断刃(连段)、重锤(冲击波+眩晕)、双匕(极速高暴)、长枪(贯穿突刺)、烬火弩(远程)、长镰(横扫吸血)
8 种状态 灼烧、霜缓、感电、腐蚀、虚蚀、流血、冻结、眩晕

运行与构建

直接玩

下载 index.html 双击打开即可。单文件、离线可用、无需服务器

二次开发

源码按职责拆成 9 个模块,改完用 build.js 拼回单文件:

git clone https://github.com/LvienOeria/embercore.git
cd embercore

# 修改 src/ 下的模块,然后重新打包
node build.js              # 输出 dist/index.html
node build.js index.html   # 直接覆盖根目录的可玩文件

build.js 只做一件事:按文件名排序拼接 src/*.js,注入 src/index.tpl.html 的占位符。 没有 npm 依赖、没有打包器、没有转译。

常见改动入口

想改什么 去哪
数值平衡、新武器 / 芯核 / 遗物 / 敌人 src/30_data.js(全部是声明式数据表)
像素美术、调色板、图标形状 src/10_art.js
地形瓦片、生态配色与环境光 src/20_tiles.js
关卡与房间生成 src/40_world.js
战斗、AI、技能实现 src/50_entity.js
Boss 招式与阶段 src/60_boss.js
界面 src/70_ui.js + src/index.tpl.html(CSS)
主循环、渲染、光照与辉光 src/80_game.js

新增一件遗物只要往 RELICS 数组里加一行,属性会自动进入 Player.recalc() 的聚合流程。


项目结构

embercore/
├── index.html              # 打包好的可玩单文件(GitHub Pages 也部署这个)
├── build.js                # 拼接构建脚本(零依赖)
├── src/
│   ├── 00_core.js          # 数学、随机、输入、程序化音频合成
│   ├── 10_art.js           # 像素精灵生成、自动描边/边缘光/AO、图标栅格化
│   ├── 20_tiles.js         # 三生态瓦片图集与房间烘焙
│   ├── 30_data.js          # 元素 / 状态 / 反应 / 武器 / 芯核 / 遗物 / 敌人 数据表
│   ├── 40_world.js         # 楼层房间图、房间地形、连通性修复
│   ├── 50_entity.js        # 玩家、敌人 AI、弹丸、区域、粒子、技能实现
│   ├── 60_boss.js          # 三个 Boss 的阶段与招式状态机
│   ├── 70_ui.js            # DOM 界面层(HUD / 弹窗 / 小地图)
│   ├── 80_game.js          # 主循环、渲染管线、流程控制
│   └── index.tpl.html      # HTML 外壳与全部 CSS
└── screenshots/

技术说明

没有一张外部素材。 所有像素图形都在运行时由代码生成:

  • 精灵以字符串像素图定义,再经过自动描边 → 顶部边缘光 → 底部环境遮蔽三道后处理, 用很少的手绘数据换到统一且干净的像素质感(src/10_art.js
  • 地形瓦片按生态用种子噪声程序化生成(8 种地面变体、4 种墙面、4 帧危险地形动画)
  • 42 个遗物图标由 18 种矢量形状原语 + 每件道具的配色栅格化而成
  • 音效与 BGM 全部是 WebAudio 实时合成:噪声带通做打击感,方波/锯齿做元素技能, 每个生态用不同调式(小调五声 / 弗里几亚 / 多利亚)生成随战斗强度变化的程序化配乐

渲染管线:480×270 内部分辨率 → 整数倍放大(image-rendering: pixelated), 外加一层全分辨率画布专门画浮动文字(伤害数字、反应名),保证中文与数字锐利。 光照使用离屏画布累加径向光源后 multiply 合成,辉光走半分辨率 lighter 叠加。

性能:无头 Chromium 实测 24 敌人同屏稳定 58–60 FPS。

为什么不是「小骨杀手」:小骨是横版平台 + 换头换招式;本作是俯视角 + 元素反应 + 芯核共鸣, 构筑深度来自元素组合与共鸣搭配,而非替换角色形态。


授权

MIT — 代码与全部程序化生成的美术、音频均可自由使用、修改、商用。

Claude 与 LvienOeria 共同完成。

About

网页版 2D 像素 Roguelike:元素共鸣 · 芯核替换 · 三重回廊。全部美术与音效程序化生成,零依赖。

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages