Monday, August 28, 2017

Mote 1.8.2 Change log 

This is released both as an installer and by auto-update, to make it easier for new users. (details below)

What's new:
  • Made the update feature a bit more user-friendly, via startup notifications and links to facilitate auto-updating
  • Relaxed some rules on hosting Sandstorm-assisted sessions, on the same machine.
  • Conficting actions mapped to the Escape key
  • Another discovered issue with map rendering vs. the UI.
  • Code cleanup.
  • Home page redirect from app

Sunday, August 27, 2017

What is Sandstorm?

Edit (January 26, 2018):

Upcoming features for Full Access subscribers are:

  • HTML5
  • Javascript
  • Video conferencing

Features added since the original post:

  • Global Repository - a collection of submitted image assets, hosted in the cluod, for players of GMs with Full Access to access. This makes asset dissemination, so much faster than the usual way.

Sandstorm is, ultimately, a collection of cloud-based services centered around providing supporting our Virtual Tabletop applications.

Due to real-life time constraints that our small team faces, we mapped out development for Sandstorm, as a series of modules. We have finished the 1st module, and we are currently undergoing open public testing for it, with our devoted user community.

This 1st, and most important, module deals with:
  • Hosting session information for anyone in the world to find
  • Scaled data storage and dissemination
  • Assisting remote users, in connecting with these sessions.
  • Security and payment processing

We highlighted "remote" above, because Sandstorm is not meant to connect clients that are located within the same local network. Our apps (e.g. Mote), already have a means to connect such clients, which are a lot better, performance-wise, than routing through Sandstorm. Also, while it is possible to connect local clients via Sandstorm, behavior can unpredictable and the connection will likely be unstable.

But when used for its intended purpose, Sandstorm offers a (hopefully) seamless experience of getting gaming groups together. You just register yourself for the service, install our apps, login to Sandstorm, and let Sandstorm do all the work in getting everyone together.

No messing around with hardware. No need to install any 3rd party software. It's that simple :)

We believe it offers a noteworthy alternative to other Virtual Tabletops out there, particularly those that are purely hosted in the cloud. Our apps provide more features, perform a lot better since they're installed in your PC, and don't stop working if there is no internet. 

And we're just getting started. Sandstorm and our applications, have a lot more in store. With your support, we can make it all happen.

Do join us, and see for yourself :)

Saturday, August 19, 2017

1.8.1 Changelog

What's new:
  • Implemented session info filter. It was a detail left unfinished, amidst all the work we were doing on Sandstorm.
  • Added a toggle for the selection of drawn map objects, triggered by "S"
  • Drawn map objects can now be deleted by selecting items and hitting the "Delete" key. However, there is one caveat.

    This messes with the underlying undo/redo system. This necessitated the clearing of its queue, to avoid any weird or detrimental behavior in the application. Any remaining drawn objects will have to deleted manually, as they are no longer managed by the undo/redo system.

    Lastly, this deletion cannot be undone i.e. because the undo/redo queue was cleared.

    Before anyone asks, no, we will not try to figure out how to reinject the remaining objects into the manager, especially in a performant way; at least, not for the time being.
  • We've changed hotkeys and their behavior, for map tool menus. Moving from Q-T to 1-5, to pull up main groups, and selecting member tools from A-H to 1-7. Behavior also depends on wheter or not menu pinning is active or not.

    If it isn't, hitting #s 1 - 5 will open the corresponding main group, closing other group menus, or repositioning if the same # was used. When a main group is open, using #s 1-7 will select a member tool accordingly, and close the main group menu.
  • When menu pinning is active, member tool selection is inactive. Hitting #s 1-5 will simply reposition the corresponding main group, which is how menu pinning was intended to work anyway (i.e. key + mouse synergy).

    The hotkey info on context help, has been updated accordingly.
  • You can now save your Sandstorm credentials, to auto-fill the login dialog on subsequent attempts.
  • Minor issue with client connection UI preferences
  • Facing lock toggle bug (wasn't firing)
  • The UI spinner for movement metric type, under App Prefs, didn't display the correct saved value.
  • The move from XML to JSON carried over bad property keys for global macros.
  • Issue with the opacity of the glass pane that displays during transitions e.g. saving or loading, conflicting with helper outline when moving dock.
  • Missing window.update() function
  • Version checking

Sunday, August 13, 2017

Going where the wind blows

Welcome to our new blog! As you may have noticed, we have retired almost all of our previous sites in favor of new ones, to reflect the next phase of Idle Ideas' dev roadmap. 

It's been a bit of a long road getting here, but we're glad to announce that the first grains of the Project Sandstorm are gradually drifting in :)

