Changelog

Every Tusile release, newest first. New features and fixes only. Your own version is in Settings, under About.

0.4.0

New

  • Calls in DMs: voice and video calls with anyone you message, one to one or in a group, with camera, screen share, push-to-talk and a volume for each person. A call going on without you shows a Join button, and every call leaves a line in the chat: how long it lasted, or that it was missed. Calls are not end-to-end encrypted.
  • Calls ring your phone even with the app closed: a full-screen call screen on Android, and the system call screen on iPhone and iPad, also on the lock screen.
  • Choose your ring and the tone you hear while calling from eleven ringtones, or upload your own MP3, in Settings, Notifications, Call sounds.
  • Light mode. Settings, Appearance offers Light, Dark or Match device, and text stays easy to read in every theme and accent colour.
  • Marble Kingdom Global: a marble every 15 seconds, everyone's marbles fall together on each beat, and a new board drawn like the map. One player per clan is enough to qualify for the prize, and a muster leaves 1 behind.
  • Supporter levels can give any role except an Administrator one, and their editor fits a phone.
  • Change password in Settings sends a reset link to your email.
  • The People directory lists everyone, most recently active first. Offline members are listed most recently active first too.
  • The support bot's /feedback opens the app's own feedback window.
  • Hat tips say who they are for.

Fixed

  • Do Not Disturb now stops push notifications.
  • Tapping a reply's quote in a channel takes you to the message, even far up.
  • Two images sent one after the other in a DM no longer show the same picture.
  • Reactions keep showing names in a channel that has been open a while.
  • A role's permissions stay as you saved them.
  • Holding a DM message on a phone opens its actions again.
  • Opening a DM from a notification shows the right person and no longer asks for your recovery phrase.
  • Mentions, /timeout and /ban work with names that have a space.
  • Camera background blur works in the browser.
  • iPad: a conversation's name no longer sits under the clock.
  • A conversation's header shows when the other person comes online, also during a call.

0.3.9

New

  • Voice channels have a chat. A Voice and Chat switch at the top of the call swaps the view without leaving the call, and the chat icon on a voice channel opens it without joining. New messages show as a count on the switch and the channel, and you only get a notification when someone mentions you.
  • Sparks history: a server's Sparks tab shows where its Sparks came from and what they paid for, and My Sparks shows your own packs, rewards and gifts.
  • Marble Kingdom Global: every player of a round gets their score, rank and rewards when it ends.
  • The bot directory shows bots as cards.

Fixed

  • Windows: sharing a game that keeps your graphics card busy stalls far less while you play.
  • The People directory shows just how many people it lists.

0.3.8

New

  • Polls: the author or a moderator can end a running poll.
  • Role icons, a Supercharge perk: a small picture next to the names of a role's members.
  • Bot directory: tap a bot to read what it does, its commands and the permissions it asks for before adding it.
  • The Broken Crown: whoever loses the Usurper's title gets a rock of a hat.
  • A server's own link shows a join card with a Join button right in chat.
  • Notifications show the sender's picture as the icon.

Fixed

  • "Yesterday" means the day before, not 24 to 48 hours ago.

0.3.7

Fixed

  • Windows: sharing a game keeps 60 fps and a sharp picture through loading screens and death timers, instead of dropping to one blocky frame a second.
  • Windows: a share on a graphics card encoder no longer lowers itself to 30 fps when your computer is keeping up.

0.3.6

Fixed

  • Windows: a screen share no longer drops its own quality when your computer is keeping up. Viewers on phones get a sharp picture instead of a blurry one.

0.3.5

New

  • Settings has a Blocked tab with everyone you blocked, and Unblock. A blocked person's profile card offers Unblock too.
  • Polls: take your vote back, and edit a poll you started while it runs.
  • A bot wears the clan its owner picks, with the clan's banner.
  • A bot's answer says who asked for it.
  • The Tusile Music Bot: openly licensed music in your voice channel, radio stations that start in about two seconds, and it leaves when nobody is listening.
  • Slash commands autocomplete their arguments and stop asking for options a command does without.
  • Local Marble Kingdom: half the rivers, the map opens on the island, and better mountains.
  • The welcome hat note has a close button.

Fixed

  • A bot's volume is remembered when you rejoin voice.
  • Deleting a bot removes it from every community it was in.
  • A bot that is not really in a voice channel no longer shows there for a minute and a half.
  • The voice invite list shows friends you added while the app was open.
  • Discover on a phone: bot names no longer wrap one letter per line.
  • A command answered in the channel closes its panel.
  • Your name in the bottom left comes back after a network hiccup.
  • Nobody is notified of their own message.
  • The app makes about 11% fewer requests.

0.3.4

New

  • Blocking someone now means it: no DMs either way, the chat leaves your list, and their messages are hidden.
  • Every Sparks you give a server counts towards your supporter level there, whether you bought it, earned it in a quest or got it from Tusile.
  • Sparks the Tusile team sends you are announced the moment they arrive.
  • Feedback you send to the team can now get an answer by email.
  • Marble Kingdom Global: cities raise soldiers 20 times slower, so most of your army comes from your marble.
  • The desktop-only settings tab is called "Desktop app".
  • The support bot's /help is now /feedback.

Fixed

  • Push notifications stopped for about a day after the last update. They are back.
  • Closing the avatar editor no longer crashes the app.
  • On Android, stopping a screen share no longer freezes the app, and picking several large files no longer runs out of memory.
  • After a reconnect on a flaky network your mic always comes back.
  • Marble Kingdom Global battles no longer freeze and jump on a jittery connection.

0.3.3

New

  • Animated avatars are free: a GIF avatar moves for everyone as a small loop of up to 6 seconds.
  • Animated server icons and banners are free too, on any server.
  • A "message yourself" chat is always first in your DMs.
  • Tap a reply quote in a DM to jump to the message it answers, and search a conversation.
  • Mark a channel or a whole server as read, or a channel as unread.
  • Community servers can remove guests automatically after a number of days.
  • Supporter levels can give any role that grants no more than Member, and saving hands the roles out at once.
  • Every Supercharge perk shows what it looks like.
  • A bot's public answer says who asked for it.
  • Marble Kingdom: held cities show who holds them, clanmates get their own shade, and ATTACK reaches any city next to your clan's land.
  • Marble Kingdom battles show how many soldiers each ball stands for.
  • Marble Kingdom Global: the next game starts 4 hours after the last one.

