Skip to content

Releases: joashchee/coupler

Coupler 0.48.0

Choose a tag to compare

@github-actions github-actions released this 26 Oct 06:03
  • Sound comes back after the narrator on the iPad (2026-10-26): in
    the web build on an iPad, the loops, music and sound effects could go
    silent for good once the narrator first spoke. iOS stops the sound
    for the system's voice; Coupler now starts it again a moment after
    each line ends (iOS takes a moment to let go), and a touch anywhere
    starts it too (it listened for the start of a touch, which iOS
    doesn't count, and Coupler's own keyboard on the iPad sends no keys).
  • The colors badge follows ANSI 256 and ANSI TRUE (2026-10-26):
    the game writes its answer on the prompt's line (<20Hp> ANSI 256 colour enabled.), and Coupler read it only at the start of a line,
    so gear → Pictures… and the pictures stayed at 16 colors. Both builds.
  • Reminders when you're hungry, thirsty, fatigued or stinky
    (2026-10-26): Coupler says "You're hungry and thirsty." as soon as a
    need begins, and again every 5 minutes while any lasts, never in a
    fight. The game says hunger and thirst only now and then, and never
    says fatigue or smell unasked. Spoken by the narrator, or written as
    Coupler's own line. Both builds, the phone and the tablet.
  • A Stats table (2026-10-26): gear → Tables… → Stats holds
    everything the game's STAT can tell of each character (hit points
    and their most, the six abilities and their bases, the saving throws,
    armor, attack and damage in words, experience, quest points, trains,
    practices, alignment, and more), read by Coupler quietly when you
    come in, when your level changes and every quarter of an hour,
    without showing in the output. #check stats says the main ones and
    reads them again. Both builds.
  • The Mixer says a level once it's set (2026-10-26): let go of a
    slider (or stop pressing the arrows) and 2 seconds later "Sound
    effects at 40 percent." is said and shown, not every step of a drag.
  • #help lists Coupler's commands (2026-10-26): every command with
    its words and what it does, a line each, in the output; only the
    names are said. #help check says one command.
  • Disconnections (2026-10-26): when the connection ends and you
    didn't leave, Coupler says the likely cause (the game shut down, logged
    you out for being idle, this device was asleep, the network dropped,
    or the game closed it without a word) and offers what it saw in the
    last moments: how it ended, when the game was last heard from, the
    lines sent lately (never a password), the GMCP lately and the game's
    last lines, to copy into a report. Every ending is kept in gear →
    Tables… → Disconnections, each row's Show… opening its findings. A
    QUIT or Hang Up offers nothing. Both builds.

Unsigned: Windows' SmartScreen warns until the installers are code-signed.

Coupler 0.45.0

Choose a tag to compare

@github-actions github-actions released this 26 Oct 01:55
  • Open and Close on the tablet's pad (2026-10-26): the two empty
    corners at the pad's left are Open (top) and Close (bottom). Press
    one, then a way: Open then W sends OPEN WEST. Pressed, it's yellow and
    says so to VoiceOver; pressed again it lets go.
  • Loot collected (2026-10-26): when you win a fight and AUTOLOOT
    (or AUTOGOLD) takes things off the body, the narrator says "Loot
    collected." once instead of every item, and Immersive leaves those
    lines out of the output. Each thing goes in the Loot table. LOOK LOOT
    or #check loot says just what the last fight brought. Both builds.
  • Tables (2026-10-26): gear → Tables… (Cmd+Shift+T; the phone's
    Here sheet) shows Coupler's tables (Loot) and your own: make one with
    a name and up to five columns, add rows there or with #add, delete
    rows, clear Loot. #check and a table's name says it. Kept for each
    world on this machine, in a Coupler Backup and in gear → Storage….
    Both builds.
  • Coins sound like coins (2026-10-26): money got, looted, dropped,
    given, put away, deposited, withdrawn, borrowed, paid or bid plays
    CoffeeMUD's Coins, as buying and selling do. It's its own event, "you
    handle coins", in the hooks list, for a sound of your own. Both
    builds.

Unsigned: Windows' SmartScreen warns until the installers are code-signed.

Coupler 0.43.0

Choose a tag to compare

@github-actions github-actions released this 25 Oct 14:41
  • Pictures in more colors (2026-10-25): when you have the game send
    you 256 colors or true color (ANSI 256, ANSI TRUE), Coupler's painter
    follows: skies and land are smooth gradients, night is shadow instead
    of a checkerboard, and the dithers in rooms, faces, items and The
    Fight show as the colors they stand for. Sparse textures (cobbles,
    grass) are kept. 16 until the game says otherwise; remembered across
    launches; gear → Pictures… says which. Both builds, the phone and the
    tablet.
  • The web build fetches a sound again on failure (2026-10-25): a
    sound from the mirror that fails (seen on the iPhone with the bank's
    wind) is fetched once more past the browser's cache, and the message
    says why it failed if it still does.

