请制作一个以**自然选择、显隐性遗传和等位基因频率变化**为核心的**2.5D双岛生态观察台**。用户在相同的群体起点上，为两座兔群小岛分别设置地表、捕食压力和突变概率，再逐代观察组成与趋势，随时调整条件或查看实际历史。

借鉴《Plague Inc.》的环境策略地图和《SimEarth》的生态沙盘，把双岛做成固定轻俯视、有岸壁厚度、地形高差、兔子体积与接触阴影的微缩生态景观。两岛同时可见，图表正视可读，操作不依赖旋转镜头或三维深度定位；2.5D不限定真实3D引擎。让环境操纵和代际变化本身具有吸引力，不设置演化目标、解锁、种群经营、实验题单或提交判定。

## 1. 科学模型与参数

采用单座位、二倍体、常染色体、完全显性的模型。B为棕毛显性等位基因，b为白毛隐性等位基因；BB、Bb均为棕毛，bb为白毛。显性只描述表型表达，不代表更有利或频率更高。

计算理想大种群的确定性频率期望，不做有限个体抽样，不模拟数量增长、灭绝或遗传漂变。兔子是组成示意，不是逐只生死的个体清单，界面清楚说明这一点。只研究毛色，不增加耳长、牙齿、多基因、迁入迁出或定向投放变异。

每代出生状态为x=f(BB)、y=f(Bb)、z=f(bb)，x+y+z=1；b频率q=z+y/2，B频率p=1−q。白毛比例为z、棕毛比例为x+y，不能把q当成白毛比例。频率、概率、选择强度与代数均无量纲。

| 参数或控制 | 合法范围与精度 | 默认值及作用范围 |
| --- | --- | --- |
| 地表 | 草地、雪地 | 两岛均草地，各岛独立 |
| 捕食选择强度s | 0–0.80，步长0.05，滑块及精确输入 | 两岛均0，各岛独立 |
| 双向突变概率μ | 0–0.010，步长0.001，滑块及精确输入 | 两岛均0，各岛独立 |
| 初始组成(BB,Bb,bb) | 混合(0.25,0.50,0.25)、全杂合棕毛(0,1,0)、仅BB(1,0,0) | 混合，两岛共享 |
| 自动运行节奏 | 每秒1、2或4代 | 每秒1代，两岛共享 |

s=0时没有毛色选择，草雪地不自行改变基因频率。雪地的BB/Bb/bb存活权重为(1−s,1−s,1)，草地为(1,1,1−s)。这些是伪装差异的模型参数，不是野外实测存活率。

每次推进依次完成以下计算，再显示新出生的一代：亲代选择时W=x·wBB+y·wBb+z·wbb，选择后b频率qₛ=(y·wBb/2+z·wbb)/W；配子形成时，每个等位基因以相同概率μ在B/b间双向转换，q′=(1−μ)qₛ+μ(1−qₛ)；随机配子结合得到x′=(1−q′)²、y′=2q′(1−q′)、z′=q′²。选择后的亲代组成不必满足随机结合比例，与下一代出生状态分开。突变概率不由环境需要决定，其上限是便于观察的放大值，不是真实兔类突变率。

## 2. 核心交互与状态反馈

首次打开为默认混合组成的第0代、暂停状态，两岛环境均为默认值。提供下一代、自动运行/暂停、共享初始组成和重新开始，不增加独立的双岛时钟。每次整代计算结束后才递增代数和历史点，单步与自动运行共用更新语义，重复点击不并发推进。

两岛固定标为A/B，地表、s和μ在各自岛边独立控制，悬停、键盘焦点或选中时突出对应岛、条件标签与图线，另一岛不受编辑影响。地表支持明确的点选入口，也可通过环境牌拖放；若采用拖放，候选岛只显示预览，合法落下才改变条件，Esc或无效落点取消。代际推进、运行/暂停、初始组成与重新开始是共享控制，位置和标签应让作用范围一眼可辨。

运行或暂停时都能改变环境。有效编辑后即刻预览新地表和压力，s/μ控件跟随新值，但标为“下一代生效”；当前出生群体、频率和已发生曲线保持不变。下次完整更新使用各岛当时最新设置，两岛一起推进，出生组成、基因型条、q、白毛比例与曲线同步更新，并在实际生效代留下条件标记。两次更新间多次编辑以最后值为准，不改写历史。

点选BB/Bb/bb图例或对应组成表示，联动强调其代表兔、表型、频率条与定量值；BB和Bb都保持棕毛，通过标签或纹理区分携带关系，不将Bb画成白兔。再次操作可退出强调，图例选择不改变组成。地表预览不能给当前成年兔染色，环境牌不是改造兔子的升级道具。

暂停立即停止新代计算，继续从最新完整一代推进，不补算暂停期间经过的墙钟时间。播放节奏只改变展示频率，不改变每代模型或插入额外选择。过渡动画不重复计算，也不让一岛先跳到下一代而另一岛长期停留在旧代。

趋势图悬停只显示指定代两岛的数值和当时条件，主场景不改变。点击或触屏点按历史代则暂停自动运行，进入醒目标为“历史·第g代”的只读观察，主场景、组成条与详情共同显示该代的组成及记录条件；最新状态和待生效设置保留，不被倒退或覆盖。图上同时标明最新代位置，提供“回到当前”，返回后保持暂停。历史观察中编辑环境、推进或启动运行，先返回最新状态，再执行操作；不能从历史悄悄分叉。历史记录的条件与最新待生效设置分别标识，不把新条件投射到旧代。

重新开始或切换初始组成时，保留两岛各自当前选择的环境设置，从共享组成重建第0代，清空此前曲线、变化标记和历史选择，回到暂停；图上可显示新第0代点，当前环境从第一次推进起参与计算。重新开始不把用户的环境选择偷偷改回默认。s/μ输入为空、非数或越界时保留最近合法设置，附近说明范围；未确认无效输入不改变当前出生状态或下一代有效设置。

