arkivo.art

Shaped Entropy

Carson

Inspiration: I was given the opportunity to continue the #tweetcart_relay from @Alexthescott's "entropy lock pick" (TEIA OBJKT #752033) Like Alex, I wanted to preserve two major features from the original carts. 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). The main changes I wanted to bring to the table was experimenting with *what* is drawn to the screen (and where) aswell as applying a fresh new palette. 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/752033 -> inspiration tweetcart author: @Alexthescott; tz1St3n29AbYXZXV8W1BG41qYzz86J2CFAW7 -> destination tweetcart author: @P1x3lboy; tz1SvJbECAva9gxczfBmX3CAFUszgQXNgsNm Pico-8 Source Code: -> 115 Tokens, 264 Characters (272 Tweet Characters) ``` ?"\^!5f10🐱☉8웃9:♥⌂;⬅️3⬇️1▒" r,p,q=rnd,srand,poke s=r(-1) p(s) f=0 q(0x5f54,0x60) q(24364,5) cls(r(16)) ::_:: for i=0,16do x,y=r(65),r(127)z=16+y/16?chr(z),x,y,(pget(x,y)+1)%13 end if(r()>0.8)f+=1p(s)sspr(r(6),r(6),122,122,0,0,128,128) if(f>=4)f=0s+=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(-1) 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(16)) -- label for GOTO statement ::_:: -- every frame, print 16 characters down on the left side 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 + 1 modulo 13, -- this will loop through all 14 (since 0 is included) colours in the palette for i=0,16do x,y=r(65),r(127) z=16+y/16 ?chr(z),x,y,(pget(x,y)+1)%13 end -- if random value is high enough, lock entropy by resetting the seed -- randomly feed-forward a part of the display (I decided to go in more than alexthescott did) if(r()>0.8)f+=1p(s)sspr(r(6),r(6),122,122,0,0,128,128) -- every 4 locks, increment the seed by 1 (this produces similar results to generating an all-new seed but is less characters in the long run) if(f>=4)f=0s+=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. All of my social media can be found at carsonk.net, but I am most active on Twitter @CarsonKompon. Feel free to reach out if you're interested in learning more about PICO-8 and generative art as a whole :) License: CC0

Blockchain tezos
Smart Contract KT1RJ6PbjHpwc3M5rw5s2Nbmefwbuwbdxton
Platform HEN
Token ID 752228
Minted at 28 Jun 2022, 15:27 UTC

Metadata URI Metadata URI
Artifact URI Artifact URI

creativecoding , generative , pixelart , opensource , pico8 , neoretro , pico-8 , tweetcart , cc0 , entropylocking , tweetcartrelay

JavaScript true
Networked false

Timestamp (UTC) 2024-08-17T22:49:27.542Z
Snapshot version 1
External network calls 0
Download Snapshot Download
Snapshot Image