<insert name here>
这篇文章需要翻译。你可以帮助异星工厂中文维基来 翻译它
这篇文章需要改进。你可以帮助异星工厂中文维基来 编辑它
模板:Languages

概述

游戏中的控制台用于:

  • 与其他玩家聊天
  • 运行命令/脚本/作弊器
  • 偶尔的状态更新

有三种类型的命令:

  • 多人游戏 - 消息过滤,禁止用户等
  • 信息 -显示游戏的各种信息
  • 脚本/作弊器 - 运行小的Lua脚本(但是他们不能保存游戏)

使用控制台

可以使用/或者~键进行切换控制台。

可以通过选项菜单 -> 键盘 ->切换Lua控制台指定按键。

当控制台被打开,你会在屏幕底部看到的一个闪烁的光标,输入你的消息或命令,并点击返回进行发送(这也将关闭控制台)。关于消息和命令前缀可在本页进一步了解。

当控制台关闭,只会显示最新消息/命令,但它们会逐渐消失(打开控制台将立即显示所有最近的消息)。

通过选项菜单 ->其他设置->信息延迟你可以设置淡出时间。

如果你想立即隐藏控制台,打开控制台,然后按“退出”键(或按回车键,不输入任何消息/命令)。这不仅关闭控制台,也隐藏了所有最近的消息/命令。

异星工厂0.14.5及以后的版本,可以使用/clear命令关闭控制台。

控制台历史

控制台有一个内置的历史,它有些像文本编辑器,一次只能显示一行文本。

使用向上向下键查看控制器历史。

使用向左向右键 查看当前信息和命令,可以编辑(删除,插入等)和重新发送(按回车).

异星工厂0.14.5及以后的版本,Tab键将自动完成命令和玩家的ID。

多人聊天

向特定玩家发送私人信息输入/whisper (或者 /w):

/whisper <playerId> <message>

回复最新收到的私人信息输入/reply (或者 /r):

/reply <message>

异星工厂 0.14.4及以后的版本,群聊工作方式如下:

hello my team!
/s hello all players!
/shout same as /s

异星工厂0.14.3及更早的版本,群聊工作方式如下:

hello all players!
/team hello my team!

这些都是主要的聊天功能,有选项禁止,忽略和静音的玩家;通过控制台/help查看完整列表。


命令

查看所有可用的命令列表,在控制台输入/help (或/h), 可用的命令取决于异星工厂的版本和游戏设置。

/help

异星工厂0.14.4及以后的版本,/help命令将只显示一个命令列表,/help(或者/h)输入命令名称(无斜线),例如,你想查阅/evolution命令,你可输入:

/h evolution

脚本和作弊命令

通过控制台你可以运行Lua脚本命令。它的工作方式类似于任何命令行界面或浏览器的JavaScript控制台。

这是个很强大的功能,可用于作弊,使用脚本命令成就保存将永久禁用

运行脚本,在它之前加前缀/command(或 /c),例如:

/c game.player.print 'hello me!'

多人游戏中,该命令会在所有玩家屏幕上显示(他们会知道你是否在作弊)。

异星工厂0.14.5及以后的版本,多人游戏服务器管理员使用/silent-command (只能通过RCON/服务器控制台)恶如不是/c避免该命令被所有用户知道。

/silent-command game.player.print 'only admins can use (and see) silent commands'

Mod开发商使用/measured-command,这很像/c,但是该命令运行需要很长时间,对于脚本性能优化很有用。

/measured-command game.player.print 'how much time does this take to run?'

在控制台中粘贴“小脚本”时,忽略换行符,这使得脚本可以以人类可读的形式编辑或复制/粘贴到控制台中,方便理解和编辑。

你可以删除任何Lua命令,就像删除Lua程序 - 异星工厂Mods几乎没有Lua命令。因此你不需要“作弊”,因为控制台允许玩家进入游戏内部,你只需要熟悉命令和类型,以下面例子和Modding片段展示。

