请选择 进入手机版 | 继续访问电脑版
查看: 102|回复: 7

[命令方块] 【搬运】我的世界1.8数字连连看游戏地图

[复制链接]

10

主题

39

帖子

20

积分

Lv.2 石器学徒

UID
780323
小麦
0
金锭
78
下界之星
0
发表于 5 天前 | 显示全部楼层 |阅读模式
本帖最后由 №黎明 于 2018-6-13 19:18 编辑

                           *大家好我又来搬运了哈哈哈.....*----------------------------------------------------------分割线---------------------------------------------------------

我是一名搬运者,只为在网易我的世界玩家搬运!
我今天为大家搬运一个每个人都知道的一个小游戏
这我就不说了,还是说吧,就是游戏金典:“扫雷”。。。。。。。
不扯那么多了亮搬运信息!
我的世界1.8数字连连看游戏地图
各位大大不要怪我!
我只是搬运者而已。
思路:
一、思路分析
  那么还是来按照一局连连看的思路来进行思路分析。首先我们需要一个可以供我们游戏的棋盘,在这个的基础上我们需要一个生成棋盘的开局系统,在成功生成棋局之后我们就需要正常的进行游戏,所以我们需要一个具体的游戏系统,而游戏系统最重要的就是判断所选择的两个棋子是否其能够构成有效解的问题。然后棋局结束的系统我并没有做,但是实际上只需要两三条指令就可以建立起这个系统,所以本次的讲解会详细的讲解连连看的有效解系统及连线处理,其余系统将会一笔带过。
  那么我们现在来看看,我们所总结出来的思路,连连看的核心是判断有效解,并能够显示出一条有效的路径反馈给玩家。
  那么我们要如何做到判断有效解呢,
  我们可以这样的反向思考,以第一个棋子为基点,探索在两次拐弯所能够到达的地方,如果有第二个被选择的棋子且其内容相同,则为"有解"。那么我们借以反向思考所给定的基础进行正向的推演,首先我们可以确信一点,第一个被选择的棋子向外探测没有拐弯的格子是非常容易的事,仅需十字形探测。其次,我们可以知道,这些格子都有成为第一个拐点的可能性,那么我们再以这些格子为基础,向外探测进行下一次的探测,以此类推完成两次拐弯的推演。那么最后只需要判断第二个棋子是否在这个范围里,我们就可以判断这个是是否有解的。但是这样的思路有个致命的缺点,就是比较难输出一条有效的路径,并不是不可行,但是这意味着还得反向的去探测一次,那么这是非常不环保的行为,又慢又卡,我们得进行一次权衡,减少一次第一个的探索深度,将其加到第二层次的探索中,那么我们可以清楚的知道,两次探索的重叠位置可能是一个拐点(或者非拐点,例如直线情况)。在实际的实践中,我发现这种情况虽然能够较快的输出有解,但对于路径的选择仍然少了一个可能的拐点。于是,现在的思路就变成了:两个棋子各进行深度为二的搜索,两个覆盖范围就为其可能的拐点。好的,那么接下来只差一步了,我们需要选择一条唯一的路径,最好是最短的,正好关于最近的选择我们有一个c=1的选择器可以做到,通过这次的记录,我们便可以做到选择一条唯一的道路,虽然不一定是最近的,但绝对不会远到离谱,而且消耗资源相当少。剩下的我们只需要标记出这些被选择的拐点,然后做出对应的路径。


二、开始建造
  首先我在这里说一下我的会提到的计分板,以免下文造成理解不便。
  r惯例是右键探测,具体方式在扫雷贴里有说。
  mark是棋子内容的存储计分板。
  sc是拐点的标记计分板。
  f1-6都是进行探索时所用到的计分板。
  line1,line2,line5是标记路径的计分板。
  kill和kill1是拐点进行探测另一拐点的时候所用到的计分板。
  好的,那么我们现在可以开始了。
