Ink For Gdevelop Template (Ink Language / Inkle)
Use FULLSCREEN |Download Ink file + Gdevelop Project
Infokub Arcade made the Ink extension for Gdevelop
https://infokubarcade.itch.io/
On the rare-chance someone would donate, I would prefer if you would go thank Infokub instead for creating this extension.
Gdevelop is a "code free" and open source engine with an event sheet that is easy to understand. It may be the easiest way to give your Ink code a GUI while also having the ability to easily edit and expand it with advanced features. If you want to add a button, image, another text object, just drag and drop it like Photoshop. The live preview is almost instant and I never ran into surprises while debugging or making builds. It just worked.
Ink by Inkle Studios is a narrative programming language for those that like to edit markdown or text files rather than the node based approach of others. Inkle, the Ink editor, shows a list of all your knots (chapters, or paragraphs if you prefer) on the left side to navigate through your text file easily. And it has live preview so you can play while you edit. If your file gets too long for your taste, you can use an "INCLUDE" statement and just have a folder of multiple Ink files, categorized and sorted however you want.
Both Gdevelop and Ink can be used online, you can edit the code online. Gdevelop also has a mobile app.
To learn more and see if this is right for you, I expand on this in my Twitter thread:
https://twitter.com/EchoDiff/status/1757447630810923518
Check out Ink and Gdevelop:
https://gdevelop.io/
https://www.inklestudios.com/ink/
=======================================
I understand my code is definitely more simple than most Gdevelop and Ink users, who probably organize and code in a different more efficient way. But mine is easily readable and accessible for me. So feel free to change it or use the included Infokub template instead.
=======================================
INKLE + GDEVELOP WORKFLOW:
1) Open your .Ink file in Inky or web program of choice.
2) File -> Export to JSON (Or CTL+SHIFT+S)
3) Save JSON in the same folder as your Gdevelop project file or assets folder
4) Make an event in Gdevelop: At the beginning of scene -> Load Story "anything here" in file yourinkproject.ink (You may navigate to the file in the action)
5) To quickly update Gdevelop with your Ink updates, keep your Ink project open and CTRL+SHIFT+S to save JSON again. In windows, once you save it once it should alway save to that folder and be quick to update. You do not need to close Gdevelop, but start another preview to view your updated story.
Comments
Log in with itch.io to leave a comment.
Hi I'm really having a great time with this template. I've had a look through and I've gotten stuck. Is there support for save games within this framework? I see a bunch of stuff like snapshots and Gdevelop's own save functionality but I wasn't sure if those were integrated.
Thanks again for this template. It's solved a great many issues that I was having.
Hello Rebecca, I was working on a saveslots template and it proved a bit tricky so I took a break. There is an updated v1.10 Ink Extension built into Gdevelop but it was missing some options I was using to save!! It has new ones, don’t know how they work. If you are desperate contact the creator Infokub. If you find any info, do share I will gladly make into a template for others.
Quick outline of saving and loading: On beginning, you pick “observe variable” to pair an ink variable to a Gdevelop variable and that sets everything up. Everything uses scene variables not Global.
For loading, I use the typical Gdevelop way to load using storage, then update the ink variables after loading. To update the ink variables there is an action called “Story variable text” with description “Change the story variable text”
For saving, I just pick storage save to storage. And save it “ToJSON(yourvariablesname)”
It is more complex than that since I was using saveslots it required a structure and store all variables as children, and store as JSON. But Gdevelop has since had some big updates to make it far easier so maybe JSON converting isn’t needed. I don’t know if this makes any sense to you but I figured I’d point in the right direction.
Thanks that's a big help. I appreciate you getting back to me. Sounds like it's probably a bit beyond me at this point, but it's good for me to be able to clarify that and stop poking about.
Very much appreciate all the work you've put into this.
There is a save template in-progress where I got stuck and I’m still planning on completing it. It benefits me greatly to figure it out, so I’m still motivated to do it and of course would post the template like this one. Will likely need help from the creator of the plugin though.