找回密码
 立即注册→加入我们

QQ登录

只需一步,快速开始

搜索
热搜: 下载 VB C 实现 编写
查看: 2612|回复: 4

【VB】图像转mc存档Schematic工具 Image2Schematic

[复制链接]
发表于 2019-8-17 01:44:39 | 显示全部楼层 |阅读模式

欢迎访问技术宅的结界,请注册或者登录吧。

您需要 登录 才可以下载或查看,没有账号?立即注册→加入我们

×
本帖最后由 套路 于 2020-2-20 21:22 编辑

最近突然想使用之前站长做的Wool Fill,然后发现生成的命令惊人的长。然后尝试各种方法修改啊:用命令方块OOC(Only One Command),命令方块字符有上限最多为64K、用sh文件啊,还要用Linux(我不想用)和mc的服务器端...
修改转成Schematic多简单啊,用MCEdit导入就成了,所以我就修改了Wool Fill。
...
  • Schematic格式

        其实Wiki上有Schematic文件格式
        但是我使用MCEdit-Unified导出发现Schematic格式是这样的
Schematic格式.jpg
        那么我们就用这个格式吧
  • 原理

         知道了格式接下来就好做了。
通过VB的Open函数,将数据写入文件,再通过同目录下的gzip.exe压缩,最后重命名为Schematic文件即可用MCEdit打开。
通过立体坐标计算那么坐标为(X,Y,Z)的方块位于第(Y - 1) * (BmpWidth * BmpHeight) + ( Z - 1) * BmpWidth + X
个数据内(BmpWidth 和 BmpHeight为总的长和宽),只要在这个位置写入Block数据和Data数据就可以了。

值得注意的是,在VB写入文件时,方块等数据不能使用Chr,这是因为Chr的Acsii编码超过128的都会被翻译成"?",所以需要通过写入Binary文件,调用CByte来写入文件。
ScreenShot.png


PS:MCEdit-Unified最后支持的MC版本为1.11,然后作者弃坑,向MCEdit2发展。而此工具生成的是MCEdit-Unified支持的格式,所以我删掉了1.12的版本的调色板。

  • 下载地址

Image2Schematic
MCEdit-Unified
回复

使用道具 举报

发表于 2019-8-18 16:07:30 | 显示全部楼层
画质感人。这颜色相似度算法怕不是有问题
回复 赞! 靠!

使用道具 举报

 楼主| 发表于 2019-8-18 17:49:45 | 显示全部楼层
0xAA55 发表于 2019-8-18 16:07
画质感人。这颜色相似度算法怕不是有问题

这个是mcedit1的最后一个版本支持版本为1.11,所以用不了1.12的调色板。然后这是个用平面调色板生成的...之后再慢慢做mcedit2的版本和一些优化吧..
回复 赞! 靠!

使用道具 举报

发表于 2019-8-24 07:55:23 | 显示全部楼层
(是IA我死了
回复 赞! 靠!

使用道具 举报

发表于 2019-11-7 08:49:19 | 显示全部楼层
:P
回复 赞! 靠!

使用道具 举报

本版积分规则

QQ|Archiver|小黑屋|技术宅的结界 ( 滇ICP备16008837号 )|网站地图

GMT+8, 2024-6-21 21:06 , Processed in 0.092114 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表