指令:
下方的cb是探测右键的cb,比较器输出后会沿着箭头方向fill红石块,同时向前做出探测第二次右键的预备工作。fill我分成了两次依次执行了如下组的命令。
  execute @e[score_r=1,score_r_min=1] ~ ~ ~ /scoreboard players set @e[dx=0,dy=10,type=ItemFrame] f1 1
  execute @e[score_r=1,score_r_min=1] ~ ~ ~ /scoreboard players set @e[dx=10,dy=0,type=ItemFrame] f1 2
  execute @e[score_r=1,score_r_min=1] ~ ~ ~ /scoreboard players set @e[dx=0,dy=-10,type=ItemFrame] f1 3
  execute @e[score_r=1,score_r_min=1] ~ ~ ~ /scoreboard players set @e[dx=-10,dy=0,type=ItemFrame] f1 4
  /scoreboard players set @e[score_r=1,score_r_min=1] f1 10000
  execute @e[score_f1=1,score_f1_min=1,score_mark=8,score_mark_min=1] ~ ~ ~ /scoreboard players set @e[dx=0,dy=10,type=ItemFrame] f1 0
  execute @e[score_f1=2,score_f1_min=2,score_mark=8,score_mark_min=1] ~ ~ ~ /scoreboard players set @e[dx=10,dy=0,type=ItemFrame] f1 0
  execute @e[score_f1=3,score_f1_min=3,score_mark=8,score_mark_min=1] ~ ~ ~ /scoreboard players set @e[dx=0,dy=-10,type=ItemFrame] f1 0
  execute @e[score_f1=4,score_f1_min=4,score_mark=8,score_mark_min=1] ~ ~ ~ /scoreboard players set @e[dx=-10,dy=0,type=ItemFrame] f1 0
  这对应之前思辨中的“探索未拐弯所能到达的格子”,原理是右键的格子向四个方向的所有格子进行标记,同时标记有数字记录其方向,然后由于不拐弯的情况下是不会越过有内容的格子的,所以所有的有内容的格子会朝他的那个方向清楚标记,下图是实际的标记效果。
  其次则会激发下一次的fill,执行以下指令。
  execute @e[score_f1=4,score_f1_min=1] ~ ~ ~ /scoreboard players set @e[dx=0,dy=10,type=ItemFrame] f5 1
  execute @e[score_f1=4,score_f1_min=1] ~ ~ ~ /scoreboard players set @e[dx=10,dy=0,type=ItemFrame] f6 2
  execute @e[score_f1=4,score_f1_min=1] ~ ~ ~ /scoreboard players set @e[dx=0,dy=-10,type=ItemFrame] f5 3
  execute @e[score_f1=4,score_f1_min=1] ~ ~ ~ /scoreboard players set @e[dx=-10,dy=0,type=ItemFrame] f6 4
  /scoreboard players set @e[score_f1=4,score_f1_min=1] f5 10000
  /scoreboard players set @e[score_f1=4,score_f1_min=1] f6 10000
  execute @e[score_f5=1,score_f5_min=1,score_mark=8,score_mark_min=1] ~ ~ ~ /scoreboard players set @e[dx=0,dy=10,type=ItemFrame] f5 0
  execute @e[score_f6=2,score_f6_min=2,score_mark=8,score_mark_min=1] ~ ~ ~ /scoreboard players set @e[dx=10,dy=0,type=ItemFrame] f6 0
  execute @e[score_f5=3,score_f5_min=3,score_mark=8,score_mark_min=1] ~ ~ ~ /scoreboard players set @e[dx=0,dy=-10,type=ItemFrame] f5 0
  execute @e[score_f6=4,score_f6_min=4,score_mark=8,score_mark_min=1] ~ ~ ~ /scoreboard players set @e[dx=-10,dy=0,type=ItemFrame] f6 0
  此组命令与上组功能类似,注意,由于可能对一个格子进行两个方向的探测,所以我这里横向和竖向采取的是两个计分板。
