Page 1 of 1
A Javascript Cellular Automata Viewer
Posted: July 27th, 2020, 10:23 am
by silversmith
I made a cellular automata viewer which is designed to be accessible and easy to use, mainly in cases where downloading proper software is not an option. It is not particularly powerful or versatile. It does support several formats, although I don't want to explain too much here with the goal of making the website self explanatory.
I am in the process of commenting my code to make it publicly available in the near future(though you could inspect the website itself or I can provide a raw version if requested). I would appreciate any suggestions and bug reports, and requests for features will be considered.
https://silversimulations.com/caplayer
Re: A Javascript Cellular Automata Viewer
Posted: July 28th, 2020, 5:42 am
by yujh
Umm...
It can’t detect gliders when searching
Probably it also stop after 2000 gens?
Re: A Javascript Cellular Automata Viewer
Posted: July 28th, 2020, 9:51 am
by silversmith
Yeah the "search" is quite basic. I have not yet implemented a spaceship catching mechanism, so most rules need to be run in a toroidal universe when searching. The search also does not log any results, just resets when the entire grid becomes periodic with one of the periods provided.
The 2000 generation stop is a memory problem that I am currently working on.
Edit Dec 24, 2021:
The site is now at http://www.silversimulations.com/CAsim(depreciated)
Re: A Javascript Cellular Automata Viewer
Posted: April 1st, 2022, 10:46 pm
by silversmith
I have finished remaking the core elements of this simulator with a new, much faster algorithm.
Supports:
-cut, copy, paste
-RLE export and import
-INT Generations rulespace
Planned:
-Pattern position enumeration
-More symmetries
https://silversimulations.com/arise
Edit April 3: fixed B0 Generations and added anti-strobing option
Edit April 12: Reworked existing automatic search options, and added a few more
Edit April 15: Added the option to automatically save search result RLEs
Re: A Javascript Cellular Automata Viewer
Posted: May 9th, 2022, 9:47 pm
by silversmith
After implementing the ability to export the various simulation options, here is an example automated search, which finds various push, pull, and fire command salvos in the OCA rule B2ein3cijn4cnrwy5cnq6e/S1c2-ai3acny4anqy5c6ek8
https://silversimulations.com/arise/?v= ... progress,0
After the "Start" button is pressed the results will be output to the RLE box at the bottom of the page.
Re: A Javascript Cellular Automata Viewer
Posted: May 26th, 2022, 8:49 am
by ihatecorderships
Are
these the correct options to search for random soups that settle into ash that is not p1, p2, or p4?
EDIT: I noticed that escaping gliders make the simulation always run to gen 2000. Is there a way to make universe toroidal?
Re: A Javascript Cellular Automata Viewer
Posted: May 27th, 2022, 6:23 am
by silversmith
ihatecorderships wrote: May 26th, 2022, 8:49 am
Are
these the correct options to search for random soups that settle into ash that is not p1, p2, or p4?
EDIT: I noticed that escaping gliders make the simulation always run to gen 2000. Is there a way to make universe toroidal?
Yes, those are the correct settings. The gliders cause the simulation run to gen 2000 because it does not yet have the ability to recognize them as being stable. I am considering fixing this by adding the option to detect when the population has stabilized.
Toroidal universes are not currently supported.
Re: A Javascript Cellular Automata Viewer
Posted: July 26th, 2022, 10:12 pm
by silversmith
Toroidal universes are now supported, along with finite(planar) universes.
They should work with existing features like B0 rules, search functions, and import/export.
Re: A Javascript Cellular Automata Viewer
Posted: August 28th, 2022, 3:46 pm
by silversmith
I have added collaborative functionality to the program, where several people can work on the same pattern at once. Running the pattern is done locally, but you can reset it to see what changes have been made.
The multiplayer application is available here:
https://collab.silversimulations.com/
Feel free to notify me of any issues or things you think might be missing.
Re: A Javascript Cellular Automata Viewer
Posted: August 28th, 2022, 3:49 pm
by hotdogPi
It doesn't look multiplayer to me, unless I was somehow the only one there.
Re: A Javascript Cellular Automata Viewer
Posted: August 28th, 2022, 4:00 pm
by silversmith
The website has roughly five views per week. You were likely the only person active.
Re: A Javascript Cellular Automata Viewer
Posted: November 25th, 2022, 5:43 pm
by silversmith
I published a new release of this program, which should address some of the suggestions I received.
Besides bug fixes the changes include:
- Added LZ77 compression to patterns exported as a URL
- Added more options for searches
- Improved overall documentation
- Added setting to change the simulation speed
- Added mouse wheel zooming
- Added running an area for 1 generation
- Adjust amount of movement based on framerate
- Switched some key bindings
Re: A Javascript Cellular Automata Viewer
Posted: December 3rd, 2022, 12:38 am
by silversmith
I have added some long overdue performance optimizations to the program, along with one minor bug fix.
Additionally, the hosting provider for the collaborative CA editor has changed, which will result in longer loading times for the webpage.
Edit: Added an optimization for handling large patterns.
Edit-2: Fixed a bug preventing keyboard inputs from working
Edit-3: Fixed another bug with user input
Re: A Javascript Cellular Automata Viewer
Posted: August 6th, 2023, 7:29 am
by silversmith
I made more improvements to caplayer, including:
- More flexible and capable search options
- Significant performance increases
- Extended partial support of History and StateInvestigator rules to all INT rules
- Flipping and rotating patterns
- Improved pattern identifying function
- A pattern preview for copied and identified patterns
- Automatic conversion of exported rules into "B#/S#" or "B#/S#/G#" format
Here's an example search using some of the new features
https://www.silversimulations.com/capla ... Reset,When
Edit: fixed bug with broken Start/Stop button
Re: A Javascript Cellular Automata Viewer
Posted: August 13th, 2023, 11:27 am
by otismo
@ silversmith
been following development of your Project
I have Arise, and now have added CAplayer
Your work is much appreciated -
Thank You !
Re: A Javascript Cellular Automata Viewer
Posted: August 22nd, 2023, 11:09 pm
by silversmith
otismo wrote: August 13th, 2023, 11:27 am
@ silversmith
been following development of your Project
I have Arise, and now have added CAplayer
Your work is much appreciated -
Thank You !
Thank you as well! I am glad to hear others' interest in this project.
Also, in the newest update to CAplayer I implemented general multistate rule support, and it now supports LifeHistory and [R]History rules. Here is
an example LifeHistory pattern by qqd:
https://www.silversimulations.com/capla ... ~37A20GA41
Re: A Javascript Cellular Automata Viewer
Posted: May 8th, 2024, 6:19 am
by silversmith
After doing some changes to the backend for my website, I have merged the collaborative features for CAplayer into the "main site". The collaborative functionality should be up and running, but anyone can feel free to tell me if they encounter issues.
Re: A Javascript Cellular Automata Viewer
Posted: May 8th, 2024, 7:32 am
by otismo
Look'in Good !
Thank You !
I especially like your water...
Are you going to add "Load Pattern"
so we can add our folder of pattern files ?
( "uploading RLEs through the text box"- - -
should do for the time being - thanks...

)
https://silversimulations.com/caplayer/
Re: A Javascript Cellular Automata Viewer
Posted: May 8th, 2024, 7:48 am
by silversmith
I hadn't considered it until now, but I'll definitely try! Adding the ability to upload pattern files would be a a good addition to uploading RLEs through the text box.
Re: A Javascript Cellular Automata Viewer
Posted: May 28th, 2024, 3:09 am
by silversmith
I have added the ability to upload RLE's from files and download any exported RLE as a file.
Re: A Javascript Cellular Automata Viewer
Posted: June 3rd, 2024, 4:16 pm
by wirehead
Just tried that link and the pattern itself runs okay, except when I click on the “identify pattern” button under More Options it spins for a while and then says “couldn’t recognize periodic pattern” despite it being obviously an oscillator. I guess this is a bug.
Re: A Javascript Cellular Automata Viewer
Posted: June 3rd, 2024, 4:25 pm
by silversmith
wirehead wrote: June 3rd, 2024, 4:16 pm
Just tried that link and the pattern itself runs okay, except when I click on the “identify pattern” button under More Options it spins for a while and then says “couldn’t recognize periodic pattern” despite it being obviously an oscillator. I guess this is a bug.
There's two reasons for that. One is that the pattern identification is currently limited to patterns with a period less than 300. The other is that if you try to identify the pattern from the beginning, the history cells prevent the simulation from ever returning to the same state. I've added a patch which increases the period limit to 1000.
Re: A Javascript Cellular Automata Viewer
Posted: June 10th, 2025, 3:11 pm
by silversmith
I have completed a new release of this program, which mainly improves performance and the general ability to handle large patterns. These changes also enable further performance improvements in the future.
The changes include:
- Moving the heavy computations into threads separate from the UI
- Caching the visible area so minor edits can be made even if the program lags.
- Fixed the ability to load [R]Super patterns as [R]History patterns
- Tweaked some editing functionality
- Should remain compatible with existing v0.4 search profiles and settings
As before, any suggestions or reports of issues would be appreciated.