Bad Apple Cinema
![]() | |
![]() | |
About | |
---|---|
Owner | ![]() |
Category | Attractions |
Underground? | No |
Public? | Yes |
Started | 2024-06-21 |
Completed | 2024-07-05 |
Location | |
Coordinates | X=-7948 Y=64 Z=-11752 |
Dimension | Overworld |
Map Link |
Craftbook contraption that plays full bad apple video with sound at 16x12 resolution and 10 frames per second, totaling 2014 frames.
First screening happend on 2024-07-06 with 4dre,
Anna_28,
Aidan,
FistOfVengeance,
CaptainIceman,
ItchyLlama attending.
How it works
RomShift
This is by far the most complicated part of the whole machine, and also the most important, that makes this whole thing possible in the first place.
RomShift is a custom mechanic created using Perlstone that allows for iterating over a list of pre-set bits
e.g. it can be set to "010" and then
- the RomShift will initially output OFF
- after first flick it will output ON
- after second flick it will output OFF
- and on the third flick the RomShift will go back to start, therefore outputting OFF
RomShift also has a side input for reseting back to the start at any point.
The Perlstone code for RomShift with given list of bits is generated by a Python script.
This machine uses 228 of those Perlstone ICs,
perlstone code is entered through books and placed inside of chests.
<bartek_kx> this is the perlstone code <
MrSlimeDiamond> this is schizophrenic ramblings <
bartek_kx> it is <
bartek_kx> i made python script to do the schizophrenic ramblings for me
There is a total of 2348 pages accros 228 books, totaling 570926 characters.
Screen
Screen is made out of 16x12 blocks which are either black concrete or while concrete, the blocks are changed with the use of 192 toggle blocks which are powered by 192 trigger readers that read output of 192 different RomShifts, the RomShifts change its output 10 times a second by a clock in control room, relayed by trigger readers, for each pixel there is one RomShift which stores all data for a given pixel.
Music
Music is played with the use of 36 Note Blocks (different Note Block for each note) that are attached to 36 RomShifts, those RomShifts are triggered by the same clock as Screen.
Trivia
- The animation is sped up by roughly 9% to match the tempo of Note Blocks.
- The machine can only be started by
bartek_kx, since leaving it run unattended may cause unnecessary lag.