Discord
Login
Community
DARK THEME

microStudio in 2023! My plans and directions

I like to use early January to plan things for the year and decide what I should focus on. It took me some more time this year, but here I am!

My program in summary:

  • many core microStudio improvements
  • create better learning resources
  • extend microStudio in several ways: music, 3D, templates, micro-engines
  • Community: more social features, collections and micro Box, monthly themes
  • Actually release a game with microStudio

Core microStudio improvements

There are always many improvements I want to make, in addition to the Github issues which I need to work on. Here is a list:

  • microScript: there is just a bit of work remaining to consider microScript 2.0 complete (it is about core type prototypes and operator overloading) ; then I should activate the turbo mode (transpilation by chunks)
  • stabilize networking: the new networking API has a few shortcomings and issues, so I will fix that
  • better map editor: we have discussed this before, the map editor needs more features: zoom, layers, custom cell properties...
  • more social features: not a plan to make microStudio the next social network, but just a few more features could be nice to have, like following people
  • file selector for plugins: I realized a whole range of plugins would be much easier to create if the plugin API had a file selector, letting the user pick a file to load or save to.
  • possible code editor improvements: autocomplete, search across multiple files...
  • versioning: don't expect a full versioning system but maybe some solutions could be found to create snapshots / backups of projects automatically
  • project sync: see diffs and select which changes to do, which ones to ignore

Better learning resources

I haven't updated the documentation and tutorials for a long time. They need to be refreshed. Especially, the part about the API reference is outdated. The cheatsheets (microScript & API) are supposed to be up-to-date.

I am considering creating a new project type, "Example" (in addition to App, Library, Plugin, Tutorial). An example would have a very short code, focusing on one aspect of game programming. You would be able to search examples, run them and maybe modify them locally while they are running (without the need to clone the project first)

I am also thinking of creating a REPL for microScript ; but maybe it can be combined with the former idea.

I am planning to create many more Youtube videos this year, illustrating microStudio features and teaching how to make different kinds of projects or game features. To keep things simple for me, they will be only in French (but anyone will be free to make the English version and publish on their own channel!).

Community, Collections, micro Box, monthly themes

I want to make a few additions to the current community features, like following users, having notifications (e.g. new comment posted on your project) and maybe an optional e-mail digest.

Collections

The Collection feature will be very similar to itch.io: you can create collections and add projects to it. You can create private collections, which will then work a bit like folders, allowing you to better organize your projects. You can also create public collections, of only public projects. A collection can be used as a list of favorites, a list of projects in a particular theme, a list of games made for a jam...

micro Box

Then there is the micro Box, which you have discovered already (if not, try it on https://microstudio.io/gilles/microbox/). Currently it is just a single box with a fixed list of games, but when Collections will be available, you will have the possibility to automatically turn your collection into your own micro Box, with a few customization settings!

Monthly themes

Starting February, I am introducing monthly themes: we will decide on themes and announce them on the first day of the month. There is a dedicated channel on the Discord server. You can choose to participate by working on projects around these themes. Of course nothing mandatory, also it is not a jam, there will be no ranking, no submission date, no nothing. It is just to have fun together using our creativity on shared topics!

Extending microStudio

microStudio can be extended through Plugins and Libraries. The core functionality will probably be improved a bit this year, and also I am planning to work myself on (at least) 2 new Plugins:

Music app

This is a big chunk ; I have finally found the correct formula for a microStudio music app last year and have done a lot of work already. The project started small, which is good, but as always it is growing a bit more than anticipated. However, it is doing great and I really want to release it this year. It is made in microStudio and will work in microStudio, as a music tab. But I also plan to release it as a standalone app and game, probably on Steam, itch.io, Play Store and App Store. Wait, why did I say "game"? The app will have a "story mode" where you will live a quite special adventure... more on this in a few months :-)

3D Editor

This is a big chunk too! I would like to create a 3D model editor, based on voxels and customizable smoothed materials, heavily inspired by this: https://svox.glitch.me/ I want to create this editor in microStudio, as a plugin. I have only a few mockups so far, but I think I have a clear vision of how it should work. I just need to spend time on it now. I am not sure if I can actually release something this year, but hopefully I will be able to produce previews at least.

Game Templates

I would like to introduce game templates ; in my mind, they are fully working games, with minimal features though, no assets (just placeholders). The code should be well-structured, ideally in layers, allowing to easily do surface modifications or dive deeper into the internals to make more significant customizations. Once we have enough of them, we could offer to create a project "from a template", like some other engines do.

Dedicated micro-engines

This feature may be a bit redundant with Game Templates, we will see then, however, here is the idea: create dedicated micro-engines for certain kinds of games. Like for example:

  • An engine for creating isometric pixel-art games ; maybe this one would be combined with a plugin for editing isometric scenes.
  • A platformer engine that would be much better and extensible than the current QuickEngine
  • A micro-engine for creating point-and-click games
  • I actually have a micro-engine almost ready for another very specific type of game, which I am planning to release soon, stay tuned :-)

What about education?

I am still very interested in seeing microStudio used more in schools. In 2022 I have been thinking a lot about developing dedicated features for teachers, which I thought was also a good way to create a business around microStudio. However the picture is still very unclear to me, what features are actually needed and how easy or hard would it be to have schools actually use it and pay for such features. I don't want to spend too much time on it this year. There are a few teachers using microStudio around the world already and they have my full support, I will still be there for them if they need anything. Other than that, I am putting the microStudio-for-education topic on hold for now.

"Game Templates" - Is this a conceivable facilitation for BOARD GAMES?

possible code editor improvements: autocomplete, search across multiple files

That would be great. At least code completion for the core commands. Typing screen. would offer all of the related functions in a dropdown.

better map editor: we have discussed this before, the map editor needs more features: zoom, layers, custom cell properties

Absolutely. Tiles do need basic properties to easily set their state. Things like, INVISIBLE, IGNORE (for collision checks). SOLID, PASSTHROUGH.

Regarding the music aspect, this will indeed be a big improvement and help us to keep file size down.

Nice! JimB007 highlights exactly my preferences from an impressive ToDo list.

I'm very happy with the continuous improvement of microStudio and Gilles is doing great. I wish I could help more than spamming my friends about awesome mS.

Synchronization of libraries in a project should be separate.

When the author releases a new version of the library, the projects that use it will be notified of the new version. You want a new version, you will update it by clicking the consent button. You don't want to stay with what you have.

Now that I have split the project into several libraries (MicroStudio offline version), when I change or add something to the library, I have no way to transfer it to the projects that use that library.

I need to remove the library and add it again.

I resigned after a few days from creating libraries because I had to keep repeating this activity of removing and adding.

MicroStudio sounds excellent for (video game) schools, it has a very topdown approach to product design too and in my mind is the successor of QBASIC :)

Post a reply

Progress

Status

Preview
Cancel
Post
Validate your e-mail address to participate in the community