-
Notifications
You must be signed in to change notification settings - Fork 156
INKB project
nikitalita edited this page Nov 26, 2024
·
7 revisions
We need to figure out the answers to these questions before any attempt to implement conversion of the resource:
- What is the format of the imported resources in the game .PCK? (This would be the destination format)
- In this case, InkB
- Is there any description of that file format available online?
- If no, is there source code available that would provide a clue into how it is structured?
- Is there a custom editor for these sorts of files?
- Yes, see https://www.inklestudios.com/ink/
- What format does that original editor save the files in? (This would be the source format)
- .ink
- Is there any documentation on how the source format is structured?
- What is the workflow for converting those files to the game's format?
- Export the .ink file to InkJSON using the inky editor, then convert the InkJSON to .inkb using the ink compiler, located at https://github.com/inkle/ink/releases/tag/v.1.2.0
- Are there any intermediary resource formats involved in the above process?
- Yes, .json
- If so, is there any documentation on how the intermediary resource formats are structured?
- How do the imported resources make it into a game?
- In the case of Until Then, it appears that the .inkb files are placed in directly into the game's source tree, and the game is built with the resources included.
To figure out the above questions, it's best to poke around at various places
- The resource's discord or other chat channel, if available:
- Inkle has a discord here: https://discord.gg/Wq4cUY44
- The source code repository for the plugin/editor for the resource:
- Inkle has repositories here:
- inkcpp, the plugin/compiler: https://github.com/JBenda/inkcpp
- inky, the electron editor: https://github.com/inkle/inky
- ink, the original C# plugin: https://github.com/inkle/ink
- Create a Godot project to test the process of creating a game using this custom resource
- In our case, we don't need to do this, because the destination format is copied directly to the source tree of the game and there are no intermediate steps like importing the resource into the game engine.
- Figure out how to convert the destination format to the intermediary formats, if any:
- In this case, we need to figure out how to convert .ink files to INKJSON
- Figure out how to convert the destination formats to the source format:
- In this case, we need to figure out how to convert INKJSON to .inkb
- Write a brief proof of concept script to convert the destination format to the intermediary format/source format