<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.evospace.tech/index.php?action=history&amp;feed=atom&amp;title=Cheats</id>
	<title>Cheats - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.evospace.tech/index.php?action=history&amp;feed=atom&amp;title=Cheats"/>
	<link rel="alternate" type="text/html" href="https://wiki.evospace.tech/index.php?title=Cheats&amp;action=history"/>
	<updated>2026-09-01T14:13:47Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.44.0</generator>
	<entry>
		<id>https://wiki.evospace.tech/index.php?title=Cheats&amp;diff=8749&amp;oldid=prev</id>
		<title>Evospace: Created page with &quot;{{DISPLAYTITLE:Cheats}} The command line in the player log runs Lua in the game&#039;s script state. This page lists the lines that skip quests, move the player, produce items and control the weather.  == Command line ==  Two input slots open the same field. &#039;&#039;&#039;Console&#039;&#039;&#039; opens it in command mode, where the leading &lt;code&gt;/&lt;/code&gt; is implied. &#039;&#039;&#039;Chat&#039;&#039;&#039; opens it as chat, and a line starting with &lt;code&gt;/&lt;/code&gt; is still run as a command. Both slots are rebindable. Arrow keys re...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.evospace.tech/index.php?title=Cheats&amp;diff=8749&amp;oldid=prev"/>
		<updated>2026-08-24T15:24:46Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;{{DISPLAYTITLE:Cheats}} The command line in the player log runs Lua in the game&amp;#039;s script state. This page lists the lines that skip quests, move the player, produce items and control the weather.  == Command line ==  Two input slots open the same field. &amp;#039;&amp;#039;&amp;#039;Console&amp;#039;&amp;#039;&amp;#039; opens it in command mode, where the leading &amp;lt;code&amp;gt;/&amp;lt;/code&amp;gt; is implied. &amp;#039;&amp;#039;&amp;#039;Chat&amp;#039;&amp;#039;&amp;#039; opens it as chat, and a line starting with &amp;lt;code&amp;gt;/&amp;lt;/code&amp;gt; is still run as a command. Both slots are rebindable. Arrow keys re...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{DISPLAYTITLE:Cheats}}&lt;br /&gt;
