Skip to content
View laurence-myers's full-sized avatar

Organizations

@joiful-ts

Block or report laurence-myers

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
laurence-myers/README.md

AI Era Projects

In 2026, AI became good enough that I can boil the ocean to tackle those hobby projects I didn't have time (or skills) to work on.

  • 2026: SCI Companion v4 - lots of bug fixes; no more asm fallbacks, improved memory safety, properly handle invalid inputs, less crashes.
  • πŸ”’ 2026: Hypercopy - a tiny shell extension to replace the Windows Explorer Copy/Move functionality, with support for queueing per destination device, SMB, file verification using xxHash3. Written in Rust, designed for instant start-up (approx 30 ms to first paint).
  • πŸ”’ 2026: Pendragon - a game engine using rules-based utility AI, similar to Liliput (as used by the old DOS games "The Adventures of Robin Hood", and "Rome: Pathway to Power"). Games are defined in an s-expression (LISP-like) DSL. Game packs are downloadable. The first game pack is for King Arthur. Written in Rust, runnable on web via WASM. This simulation core is separate from the presentation layer.
  • πŸ”’ 2026: sci2vgm - a music ripping tool for old Sierra games. It reads each game's music resources, feeds them through the original DOS game drivers for Adlib/Sound Blaster sound cards, and pipes the instructions into a .vgm file per song, automatically adding loop markers. This approach preserves the original (buggy) playback behaviour, while running significantly faster than realtime.
  • πŸ”’ 2026: Pictor - a web tool to convert images to SCI0 EGA vector drawing routines. Lots of experiments: mapping to tone ramps, drawing masks to emphasise line strokes or force colour ramps, MediaPipe image segmentation, applying tweaks per segment, and more.
  • πŸ”’ 2026: Deus Ex Human Revolution mods:
    • Add support for virtualized "bigfile" mods, utilising sparse files. I used this to convert some texture replacement mods that required Special K into regular mods that only need gibbed's mod loader.
    • Custom ENB preset, patching the ENB DLL to restore rim lighting.
    • Audio boost, using the built-in FMOD limiter/compressor chain, with separate control over both the master and music channels.
    • A web GUI to manipulate and preview ENB preset tone map changes.
  • πŸ”’ 2026: QuantiPad - a MIDI quantizing input pad, locked to rhythms and keys. Multiple tracks, each assignable to a MIDI channel, plus X/Y and drum tracks. Clip mode for realtime arranging. Patterns for grouping tracks. Song mode for arranging patterns. Skin theming. Also has MPE and MIDI 2 support. Written in Rust, will be available on everything that supports MIDI (VST3, CLAP, AudioUnit, iOS and Android apps, Windows and other desktops).
  • 2026: VGM Studio - a tool for editing .vgm (and .dro) files containing sound chip data from various systems, and preparing VGM rip packs for submission to VGM Rips. Available as a desktop app or online.
    • This is a Rust conversion, and continuation, of my DRO Trimmer app.
  • 2026: Monkey Island Special Edition Sprite Editor (MISESE) - a tool for replacing the graphics in Monkey Island Special Edition.

Personal Projects

  • 2024-2026: Furious Tare - the Disco Elysium unofficial patch - fixes lots of outstanding bugs in the game Disco Elysium
  • 2014-2024 MidiToMacro - AutoHotKey script to map MIDI messages to key macros
  • 2024: PyOPL - OPL2/3 sound chip emulator for Python. Contributed porting to Python v3.8 (building on work by Adam Biser), CI builds, automated tests, and publishing to PyPI
  • πŸ”’ 2023-2024: DRO Trimmer v5 - add a waveform view with mouse selection of trim points, add support for VGM files and projects
  • 2023: SCI Companion - Sierra game editor. Contributed bug fixes and nightly CI builds (when there are changes to build)
  • 2020-2023: Music To Check Out Organizer - edit a Spotify playlist, grouping tracks by album, with bulk delete, and "move" to other playlists
  • πŸ”’ 2023: GOG offline installer batch download tool
  • 2022: FL Studio Plugin Organizer - organise FL Studio Plugins by "vendor"
  • 2022 Inja CLI - standalone string templating command line tool, with syntax like Jinja
  • πŸ”’ Quest for Glory 4 patch - backport of ScummVM fixes into the original game scripts
  • πŸ”’ SCI Jukebox - music-playing scripts for Sierra games
  • 2016-2022: joiful - apply Joi validation using decorators (previously known as tsdv-joi)
  • 2017-2022: Rose - type safe, schema-first PostgreSQL query builder
  • πŸ”’ 2020: Jackbox Editor - edit "Joke Boat" resources to give a broader range of prompts
  • 2016: TownNameGen - a port of the OpenTTD town name generator to Haxe (targeting JS and Neko)

Misc

Old stuff

Pinned Loading

  1. joiful-ts/joiful joiful-ts/joiful Public

    TypeScript Declarative Validation for Joi

    TypeScript 236 19

  2. rose rose Public

    Type-safe PostgreSQL query builder and row mapper for Node.js and TypeScript

    TypeScript 3 1

  3. flspo flspo Public

    FL Studio Plugin Organizer

    C++ 6

  4. midi-to-macro midi-to-macro Public

    AutoHotKey (AHK) script to map MIDI inputs to keyboard shortcuts or macros

    AutoHotkey 50 6

  5. townnamegen townnamegen Public

    A town name generator, derived from OpenTTD, for JavaScript or command line, written in Haxe.

    Haxe 4

  6. FuriousTare FuriousTare Public

    Unofficial Disco Elysium patch

    C# 9 1