指令EP2:
这是第二组的效果图。
  注意,这里其实是两个计分板,所以为了方便下方的计算,我们需要将其并为一个计分板,所以沿线路你们能看到以下类似指令。
  /scoreboard players set @e[score_f4_min=1] kill 1
  那么这里,我再声明一下计分板的作用,f1是第一个棋子的第一层探索,而f2是第二个的第一层探索。
  那么接下来你会看到这部分的电路,
  这里执行的指令我会依次解释。
  scoreboard players set @e[score_f1_min=1,score_f2_min=1,c=1] sc 5
  这条指令是探测只有一次拐弯的情况,标记唯一一个拐点为5,注意,这里有一个c=1的选择器,这样可以确保唯一路径,下文同理。
  execute @e[score_r=1,score_r_min=1] ~ ~ ~ scoreboard players set @e[score_kill_min=1,score_f1_min=1,c=1] sc 2
  这条指令是探索两次拐弯的情况,同时标记第一个拐点。
  execute @e[score_sc=5,score_sc_min=5] ~ ~ ~ scoreboard players set @e[score_sc_min=1,score_sc=4] sc 0
  这里是分类情况,所有的连连看都有三种情况,一次拐弯,两次,或者不拐弯。不拐弯的情况其实可以忽略,因为总会被处理为一次拐弯的情况,而一旦有了一次拐弯的情况就不会再处理两次拐弯的情况,以获取最佳路径。
  execute @e[score_sc=2,score_sc_min=2] ~ ~ ~ /scoreboard players set @e[dx=0,dy=10,type=ItemFrame,score_kill1_min=1,score_f2_min=1] cut 1
  execute @e[score_sc=2,score_sc_min=2] ~ ~ ~ /scoreboard players set @e[dx=10,dy=0,type=ItemFrame,score_kill1_min=1,score_f2_min=1] cut 1
  execute @e[score_sc=2,score_sc_min=2] ~ ~ ~ /scoreboard players set @e[dx=0,dy=-10,type=ItemFrame,score_kill1_min=1,score_f2_min=1] cut 1
  execute @e[score_sc=2,score_sc_min=2] ~ ~ ~ /scoreboard players set @e[dx=-10,dy=0,type=ItemFrame,score_kill1_min=1,score_f2_min=1] cut 1
  execute @e[score_sc=2,score_sc_min=2] ~ ~ ~ /scoreboard players set @e[c=1] cut 0
指令EP3:
这一组指令的作用实际上是第一个拐点寻找其对应的第二个拐点,原理与前文相似,是十字形探索。
  execute @e[score_sc=2,score_sc_min=2] ~ ~ ~ /scoreboard players set @e[score_cut=1,score_cut_min=1,c=1] sc 3
  这是标记第二个拐点的指令。
  最后这里就是标记路径的指令,其工作原理与第一次探索相同,但略微有点区别。
  execute @e[score_r=2,score_r_min=2] ~ ~ ~ execute @e[dx=0,dy=-10,score_sc=3,score_sc_min=3] ~ ~ ~ /scoreboard players set @e[dx=0,dy=10,type=ItemFrame] line2 1
  唯一的区别是前方加了一个exe的嵌套,这样能够限制住方向,只有这个方向有可以连接的另一个拐点,才会往这个方向探索。
  最后我们只需要将带有line1-5的计分板的展示框exe再执行一个粒子指令就好。
  execute @e[score_r=2,score_r_min=2] ~ ~ ~ execute @e[dx=0,dy=-10,score_sc=3,score_sc_min=3] ~ ~ ~ /scoreboard players set @e[dx=0,dy=10,type=ItemFrame] line2 1
然后- -没了,看着办吧!我只是一名默默的搬运者
我是一名好人,也是一名对甘小蔗的指令感到发愁的人,如果大家有人不会弄,就下载地图吧emm......
>>>>>点击下载<<<<<
详细介绍:
该地图仅为技术性地图,不过其实再修一下就可以做游戏地图了。
注意事项:
1,操作方法全程右键,按下下图中红色箭头标示出的按钮以重新开局。
2,扔雪球可以roll地图,以防无解情况(这里如果计算无解自动roll是很难实现的,会相当卡顿),请勿将雪球砸到展示框上。
3,请勿在右键标记某个方块之后重新开始或者roll,无法取消选择(我懒)。4,慢点玩。。。请在系统“hi”过之后再进行下一组的选择。
下面上图。
此处空白
此处空白
此处空白
此处空白
此处空白
此处空白
此处空白
此处空白
此处空白
此处空白
此处空白
亲进入评论区
额。。。。。
886,,,,,,,,,我还要寻找搬运素材
搬运贴福利时间!:
材质包介绍:
  绿色的滑稽为红砖
  蓝色的滑稽为铁锭
  红色的滑稽为金锭
  钻石剑、金剑、铁剑加滑稽、加字(游戏内看加字内容)
  钻石稿、金稿、铁镐加滑稽、加字(游戏内看加字内容)
  木棍为“飞翔的滑稽”
  熟猪排修改
  牛排真实贴图
  胸甲加滑稽
  药水滑稽蓝月亮
  空瓶子黑白蓝月亮滑稽
  平滑砂石 前方高能滑稽
  弓 滑稽弓
  箭 滑稽箭
  金苹果 滑稽图
  生存物品栏 加滑稽
  加载图修改
  背景图修改
  太阳滑稽血量条 饥饿度 滑稽化
  粒子效果:打人 射箭 滑稽化

