packages = [ "ssl", "urllib3==2.1.0", "param==1.13.0", "numpy", "pandas", "panel==0.13.1a2", "activejson", "./crcmod-1.7-py3-none-any.whl", "ndspy", "more_itertools", "ordered_set"]
terminal = false
[[fetch]]
files = ["./randomizer_py.zip"]
import asyncio
import pyodide
import panel as pn
from panel.io.pyodide import show
import os
import zipfile
import sys
import shutil
from js import document, console, window, Uint8Array, Event
from pyodide import create_proxy, to_js
import io
fileInput = pn.widgets.FileInput(accept='.gba,.nds')
uploadButton = pn.widgets.Button(name="Randomize", button_type = "primary")
seedInput = pn.widgets.TextInput(placeholder='Enter custom seed here')
downloadButton = pn.widgets.Button(name='Download', button_type='primary')
content = ""
with zipfile.ZipFile("/home/pyodide/randomizer_py.zip","r") as zip_ref:
zip_ref.extractall()
def process_file(event):
sys.path.insert(0, '/home/pyodide/randomizer_py')
from randomizer_py.WarpRandomizerMain import randomize
file_base = ""
for file in os.listdir("/home/pyodide/"):
if file.endswith(".nds") or file.endswith(".gba"):
print(os.path.join("/home/pyodide/", file))
file_base = file
if os.path.exists("/home/pyodide/output"):
shutil.rmtree("/home/pyodide/output")
os.makedirs("/home/pyodide/output")
if randomize(file_base, seedInput.value) == 0:
shutil.make_archive("output", 'zip', "/home/pyodide/output")
os.remove(f'/home/pyodide/{file_base}')
shutil.rmtree("/home/pyodide/output")
print(os.listdir("/home/pyodide"))
document.dispatchEvent(pyscript_finished)
else:
os.remove(f'/home/pyodide/{file_base}')
shutil.rmtree("/home/pyodide/output")
downloadButton.visible = False
uploadButton.on_click(process_file)
print(os.listdir("/home/pyodide/"))
async def upload_change_and_show(e):
file_list = e.target.files
first_item = file_list.item(0)
array_buf = Uint8Array.new(await first_item.arrayBuffer())
print("hello from buffer")
print("writing file to storage")
with open(f'/home/pyodide/{first_item.name}', 'wb') as file:
file.write(array_buf.to_py())
print(os.path.getsize(f'/home/pyodide/{first_item.name}'))
array_buf = None
async def show_elements():
await show(uploadButton, 'randomize')
await show(seedInput, 'inputseed')
await show (downloadButton, 'download')
asyncio.ensure_future(show_elements())
downloadButton.visible = False
upload_file = create_proxy(upload_change_and_show)
document.getElementById("file-upload").addEventListener("change", upload_file)
pyscript_finished = Event.new('pyscript_finished')
After Effects Normality -
After Effects Normality -
Click choose file and select your game
Click randomize, and wait
After a minute or two, your result will be automatically downloaded!
After Effects Normality -
Pokemon Fire Red (1.0 and 1.1
Pokemon Leaf Green (1.0 and 1.1)
Pokemon Emerald
Pokemon Platinum
Pokemon White 2
Pokemon Heartgold
Pokemon Soulsilver
After Effects Normality -
The Universal Warp Randomizer is a tool that will allow you to randomize the warp points in a Pokemon game, resulting in a fresh experience. Originally made for Twitch Streamer Pointcrow, this web version was made to fix issues with the standalone builds. This version is compatible with any computer and phone, as long as you have access to a web browser.
You discover a new plugin (RSMB? Deep Glow?) and apply it to everything . Text, logos, even your coffee mug in a stock clip. You feel like a god. after effects normality
It’s not about the software. It’s about what happens to your brain when you live inside a compositing program for too long. Welcome to
You show a friend a clean, simple lower third. They say, “That’s nice.” You hear: “That’s boring.” So you add a faux VHS overlay. Then a camera shake. Then a glitch map. Now it’s “interesting.” And you’ve just contributed to the visual noise of the internet.
The most powerful keyframe is the one you delete. The most creative choice? Leaving something still. Sharp. Quiet.
Welcome to .
You discover a new plugin (RSMB? Deep Glow?) and apply it to everything . Text, logos, even your coffee mug in a stock clip. You feel like a god.
It’s not about the software. It’s about what happens to your brain when you live inside a compositing program for too long.
Then you watch TV that night and notice: every single commercial uses the exact same glitch effect you just perfected.
You show a friend a clean, simple lower third. They say, “That’s nice.” You hear: “That’s boring.” So you add a faux VHS overlay. Then a camera shake. Then a glitch map. Now it’s “interesting.” And you’ve just contributed to the visual noise of the internet.
The most powerful keyframe is the one you delete. The most creative choice? Leaving something still. Sharp. Quiet.