Updates on our development of Spirito.
Summer 2022 Devblog
Written on September 15, 2022
Summer is over and while we have been busy with our lives these past months we have also been working on Spirito whenever possible.
The rendering of tile maps have been optimised using geometry shaders and chunking.
We are experimenting with custom shaders to use with water and realm views to try and achieve different effects in game.
An audio system for background music and sound effects are being implemented.
We have added a “Print” option in the editor to save the entire scene (both realms) as a .png image at 1X scale. This allows us to open the map screenshot in Photoshop and draw directly onto it, creating new sprites for the area or quickly moving things around or measuring distance between tiles and entities.
Entities now have a “Patrol” tab where we can add randomised movement, randomised jumping and chance to turn direction, chance to jump and optional edge detection. This is useful for ambient npc movement and several enemies.
May 2022 Devblog
Written on May 16, 2022
The engine and editor is being worked on and improved all the time, while there isn’t much to show with pictures there is a lot happening behind the scenes to improve our workflow and to improve your gameplay!
Multiple Scenes / Tabs
The editor was originally written to handle a single scene. Whenever you wanted to edit another scene the current one had to be closed. We wanted to make it possible to work on multiple scenes at the same time, with tabs to change between scenes instantly.
So we had to restructure a lot of things...
Every scene needed its own editor state for things like "what tool is selected?" or "what actions can be un/re-done?".
We also had to rework the way resources are handled to allow different scenes to have different assets loaded.
We are now able to 'copy' scenes! Why is this important?
One of the reasons we are making our own editor is to improve the cycle of building and testing.
You should be able to instantly switch between playtesting and editing with the press of a button.
Up until now, whenever you pressed "play" the state of the scene would be saved before entering gameplay-mode and when you later hit “stop" we would try to recreate the original state of the scene.
This was slow and unreliable. Instead, we can now simply create a copy of the scene for you to play around in.
When you hit stop, the copy is destroyed and the scene is back, exactly like it was before you hit play.
We have implemented transitions between scenes, similar to colliders but holds additional data. Each transition has its own identifier, it can act as a “landing spot” from other transitions, or it can be a transition itself, with a target scene and target identifier. It can provide different player animations such as a transition while climbing a ladder.
Using transition colliders as “landing spots” lets us not worry about position numbers which can change when things are moved or resized, instead the specific location is always up to date and easy to modify.
As you may (or may not!) see, the website has been remodelled from the ground up, again! Utilizing the latest version of Blocs app and Bootstrap 5, I’ve made a new clean project file to stay organized and remove clutter.
The front page features a first impression video in the background, containing clips from the game. This video may change in the future when more things are added and recorded! As well as every other page being updated to look better and easier to understand. The website also supports your devices dark mode as usual. :)
The video should be a good balance between size (mb) and duration to provide decent quality while not taking too long to load. Certain devices may disable the video from playing automatically while running on low battery.
You can view the video externally here: video_banner_1440.mp4
If there’s something specific you would like us to include in these blog posts, or if you have any feedback about our website, let us know! You can message us directly on Twitter, Discord, Email or any other social site!
April 2022 Devblog
Written on April 13, 2022
Takto Mines / Gameplay
Gameplay has been a big focus for us, we have been trying out some new features and implemented some enemies into the game, take a look:
They constantly rotate and move entities in a direction.
Quickly travel between two spots by walking through the portal in its body.
Hides beneath the ground in the Moon realm, don’t get grabbed!
We have been working hard on our engine and its editor, squishing bugs and adding new features. Here’s what it looks like:
We have created a new tool to improve our workflow, the move tool. It allows us to select any amount of tiles from one or more layers and move them somewhere else in the scene. This will help us create various puzzles and piece them together.
We created a Focus Mode that quickly hides all background layers, including parallax and particles. This allows us to clearly see all the tiles without distractions.
February 2022 Devblog
Written on February 28, 2022
Takto Mines / Gameplay
We have focused a lot on gameplay, especially in Takto Mines. We have implemented several interactive features and objects such as magnets, rotating platforms and conveyor belts as seen below:
Making scenes should be fun and easy. Since this is a custom game engine we have to develop the tools to do so ourselves, but this also gives us the chance to add features tailored to our needs.
We already added tools for tiles and tile maps, meaning we no longer have to deal with programs like Tiled. Even if developing this took a lot of time, we quickly make up that time by no longer having to switch to another program and reload a scene every time we make changes.
There is however more to a scene than layers of tiles. Everything inside a scene is called an “Entity”. Under the hood, these entities are nothing but an identifier (number) to which components can be attached. This is structure is commonly known as ECS (Entity Component System).
We started out with a button that simply created a new base entity - with just a name and a position in the scene. You could then attach other components to it such as colliders, point light, particle emitter, etc. But making these by hand is tedious and there are often times some types of entities that are so common that you just want a quicker way to add them.
Every scene needs collision and we made a tool to quickly draw shapes for collision or particle emission areas.
Purely visual entities are so common, so we made it possible to load a texture atlas with predefined frames that can then be quickly stamped onto the scene.
Entities can now be saved as standalone files. This gives us an easy way to reuse entities across scenes or create templates for common things like NPC’s.
Since everything in the game is an entity (including the background, parallax sprites and UI elements) we needed a good way to control how these entities appear in game. A canvas is a layer with its own coordinate system, camera and rendering settings. This means we can have an interface canvas in screen coordinates along with a scene canvas using scene coordinates.
We have set up several testing scenes to try out all our different tile sets, backgrounds, parallax and make sure it all looks good in both the sun and moon realm. We will use these scenes to record our upcoming trailer.
We are doing a collaboration with Absent Draws, who will be producing art for our game based on characters, environments and more. This art will be displayed on our social media accounts and our website when they’re ready.
We have also created a TikTok account for our game Spirito to reach a greater audience.
January 2022 Devblog
Written on January 31, 2022
We have added support for Windows versions up to Windows 11, running the same project file inside Visual Studio instead of Xcode (Mac) the game runs smoothly on either operating system.
A lot of work has been spent on the editor. Cleaning up the interface, fixing bugs and improving existing tools. We also added new features such as editor history (undo/redo), parallax layers and entity blueprints.
We have decided to work on Takto Mines for our first area, we feel it’s an interesting puzzle area that lets us try out interesting mechanics and implement a variety of gameplay elements.
We will also begin working in small scale on multiple areas to provide mixed content for an upcoming trailer we hope to finish this year.