다른 언어: Deutsch English 日本語 Русский 简体中文

콘솔

From Official Factorio Wiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

개요

콘솔은 팩토리오의 명령어 체계이다.

게임 내에서 콘솔은 다음과 같이 사용된다:

  • 다른 플레이어와 채팅을 할 때
  • 커맨드 / 스크립트 / 치트를 사용할 때
  • 수치 조정이 필요할 때

커맨드는 다음과 같이 세 종류가 있다:

  • 일반 - 현재 게임과 설정에 관한 정보를 보여준다.
  • 멀티플레이 - 메시지 필터링, 플레이어 밴 등.
  • 스크립트/치팅 - Lua 스크립트를 실행한다 (실행하면 해당 게임에서는 업적을 달성할 수 없게 된다)

콘솔 사용

콘솔은 / (slash) 나 ~ (tilde) 키를 누르면 활성화 된다.


옵션 → 조작 → Lua 입력창 표시 전환(우측하단)에서 키를 변경할 수 있다. 콘솔창에 메시지나 커맨드를 입력하고 엔터를 누르면 콘솔 창이 닫히며 메시지를 보낼 수 있다. 메시지나 커맨드에 대한 내용은 문서 아래에서 찾을 수 있다.

콘솔이 입력되며 창이 닫히면 가장 최근의 메시지/커맨드가 표시되고, 곧 화면에서 사라진다. 또한, 콘솔창을 열면 최근 메시지가 바로 표시된다. 기본적으로, 커맨드는 보든 유져에게 보인다. 옵션 → 인터페이스 → 채팅 메시지 지연에서 사라지는 시간을 조절할 수 있다.

콘솔창을 즉시 닫고 싶으면 EscEnter 를 누르면 된다. 입력 없이 콘솔창이 닫히면 메시지/커맨드 또한 바로 사라지게 된다 /clear를 입력하면 콘솔창이 청소된다.


콘솔 기록

콘솔에 입력한 내용은 저장이 되는데, 한 번에 한 줄만 보여진다.

또는 키로 콘솔 기록을 스크롤 할 수 있다.

또는 키로 콘솔의 커서를 움직여 편집, 삭제 등을 할 수 있다.

Tab 키로 자동완성을 할 수 있다.


일반 커맨드

커맨드 사용 예시 설명 호스트 전용
/alerts <enable/disable/mute/unmute> <alert> /alerts disable turret_fire 퀵 바 오른쪽에 뜨는 경고메시지에 대한 음소거를 켜고 끈다. No
/clear /clear 콘솔창을 깨끗하게 한다. No
/color <color> /color 20 255 255 100 RGBA 수치에 따라 색을 변경한다. 또는 주어진 색으로 변경할 수 있다 : 기본, 적, 녹, 청, 오렌지, 황, 핑크, 보라, 백, 흑, 회, 갈, 청록, 에시드(녹색계열) No
/evolution /evolution 몬스터 진화 정보를 표시한다. No
/help [command] /help 유효한 커맨드 리스트를 출력한다. 뒤에 커맨드를 입력하면 커맨드에 대해 설명한다. No
/h [command] /h /help 와 같다. No
/mute-programmable-speaker <mute/unmute> <local/everyone> /mute-programmable-speaker mute local 모든 소리를 끄거나 켠다. 참가자는 본인만 가능하고, 호스트는 서버 내 전체를 설정할 수 있다. No
/permissions /permissions 사용권한 창을 연다. Yes
/seed /seed 맵 시드를 출력한다. No
/time /time 현재 게임의 플레이 타임을 출력한다. No
/toggle-rockets-sent-gui /toggle-rockets-sent-gui 좌측 상단에 로켓 발사에 대한 통계를 표시를 켜고 끈다. No
/version /version 현재 게임 버전을 출력한다. No


멀티플레이 커맨드