## 3. 视觉设计与游戏风格

**游戏风格：参考《Plague Inc.》的环境操纵、地图状态与趋势反馈，结合《SimEarth》的生态沙盘，形成2.5D双岛观察站。** 采用固定轻俯视的微缩岛屿，不继承传染、征服、积分或灾难经营；角色与素材自行创作。

- **场景与材质**：两岛处于同一海面，岸壁侧面、抬高地表、海岸浅水与接触阴影形成真实可辨的2.5D层次；草地和雪地有不同表面纹理，岩石、观察站标牌与海水在轮廓和反光上可区分。棕白兔有耳、身躯和落地阴影，体积方向一致，不是无特征色点。白兔在雪地仍有轮廓和局部阴影，棕兔在草地仍可定位；地形不遮挡群体、岛标签或编辑入口。
- **科学操作的游戏化呈现**：地表选择像更换岛上的环境覆盖层，压力控件与突变控件分别清楚标明作用；候选岛、当前编辑与待生效条件有贴近对象的标记。选择基因型时，岛上对应代表兔与频率条共同突出，BB/Bb通过角标或纹理区分，保持相同棕毛表型。控件、环境牌、图例与观察站标牌使用协调的字体和材质语言。
- **观察层次与交互重点**：1440×900下，双岛主场景合计视图区宽至少占视口60%、高至少占55%，不计外围海面装饰和文字面板；两岛、各自条件、共享推进和核心趋势在首屏可辨和可操作。双岛是第一层，当前组成和q/白毛比例是第二层，趋势比较及按需详情服务同一状态。详细公式默认收起，标题不独占首屏；调参、代际推进和历史查看不重排两岛位置或改变岛身份。
- **颜色与信息层级**：岛A/B使用稳定标识，基因型与毛色兼用文字、图形和纹理，q与白毛比例分列且线型不同；不能把白兔标记直接当作q图例。代数、运行/暂停、下一代生效与历史只读有清楚的文字和状态标记。曲线、坐标、百分比和微小频率在默认缩放下可读，当前条件与记录条件不混淆，浮层不盖住目标岛或共享控制。
- **反馈动效**：地表材质可平滑过渡，但切换时当前兔群组成不变；一代完成后代表群体重排、组成条和曲线一起更新。局部狼影或权重变化只表达相对选择，不演出真实死亡统计或强制染色；不以连续爆炸、闪红或震屏制造进化感。静止画面也能判断条件、组成和历史状态，减弱装饰动效后仍保留必要的代际反馈。

整体应像一座有吸引力的微缩生态观察站：海岸、植被、雪面、兔子、标牌与操纵台在光色、形体和细节上统一，两岛差异明确又属于同一世界。默认、待生效、代际更新和历史查看均保持清楚构图，不用通用卡片包一张海岛背景替代完整场景。具体字体、岛形、角色造型、布局和绘图技术自行设计。

桌面无横向滚动；窄屏可上下排列两岛并纵向滚动，不套用桌面场景占比，趋势仍可比较。环境有点选入口，s/μ有数值替代，历史可触屏点选，主要控件有可见键盘焦点；解释可收起，状态不只靠颜色。装饰动效可减弱，音效可选且可静音。

## 4. 科学表示与结果解释

两岛场景、出生时基因型条、毛色比例、q和曲线来自对应同一代。两岛频率图共用代数轴和0–1纵轴，q与白毛比例采用不同线型和文字图例，岛身份保持稳定；不能通过独立缩放放大或掩盖差异。基因型条长度对应真实频率，代表兔图标可近似表达比例，但不以图标数量决定科学值。微小非零频率保留足够小数或科学记数，不因图标取整宣称等位基因消失。

每次完整更新只增加一个真实历史点，记录出生组成和生成该代所用的条件；不预绘未来演化冒充实际运行。第0代标为初始组成，未经历亲代选择，不能称其为某种环境已经筛选后的结果。悬停、只读历史和当前状态采用不同标记，曲线数据及条件标记不随后来调参变化。

2.5D地形高度、装饰兔的轻微活动和捕食示意均不参与计算。捕食压力通过相对存活权重或明确示意表现，不显示未计算的兔子死亡人数、种群总数或个体家谱。代际重排表示新一代的组成，不让同一只成年兔在地表切换后变毛色；当前出生群体和待生效地表预览可以同时辨认。

反馈对应当前所看岛屿和代数，展示出生时组成、q、白毛比例及相对前一代的变化；第0代不伪造上一代。可展开关系解释亲代选择、配子突变和后代组成，所代入数值与当前或选中历史记录一致。两岛比较指出实际不同条件，同时改变多个因素时保留标记，不强行归因于单一因素。

解释显性与适应性的区别、杂合子携带隐性等位基因，以及环境通过存活差异影响后代而不直接改变成年毛色。μ=0且某等位基因已缺失时，换地表不能凭空恢复它；双向突变提供变异来源，不是环境要求产生有利突变。对保持不变、缓慢变化或方向改变，依据实际组成、选择与突变解释。明确这是频率期望，不推断有限真实种群每代必然单调变化，也不据此判断数量或灭绝。

## 5. 运行与交付

交付完整可运行的纯前端网页，以`index.html`为入口，通过本地HTTP服务即可打开。源码、依赖和资源随项目提供，核心操作不依赖后端或外部网络。

界面中文，频率、概率、选择强度、代数和示意模型含义明确。附运行说明与实际完成的自检说明，未完成或未验证部分如实记录。框架、内部命名、计算实现、绘图方式和代码组织自行选择。
