Don't Starve Wiki
Advertisement

Die Befehlskonsole (orig.: Command Console) ist automatisch aktiviert. Falls dies, aus welchen Gründen auch immer, nicht der Fall sein sollte, musst du erstmal die Datei settings.ini bearbeiten. Diese findest du im "DoNotStarveTogether"-Verzeichnis, das über folgenden Pfad erreichbar ist:

Windows: %userprofile%\Documents\Klei\DoNotStarveTogether\settings.ini

Mac:     <Documents>\Klei\DoNotStarveTogether\settings.ini

Linux:         ~/.klei/DoNotStarveTogether/settings.ini

Die settings.ini kannst du mit einem einfach Texteditor ("Editor" in Windows) öffnen und dort den Wert bei ENABLECONSOLE von "false" auf "true" wechseln:

[MISC]
ENABLECONSOLE = true

Danach die Datei abspeichern.

Um die Konsole dann im Spiel zu öffnen, musst du ` drücken. Dies kann über das Menü in den Optionen auch mit einer anderen beliebigen Taste belegt werden unter "Controls" und ganz rechts/unten unter dem Punkt "Debug Console" - ist empfehlenswert, da es sein kann, dass das Drücken der `-Taste nichts auslöst. Um die Konsole wieder auszublenden, muss man Strg+L drücken.

Hinweise:

  • Man muss fast jeden Befehl nach dem Laden einer Welt erneut eingeben.
  • Lua unterstützt eine variable Anzahl von Argumenten für Funktionen. Wenn du beispielsweise nur eines von einem Objekt/Gegenstand erzeugen möchtest, kannst du die "Menge" weglassen: "c_spawn ('Beefalo')".
  • Wenn du nicht der Host bist (oder es sich um einen dedizierten Server handelt, für den du ein Administrator bist), müssen die meisten Befehle per Remote ausgeführt werden. Durch Drücken der Strg-Taste bei geöffneter Konsole wird in den Remote-Befehlsmodus gewechselt. Einige Befehle (z. B. das Anzeigen der Karte) werden noch lokal ausgeführt.

Simple Befehle

  • Objekte/Kreaturen spawnen
c_spawn("spawncode", menge)

Spawnt ein Objekt oder eine Kreatur dort, wo sich der Mauszeiger gerade befindet.

  • Item geben
c_give("spawncode", menge)

Spawnt einen Gegenstand in der gewünschten Anzahl direkt im Inventar.

  • Auf Abenteuer gehen
c_goadventuring()

Gibt dem Spieler Startitems.

  • Szenario
c_doscenario(scenario)

Wende ein Szenarioskript auf die Auswahl an und führe es aus.

  • Gesundheit setzen
c_sethea​lth(prozent)

Setzt deine Gesundheit auf den gewünschten Wert. Hinweis: Benutze englische Kommazahlen zwischen 0.01 und 1, z.B. 0.90 = 90%.

  • Verstand setzen
c_setsanit​y(prozent)

Setzt deinen Verstand auf den gewünschten Wert. Hinweis: Benutze englische Kommazahlen zwischen 0.01 und 1, z.B. 0.90 = 90%.

  • Hunger setzen
c_sethunger(prozent)

Setzt deinen Hunger auf den gewünschten Wert. Hinweis: Benutze englische Kommazahlen zwischen 0.01 und 1, z.B. 0.90 = 90%.

  • Nässe setzen
c_setmoisture(prozent)

Setzt deine Nässe auf den gewünschten Wert. Hinweis: Benutze englische Kommazahlen zwischen 0.01 und 1, z.B. 0.90 = 90%.

  • Temperature
c_settemperature(grad)

Setzt deine Temperatur auf den gewünschten Wert. Hinweis: Benutze englische Kommazahlen zwischen 0.01 und 1, z.B. 0.90 = 90%.

  • Gott-Modus
c_godmode()

Hunger und Gesundheit nimmt nicht mehr ab, man erleidet keinen Gesundheitsschaden mehr (bei Angriffen oder beim Essen). Beachte, dass du in diesem Modus deine Statuswerte nicht verändern kannst. Falls du den Befehl ausführst, wenn du ein Geist bist, wirst du wiederbelebt (bist dann aber nicht im Gott-Modus). Um den Gott-Modus wieder zu deaktivieren, muss man den Befehl noch einmal ausführen.

  • Supergott-Modus
c_supergodmode()

Entspricht dem Gott-Modus, setzt jedoch auch all deine Statuswerte auf voll, selbst wenn man ihn wieder deaktiviert. Ähnlich wie bei c_godmode() wirst du auch mit diesem Befehl wiederbelebt (die Wiederbelebung über c_supergodmode() versetzt dich nach der Wiederbelebung nicht in den Gott-Modus). Um den Gott-Modus zu deaktivieren, muss man den Befehl noch einmal ausführen.

  • Gesundheit aufrechterhalten
