January update: Storage for everyone!
Easel is a beginner-friendly programming language for multiplayer games. Intrigued? Visit our home page to learn more.
Storage has been increased for the Easel free tier! Keep reading to learn about this and other new features in Easel.
Free storage for everyone!
Free users will now be granted 3 MB free asset storage automatically.
Remember, Easel is about making webgames, and every additional megabyte of assets
means your game will take longer to load for your players,
so 3 MB should be plenty for most games!
Now it is even easier to get started building games with Easel!
See Pricing to learn more about Easel's storage plans.
Keeping names appropriate
Our primary audience is teenagers, so we want to make sure Easel is a safe and welcoming place for them. That is why now players who have inappropriate names will no longer be matched with others in multiplayer games. The name filtering system is automated and so not 100% perfect, so please report any issues you find and we will improve it.
See Moderation to learn more.
One TOML to rule them all
Easel uses TOML files to store game configuration data.
Previously you needed multiple, like graphics.toml or players.toml,
but now you can consolidate them all into a single easel.toml file.
One feature we did to make this work smoothly is, now when you remix someone else's project,
all their comments in their easel.toml file will be preserved in your remix.
Much better for learning from other people's code!
See Configuration to learn more.
Infinite loops more infinite!
Easel has a system for detecting infinite loops and stopping them without needing the player has to terminate their browser tab. This is particularly useful when you're making your game because it means you won't lose any work if you accidentally create an infinite loop in your code.
The infinite loop detection now has a higher limit for how many loop iterations are allowed per tick. Previously it was 1 million iterations, but now it is 16 million. But what if you are making a game like chess that requires a lot of computation? You can now increase this limit even further, or disable it altogether!
See Infinite loop detection to learn how to increase this limit.
Singleplayer games will go on and on
Previously, Easel would suspend any game that receive no inputs for 1 minute. It is quite common for players to switch tabs while waiting for players, sometimes for 10+ minutes at a time, and this conserves resources for both the server and other clients.
Now, this suspension behavior only applies to multiplayer games. Singleplayer games will continue simulating even if the player is not interacting with it. This could be useful if you are making a simulation game, like a city builder for example. The player can just watch their city grow even while they are not actively interacting with it.
See Suspension to learn more.
Dropdowns
The Dropdown UI element now has a key parameter,
which lets you distinguish between multiple dropdowns in your code.
Also, the value for DropdownOption parameter has also been upgraded to accept any Sendable value,
whereas previously it could only be a Keyable value.
In particular, it can now contain any floating-point Number, or even an Array or Map,
allowing you to represent even more complex data for each option!
See User Interface to learn more about UI elements in Easel.
Multiplayer bug fixes
Anything you code in the Easel programming language is automatically multiplayer, and that is because we have taken great care to make sure Easel is deterministic. We have recently found and fixed some edge cases that could cause non-deterministic behavior in the physics engine, and added some additional safeguards to prevent this from happening in the future.
Don't understand what any of this means? You never need to! That's the beauty of Easel. Just make your game and the multiplayer is taken care of for you.
See Multiplayer to learn more about multiplayer games in Easel.
What's next?
We are always working hard to make Easel even better! Sign up to our newsletter at the bottom of this page to stay up to date with the latest news!