Fixed

  • Screen share steps down smoothly when the sender's computer cannot keep up.
  • On phones, a long press on a server in the side rail opens its menu again.
  • The Mac app starts on Apple Silicon Macs.

0.3.2

New

  • Marble Kingdom on a phone, in both games: the map fills the screen, your number sits in a corner badge with a mini board, and MUSTER, ATTACK and MOVE are big buttons at the bottom. Gear, clans and top players are a swipe away.

Fixed

  • Panning and zooming the Marble Kingdom map on a phone works wherever you put your finger.
  • Weapons are held in front of the hat, so a helm or a hood no longer covers the hand.

0.3.1

New

  • Marble Kingdom Global: MOVE sends soldiers from one of your cities to any city of your clan, yours or a clanmate's, along the shortest road through your clan's cities. Your number is left alone.
  • Marble Kingdom in a call has its own slots: your number grows about twice as fast as in Global, and talking louder always helps.

Fixed

  • A Global game ends early only when one clan holds 75% of the cities, so most games run their whole day.

0.3.0

New

  • Marble Kingdom Global: one clan war on one map, shared by everybody. Wear your clan's tag to fight for it, or watch without a clan. A battle at a defended city is a siege that takes time, and you watch yours live in a battle window you can drag anywhere. Your hats and weapons fight with their bonuses.
  • Marble Kingdom Global has a score for every player, updated live, a Top players list, past games, the Usurper's title and the King's regalia: the Usurper's Crown and Sword, the Warlord's Helm and a regal King's Sword. Five Global quests pay hats and weapons.
  • On the Global board you choose how many soldiers a MUSTER or an ATTACK sends, the slot row grows with every drop, and cities fly their owners' banners.
  • Marble Kingdom in a call plays like Global: a generated map, MUSTER, ATTACK and a new MOVE between your own cities, one move a round, 20 second rounds, voice steering, and a bot that joins small calls.
  • Clan tags: a community picks three characters, and its members wear them everywhere.
  • Banners belong to clans: bought from the server wallet and flown by every member. A banner change shows everywhere at once.
  • The Spark Forge: hats, weapons and animated avatars for your own Sparks, forged on the anvil with a little tune and a thunderbolt. The four helms are legendary at 500 Sparks.
  • Animated avatars: lightning brings a GIF or WebP to life for 30 days.
  • Every hat is redrawn to sit on the avatar, and only legendary hats glow. New: a legendary helm, hood and Pumpkin Head, the last one from a Halloween quest.
  • Supporter level badges next to names in the member list.
  • Supercharged servers invite from their own address.
  • Drop files onto any upload, including straight from the browser.
  • Place your picture before it becomes an avatar or a server icon, with your hat on the preview.
  • The Offgrid switch on the server rail can be hidden.
  • Bots: a bot's card says what it can do, and a bot follows a community that moves to another address. The bot SDK, @tusile/bot 0.4.0, does more of the work for you.

Fixed

  • Sharper screen share for viewers, and a lighter one from phones.
  • Marble Kingdom battles run about twice as smoothly, the web tab no longer freezes when the game opens, the Global map pans and zooms smoothly, and every drop arrives.
  • The feedback quest gives its hat right away, and quests update at once.
  • Saving an attachment works on a phone.
  • Creating a server works right after an update.
  • Clan tags work in older free communities, and a refused tag says why in your language.
  • Hats fit the avatar everywhere, and an avatar no longer goes blank while its picture changes.
  • No hat pop-up before your first message, and no battle bonus shown outside the game.
  • The unlock pop-up names the prize in your language.
  • The add-server menu's free row says Free server again, and the collection total counts what the collection shows.

0.2.7

New

  • Marble Kingdom: every hat gives its own battle bonus, such as armour, dodge, health, healing, speed, reach, critical hits or thorns. Hat cards show it, with a tooltip that explains it.
  • Hats lean the way their marble is facing in Marble Kingdom.
  • A new weapon: the King's Sword.
  • The profile's hat row shows the hat itself, and weapons say where they came from.

Fixed

  • Several fixes to the rewards screen and the item cards.
  • Plan perks describe what is actually limited: public discovery.

0.2.6

New

  • Edit your own direct messages. Both sides see "(edited)", and encrypted conversations stay encrypted.
  • Select and copy text across several messages at once on desktop and the web.
  • YouTube previews play inside the app, starting at the time in the link.
  • Weapons are part of your collection next to hats, earned through Marble Kingdom quests: play a round, win a battle, conquer cities, win games. Profiles show the weapon you hold.
  • Guests can create their account with Google or Apple and keep everything.
  • Sign in right after registering and confirm your email later.
  • Drag channel categories to reorder them.
  • A burst of messages arrives as one notification.

Fixed

  • Google and Apple sign-in failing for some accounts.
  • Marble Kingdom: the marble is always drawn in the slot that counts.
  • A crash in the main view when a channel or server disappeared.
  • Android freezing when a screen share stopped, and losing the microphone after a network change.
  • Sharing an invite on iOS 26, and a few dialog crashes.
  • Background browser tabs no longer refresh every minute.

0.2.5

New

  • Lightning strikes when Sparks arrive, after a purchase or a quest payout. Bigger packs get a bigger build-up and strike, with thunder that follows your sound setting. Tap or press Escape to skip it.
  • On the web, paying for Sparks brings you straight back into the app.
  • You get a confirmation email for every Sparks pack you buy, saying which server got it.
  • Welcome messages: "Text on image" puts a text box on the welcome image that you can move and resize. Use {username} and {server}; the text wraps and shrinks to fit, with colours, glow and alignment.
  • Members see a notice when a server's Supercharge is running out, or has moved back to free hosting.
  • The supporters list is opt-in: you choose whether your name shows.
  • Turning off Supercharge asks you to confirm, and it ends at midnight UTC.
  • The Sparks tab stands out in settings.
  • Push notifications work for every server, whatever its size.
  • Marble Kingdom in voice is now a conquest game: a map of cities, MUSTER and ATTACK slots, armies marching, and pinball-style battles where fighters bounce off rocks and each other, swinging their weapons. Conquer cities; the last kingdom standing wins.
  • Weapons are a new kind of reward, worn next to your hat. The first one, a wooden sword, comes from playing Marble Kingdom, and more come from later quests.
  • Right-clicking someone in voice opens their menu in every view.
  • Discover: the trending row scrolls with a mouse, and all servers load on wide screens.