What this means is that we're finally satisfied enough with it's construct & inner workings that we've lit the green light for public testing. We couldn't have gotten here without all of your support! Thank you, everyone ;)

For those who are unaware, we ran this on Kickstarter a little over a year ago, and is the first module to be delivered as part of the overall project goals for Sandstorm. This also is the most critical component, laying the foundation for hosting the other modules and applications to come.

The 2 most front-facing features of this part of Sandstorm, look simple on the surface. They deal with the hosting and delivery of game session information, as well as providing connectivity assistance between participants. 

With the former, users around the world can register their games for other users to look up and join, using our client applications such as Mote, and Sift (which is still in development).

As for connectivity assistance, it is as it says: Sandstorm simplifies getting everyone connected and disseminates game session data to everyone, in a timely manner. It does this without any of the known hassles typically associated with installed networked applications such as manually configuring router settings, or installing 3rd party applications such as VPN software. 

Sandstorm was designed to just work, without any complicationsSimply register and subscribe to the service, sign in via our client applications (e.g. Mote), browse for your game, connect and start playing. That's all there is to it :) 

Public Testing

To test the service's performance at scale, everyone using the service will have free access to Sandstorm's session listing and connectivity assistance features. 

Please help us get the word out there and get VTT users to install Mote and register for Sandstorm, to put as much load on the service as possible. Our aim is to provide the best balance between cost-effective performance, and a satisfactory user experience.

We will be collecting performance data during this test period, which should take place over a span of 2-weeks to a month. Rest assured, we will never need nor will we ever collect any personal information.

After trying several approaches during development of the service, we have narrowed our choices down to 2 service configuration candidates. What we will be reviewing for the bulk of the testing period (about 50-75% of the time), is the costlier, more "redundant" configuration. Costlier in terms of server loads and the # of fallback methods to process interconnection and data transmission between users, on a global scale. 

We want everyone to know that we've already exhaustively tested the 2nd configuration to be reliable, and this is likely what we'll go with when Sandstorm goes live for broad public use. Tackling the alternatives now, in this public testing period, will help improve Sandstorm's future robustness as a service. We also wish to stomp out any edge cases where user fail to connect to the session's host.

Now, while we've done our best to root out any bugs, almost everyone knows that beta testing typically encounter issues that need to be addressed before the product or service can be considered ready for actual use. For Sandstorm to be a success, and also for the future successes of our other projects in the pipeline, we need your help in getting to the finish line. We'd like to thank everyone in advance for helping us with this review. 

With this in mind, please help us get as many groups and individual users to register for Sandstorm, and use it for their game sessions. We want Sandstorm to bear the brunt of getting everyone connected, so everyone should make sure that any UPnP and/or port forwarding settings, are disabled. 

Should you encounter any issues while going through Sandstorm, try restarting the application, and try again.

For anything else, please don't hesitate to let us know, so we can address them immediately.

User types and capabilities

Sandstorm currently has a 3-tier user privilege structure. For this testing period, everyone has these capabilities activated. After the testing period ends, 2 of these capabilities will need a subscription, in order for these to continue working. 

