Symmetrical Cellular Automata Control Panel V1.2 Changes
1. Correcting Errors. top
- FindEnd returns "osc" consitantly instead of only on zero gen and "end" otherwise.
Done.
- Control panel has a "noNote" flag. Is this consistandt? also notes in scripts has some options to enable control of.
Done 'echo' added.
- Note for layer stack and Tile uses 0/1 but true /false better.
Done.
- typeBOOL only used for castelled, toggle like stack and tile would be better.
Done
- stack layer tile layer incorrect, if golly layer menu is used.
Done.
- find fate type is blank initialy.
Done.
2. Scripts should include text commands for the control panel top
- Include simple variables
Variables are alphanumeric strings following a leading '$'.
- no loops or conditionals
- Sripts can append text and expressions to variables
- Scripts can put results in the paste buffer
- Macros (lists of script commands) can be assigned to keys which run when the key is pressed.
Some Command examples
g.getpop(), g.getgen(), g.getheight(), g.getwidth(),
g.getrule(),
getRule(),
$b = 4,
run(3),
run($b),
run(g.getwidth() * 2 + 10),
step,
width = 20,
hight = 15,
geo = 'Orthogonal',
geo = 'Diagonal',
geo = 'Round Island',
geo = 'Diamond Island',
geo = 'Round Island',
geo = 'Square Island',
geo = 'Random',
geo = 'Checkerboard',
rule = 'H1C8',
rule = 'B12/S4',
seed = '123',
geo = 'Orthogonal',
geo = 'Diagonal',
geo = 'Round Island',
geo = 'Diamond Island',
geo = 'Round Island',
geo = 'Square Island',
geo = 'Random',
geo = 'Checkerboard',
island_size = 40,
random_percent = 30,
CB_squares = 4,
castellateOB = 'TRUE',
castellateOB = 'FALSE',
fill_type = 'Solid',
fill_type = 'Random',
invert_island = 'FALSE',
$a = 5,
run($a..'5'),
rule_list = 'H010,H1C8',
next_rule,
seed_list = '123,2a2b,789',
next_seed,
find_fate,
fate_type = 'OSC',
fate_type = 'Break',
run(5+2*3+4/2),
fate_initial_step = 20,
fate_max_gen = 21,
fate_min_period = 25,
fate_max_period = 23,
island_analysis,
stack_layer,
tile_layer,
echo = 'on',
echo = 'off',
banded_states,
copy = 'Uni width '..g.getwidth()..'\ngen '..g.getgen()..'\n',
macro_d_shift = "note='off';rotate = 'd5' "
Wish List for Later Releases top
- Using the Geometry to Determine Seed Symmetry more Accurately
- Allow scripts to call scripts.
Scripts need there own environment so that they do not alter the environment of the calling script.
- Tool for detecting Symmetry
- Some file handling exceptions are not handled so correcting path names can be a pain.<.li>
- script2 findEnd lua module reports the population of the largest state rather than the population of the state that golly reports. This is confusing.<.li>
- allows non symmetric B/S rules to be specified but actually sets the symmetric rule ignoring the S section
Needs to be clarified.
- use of g.show is confused
| |
© 2024 Paul Rendell. |
Last Update 11/March/24
Comments to Paul Rendell |