blade-ink-template
blade-ink-template copied to clipboard
A template to create multi platform IF games written with the Ink language.
Blade Ink Template
This is a template to create interactive fiction games using the Ink language.
Features:
- Publish your games on Android, iOS and Desktop (Windows, Mac and Linux) with no effort.
- No coding is necessary.
- Fully customizable fonts, colors and images.
How to generate your own interactive fiction game with the Blade Ink Template
1. Write your story
- Download Inky and write your story.
- If you don't know Ink, you can read the tutorial Writing with Ink.
2. Export your story to Blade Ink Template
- Make sure you have installed the JDK 17
- Download the Blade Ink Template.
- Export your story to JSON from Inky as
story.ink.jsonand copy it to theassetsfolder in the Blade Ink Template. - You can now test your story with
./gradlew desktop:runin Mac and Linux, orgradlew.bat desktop:runin Windows.
3. Customize your fonts, colors, images and titles.
- Edit the
ui/ui.jsonwith your text editor and customize the skin of your game. - Overwrite the images in
ui/1with yours. - Change the
titleproperty in theinkplayer.propertieswith your app title.
4. Prepare for Android
- Overwrite all icons in
android/res/drawable-*with your app icons. - Put your app. name in the
android/res/values/strings.xmlfile. - Change the
applicationIdproperty in theandroid/build.gradlefile with yours.
3. Prepare for Desktop
- Overwrite all icons in
desktop/src/main/resources/iconswith your app icons.
4. Prepare for iOS
- Overwrite all icons in
ios/data/Media.xcassets/AppIcon.appiconsetwith your app icons. - Overwrite all launch images in
ios/datawith your app launch images. - Change
app.nameandapp.idproperties in theios/robovm.propertiesfile with yours.
5. Releasing your game
Releasing your game is very easy with the release.sh script.
Unfortunately this is an Unix script and only works on Macos and Linux. Windows users can install a bash shell to execute the script or use the gradlew.bat directly to generate the packages. More info about using gradlew here.
The first step is to edit the release.sh script and set the next parameters:
# The destination folder for the packaged application
DIST_DIR=$HOME"/PACKAGES"
# IOS signing
IOS_SIGN_IDENTITY="iPhone Distribution"
IOS_PROVISIONING_PROFILE="your app provisioning profile"
# Android signing
ANDROID_KEYSTORE=$HOME/folder/to/the/android.keystore
ANDROID_KEY_ALIAS=androidkeyalias
And now you can:
Generate a .ipa for iPhone and iPad:
./release.sh ios
Generate a .apk for Android:
./release.sh android
Generate a runnable .jar for desktop:
./release.sh desktop
Create native executables for desktop platforms
The normal way to distribute desktop applications is to embed the Java VM inside the package to not force the user to install Java.
There are several tools to create native executables for Windows, Macos and Linux with your runnable .jar. Some examples: