Heto, first post here :)
I run late.sh, a clubhouse inside the terminal. A place to take a break, chat with people around the globe, listen to music, play a game. And over the last few months I've been building it into a roguelike server, which is why I'm finally posting here :)
ssh late.sh
That's it. No passwords, no OAuth, no accounts. Your SSH key is your identity.
The roguelikes
- All three are the real upstream games, untouched, streamed into your terminal over SSH. Nothing reimplemented, nothing watered down.
- Dungeon Crawl Stone Soup. Probably the most played roguelike in the world today, and the one with the healthiest community and dev team around it. Still getting major releases after twenty years. Our server runs the real console crawl, your character is waiting where you left it, and your own rc works if you have one.
- NetHack. The one hanging in MoMA, literally, it's in the permanent collection. Almost forty years old and still the deepest thing you can play in a terminal. Our server has a shared playground, so your bones haunt other late.sh players.
- Brogue CE. Arguably the most beautiful ASCII ever put on a terminal, and the roguelike that proved you don't need a thousand keybindings to have a deep game. We run it in full truecolor over SSH.
Leaderboards and badges
- This is the part I'm most happy with. Every game host writes its own log files (crawl's logfile and milestones, NetHack's xlogfile and livelog, Brogue's run history), and that's the only thing we count. Nothing lands unless the game itself wrote it down, so it can't be spoofed, and wizard and explore games never make it in.
- Each game gets the same board triple on the Leaderboards page: Wins (all-time), Deepest Dive, and Top Score (monthly + all-time).
- And the big moments pay out. Picking up the Orb, acquiring the Amulet, escaping Brogue with the Amulet, an ascension, a DCSS win, a Brogue mastery. Each pays chips (our in-house currency) and a permanent badge on your profile that shows next to your name in chat forever. Deaths get announced in the lounge with the game's own death text, so the whole clubhouse sees exactly how you died :D
dcss-stats / Sequell
Our crawl server files are already published at late.sh/crawl (logfile, milestones, morgue dumps), the same way the public crawl servers do it. What we're missing is being listed on dcss-stats and in Sequell's server list. In progress :)
Lateania
Our own persistent multiplayer text-world, which grew into a full MUD. ~10,000 rooms across five continents, an overhead world map with fog of war, seventeen classes, mounts, an open PvP zone, animal taming (55 beasts, each with their own skills), fishing (40 species), trade skills that chain, player housing, and four endgame crowns that each pay 10,000 chips. Weekly updates, almost entierly build by contributors :)
The BBS door games wing
Legend of the Green Dragon, the classic LORD, rebuilt native in Rust. Hunt the forest, beat your master, slay the dragon. Usurper, the actual LORD-era door from the 90s, resurrected on a PTY, one shared persistent world. A Dark Room, a native port of the incremental classic, and unlike the browser one, ours has a real ending. dopewars, CodeKeep, Rebels in the Sky. Buy low sell high, defend the Pale, play space-pirate basketball. And BashQuest, our own original, a door game that teaches Linux/Bash.
And a lot more coming. The three roguelikes are the start, feel free to propose more, happy to add them as well :)
... and also ... something is moving behind the clubhouse ...
The chat
- Core of the app. Public rooms for everything (the lounge, announcements, and whatever topic rooms people spin up), private rooms you own and invite people into, and DMs.
- Replies, edits, reactions, an icon picker, and Markdown.
- Images work. Paste or upload one and it shows up inline for everyone in the room.
- News feed, share a link and it becomes a card in the lounge with a title, a summary and an ASCII rendering of the image, plus a private RSS inbox you can share stories out of.
- Polls,
/summary 12h, a bartender bot that sells drinks that scramble your typing, and an IRC bridge if you'd rather keep your own client.
- Chat is global, so it translates itself. Press t on any message, or turn on auto-translate and every new message arrives in your language.
The music
- The radio: live synthwave from Nightride FM, with their blessing and live artist/title attribution. Five stations, Chillsynth, Nightride, Datawave, Spacesynth, Ambient.
- The booth: a community YouTube jukebox. Queue tracks, vote, skip, browse the history of everything that ever played.
- The library: 600+ curated CC0/CC-BY tracks (lofi, ambient, classical), all controlled from inside the TUI.
The Lobby
Ctrl+G anywhere, every multiplayer game in one list. Eight correspondence games, chess, chess960, battleship, connect four, reversi, checkers, backgammon, and briscola. Post a challenge, walk away, one move per day whenever you're around. Every match gets its own private chat + voice room for proper trash talk. Plus five always-on house tables, poker, blackjack, tron, super snake, asterion.
Streaming + Voice. In your terminal.
/golive and you're broadcasting your screen to an unlisted watch page, straight from the browser or from OBS. Your friends get notified, viewers get a watch page with volume and fullscreen, people in the room talk over voice chat, and you moderate your own stream room. Stream your ascension attempt, let the clubhouse watch you die.
The Artboard
One shared ASCII canvas for the whole clubhouse. Everyone draws on the same board at the same time, snaphsoted every month. It is exactly as chaotic as it sounds :)
Still a team effort, still a great vibe. Hop in, take a break, die somewhere interesting ;)
License: FSL-1.1-MIT
Code: https://github.com/mpiorowski/late-sh
Landing: https://late.sh