<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://www.computercraft.info/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=GopherAtl</id>
		<title>ComputerCraft Wiki - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="https://www.computercraft.info/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=GopherAtl"/>
		<link rel="alternate" type="text/html" href="https://www.computercraft.info/wiki/Special:Contributions/GopherAtl"/>
		<updated>2026-07-11T10:20:41Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.24.1</generator>

	<entry>
		<id>https://www.computercraft.info/wiki/index.php?title=File:ComputerCraft_1.31_preview.png&amp;diff=4708</id>
		<title>File:ComputerCraft 1.31 preview.png</title>
		<link rel="alternate" type="text/html" href="https://www.computercraft.info/wiki/index.php?title=File:ComputerCraft_1.31_preview.png&amp;diff=4708"/>
				<updated>2012-12-07T03:36:49Z</updated>
		
		<summary type="html">&lt;p&gt;GopherAtl: Undo revision 4707 by 211.48.232.238 (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>GopherAtl</name></author>	</entry>

	<entry>
		<id>https://www.computercraft.info/wiki/index.php?title=Download&amp;diff=4706</id>
		<title>Download</title>
		<link rel="alternate" type="text/html" href="https://www.computercraft.info/wiki/index.php?title=Download&amp;diff=4706"/>
				<updated>2012-12-07T03:30:00Z</updated>
		
		<summary type="html">&lt;p&gt;GopherAtl: Undo revision 4705 by 83.66.32.179 (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== You can download the latest version of ComputerCraft [http://www.minecraftforum.net/topic/892282- here]. ===&lt;br /&gt;
&lt;br /&gt;
==Changelog:==&lt;br /&gt;
&lt;br /&gt;
{{Changelog}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Lists]]&lt;/div&gt;</summary>
		<author><name>GopherAtl</name></author>	</entry>

	<entry>
		<id>https://www.computercraft.info/wiki/index.php?title=String_(API)&amp;diff=4704</id>
		<title>String (API)</title>
		<link rel="alternate" type="text/html" href="https://www.computercraft.info/wiki/index.php?title=String_(API)&amp;diff=4704"/>
				<updated>2012-12-07T03:24:29Z</updated>
		
		<summary type="html">&lt;p&gt;GopherAtl: Undo revision 4703 by 46.231.129.69 (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The string API is a default Lua 5.1 API as defined [http://www.lua.org/manual/5.1/manual.html#5.4 here]. Please list any non-working functions below.&lt;br /&gt;
&lt;br /&gt;
==Non-Working Functions==&lt;br /&gt;
&lt;br /&gt;
===string.gmatch(string, pattern)===&lt;br /&gt;
&lt;br /&gt;
Using any quantifier other than + will cause it to hang if that quantifier applies to the whole pattern and that pattern does not match the whole string.&lt;br /&gt;
&lt;br /&gt;
Examples:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;quot;abcdef&amp;quot;:gmatch(&amp;quot;%a*&amp;quot;)   -- Works&lt;br /&gt;
&amp;quot;abc=def&amp;quot;:gmatch(&amp;quot;%a*&amp;quot;)   -- Hang&lt;br /&gt;
&amp;quot;abc=def&amp;quot;:gmatch(&amp;quot;%a.*&amp;quot;)  -- Works&lt;br /&gt;
&amp;quot;abc=def&amp;quot;:gmatch(&amp;quot;[%a.]*&amp;quot;)  -- Hang&lt;br /&gt;
&amp;quot;abc=def&amp;quot;:gmatch(&amp;quot;[^=]*&amp;quot;)  -- Hang&lt;br /&gt;
&amp;quot;abc=def&amp;quot;:gmatch(&amp;quot;([^=]*)=?&amp;quot;) -- Works (Note: This produces the same result as the above pattern should)&lt;br /&gt;
&amp;quot;abcdef&amp;quot;:gmatch(&amp;quot;[^=]*&amp;quot;)  -- Works&lt;br /&gt;
&amp;quot;abc=def&amp;quot;:gmatch(&amp;quot;[^=]*=&amp;quot;)  -- Works&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===string.sub / string.find ===&lt;br /&gt;
&lt;br /&gt;
Both string.sub and string.find work on their own, but calling string.find on a string returned by string.sub will return the index of the character in the original string, not the sub string you are referencing.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
local testString = &amp;quot;This is a sample string&amp;quot;;&lt;br /&gt;
local testSubString = string.sub(testString,5);&lt;br /&gt;
&lt;br /&gt;
local indexOfSample = string.find(testSubString,&amp;quot;sample&amp;quot;);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
indexOfSample is returned 11 instead of the expected 7&lt;br /&gt;
&lt;br /&gt;
Concatenating a blank string onto the end of the string causes new memory to be allocated and works properly again&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
local testString = &amp;quot;This is a sample string&amp;quot;;&lt;br /&gt;
local testSubString = string.sub(testString,5);&lt;br /&gt;
&lt;br /&gt;
local indexOfSample = string.find(testSubString..&amp;quot;&amp;quot;,&amp;quot;sample&amp;quot;);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This is also a problem with using string.find on command line arguments, as this returns the index in the full command path instead of the specific argument.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:APIs]]&lt;/div&gt;</summary>
		<author><name>GopherAtl</name></author>	</entry>

	<entry>
		<id>https://www.computercraft.info/wiki/index.php?title=Download&amp;diff=4702</id>
		<title>Download</title>
		<link rel="alternate" type="text/html" href="https://www.computercraft.info/wiki/index.php?title=Download&amp;diff=4702"/>
				<updated>2012-12-07T03:17:23Z</updated>
		
		<summary type="html">&lt;p&gt;GopherAtl: Undo revision 4700 by 198.66.245.239 (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== You can download the latest version of ComputerCraft [http://www.minecraftforum.net/topic/892282- here]. ===&lt;br /&gt;
&lt;br /&gt;
==Changelog:==&lt;br /&gt;
&lt;br /&gt;
{{Changelog}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Lists]]&lt;/div&gt;</summary>
		<author><name>GopherAtl</name></author>	</entry>

	<entry>
		<id>https://www.computercraft.info/wiki/index.php?title=Gold_Ingot&amp;diff=4701</id>
		<title>Gold Ingot</title>
		<link rel="alternate" type="text/html" href="https://www.computercraft.info/wiki/index.php?title=Gold_Ingot&amp;diff=4701"/>
				<updated>2012-12-07T03:16:22Z</updated>
		
		<summary type="html">&lt;p&gt;GopherAtl: Undo revision 4699 by 165.30.102.111 (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[http://www.minecraftwiki.net/wiki/Gold_Ingot Gold Ingot at Minecraft Wiki]&lt;br /&gt;
&lt;br /&gt;
[[Category:Vanilla_Minecraft]]&lt;/div&gt;</summary>
		<author><name>GopherAtl</name></author>	</entry>

	<entry>
		<id>https://www.computercraft.info/wiki/index.php?title=Template:Changelog&amp;diff=4678</id>
		<title>Template:Changelog</title>
		<link rel="alternate" type="text/html" href="https://www.computercraft.info/wiki/index.php?title=Template:Changelog&amp;diff=4678"/>
				<updated>2012-12-05T04:52:17Z</updated>
		
		<summary type="html">&lt;p&gt;GopherAtl: added links to blog posts with announcements and download links for versions back to 1.3.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;width: 100%&amp;quot;&lt;br /&gt;
! style=&amp;quot;width: 15%&amp;quot; | Version&lt;br /&gt;
! class=&amp;quot;unsortable&amp;quot; | New Features or Changes&lt;br /&gt;
! style=&amp;quot;width: 15%&amp;quot; | Minecraft Version&lt;br /&gt;
|-&lt;br /&gt;
|align=center|[http://www.computercraft.info/2012/11/15/computercraft-1-47-and-minecon-news/ ComputerCraft 1.47]&lt;br /&gt;
|&lt;br /&gt;
*Ported to Minecraft 1.4.4&lt;br /&gt;
*Fixed label tooltips not showing up in SMP&lt;br /&gt;
|align=center|1.4.4&lt;br /&gt;
|-&lt;br /&gt;
|align=center|[http://www.computercraft.info/2012/10/25/computercraft-1-46-minecraft-update/ ComputerCraft 1.46]&lt;br /&gt;
|&lt;br /&gt;
*Ported to Minecraft 1.4.2&lt;br /&gt;
*ComputerCraft items now have their own tab in Creative Mode&lt;br /&gt;
|align=center|1.4.2&lt;br /&gt;
|-&lt;br /&gt;
|align=center|[http://www.computercraft.info/2012/10/22/computercraft-1-45-now-with-colors/ ComputerCraft 1.45]&lt;br /&gt;
|&lt;br /&gt;
*Added Advanced Computers&lt;br /&gt;
*Added Advanced Monitors&lt;br /&gt;
*New program: paint (by nitrogenfingers)&lt;br /&gt;
*New API: paintutils&lt;br /&gt;
*New term functions: term.setBackgroundColor, term.setTextColor, term.isColor&lt;br /&gt;
*New turtle function: turtle.transferTo&lt;br /&gt;
|align=center|1.3.2&lt;br /&gt;
|-&lt;br /&gt;
|align=center|[http://www.computercraft.info/2012/10/04/computercraft-1-43-books/ ComputerCraft 1.43]&lt;br /&gt;
|&lt;br /&gt;
*Added Printed Pages (bind several Printed Page items into one with string)&lt;br /&gt;
*Added Printed Books (add a leather cover to the above)&lt;br /&gt;
*Labelled Turtles now keep their fuel when broken&lt;br /&gt;
*Fixed incompatibility with Forge 275 and above&lt;br /&gt;
|align=center|1.3.2&lt;br /&gt;
|-&lt;br /&gt;
|align=center|[http://www.computercraft.info/2012/09/22/computercraft-1-42-is-released/ ComputerCraft 1.42]&lt;br /&gt;
|&lt;br /&gt;
*Ported to Minecraft 1.3.2 and the Forge mod system&lt;br /&gt;
*Added Printers&lt;br /&gt;
*Floppy Disks can now be dyed different colours&lt;br /&gt;
*Wireless Crafty Turtles can now be crafted&lt;br /&gt;
*All new textures&lt;br /&gt;
*New Forge config file&lt;br /&gt;
*Various tweaks and bug fixes&lt;br /&gt;
|align=center|1.3.2&lt;br /&gt;
|-&lt;br /&gt;
|align=center|[http://www.computercraft.info/2012/07/29/computercraft-1-41-bugfix-update/ ComputerCraft 1.41]&lt;br /&gt;
|&lt;br /&gt;
*Fixed labelled Computers not keeping their data when destroyed&lt;br /&gt;
*Fixed the “excavate” program outputting lots of spam&lt;br /&gt;
*File system size limits now take into account empty files and directories&lt;br /&gt;
*Some small changes to the Turtle Upgrade API ahead of it’s impending release.(Update: The API has now been released)&lt;br /&gt;
|align=center|1.2.5&lt;br /&gt;
|-&lt;br /&gt;
|align=center|[http://www.computercraft.info/2012/07/27/computercraft-1-4-is-released/ ComputerCraft 1.4]&lt;br /&gt;
|&lt;br /&gt;
*Ported to Forge Mod Loader: ComputerCraft can now be ran directly from the .zip without extraction&lt;br /&gt;
*Added Farming Turtles&lt;br /&gt;
*Added Felling Turtles&lt;br /&gt;
*Added Digging Turtles&lt;br /&gt;
*Added Melee Turtles&lt;br /&gt;
*Added Crafty Turtles&lt;br /&gt;
*Added 14 new Turtle Combinations accessible by combining the turtle upgrades above&lt;br /&gt;
*Labelled computers and turtles can now be crafted into turtles or other turtle types without losing their ID, label and data&lt;br /&gt;
*Added a “Turtle Upgrade API” for mod developers to create their own tools and peripherals for turtles&lt;br /&gt;
*Turtles can now attack entities with turtle.attack(), and collect their dropped items&lt;br /&gt;
*Turtles can now use turtle.place() with any item the player can, and can interact with entities&lt;br /&gt;
*Turtles can now craft items with turtle.craft()&lt;br /&gt;
*Turtles can now place items into inventories with turtle.drop()&lt;br /&gt;
*Changed the behaviour of turtle.place() and turtle.drop() to only consider the currently selected slot&lt;br /&gt;
*Turtles can now pick up items from the ground, or from inventories, with turtle.suck()&lt;br /&gt;
*Turtles can now compare items in their inventories&lt;br /&gt;
*Turtles can place signs with text on them with turtle.place( [signText] )&lt;br /&gt;
*Turtles now optionally require fuel items to move, and can refuel themselves&lt;br /&gt;
*The size of the the turtle inventory has been increased to 16&lt;br /&gt;
*The size of the turtle screen has been increased&lt;br /&gt;
*New turtle functions: turtle.compareTo( [slotNum] ), turtle.craft(), turtle.attack(), turtle.attackUp(), turtle.attackDown(), turtle.dropUp(), turtle.dropDown(), turtle.getFuelLevel(), turtle.refuel()&lt;br /&gt;
*New disk function: disk.getDiskID()&lt;br /&gt;
*New turtle programs: craft, refuel&lt;br /&gt;
*“excavate” program now much smarter: Will return items to a chest when full, attack mobs, and refuel itself automatically&lt;br /&gt;
*New API: keys&lt;br /&gt;
*Added optional Floppy Disk and Hard Drive space limits for computers and turtles&lt;br /&gt;
*New fs function: fs.getFreeSpace( path ), also fs.getDrive() works again&lt;br /&gt;
*The send and receive range of wireless modems now increases with altitude, allowing long range networking from high-altitude computers (great for GPS networks)&lt;br /&gt;
*http.request() now supports https:// URLs&lt;br /&gt;
*Right clicking a Disk Drive with a Floppy Disk or a Record when sneaking will insert the item into the Disk Drive automatically&lt;br /&gt;
*The default size of the computer screen has been increased&lt;br /&gt;
*Several stability and security fixes: LuaJ can now no longer leave dangling threads when a computer is unloaded, turtles can no longer be destroyed by tree leaves or walking off the edge of the loaded map. Computers no longer crash when used with RedPower frames&lt;br /&gt;
|align=center|1.2.5&lt;br /&gt;
|-&lt;br /&gt;
|align=center|[http://www.computercraft.info/2012/04/23/computercraft-updated-to-1-2-5/ ComputerCraft 1.33]&lt;br /&gt;
|&lt;br /&gt;
*Ported to Minecraft 1.2.5&lt;br /&gt;
|align=center|1.2.5&lt;br /&gt;
|-&lt;br /&gt;
|align=center|[http://www.computercraft.info/2012/03/30/computercraft-1-32-out-now/ ComputerCraft 1.32]&lt;br /&gt;
|&lt;br /&gt;
*Ported to Minecraft 1.2.4&lt;br /&gt;
*Fixed a big memory leak in LuaJ that caused extra threads to stay around forever when computers were shut down.&lt;br /&gt;
|align=center|1.2.4&lt;br /&gt;
|-&lt;br /&gt;
|align=center|[http://www.computercraft.info/2012/03/13/computercraft-1-31-is-released/ ComputerCraft 1.31]&lt;br /&gt;
|&lt;br /&gt;
*Ported to Minecraft 1.2.3&lt;br /&gt;
*Added Monitors (thanks to Cloudy). Build huge external displays for your computers!&lt;br /&gt;
*New positioning capabilities for computers and turtles. Build GPS networks and triangulate the positions of your turtles position so they never get lost!&lt;br /&gt;
*New turtle.compare() function for turtles for more intelligent mining.&lt;br /&gt;
*New programs and APIs: gps, monitor, vector&lt;br /&gt;
*New program: pastebin (requires enableAPI_HTTP=1 in mod_ComputerCraft.cfg), upload and download programs made by other users ingame!&lt;br /&gt;
*Added a new top secret program designed for use with Monitors, see if you can find it.&lt;br /&gt;
*Lots of additions to existing APIs and programs. Type &amp;quot;help whatsnew&amp;quot; in game for the full details.&lt;br /&gt;
|align=center|1.2.3&lt;br /&gt;
|-&lt;br /&gt;
|align=center|[http://www.computercraft.info/2012/02/23/computercraft-1-3-trailer/ ComputerCraft 1.3]&lt;br /&gt;
|&lt;br /&gt;
*Ported to Minecraft Forge.&lt;br /&gt;
*Added Turtles, Mining Turtles, Wireless Turtles and Wireless Mining Turtles (Block ID 209).&lt;br /&gt;
*Added a Peripheral API to allow mod developers to create custom peripherals for ComputerCraft. Details on this will be posted in the next few days.&lt;br /&gt;
*Added Wireless Modems. Use the rednet API to send data wirelessly between computers and turtles!&lt;br /&gt;
*Computers and Disk Drives no longer get destroyed by water.&lt;br /&gt;
*Computers and Turtles can now be labelled, destroyed, and moved around, keeping their state.&lt;br /&gt;
*Computers and Turtles can connect to adjacent devices, and turn them on or off.&lt;br /&gt;
*User programs now give line numbers in their error messages, for easier debugging.&lt;br /&gt;
*New APIs and programs for Turtles: turtle, excavate, tunnel, go, turn and dance.&lt;br /&gt;
*Lots of additions to existing APIs and programs. Type &amp;quot;help whatsnew&amp;quot; in game for the full details.&lt;br /&gt;
|align=center|1.1&lt;br /&gt;
|-&lt;br /&gt;
|align=center|ComputerCraft 1.21&lt;br /&gt;
|&lt;br /&gt;
*Added shortcut key to shutdown the computer.&lt;br /&gt;
*Added a help API add-on pack.&lt;br /&gt;
*Various bug fixes.&lt;br /&gt;
|align=center|1.1&lt;br /&gt;
|-&lt;br /&gt;
|align=center|ComputerCraft 1.2&lt;br /&gt;
|&lt;br /&gt;
*Added Disk Drives&lt;br /&gt;
*Added shortcut keys to terminate the current program and reboot the computer.&lt;br /&gt;
*Added a new system for user created APIs.&lt;br /&gt;
*Added RedNet.&lt;br /&gt;
*Added shell.setPath() and shell.setAlias().&lt;br /&gt;
*Added a new ROM startup script.&lt;br /&gt;
*Added os.clock(), os.time(), and os.setAlarm().&lt;br /&gt;
*Added game: &amp;quot;Worm!&amp;quot;&lt;br /&gt;
*Added programs: alias, apis, copy, delete, dj, drive, eject, id, label, list, move, reboot, redset, rename, time, worm.&lt;br /&gt;
*Added APIs: bit, colours, disk, help, rednet, parallel, textutils&lt;br /&gt;
*Text can be edited with left and right arrow keys.&lt;br /&gt;
*Many bug fixes&lt;br /&gt;
|align=center|1.0&lt;br /&gt;
|-&lt;br /&gt;
|align=center|ComputerCraft 1.11&lt;br /&gt;
|&lt;br /&gt;
*Fixed bug where [[Computer|Computers]] could not read input from RedPower cables which had a bend in the immediately adjacent square.&lt;br /&gt;
|align=center|1.0&lt;br /&gt;
|-&lt;br /&gt;
|align=center|ComputerCraft 1.1&lt;br /&gt;
|&lt;br /&gt;
*Changed the default block ID for the [[Computer|Computer]] to 207.&lt;br /&gt;
*Added multiplayer support.&lt;br /&gt;
*Added connectivity with RedPower bundled cables.&lt;br /&gt;
*Added HTTP API&lt;br /&gt;
*Fixed support for HD textures on the front of [[Computer|Computers]].&lt;br /&gt;
*Added command history to the [[Computer]].&lt;br /&gt;
*Added config options to change the size of the [[Computer]] GUI and the text color.&lt;br /&gt;
*Programs with infinite loops that don't yield will no longer freeze Minecraft and will terminate after 10 seconds.&lt;br /&gt;
*Extended Help and fixed typos/small errors in various programs.&lt;br /&gt;
|align=center|1.0&lt;br /&gt;
|-&lt;br /&gt;
|align=center|ComputerCraft 1.02&lt;br /&gt;
|&lt;br /&gt;
*Fixed the MCPatcher HD textures incompatibility that was causing the computer texture to replace cobblestone blocks.&lt;br /&gt;
|align=center|1.0&lt;br /&gt;
|-&lt;br /&gt;
|align=center|ComputerCraft 1.01&lt;br /&gt;
|&lt;br /&gt;
*Added a ModLoader configuration file, so the computers block ID can be changed.&lt;br /&gt;
*Made the error message that displays when Lua files are not correctly installed much more clear, no more &amp;quot;Assertion failed.&amp;quot;&lt;br /&gt;
|align=center|1.0&lt;br /&gt;
|-&lt;br /&gt;
|align=center|ComputerCraft 1.0&lt;br /&gt;
|&lt;br /&gt;
*First Release&lt;br /&gt;
|align=center|1.0&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>GopherAtl</name></author>	</entry>

	<entry>
		<id>https://www.computercraft.info/wiki/index.php?title=String_(API)&amp;diff=4677</id>
		<title>String (API)</title>
		<link rel="alternate" type="text/html" href="https://www.computercraft.info/wiki/index.php?title=String_(API)&amp;diff=4677"/>
				<updated>2012-12-05T04:42:30Z</updated>
		
		<summary type="html">&lt;p&gt;GopherAtl: Undo revision 4676 by 101.166.21.146 (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The string API is a default Lua 5.1 API as defined [http://www.lua.org/manual/5.1/manual.html#5.4 here]. Please list any non-working functions below.&lt;br /&gt;
&lt;br /&gt;
==Non-Working Functions==&lt;br /&gt;
&lt;br /&gt;
===string.gmatch(string, pattern)===&lt;br /&gt;
&lt;br /&gt;
Using any quantifier other than + will cause it to hang if that quantifier applies to the whole pattern and that pattern does not match the whole string.&lt;br /&gt;
&lt;br /&gt;
Examples:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;quot;abcdef&amp;quot;:gmatch(&amp;quot;%a*&amp;quot;)   -- Works&lt;br /&gt;
&amp;quot;abc=def&amp;quot;:gmatch(&amp;quot;%a*&amp;quot;)   -- Hang&lt;br /&gt;
&amp;quot;abc=def&amp;quot;:gmatch(&amp;quot;%a.*&amp;quot;)  -- Works&lt;br /&gt;
&amp;quot;abc=def&amp;quot;:gmatch(&amp;quot;[%a.]*&amp;quot;)  -- Hang&lt;br /&gt;
&amp;quot;abc=def&amp;quot;:gmatch(&amp;quot;[^=]*&amp;quot;)  -- Hang&lt;br /&gt;
&amp;quot;abc=def&amp;quot;:gmatch(&amp;quot;([^=]*)=?&amp;quot;) -- Works (Note: This produces the same result as the above pattern should)&lt;br /&gt;
&amp;quot;abcdef&amp;quot;:gmatch(&amp;quot;[^=]*&amp;quot;)  -- Works&lt;br /&gt;
&amp;quot;abc=def&amp;quot;:gmatch(&amp;quot;[^=]*=&amp;quot;)  -- Works&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===string.sub / string.find ===&lt;br /&gt;
&lt;br /&gt;
Both string.sub and string.find work on their own, but calling string.find on a string returned by string.sub will return the index of the character in the original string, not the sub string you are referencing.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
local testString = &amp;quot;This is a sample string&amp;quot;;&lt;br /&gt;
local testSubString = string.sub(testString,5);&lt;br /&gt;
&lt;br /&gt;
local indexOfSample = string.find(testSubString,&amp;quot;sample&amp;quot;);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
indexOfSample is returned 11 instead of the expected 7&lt;br /&gt;
&lt;br /&gt;
Concatenating a blank string onto the end of the string causes new memory to be allocated and works properly again&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
local testString = &amp;quot;This is a sample string&amp;quot;;&lt;br /&gt;
local testSubString = string.sub(testString,5);&lt;br /&gt;
&lt;br /&gt;
local indexOfSample = string.find(testSubString..&amp;quot;&amp;quot;,&amp;quot;sample&amp;quot;);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This is also a problem with using string.find on command line arguments, as this returns the index in the full command path instead of the specific argument.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:APIs]]&lt;/div&gt;</summary>
		<author><name>GopherAtl</name></author>	</entry>

	<entry>
		<id>https://www.computercraft.info/wiki/index.php?title=Download&amp;diff=4675</id>
		<title>Download</title>
		<link rel="alternate" type="text/html" href="https://www.computercraft.info/wiki/index.php?title=Download&amp;diff=4675"/>
				<updated>2012-12-05T04:32:58Z</updated>
		
		<summary type="html">&lt;p&gt;GopherAtl: Undo revision 4674 by 107.16.66.225 (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== You can download the latest version of ComputerCraft [http://www.minecraftforum.net/topic/892282- here]. ===&lt;br /&gt;
&lt;br /&gt;
==Changelog:==&lt;br /&gt;
&lt;br /&gt;
{{Changelog}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Lists]]&lt;/div&gt;</summary>
		<author><name>GopherAtl</name></author>	</entry>

	<entry>
		<id>https://www.computercraft.info/wiki/index.php?title=Turtle.drop&amp;diff=2684</id>
		<title>Turtle.drop</title>
		<link rel="alternate" type="text/html" href="https://www.computercraft.info/wiki/index.php?title=Turtle.drop&amp;diff=2684"/>
				<updated>2012-08-19T05:18:32Z</updated>
		
		<summary type="html">&lt;p&gt;GopherAtl: adding notes on dropDown and dropUp, and use with furnaces&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{lowercase}}&lt;br /&gt;
{{Function&lt;br /&gt;
|name=turtle.drop&lt;br /&gt;
|args=count&lt;br /&gt;
|returns=true if an item was dropped; false otherwise.&lt;br /&gt;
|api=turtle&lt;br /&gt;
|addon=ComputerCraft&lt;br /&gt;
|desc=Drops all items in the selected slot, or if [count] is specified, drops that many items.&lt;br /&gt;
If the space in front of the turtle does not contain a chest, the items are dropped into that space.&lt;br /&gt;
If the space in front of the turtle contains a chest, the items are dropped into that chest.&lt;br /&gt;
The items will be placed in the first available slot, starting at the top left, moving right and then down.&lt;br /&gt;
&lt;br /&gt;
turtle.dropUp and turtle.dropDown are also available, and useful for loading furnaces; dropUp when below a furnace will load the items as fuel in the furnace's bottom slot, while dropDown when below will load the top slot for smelting.&lt;br /&gt;
|examples=&lt;br /&gt;
{{Example&lt;br /&gt;
|desc=Drops all items in the first available slot.&lt;br /&gt;
|code=turtle.drop()&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>GopherAtl</name></author>	</entry>

	<entry>
		<id>https://www.computercraft.info/wiki/index.php?title=Turtle_(API)&amp;diff=2683</id>
		<title>Turtle (API)</title>
		<link rel="alternate" type="text/html" href="https://www.computercraft.info/wiki/index.php?title=Turtle_(API)&amp;diff=2683"/>
				<updated>2012-08-19T05:15:57Z</updated>
		
		<summary type="html">&lt;p&gt;GopherAtl: added dropUp and dropDown, link to drop page, will edit that to include notes on variants next&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Turtle API is used to work with your Turtles.&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;0|&amp;quot;&lt;br /&gt;
!style=&amp;quot;background:#EEE&amp;quot; width=&amp;quot;200px&amp;quot;|Method name&lt;br /&gt;
!style=&amp;quot;background:#EEE&amp;quot; width=&amp;quot;*&amp;quot;|Description&lt;br /&gt;
!style=&amp;quot;background:#EEE&amp;quot; width=&amp;quot;*&amp;quot;|Min version&lt;br /&gt;
|-&lt;br /&gt;
|[[turtle.craft]]()&lt;br /&gt;
|Craft items using ingredients in the nine upper left slots&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[turtle.forward]]()&lt;br /&gt;
|Let the Turtle move forward&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[turtle.back]]()&lt;br /&gt;
|Let the Turtle move back&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[turtle.up]]()&lt;br /&gt;
|Let the Turtle move up&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[turtle.down]]()&lt;br /&gt;
|Let the Turtle move down &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[turtle.turnLeft]]()&lt;br /&gt;
|The Turtle turns left&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[turtle.turnRight]]()&lt;br /&gt;
|The Turtle turns right&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[turtle.select]]( slotNum )&lt;br /&gt;
|The Turtle selects the given Slot (1 is top left, 16 (9 in 1.33 and earlier) is bottom right)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[turtle.getItemCount]]( slotNum )&lt;br /&gt;
|Counts how many items are in the given Slot&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[turtle.getItemSpace]]( slotNum )&lt;br /&gt;
|Counts how many items you need to fill the stack in the given Slot&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[turtle.attack]]()&lt;br /&gt;
|Attacks in front of the turtle.&lt;br /&gt;
| 1.4&lt;br /&gt;
|-&lt;br /&gt;
|[[turtle.attackDown]]()&lt;br /&gt;
|Attacks under the turtle.&lt;br /&gt;
| 1.4&lt;br /&gt;
|-&lt;br /&gt;
|[[turtle.attackUp]]()&lt;br /&gt;
|Attacks over the turtle.&lt;br /&gt;
| 1.4&lt;br /&gt;
|-&lt;br /&gt;
|[[turtle.dig]]()&lt;br /&gt;
|Breaks the Block in front&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[turtle.digUp]]()&lt;br /&gt;
|Breaks the Block above&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[turtle.digDown]]()&lt;br /&gt;
|Breaks the Block below&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[turtle.place]]( [signText] )&lt;br /&gt;
|Places a Block of the first available slot in front. Engrave [signText] on signs if provided.&lt;br /&gt;
| 1.4&lt;br /&gt;
|-&lt;br /&gt;
|[[turtle.placeUp]]()&lt;br /&gt;
|Places a Block of the first available slot above&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[turtle.placeDown]]()&lt;br /&gt;
|Places a Block of the first available slot below&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[turtle.detect]]()&lt;br /&gt;
|Detects if there is a Block in front&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[turtle.detectUp]]()&lt;br /&gt;
|Detects if there is a Block above&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[turtle.detectDown]]()&lt;br /&gt;
|Detects if there is a Block below&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[turtle.compare]]()&lt;br /&gt;
|Detects if the block in front is the same as the one in the currently selected slot&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[turtle.compareUp]]()&lt;br /&gt;
|Detects if the block above is the same as the one in the currently selected slot&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[turtle.compareDown]]()&lt;br /&gt;
|Detects if the block below is the same as the one in the currently selected slot&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[turtle.compareTo]]( [slot] )&lt;br /&gt;
|Compare the current selected slot and the given slot to see if the items are the same, yields true if they are the same, and false if not.&lt;br /&gt;
| 1.4&lt;br /&gt;
|-&lt;br /&gt;
|[[turtle.drop]]( [count] )&lt;br /&gt;
|Drops all items in the selected slot, or if [count] is specified, drops that many items.&amp;lt;br /&amp;gt;If there is a inventory on the side it will try to place into the inventory, returning false if the inventory is full.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[turtle.drop|turtle.dropDown]]( [count] )&lt;br /&gt;
|Drops all items in the selected slot, or if [count] is specified, drops that many items.&amp;lt;br /&amp;gt;If there is a inventory on the side it will try to place into the inventory, returning false if the inventory is full. If above a furnace, will place item in the top slot.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[turtle.drop|turtle.dropUp]]( [count] )&lt;br /&gt;
|Drops all items in the selected slot, or if [count] is specified, drops that many items.&amp;lt;br /&amp;gt;If there is a inventory on the side it will try to place into the inventory, returning false if the inventory is full. If below a furnace, will place item in the bottom slot.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[[turtle.suck]]()&lt;br /&gt;
|Picks up an item from the ground or an inventory in front of the turtle. If the turtle can't pick up the item, the function yields false.&lt;br /&gt;
| 1.4&lt;br /&gt;
|-&lt;br /&gt;
|[[turtle.refuel]]()&lt;br /&gt;
|If the current selected slot contains a fuel item, it will consume it to give the turtle the ability to move.&amp;lt;br /&amp;gt;Added in 1.4  and is only needed in hardcore turtle mode. If the current slot doesn't contain a fuel item, it yields false. Fuel values for different items can be found at [[Turtle.refuel#Fuel_Values]].&lt;br /&gt;
| 1.4&lt;br /&gt;
|-&lt;br /&gt;
|[[turtle.getFuelLevel]]()&lt;br /&gt;
|Returns the current fuel level of the turtle, this is the number of blocks the turtle can move.&amp;lt;br /&amp;gt;If turtleNeedFuel = 0 then it yields &amp;quot;unlimited&amp;quot;.&lt;br /&gt;
| 1.4&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Trivia:&lt;br /&gt;
During the 1.4 beta, turtle.getFuelLevel() in softcore(that is now turtleneedsfuel = 0) returned 9000.&lt;br /&gt;
[[Category:APIs]]&lt;/div&gt;</summary>
		<author><name>GopherAtl</name></author>	</entry>

	</feed>