Unsigned: Windows' SmartScreen warns until the installers are code-signed.

Coupler 0.42.0

Choose a tag to compare

@github-actions github-actions released this 25 Oct 00:56
  • The iPhone's web screen, made for its size (2026-10-25): in the
    web build on an iPhone the menu bar is one row (no icon or name;
    Explore or Combat, a dot for online or offline, Quit, Where, Map,
    Mixer), Choose how to play is one column, and You reads HP, MN and MV
    with bars five characters wide, each character a quarter step. The
    lower part is now in the game output's own text size: Coupler's
    phone keyboard (numbers, three rows of letters with Backspace, Shift,
    the arrows and Return, then Esc, Ctrl, Opt, Cmd, Space and the
    command prefix), whose keys show bigger above the finger and type on
    lifting it, so a finger can slide to the right key; and fewer touch
    controls, the size of the text. The dev build tries it from the gear
    menu (iPhone Web Screen, for Testing). The phone app's Choose how to
    play is one column too.
  • The Fight at the top left (2026-10-25): in every way to play, and
    on the tablet, The Fight now comes up at the screen's top left.

Unsigned: Windows' SmartScreen warns until the installers are code-signed.

Coupler 0.41.0

Choose a tag to compare

@github-actions github-actions released this 24 Oct 13:52
  • Faces in The Fight on the iPhone (2026-10-24): the strip above
    the touch pad is now the room you're fighting in with the two of you
    in it, your face at the left and the foe's at the right, drawn small
    for the phone (not shrunk: each kind of face has its own small
    drawing, so the eyes still show), angry, hurt and in pain as the
    fight goes, with the jolt, the flash and a new foe sliding in. The
    words sit between the faces: your health, bar, mana and moves, the
    clock or the result, what's on you, the foe's hurt, bar and health.
    It's eight rows; with pictures off (gear → Pictures…) it stays the
    four rows of words.

Unsigned: Windows' SmartScreen warns until the installers are code-signed.

Coupler 0.33.1

Choose a tag to compare

@github-actions github-actions released this 23 Oct 08:04
  • No more blue screen on the iPhone (2026-10-23): the map panel was
    the one part of the screen not asked whether the layout has it, and
    Workshop (the default) with the map open (also the default) put it on
    the phone, whose layout has no place for it: the screen failed to
    draw past the in-development notice, in the web build on an iPhone
    and in the iPhone app. The map now shows only where the layout has it.

Unsigned: Windows' SmartScreen warns until the installers are code-signed.

Coupler 0.32.1

Choose a tag to compare

@github-actions github-actions released this 23 Oct 05:50
  • No more blue screen in Workshop (2026-10-23): Workshop shows
    everything the player hasn't hidden, and that took in the iPhone's
    touch pad, which no desktop layout places: the screen failed to draw
    past the in-development notice, in the web build (Safari and Chrome)
    and for anyone new to Workshop on the desktop. The phone's own parts
    (PHONE_ONLY in App.tsx) are never on a desktop screen now.

Unsigned: Windows' SmartScreen warns until the installers are code-signed.

Coupler 0.32.0

Choose a tag to compare

