Hi everyone! Hope everyone had a few restful and safe holiday weeks. I've spent the past few weeks working mainly on new features and fixes for Piecewise. Here come the headings:
Along with various editor stability improvements, most of my work this month centers around the System blocks and working on rough edges in the Steam Workshop tools.
I've taken some time last month to further smooth out the Workshop and make it public to everyone. I've worked on various papercut-sized issues like making sure the dialog displays properly on all platforms, to adding the ability to fetch the current description of your extension blocks when uploading. I've also made the Workshop visible to all users, not just customers. If you're having issues with downloading from or uploading to the Workshop, please let me know so I can work on it!
New in Piecewise 22.01.0 are the “system” blocks, which allow you to interact with files, folders, the system's environment, and commands outside of Piecewise. You might use these blocks to write to arbitrary locations on disk, tweak settings without rebuilding your bot, or scratch an itch you can't quite get from within Piecewise.
Piecewise now has fully-interactive tutorials! While I plan on expanding this section within Piecewise in the near future, you'll be taken step by step on how to make your first Discord bot, or implement slash commands.
Along with various bugfixes to the Discord blocks, bigger features in Piecewise 22.01.0 include managing scheduled events, working with timeouts, and specifying default permissions for slash commands.
You can now fetch, schedule, and delete events programatically using the blocks in Discord –> Scheduled Events. You may find this feature useful for automatically scheduling recurring events, or making event creation available to users.
New in the Discord –> Moderation menu are blocks that have the ability to time-out a user for a specified amount of time, and remove previously-applied timeouts. Those home-brewing moderation or anti-spam bots will find this feature especially useful.
Default command permissions
When creating a server-specific slash command, you can now specify which users and roles should have access to that command by default (specifying no one will make the command accessible to everyone).
The one major feature with Mastodon integration this month is adding support for Misskey – the same Mastodon blocks you use to access Mastodon and Pleroma instances now seamlessly work with Misskey! Simply enter your Misskey instance URL and token into the “(Mastodon) log in with token” blocks. The integration is still a bit experimental, but please don't hesitate to give it a try and let me know how it works for you.
Miscellaneous fixes and changes
Reworked a lot of blocks to produce more efficient documentation
Reworked a lot of blocks to visually flow better when viewed within the workspace
Adjusted slash command policies to allow multiple commands with the same name, if they are defined within different servers
Adjusted various portions of the demo
Fixed many internal bugs and made various internal efficiency improvements
Upcoming changes and looking ahead
I've learned a lot about how people are using Piecewise since the beginning of the early access period, and I feel that parts of Piecewise are less intuitive than I thought they would be. This led me to decide that it would ultimately be beneficial to spend this month working less on features, but more on less-sexy portions of Piecewise like the tutorials, internal systems, and current blocks. I'll try to detail a lot of these changes and my rationale next month.
Thanks again for supporting Piecewise!