Fixed

  • The chat holds still when a message arrives, with no jump or blink.
  • A game that crashed is no longer shown as being played.
  • Communities on free hosting come back within seconds after an update instead of showing "channels can't load".
  • Several fixes to buying Sparks.
  • Supporter roles only ever carry ordinary member permissions.

Thanks

  • Special thanks to Red-ex-power, for the idea of Marble Kingdom.

Older releases

0.2.4

New

  • Sparks: every server has a wallet its whole community can fill, and you have one of your own to give from. No more subscriptions.
  • Supercharge your server from its Sparks tab: unlimited members and beefier hardware. If the wallet runs dry, the server goes back to free hosting with everything in it instead of going dark.
  • Supporter levels: give Sparks to a server and earn badges from Spark to Phoenix. Owners set the thresholds and a role for each level, handed out automatically.
  • Quests in Rewards, with progress bars. Some pay Sparks: grow a server to 25 members and get 28.
  • Owners hear when someone gives their server Sparks.
  • Sparks in the server menu for every member.
  • Discover is rebuilt: servers with people online come first, a Trending now row, cleaner cards that say who is online, colourful banners, only servers that are up, and a tighter layout on phones.
  • Bot messages can carry links, headings, quotes and lists, and a bot shows when it is thinking.

Fixed

  • Server settings opened from the server list while on Home showed and changed a different server.
  • A free server past 25 members keeps letting people in.
  • Discover showed "0 members" on free servers.
  • The reason a sign in failed is scrolled into view.
  • Messages from someone without a full profile no longer show as "Anonymous".
  • The browser no longer treats the sound of a shared game as a microphone.

0.2.3

New

  • Lost your confirmation email, or the link stopped working? You can now send yourself a new one, from the login screen when it says your email is not confirmed, or from the confirmation page itself.
  • Add any game to your profile. Settings, General lists the games Tusile recognises and lets you add one it has never heard of.
  • A bot's profile card shows the bot: its picture, the description its author wrote and its commands, instead of friend and report buttons that did nothing. It no longer says "Offline" while it is answering you.
  • The "/" menu shows each bot's picture next to its commands, so two bots with the same command can be told apart.
  • When a command is refused, it says why: the bot cannot see this channel, your role does not allow it, or it is not open to guests. It used to say "forbidden".
  • An optional choice in a command can be cleared again after you picked it.
  • Arabic is in the languages you can list on People.

Fixed

  • Custom emoji reactions showed up as text like ":hype:" on phones.
  • GIFs that froze for some people now start moving again by themselves.
  • Someone's server picture no longer switches between it and their normal picture from one refresh to the next, and names and pictures in busy servers stay right.
  • A game you closed no longer stays on your profile card.
  • Pictures from bots stay a readable size instead of filling the chat, and sit on the right side in Arabic.
  • Opening a confirmation link a second time explains that it may already have worked, in your language, instead of an error in English.
  • A message whose author could not be loaded is labelled in your language instead of "Anonymous".

0.2.2

New

  • Moderate by typing. /timeout, /untimeout, /kick, /ban and /unban work in the channel where the trouble is, without hunting through the member list. You are only offered the ones your role allows, and a name has to match exactly one member, so "ada" never bans Adam.
  • Screen share on macOS shows your screen. It used to send the desktop picture with Tusile's own window on top; the app now asks for the Screen Recording permission it needs, and on macOS 12.3 and later it shares at a smooth frame rate, respects the cursor setting, and keeps a 16:10 display in shape.
  • Bots show their own picture instead of the same grey robot.
  • When the support bot cannot answer, /help sends your question to its owner instead of leaving you with nothing. And /cat posts a cat.
  • A bot command that needs a voice channel only offers voice channels.
  • Coming back to the app, or waking your computer, now checks your call is still connected and refreshes messages, so a laptop opened in the morning no longer shows yesterday's chat.

Fixed

  • Adding a bot to a server failed every time with "Core rejected bot installation".
  • A guest account could run bot commands that need a permission, such as /setup.
  • A bot in a voice channel showed up as a long code instead of its name and picture.
  • A bot reply with a picture in it arrived as an empty message.
  • A suspended account was told "invalid email or password", which sent people to reset a password that was never wrong. The login screen now says the account is suspended and why.

0.2.1

Fixed

  • GIFs froze at random and stayed frozen. They were being paused whenever the window was not the one in front, which on a desktop is a window you are still looking at.
  • Joining a server from an invite left you looking at it without being in it: the server appeared in your list while the channels and the messages both sat on "Loading..." for ever.
  • On a tablet held sideways the app was drawn underneath the status bar, so the clock and the battery sat on top of the channel header and the member list.

Changed

  • The add-server menu only mentions paying once you have used your free one.
  • GIF search runs on a different provider.

0.2.0

New

  • Bots. A bot is a member of your server: it has a name, a picture, roles and a row in the member list, and its messages carry its name rather than a bare id. You add one from Server Settings and take it off the same way.
  • Slash commands. Type / and you get every bot's commands, listed under the bot that offers them, with a form built from what that command actually accepts. A bot that needs a moment can say so and fill the answer in, and an answer meant only for you stays out of the channel.
  • Bots can send rich messages: embeds, buttons, dropdowns and pop-up forms, all of which the app draws and remembers.
  • Writing a bot is an npm install and a token, with an example you can run and a guide you do not need an account to read.
  • Your profile can show what you are playing, and offer people a Join button that puts them in the same session. You choose who may use it: nobody, friends, or everyone. Roblox is detected automatically on the desktop app, and a hundred or so games are recognised by name and artwork.
  • Windows has an installer: one download that installs without an administrator prompt and keeps itself up to date. A portable zip is published alongside it.
  • The profile card was redrawn. The bio you could always write is finally shown, the banner takes your two accent colours, and the buttons became a single row of icons.
  • Your server list follows your account. Joining, leaving, being removed or a server closing now reaches your other devices without a restart, and you can drag servers and channels into order on a phone.
  • Party servers hold 250 members and Guild servers 2500, and a free hosted server holds 25.
  • Bots are going out to a first group of accounts rather than to everyone at once.

Fixed

  • Opening a server shuffled your server list, so clicking the same place a second time opened a different server.
  • The app would put you back on the server you had just left, a moment after you switched.
  • Being removed from one server stopped a different one from opening, silently, until you restarted.
  • A click that moved a pixel or two, which is what a trackpad does, selected nothing at all.
  • The member list emptied itself, and somebody who joined while you were reading did not appear until you changed channel.
  • Changing your server's banner or icon looked like it worked and was forgotten when you closed Settings. Six other settings on that screen had the same problem.
  • An error inside Settings was drawn behind the Settings window, so the one thing that would have explained a failure was hidden by it.
  • A new message dragged you down the channel while you were reading further up. The view stays put now.
  • A message could be a screen and a half of blank space. Long runs of empty lines collapse, except inside a code block.
  • A reply, and a message under a welcome, showed nobody's name.
  • Your name takes the colour of your highest role that has one, instead of your highest role.
  • A per-server nickname and avatar reverted to your account's every ten minutes.
  • On the web, the browser drew its own right-click menu over the app's.
  • A moment of server trouble read as losing permission to post in your own server.
  • An owner could silence themselves for a week with their own anti-spam rule.
  • You could be refused entry to a server you were already in, and moderators were not told when somebody joined.
  • A server whose owner deleted it now leaves your list instead of failing to open forever.
  • Uploading an emoji that was too large said so, in your language, instead of showing an error from the server.
  • A server you made on one device did not appear on another until you restarted.
  • Removing somebody from a server meant banning them, because a profile offered a ban and nothing gentler. There is a Remove now, and the moderation buttons no longer disappear when the member list has trouble loading.
  • Counts read as plurals when there was one of something: "1 new messages", "1 votes", "1 people in this channel". Fixed in every language, with Polish and Russian using all three of their forms.

Thanks

  • Special thanks to Red-ex-power, for finding bugs and helping reproduce them.

0.1.112

New

  • Sharing one application on Windows now shares that application's sound and nothing else. Your voice channel, a microphone your headset software is monitoring, and another window's notifications can no longer end up inside your share. Sharing a whole screen is unchanged.
  • A person you have turned down is marked as turned down. A small speaker and a percentage sit next to them in the call, so a voice you cannot hear is one look away from an answer instead of a setting you forgot you made.
  • The volume slider on a person no longer moves when you double tap them on a phone, and adjusting a second person no longer throws away the first change.
  • The notification sounds are levelled against each other and have their own volume, with a slider in Settings, Notifications. "Someone joined" used to be far louder than the rest, loud enough that people turned Tusile down in the Windows mixer and took voice down with it.

Fixed

  • Shared sound was muffled, as though something were gating it. It was being encoded for speech, which is right for a microphone and wrong for a game. It is stereo music now, with nothing cutting the quiet parts.
  • Windows shared on the graphics card only when launched from a developer script. The switch the app set for itself never reached the video engine, so an installed copy always encoded in software, which is what 0.1.109 said it had fixed.
  • Changing your audio output device silenced everyone already in the call, and they came back only when somebody new joined.
  • Closing the app, losing the network or putting the machine to sleep left you shown in the voice channel you were in.
  • A poll's results move as people vote. They used to stand still until you reopened the channel.
  • A Windows window that opens black repairs itself. The app was drawing into a view that Windows had left hidden inside a window that was on screen.
  • The "optimise for" explanation in the share dialog drew a grey bar across the app in Polish, over the controls it was describing, and did not exist at all on a touch screen. Explanations open from a question mark now, on hover or on tap.
  • The line under a name in the voice list, saying a camera is on or offering a stream to watch, was cut off in Polish.

0.1.111

Fixed

  • Starting Tusile while it was already running released the microphone of anyone using push to talk, and brought the window back blank. Two reports weeks apart, and one line of code behind both.
  • A Windows window that comes up blank or half painted now repairs itself, instead of needing its edge dragged.
  • "They cannot hear me": one person's connection was being told to leave the call it had just joined, so it dropped and rejoined every minute or two and everyone else heard nothing in between.
  • After changing your username, voice showed the old one to everybody else for up to an hour.
  • A start-up step that never answers can no longer hold the app on a blank window for as long as it is open.

0.1.109

New

  • Arabic, the ninth language, and the first one the app reads right to left. The whole app mirrors, with its own font and its own plural forms, so counts read the way Arabic counts them.
  • The language has its own tab in Settings instead of sitting at the bottom of Appearance.
  • Settings save themselves. Every control writes the moment you use it, in your own settings, in server settings and in the role editor, and the Save buttons are gone. Change password keeps its Save, because it has a Cancel.
  • Notification switches: turn push off altogether, or just direct messages, friend requests, channel messages or someone waiting in voice.
  • Time someone out instead of kicking or banning them. They stay in the server and keep reading, but cannot post or react until it expires. A server can also time out anyone posting faster than a rate the owner sets, which is off unless you turn it on.
  • Blur your background, or put a picture behind you, on Windows, iOS and macOS. It used to work in the browser only.
  • Phones and tablets flip between the front and back camera in one tap, with the full list still on a long press.
  • The share sheet opens on a chat with yourself and the places you last wrote in, before the rest of your servers and DMs.
  • Change your username, once every 30 days.
  • The four digits after your name are shown in Settings and on profiles, and you can add a friend by their name and digits, which the server has accepted all along.
  • Windows shares a game on the graphics card instead of the processor. A 1080p60 share used to arrive at 30 fps because software encoding ran out of time between frames.
  • The share picker opens on Applications, with the games you have running at the top of the list.
  • A game share keeps its resolution and gives up frame rate instead, so fast motion stays sharp rather than turning to mush.
  • Windows stops scanning for Wi-Fi networks while you are in a call. The scan took about half a second out of everything sent and received, every minute.
  • Sharing a single window on Windows 11 no longer draws a yellow border around it.