c_maintainhealth(ThePlayer)

Ähnlich wie im Supergott-Modus, regeneriert jedoch ständig deine Gesundheit. Gebe zum Abbrechen c_cancelmaintaintasks(ThePlayer) ein.

  • Verstand aufrechterhalten
c_maintainsanity(ThePlayer)

Ähnlich wie im Supergott-Modus, regeneriert jedoch ständig deinen Verstand. Gebe zum Abbrechen c_cancelmaintaintasks(ThePlayer) ein.

  • Hunger aufrechterhalten
c_maintainhunger(ThePlayer)

Ähnlich wie im Supergott-Modus, regeneriert jedoch ständig deinen Hunger. Gebe zum Abbrechen c_cancelmaintaintasks(ThePlayer) ein.

  • Temperatur aufrechterhalten
c_maintaintemperature(ThePlayer)

Ähnlich wie im Supergott-Modus, regeneriert jedoch ständig deine Temperatur. Gebe zum Abbrechen c_cancelmaintaintasks(ThePlayer) ein.

  • Nässe aufrechterhalten
c_maintainmoisture(ThePlayer)

Ähnlich wie im Supergott-Modus, regeneriert jedoch ständig deine Nässe. Gebe zum Abbrechen c_cancelmaintaintasks(ThePlayer) ein.

  • Alles aufrechterhalten
c_maintainall(ThePlayer)

Ähnlich wie im Supergott-Modus, regeneriert jedoch ständig alle Werte. Gebe zum Abbrechen c_cancelmaintaintasks(ThePlayer) ein.

  • Kreatur Unsichtbarkeit
c_makeinvisible()

Hindert Kreaturen daran, den Spiel im Kampf anzugreifen. Funktioniert nicht in allen Fällen.

  • Setze deine Renngeschwindigkeit
c_speedmult(multiplikator)

Die Standardgeschwindigkeit ist 1. 2 macht dich doppelt so schnell und mit 12 oder mehr kannst du sogar durch Wände und "übers" Wasser laufen.

Es gibt noch einige andere Befehle, aber diese sind schwer zu verwenden und nicht sehr nützlich.

Spielerbefehle

Hinweis: Die meisten dieser Befehle funktionieren nicht, wenn du ein Client und kein Administrator bist, der einen Remote-Befehl senden kann (mit Strg in den Remote-Modus wechseln).

  • Kreativ-Modus
c_freecrafting()
GetPlayer().components.builder:GiveAllRecipes()

Nach diesem Befehl kannst du alle Gegenstände und Konstruktionen aus dem Spiel herstellen, ohne diese vorher freigeschaltet zu haben und ohne die nötigen Ressourcen dafür zu besitzen. Muss beim Wechseln einer Ebene (z.B. Höhlen) wieder aktiviert werden.

  • Maximale Gesundheit
ThePlayer.components.health:SetMaxHealth(wert)

Ändere die maximale Gesundheit deines Charakters auf den gewünschten Wert.

  • Maximaler Verstand
ThePlayer.components.sanity:SetMax(value)

Ändere den maximalen Verstand deines Charakters auf den gewünschten Wert.

  • Maximaler Hunger
ThePlayer.components.hunger:SetMax(wert)

Ändere den maximalen Hunger deines Charakters auf den gewünschten Wert.

  • Hunger pausieren
ThePlayer.components.hunger:Pause(true)

Dein Charakter wird nicht mehr hungern.

  • Schaden-Multiplikator ändern
ThePlayer.components.combat.damagemultiplier=(wert)

Ändert den Schaden-Multiplikator deines Charakters (Standard ist 1, Wendy und Wes haben 0.75, Wigfrid hat 1.25).

  • Werbiber
c_setbeaverness(prozent)

Verwandelt Woodie in den Werbiber. Verwende 1, um dich in den Werbiber zu verwandeln, und 0, um dich in Woodie zurückzuverwandeln.

Weltbefehle

  • Zu einem bestimmten Objekt teleportieren
c_gonext("spawncode")

Nach dem Drücken der Eingabetaste wirst du zur ersten numerischen Instanz des eingetippten Objekts teleportiert. Wenn mehrere Iterationen des Objekts in der Welt vorhanden sind, wird eine Liste der Entitätsnummern im Konsolenprotokoll angezeigt, und jede nachfolgende Ausführung desselben Befehls transportiert den Spieler von Entität zu Entität in der Reihenfolge, in der sie in der Welt generiert wurden.

  • Lösche Gegenstand unter dem Mauszeiger
ConsoleWorldEntityUnderMouse():Remove()
c_select():Remove()

Nach dem Drücken der Eingabetaste wird der Gegenstand gelöscht, der sich unter dem Mauszeiger befindet. Nutze den zweiten Befehl auf dedizierten Servern, da der erste dort nicht funktioniert.

  • Karte aufdecken (nur für sich selbst)
