- ComputerCraft | Programmable Computers for Minecraft
- → TangentDelta's Content
TangentDelta's Content
There have been 22 items by TangentDelta (Search limited from 30-March 23)
#49874 How/why do you use computercraft?
Posted by TangentDelta on 14 November 2012 - 08:47 AM in General
#46195 Custom Music on floppies?
Posted by TangentDelta on 31 October 2012 - 04:01 PM in Ask a Pro
#45316 [WIP] 3DDrawer - 3D in CC!
Posted by TangentDelta on 28 October 2012 - 04:54 PM in Programs
#44075 [1.4.6]AutomaPaint 1.1.1 (Turn computers into integrated circuits!))
Posted by TangentDelta on 25 October 2012 - 12:50 AM in Programs
#43308 [1.4.6]AutomaPaint 1.1.1 (Turn computers into integrated circuits!))
Posted by TangentDelta on 22 October 2012 - 08:46 PM in Programs
#42016 [1.4.6]AutomaPaint 1.1.1 (Turn computers into integrated circuits!))
Posted by TangentDelta on 19 October 2012 - 10:27 AM in Programs
billysback, on 18 October 2012 - 06:27 PM, said:
I bet you're using an older version of CC 1.45. You have to use pre-3, no other version will work.
Either that, or you're using an older version of AutomaPaint, and a newer version of 1.45.
#41744 [1.4.6]AutomaPaint 1.1.1 (Turn computers into integrated circuits!))
Posted by TangentDelta on 18 October 2012 - 06:14 PM in Programs
#41665 [1.4.6]AutomaPaint 1.1.1 (Turn computers into integrated circuits!))
Posted by TangentDelta on 18 October 2012 - 04:13 PM in Programs
#41465 [1.4.6]AutomaPaint 1.1.1 (Turn computers into integrated circuits!))
Posted by TangentDelta on 18 October 2012 - 12:05 AM in Programs
#40999 [1.4.6]AutomaPaint 1.1.1 (Turn computers into integrated circuits!))
Posted by TangentDelta on 16 October 2012 - 08:50 PM in Programs
All old saves won't work with the current 1.0.5 version. To make them compatible, open them up, and where it has the width and height, put a "|" after that number, followed by the same exact number. Sorry for this inconvenience!
#40674 [1.4.6]AutomaPaint 1.1.1 (Turn computers into integrated circuits!))
Posted by TangentDelta on 15 October 2012 - 09:03 PM in Programs
#40635 [1.4.6]AutomaPaint 1.1.1 (Turn computers into integrated circuits!))
Posted by TangentDelta on 15 October 2012 - 07:18 PM in Programs
Welcome to AutomaPaint! A 2D cellular automaton lab, the first ever for ComputerCraft!
Created as a spiritual successor to TangentAutomaton (a one-dimensional cellular automaton lab), AutomaPaint offers many of the same features as its predecessor! A custom starting generation, custom rules, and a re-sizable environment!
FEATURES
- Paint Mode
A.K.A: "The Canvas". A pretty generic paint program, paint mode offers an environment where users can set the starting generation for their automaton. Pixel placing is done with the left mouse button, pixel erasing is done with the right mouse button, and pixel color picking is one with the middle mouse button. using the scroll wheel scrolls through all the colors, indicated at the bottom of the screen.
To bring up the main editor menu, press the "ctrl" key. On the bottom of the editor, five buttons, "[L] [S] [M] [T] [X]", will appear. "[L]", "Load", does what you'd expect it to do, it loads a TangentPaint file. Clicking on it will bring up a prompt on the bottom, where you enter the name of your file. Make sure the file is in the same director as TangentPaint, or else nothing will get loaded. "[S]", "Save", is also what you'd expect, it saves all data from the text editor and paint mode "canvas" into a save file. Clicking on it brings up a prompt that you can type in the name of your file. "[M]", "Menu" brings up a menu with a few buttons: "[TXT] [BACK] [START]". "[TXT]", will take you to the text editor. "[BACK]", will take you back to the canvas. "[START]", will take you to the cellular automaton environment.
The "[T]" button, "tools", will bring up a menu containing editing tools. Currently, the only tool in there is the "line tool". To use the line tool, have the color you want to use already selected, and click on the starting point. A "1" with a background of the color you chose previously will appear in the spot. The second place that you click on will draw a line from the "1" point, to the place you clicked. WARNING: Panning while using the line tool has unpredictable results! You have been warned!
The last button, "[X]", simply stops the script, and takes you back to the terminal.
Using the arrow keys in the canvas pans you around. Panning into a place with nothing expands the canvas. Keep that in mind!
- Text Editor Mode
Text editor mode is a rather simplistic text editor, designed to do nothing more than edit the rules for the automatons. To leave this mode, and return to the canvas, press the "Ctrl" key. All changes you make here are automatically saved when you quit. Please take note that any "spaces" in the editor act as a "carriage return", and anything past one will not get saved! Remember, I made this editor for editing a simple CA rule system, not writing pretty attachment notes on images!
- Cellular Automaton Lab
The star of the show, the CA lab allows you to run the CA that you create in the other two editors. The environment is finite, so any gliders that hit the side of the world will act as if they hit a brick wall, and stop. Future version might allow you to run this mode on a monitor.
The new interface for the CA Lab can be brought up with the "Ctrl" key. On this menu, you'll see four buttons: "[#] [BACK] [BACK & SAVE] [START GENERATING]". "[#]" will bring up a (currently a bit buggy) menu that allows you to enter how many generations you want the CA to run. "[BACK]" will take you back to the canvas. "[BACK AND SAVE]" will bring up a prompt asking if you're sure you want to overwrite the canvas with the sandbox. If you hit the "Y" key on your keyboard, the canvas will be over-written with the current generation in the CA. Hitting anything else will close it, and take you back to the CA Lab. "[START GENERATING]/[STOP GENERATING]" Either turns the automatic clock on, or off. The CA will run as fast as it can with this on.
THE RULE SYSTEM
The rule system for the CA lab was made to be as small and efficient as possible. If you have any questions on 2D CA rules, make sure to check out the page on wikipedia.
The syntax for the rule system is as follows:
A>B|X-Y,A is the state to turn from if the conditions are met. B is the state to turn to if the conditions are met. Basically think of the ">" as an arrow. "A turns into B". "|" means "If the following condition occurs". "|" can be replaced with ":", which means "If the following condition does not occur". This is useful for rules where cells die if they're not surrounded. X is the number of cells in the states defined in Y that are required to trigger the A>B. "," is simply there as a placeholder for future symbols. If you don't include the "," at the end, the rule won't work! I'm going to change this in the next version!
Examples:
Conway's game of life:
0>1|3-1, 1>0:23-1,A cell with a state of 0 will become a cell with a state of 1 if it is surrounded by 3 neighbors with the state of 1. End.
A cell with a state of 1 will become a cell with a state of 0 if it is not surrounded by 2 or 3 neighbors with the state of 1. End.
WireWorld:
1>2|0-F, 2>3|0-F, 3>3|0-F, 3>2|12-1,
New in version 1.1.1:
To use the redstone output system, have the resulting state be a "@". Depending on what side of the cell that is reciving contact, a redstone signal will be emitted. An example use of this symbol, for use in wireworld, is "4>@|1234-1". The "turn from" value is simply the state that the "sensor" will use when placed down. It will emit a redstone signal if it is surrounded by 1, 2, 3, or 4 cells with the state of 1.
The side of the computer that the redsotne will be emitted from is dependent on what side of the cell was "collided" with. Contact with the bottom of the cell will output a redstone signal on the bottom of the computer, contact with the right side of the cell with output the the right side of the computer, etc.
Sensing of what side the cell was "interacted" with is the first step towards the JvN neighborhood, which should be implemented within the next 5 versions.
CHANGE LOG
--V. 1.0.1:
--Cleaned up the code a bit
--Updated the os.pullEvent system to the new version in Pre. 3
--Going into the CA lab now saves, and ten loads, to a local file. This helps with keeping the rule system cleaned.
--V. 1.0.5
--Cleaned up the code a bit more
--Added panning and scrolling!
--Added a better rendering system.
--Changed the save system a bit. OLD SAVES WILL NEED MODIFYING!
--Fixed a few random rendering bugs in the CA lab
--CA lab should run a bit faster
--V. 1.0.9
--Added a line tool! Woot!
--Canvas now has a "character" layer and a "color" layer, making it 3D.
--Renovated the rendering code to support the new 3D canvas
--Ctrl now hides/shows the toolbar. A bit buggy, but it works for now.
--Cleaned up some troublesome code
--Added a toolbar to the CA lab
--Allowed saving changes from the lab, to the canvas.
--WARNING: Some parts of the line tool are quite buggy, as it is still a WIP! Use at own risk!
--V. 1.1
--Cleaned up the code a bit.
--Created a new menu system.
--Added redstone output!
--Changed the ">" symbol to "}".
--Changed the "-" symbol to "/".
--fixed the weird jumpy CA Lab issue
--V. 1.1.1
-- !Completely re-wrote the rules system, speeding things up greatly
-- !Fixed a bug with the "back" menu.
-- +Added back ">" and "-"
-- +New redstone output system ("@"). Now dynamic, and much less cumbersome!
-- +Added some groundwork for JvN neighborhood*
-- +Added "Known bugs" section to changelog
-- +Added "Next version" section to changelog
-- +Added "Planned" section to changelog
-- -Removed some testing code
-- -Removed easter eggs
KNOWN BUGS
-- !!Text editor will have artifacts from previous rule that was loaded
-- !Minor flickering in some places
-- !!Line tool glitches out if you pan the canvas while using it
-- !!Clicking on load, then pressing "return" with nothing entered does weird stuff
NEXT VERSION
-- Rectangle tool
-- Better text editor
-- Attempt to remove annoying "," character at end of rules
PLANNED FEATURES
--JvN neighborhood
--Support for more than 16 cell states
--Redstone input
--Color selection menu
--"Will always" symbol for rule system
--"Wildcard" symbol for rule system
--More tools in tool menu
--Better save system
--Scrolling in rule editor
Download should be at the bottom of this post. Install it just like any other computercraft script! I apologize for the messy code. As development continues, so will the code's neatness. Messy code is a sign of development!
Please report all bugs in this topic!
Download: https://dl.dropbox.c...42/TangentPaint
#38808 One-Dimensional Cellular Automaton
Posted by TangentDelta on 10 October 2012 - 08:15 PM in Programs
Cranium, on 10 October 2012 - 03:55 PM, said:
#38407 One-Dimensional Cellular Automaton
Posted by TangentDelta on 09 October 2012 - 06:02 PM in Programs
The turing function is now 100% my code, and should run two times as fast as before.
#38306 Help! unknown error happened
Posted by TangentDelta on 09 October 2012 - 11:48 AM in Ask a Pro
#38132 One-Dimensional Cellular Automaton
Posted by TangentDelta on 08 October 2012 - 07:13 PM in Programs
#38125 One-Dimensional Cellular Automaton
Posted by TangentDelta on 08 October 2012 - 06:59 PM in Programs
#38103 One-Dimensional Cellular Automaton
Posted by TangentDelta on 08 October 2012 - 06:01 PM in Programs
Cranium, on 08 October 2012 - 05:26 PM, said:
jag_e_nummer_ett, on 08 October 2012 - 05:26 PM, said:
#38083 One-Dimensional Cellular Automaton
Posted by TangentDelta on 08 October 2012 - 05:06 PM in Programs
Many of you might know me for my "TangentLock" program, one of the first public lock programs for ComputerCraft.
Today I have a very special program for you, a one-dimensional cellular automaton. What is a cellular automaton? It is basically a simple turing machine that manipulates bits according to a set of rules. To read more, visit the Wikipedia page here.
One-dimensional CA are used in the modern world for things like advanced programming algorithms, data encryption, artificial creativity, probability, sudo-random number generation, and abstract artwork.
This project was more of a fun relaxing thing for me to do in-between college classes. While working on it, I also put alot of effort into making it an educational script to help people better understand Lua. Nearly every line has a comment explaining what it does.
This program was completely coded within SciTE. The only actual computercraft testing that went on, was by Cruor on the IRC.
To use my program, install it like any other computercraft program. When you start it, it will ask you for a width. The width will define how large the environment for the CA will be. I recommend entering a number within the 2^n string, but anything will work. Make sure that your width isn't too small, or you won't see anything. Too large, and you'll run out of space on the computer screen. The bigger the width, the longer it will also take for the automaton to complete.
The next prompt will ask you for a rule. The rule is an 8-bit (numbers 0-255) decimal number, and corrosponds to Wolfram's code. To learn how these rules work, I highly recommend visiting the wikipedia link above. If you're lazy, you can look at a large list of interesting rules here.
After that's set up, you'll be asked if you want to enter a custom seed. In programming, a seed is a set of predetermined data that a program acts upon. If you choose to enter a seed by typing "y", enter the starting pattern in 1's and 0's (I'm unsure of what happens if you use anything else).
If you choose not to use a custom seed, you'll be asked if you want to use a random seed. If you choose yes to this, a random beginning seed will be generated and used.
If you don't choose to use a custom or random seed, the default seed will be chosen. The default seed is a single "on" cell in the middle of the starting seed. This seed usually generates triangular structures with very little chaos (with the exception of rule 110).
Once you've done all of that, the automaton will begin generating patterns based on your input. If the width is too wide, it might wrap around and distort, which is why smaller numbers are recommended for the width. If you're having a hard time with choosing a width, go with a width of 64.
My script can be found here: http://pastebin.com/Ru3nfViz
Change-log:
--1.4--
Added:
- Added some sexy line numbering
- Code is now 100% all mine
- Removed my custom matrix, reducing memory usage by a factor of math.huge()
- Removed all un-needed variables and functions
- Tweaked the seed providing functions just a bit
- Shortened a ton of long functions
- The rule table is now either "1" or "0" instead of "true" or "false", which allows for instant translation without converting it.
- Revised a few comments
- Re-arranged the order that data is asked for at the beginning, now custom and random seeds should work.
- Fixed the fickle way that some rules got cut off
Screenshots:
Note: Because of a weird "bug" in computercraft, "t" (tab) doesn't work, and displays as a "?". I had to take out my line numbering code in the "compute" function to get it to display correctly.
Rule 90, run with a width of 64 and starting with the default seed.
Rule 110, run with a width of 64 and starting with a random seed.
Rule 90, run with a width of 64 and starting with a random seed.
#35063 Dan200 Quotes and rumors!
Posted by TangentDelta on 28 September 2012 - 04:53 PM in General
#753 How To Install On Windows [Video]
Posted by TangentDelta on 19 February 2012 - 01:35 PM in Tutorials
#752 How To Install On Windows [Video]
Posted by TangentDelta on 19 February 2012 - 01:33 PM in Tutorials
Just an update on my install video. I should make a better one using the new Win. 7 PC I got... before I put linux on it.
- ComputerCraft | Programmable Computers for Minecraft
- → TangentDelta's Content