@zep@mastodon.social
@zep@mastodon.social avatar

zep

@zep@mastodon.social

Working on fantasy consoles (PICO-8, Voxatron, Picotron) and trying to make my way back to userland. https://www.lexaloffle.com

#indiedev #pico8 #gamedev

This profile is from a federated server and may be incomplete. Browse more on the original instance.

zep, to random
@zep@mastodon.social avatar

Writing some notes on #picotron audio, and some sections are mostly just warnings.

zep,
@zep@mastodon.social avatar

@waporwave it's not /too/ bad to wrecklesslu twiddle knobs under the default settings, and the more extreme values are harder to access (and could easily have a one-time popup modal of a skull wearing headphones or something).

zep, to random
@zep@mastodon.social avatar

Adding parameter scale to the synth spec: *16, /16, *64, /64

Why those ratios? Because they are the most readable in a 3x3 font. This thing designs itself.

zep,
@zep@mastodon.social avatar

// The [1] on bend is an envelope, and the pink R on WAVE means choose a value in the knob's range each time the instrument is reset.

zep, to random
@zep@mastodon.social avatar

wip synth designer for #picotron (please excuse the goofy recording setup)

video/mp4

zep,
@zep@mastodon.social avatar

@waporwave will do -- I'll add another a technical notes document to the FAQ when the design has settled down a bit.

zep,
@zep@mastodon.social avatar

@Ronflaix @fsouchu Ha, that would be nice :) Maybe I should consider giving the filenames a better extension than .sfx

I'm really hoping to make userland mod/xm players at least theoretically possible to implement without having to manually render the raw audio data.

zep, to random
@zep@mastodon.social avatar
zep,
@zep@mastodon.social avatar

// background music: Cyberdragon by Reed / Fairlight

https://www.youtube.com/watch?v=bwu5AO4_j9Y
https://scenestream.net/demovibes/song/8173/

"Let's make one thing clear: I do not like this tune. It's a joke tune. Yes, I enjoy winning competitions, but winning with a tune like this just makes me angry."

zep,
@zep@mastodon.social avatar

@fsouchu no, it's a SID tune that happened to be playing! (I posted a reply with the link)

zep,
@zep@mastodon.social avatar

I find it most useful as a place to keep file shortcuts, but you can also run widget apps there and use it like a dashboard, of course.
#picotron

zep, to random
@zep@mastodon.social avatar

too many knobs

#picotron

zep,
@zep@mastodon.social avatar

@luchak @waporwave @fsouchu I did actually take out some knobs for this screenshot though :D

zep, to random
@zep@mastodon.social avatar

Playing some variety of numberwang with my youngest. Any move is legal as long as it has a sufficiently whimsical explanation.

zep, to random
@zep@mastodon.social avatar

How to make a 999-byte vectory racing game in 8 easy steps..

// commented src: https://www.lexaloffle.com/bbs/?tid=54397

[...]
gif: https://www.lexaloffle.com/media/1/loom_valley.gif

zep,
@zep@mastodon.social avatar
  1. Start with a flat plane. Loop through a grid of points (x,z) infront of the camera and calculate an elevation for each one (y)

  2. Perspective projection: draw each point at x/z, y/z (z means "distance from camera")

  3. Alter y according to sin(x) and also use that for the colour of line segments joining the dots.

You're in business.

gif: https://www.lexaloffle.com/media/1/lvm_0.gif
[...]

Visualisation of generating a flat grid, and then elevating each point according to sin(x)

zep,
@zep@mastodon.social avatar
  1. When drawing a point under the player, remember the result of that elevation calculation to figure out where the player is going to hit the ground.

  2. Clamp the y value of the ground to create flat sections

https://www.lexaloffle.com/media/1/lvm_1.gif

video/mp4

zep,
@zep@mastodon.social avatar
  1. Add noise to the y values based on sin(x) and sin(z)

gif: https://www.lexaloffle.com/media/1/lvm_2.gif

  1. Make the track wiggly by adding an offset to x in step 3 that changes with z (more sine waves)

gif: https://www.lexaloffle.com/media/1/lvm_3.gif

video/mp4
video/mp4

zep,
@zep@mastodon.social avatar
  1. More parameterization! More sine waves! Here are some parameters called "gully" and "canyon" that control the clamping y, bumpiness and wall height.

gif: https://www.lexaloffle.com/media/1/lvm_4.gif

  1. (bonus) Finish drawing the owl. The janky physics is based on gradients along x,z also grabbed from the drawing pass. Click on 'code' below the cart for some extra info: https://www.lexaloffle.com/bbs/?tid=54397

You can play with the code in the online editor here:
https://www.pico-8-edu.com/?cid=lv

video/mp4

zep, to random
@zep@mastodon.social avatar
zep, to random
@zep@mastodon.social avatar

Some terrain interaction and fake polygons

video/mp4

zep, to random
@zep@mastodon.social avatar

Starting with a raw, uncut hot mess for #pico1k

camera moving through a messy 3d vector canyon

zep,
@zep@mastodon.social avatar
zep, to random
@zep@mastodon.social avatar
zep,
@zep@mastodon.social avatar

@krystman you know it. I would never squander precious development resources.

video/mp4

zep,
@zep@mastodon.social avatar

@fsouchu haha -- yes, some folders that need to be in a fixed location (/system, /desktop) are flagged as unmovable.

But even so, everything in /ram is generated on startup (and /system is reloaded from ROM by default) so even if the session gets borked it is usually only until the next reboot.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • JUstTest
  • mdbf
  • InstantRegret
  • ethstaker
  • magazineikmin
  • GTA5RPClips
  • rosin
  • modclub
  • Youngstown
  • ngwrru68w68
  • slotface
  • osvaldo12
  • kavyap
  • DreamBathrooms
  • Leos
  • thenastyranch
  • everett
  • cubers
  • cisconetworking
  • normalnudes
  • Durango
  • anitta
  • khanakhh
  • tacticalgear
  • tester
  • provamag3
  • megavids
  • lostlight
  • All magazines