Make games with EaselEasel
Code multiplayer games without coding the multiplayer
Play together: Make games that are even more fun and meaningful by letting other people play with you!
Effortless multiplayer: Code as if all your players are inside one shared game world, like a singleplayer game, and Easel will make your game multiplayer. Automatically.
How does it work? Multiplayer is baked into the fabric of the Easel programming language itself. That is why anything you code in Easel is multiplayer without any special effort on your part. It's like magic!
Skip to the fun part: No need to even learn a thing about networking or synchronization. Don't know what a "remote procedure call" is? You never need to! Easel does all the multiplayer for you so you can focus on actually making your game.
Beginner-friendly: No pitfalls or traps to avoid. No worrying about doing everything in a multiplayer-safe way. With Easel, it impossible to make mistakes when it comes to multiplayer, even if you're a complete beginner. It just works.
Smooth and responsive: Easel's state-of-the-art incremental rollback netcode implementation will give your players a smooth and responsive multiplayer experience, even with players spread across the globe.
Perfect for beginner coders
Interesting yet accessible: Easel is powerful enough to be interesting, yet simple enough to be accessible. Easel is designed to be a great choice for your first programming language.
Show others: No need for years of coding experience. With Easel, you can make a multiplayer game on your first day of coding! You'll be amazed how much fun it is to show your friends the game you created. They'll make you want to make your game even better and you'll be motivated to keep coding.
No download required: Code games in your web browser using our online editor, no download required. Even works on a Chromebook!
Learn by example: A great way to learn is by looking at the code for games you already know and love. That is why the source code to every Easel game is available to view and remix.
Avoid the tyranny of the blank page: Making an entire game from scratch is a big ask. Remix an existing Easel game to skip past the difficult or boring parts and focus on what interests you.
Like Scratch, but text-based: Looking for the next step after Scratch? Easel is a concurrent and event-driven programming language like Scratch, but is text-based and more powerful, so you can learn even more advanced programming concepts.
A safe, ad-free zone: Worried what your teenagers are being shown online? There are no ads on the Easel platform, so that is one less thing for you to worry about. Subscribe to Easel+ and support our safe ad-free zone where teenagers can make and play games.
Introducing the Easel programming language
pub game fn World.Main(maxHumanPlayers=5) {
SpawnEachPlayer owner {
Spawn ship {
use body=this, radius=1, shape=Equilateral(numPoints=3)
Body(pos=20*RandomVector)
PolygonSprite(color=#00ffbb, layer=1)
on Pointer {
Heading = Angle(Pointer - Pos)
}
on ButtonDown(Click) {
behavior<thrust> on BeforePhysics {
Velocity += Heading.Direction * 0.5
Spark(
color=#ff8800, bloom=5, shine=1, splatter=1,
velocity=-25*Heading.Direction,
)
}
}
on ButtonUp(Click) {
delete behavior<thrust>
}
}
}
}
From start to finish
Built-in editor: Code games in your web browser using our online editor. If you are an experienced programmer, you can use your favorite editor (like Visual Studio Code) and tools with Easel, while still enjoying the benefits of deploying to Easel's hosted multiplayer platform.
Batteries included: Easel has everything you need to make a 2D game, including graphics, physics, audio, user interfaces, persistence and more.
Instant publishing: With only a few clicks, Easel's servers will host your game, and make it available to anyone with a web browser. No need to set up your own servers or hosting.
Generous free tier: We want Easel to be used by anyone and everyone, and so Easel's generous free tier lets you make and host some quite sophisticated games without paying a cent. Need more storage or bandwidth? Subscribe to Easel+.
Keeping multiplayer games sustainable
Collective funding: Too many beloved multiplayer games have shut down because they were not able to cover their ongoing hosting costs. Easel+ lets us solve this problem collectively.
One unified subscription: Easel+ gives you perks in every participating Easel game. Even if a player's favorite game changes from month-to-month, they will always have a reason to stay subscribed. This unified funding model keeps all Easel games alive.
Collective bandwidth: Easel+ funds a collective pool of bandwidth that all Easel games can draw from. Encourage your players to subscribe to Easel+ and help keep all Easel games alive, forever!
What people are saying about Easel
can i just say that i absolutely ******* love easel, the programming language. i don't know how you did it ray, but you did it. you created the ultimate language. things that take days of effort and dozens of files in Java/Python/JS/whatever, here it's just, well i need to do a thing. how do i do a thing. oh okay so i do this this this. a component here. delete it here. indirect this via a generic signal, listen to it here. does it work? holy **** it works.
i think the unsung hero of this whole thing is <Id=auto> which makes all the automatic replacement possible. it's wonderful. it's the ultimate programming language
bruh how the hell does a game engine make me think "oh **** i can't fix this, imma ask for help" then doodle around with the logic then you fix the problem that was thought to be impossible 3 minutes ago
i love easel
it's the second time TODAY
Made with love
Made with love by one person: Every part of Easel was made by me, @raysplaceinspace, with the utmost intention and care.
The dream: When I made my last game, I was surprised to find more people were interested in modding the game than playing it. The declarative style of the modding language turned out to be surprisingly accessible to new coders. Unfortunately, the modding language was limited as it was never intended to be general-purpose. This limited not just what could be made, but what could be learned. For years I wondered what would happen if someone took that declarative style, and married it with the full power of imperative programming to make it unlimited? Would it lay down a path for someone to go from complete beginner to seasoned coder? That is what Easel is.
Getting it just right: It took 3 years of hard work to fuse together all of the seemingly opposed ideas of Easel. The Easel programming language not only merges declarative and imperative programming styles, but also bakes multiplayer into the fabric of the language itself. They say if you do everything right, it will look like you did nothing at all. So much of Easel looks simple, effortless and obvious but don't be fooled. It required a lot of thought and experimentation to get just right.
Democratizing multiplayer game development: Imagine if every time someone wanted to write a book, they had to code a word processor from scratch. Only the select few who are willing to spend years on both writing and coding would ever write a novel, and the world would miss out on so many great stories. I believe there are many creative, talented people who would make the great multiplayer games, but who lack the time or interest to learn about networking or synchronization. Easel is for them. Because of Easel, now everyone can make multiplayer games.