Konsole
Allgemein
Den Chat kann man im Spiel für folgendes nutzen:
- Chatten mit anderen Spielern
- Kommandos ausführen / scripts / cheats
- Manchmal für Statusupdates
Es gibt drei Kommandotypen:
- Mehrspieler - Nachrichten banns etc.
- Informationen - zeigt verschiedene Informationen über das aktuelle Spiel.
- Scripts/Cheats - Führt einen kurzen LUA-Befehl aus (ACHTUNG: Wenn du ein Script ausführst kannst du keine Errungenschaften mehr freischalten!!!)
Benutzen der Konsole
Die Sichtbarkeit der Konsole kannst du mit / oder mit ~ ändern
Du kannst die Hotkeys via Einstellungen -> Tastaturbelegung -> Lua-Konsole öffnen ändern. Wenn du die Konsole öffnest siehst du einen blinkenden Zeiger am unterem Rand vom Bildschirm, gib deine Nachricht oder dein Kommando ein und drücke Enter um es zu senden (hierdurch schliest sich die Konsole). Eine Dokumentation über Nachrichten und Kommandos findest du weiter unten im Artikel.
Mehrspieler Chat
Privater Chat
Um private Nachrichten an einen bestimmmten Spieler zu senden musst du das Kommando /whisper oder /w
/whisper <playerId> <message>
Mit /reply oder /r kannst du dem Spieler schreiben, der dir als letztes geschrieben hat.
/reply message
Teamchat
Ab version 0.14.4 funktioert der Teamchat so:
Hallo team!
/s Hallo spieler! /shout ist das selbe wie /s
In der version 0.14.3 und früher funktioniert der Teamchat so:
Hallo Spieler!
/team Hallo team!
Das waren die Chat-Grundlagen für mehr Infos gebe /help in die Konsole ein.
Commands
Um eine Liste von allen verfügbaren Kommandos zu sehen gebe /help oder /h. Die Anzahl/Funktionen der Kommandos variieren je nach Version des Spiels.
Scripts und Cheats
Du kannst LUA-Sripte direkt in der Kommandozeile eingeben. Es ist ein sehr mächtiges Werkzeug!
Feinde/Evolutions-Skripts
Setze Evolutions-Faktor
Der Wert reicht von 0 (neues Spiel) bis 1.
/c game.forces["enemy"].evolution_factor=X
Deaktiviere Zeit basierte Evolution & Erhöhe Verschmutzungs basierte Evolution
/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
Die "2" am Ende des letzten Befehls wird den standard Veschmutzungs-Faktor verdoppeln. Du kannst eine andere Zahl einsetzen um den Verschmutzungs-Faktor weiter zu erhöhen (oder zu verringern).
Töte alle Beißer in der Feinde-Partei
Beachte das dies nur alle beweglichen Einheiten tötet, Nester werden nicht getötet.
/c game.forces["enemy"].kill_all_units()
Töte alle Feinde
Dies wird alle Beißer, Nester und Würmer töten. Alles was ein Feind ist wird vollständig zerstört. Dies betrifft nur Feinde in der generierten Welt, also werden unendteckte Teile der Karte die noch generiert werden müssen werden trotzdem Feinde enthalten. Wenn gewünscht kannst du Feinde in neu generierten Chunks verhindern.
/c local surface=game.player.surface
for key, entity in pairs(surface.find_entities_filtered({force="enemy"})) do
entity.destroy()
end
Töte alle Feinde in der Nähe
Dies wird alle Beißer, Nester und Würmer in einem konfigurierbaren Radius töten. Der Standard, 250 Kacheln, entspricht in etwa der doppelten Breite eines herausgezoomten Full-HD Bildschirms. Nach der Zerstörung wird angezeigt, wie viele Objekte zerstört wurden.
/c local surface=game.player.surface
local pp = game.player.position
local cnt = 0
for key, entity in pairs(surface.find_entities_filtered({force="enemy", radius=250, position=pp })) do
cnt = cnt+1
entity.destroy()
end
game.player.print(cnt)
Aktiviere/Deaktiviere friedlichen Modus
Der friedliche Modus verhindert Anriffe von Feinden, bis sie provoziert werden. Ersetze true durch false um ihn zu deaktivieren. Bereits existierende Feinde sind nicht von diesem Befehl betroffen, so dass Attacken noch eine Weile nach Aktivierung des friedlichen Modus andauern können.
/c game.player.surface.peaceful_mode = true
Aktiviere/Deaktiviere Feinde-Expansion
Feinde-Expansion erlabut es Feinden neue Nester zu bauen. Es ist dtandardmäßg aktiviert. Ersetze true durch false um es zu deaktivieren.
/c game.map_settings.enemy_expansion.enabled = true
Feinde in neu generierten Chunks verhindern
In neu generierten Chunks kommen keine Feinde vor, allerdings alle derzeit vorhandenen Feinde sind davon nicht betroffen. Hat den gleichen Effekt wie die Größe der Feindbasen in den Geländeeinstellungen während der Kartengenerierung zu deaktivieren, aber wird durch Ändern der Kartengenerierungs-Einstellungen während des Spiels erreicht.
/c local surface = game.player.surface
local mgs = surface.map_gen_settings
mgs.autoplace_controls["enemy-base"].size = "none"
surface.map_gen_settings = mgs
Spieler-Charakter-Skripts
Befehle, die direkt den Spieler betreffen.
Erhalte die Spieler-Position
Druckt die Koordinaten Deiner gegenwärtigen Position.
/c game.player.print(game.player.position.x .. ", " .. game.player.position.y)
Spieler teleportieren
Bewegt den Spieler an die angegebene Position. Es sollte möglich sein zu einem spezifischen Spieler zu teleportieren, wenn Du dessen Koordinaten erhältst, indem sie den vorangegangenen Befehl ausführen und Dir ihre Koordinaten geben.
/c game.player.teleport({X, Y})
Um zum Ursprung der Welt zu teleportieren benutze 0,0.
Aktiviere Gott-Modus
Der "Gott-Modus" (God mode) entfernt den charakter des Spielers, so dass er über Hindernisse hinwegfliegen kann und keinen Schaden nimmt.
Trenne deine Steuerung vom Charakter und zerstöre ihn:
/c game.player.character.destroy()
Zum Rückgängigmachen, erzeuge einen Spieler-Charakter. Dies wird einen neuen Charakter am Startpunkt der Welt erzeugen und deine Steuerung damit verbinden.
/c game.player.create_character()
Ermögliche lange Reichweite
Ermöglicht lange Reichweite, was dem Spieler erlaubt Gebäude in größerer Entfernung zu bauen und mit ihnen zu interagieren. Der Standard ist 10.
/c local reach = 10000
game.player.force.character_build_distance_bonus = reach
game.player.force.character_reach_distance_bonus = reach
Finde Spieler-Leiche
Meldet Spieler-Leichen auf der Karte.
/c local found_corpses = game.player.surface.find_entities_filtered{type="character-corpse"}
for _,corpse in pairs(found_corpses) do
local player = game.get_player(corpse.character_corpse_player_index)
local name = player and player.name or "????"
game.player.print(name .. " --> [gps=" .. corpse.position.x .. "," .. corpse.position.y .. "]")
end
Schneller laufen
/c game.player.character_running_speed_modifier=3
Forschungs-Skripts
Ermögliche schnellere Forschung
/c game.player.force.laboratory_speed_modifier=1
-0.5 ist halbe Geschwindigkeit, 0 ist normale Geschwindigkeit, 1 ist doppelte Geschwindigkeit, 2 is dreifache usw.
Erforsche eine bestimmte Technologie
Die internen Namen der Technologien stehen auf der jeweiligen Seite in der Infobox.
/c game.player.force.technologies['electric-energy-distribution-1'].researched=true
/c game.player.force.technologies['steel-processing'].researched=true
Um ein höheres Level einer unendlichen Technologie zu erforschen, muss das Level spezifiziert werden:
/c game.player.force.technologies['worker-robots-speed-6'].level = 100
/c game.player.force.technologies['mining-productivity-4'].level = 100
Unerforsche eine bestimmte Technologie
Die internen Namen der Technologien stehen auf der jeweiligen Seite in der Infobox.
/c game.player.force.technologies['electric-energy-distribution-1'].researched=false
/c game.player.force.technologies['steel-processing'].researched=false
Aktiviere ein bestimmtes Rezept
Die internen Namen der Rezepte/Gegenstände stehen auf der jeweiligen Seite in der Infobox.
/c game.player.force.recipes["electric-energy-interface"].enabled=true
/c game.player.force.recipes["rocket-silo"].enabled=true
/c game.player.force.recipes.loader.enabled=true
/c game.player.force.recipes["fast-loader"].enabled = true
/c game.player.force.recipes["express-loader"].enabled = true
Aktiviere alle Rezepte
/c for name, recipe in pairs(game.player.force.recipes) do recipe.enabled = true end
Technologie-Effekte auf Standard zurücsetzen
Dies wird den Status aller aktivierten/freigeschalteten Rezepte zurücksetzen, so dass sie ausschließlich auf den derzeit erforschten Technologien basieren. Auch wird es andere Technologie-Effekte wie Abbautempo usw. zurücksetzen. Alle manuellen Änderungen dieser Effekte und Rezepte werden rückgängig gemacht.
/c game.player.force.reset_technology_effects()
Hinweis: Dies kann schnell Abhilfe schaffen, wenn Rezepte nach Hinzufügen oder Ändern einer Mod nicht verfügbar sind, obwohl die Technologie, die sie freischaltet schon erforscht ist.
Modding Werkzeuge
Eine Liste der internen Namen der meisten Dinge im Basis-Spiel können unter data.raw gefunden werden.
Zugriff auf Daten einer Mod
Wenn das erste Word eines Befehls __mod-name__ ist, wird er im Inhalt der Mod mit dem selben Namen ausgeführt. Zum Beispiel würde folgender Befehl die Daten von Resource Spawner Overhaul ausdrucken:
/c __even-distribution__ game.player.print(serpent.dump(global))
Drucke die Kachel unter dem Spieler in die Konsole
/c game.player.print(game.player.surface.get_tile(game.player.position).name)
Schreibe alle erforschten Tecnologien in eine Datei
/c local list = {}
for _, tech in pairs(game.player.force.technologies) do
if tech.researched then
list[#list+1] = tech.name
end
end
game.write_file("techs.lua", serpent.block(list) .. "\n", true)
Schreibe alle aktivierten Rezepte in eine Datei
/c local list = {}
for _, recipe in pairs(game.player.force.recipes) do
if recipe.enabled then
list[#list+1] = recipe.name
end
end
game.write_file("recipes.lua", serpent.block(list) .. "\n", true)
Schreibe Mod-Liste in eine Datei
Schreibe alle derzeit aktiven Mods und ihre Version in die Datei script-output/mods.txt in das User data directory.
/c game.write_file("mods.txt", serpent.block(game.active_mods))
Siehe auch
- Command line parameters
- http://lua-api.factorio.com/latest/ - Verweis auf die aktuellste Version der Factorio API