커맨드 사용 예시 설명 호스트 전용
<message> Hello team! / 로 시작하지 않는 모든 메시지를 서버 내 유져(혹은 팀)에게 보여준다. No
/admins /admins 호스트 아이디를 출력한다. No
/ban <player> <reason> /ban xTROLLx Throwing grenades in base 지정 유져를 추방한다. 아이디 뒤에 이유를 적으면 이유가 함께 표시된다. Yes
/banlist <add/remove/get/clear> <player> /banlist get 추방 목록에 유저를 더하거나 뺀다. /ban 이나 /unban 과 같다. No
/config <get/set> <option> <value> /config set password hunter2 다양한 멀티플레이용 세팅을 설정한다. 가능한 설정 커맨드: afk-auto-kick, allow-commands, allow-debug-settings, autosave-interval, autosave-only-on-server, ignore-player-limit-for-returning-players, max-players, max-upload-speed, only-admins-can-pause, password, require-user-verification, visibility-lan, visibility-public. Yes
/delete-blueprint-library <player> /delete-blueprint-library everybody confirm 보관중인 청사진을 삭제한다. everybody confirm”를 입력하면 모든 오프라인 사용자의 청사진을 삭제한다. Yes
/demote <player> /demote AzureDiamond 유저의 호스트 권한을 박탈한다. Yes
/ignore <player> /ignore Cthon98 지정 유저의 채팅을 금지시킨다. No
/ignores /ignores 채팅금지 목록을 표시한다. No
/kick <player> <reason> /kick xTROLLx Throwing grenades in base 특정 유저를 추방한다. Yes
/mute <player> /mute Cthon98 특정 유저의 채팅이 보이지 않는다. Yes
/mutes /mutes 공개 채팅을 끈다. No
/open <player> /open AzureDiamond 다른 유저의 인벤토르를 연다. Yes
/o <player> /o AzureDiamond /open 과 같다. Yes
/players [online/o/count/c] /players 게임 안의 유저 목록을 표시한다. No
/promote <player> /promote AzureDiamond 지정 유저에게 호스트 권한을 부여한다. Yes
/purge <player> /purge Cthon98 지정 유저가 채팅한 내용을 채팅 기록에서 삭제한다. Yes
/reply <message> /reply oh, really? 귓속말이 오면 대답한다. No
/r <message> /r oh, really? /reply 와 같다. No
/server-save /server-save 멀티플레이 게임을 서버에 저장한다. Yes
/shout <message> /shout Hello world! 모든 유저에게 메시지를 보낸다. No
/s <message> /s Hello world! /shout 와 같다. No
/swap-players <player> [player] /swap-players AzureDiamond 입력한 유저와 위치를 바꾼다. 두 유저를 입력하면 두 유저의 위치가 서로 바뀐다. Yes
/unignore <player> /unignore Cthon98 지정 유저의 채팅무시를 해제한다. No
/unmute <player> /unmute Cthon98 지정 유저의 채팅금지를 해제한다. Yes
/whisper <player> <message> /whisper AzureDiamond thats what I see 지정 유저에게 귓속말을 보낸다. No
/w <player> <message> /w AzureDiamond thats what I see /whisper 와 같다. No
/whitelist <add/remove/get/clear> [player] /whitelist get 귓속말 목록에 지정 유저를 더하거나 뺀다. No


스크립트 및 치트 커맨드

커맨드 설명
/c <command> 치트 실행.
/command <command> 치트 실행.
/measured-command <command> 치트를 실행하고, 실행에 걸리는 시간을 표시.
/silent-command <command> 콘솔에 메시지 없이 치트 실행.

치트를 사용하면 해당 게임에서는 업적을 달성할 수 없게 된다.


기본 스크립트

계산기

/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()

모든 연구 초기화

제작 가능한 아이템도 초기화 된다. (게임 시작 상태)

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

수치 초기화

킬 수, 생산 및 제작 수 등, 모든 수치를 초기화 한다.

/c game.player.force.reset()

줌 거리 설정

줌 배율을 설정한다. 배율이 너무 낮으면 마우스가 안먹는다.

/c game.player.zoom=0.1


인벤토리 조작 스크립트

자원 채워넣기

기존에 자원이 있던 위치에 마우스를 위치하고 명령어를 입력하면 해당 수치만큼 자원바뀐다. 자원이 없는 곳에 생성은 안되며, 자원이 더해지는 것이 아닌 입력한 수치로 바뀐다.

/c game.player.selected.amount=7500

인벤토리에 아이템 추가

철판(iron-plate) 대신 원하는 다른 내부 이름 과 갯수를 입력하면 된다.

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

치트모드

모든 아이템을 무료로, 즉시 만들 수 있다.

/c game.player.cheat_mode=true


맵 관련 스크립트

플레이어 주변 밝히기

플레이어의 시야를 넓힌다

/c local radius=150
game.player.force.chart(game.player.surface, {{game.player.position.x-radius, game.player.position.y-radius}, {game.player.position.x+radius, game.player.position.y+radius}})

시작지점을 중심으로 지정 범위만큼 밝힌다

/c game.forces.player.chart(game.player.surface, {{x = -2000, y = -2000}, {x = 2000, y = 2000}})

밝혀진 맵이 넓어질수록 세이브 파일의 용량이 커진다.


시간 변화 옵션 끄기

낮으로 고정한다.

/c game.player.surface.always_day=true

게임 속도 조절

1이 기본이며 최소 0.01 이다.

/c game.speed=X

