For more complex games that want to have 2D gameplay, an integration with a more typical 2d realtime game engine can be useful.
For example, the narrat-2d plugin adds a basic 2D game engine which allows a character to move on a map and interact with characters to trigger dialogue:
This narrat 2d plugin is a custom made game engine though and will require knowledge of typescript / have less features than more popular established engines
So, to the actual question:
Which 2D game engines do you want Narrat to have an integration for?
Requirements would be:
Can export to HTML5
Can interact with JavaScript on the page in some way, so that we can make it and Narrat talk
Free licensing that won’t require people using it to pay, or won’t make it illegal to publish the ingration
My guess is that engines that require no or low code are good candidates, since narrat is meant to be beginner accessible. But we can also integrate with more complex ones!
Once I have enough suggestions collected I might also run a poll to see what’s popular, but for now I’m looking for general ideas.
I’d personally be interested in a Godot integration! I think it’s the most popular open-source engine for 2D game development, and learning enough scripting for things like basic top-down movement isn’t incredibly challenging IMO (lots of clear and easy documentation and tutorials for beginners!).
I agree Godot integration would be a great choice, but I propose Defold as an alternative. It is open-source as well and uses Lua as its scripting language, so it might be a little easier than Godot for beginners.
Hey there! A big fan of Narrat and have started a project on it, hope it all in all would be quite serious. I am very intrigued by the 2D plugin since i have always wanted my project to be nore interactive. As a person with limited skills in coding (i do marketing for a living and scripts are my max by now) i would appreciate documentation on that part of the engine and how to work with that.
I haven’t looked into the 2D plugin thing lately and I’m not sure about it, because generally when you get into actual realtime 2D gameplay there’s an infinite amount of ways to do it, things people might want and features, so it starts to get a bit out of scope.
It’s probably easier to make the gameplay part in another engine and figure out how to make it play with narrat (if it has a web export or whatever, like with the narrat godot demo Narrat x Godot integration demo by Liana).
I think at this point, trying to have an “official” way of doing 2D gameplay in narrat would just basically involve supporting and maintaining a whole other generic game engine.
When it comes to integrating with engines though, a lot of things are possible by just putting both things on a page and getting them to talk to each other via a plugin, like I did for godot