矿物种类较多的Mod经常会发生多种矿物生成区域重叠的情况,导致矿区难以利用。
可以通过控制台指令,将一定半径内的所有某种类矿物替换为另一种来让矿区统一。也可以直接替换整片矿区,例如将一整片铜矿替换为铬矿等。
/c local surface=game.player.surface
local size=200
local pos=game.player.position
for _, e in pairs(surface.find_entities_filtered{area={{pos.x-size, pos.y-size},{pos.x+size, pos.y+size}}, name="ore-zinc"}) do
surface.create_entity({name="ore-aluminium", amount=e.amount, position=e.position})
e.destroy()
end
执行后,玩家周围半径200内的锌矿将被替换为等藏量的铝矿。可以通过修改第二行local size=200
的数值调整半径大小。
此外,如果当前矿区藏量过小,也可以通过控制台指令直接批量调整当前矿区的矿物藏量。
/c local surface=game.player.surface
local size=200
local pos=game.player.position
for _, e in pairs(surface.find_entities_filtered{area={{pos.x-size, pos.y-size},{pos.x+size, pos.y+size}}, name="ore-aluminium"})
do e.amount = e.amount *2
end
执行后,玩家周围半径200内的铝矿藏量将翻倍。也可以直接替换倒数第二行的e.amount =
后的数值为自己想要的数值,例如e.amount = 1000000
。或令其每一格藏量均在一定范围内随机取值,例如e.amount = math.random(800000, 1200000)
最后,可以直接通过控制台指令删除周围不需要的矿场,例如
/c local surface=game.player.surface
local size=200
local pos=game.player.position
for _, e in pairs(surface.find_entities_filtered{area={{pos.x-size, pos.y-size},{pos.x+size, pos.y+size}}, name="ore-aluminium"})
do e.destroy()
end
执行后,半径200内的所有铝矿将会被删除,不会影响其他种类的矿物、原油等资源。
如欲无视种类删除周围一定半径内的所有资源,可将name="ore-aluminium"
替换为type="resource"
。执行后,将会直接删除半径200以内的所有种类资源,但是不会移除火车、工厂、铁路等实体。
查找矿物名的方法:
游戏中按下 F4,调整设置并勾选 show-debug-info-in-tooltips。随后按下 F5 进入调试输出界面,即可在最下方的 “调试” 栏处找到鼠标当前指向矿物的内部名。