minimap = TheSim:FindFirstEntityWithTag("mini­map")
TheWorld.minimap.MiniMap:ShowArea (0,0,0,10000)
for x=-1600,1600,35 do
	for y=-1600,1600,35 do
		ThePlayer.player_classified.MapExplorer:RevealArea(x,0,y)
	end
end

Dieser Befehl funktioniert nur lokal und nicht als Client.

  • Karte aufdecken (für alle)
for k,v in pairs(AllPlayers) do for x=-1600,1600,35 do for y=-1600,1600,35 do v.player_classified.MapExplorer:RevealArea(x,0,y) end end end

Das ist ein Remote-Only-Befehl und funktioniert nicht, wenn du ein Client bist.

  • Karte aufdecken (als Client)
local _x,_y,_z = ConsoleCommandPlayer().Transform:GetWorldPosition(); local size, step, x, z; size = 800; step = 40; x,z = -size,-size;


local function tp() if x <= size + step then if z <= size + step then z = z + step else x = x + step; z = -size; end else return true end end; 


local function dotp() ConsoleCommandPlayer().Physics:Teleport(x,0,z) if not tp() then TheWorld:DoTaskInTime( 0.033, dotp ) else ConsoleCommandPlayer().Physics:Teleport(_x,_y,_z) end end dotp()

Dieser Befehl funktioniert nur lokal und nicht als Client.

  • Tagesphase überspringen
TheWorld:PushEvent("ms_nextcycle")

Überspringt die aktuelle Tagesphase.

  • Tag überspringen
​c_skip(num)

Überspringt den aktuellen Tag (in den Klammern die Anzahl der gewünschten Tage angeben).

  • Zeitraum überspringen
TheWorld.net.components.clock:OnUpdate(16*30*x)

Überspringt x Tage. Ändere x, um mehr Tage oder Teile von Tagen zu überspringen (z. B. 16 * 30 * 4,5, um 4,5 Tage zu überspringen).

WARNUNG: Zu große Werte können das Spiel zum Aufhängen bringen (je nach Schnelligkeit des Computers)

  • Zeiteinheiten überspringen und Welt updaten
LongUpdate(X)

Überspringt X Zeiteinheiten und performt die "LongUpdate"-Funktion auf Weltobjekte.

Hinweis: Es gibt 30 Zeiteinheiten pro Segment (ein Tag besteht aus 16 Segmenten). Um einen ganzen Tag zu überspringen, kann man LongUpdate(480) verwenden oder Werte miteinander multiplizieren: LongUpdate(X*16*30) oder LongUpdate(X*TUNING.TOTAL_DAY_TIME), mit X=Tage, die man überspringen möchte.

  • Segmente setzen

Verwendung:

TheWorld:PushEvent("ms_setclocksegs", {day=x,dusk=y,night=z})

Setzt die Anzahl der Segmente. Wenn man zusammen mehr als 16 Segmente setzt, gibt es eine Fehlermeldung.

Beispiel:

​TheWorld:PushEvent("ms_setclocksegs", {day=14,dusk=1,night=1})

Sehr langer Tag, sehr kurze Dämmerung und sehr kurze Nacht (ein Segment für die Dämmerung und eins für die Nacht).

  • Herbst starten
TheWorld:PushEvent("ms_setseason", "autumn")

Starten den Sommer.

  • Winter starten
TheWorld:PushEvent("ms_setseason", "winter")

Startet den Winter.

  • Frühling starten
TheWorld:PushEvent("ms_setseason", "spring")

Starten den Sommer.

  • Sommer starten
TheWorld:PushEvent("ms_setseason", "summer")

Starten den Sommer.

  • Regen starten
TheWorld:PushEvent("ms_forceprecipitation")

Startet den Regen.

  • Regen stoppen
TheWorld:PushEvent("ms_forceprecipitation", false)

Stoppt den Regen.

  • Blitzeinschlag herbeirufen
TheWorld:PushEvent("ms_sendlightningstrike", ConsoleWorldPosition())

Blitzeinschlag auf den Spieler. Wird einen Blitzableiter treffen, wenn einer in der Nähe steht.

  • Distanz messen
print(math.sqrt(ThePlayer:GetDistanceSqToInst(ConsoleWorldEntityUnderMouse())))

Zeigt die Distanz zwischen dem Spieler und dem Objekt unter dem Mauszeiger im Konsolenprotokoll (Strg+L) an.

Verschiedene Befehle

  • Leichenhalle aufräumen
ErasePersistentString("morgue")

Entfernt alle Einträge aus der Leichenhalle. Erfordert das Schließen und Neustarten des Spiels, bevor die Änderungen sichtbar werden.

Advertisement