Forge Feature Roadmap

Aaaaaaaaaaand it’s done!

I’ve finally finished with the task of the assets revamp. The new UI is now available on the site and you can now select multiple files to delete or drag/drop them to move them to other directories, rename your files, you can also do batch uploads that go blazing fast and saves bandwidth for everyone! I’m really quite happy with the overall results of this Assets revamp project and I hope everyone is too.

I’ve managed to achieve most of everything that I wished to do, and more, but there is one thing that I didn’t get to, because it turned out to be extremely complicated to do properly: automatically renaming files in worlds to match file renames/moves.
Although I now have a design on how to achieve that optimally, it would still take a lot of time to implement it in a safe and risk free manner, so I’ve decided to drop that feature until the next time I revisit the assets library functionality, so I can move on to the more important/urgent issues to tackle. For now, there’s a big warning any time you want to edit a file or folder’s name that warns you that it will break content in games that reference those files, and I think that’s an acceptable solution for now.

I’ve had a lot of fun designing the new system, then implementing it, I’m also quite happy with my newfound skills at making reactive and usable UIs.

The next task now is going to be adding support for multiple game URLs per account and automatically switching the world based on the URL being accessed. That’s the Story Teller features. I may or may not decrease the scope again and leave the “auto sign in” features until later, depending on how urgent it becomes that I upgrade the site’s infrastructure as demand is growing and it slowly becomes both difficult and costly to maintaining it manually. I’m really excited about these, since that’s the original feature I wanted to do when I started this over a year ago now (we just celebrated the one year anniversary of the first commit! And launched a Contest to celebrate it too), so it basically took a year to get to a point where I could implement this feature. Can’t wait!

And for archival purposes, as always, here’s the original roadmap feature text which I’ve now removed from the first post :

Assets Management

One of the most requested feature is the ability to rename assets, as well select multiple files to delete, or drag & drop an asset in a different directory to make it easier to organize files after upload.

This is unfortunately not just a change in the UI, but it will require a revamp of the Assets Library system to even allow it because of how the S3 storage that backs the Assets Library does not allow for renames, only copies, and it’s rate limited to 2 copies per 5 minutes (absolutely ridiculous), so I want to create a new abstraction layer to allow for instant renames and moves and deletes, and it will allow me to bring back one of my original optimizations from before I moved to this S3 storage, which allowed me to save user’s bandwidth and time by doing a local copy if the same file had already been uploaded by another user, so you wouldn’t need to upload all your assets, only the new unique assets. I’ll also use this opportunity to improve the upload process to allow batch uploads in parallel to speed up big imports for example.

This feature will also allow me to do smart in-world renames, which is something I feel is needed before renames are even made possible. What this means is that if you rename an asset and that asset is in use within one of your worlds, I need to update that world to use the new asset URL automatically so it doesn’t break it.