10

主题

39

帖子

20

积分

Lv.2 石器学徒

UID
780323
小麦
0
金锭
78
下界之星
0
 楼主| 发表于 5 天前 | 显示全部楼层
哎呀!技术水链接!我不信息!在发版本:1.8.x 如果链接没用。。。。看下个消息,此消息为EP1

10

主题

39

帖子

20

积分

Lv.2 石器学徒

UID
780323
小麦
0
金锭
78
下界之星
0
 楼主| 发表于 5 天前 | 显示全部楼层
,,,,,才补一个链接https://pan.baidu.com/s/1qWOdPG4 网盘下载密码:tz0k

10

主题

39

帖子

20

积分

Lv.2 石器学徒

UID
780323
小麦
0
金锭
78
下界之星
0
 楼主| 发表于 5 天前 | 显示全部楼层
搬运贴福利:中文名称:滑稽小游戏
  材质包版本:1.8
  我的世界材质包安装教程:
  我的世界材质包怎么用:先下载跟你版本一致的材质包。32位以上的需要高清材质补丁。然后进入游戏。按ESC选择材质包。点击右下角的打开所在文件夹。就是放材质包的位置了。然后把材质包放进去就行了。注意别解压啊。
  材质包放在哪:进入游戏。按ESC选择材质包。点击右下角的打开所在文件夹。就是放材质包的位置了。把你下载的材质包拖进你打开的那个文件夹就行了。
  链接: https://pan.baidu.com/s/1gePjJs3
密码: 3zwh

-----------------------------------
材质包介绍:
  绿色的滑稽为红砖
  蓝色的滑稽为铁锭
  红色的滑稽为金锭
  钻石剑、金剑、铁剑加滑稽、加字(游戏内看加字内容)
  钻石稿、金稿、铁镐加滑稽、加字(游戏内看加字内容)
  木棍为“飞翔的滑稽”
  熟猪排修改
  牛排真实贴图
  胸甲加滑稽
  药水滑稽蓝月亮
  空瓶子黑白蓝月亮滑稽
  平滑砂石 前方高能滑稽
  弓 滑稽弓
  箭 滑稽箭
  金苹果 滑稽图
  生存物品栏 加滑稽
  加载图修改
  背景图修改
  太阳滑稽血量条 饥饿度 滑稽化
  粒子效果:打人 射箭 滑稽化

10

主题

39

帖子

20

积分

Lv.2 石器学徒

UID
780323
小麦
0
金锭
78
下界之星
0
 楼主| 发表于 5 天前 | 显示全部楼层
3分钟~美到令人窒息的俄罗斯小姐姐~【砖头也可以来哦!是真经的视频,不是某片!!!不信息管理员可以检查链接啊!】
https://www.bilibili.com/video/av19924064

10

主题

39

帖子

20

积分

Lv.2 石器学徒

UID
780323
小麦
0
金锭
78
下界之星
0
 楼主| 发表于 5 天前 | 显示全部楼层
给大家推荐一个视频,【影视剪辑:最后的圣殿骑士团】https://www.bilibili.com/video/av21409017

10

主题

39

帖子

20

积分

Lv.2 石器学徒

UID
780323
小麦
0
金锭
78
下界之星
0
 楼主| 发表于 4 天前 | 显示全部楼层
。。。

6

主题

348

帖子

98

积分

Lv.3 矿物能手

UID
4921490
小麦
3
金锭
364
下界之星
0
发表于 4 天前 | 显示全部楼层
网易无法使用自己的材质包!只能在个别服务器或房间可以使用!!
QwQ兄弟没人回复的嘛??下一期做啥啊……
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

返回顶部