点子来源于游戏《异星工厂》
这种流水线生产模式很有意思,玩到后期石油化工时,流水线很难满足需要。这时候我就想现实的化工,一排蒸馏塔,管式炉,换热器,槽罐,立体式的管道,从原料到产品,流水作业,完美!无非就是一些元件连接在一起嘛。还有我们钢铁厂,整个流程,是从一个整体的工序到另一个整体的工序,整个钢铁厂在一个大范围内有序的组合,可不像游戏里那么简单,如果把这些实现在游戏里,啧啧,有趣得紧。
焦化厂的焦油车间工艺流程:
原料是煤气净化车间的废液-焦油,
产品是工业萘,焦油沥青,轻油,洗油,酚油,燃料油,(听说德国在一战的时候拥有整个欧洲最大的煤化工业区,可以分离出数百种有机产品)
焦油_(管式炉预热)_蒸馏塔蒸馏_分离出三种,
(轻油)_直接进轻油槽。
(沥青)_进入沥青工序,通过炉子加热搅拌,提高沥青的熔点,间歇放料至沥青中间槽,再通过泵打到沥青高置槽,放料到水里,再用刮板机把冷凝的沥青送到运输车上。
(粗酚)_通过洗涤塔脱酚塔,得到(酚油)进槽,萘油进工业萘原料槽,再进入工业萘工序,先原料槽预热,用原料泵打到管式炉加热,进去初馏塔,初馏塔得到的酚油进酚油槽,粗笨进管式炉提高温度,进精馏塔,这时可以得到洗油,洗油进洗油槽,最后得到的就是工业萘了,工业萘通过调节得到精萘可以提高价钱,工业萘通过转鼓得到片状的白色晶体,装袋垛包。
厂区布置分为槽区,蒸馏塔区,沥青区。
化工行业为高事故爆发区,所以如果游戏的话可以设置一系列事故,我们厂几乎每年都会死人的,而且退休后得癌症的非常多 🤔死的方法稀奇古怪,有屁股被压掉,在救护车上大叫着死掉的。有儿子赌博,黑社会天天堵门,然后一个想不开把火车调过来压死自己的。还有离异后独居,七窍流血死在自己床上的,死后三天他儿子才发现,死因是心肌梗死。炸死的,烧死的,毒死的,还有给人家背黑锅死的,原因是有关部门查贪污腐败,弃车保帅。游戏里加上这些就好了。好有内涵啊。
平面地图如何实现立体效果?
第一种,上帝视角,把地图网格化,每个网格就是一块土地,表层可以是岩石,沙地,土壤,草地等,可以向下挖,不过我打赌他挖不到什么有用的东西,除非是地表矿藏,因为地下矿藏太深了,而且徒手挖坑可还行?就是做出来石铲,铁镐,钻头,挖个几百米也就那样了,现实中可以探测到的矿都没有太深的,因为探不着,而且得不偿失。所以挖地就可以用海拔高度和贴图变化来表示。假如比例是1:1的话,挖下一米的海拔就是一立方的土,徒手用时4小时。咋舌,真闲。所以基本上正常人都在地表活动了。挖矿的,需要工具-矿井。矿井设置坍塌,瓦斯浓度,水淹率,随矿井科技含量提高而降低。如果坍塌,救援不及时,人员应缺氧,缺水,缺粮,逐渐死掉。进入地下后,因为是二维游戏,有四个方向,所以地下空间应类似于泰拉瑞亚,地下应有地下空洞,溶洞,地下河,墓葬,古城等。岩浆,毒气,怪物一个都不能少。
这里就有一个概念了,因为单人携带量有限,所以一平米的土需要10次才能运完。没有车马的话,工作效率低到发指。
地图应有高低纬度,作为网格其中一种属性,由低纬向高纬走减速,由高纬向低纬走加速。水平面以上1500米设置雪线。
植物也是以图块呈现,高大的植物图块覆盖低矮的植物。动物则以可活动的图块呈现,人也是一样。运动则是用一组图片循环播放来实现的。也有用算法实现的。动植物分类成不同的环境适应性,比如热带草原动植物,温带草原动植物,高山动植物,寒带苔原动植物等,根据地图所设气候条件改变。动植物数量符合食物链法则,即等级高的捕猎者数量稀少,底层动植物数量众多。
第二种则是透视三维模型,无论你的图怎么像三维物体他也依然是二维的。所以将屏幕网格化,如果一个物品离屏幕近点就大,离屏幕远就小,当物品从远处靠近屏幕,则物品逐步放大,就像用羽毛球拍看世界。至于用二维表示三维则需要亮度,色泽,线条的变化来体现。如果是简单的球,或者正方体,长方体,在三维上很好实现,无论哪个角度的图形都很容易算出来。但复杂的三维模型就不好算了,可以把复杂的模型分解成几个简单模型的组合,再配合贴图和光影,就能看到完美的三维模型了。三维可以用3dsmax或者虚幻,unity制作游戏。可惜我电脑带不动。
如何自动生成地图?
1大资源分布,2划分地势高低纬度。
总之你的资源能用上才好。地势可以让地图更现实一点。如果有多幅图那么就得有外部联络路径。
首先资源分布,资源都是以带式存在的,可以预设一些立体或平面的资源分布图,比如取10*10*10的块,在里面画二十种预设好的资源分布图。对于整张地图来说6000*6000*60层(一个图块一平米,因为没有交通工具的话这几乎就是普通人一辈子的活动范围了,60层相当于地下60米,除了矿工,打井没人会去那里。)就是2160000个资源块,设置个资源密度0-100,0就是没资源,100就是遍地开花。实际上如果单一资源设置了100那就是他把所有的块都占了,其他资源都是零了。所以如果有多个资源,这些资源的密度应想加不超过100。人工设当然随便设了,但实际生活中大部分地区都没什么资源,所以资源密度✘所有可能的地图数的正态分布曲线的那条中线应是一个很小的数值,没有资源和遍地开花都是个例。
第二步,划分地势,事实上平原更适合人类生存,所以平原的占比高些合适。所有的表层提高0-10米,每提高一米,向上增加一层图层,然后图块随机选1-5个点提高30到100米,每个点周围100米范围受影响。
第三步,河流是人类活动的基础,人类脱离河流没可能活动太远,尤其是早期。地下河也同样重要,要不然打井出不了水,所以每幅图都有河流。沙漠要有绿洲,高原要有雪山和积雪融化的小河,极地有大片冰川。河流分布对于人类来说就是一条粗线,他从远方而来,去往未知之地。所以从地图任何一条边上的点开始,经过任意个图块,从除了起始点以外的任一边上的点消失画一条线,这条线时宽时细。因为河流地势低,所以用蚀刻,河流经过的地方向下消10个图块,左右10格受河流影响越靠近河流地势越低。
第4步,确定地图所处星球位置,比如北回归线到赤道线以内的温带森林气候,比如高原气候,然后根据情况在地图添加合适的天气和地貌,比如设置四季,比如冰雪。
第5步,添加植物,以第4步为基础添加,每个不同的纬度都有不同的植物。山阴面着阳光少,草多于树,且化雪时间晚于山阳面,山阳面阳光充足,树更多些。地表与地底洞穴是有区别的,洞穴设荧光植物。
第6步,添加动物,动物受地域,植物和食物链影响。大概分为海洋生物群落,陆地生物群落。海洋生物因为与人类生活条件迥异,在地图上几乎是不可见的,只有打鱼上来才能一窥究竟,所以海洋生物只作为一种可以获得的资源不在地图上显示。随机加几个海鸟,鱼跃的动画就好。
第7步,添加起始点,找一个平地就好。主人公有可能是原始人,也有可能是秦朝遗民,也有可能是现代人,他们的生活方式决定了他们会的技能不同。比如原始人,他们能很好的适应野外环境,找到食物,如果是一个部落,就会分工合作,采集野果的,捡树枝的,打猎的。偶尔会遇到另一个部落,战争。战争是要死人的,而原始人是食人的,但游戏不能有这些内容,可以隐式的表达,比如到了晚上,一群野兽吃掉了尸体。
一个人平地盖高楼似乎很有难度啊。更别说工业体系。
游戏就是数字之间游戏。各种数据相互影响。显示出来的不过是些贴图罢了,实际上还是数字。比如打怪升级,对比双方血量,护甲,攻击力,暴击率,暴击倍数,技能,出招顺序,通过每次攻击的减法运算得到胜负,胜者得到得到战利品经验,物品不过都是些变量名与数量罢了,败者数据消失,回收内存。每一个人物,怪物都是一张张卡片,上面写着变量名:数量。植物也是卡片,但大部分不可交互的植物景观,建筑物,地面,高山都只是贴图和坐标。其实他们也是卡片-环境卡,上面写着图片:地址,位置:数字,大小:数字。你操纵的人物也有一个卡片,上面一定有你所处的位置数据。有点像桌游
如果做成纯文字的可行?
一个角色拿起一块铁矿石,在画面上不动,内部数值分析。铁矿石属性在不被观察时是隐藏的,当使用相应的方法观察时,其相应属性显示出来。比如用眼看,它的重量就是隐藏属性,颜色,形状就是显示属性。不同精度的观测方法,显示的属性精度不同,用手称量和用秤称量精度不同。与所在地有关,在地球上和在月球上重量不同。
所设置的属性越多,设计游戏的难度成指数倍递增。简单的猜数字游戏我也会做,简单的rpg只需要保存文件就行,然而这个游戏太复杂了。
纯文字的,一个九宫格,主角在中间,周围的格子是主角周围的地方。每个地方显示一些参数,比如方位,有什么,同时显示可执行操作,比如探索。中间格子属于激活格子,彩色的,周围黑白,
一,所以,我需要一个固定大小的窗体800*600,设置底色,
二,网格化,每个网格100*100,共6000*6000个网格,对应普通人的活动范围6公里方圆。实现方法:创建一个6000*6000的二维数组,每个数组添加一个100*100的小贴图,和显示坐标(窗体左上角是(0,0),窗体中心的坐标是(400,300)所以第一个贴图的坐标是((400-3000*100),(300-3000*100))即 (-299600,-299700),左上角对齐,
三,然后是初始位置,设在屏幕中心,游戏角色为不小于15*15,不大于200*200的小贴图。
四,控制方法为wasd控制屏幕移动,鼠标右击对象可以得到对象属性,中键放大缩小地图,有战争迷雾,游戏角色有ai不能直接控制,可以安排任务,比如探索,挖矿。窗口下面和右面有一排按钮,可以设置计划,角色得到相应指令并不会立即执行,而是与ai匹配,将指令加入到自身执行序列之中。
不能直接控制,只能进行安排。游戏角色有自己的ai,想怎么溜达是人家自己的事,玩家想让他去采矿,可以划定矿区,安排角色,至于去不去,那得看角开不开心了。
贴图需要事先画好,树,草地,花朵,水,按照上面的规则先确定好位置,再分图层上下生成新的贴图,这些贴图是环境。它的上层图层是对象,由一些可以互动的事物组成。根据规则,划定高低纬度,这些数字记录到每个网格中。优化地图,根据规则生成河流。
比如你让初始是原始人的角色去挖矿,那他会收到指令,也许他在狩猎,那就会安排到后面,狩猎完了,也许他还会去玩,把你的指令忘到一旁,你再三催促他,他会想,咦,我为什么想挖石头?莫名其妙的走到事发地,什么工具也没有,这能随手捡一些矿石。他在想这些石头怎么是红的。又捡了几块,呀!全是红的,我必须告诉族长去,颠颠跑远了。族长肯定不能不知道啊,于是瞎说这是远古神灵战场,血把大地都染红了。然后带领大家祭祀。也有可能是主角拿到手里,哎!真沉。拿这玩意砸猎物挺好。在旁边的石头上磨了起来,一磨就发现,这东西真硬啊,比平时捡的石头硬多了,于是高高兴兴的往棍子上一绑,一个铁矿石斧头就出炉了。哈哈,并不是你想让他干啥就干啥。所以需要你给他指定一个他能理解的任务,或事物。所以想从原始人发展到大工业,那不可能。原始人只有短短十几年的生命,还有一半是童年。
【清华张钹院士专刊文章:迈向第三代人工智能(全文收录)】https://mo.mbd.baidu.com/r/aXAjIwyo1O?f=cp&rs=3933395668&ruk=6UYIr7rVur40JKn2S2rT8A&u=0288b19bda63960b
AI如何写呢?
比如一个游戏npc拿到一块铁矿石,他从来没见过这样的石头,如何发现它的作用。石头有属性,他做实验,用铁矿石砸石头,发现,铁矿石比石头硬。他所熟悉的事物里有什么呢?食物,树,树枝,草,野兽,武器...这个可以做成武器,像石斧一样,而且更坚硬,要是像石斧一样锋利就好了。于是他拿着铁矿石在一块岩石上磨了起来。
如果一个npc走到一块陌生的地方会怎么样呢?他会按照行为习惯观察四周,找寻熟悉的事物,试图了解情况。用熟悉的事物去解释当前的现象。未知代表恐惧。小心谨慎的去接触新事物。为新事物做定义。谨慎与好奇心是相斥的,过度的谨慎失去了探索新事物的勇气。