Fixed

  • Delete Account said it had failed when it had worked, and could be rolled back by the app giving up waiting. Deleting an account is now honest about what happened, and finishes even on an account with a lot behind it.
  • Signing in with Google published the first half of your email address as your name. New accounts take the name Google gives, and accounts that never got one are repaired the next time they sign in.
  • Opening an invite link in a browser crashed the page and left the back button dead.
  • Joining voice on a phone with a push-to-talk, mute or deafen key bound threw an error.
  • The Windows app stuttered on every channel switch, and a call was heavy on it throughout. A settings file that had grown to 10.8 MB was being rewritten in full on every tap.
  • The camera preview in Settings went black when you picked another camera, and refused to start while a call was using the camera.
  • The camera could not be turned on at all in the web app on app.tusile.com.
  • Welcome messages never appeared in the open channel: no message, no unread badge, no sound, and no sign of the hats tipped on them. Reopening the channel showed them all at once.
  • Toasts said what to do instead of what happened: "Copy" after the text was copied, "Save" after the save, "Add bot" after the bot was added. Odd in English, wrong in every language that inflects.
  • Buttons and highlights that were a fixed purple follow your theme's colours now.
  • The hat cards no longer overflow the cell they sit in on the rewards screen, in the role editor or in the hat picker.
  • The cursor and sound switches in the share dialogs were cut off in seven of the nine languages.
  • A screen share from the browser could be shrunk by the browser when bandwidth got tight, which is exactly what the quality setting is meant to prevent.
  • A shared game picked up fewer hitches, and no longer sends the layers nobody is watching.
  • Hat tips read as English around a translated hat name. They are sentences in all nine languages now.

0.1.107

New

  • Text you typed and did not send is kept as a draft for each channel and each DM. Channel drafts survive a restart. DM drafts are kept only while the app is open, because DMs are end-to-end encrypted and a draft saved to disk would not be.
  • Drag channels to reorder them or move them to another category, and drag people from one voice channel to another, if your role allows it.
  • Disconnect, mute, deafen, kick or ban someone in voice straight from the channel list, including in voice channels you are not in, depending on your permissions.
  • Drop files anywhere on the window, not only over the conversation. The overlay tells you which channel or person they will go to.
  • A message over the 4000 character limit can be sent as a text file instead of being cut down.
  • A new server starts with a suggested name made from your name, with a dice button to roll another, in every language.
  • The beanie, the hat every new account starts with, is redrawn as a knit in your theme's two colours, and everyone sees yours in your colours. Several other hats were redrawn too, and none is cut off in the hat picker anymore.
  • After a screen share, the app asks once per version how it went, with 1 to 5 stars.
  • Avatars and server icons are kept on your device, so the desktop and mobile apps no longer download them all again after a restart.

Fixed

  • Tapping a notification for a server opened it on a spinner that never finished.
  • Pasting a screenshot on Windows was refused as an unsupported format. BMP files can be sent too, and the error names the format it actually found.
  • Leaving voice after a dropped connection, or closing a web tab you had open for more than 15 minutes, could leave you shown online and in voice until the server timed you out.
  • Someone moved into your voice channel showed up under two channels for a moment.
  • Stopping a screen share from the browser's Stop sharing bar, or by closing the shared window, left the share button lit.
  • The create channel dialog fits the window: the name comes first, its error is always visible, and Enter creates the channel.
  • The unread badge on the Windows taskbar is sharp and no longer covers the Tusile logo.
  • Tab no longer stops on the show-password button in the sign-in and sign-up forms.
  • Screen readers announce the voice bar buttons, the button that removes an attachment, and the Settings close button.
  • Placeholder text is grey, so an empty field no longer looks filled in.
  • Hat names are translated, Portuguese is Brazilian Portuguese throughout, and the log out button in Portuguese and Russian no longer reads as close.

0.1.106

New

  • A notification when someone is waiting for you in voice. It only goes out when they joined an empty voice channel and are still alone three minutes later, only to people who have been in a call with them on that server, and at most once an hour. You can turn it off in Settings, under Notifications.
  • Notifications arrive in the language your app is set to.
  • People cards show every answer. What someone speaks, what they play and what else they are into each sit on one line you can scroll sideways, with what you have in common first, so a card with many answers is no taller than one with a few.
  • Accepting, removing or blocking a friend updates everywhere at once, for both of you and on every device. You can also withdraw a request you sent.
  • The invite dialog tells you how full your server is, and it is half the size it was.
  • Buying hosting shows each step of your server being built, instead of a spinner.

Fixed

  • Screen share on iPhone and iPad crashed a few seconds after Start Broadcast. Closing the broadcast picker without starting no longer leaves a black share, and stopping from Control Center ends the share in Tusile too.
  • On iPad, a screen share could start and then never go live.
  • Two open tabs no longer sign each other out.
  • Switching voice channels no longer takes away speaking and screen share until you rejoin.
  • The Online list no longer empties out and refills all at once.
  • An invite link let in only one person, because the dialog made a single-use link every time it opened. It now reuses your open link, or makes one that lasts a week with no limit on uses.
  • A new hosted server offered Open server before it could answer, and its timer started again after the payment page.
  • Offgrid servers: a hat changed in Roles shows without a restart, the hat picker is back (long press your avatar), and everyone sees the hat you chose.
  • Friends: away and do-not-disturb friends are listed as online, requests you received come first, and someone who already sent you a request is offered Accept.
  • Nothing on a People card is cut off in any language, missing Polish and German accents are back, and the Friends labels are translated.
  • Sign-in tokens no longer appear in web addresses when a tab closes.
  • The most frequent crashes, including changing screen share volume from fullscreen, tap to focus on Android cameras, and starting up on Linux.
  • The close button on notices is visible.

0.1.105