마라톤 / 기본 게임 설정

기본 게임에서 마라톤 모드로 바꾼다.

/c game.difficulty_settings.recipe_difficulty=1
game.difficulty_settings.technology_difficulty=1
game.difficulty_settings.technology_price_multiplier=4

기본 게임으로 바꾼다.

/c game.difficulty_settings.recipe_difficulty=0
game.difficulty_settings.technology_difficulty=0
game.difficulty_settings.technology_price_multiplier=1

시간 고정

낮시간으로 고정된다.

/c game.player.surface.freeze_daytime=true

공해 제거

/c game.player.surface.clear_pollution()

공해 추가

/c game.player.surface.pollute(game.player.position, 1000000)

내 건물에 내 공격 무효

수류탄이나 미사일 등으로 공격할 때, 내 공격으로 인해 내 건물이 피해를 입지 않는다.

/c game.player.force.friendly_fire = false

새로운 자원타일 깔기

물이 아닌 빈 지형 위에 11×11 사이즈의 새 자원을 만든다. 정사각형으로 생성되며, 중심에서 멀어질수록 자원 양이 적어진다. 아래 기본으로 주어진 커맨드로 생성 시 채집가능한 총 자원량은 2500-3000 이다.

넓게 많들고 싶으면 "local size = 5" 의 숫자를 높이면 된다. 바닐라 자원 크기도 제일 커봐야 30정도 이다.

자원량을 수정하고 싶으면"local density = 10" 의 숫자를 높이면 된다. 매우 풍부는 100 내외이다.

자원 종류는 맨 아랫줄(end 빼고) "stone" 을 철광석 "iron-ore", 구리광석"copper-ore", 석탄 "coal", 우라늄 "uranium-ore" 으로 바꾸면 된다.

/c local surface=game.player.surface
local ore=nil
local size=5
local density=10
for y=-size, size do
	for x=-size, size do
		a=(size+1-math.abs(x))*10
		b=(size+1-math.abs(y))*10
		if a<b then
			ore=math.random(a*density-a*(density-8), a*density+a*(density-8))
		end
		if b<a then
			ore=math.random(b*density-b*(density-8), b*density+b*(density-8))
		end
		if surface.get_tile(game.player.position.x+x, game.player.position.y+y).collides_with("ground-tile") then
			surface.create_entity({name="stone", amount=ore, position={game.player.position.x+x, game.player.position.y+y}})
		end
	end
end

새로운 원유 타일 깔기

3 x 3 사이즈로 9개의 원유타일이 생성된다. 매장량 변경은 amount=50000 부분의 숫자를 수정하면 된다.

/c for y=0,2 do
	for x=0,2 do
		game.player.surface.create_entity({name="crude-oil", amount=50000, position={game.player.position.x+x*7-7, game.player.position.y+y*7-7}})
	end
end

사각형이 아닌 무작위 위치로 깔고 싶다면:

/c local position=nil
for i=1,9 do
	position=game.player.surface.find_non_colliding_position("crude-oil", game.player.position, 0, i/2+1.5)
	if position then 
		game.player.surface.create_entity({name="crude-oil", amount=50000, position=position})
	end
end

숫자 세기

단어가 포함된 모든 아이템의 갯수를 세서 보여준다 예를 들어, belt 를 넣으면 일반 운송벨트 뿐만 아니라 빠른 운송벨트, 고속 운송벨트를 모두 센다. Counts all entities whose name includes the string in local entity.

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


적/진화 스크립트

진화 수치 설정

진화 수치를 0(새 게임)에서 1사이의 숫자를 넣어 설정한다.

/c game.forces["enemy"].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 local surface=game.player.surface
for key, entity in pairs(surface.find_entities_filtered({force="enemy"})) do
	entity.destroy()
end

평화모드 켜고 끄기

true 로 켜고 false 로 끈다.

/c game.player.surface.peaceful_mode = true

바이터 확장 켜고 끄기

true 로 켜고 false 로 끈다.

/c game.map_settings.enemy_expansion.enabled = true


플레이어 캐릭터 스크립트

플레이어 위치 보기

현재 플레이어의 좌표를 출력한다.

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

플레이어 텔레포트

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

0, 0을 넣으면 시작지점으로 이동한다.

신 모드 활성화

캐릭터를 조종하지 않고 자유로운 시점 이동이 가능하다

/c game.player.character=nil

현재 시점에 조종 가능한 새로운 캐릭터를 생성한다.

/c game.player.create_character()


연구 스크립트

빠른 연구 활성화

/c game.player.force.laboratory_speed_modifier=1

숫자에 따라 배로 늘어난다. (2=두 배, 3=세 배)


모든 연구 끝내기

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