基本命令示例

作为计算机使用

/c game.player.print(1234 * 5678)

开采提速

/c game.player.force.manual_mining_speed_modifier=1000

合成提速

/c game.player.force.manual_crafting_speed_modifier=1000

解锁和研究所有科技

/c game.player.force.research_all_technologies()

撤销:

for _, tech in pairs(game.player.force.technologies) do tech.researched=false end

恢复默认设置

包括科技和速度改变。

/c game.player.force.reset()

缩放超过正常范围

注意缩放太远会导致性能问题。

/c game.player.zoom = 0.1


库存操作

补充资源(补充油,贴等)

在游戏中,将光标按在一个资源格上

/c game.player.selected.amount=7500

向玩家库存添加物品

用物品所需的内部名称替换铁板。

/c game.player.insert{name="iron-plate", count=100}

作弊模式

允许无限自由合成。用虚假替代真实进行禁用。

/c game.player.cheat_mode=true


世界操作

消除夜晚

使游戏只有白天。

/c game.surfaces[1].always_day=true

改变游戏速度

0.5是二分之一倍速,1是默认值,2是2倍速。这可以用来做很多事情,例如当你必须等待很长时间去完成一件事。注意,提速会造成性能下降。

/c game.speed = X

冻结时间

如果真实的时间过去可冻结时间,如果没有可以解除冻结。

/c game.player.surface.freeze_daytime(BOOL)

添加新的资源补丁

以玩家为中心,创造一个新的5x5的资源补丁,对于除了石头以外的资源,只需将"stone"改为"iron-ore","copper-ore"或者"coal"。

/c local surface = game.player.surface;
for y=-2,2 do
 for x=-2,2 do
  surface.create_entity({name="stone", amount=5000, position={game.player.position.x+x, game.player.position.y+y}})
 end
end

计数单位

计算名字带有本地实体字符串的所有实体。

/c 
local entity = "belt"
local surface = game.player.surface
local count = 0
for c in surface.get_chunks() do
  for key, entity in pairs(surface.find_entities_filtered({area={{c.x * 32, c.y * 32}, {c.x * 32 + 32, c.y * 32 + 32}}, force= game.player.force})) do
    if string.find(entity.name,entity) then
      count = count + 1
    end
  end
end
game.player.print(count)
end

敌人/进化

检查食人虫进化进程

注意不以"/c"开头的命令不能禁用成就。

/evolution

设置进化因素

范围从0 (新游戏)到1。

/c game.evolution_factor=X

禁用基于时间的进化&提升基于污染的进化

/c game.map_settings.enemy_evolution.time_factor = 0
/c game.map_settings.enemy_evolution.pollution_factor = game.map_settings.enemy_evolution.pollution_factor * 2

最后命令后面的“2”是2倍默认污染因素,可以设置其他数值提高或降低污染因素。

杀死所有“敌方”势力的虫子

注意这只会杀死移动的单位和沙虫,虫巢不会被杀死。

/c game.forces["enemy"].kill_all_units()

杀死所有敌对生物

食人虫,基地和沙虫以及所有敌人的单位都会被杀死。这只会影响位于已探索世界的敌人,在地图上待探索的部分敌人仍然存在。

/c local surface = game.player.surface
for c in surface.get_chunks() do
   for key, entity in pairs(surface.find_entities_filtered({area={{c.x * 32, c.y * 32}, {c.x * 32 + 32, c.y * 32 + 32}}, force= "enemy"})) do
       entity.destroy()
   end
 end

启用和平模式

在此模式下,虫子只会在被激怒的情况下才会发起攻击。

/c game.player.surface.peaceful_mode = true

禁止虫子扩张

禁止虫子制造新的虫巢。

/c game.map_settings.enemy_expansion.enabled = false

玩家角色

直接关于玩家的命令。

玩家定位

确定你当前位置的坐标。