New

  • Screen share sends at the resolution you picked, with a bitrate that matches it. A 1440p screen used to go out at full size on a bitrate meant for something much smaller, which is why it looked soft. You can also set the bitrate by hand, up to 15 Mbps.
  • One options panel for screen share, used by settings and by the picker: source, quality, frame rate, cursor, sound, and whether to optimize for text or for motion. Your choices are remembered as the defaults for next time.
  • Change the source or the quality while you are already sharing, from a menu on the share button. Viewers keep watching through the change and see at most a short freeze.
  • A quality badge tells viewers what they are actually receiving, says when it is still climbing to the full quality, and reports stutter from what their screen missed rather than from guesswork.
  • Sharing a game or a video encodes for motion instead of for text, so it stays smooth as the quality climbs instead of going choppy.
  • On Windows, sharing a single window now works for windows drawn on the graphics card, which used to come through blank, and a fullscreen game is captured from its monitor instead of showing black.

Fixed

  • Stutter on the watching side. Frames could be replaced before the screen had shown them, which looked like stuttering at a frame rate that seemed fine. Frames are now shown in order, one per screen refresh.
  • Sharing a window that is behind another one, or minimized when you start the share, no longer leaves the share broken for the rest of the call.

0.1.104

New

  • Screen share from iPhone and iPad. The broadcast picker is raised by the app instead of being left for you to find.

Fixed

  • Buying hosting shows the price before you reach the payment page, stops asking for an address that was never read, checks the name you picked again, and no longer cuts off the pay button.
  • A full security review closed a set of access gaps: private channels and threads are checked on permission rather than only hidden from lists, someone who is not a member cannot open a channel connection, the role hierarchy is enforced on every action, push notifications only reach a server's own members, and a deleted direct message takes its attachments with it.
  • Accounts are harder to take over: a stolen sign-in token is detected as theft, a changed email address is not applied until it is confirmed, and administrative access requires a confirmed email.
  • Self-hosted servers no longer ship with a working voice key pair, no longer expose the voice server's admin interface, and say why the stack failed to start instead of stopping silently.
  • One server can no longer claim another server's invite code, and a route that handed out paid features for free is gone.

0.1.103

New

  • Start a screen share from your phone. The button had no room on a narrow screen and was simply missing, so Android could watch a screen share but never start one. Camera and screen share now collapse into one button that asks which you meant, and the camera list is reachable from it instead of hiding behind a long press.

Fixed

  • Android screen share uses the quality you chose. It always captured the full panel and sent it on a bitrate meant for something smaller, so the picture came out soft, and the frame rate setting did nothing.
  • Android screen shares carry the phone's sound.

0.1.102

New

  • People: a directory you are in only if you say so. Answer three questions, what you speak, what you play, and what else you are into, and you can browse everyone else ranked by what you have in common. Until now the only way to add a friend was to already know their username. Those three answers are the whole profile: nothing else is shown and nothing else can be filtered on, and one toggle takes you back out without losing your answers.
  • Every account has four digits after its name, so two people can share a display name and still be told apart.
  • Invite someone to voice from the channel you are looking at. The invite is one card in the conversation, and a voice channel in the list offers to invite when you point at it.
  • Direct message notifications show the sender's picture and collapse to one line per conversation.
  • Turkish.
  • The empty home pane offers to find friends.

Fixed

  • Eight actions counted their rate limit per network address instead of per account, so everyone behind one connection shared a budget and whoever asked second was refused. Data export goes from three an hour to five.
  • Paying to restore a suspended server still showed it as suspended, a suspended server offered Remove instead of Restore, and the suspended notice pointed at a download button that was not on the page.
  • The billing portal could change the wrong subscription, the unsuspend button went missing, and the billing section was never translated.
  • A friend request notification takes you to the request.
  • Voice invites: the dot tells the truth about who is in the channel, the channel survives the invite, joining actually joins, and Join on an invite card opens the join screen whoever made the link.
  • Layout: channel rows are one height whatever they carry, the server search field is back to full width, the People list gets the whole screen on a phone, and its invitation banner stops pushing the grid down.

0.1.101

Fixed

  • Loading could hang on a spinner forever while the servers were answering in 150ms. The app was opening far more connections than it could use and starving itself; connections are now capped, shared and bounded, and a request that never ran is no longer treated as an empty result.

0.1.100

New

  • Tusile-hosted servers you can buy from inside the app: pick a name, pick an address, pay, and watch the server come up. It is being offered to a small group first, so the option only appears if hosting is available to you.
  • Move a free community to Tusile hosting in place. Same server, same invite links, same members, files included. Nothing is switched off until the new copy is serving.
  • A hosting panel in billing: your address, the server's status, a self-serve export, and what happens to the data if the server is suspended.
  • Choose whether a new server is listed in public discovery while you create it, in every create flow.
  • When something is refused, the app says why: a join that will not go through, a server you cannot create as a guest, and the rest of the refusals that used to be silent.
  • Creating a server plays a premiere instead of sitting still for two seconds. The curtains part on a server that has already finished loading.
  • Free Tusile-hosted servers only limit video and voice while the shared machine is actually busy, instead of always.

Fixed

  • A ban now actually removes the person from the server.
  • A failed signup no longer eats the referral code you came in with.
  • A message that failed to send can be sent again.
  • Upgrading from guest to a full account no longer fails silently, an email the server rejects can be corrected in place, and the app updates once the upgrade lands.
  • A voice quality hint no longer stands between you and joining a call.
  • A channel that fails to load no longer takes the channel list down with it.
  • Discovery is usable in a narrow window.
  • Voice works on Tusile-hosted servers, which it had never done on a pool host.
  • A retired free server's old address says not found instead of erroring.
  • A community that has been moved to hosting keeps serving its files.
  • An abandoned checkout no longer burns the address you picked. Starting again resumes the same reservation.
  • Billing showed a raw plan key and half-translated text, and the payment redirect landed outside the progress screen.
  • The chat empty state fades out instead of being cut off.

0.1.98

