Jaconir

Retro SFX Generator

8-Bit Audio Studio

Waveform Viewer

1.0×

Drag to select a region · zoom to inspect · playhead animates during playback

Live Spectrum Analyzer

Sound Metadata

Generate a sound to see metadata.

Attack · Sustain · Punch · Decay — live updates

0.00
0.40
0.30
0.00
0.30
0.00
0.00
0.00
1.00
0.00

Variation Generator

Four different sound types — compare without losing your current patch

Export Center

WAV is sample-accurate. OGG/MP3: export WAV then convert in your pipeline.

How to make a sound effect

Five steps. The order matters more than it looks — generating first and refining second is faster than building a patch from silence.

  1. Start from a generator, not from silence

    Pick one of the seven generators — Pickup, Laser, Explosion, PowerUp, Hit, Jump or Blip. Each one randomises the whole patch inside the range that produces that class of sound, so you get something usable on the first click rather than hunting through twenty sliders. This is how sfxr-style tools are meant to be used: generate first, refine second.

  2. Narrow it with a genre preset

    The eight genre presets bias the same generators toward a house style: Platformer for bright coins and jumps, RPG for soft interface blips, Metroidvania for ability unlocks and doors, Shooter for lasers and impacts, Puzzle for clean confirmations, Sci-Fi for phased digital tones, Fantasy for sparkly pickups, Horror for low noise stingers. They are starting points, not locks — every slider stays editable.

  3. Shape the envelope before you touch anything else

    Attack, Sustain, Punch and Decay decide whether a sound reads as a tap, a hit or a drone, and they matter more than the waveform. A short attack with a hard punch and a fast decay gives you an impact; a slow attack with a long sustain gives you a hum. If a sound feels wrong, it is usually the envelope, not the pitch.

  4. Mutate and compare instead of guessing

    Mutate nudges the current patch slightly, which is how you find the version of a sound that is almost right. Generate 4 variations renders four alternatives side by side without overwriting what you have, so you can audition against your current patch rather than losing it. Use the waveform view and spectrum analyser to see clipping or a decay that runs longer than you think.

  5. Export WAV, then take the engine snippet

    Download WAV gives you a 44.1 kHz 16-bit mono file that is sample-accurate — nothing is re-encoded. The Godot, Unity and Web Audio tabs give you the few lines needed to play that file in each engine, and Clipboard JSON copies the full parameter patch so you can save a sound in source control and rebuild it exactly later.

What every control does

The control set follows the sfxr model, so this reference carries over to any tool in that family.

WaveformSquare · Sawtooth · Sine · Noise
The oscillator the whole patch is built on. Square is the classic chiptune voice and the right default for coins, jumps and blips. Sawtooth is harsher and cuts through a busy mix, which suits lasers and engines. Sine is pure and soft, good for gentle interface tones. Noise has no pitch at all — it is the basis of explosions, footsteps and hits, and pitch controls affect it only through the filters.
EnvelopeAttack · Sustain · Punch · Decay
Attack is how long the sound takes to reach full volume, Sustain how long it holds, Decay how long it takes to fall away. Punch adds a short volume spike at the start of the sustain — it is what makes an impact feel like it has weight rather than just being loud. Together these four decide the character of the sound more than any other group.
FrequencyPitch · Slide · Delta slide · Minimum frequency
Pitch sets the starting frequency. Slide moves it over the life of the sound: sliding up reads as a pickup or power-up, sliding down as a laser or a fall. Delta slide accelerates that movement, which is what gives a laser its snap rather than a even glide. Minimum frequency stops the pitch falling below a floor, so a downward slide ends rather than disappearing.
Vibrato and arpeggioVibrato depth · Vibrato speed · Change amount · Change speed
Vibrato wobbles the pitch continuously and in small amounts adds life to an otherwise static tone. Change amount and change speed do something different: they jump the pitch by a fixed step partway through the sound. That stepped jump is the arpeggio effect behind most classic power-up and level-complete sounds.
Square dutyDuty cycle · Duty sweep
Only affects the square wave. Duty cycle is the ratio of the high part of the wave to the low part; changing it makes a square sound thinner or fuller without changing its pitch. Duty sweep moves that ratio during the sound, which is a cheap way to get movement out of a single oscillator — a very common trick on the NES.
Filters and phaserLow-pass cutoff · Resonance · High-pass cutoff · Phaser offset and sweep
The low-pass filter removes high frequencies, which makes a sound duller and more distant; resonance emphasises the frequencies right at the cutoff and can add a vocal quality. The high-pass filter removes low frequencies and is how you stop a small interface blip from muddying a mix. The phaser sweeps a notch through the spectrum for the swirling, digital sound typical of sci-fi effects.

