pxtone collab multiplayer-music-editor

About

pxtone collab (ptcollab) is a sample-based music editor where you can collaborate with friends! It's based off the music engine of pxtone, a music editor developed by Pixel, the creator of Cave Story and Kero Blaster.

Features

ptcollab has many standard features you might expect from a music editor. If you've used pxtone collage before, the following will be familiar:

  • Note and parameter input (pan, volume, portamento, fine-tuning, effects)
  • Instrument import (ptvoice, ogg, wav, ptnoise)
  • Song parameter settings (tempo, time signature)

In addition, ptcollab supports:

  • Collaborative editing: host a server and have others connect and work with you!
  • Session recording: save a frame-by-frame recording of a session and play it back later!

Install

The latest version is available just below! It includes an instrument starter pack and a few sample songs. If you haven't used pxtone before however, check out the links below for more instruments and songs.

For other operating systems, there are build instructions in the source repo, which also has changelogs and more information. Please feel free to comment there with any questions or suggestions!

Workflow

The basic workflow is similar to pxtone collage's:

  • Start a session
  • Load a number of voices (instruments—ogg/wav samples, or ptvoice/ptnoise)
  • Create a number of units (lines that can play a single sound at a time) assigned to voices.
  • In the piano roll, input and delete notes with left and right-click.

The primary difference is that you can also host or connect to a public session.

In addition to the piano roll, you can configure other song parameters:

  • Loop points, via the measure ribbon above the piano roll
  • Automation for each unit, including pan, tuning, voice, volume, portamento via the bar below the piano roll
  • Tempo and time signature, via the Song tab
  • Echo and overdrive effects you can apply to groups of units, via the Song tab

Shortcuts

Once you're familiar with the basic workflow, there are a bunch of shortcuts to make certain actions easier:

  • Space to play/pause, Escape to stop, Shift+click to seek
  • Ctrl+Z and Ctrl+Y/Ctrl+Shift+Z to undo and redo
  • Ctrl+click to modify just pitch values, not notes (useful for portamento)
  • Selection
    • Ctrl+shift+click to select
    • Ctrl+A to select all
    • Ctrl+shift+rclick or Ctrl+D to deselect
  • While something is selected:
    • (shift) up / down to transpose or shift parameters. Add Ctrl to shift by an octave.
    • Ctrl+C and Ctrl+V to copy/paste
  • Keyboard shortcuts for navigation:
    • W/S for next previous / next unit (PgUp / PgDn also work)
    • Q/A for previous / next parameter
    • F1..F4 for the tabs in the menu
    • 1..9 for jumping to a unit directly
  • Mouse-related shortcuts for view / mode changes
    • Middle-click drag to move around
    • Shift+wheel to scroll horizontally
    • Ctrl+(shift)+wheel to zoom vertically (horizontally)
    • Alt+wheel to change quantization

Links

Thanks

Huge thanks to everyone who helped support this! pxtone collage is a wonderful music tool and this is I hope is seen as a kind of tribute to the artist community that's flourished around it. Here's a tentative running thank-you list - please let me know if I forgot anyone:

  • Pixel for making such an awesome music software!
  • Testers (jaxcheese, neozoid, steedfarmer, ewangreen, gkpotter, arcofdream, jade, others I've probably missed), for making tunes together, and giving great feedback!
  • steedfarmer for helping me hunt down this nasty networking bug!
  • arcofdream for helping conceptualize the UI, giving valuable feedback, and promoting this!
  • arcofdream, nanoplink, easynam for general programming, UX discussion and consulting!
  • gkpotter and arcofdream for helping getting this ready for release!
  • steedfarmer for figuring out the mac build, and gkpotter for providing the deployment!
  • Everyone on ptweb and the discord servers for making such great tunes!