T

the dirk gently tv show is really really good by oakreefin just_post

[–]oakreef[S] 3 points4 points ago

I don't really think it was very faithful either but that really didn't bother me. Dirk Gently/Long Dark Teatime aren't really my favourite books anyway TBH and the show did it's own thing very well IMO.

the dirk gently tv show is really really good by oakreefin just_post

[–]oakreef[S] 3 points4 points ago

aaaaaah

My summary of neo yokio based on what I've seen about it on Tumblr by hoppetin dontwatchanime

[–]oakreef 2 points3 points ago

Toblerones are rotten tho

i made a dice tower last night because i was depressed by Dogmantrain just_post

[–]oakreef 3 points4 points ago

nice!

this could actually be a kind of a funny/cool centrepiece for a warhammer table actually if you make it look like a building on the outside :o

I put all my Pico-8 stuff so far on github if anyone wanted to see how awful my code is by oakreefin gamedev

[–]oakreef[S] 1 point2 points ago

to explain it further

   poke(a,n==12 and 4 or n==16 and peek(a))

can basically be rewritten as

   if n==12 then
     poke(a,4)
   elseif n==16 then
     poke(a, peek(a))
   else
     poke(a, false)
   end

Every address is expected to have a value of 0 or 4 (if it doesn't that'll get quickly corrected a couple iterations in) and n is the sum of all the values in a given cell's neighbourhood. So if three cells in the neighbourhood are populated that cell is set to alive (4), it four cells are in the neighbourhood (i.e. either the cell is dead and it has four neighbours or it is alive and has three neighbours) it keeps its current value (poke the current value from peek), otherwise poke with a value of false, which is equivalent to poking with a 0.

I put all my Pico-8 stuff so far on github if anyone wanted to see how awful my code is by oakreefin gamedev

[–]oakreef[S] 1 point2 points ago

A and B or C acts as a weird hacky ternary operator in lua. If A evaluates as truthy then the statement evaluates as B, if A is falsey then the statement evaluates as C. What the programme is doing is adding up all the memory values for adjacent cells and checking the normal conditions for conway's game of life. It's setting every live cell to a value of 4 instead of 1 because it worked better to get interesting results from pick 8's start screen as the seed - Because it iterates directly from the screen data whatever is on screen when you hit run acts as the initial conditions

d d d discord!!! tonight!!! by devteslain just_post

[–]oakreef 2 points3 points ago

I am very hungover from discord whiskey drinking

today is the first day of the christmas season by devteslain just_post

[–]oakreef 1 point2 points ago

agsdsdgfhahsfddhfhlj.

small rant about gender roles by oakreefin just_post

[–]oakreef[S] 1 point2 points ago

wat

the new Sonic bad guy's voice reminds me of CABAL from Command & Conquer and there's two series I didn't think I'd ever be comparing in any way by oakreefin just_post

[–]oakreef[S] 2 points3 points ago

RTS where you play as the furry resistance army from Sonic Forces vs Eggman's robots.

what the hell pip is leaving rock paper shotgun :( by oakreefin just_post

[–]oakreef[S] 0 points1 point ago

I mean it's great for her but I don't read PC Gamer and now I'll have to if I want to read pip dispatches!

what the hell pip is leaving rock paper shotgun :( by oakreefin just_post

[–]oakreef[S] 1 point2 points ago

deputy editor of PC Gamer

I put all my Pico-8 stuff so far on github if anyone wanted to see how awful my code is by oakreefin gamedev

[–]oakreef[S] 0 points1 point ago

They're for manipulating memory directly.

peek(a) reads the byte value at memory address a

poke(a,b) sets the byte value at address a to value b

memcopy(a,b,c) copies an array of bytes of length c starting from address b onto address a

The peeks are reading a part of memory that stores the colour of all the pixels on the screen (each byte actually has the data for two adjacent pixels)

The pokes are writing to a part of memory that normally stores the spritesheet but for the purposes of this programme it's just empty memory we can dump stuff to

then after having calculated the next iteration of the simulation and writing it to memory the memcopy copies the whole thing directly onto the memory holding the screen data all at once

https://www.lexaloffle.com/bbs/?tid=29131