New

  • Browse public servers instead of only searching them: filters, sorts, paging and category facets, with a ranking that puts the servers worth joining first.
  • Servers pick a category and tags in settings, so they turn up under the right filters.
  • An Official servers tab in discovery.
  • A full server shows as full before you try to join, instead of failing at the join.
  • Screen share volume control: set the volume of someone's shared screen from the voice member menu, the channel list, or the fullscreen view.
  • Free Tusile-hosted servers state their 10 member limit in the create-server dialog, before you create anything. Self-hosted servers have no member limit.

Fixed

  • A server at its member limit can no longer overshoot it when several people join at the same moment.
  • Hosted servers left on the old 25 member cap were repaired.
  • A guest who belongs to a server is no longer removed by cleanup.
  • Discovery says why a join failed instead of doing nothing.
  • The Active sort was removed from discovery. It could not be ranked honestly.

0.1.97

New

  • Any server can be listed in public discovery. A paid license no longer decides whether you are listed, only how many members you may have while staying listed. Free servers stay listed up to 25 members, and passing that hides the server from discovery without ever blocking joins.
  • Admin listing ban: a server can be hidden from discovery, with a reason. Invite codes keep working, existing members are untouched, and lifting the ban restores whatever the owner had set.
  • HEIC photos are converted on upload instead of being rejected, on web and on mobile.

Fixed

  • Truncated JPEG uploads are repaired as they arrive, so Android gallery picks that come through short still render.
  • Guest call-to-action wording clarified, and primary buttons lay out correctly when the label wraps.

0.1.96

New

  • Themed app icons: the launcher icon follows your accent color on iOS, Android and Windows, switched while the app is running.
  • Icon switching says why it failed instead of failing silently.
  • Android screen share runs as a foreground service, so it no longer crashes on newer Android.
  • Hat glow reworked, with better blur and color.

0.1.95

New

  • Rewards: a rewards screen with unlockable cards, hats you can wear, streak days, and a profile strip showing your collection.
  • Choose whether your collection is public.
  • A worn hat shows where it came from.
  • Send feedback from inside the app, and get rewarded for it.
  • A referral code from a link is kept until you register, then applied.
  • Theme rework: derived palettes, an accent picker, saved theme settings, and a logo that follows the theme.
  • Voice wash gradient and home panel polish.

0.1.94

New

  • A setting to stop encrypting new chats, without breaking conversations that are already encrypted.

0.1.93

New

  • Safety numbers for encrypted direct messages: see the other person's devices and compare a safety number, openable from either side.
  • Device registry: every install registers itself, so your devices can be listed and verified.
  • Encrypted attachments: images and video are encrypted and decrypted on your device, and image dimensions are sealed too, so placeholders stop jumping.
  • You can withdraw from new encryption without breaking anyone else.
  • Polish, German, Russian, Spanish, French and Portuguese translations completed.
  • A clear message when a welcome channel has to exist before the server can be created.

Fixed

  • The locked banner no longer appears over plaintext conversations, and the shield only shows where there is something to verify.
  • Someone rotating their key no longer locks the conversation.
  • Refreshing a direct message no longer eats the scrollback or throws you out of history.
  • A stale conversation load no longer overwrites a newer one.
  • Session replay is disabled, so message content is never captured.

0.1.92

New

  • Role and server settings screens check membership before they open.

0.1.91

New

  • End-to-end encryption for direct messages: per-conversation keys, an encryption identity, a secure key store, key-change handling, and a settings panel.
  • Messages you send appear straight away and reconcile with the server copy.

0.1.90

New

  • Offgrid mode: a self-hosted server runs standalone with its own username and password accounts, so it never calls Tusile Core. The app gets connect, login and register screens, and a mode toggle you can flip in place.
  • Offgrid setup with an internal-CA option, certificate pinning on first use for servers on your LAN, and unattended installation.
  • Core health monitoring, with Core-only features hidden while Core is unreachable, plus a telemetry opt-out.
  • Per-server presence.
  • Link previews for server links, with protection against pointing them at internal addresses.
  • Multi-turn LiveKit support for voice.

Fixed

  • Security: emoji storage is bounded, the owner id and server token no longer leak, and a member-list auth bypass is closed.
  • Certificates: the media endpoint's certificate is trusted like the API's, localhost and private names count as internal-CA hosts, and not every TLS failure is called an untrusted certificate any more.
  • Offgrid interface: log out works after switching modes, "forget the server" replaces the dead log out, a pasted invite code survives to the register form, and "Remove from list" removes.
  • Voice presence on the community server has ground truth.
  • Deployment: RTP media ports in docker compose, TURN and TLS config that is safe to re-run, and a pinned media IP on LAN installs.

0.1.89

New

  • An audio reset button in voice settings, and mic volume held to a sane range.

0.1.88

Fixed

  • Microphone handling when push-to-talk changes state, so the static burst is gone.

0.1.87

New

  • Windows Store updates download in the background and prompt to install.
  • Active-speaker detection tuned across setups, so it reacts faster.

0.1.84

New

  • Refresh tokens rotate with successor tracking, so a dropped response no longer logs you out.

0.1.83

New

  • Windows Store updates relaunch the app once they install, and report the result.

Fixed

  • Speaking borders no longer shift the layout.

0.1.82

New

  • Deep links open the Windows app.
  • Graceful exit on Linux.
  • Guest prompts, translated.

0.1.81

New

  • Online presence tracking, with history.

0.1.80

New

  • tusilence noise suppression on Windows, Linux, iOS, macOS and Android, with two isolation profiles that swap mid-call.
  • Microphone gain and audio quality settings.
  • Voice presence reconciled from the media server, so ghosts clear themselves.
  • Admin stats show the online user count and last seen time.

Fixed

  • A transient refresh failure no longer wipes a valid session.
  • Mobile modals: fullscreen edit history, D&D sheet close, and poll voter overflow.

0.1.78

New

  • Share a single window instead of the whole screen (Windows).
  • A voice join and leave guard, plus a banner when the browser blocks audio playback.
  • Replies and emoji reactions in direct messages.
  • Message forwarding.
  • Long-press on media opens the reaction picker.

Fixed

  • Better file type detection for media shared through "Share with Tusile".

0.1.77

New

  • The keyboard dismisses on drag in chat and direct messages.
  • Message length is checked as you type, with a translated error.

0.1.76

