Inspiration:
I was next in line for the #tweetcart_relay from @CarsonKompon's "Shaped Entropy" (TEIA OBJKT #752228)
My plan was to change as few characters as possible, but create a large change in the output.
Entropy Locking (reducing the entropy of a generative piece using seeded pseudo randomization) and using screen data as a sprite-sheet to be re-drawn to the screen (causing a sort of feedback loop).
Ex-Maelstrom, or out of the madness has a little more meaning to me than I had planned. Essentially it came from the idea that there may be some kind of madness / unknown times on the horizon, but out of the storm, when you break things down come some perfect moments of calm which we all should appreciate more.
What is a Tweetcart Relay?:
We receive a tweetcart as a 1/1 from a friend, and we modify it to make our own tweetcart, which we then send to someone else, to continue the process. Eventually it's our hope to have many relay chains going on with many people, anyone at all who likes to make tweetcarts or wants to learn how :)
Suggested Relay Guidelines from myself:
-> Copy the prior tweetcart 1:1, and tweak the cart while keeping some part of the original program until you've left your aesthetic changes however robust, and pass it on
or
-> Copy just a portion of the cart and build new, before passing on the tweet
Relay Information:
-> inspiration tweetcart: https://teia.art/objkt/752228
-> inspiration tweetcart author: @CarsonKompon; tz1XqJ9e6NdouxdGvm2V3aknwFnGL6Kinu6A
-> destination tweetcart author: @aebrer; tz1ZBMhTa7gxSpaeXoqyc6bTCrxEHfZYSpPt
Pico-8 Source Code:
```
?"\^!5f10🐱☉8웃9:♥⌂;⬅️3⬇️1▒"
r,p,q=rnd,srand,poke
s=r(5)
p(s)
f=0
q(0x5f54,0x60)
q(24364,5)
cls(r(8))
::_::
for i=2,99do
x,y=r(99),r(20)z=9+y
?chr(z),x,y,pget(x,y)+z
end
if(r()>.8)f+=8p(s)sspr(r(6),r(2),122,122,0,0,128,128)
if(f>=1)f=2s+=1p(s)
flip()goto _
```
Explanation:
```
-- using @2dArray's excellent Palette-Maker
-- https://www.lexaloffle.com/bbs/?pid=68190
?"\^!5f10🐱☉8웃9:♥⌂;⬅️3⬇️1▒"
-- store keywords to save chars later on
-- srand resets the random seed
-- poke will let us adjust Pico-8 Memory values
r,p,q=rnd,srand,poke
-- get and assign random seed value
s=r(5)
p(s)
-- f will be an incrementing value from 0-4
-- helping us 'pick the entropy lock' by getting a new seed value
f=0
-- set the screen memory as the spritesheet with poke()
q(0x5f54,0x60)
-- mirror the screen from left to right with poke()
q(24364,5)
-- assign a random start color
cls(r(8))
-- label for GOTO statement
::_::
-- every frame, print 97 characters at the top of the screen
-- ? is shorthand for print, and z is the character to print to the screen based on the y position
-- print the color of the given x,y coord
-- this will loop through the palette
for i=2,99do
x,y=r(99),r(20)z=9+y
?chr(z),x,y,pget(x,y)+z
end
-- if random value is high enough, lock entropy by resetting the seed
-- randomly feed-forward a part of the display
if(r()>.8)f+=8p(s)sspr(r(6),r(2),122,122,0,0,128,128)
-- every time we lock, increment the seed by 2
if(f>=1)f=2s+=1p(s)
-- animate at a "smooth" 30fps
flip()
-- return to the GOTO label (causing infinite loop)
goto _
```
To Friends and Creators:
Want to change the code, or make a relay Tweetcart of yourself based on this one? No problem! You can find the official education edition of the Pico-8 here, for free, usable in the browser, thanks to the Pico-8 Creators lexaloffle & co: https://www.pico-8-edu.com/ . Simply press escape to get to the code editor, copy and paste the source code here into there, and press ctrl+r to run the pico8.
This is my first tweetcart so I hope you enjoy. You can find me at @p1x3lboy
I hope you enjoy.
License: CC0