# 我的世界(仿) **Repository Path**: wzh656/Minecraft ## Basic Information - **Project Name**: 我的世界(仿) - **Description**: 一个独具创新与真实特色的我的世界风格仿制版游戏 - **Primary Language**: JavaScript - **License**: Not specified - **Default Branch**: master - **Homepage**: https://wzh656.github.io/MinecraftWeb/ - **GVP Project**: No ## Statistics - **Stars**: 21 - **Forks**: 2 - **Created**: 2020-05-06 - **Last Updated**: 2025-04-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: 我的世界, 创新 ## README # 我的世界(仿) [![Join the chat at https://gitter.im/wzh656/Minecraft](https://badges.gitter.im/wzh656/Minecraft.svg)](https://gitter.im/wzh656/Minecraft?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [![repo-size](https://img.shields.io/github/repo-size/wzh656/MinecraftWeb?style=plastic&labelColor=aaa&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAABzklEQVRYR+2V3VHDMBCEkwqgA9wBoQJCBUAH7gA6wFQAVICpAKgAUwGkAkwFQAfsx9x5NCKxZXhwHnQzOzr97e2dZHk+m9jmE8efZQG5ArkCW12BQm/EsbAQ8Gl3g3ejMZ/2VXgWPse+K+sqUIrkzALGfATBCOjBXBjtvXBj80laQgEQ3EaB39WvhYdEUiq1tMjsGayICyBrgrt9yamE66Q01i9CTDu0HwEsfIsWrixrskEE2Yw1kroSuDcIOTX/SW1XeRzIuWxulJ3j8PIxD9lgOQMO9r8IR0JjMRBSCb8EQLwTbL60hT7EJkjOAxH4iFoKXEhEngiF0NpG+v4F7dkYCf9ZAAEBxASGlOOhz53BKqExUNUD24PgfYGKDB4BGbCRylA2CAlIMATge7aMFRac1gUQkCOgvRMuzHcBcPyYX0LKGB4Dl/DD5iFhHjQCohgD+KAWIHUB+KX1qRRvA32EU4HONn2GZA8ZG93og1RDGDy9Fj9EtVZzVm6tHMYaga+Dfp8VmjwUuBPsGSXAiUs5fmniYJBiHIeTc9PJlvZRqBKEdrx9f0Oy8csGOX3/nMgQERiiQCgqFr6xv9W/4+Qs/rMwVyBXIFdg8gp8A56Ga19/qteQAAAAAElFTkSuQmCC)](https://github.com/wzh656/MinecraftWeb) [![code-size](https://img.shields.io/github/languages/code-size/wzh656/MinecraftWeb?style=plastic&color=Green&labelColor=aaa&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAACD0lEQVRYR81Xi1XDMAykEwATUCYAJqBMAExAmQCYgDABMAFlAmACygTABu0EwARw12cZW1HsfNq8+j03iWxJJ1k5pYON//Eb3PdxO6CTxY8bM1x3+vAMH3PMoQYwheCwJwBv8DNaOwB3QHTRUwbu4edSZ6CA4LonADfwQ39REVoAjrCHtdFl8KxflQETgLXxFIrPXbxD9wTzSdnwgYWvYRJpBxDJzDYFQGNNCYuBcYbjAA8fugb4rI0/QjYONKm01yEbouoDDzNgAfCE4TSnuC6DrCoBfMPBZhDhKgD8wP5WKRUVEc4g3+2YctoIe0wUlD4CK8V6T1M8uq6SACawfqY8LBtAVNjaeAHnmo7ZI1gbdQcdMO0c+5jvStGzIOV1ANR1LPtC+h5BWEnDFoAxhA/K4xWeF6ThIrrNIGLRSgYsABG96wxkEcN4jglDmwX26yONGtzaASBBfKWKBmvMEie7nNDyJ+7ZNaduignrI2cbi76orVcs+d4qcMJoVW8JAWnqjnx2BZCpx0VGGgOwlBgh5UwzmUyqXAMYOoc8Hh6T53y3UfeWEg9wnwVAOyIAAcQ1cUgAqVELAKM8zuW25fqLA+vVrRoosLqqr+OIhonCAjCGXLNhy4BLaueQTEJpVadj8Yzc5Pm2/c84h67wg/l1XbfVsrik0HL1wXOWAp3lUlcXgLYjYHjlSEaZAvEHm2N2IdqI2XYAAAAASUVORK5CYII=)](https://github.com/wzh656/MinecraftWeb) [![language](https://img.shields.io/github/languages/top/wzh656/MinecraftWeb?style=plastic&labelColor=aaa&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAABhElEQVRYR+2WgU3EMAxFexMAE9ANDiZATABMwDEBMAFlAtiAYwIY4TYANigbwATw38k+WVEOtaoCQoolK6mT2N8/TtJZ0zRf0j+TWQVQGagMVAYqA5WB/8zAu8D39oy2aveTJ/VN389m21V7mpnTTHkNb+WwswC0N9b/VHslXWbeeGzn0V4CQASW+8+AlRMfKAFgT84/LMC92iPpo5Q+zMAUW7KWEgDw6RL/tl5lPEgpKQEgZeAytw8lGbhICrDVd5cWX0kA7P+xFMqjAIQ62BRgqRrwoATjRHhBun0Z2ShRA+mWExAgfRigv764fgMAcWDhMIBYqc/xHAWALDjHO5YJ+4wjxGnlFoR6LhvGfC5zcvMHAeBO5x6HNs4xAchoYS3OKbi5lCy9+JgL4NbAdAY2zh8EAIc43iYEerFB5pJpWnhxLcAf3DC0BlZacJZxTHZP0njDAeLask5Bw8hdNA4F4GvYW6eY4GSzTXoNoLDB3Q/IzRswloEf4kwbGsvAtGiZ1d/rcXUBbOcYgQAAAABJRU5ErkJggg==)](https://github.com/wzh656/MinecraftWeb) [![latest-release](https://img.shields.io/github/v/release/wzh656/MinecraftWeb?include_prereleases&labelColor=aaa&style=plastic&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAACdUlEQVRYR9VWgTFDQRCNClCBqAAVkApQgagAFYgKUIGoABWIClCBqAAV8N6fe5n9m73LzZcZ42Z27udu9927t3t3Wen9cVv54/V7JQJrIHcCO00k79GfwT4XkGbcJewg+V2hv87F5QgQ5BG27RZ7we9BgUQ/xbG3LRuXI8Dd7sO+zE44tgoj2E5GBc5twd5hQ6Mc4xh/6OMiApTuLjkeox+nbzt+gbGRA+Pv8zRGlSbpmylkSthIgERmLSIwxewGjLvou0U0xzrYhKke6PeWfF/R+9Qpjj3jsgSGmLlJsywcFaAC7G6sCiM4aPdWNcWxEFnQbC0VvAITOOwmR+aZObWtjx/aqd0NlWCe2dZh/qTsYYxFzfYA0wlpHUMLzuLjSYgaF2aK2Lgb+km1SH5hfBswpoE4LQJW3ifMkXXUxhg8ShO3qdfvKG3CmOBD6vI+YVpaBKxDVOUCskQltdSaq3KzgxG+VSezNNgasBKVgKiM8ukViupGPvYYzzYvAh60BMTdfmTSU7ra/RrNXaEAK49PTbSWrXrNlwpQPlblJs0ioKuXjjVAtl4EXipc+UzxoRPU1IEI2IkaoIhA6QSIgI3jmpsiYKVpXRSZXPuU0a10ciICTapJwBdHDVBEILqCPX8fNyABfzxqCAwRp9tPi9gXMCNc84LqLqDPIQnMDWKs9WQGaF41utQQ8MQvIgI1QF0JzKWbBCYw3dG1O4kIRK+gF8/HPXUl0AeynmUtUroF5VNFYPZU5iopjdujy6EaAvyn9GxwGwWmMN1OtUD060LAx72QwDKAOhP/1wQWlEh2uqX4bxRYGoGuQEuJqzk6S1koB/IDAjacvLF4OQ0AAAAASUVORK5CYII=)](https://github.com/wzh656/MinecraftWeb/releases/download/1.2.0-alpha/Minecraft-v1.2.0-alpha-full.apk) [![downloads](https://img.shields.io/github/downloads/wzh656/MinecraftWeb/total?style=plastic&labelColor=aaa&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAACdElEQVRYR7WWjVEjMQyFoQLogFDBQQUsFRxUcKEDqIBQAUcFt1QAqYBQwR0VEDqACuB9nvWNI6T1Jiya0SS2ZelZv7u9tT4d6MqemN+S/mnxIuZ3MG0PlGwk91N8Ip5U7ix1fi+eixc1/TUAGLsUT2uKgvNW+1diQLnUBwCjfzY0bK+daQMwnygCgPCvkYxnNegEyAp5AL7DeAjCAphJkph/J5ET2ElUAmi0fjCWL7TGI2T/VHw0ENmj5H6LF+Jz51HH3dkKgKU2qe+S/gt2m4Cg/ql15EuadGcYpQwzNfpjH8bdfQSyB1DsZTxC1pCxW116ALiUKiMDwIh9PULWA1VrjkAEIHkBABPxc6B5DADkz12gPwEgSa4dgVvtEZoxqJUSr69cAGAh9rJ7jPhn8CTuX+cljxEAphqhGZPeIwDugYSbMa1LF6X7w+h8xQMeAIQPRwbg2Ul9wD3Qfm1Ur4svBBAlIR5Y6+umBxHhtN0Q8ZSEtE2+diytDI11n2vkW629Mpz39YHXLg+WXzQelSBqUx+YiKNOSAhOxZuCwDiu3w0ekTohtBDnZvTU7eWSwROM1hsx/4cQj8LldNnIOCO78aYhOcGkasS2h+MRLqLYo1abALef7J4snr0vS630Qu4D3pxIYzQAMNX+kA/Z9Hp0lABwW5kL2RAgZuIdMeFhui0DAH0Jl6+8dR5KOmyzKV+AAL1gaNyzgaix5fMVD3rdrnT7JlXQB+BT+KJ2a2MJEDxBRtdmRATAzZ2+fk+StGL7qVabERYAo528cdt6TRkvJiQwSejljc3HDIBko3/MrEC5rgEoZQkLgFDaR4AlXHivSh+QhoYeN6Q7yAAAAABJRU5ErkJggg==)](https://github.com/wzh656/MinecraftWeb/zipball/master) ![修改日期-2021.8.18](https://img.shields.io/badge/修改日期-2021.8.18-blueviolet) > # 运行(Run) 1. 安卓Android/电脑Windows平台apk/exe运行 国内下载链接: + [蓝奏云下载链接(密码wzh)](https://wwm.lanzouj.com/b02j8yogj) + [腾讯微云下载链接(需QQ登录)](https://share.weiyun.com/WkQTgj8H) | 版本(version) | Android版下载(apk) | Windows下载(electron) | Github查看(release) | | ----------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | | v1.3-alpha | [完整版(30.2MB)](https://github.com/wzh656/MinecraftWeb/releases/download/v1.3-alpha/Minecraft_v1.3-alpha.apk) | [exe安装程序(67.3MB)](https://github.com/wzh656/MinecraftWeb/releases/download/1.2.0-alpha/Minecraft-v1.2.0-win32-x64-installProgram.exe) | [release](https://github.com/wzh656/MinecraftWeb/releases/tag/1.2.0-alpha) | | v1.2.0-alpha | [完整版(22.3MB)](https://github.com/wzh656/MinecraftWeb/releases/download/1.2.0-alpha/Minecraft-v1.2.0-alpha-full.apk),[精简版(6.41MB)](https://github.com/wzh656/MinecraftWeb/releases/download/1.2.0-alpha/Minecraft-v1.2.0-alpha-simplified.apk) | [exe安装程序(67.3MB)](https://github.com/wzh656/MinecraftWeb/releases/download/1.2.0-alpha/Minecraft-v1.2.0-win32-x64-installProgram.exe) | [release](https://github.com/wzh656/MinecraftWeb/releases/tag/1.2.0-alpha) | | v1.1.0-alpha | [完整版(22.49MB)](https://github.com/wzh656/MinecraftWeb/releases/download/v1.1.0-alpha/Minecraft.apk) | 未打包(unpackaged) | [release](https://github.com/wzh656/MinecraftWeb/releases/tag/v1.1.0-alpha) | | v1.0.0.3-alpha | [完整版(34.06MB)](https://github.com/wzh656/MinecraftWeb/releases/download/v1.0.0.3-alpha/full.apk),[精简版(6.5MB)](https://github.com/wzh656/MinecraftWeb/releases/download/v1.0.0.3-alpha/simplified.apk) | 未打包(unpackaged) | [release](https://github.com/wzh656/MinecraftWeb/releases/tag/v1.0.0.3-alpha) | | v1.0.0.1-alpha | [完整版(23.88MB)](https://github.com/wzh656/MinecraftWeb/releases/download/v1.0.0.1-alpha/Minecraft-full.apk) | 未打包(unpackaged) | [release](https://github.com/wzh656/MinecraftWeb/releases/tag/v1.0.0.1-alpha) | | v0.5.0-alpha | [完整版(23.87MB)](https://github.com/wzh656/MinecraftWeb/releases/download/v0.5.0-alpha/Minecraft-full.apk),[精简版(5.35MB)](https://github.com/wzh656/MinecraftWeb/releases/download/v0.5.0-alpha/Minecraft-simplified.apk) | 未打包(unpackaged) | [release](https://github.com/wzh656/MinecraftWeb/releases/tag/v0.5.0-alpha) | | v0.4.0-alpha | [完整版(23.85MB)](https://github.com/wzh656/MinecraftWeb/releases/download/v0.4.0-alpha/Minecraft-full.apk),[精简版(5.34MB)](https://github.com/wzh656/MinecraftWeb/releases/download/v0.4.0-alpha/Minecraft-simplified.apk) | 未打包(unpackaged) | [release](https://github.com/wzh656/MinecraftWeb/releases/tag/v0.4.0-alpha) | | v0.3.2-alpha | [原始版(0.89MB)](https://github.com/wzh656/MinecraftWeb/releases/download/v0.3.2-alpha/Minecraft_v0.3.2-alpha.apk) | 未打包(unpackaged) | [release](https://github.com/wzh656/MinecraftWeb/releases/tag/v0.3.2-alpha) | 2. 网页版运行:可以直接访问 (较快) 或 (GitHub版) 运行。 > 注意: > 1. GitHub是国外网站,网络不好将**无法访问** > 2. 部分旧版浏览器可能不支持(推荐使用*Chrome最新版浏览器*以便正常运行) > 3. 竖屏运行时会有一个提示使用横屏或者下载,若浏览器支持横屏,可以将手机横屏使用; 也可以点击关闭,直接竖屏运行 ### 派生网站(国内) > 由其他开发者clone项目部署产生的网站(鉴于其他开发者无法同步最新修改,推荐运行最新网页) + (已失效) + + + (已失效) + (已失效) 3. git clone:当然也可以直接克隆本仓库, 然后用浏览器(推荐Chrome)直接运行`home.html`(也可以放到服务器环境打开), 如果`npm`安装了`electron`也可以用`electron`: npm run test 也就是 electron . > # 介绍 (Introduction) ## (零)序 本项目是基于《我的世界》游戏风格的仿造,仿造原则是: 在原版风格基础上**创新性地**增加游戏**真实性**,但拒绝完全复制(体现在“*仿*”字), 同时处理好创新与真实的关系,既在创新之中体现真实,又在真实之中发展创新,故名之***两个原则*** 《我的世界》风格的界面仅是一个*载体*和*躯壳*,却非真正的*灵魂*所在。 ### 三个战略 目前,本项目仍处在初级发展阶段,bug和性能方面都不是很好。对此,根据*真实性原则*,需要坚持*三个战略*(即*改革优化创新战略*): 1. ***改革***:泛指修bug与代码体系修改; 3. ***优化***:泛指不断提高运行速度,增加FPS,减小CPU及内存占用等; 2. ***创新***:泛指不断发展新功能。 目前阶段,这三个战略缺一不可,并且是当前发展中需长期坚持的主要及重要战略。 ## (一)总述 本项目使用兼容多平台的JavaScript(ES6+)+HTML(HTML5+)+CSS3编写,利用WebGL技术,依赖Three.js进行更便捷的3D渲染。 > 之所以选择JavaScript+HTML+CSS是因为便于绘制图形化界面(HTML5+CSS3),并易于打包成EXE(electron)和APK(HTML5+)以兼容各个平台 规定:世界中的每1px为1cm,每100px为1m,每个*普通方块*为边长1m=100cm=100px的立方体。 > 注:*deskgood*~~为某初中同桌的外号~~,作为游戏主角名,莫要在意名称![](https://img.shields.io/github/search/wzh656/MinecraftWeb/deskgood) ## (二)操作方式(Operation) > ### 电脑版 | 事件 | 操作 | | ------------------------- | ------------------------------------------------- | | `W S A D` | *前 后 左 右*方向移动(move) | | *鼠标左键* | 删除所指位置的方块(remove) | | *鼠标右键* | 在所指位置放置手中选中方块(place) | | *鼠标中键* | 重置时间流速(1.0倍) | | *鼠标滚轮* | 来回切换手中选中方块 | | `shift`+*鼠标滚轮* | 以1.5倍比例调节时间流速 | | *空格* | 跳跃(jump) | | 双击`W`,或 `Ctrl`+`W` | 疾跑(run) | | `ESC` | 暂停游戏/关闭交互窗口(命令方块、背包) | | `Pause-Break` | 暂停/开始游戏 或 关闭交互窗口(命令方块、背包) | | `F2` | 截图 | | `F3` | 打开/关闭dat.gui | | `shift`+`F3` | 关闭/开启调试(将自动刷新) | | `F4` | 开始/停止录屏 | > ### 手机版(触屏版) 1. 移动:左边的大圆 摇杆操作,`touch`移动控制行走,拖拽超过`100px`疾跑 2. 跳跃:右边的小圆 可以与移动同时操作。 按下(`touch-start`)之后,如果脚下有方块并且距离上一次跳跃超过约1s(需有休息时长), 则将沿着y轴正半轴方向以约5m/s的速度跳起来 3. 滑动屏幕界面:转动角色视角 4. 短按屏幕界面:`touch`<1s 放置('deskgood.put')当前手中选中的方块到点击处 5. 长按屏幕界面:`touch`>1s 删除('deskgood.delete')点击处的方块并将其放入手中(优先放入选中处) 6. 点击下方工具栏方块: 选中手中的方块 ## (三)引入的调试工具(Shift+F3关闭/显示) 由于项目长期处于调试状态,调试工具可能默认开启,调试工具可能影响游戏性能,若无需使用请按`Shift`+`F3`关闭 + > *state.js*:左上角Canvas 可以使用该工具查看当前渲染状态,该工具有3种状态,点击切换 + fps:蓝色/fps 查看当前每秒可渲染的帧数,1s更新1次 + ms:绿色/ms 查看渲染每帧需要的时间/ms,渲染1帧更新1次 + MB:红色/MB 查看当前运行占用的内存/MB(兆字节) + > *dat.gui.js*:右上角 点击可展开,内含一些配置调试选项 注意:对性能有很大影响,可按`shift`+`F3`隐藏(会重新加载页面生效) + > *VConsole*与*eruda*:右下角(可拖动) 手机调试工具,点击右下角即可看到一堆输出,可以调试html+css+js,也可以运行JavaScript代码,等效于*命令方块* ## (四)功能 & 计划 ### 特色创新功能(Feature) 1. [x] 通过 `F=ma`, `v=at`, `s=vt` 等经典物理公式计算玩家运动加速度、速度及位移 2. [x] 考虑空气阻力 `f = 1/2*CρSV²` 对玩家的影响 3. [x] 考虑宇宙无规则随机扰动产生的蝴蝶效应对一切参数数据的影响 4. [x] 【特性】`XYZ`轴均无限、区块无限的世界 5. [x] 【特性】爬树功能 6. [x] 根据玩家设置的*经纬度*和*开始日期时间*计算日出日落时间和天空颜色、环境光颜色 7. [x] 具有降雨量控制天气系统 8. [x] 根据种子(`seed`)用柏林噪声(`simplexNoise`)随机生成的具有区块类型、地形、土壤层厚度、树高、树叶高、降雨量等完善属性的区块系统 9. [x] 独立于现实且可更改流速、可进行`setTimeout`, `setInterval`, `clearTimeout`, `clearInterval`操作的时间系统 > 注:此处的*特性*指偶然的产生功能 ### 计划(Plans) 1. [ ] 【doing】【创新】玩家状态界面:健康、饥饿、口渴、精神、疲惫、经验等 2. [ ] 【doing】【创新】工具物品合成界面 3. [ ] 【改革】使用`Babylon.js`和js模块化重写 4. [ ] 【优化】尝试使用多线程工作(除涉及`scene`等主线程对象以外) 5. [ ] 【改革】使游戏更加科学:加入物理引擎,方块重力及电磁力 6. [ ] 【创新】联机:尝试使用内网联机(`electron`)和服务器外网联机 7. [ ] 更多……【未解密】天机不可泄露 > 注:计划赶不上变化 ## (五)感谢(Thanks) + 感谢[*deskgood*](https://github.com/deskgood)对本项目的支持并提供了一些想法和建议 + [*@jason-bowen-zheng*](https://github.com/jason-bowen-zheng)提供了一些交流与建议 ## (六)关于代码 允许非商业用途的阅读、使用、复制、分发代码, 修改借鉴代码和派生作品请先告知作者, 欢迎为代码的完善和新的功能提出建议或想法。 ## (八)更多(More) 更多*特性*请自行[运行](#运行)尝试或*在[代码](https://github.com/wzh656/MinecraftWeb/blob/master/main.html)中领悟*。