New

  • Native push-to-talk sound cues, and push-to-talk improvements on Linux.

0.1.74

New

  • Push-to-talk across voice: PTT state in the voice bubble chart and channel view, an audio gate that fades in, and system-wide PTT on Linux.
  • Voice presence re-seeds the remaining participants when someone leaves.

0.1.65

New

  • Screen share options for cursor visibility and audio sharing.
  • Screen share audio on Linux, through a PulseAudio loopback.

0.1.61

New

  • D&D game channels (beta): a virtual tabletop with character sheets, encounters, dice rolls posted to chat, and a per-channel DM role that can be handed over. SRD and 5e.tools integration with a spell picker, plus tracking for limited-use features.
  • Autocomplete overlays for emoji, mentions and slash commands.
  • A foreground service keeps voice calls alive in the background.

Fixed

  • Unread counts include pinned channels and non-archived text channels.
  • Character sheet tabs scroll on phones, so labels are no longer clipped.

0.1.60

New

  • Spanish and Portuguese, with better language detection.
  • Voice connection-quality indicators and a reconnecting state, plus a connecting banner on mobile.
  • Richer avatars and activity reporting.

Fixed

  • Bubble avatars are no longer clipped, and avatar background color and URL resolution were corrected.

0.1.56

New

  • Hat tracking in the tipping system, so hats render the same on every client.

0.1.55

New

  • Spotify integration, with now-playing presence.
  • Game activity tracking and presence updates.

Fixed

  • The desktop taskbar waits for the window manager before it shows.

0.1.51 to 0.1.52

New

  • Linux: a running app raises itself instead of starting twice, and an apt repo gives one-command updates.

Fixed

  • Linux close and reopen behavior, reopen state, and the dock icon matching the desktop entry.

0.1.47 to 0.1.48

New

  • Deleted direct messages are soft-deleted, so a delete is recoverable on the server side.
  • GIF attachments can be staged with a caption before sending.
  • Guest accounts carry their own rate limits, with IP bans for abuse.
  • Licensing reworked: member caps came off in-app features, and discovery listing follows public thresholds instead.
  • A scroll-to-bottom button with an unread count.

Fixed

  • Tip-hat fixes, the unblock interface, friends and blocks loading, image aspect ratio, and the iOS and Android download links on translated pages.

0.1.46

New

  • Guest accounts: join and talk with a display name and a guest badge, no registration.
  • Login screen redesign, with clearer guest access and updated sign-in buttons.
  • Apple sign-in works for accounts that hide their email.
  • "Tip your hat" acknowledgements, with a hat catalog and overlays in voice channels and the sidebar.

0.1.44 to 0.1.45

New

  • "Share with Tusile" from the iOS share sheet, with a channel picker and a translated join preview.
  • Video uploads get a poster frame with rotation handled, and images and video are compressed on upload.
  • The registration form validates as you fill it in.

0.1.42

New

  • Offline-first overhaul: messages, channels, members, direct messages, friends and servers are cached on the device, with attachments cached too, so the app opens with content instead of spinners.
  • Faster server switching, with server metadata cached and channels pre-warmed.
  • Reporting for messages and users, channel topics, and a create-server flow that handles deep links.

Fixed

  • The notification cascade was reduced to a single source of truth.

Earlier releases, 0.1.1 to 0.1.41

0.1.41

  • License tiers and upload limits, with the member limit shown in server management. Message caches gained size limits, and direct messages, friends and the member sidebar hydrate from cache.

0.1.39

  • Vanity join links, with deep-link handling and public joins.

0.1.37

  • Windows Store self-update, and the app version shown in settings.

0.1.36

  • Slash commands: /roll with a dice animation, /spoiler, /style, and kaomoji commands, with autocomplete.
  • ArrowUp on an empty input edits your last message.
  • Notifications across servers, with mention scoping and a notification mode toggle.
  • Apple login and push notifications.

0.1.35

  • The per-file upload limit floor was raised to 50 MB.

0.1.32

  • Multi-tenant hosting, so a free hosted server can be created from the app.
  • Cross-server custom emoji.
  • Separate input and output device handling in voice, with better reconnection.

0.1.27 to 0.1.28

  • Custom animated emoji, personal, per server and across servers.
  • Welcome messages with images and reactions.
  • GIF support, and mobile interface improvements in voice lists and the message input.

0.1.25 to 0.1.26

  • Voice polish: faster join, live mic and speaker controls, a push-to-talk mic lock with its own beeps, and live output-device switching on web.
  • A voice activity indicator on the server icon, and refresh tokens that last a year.

0.1.24

  • Desktop autostart and a general settings tab, plus in-app search with highlighted results. Community servers are private by default.

0.1.21 to 0.1.23

  • Google sign-in on desktop, swipe actions and notification settings in direct messages, native file download and image copy, an official-server badge, and a refreshed login screen.
  • GIF sending, pending-server warnings, and a delete confirmation in server management.

0.1.19 to 0.1.20

  • Google and Apple sign-in with account linking.
  • Licensing with tiers, expiry and grace periods, plus Stripe subscriptions, a billing portal and a 14-day trial.
  • Threads, pinned messages, system messages, and a mentions-only mode.
  • Camera selection, background blur, virtual backgrounds, and screen-share quality settings.

0.1.14

  • Friend management in the profile dialog, multi-mention, and per-server and per-channel mute settings.
  • Voice channel permissions and moderation, with server mute and deafen.
  • Multiple attachments per message, and push notifications for channel messages and direct messages.

0.1.11 to 0.1.12

  • Voice input and output volume sliders, noise suppression, and camera support in voice channels.
  • A Windows taskbar badge, responsive mobile settings, an email confirmation toggle, and the privacy policy.

0.1.2 to 0.1.5

  • The voice bubble chart view, avatar caching fixes, and update checking.

0.1.1

  • First public packaged release: the Windows app with an installer, voice with push-to-talk, noise suppression and screen share, chat with reactions, replies, edit history, markdown, spoilers, polls and GIFs, server management with roles and discovery, and accounts with friends, avatars and email verification.

Last updated: 2026-10-23. Source of truth is CHANGELOG.md in the repo, which also lists internal changes.