@github-actions github-actions released this 23 Oct 05:12
  • The account menu lists your characters (2026-10-23): CoffeeMUD
    writes the list on the prompt's own line (Command or Name (?): Name Race …), so its header was never recognized and the dialog said
    Reading your characters… for good. account.rs now reads past the
    prompt, a header cut short by a narrow wrap (Nam Rac Leve), a row
    wrapped onto a second line by (email) or (post), and a list the
    prompt ends with no total.

  • Coupler's own look is silent (2026-10-23): once the answer to its
    unobtrusive look begins, every line is gagged until the game's prompt
    comes back, so a line the Bestiary's reader doesn't follow (equipment
    on one line, an odd health line) no longer slips into the terminal.

  • LOOK says the room too (2026-10-23): a plain LOOK (LOOK, LOO, LO,
    L) has the narrator say the room's description, as LL does, with the
    hidden details the last long look at that room found; the room's
    title is found on the prompt's line too, where it often comes.
    Priority Audio's item is now "A look at the room".

  • Pictures in the Bestiary (2026-10-23): Show… has the creature's
    face or the item beside the facts, 25 by 12 cells (25 by 24 painter
    pixels, 200 by 192), by Coupler's painter. A face (face.rs): a person, a beast,
    a bird, a scaled head, a bug, a skull or a being of fire, stone or
    slime by its race's category; colors, beards, scars, eye patches,
    horns, tusks, glowing eyes and old age from its description and name;
    what it wears on its head, neck, ears, eyes, mouth, torso and back.
    An item (item_art.rs): one of 52 kinds by the word in its name
    (weapons, armor and clothes, jewelry, potions, scrolls and books,
    containers, food, coins, gems, keys, lights, instruments, tools,
    rocks; a bundle otherwise), in its name's colors and what EXAMINE
    says it's made of. What the game writes after an item's name is kept
    (item_auras) and drawn on it: glowing (a halo, red, blue, purple or
    white for the auras), a magical aura (sparks), a metallic or mithril
    aura (glints), invisible (half seen through), hidden (in shadow),
    floating or flying (lifted over its shadow), bound (a chain). Its
    slot is written on the picture's bottom row, centered (where it was
    seen worn, else where its kind goes, else Carried), and the facts
    say both in words.

  • The release build runs on Python 3.9 again (2026-10-23):
    scripts/third-party-licenses.py no longer passes newline= to
    Path.write_text, which needs 3.10 (Xcode's python3 is 3.9).

  • The Bestiary (2026-10-23, gear → Bestiary…, Cmd+Shift+B): every
    creature and every item you come across in a game, and all you learn
    of each as you play, kept quietly on this Mac. A creature: the areas
    it's found in and, in each, its level (from CONSIDER, beside your
    own), its hit points (from a fight) and its alignment (glowing red
    or blue); its race, read from its name until a long look says it;
    its size, body and description from a LOOK or LL; the abilities it
    uses, known by the lines CoffeeMUD prints for them (about 1,100 from
    the game's source), and from them what it seems to be (a Mage, a
    Cleric…); what it drops and what it wears; how often you've seen it
    die. An item: where it lies, its level, weight and material from
    EXAMINE, its description, and who dropped or wore it. Search finds a
    name, a race or material, or an area; Show… says everything known,
    a fact a line. Kept in Coupler Backup.

  • Every way to play sounds the same (2026-10-23): the cues,
    Coupler's voice and all of Immersive's audio now play in Terminal and
    Workshop too; the ways differ only in what's on the screen. Workshop's
    sound layers (now on unless you turn one off) are its own choice.
    Cues…, Narrator's Answers… and Priority Audio… are in the gear menu in
    every way. With a screen reader, VOX at 0 in the Mixer gives the
    game's lines back to it.

  • Coupler looks for you, if you like (2026-10-23): ticked in the
    Bestiary, Coupler looks at each creature you've never looked at, once,
    with LOOK … UNOBTRUSIVELY (the room isn't told), when a command of its
    own would go unnoticed and never in a fight, and keeps what it sees
    without showing it. Off at first.

  • What a body tells (2026-10-23): EXAMINE at a creature's body gives
    its level (exact at 18 intelligence, a range below) and its weight;
    any look at a body lists what it carried. The game shows no race on a
    body, so that still comes from a long look or the name.

  • Hooks, the same in every way to play (2026-10-23): Hooks…,
    Mixer… and Music Editor… are in the gear menu in Terminal, Immersive
    and Workshop alike. Triggers already played the same in all three;
    now each can set them, their volumes and their music.

  • Creatures' cries (2026-10-23): a creature of a kind
    coffeemud.sf2 has a voice for (humanoid, goblinoid, giant-kin,
    canine, beasts, birds, reptiles, insects, the undead, dragons,
    elementals, constructs) cries as it comes into the room, as a fight
    with it starts, and as it dies, by its race in the Bestiary. Each is
    Coupler's own pair coupler.creature ("canine fights"), all 36 in
    the hooks list from the start and in CoffeeMUD's Sounds' Creatures,
    for a sound of your own.

  • CoffeeMUD's Sounds, a tab of the Hooks list (2026-10-23): every
    pair CoffeeMUD's sounds play for while you've set none, in groups
    (places, weather, combat, magic, creatures, nature, doors and locks,
    comings and goings, everyday doings, crafting, socials, your
    character): each terrain's loop (the woods by day and by night), each
    weather's, the battle loop, every sound the game names and every one
    of Coupler's own events, with its volume and what's laid under it.
    Where your own sound takes its place (on the pair, or a room type's
    background noise for its terrains), a green bullet and its name;
    how many rooms have their own background noise. Play tries the
    default; Edit… opens the hook editor on its pair.

Unsigned: Windows' SmartScreen warns until the installers are code-signed.

Coupler development build

Pre-release

Choose a tag to compare

@github-actions github-actions released this 05 Oct 21:15

A build between versions, from 563a8de: everything since Coupler 0.28.0 (CHANGELOG.md's Unreleased). Unsigned, and not offered by Coupler's update check.

coffeemud.sf2 0.1.0

coffeemud.sf2 0.1.0 Pre-release
Pre-release

Choose a tag to compare

@joashchee joashchee released this 22 Oct 15:39

CoffeeMUD's sounds as a SoundFont (CC0), shipped in Coupler. SHA-256: 5ba53593e2662414c21796c11da22e4a270b5f4b7e111acf50e972c563195ed2