SamuKata
Lu Wilson
Lu Wilson

patreon


Count on the Count

It's that time of the week again! It's time for the...

⚑🐀 TODEPOND TIMES ⚑🐀

What's new this week?

LNCA

In my next video, I'm going to be recreating some well-known cellular automata (with my own little twists). One of these is going to be 'LNCA' (short for Lots of Neighbourhoods Cellular Automata). It's kind of a parody of Slackermanz's MNCA (as much as it's possible to make a parody of a cellular automata).

I already made some progress on this, which I mentioned in a previous update. But, as Slackermanz mentions in his blog post, this kind of cellular automata is a very intensive computation to run. So this week... I rewrote my LNCA engine to make it run faster.

The slowest part of the code was this: Every cell needs to do a lot of COUNTING every single frame. It needs to count up the cells around it (in lots of different ways). This takes a long time. 

Imagine you're a bus driver. And you need to know how many people are in your bus at any time. When someone gets onto the bus... you wouldn't recount all the passengers from zero - you would just add one. And when someone gets off the bus... you wouldn't recount all the passengers from zero again - you would just subtract one.

I used this idea to make the engine run faster. We sacrificed robustness... for speed. And it's been fun to make some colourful patterns with it!

CableWorld

One of the other cellular automata I'm going to explore is... Wireworld. It's beautifully simple. And it seems to simulate the idea of signals/electricity passing through wires.

Every cell has one of four states:
🐀 Empty
🐀 Front (of a signal)
🐀 Back (of a signal)
🐀 Wire

To make something cool in wireworld, you need to have a lot of patience - and attention to detail. The way it works is quite fragile, so I have a lot of respect for any clever person who uses it.

So... I added an extra state!
🐀 Empty
🐀 Front (of a signal)
🐀 Middle (of a signal)
🐀 Back (of a signal)
🐀 Wire

This means that my version - 'Cableworld', is a bit more stable. Signals last for longer, so there's less chance of them going backwards, or crashing into each other. You can't make cool stuff like you can in Wireworld... but that's ok with me :)

Screens

The video after the next one is going to be about a new engine called ScreenPond. It'll let you achieve the droste effect by placing screens inside screens... and it'll let you warp the position and size of things too. Sort of like... a funfair mirror.

Patron (and Froggy Hero) Magnogen, showed me how to code some of this. They helped me map positions from one plane to another plane (in 3D-ish space). This blog post really helped us!

DreamBerd

I've been inventing a joke programming language called DreamBerd. It's made up of lots of silly little programmer-jokes. And it was a bit of fun!

I hope to actually make it work at some point, by building it with my language-making-language MotherTode. But there are three main issues with MotherTode at the moment:
πŸ₯ It has too many confusing symbols.
πŸ₯ Error messages are broken.
πŸ₯ It's really hard to make text strings work smoothly in it.

I would like to work on these at some point --- I also plan to use it to implement sharing in CellPond! So it's nice that it'll help multiple projects.

Thank you so so much for supporting me and my videos! I'm hoping to release the next one in the next two weeks! I hope you have a great weekend and week... See you next time :) ⚑🐣⚑

Days since tode went missing : 49


More Creators