Let's briefly go over each privilege:

  • View registered sessions - This is free for all. As it states, users logged into the service, will receive information on all the currently registered sessions, to be displayed on the application e.g. Mote or Sift.
  • Register a session - Subscribed GMs can list their session's information for others to find.
  • Connectivity assistance - Apart from being able to register their sessions, subscribers will delegate the responsibility of getting players connected to their sessions.

Final notes

The login for Sandstorm is found under the Sessions menu. Simply input your registered user credentials you registered, and you're good to go. You will always be notified of any unavailability of the service, or other error messages.

We left this piece of information for the eventual terms of fair usage and service, but to avoid confusion during testing, your credentials are valid only on one active instance of the pertinent client i.e. Mote or Sift. It cannot be used on other instances, either on the same machine or elsewhere, while you are already logged in. In order to use your credentials on another instance, you first have to log out. Please be advised.

If a session is listed on both Sandstorm and the local listing, we strongly advise to use the local version to connect to. Apart from providing the shorter data route, there is no guaranteed that a successful connection can be made, if the Sandstorm option is used.

As for Mote itself, if you currently have it installed, please use the data cleaner provided in Mote's installation directory, then proceed with the uninstall, before installing version 1.8. There have been several changes that necessitate this for a proper clean slate.

Lastly, apart from this blog, we also have our new homepage, where you can download Mote 1.8+, and the registration site for Sandstorm. We hope you enjoy the fruits of our hard work everyone :)

Mote 1.8 Changelog

What's new
  • It's the 1st client for Sandstorm.
  • We dropped XML as the method of persisting application preferences and data, in favor of a pure JSON approach. This was done to further slim down Mote's library dependencies and use a standard that more human-readable, and is in-sync with our other projects.

    However, there is an unfortunate drawback. Global macros and dice expressions will need to be recreated anew. We couldn't write an in-app translator, as the library the does the XML parsing was already dropped, and we didn't have the time to write an external translator. Sorry. We strongly suggest running the latest version of our Cleaner, after installing 1.8.
  • Added the Window group to Mote's API. Please refer to the macro editor's auto-completion and the Mote wiki, for more information.
  • Phased out user-inputted JVM arguments. You will no longer see the text field for this on the initial Launch dialog.
  • Data folder reorganization
  • Cleared out discovered inefficient redundant sections in the code.
  • Improved Perspectives behavior.
  • We've updated the map tools control scheme. Instead of using key hold-downs (i.e. such as pressing alt/ctrl/shift), we now use toggles akin to the control scheme found in Sift.
  • As of this release, 'C' is for toggling the eraser, and 'N' is for snap-to-grid. The old scheme was left untouched (with existing issues et al) but we will consider removing it once people get used to the new scheme.
  • Further improvements to Mote's private messaging and IRC systems.
  • Added the OS group to the Mote API. The new function can be used to run protocols recognizable by the operating system, subject to security checks enforced by the application. 

    As a result of this new feature, this opens up the capability for the next bulleted item.
  • FREQ: Implemented 3rd party Integration for Syrinscape. To run via script. just use"<syrinscape protocol string>") (please refer to Syrinscape's documentation, on how to retrieve these.

    Furthermore, for the sake of completion, Syrinscape strings will be recognized as links in Mote's internal protocol handling, which means you can incorporate them in forms and chat output.

    Users should note that Syrinscape currently doesn't have any version for Linux.
  • UI tweaks e.g. icons update
  • Context menu on user-created frames and dialog.
  • More improvements to resource usage e.g. memory, stack. YMMV.


  • A key collision between GM/Player view toggle and opening the Framework Properties window.
  • Rendering conflict for the Line and Wall template tools.
  • A failure to disseminate Initiative status under certain situations.
  • Cut operation when used from the Token context menu.
We may have missed some new and fixed items. 1.8 was a big code write-up, and we apologize if there was anything we did that was left unmentioned! We hope you all enjoy this release as much as we enjoyed making it! Cheers!

Team Idle Ideas

Video Hangouts

Subscribers to Sandstorm's Full-feature plan can now host video hangouts in their sessions! When creating a server, just make sure you...