Mindustry(像素工厂)控制台部分命令

您所在的位置:网站首页 mindustry逻辑图片 Mindustry(像素工厂)控制台部分命令

Mindustry(像素工厂)控制台部分命令

2024-07-14 00:20| 来源: 网络整理| 查看: 265

在游戏设置中,最底部有一个控制台的选项,打开之后在电脑端游戏中可以在任意界面按f8呼出控制台,之前没怎么深究过,以为是类似于mc或者服务端控制台一样。在尝试输入help也会报错后,才意识到,Mindustry的控制台本质是执行js,所以只要按照js语法结合游戏内部分内容输入,就能得到正常响应。下面我会分享一些测试有效的代码。

开启控制台:

PC端进入 "设置" --> "游戏" ,在最底部就能发现 "启用控制台" 这个选项,开启这个选项之后按下f8就能呼出控制台了,此时只需输入任意js代码就能回车执行

移动端貌似没办法正常打开控制台,只能通过mod的方式来打开。在刚进入游戏时的主界面点击 "模组" ,在模组浏览器中搜索 "New Console" 并安装,返回后会要求你重启游戏,重启之后就能看到一个可以拖动的悬浮控制台按钮了,点击它就能打开控制台了

"New Console"这个mod在PC端也能安装,并且附带几个代码和其它功能,可操作性比原版控制台高,个人推荐使用这个

下面简单看看这个New Console,它相比原版控制台要多几个小功能

控制台界面左半边是用来输出日志的提示框,报错或成功都在这里显示。

右半边就是我们输入代码的面板了,跟原版控制台不同的是在你输入完代码之后,需要点一下 "run" 才能执行,直接按回车的话是换行。相似地,在原版控制台中按上下方向键会显示输入过的上一条或下一条代码,然而在New Console中 "prev" 和 "next" 分别为上一条和下一条。

原版控制台中想要清除日志的话,可以输入clear,但是在New Console中输入clear会报错。于是在New Console中想要清除日志的话可以点击 "clear" 按钮。

在New Console的scripts中,可以看到内置的5条代码,点击其中一条右边的绿色开始按钮就会直接执行,其中 "Toggle Infinite Resources"  就是下面也会提到的 开启 / 关闭 沙盒模式;若你在进入scripts之前输入框中已经存在可执行的代码,那你可以进入scripts后在顶栏输入这段代码的效果,然后点击左上角的 "save" 来将代码保存在scripts中,以后需要用到的话就可以直接进来点一下运行就好了。

"files" 可以打开本地存储的某个js脚本,然后运行

"events" 应该是事件监听器吧,这个我没怎么使用过,大家可以自行测试

以下是部分经过测试的代码:

将核心数据库内所有内容包括战役区块解锁(解锁全科技):

Vars.content.each(e => {

                if(!(e instanceof UnlockableContent)) return;

                e.quietUnlock();

            });

这段代码的反馈为 "undefined" ,但实际已经生效。经测试,它能解锁包括埃里克尔的所有科技,但埃里克尔的战役区块似乎不受影响

一键回到解放前    重置核心数据库(清除研究进度至零号地区或始发):

Vars.content.each(e => {

                if(!(e instanceof UnlockableContent)) return;

                e.clearUnlock();

            });

反馈同上为 "undefined" ,但会生效

开启 / 关闭 沙盒模式(无限资源,秒建造,可用于战役模式):

不建议开启,因为这会及其严重破坏玩家游戏体验

Vars.state.rules.infiniteResources = !Vars.state.rules.infiniteResources

反馈为boolean值,true为开启,false为关闭。

若本就是打开的状态,输入此代码则将关闭

开启 / 关闭 波次计时器(左上角波次显示将不再有倒计时,需手动点击来进行下一波):

Vars.state.rules.waveTimer = !Vars.state.rules.waveTimer

反馈为boolean值,true为开启,false为关闭。

若本就是打开的状态,输入此代码则将关闭

开启 / 关闭 该区域的敌人(若开启,正在被入侵的区块将直接变为 "区块已占领" ):

Vars.state.rules.waves = !Vars.state.rules.waves

反馈为boolean值,true为开启,false为关闭。

若本就是打开的状态,输入此代码则将关闭

开启 / 关闭 反应堆爆炸(关闭后应该是防止爆炸造成的大范围杀伤):

Vars.state.rules.reactorExplosions = !Vars.state.rules.reactorExplosions

反馈为boolean值,true为开启,false为关闭。

若本就是打开的状态,输入此代码则将关闭

我以钍反应堆测试时,过热仍会爆炸,但是爆炸造成的效果大大减小,原本钍反应堆爆炸在没有遮挡物的情况下会直接将大约周围12~16格包括终代核心全部直接摧毁。然而 关闭反应堆爆炸 之后钍反应堆虽还是会爆炸,但是紧挨着终代核心的它也仅能扣掉终代核心六分之一的生命值,并且爆炸波及的范围也大大缩小,并且没有燃烧效果

更改目前正在使用的单位:

let u = UnitTypes.mega;

let c = Vars.player.unit();

Vars.player.unit(u.spawn(c.team, c.x, c.y));

c.remove();

将标记为绿色粗体的 "mega" 改为其它单位的英文名称并在控制台输入,就能变成指定的单位了。

每个单位的具体英文名称可前往官方Wiki查看: https://mindustrygame.github.io/wiki/units/

Github 上的 mod, New Console:https://github.com/mnemotechnician/new-console

上述代码均参考于Github 上的 mod, Hackustry:https://github.com/QmelZ/hackustry



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3