/c game.player.print({"", "(", game.player.position.x, ", ", game.player.position.y, ")"})

玩家传送

向指定地点传送玩家。如果通过他们执行前一个命令获取他们的位置,你可以传送指定的玩家到你指定的地方。

/c game.player.teleport({X, Y})

传送到世界的起源,使用0,0。

产生一个玩家角色

在逃避上帝模式方面很有用。(使用上帝模式)。在世界的产生点产生一个可受控制的新玩家。

/c game.player.character = game.player.surface.create_entity{name="player", position = {0,0}, force = game.forces.player}

改变玩家颜色

注意,注意不以"/c"开头的命令不能禁用成就。使用颜色的名称替换COLOR。

/color COLOR

使用上帝模式

上帝模式允许你的角色飞跃障碍,不受伤害。

脱离玩家的控制:

/c game.player.character = nil

将鼠标悬浮在无用的玩家上,输入下列内容摧毁它:

/c game.player.selected.destroy()


研究

提升研究速度

/c game.player.force.laboratory_speed_modifier = 1

1是正常速度,2是2倍速。3是3倍速。我希望可以达到100。

使用特殊技术

使用技术 (论坛)

/c game.player.force.technologies['electric-energy-distribution-1'].researched=true
/c game.player.force.technologies['steel-processing'].researched=true

立即结束研究

/c for name,technology in pairs(game.player.force.technologies) do technology.researched=technology.enabled end

大屏幕截图

你可以获取一个大的HD截图,使用你想要的数值替换X和Y。

该文件被放在名为"script-output"的文件夹, 与文件夹在相同位置。截图可以相当大。

/c game.take_screenshot{resolution = {x = XPOS, y = YPOS}}

或者

/c game.take_screenshot{showgui = true, resolution = {x = XPOS, y = YPOS}}


命令行参数

0.12.7游戏版本

命令行参数可以用来在游戏开始前用来设置命令行,这主要用于高级用户或服务器主机。

通用选项:

 -h [ --help ]                     display help
 --wait-to-close arg               Wait until the specified process finishes.
 --version                         show version information
 -c [ --config ] PATH              config file to use

运行选项:

 -s [ --map2scenario ] arg         map to scenario conversion
 -v [ --convert ] SAVE[, SAVE...]  convert maps from previous versions to current version
 --apply-update arg                immediately apply update package
 --create SAVE                     create a new map
 --start-server SAVE               start a multiplayer server
 --mp-load-game SAVE               start factorio and load game for multiplayer
 --mp-connect ADDRESS              start factorio and connect to address
 --benchmark SAVE                  load save and run benchmark
 --benchmark-ticks N (=1,000)      number of ticks for benchmarking. Default is 1000

服务器选项:

 --latency N                       multiplayer server latency, in ticks
 --latency-ms N                    multiplayer server latency, in milliseconds
 --autosave-interval N (=2)        server autosave interval, in minutes
 --autosave-slots N (=3)           server autosave slots
 --disallow-commands               disallow use of the command console
 --peer-to-peer                    use peer-to-peer communication

多人游戏

 --start-server SAVE

无GUI,在无终端(专用)服务器开始。

 --mp-load-game SAVE

SAVE是保存文件的文件名,例如saves/MySave.zip: ./factorio --mp-load-game MySave.zip

 --mp-connect ADDRESS

地址是IP:远程主机的端口。端口是可选的。 例如:

 ./factorio --mp-connect 192.168.1.101
 ./factorio --mp-connect 192.168.1.101:2345

如上所述,端口可由地址中冒号后的端口数字指定。

 --map2scenario SAVE

将一个保存游戏转换为用户剧情,允许保存的游戏状态加载到地图编辑器。假设保存的游戏名为"foo.zip",执行'./factorio --map2scenario s1',将会进行异星工厂加载,打开保存文件,将剧情保存在剧情文件夹中。


参见

5.0
1人评价
avatar