The command line in the player log runs Lua in the game&amp;#039;s script state. This page lists the lines that skip quests, move the player, produce items and control the weather.&lt;br /&gt;
&lt;br /&gt;
== Command line ==&lt;br /&gt;
&lt;br /&gt;
Two input slots open the same field. &amp;#039;&amp;#039;&amp;#039;Console&amp;#039;&amp;#039;&amp;#039; opens it in command mode, where the leading &amp;lt;code&amp;gt;/&amp;lt;/code&amp;gt; is implied. &amp;#039;&amp;#039;&amp;#039;Chat&amp;#039;&amp;#039;&amp;#039; opens it as chat, and a line starting with &amp;lt;code&amp;gt;/&amp;lt;/code&amp;gt; is still run as a command. Both slots are rebindable. Arrow keys recall previous lines.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Command !! Effect&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/help [command]&amp;lt;/code&amp;gt; || Lists the commands, or prints the usage of one&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/time&amp;lt;/code&amp;gt; || Prints the day and the world clock, with &amp;lt;code&amp;gt;(frozen)&amp;lt;/code&amp;gt; while the day phase is held&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/pos&amp;lt;/code&amp;gt; || Prints the block cell the player stands in&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lua &amp;amp;lt;code&amp;amp;gt;&amp;lt;/code&amp;gt; || Runs Lua. Everything below is run through it&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The line is compiled as &amp;lt;code&amp;gt;return &amp;amp;lt;code&amp;amp;gt;&amp;lt;/code&amp;gt; first, so an expression prints its value. A line that does not compile that way is run as a chunk, so statements and loops work. &amp;lt;code&amp;gt;print&amp;lt;/code&amp;gt; writes to the console, the first 20 lines of it.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/lua 2 + 2&lt;br /&gt;
/lua for i = 1, 3 do print(i) end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Quests ==&lt;br /&gt;
&lt;br /&gt;
Complete every quest that is active:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/lua for _, q in ipairs(quests:get_active_quests()) do quests:complete_quest(q) end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Single quests, chapters and objectives:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/lua quests:complete_quest(StaticQuest.get(&amp;quot;FirstBlocks&amp;quot;))&lt;br /&gt;
/lua quests:unlock_quest(StaticQuest.get(&amp;quot;DrillingRig&amp;quot;))&lt;br /&gt;
/lua quests:unlock_chapter(StaticChapter.get(&amp;quot;OreToPower&amp;quot;))&lt;br /&gt;
/lua StaticQuest.get(&amp;quot;FirstBlocks&amp;quot;):set_objective_complete_by_id(&amp;quot;place_smelter&amp;quot;, true)&lt;br /&gt;
/lua StaticQuest.get(&amp;quot;FirstBlocks&amp;quot;):set_objective_progress(0, 10, 10, true)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;quests:get_all_quests()&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;quests:get_all_chapters()&amp;lt;/code&amp;gt; list every quest and chapter. &amp;lt;code&amp;gt;quests:is_quest_active(q)&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;quests:is_quest_completed(q)&amp;lt;/code&amp;gt; test one.&lt;br /&gt;
&lt;br /&gt;
A quest that waits for a gameplay event completes when the event is emitted:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/lua EventSystem.get():emmit(defines.events.on_player_crafted, { item = StaticItem.get(&amp;quot;IronIngot&amp;quot;), count = 1 })&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Teleport ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/lua dim:teleport(Vec3i.new(0, 0, 80))&lt;br /&gt;
/lua dim:teleport(dim:spawn_point())&lt;br /&gt;
/lua dim:teleport(Vec3i.new(4000, -1200, dim:sample_height(4000, -1200) + 3))&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;dim:teleport_pending()&amp;lt;/code&amp;gt; is true while the target columns compile. &amp;lt;code&amp;gt;dim:streaming_ready()&amp;lt;/code&amp;gt; is true when loading and meshing around the player are done.&lt;br /&gt;
&lt;br /&gt;
== Blocks ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/lua dim:spawn_block_identity(Vec3i.new(10, 10, 60), StaticBlock.get(&amp;quot;Chest&amp;quot;))&lt;br /&gt;
/lua dim:set_cell(Vec3i.new(10, 10, 60), StaticBlock.get(&amp;quot;Air&amp;quot;))&lt;br /&gt;
/lua dim:clear_props(Vec3i.new(10, 10, 60))&lt;br /&gt;
/lua dim:get_cell(Vec3i.new(10, 10, 60)).name&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;dim:get_block(bpos)&amp;lt;/code&amp;gt; returns the block placed in a cell, which the sections below use to reach a chest or a machine. Positions are &amp;lt;code&amp;gt;Vec3i.new(x, y, z)&amp;lt;/code&amp;gt; in block cells. &amp;lt;code&amp;gt;cs.w2bp&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;cs.bp2w&amp;lt;/code&amp;gt; convert between world units and cells.&lt;br /&gt;
&lt;br /&gt;
== Items ==&lt;br /&gt;
&lt;br /&gt;
Items are added to a container. Place a chest, read its cell with &amp;lt;code&amp;gt;/pos&amp;lt;/code&amp;gt;, then fill it:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/lua StorageBlockLogic.cast(dim:get_block(Vec3i.new(10, 10, 60))).storage_access:add(StaticItem.get(&amp;quot;IronIngot&amp;quot;), 1000)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;:sub(item, count)&amp;lt;/code&amp;gt; removes them again. Machine inventories take items the same way:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/lua AbstractCrafter.cast(dim:get_block(Vec3i.new(10, 10, 60))).crafter_input_container:get_access(0):add(StaticItem.get(&amp;quot;IronOre&amp;quot;), 100)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Machines ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/lua AbstractCrafter.cast(dim:get_block(Vec3i.new(10, 10, 60))).energy_input_inventory:add_resource(100000)&lt;br /&gt;
/lua AbstractCrafter.cast(dim:get_block(Vec3i.new(10, 10, 60))).productivity = 500&lt;br /&gt;
/lua AbstractCrafter.cast(dim:get_block(Vec3i.new(10, 10, 60))).speed = 10&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;add_resource&amp;lt;/code&amp;gt; fills an energy, heat or fluid slot directly. The &amp;#039;&amp;#039;&amp;#039;Admin Electric Generator&amp;#039;&amp;#039;&amp;#039; block produces unlimited power and can be placed like any other block.&lt;br /&gt;
&lt;br /&gt;
== Recipes ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
/lua Recipe.get(&amp;quot;SteelIngotRecipe&amp;quot;).locked = false&lt;br /&gt;
/lua Recipe.get(&amp;quot;SteelIngotRecipe&amp;quot;).productivity = 100&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Weather and time ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Line !! Effect&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;weather.set(&amp;quot;Rain&amp;quot;)&amp;lt;/code&amp;gt; || Transitions to a weather preset&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;weather.snap(&amp;quot;Rain&amp;quot;)&amp;lt;/code&amp;gt; || Switches to it at once&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;weather.clear()&amp;lt;/code&amp;gt; || Returns weather control to the biome&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;weather.wind(20)&amp;lt;/code&amp;gt; || Holds the wind speed, up to the planet maximum of 20 m/s&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;weather.wind_clear()&amp;lt;/code&amp;gt; || Releases the wind&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;shot.time_of_day(13.5)&amp;lt;/code&amp;gt; || Holds the sky at a solar hour, 0..24&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Evospace</name></author>
	</entry>
</feed>