“这个UP又在摸鱼水文章啦!所以什么时候出PE版呢?”

这篇文章将讲述UP各种挖坑与弃坑的过程Q^Q
I Wanna Play Minecraft

这是UP在初三的时候无聊制作的黑历史游戏,你需要摆放各种MC器械来抵御敌人的进攻,并最终存活下来。该游戏使用MMF游戏引擎开发。
贴吧帖子:https://tieba.baidu.com/p/2961195128
MCBBS帖子:http://www.mcbbs.net/thread-267895-1-1.html
在B站搜索这个游戏名,你会成功获得关于该游戏的【1个】视频。

对你没看错,这是发射器、炼药锅、向日葵,还有史蒂夫!

附魔台:时代变了!啊不为什么我能发射导弹??

僵尸巨人出现了!史蒂夫惊奇地发现僵尸衣服跟自己是完全一样的,气色比自己还好,难道自己才是僵尸??

史蒂夫:时代变了!

初三的时候惨不忍睹的美工QAQ

TC蓝石弓的原型,属于加强版的弓。出处来自时空球。

TC中跟踪剑弓(又称屁剑弓)的原型。

TC的彩蛋怪物狗头僵尸原型来自于此。

之后上了高一,课程压力比较大,就停更了Q_Q
在高二学业比较稳定的时候,我对游戏引擎产生了浓厚的兴趣,决定使用VB编写一个类似MMF的游戏引擎。于是NSMX(新超级马里奥之未知世界)计划就这样诞生了。NSMX的目的是以马里奥作为承载形式,练习游戏引擎的开发。在编写NSMX期间,UP逐渐摸索出了关键的游戏引擎的技术(碰撞检测、四叉树、R树等等),TC使用的游戏引擎技术便是由这个项目积累起来的。
NSMX Classic 1.0

NSMX Classic 2.0

在高二升高三的暑假时,突然想填上之前MC塔防的坑,UP又决定直接制作一款真正意义上的2DMC。于是UP花费了两周时间制作了TC最最最早期的版本。名称比TC还长,叫做:
Blueyoshi's Terraria of Minecraft(未公开)

取标题前面的几个单词,这个项目被命名为BYTR项目!
没错,在早期的2DMC计划中,这是一个弹幕游戏!弹幕会把地面破坏掉!
当年BYTR的定位是:
地图无限远无限高无限深有着无尽探索资源且纵向分层规定难度的,以科技、魔法和探索为主线的,基于任务树探索树科技树魔法树规划的开放沙盒动作弹幕rpg游戏!
没错当时觉得这就是做梦!(当然我现在正在努力实现当年的梦想0w0)
之后上了高三,停止了一切编程计划迎接高考,最后考上了南京大学软件学院。
NSMX V1.0.0
UP在大一的时候花了一整年时间重写了NSMX,发布了NSMX的1.0.0版本。整个项目约为4.6万行代码。NSMX使用了完全自己开发的UI库以及游戏引擎,为TC的技术积累做好了充足的准备。(其中个人认为最困难的技术是移动地面的物理引擎,花了很大的技术力才实现)
NSMX官网:blueyoshi.cn/nsmx




TerraCraft
积累了足够的游戏引擎开发技术后,UP把目光放回在BYTR计划,将BYTR计划的成品命名为TerraCraft(泰拉世界),并使用C++重新编写游戏。TC从2018年9月开始开发,历时近两年的时间终于制作并发布了第一个版本。TC代码量达到9万行,是上一个项目的两倍工作量。
刚开始的一周
首先制作了最简单的网格系统以及光照系统,效果如下:

TC开发三周
效果图(无视标题QAQ):

没错这代表了我大二上学期最高美工的水平。
你瞧瞧这星界边境的物品栏,这像又不像向导的大头娃娃,这马里奥的树,这单调的天空和山脉……


TC开发两个月
成果图:


TC开发的第七个月
大二下学期,UP重新写了一遍TC代码,并使用《泰拉瑞亚》和《星界边境》的细粒度风格绘制素材,加入了大量MC怪物。
效果图:



