<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>游戏 on 鲍洪江的博客</title><link>http://baohongjiang.com/categories/%E6%B8%B8%E6%88%8F/</link><description>Recent content in 游戏 on 鲍洪江的博客</description><generator>Hugo -- gohugo.io</generator><language>zh-cn</language><lastBuildDate>Fri, 07 Aug 2026 00:00:00 +0000</lastBuildDate><atom:link href="http://baohongjiang.com/categories/%E6%B8%B8%E6%88%8F/index.xml" rel="self" type="application/rss+xml"/><item><title>我做的游戏 · 在线 Demo 合集</title><link>http://baohongjiang.com/p/%E6%88%91%E5%81%9A%E7%9A%84%E6%B8%B8%E6%88%8F-%E5%9C%A8%E7%BA%BF-demo-%E5%90%88%E9%9B%86/</link><pubDate>Fri, 07 Aug 2026 00:00:00 +0000</pubDate><guid>http://baohongjiang.com/p/%E6%88%91%E5%81%9A%E7%9A%84%E6%B8%B8%E6%88%8F-%E5%9C%A8%E7%BA%BF-demo-%E5%90%88%E9%9B%86/</guid><description>&lt;img src="http://baohongjiang.com/p/%E6%88%91%E5%81%9A%E7%9A%84%E6%B8%B8%E6%88%8F-%E5%9C%A8%E7%BA%BF-demo-%E5%90%88%E9%9B%86/void-protocol.jpg" alt="Featured image of post 我做的游戏 · 在线 Demo 合集" /&gt;&lt;p&gt;这篇是&lt;strong&gt;总目录&lt;/strong&gt;，我做的所有能在浏览器里直接玩的 Demo 都会往这儿加，所以我把它置顶了。&lt;/p&gt;
&lt;p&gt;不用下载、不用装插件、不用注册账号——点开链接就是游戏本身。建议用&lt;strong&gt;电脑 + Chrome / Edge&lt;/strong&gt;，两个 Demo 都是键鼠操作，手机上玩不了。&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="1--void-protocol--第一人称波次射击"&gt;1 · VOID PROTOCOL — 第一人称波次射击
&lt;/h2&gt;&lt;p&gt;&lt;a class="link" href="http://baohongjiang.com/games/void-protocol/" &gt;&lt;img src="http://baohongjiang.com/p/%E6%88%91%E5%81%9A%E7%9A%84%E6%B8%B8%E6%88%8F-%E5%9C%A8%E7%BA%BF-demo-%E5%90%88%E9%9B%86/void-protocol.jpg"
width="1280"
height="720"
srcset="http://baohongjiang.com/p/%E6%88%91%E5%81%9A%E7%9A%84%E6%B8%B8%E6%88%8F-%E5%9C%A8%E7%BA%BF-demo-%E5%90%88%E9%9B%86/void-protocol_hu_cf9c7633bb7ae891.jpg 480w, http://baohongjiang.com/p/%E6%88%91%E5%81%9A%E7%9A%84%E6%B8%B8%E6%88%8F-%E5%9C%A8%E7%BA%BF-demo-%E5%90%88%E9%9B%86/void-protocol_hu_b6f32f6d59bb2f27.jpg 1024w"
loading="lazy"
alt="VOID PROTOCOL"
class="gallery-image"
data-flex-grow="177"
data-flex-basis="426px"
&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p style="text-align:center;margin:1.4em 0"&gt;
&lt;a href="http://baohongjiang.com/games/void-protocol/" target="_blank" rel="noopener"
style="display:inline-block;padding:.85em 2.4em;border-radius:8px;
background:#05070c;color:#5fe6ff;border:1px solid #5fe6ff;
font-weight:700;letter-spacing:.12em;text-decoration:none"&gt;
▶ 开始游戏
&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;开阔竞技场，四级台地地形，六把枪，怪一波比一波多。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;它的特别之处在于：整个游戏没有一个外部素材文件。&lt;/strong&gt; 贴图、音效、几何体、动画，全部是运行时用代码生成的——没有美术资源、没有音频文件、没有模型文件。整个游戏就是一个 HTML 文件加一份 three.js。&lt;/p&gt;
&lt;p&gt;&lt;img src="http://baohongjiang.com/p/%E6%88%91%E5%81%9A%E7%9A%84%E6%B8%B8%E6%88%8F-%E5%9C%A8%E7%BA%BF-demo-%E5%90%88%E9%9B%86/void-protocol-arena.jpg"
width="1280"
height="720"
srcset="http://baohongjiang.com/p/%E6%88%91%E5%81%9A%E7%9A%84%E6%B8%B8%E6%88%8F-%E5%9C%A8%E7%BA%BF-demo-%E5%90%88%E9%9B%86/void-protocol-arena_hu_a79485089817e048.jpg 480w, http://baohongjiang.com/p/%E6%88%91%E5%81%9A%E7%9A%84%E6%B8%B8%E6%88%8F-%E5%9C%A8%E7%BA%BF-demo-%E5%90%88%E9%9B%86/void-protocol-arena_hu_e3f5f75de8dccc5d.jpg 1024w"
loading="lazy"
alt="竞技场"
class="gallery-image"
data-flex-grow="177"
data-flex-basis="426px"
&gt;&lt;/p&gt;
&lt;h3 id="操作"&gt;操作
&lt;/h3&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;键位&lt;/th&gt;
&lt;th&gt;作用&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;WASD&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;移动&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;空格&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;跳跃（能跨越一级台地）&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;鼠标&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;视角 / 左键射击&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;Shift&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;冲刺&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;R&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;换弹&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;1-6&lt;/code&gt; / 滚轮&lt;/td&gt;
&lt;td&gt;切换武器&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;`&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;调参面板（光照、手感、视野的实时滑块，还有作弊开关）&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="几个可能有用的提示"&gt;几个可能有用的提示
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;手枪弹药无限，另外五把要在&lt;strong&gt;波次之间的军械库&lt;/strong&gt;里买，每把还能升三级；&lt;/li&gt;
&lt;li&gt;弹药靠打怪掉落，走过去会自动吸附；&lt;/li&gt;
&lt;li&gt;地面怪必须绕斜坡走，飞行怪无视高度差——&lt;strong&gt;站上高台能拖住前者，拖不住后者&lt;/strong&gt;；&lt;/li&gt;
&lt;li&gt;右下角小地图的&lt;strong&gt;亮度就是高度&lt;/strong&gt;。&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="现在做到哪了"&gt;现在做到哪了
&lt;/h3&gt;&lt;p&gt;四个阶段的计划，P1（模块化 + 高度场地形 + 跳跃）和 P2（武器 + 弹药 + 经济 + 商店）已经完成，你现在玩到的就是这个版本。&lt;/p&gt;
&lt;p&gt;P3 在做怪物铺量——从现在的 4 种铺到 14 种，包括自爆怪、盾卫、突刺者、分裂体，以及两个 BOSS。P4 是关卡与音画的打磨。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;下周一会上一版新的&lt;/strong&gt;，到时候直接覆盖这个链接，地址不变。&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="2--战线-frontline--25d-即时战略"&gt;2 · 战线 FRONTLINE — 2.5D 即时战略
&lt;/h2&gt;&lt;p&gt;&lt;a class="link" href="http://baohongjiang.com/games/frontline/" &gt;&lt;img src="http://baohongjiang.com/p/%E6%88%91%E5%81%9A%E7%9A%84%E6%B8%B8%E6%88%8F-%E5%9C%A8%E7%BA%BF-demo-%E5%90%88%E9%9B%86/frontline.jpg"
width="1280"
height="720"
srcset="http://baohongjiang.com/p/%E6%88%91%E5%81%9A%E7%9A%84%E6%B8%B8%E6%88%8F-%E5%9C%A8%E7%BA%BF-demo-%E5%90%88%E9%9B%86/frontline_hu_680a2c8814a63380.jpg 480w, http://baohongjiang.com/p/%E6%88%91%E5%81%9A%E7%9A%84%E6%B8%B8%E6%88%8F-%E5%9C%A8%E7%BA%BF-demo-%E5%90%88%E9%9B%86/frontline_hu_81f16d0e78f922d1.jpg 1024w"
loading="lazy"
alt="战线 FRONTLINE"
class="gallery-image"
data-flex-grow="177"
data-flex-basis="426px"
&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p style="text-align:center;margin:1.4em 0"&gt;
&lt;a href="http://baohongjiang.com/games/frontline/" target="_blank" rel="noopener"
style="display:inline-block;padding:.85em 2.4em;border-radius:8px;
background:#14100a;color:#e0a54a;border:1px solid #e0a54a;
font-weight:700;letter-spacing:.12em;text-decoration:none"&gt;
▶ 开始游戏
&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;一个 RTS 的垂直切片。&lt;strong&gt;没有农民，没有采矿&lt;/strong&gt;——资源直接来自你占领的据点，所以整局游戏你只需要关心一件事：战线往哪推。&lt;/p&gt;
&lt;p&gt;三条机制撑起全部战术：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;掩体决定伤害&lt;/strong&gt; — 沙袋和矮墙有朝向，正面减伤 34%~54%，被绕到侧后完全无效。部队抵达目的地会自动逐兵就近进驻掩体，不是整队一个判定；&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;压制决定推进&lt;/strong&gt; — 被密集火力覆盖会进入压制/钉扎状态，移速和精度暴跌。机枪班是压制之王；&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;侧翼决定胜负&lt;/strong&gt; — 前面两条加起来的结论。正面顶不动的阵地，绕后就能崩。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;步兵可以进驻建筑，机枪和迫击炮需要停下架设、架好之后有射界限制，坦克和反坦克组之间是明确的克制链。&lt;/p&gt;
&lt;h3 id="操作-1"&gt;操作
&lt;/h3&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;键位&lt;/th&gt;
&lt;th&gt;作用&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;左键拖拽&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;框选部队&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;右键&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;移动 / 攻击&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;A + 左键&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;攻击移动&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;右键点建筑&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;步兵进驻&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;T&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;撤退回基地（会补员）&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;Q W E R F G&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;生产单位&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;1-4&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;编队（&lt;code&gt;Ctrl&lt;/code&gt; + 数字设定）&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;方向键&lt;/code&gt; / 屏幕边缘&lt;/td&gt;
&lt;td&gt;移动视角&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;H&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;帮助&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;三个难度：巡逻队（资源 ×0.8）、正规军（对等）、精锐师（资源 ×1.3）。&lt;/p&gt;
&lt;h3 id="现在做到哪了-1"&gt;现在做到哪了
&lt;/h3&gt;&lt;p&gt;核心循环是完整的，一局大概 10 分钟左右能分出胜负。开发过程中我写了一个无头测试台，跑同代码对打来验证地图和数值的对称性——它抓出过四个肉眼绝对看不出来的 bug，比如开火遍历顺序固定导致数组靠前的一方总是先造成伤害，比如建筑入口写死南侧导致地图上半区的一方永远要绕路。最近一次 20 场对称回归是 10:10。&lt;/p&gt;
&lt;p&gt;已知还没做的：AI 不会用专精兵种（它把迫击炮和机枪当步枪使），机枪班和装甲车的价值还没调出来，移动端完全没适配。&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="后续"&gt;后续
&lt;/h2&gt;&lt;p&gt;还有几个 Demo 在排队，做完一个往这儿挂一个。这篇文章会一直置顶，收藏这一篇就够了。&lt;/p&gt;
&lt;p&gt;有 bug、有建议，或者单纯想骂两句手感，都欢迎在下面评论区留言。&lt;/p&gt;</description></item></channel></rss>