Getting the sound into your engine

Each export tab gives you the few lines needed to play the file, not a framework to install.

Godot 4
Drop the WAV into res://sfx/ and the Godot tab gives you an AudioStreamPlayer node that loads it and plays on demand. Godot imports WAV directly; for a project where file size matters, convert to OGG Vorbis in your import settings, which Godot handles well for short effects and music alike.
Unity
The Unity tab gives you a small MonoBehaviour that adds an AudioSource, keeps playOnAwake off, and exposes PlaySfx() using PlayOneShot so overlapping triggers do not cut each other off. Assign the exported clip in the inspector. Unity imports WAV natively and will compress on build according to your import settings.
Web and everything else
The Web Audio tab is a short fetch-and-decode helper for playing the WAV in a browser game. Clipboard JSON copies the whole parameter patch, which is the format worth committing to your repository: a WAV is an artefact, but the patch is the source, and it lets you regenerate or tweak the sound months later without guessing at slider positions.
Why the export is WAV and not MP3
WAV is written directly from the rendered samples at 44.1 kHz, 16-bit, mono, so what you download is exactly what you previewed with no lossy stage in between. Game engines want uncompressed or engine-compressed audio for short effects anyway — compressing a 200 ms blip to MP3 saves almost nothing and adds encoder padding at the start. Convert to OGG or MP3 in your own pipeline if you need it for web delivery.

Frequently asked questions

What is an 8-bit sound maker actually doing?

It synthesises the sound from scratch rather than playing back a recording. A simple oscillator — square, sawtooth, sine or noise — is shaped by an amplitude envelope, a pitch slide, and a couple of filters, which is close to what the sound chips in 1980s consoles and arcade boards could do. That constraint is what gives the results their characteristic "retro" quality: there is no sample, just a waveform and a handful of parameters.

Is this the same as sfxr, bfxr or jsfxr?

It follows the same parameter model. sfxr was written by Tomas Pettersson in 2007 to make sound effects for game jams, and its control set — waveform, attack/sustain/punch/decay, frequency slide, vibrato, arpeggio, square duty, phaser, low- and high-pass filters — became the template that bfxr, jsfxr and most browser tools since have used. This one adds genre presets, a mutate control, four-way variation comparison, a waveform and spectrum view, and ready-made Godot 4, Unity and Web Audio snippets.

Can I make an 8-bit voice or run my own recording through it?

No. This is a synthesiser, not an effects processor: it generates sound from parameters and never takes an audio file as input, so it cannot bitcrush or downsample a voice recording you already have. If you want a retro-sounding voice, you need a bitcrusher or sample-rate reducer in an audio editor such as Audacity, applied to your own recording.

Which sounds can it make?

Seven generators cover the common cases: Pickup for coins and collectibles, Laser for shots, Explosion for impacts and deaths, PowerUp for upgrades and level-complete stingers, Hit for damage and blocks, Jump, and Blip for menu and interface feedback. Eight genre presets bias those toward platformer, RPG, metroidvania, shooter, puzzle, sci-fi, fantasy or horror. Anything the sliders can reach is available beyond those.

What file format do I get, and at what quality?

A 44.1 kHz, 16-bit, mono WAV, written straight from the rendered samples with no lossy re-encoding. That is CD-quality and is what both Godot and Unity prefer to ingest for short effects. OGG and MP3 are not exported directly — convert the WAV in your own pipeline or let your engine compress on build.

Can I use these sounds in a commercial game?

Yes. Under our terms, any output you generate with the tools is your own property and you grant us no rights over it. There is no attribution requirement and no licence to track. Sounds are synthesised in your browser from parameters, so there is no third-party sample library involved to complicate the rights.

Is the audio uploaded anywhere?

No. Synthesis, preview and WAV encoding all happen in your browser using the Web Audio API. Nothing is sent to a server, there is no account, and closing the tab discards everything — which is why saving the Clipboard JSON patch matters if you want a sound back later.

How do I get the same sound again tomorrow?

Copy the Clipboard JSON patch and keep it with your project. It contains every parameter value, so pasting it back reproduces the sound exactly. The generators and the mutate control are random by design, so a sound you liked and did not save is genuinely gone — treat the patch as the source file and the WAV as the build artefact.

Where this fits in the pipeline