TC开发的第九个月
放假了在家没事干 :3,由于犯了强迫症,UP对整个TC的展示效果进行了完全的重整,进行了如下重大改变:
(1)抛弃了《泰拉瑞亚》、《星界边境》原来地砖贴图方案,使用了大型循环纹理贴图作为全新的纹理方案。意味着图片不再像星界边境以及泰拉瑞亚以细粒度的形式展现,而是像MC那样以粗粒度的形式展现所有地砖纹理。原来一个纹理是16*16像素,现在变成了128*128像素,工作量活生生增大到64倍!!!
(2)重画了全部的素材,UP承包了上面64倍工作量的全部的美工工作,自己挖的坑哭着也要填完啊啊啊啊Q_Q。同时在极高的负担中,不知不觉也自己的美工水平得以提高QAQ。
(3)实现了玩家的骨骼模型,使得在设计皮肤时不再需要像《泰拉瑞亚》、《星界边境》一样一帧帧地绘制动作,大大解放了美工劳动力。其一大目的也是方便玩家自定义皮肤。
(4)陆续添加了一些地表群系。



TC开发的第十一个月
制作了地狱层:

TC开发的第十二个月
丰富了各种细节:


TC开发的第十四到第十六个月
加入了大量有趣的物品(法杖、枪械、各种建筑群等):

什么?你问泰拉世界第一个预告片中出现的自带制导系统的向导精灵宠物(图中在玩家头上飞的拿霰弹枪的那个)在发布版本怎么不见了?因为后来UP把代码重构成为客户端服务端框架,只能将这个精灵放在了未来的更新再进行公布。塔防系统也推迟到了未来再公布。
同时由于大三的课程比较多,UP需要平衡项目与学业的两边的发展暂缓了更新进度。
TC开发的第十六到第二十一个月
UP发布了泰拉世界的第一个预告片,大量回复以及私信表示希望推出多人联机。于是UP毅然决然踏入了C++中最为无底洞的Socket编程领域,一路摸索进行了长达五个月的代码重构,陷入了极度自闭模式。最终UP在第二十一个月完成了整套客户端服务端联机框架,实现了最原始的多人联机功能。
TC开发的第二十二个月
完成了整个比较完整的游戏流程,并在国内公开发布。
TC玩家发挥着他们的创造力,建造了许许多多优秀的建筑:









TC的终极目标依然是当年的目标(这是UP一直以来追求的梦想):
地图无限远无限高无限深有着无尽探索资源且纵向分层规定难度的,以科技、魔法和探索为主线的,基于任务树探索树科技树魔法树规划的开放沙盒动作弹幕rpg游戏!
如下是TC未来的发展规划,可能会有部分修改,但是大体不变。
每一个分层都有独特的方式到达,不必要一直往下挖(当然一直往下挖也可以)。
0. 末地层,End Layer (Pending)
1. 太空层,Space Layer (Pending)
2. 地表层,Surface Layer (Y: 400~600, implemented)
3. 洞穴层,Underground Layer (Y: 600~2560, implemented)
4. 地狱层,Nether Layer (Y: 2560~3072, implemented)
5. 绯红森林层,Crimson Forest Layer (Y: 3072~4096, coming soon)
6. 暮色森林层,The Twilight Forest Layer (Y: 4096~6144, coming soon)
7. 水晶层,Crystal layer (Y: 6144~6656, 困难模式开始的地方, pending)
8. 腐蚀层,Corrosion Layer (Y: 6656~7168, pending)
9. 辐射层,Radiation Layer (Y: 7168~9216, pending)
10. 地核层,Core Layer (Y: 9216~11264, 最终BOSS栖息的地方, pending)
11. 极压Alpha层,Extreme Pressure Alpha Layer (Y: 11264~12288, pending)
12. 极压Beta层,Extreme Pressure Beta Layer (Y: 12288~13312, pending)
关于下一个大更新
下一个大更新版本将会进行工业更新,基于工业时代模组以及格雷科技模组进行魔改拓展TC独特的科技线,敬请期待吧!੭ ˙ᗜ˙ )੭