All Mods Resource Packs Data Packs Shaders Modpacks Plugins
Krysztal's Language Scala

Krysztal's Language Scala

by Krysztal112233 • Downloads: 0 • Followers: 0
Description
Gallery
Changelog
Versions

Krysztal's fork of fabric-language-scala

Modrinth Version

中文简体

This is a fork of fabric-language-scala, support the newest Scala3 version.

Why fork?

The number of people who use Scala is very small, but the power of Scala's expressiveness makes the language practically perfect for developing mods.

The original fabric-language-scala was unmaintained and the maintainers couldn't spare any more effort to maintain it, so it slowly became unmaintained and non-functional.

Support for Scala3 is, if anything, almost non-existent.

So I decided to fork it and maintain it myself and implement it to be compatible with the original fabric-language-scala,named krysztal-language-scala.

NOTE

  • This language adapter will synchronize content upstream as much as possible and will ensure availability as much as possible.
  • If you are DEVELOPER, please reading FOR_DEVELOPER, and remind your user which Scala3 version you used
    • I suggested you should using the newest version as possible
  • If you are USER, please reading FOR_USER

From KLS 3.3.2, the compile target is Java 25. Older Java runtimes are not supported.

How to use?

Add dependence

Add those lines to your project's build.gradle

plugins {
  ...
    id 'scala' // Add `scala` plugin for gradle
  ...
}

repositories {
  ...
    maven { url "https://api.modrinth.com/maven" }
  ...
}

dependencies {
  ...
    // Scala 3 language support (Fabric language adapter + Scala runtime, bundled at runtime by this mod).
    implementation("maven.modrinth:krysztal-language-scala:${property("krysztal_scala_version")}")
  ...
}

Usage: class

Suppose your entry name is ExampleEntry.scala

import net.fabricmc.api.ModInitializer;

class ExampleEntry extends ModInitializer {
   lazy val logger = LoggerFactory.getLogger("KMMO")
   override def onInitialize(): Unit = {
       logger.info("Hi")
   }
}

And in fabric.mod.json

   ...
"entrypoints": {
   "main": [
     "dev.example.ExampleEntry"
   ],
 },
   ...

But thanks to Scala's excellent interoperability with Java, we can use this library simply as a Java entry point :)

Usage: object

Suppose your entry name is ExampleEntry.scala

import net.fabricmc.api.ModInitializer;

object ExampleEntry extends ModInitializer {
    lazy val logger = LoggerFactory.getLogger("KMMO")
    override def onInitialize(): Unit = {
        logger.info("Hi")
    }
}

And in fabric.mod.json

   ...
"entrypoints": {
   "main": [
     {
       "adapter": "scala",
       "value": "dev.example.ExampleEntry"
     }
   ],
 },
   ...

Known issues

unknown invokedynamic bsm: scala/runtime*

This issues caused by scala's class loading mechanism.

It won't affect almost anything. Ignore it.

How to Install Krysztal's Language Scala (Mod)

Krysztal's Language Scala by Krysztal112233 is verified for Fabric across Minecraft versions 1.17, 1.17.1, 1.17.1-pre1, 1.17.1-pre2, 1.17.1-pre3, 1.17.1-rc1, 1.17.1-rc2, 1.18 (latest release: 3.7.0, file size: 8.7 MB). Follow the steps below to install it safely from ModCraft.tv:

  1. Click the Download button above and select your Minecraft version (1.17, 1.17.1, 1.17.1-pre1, 1.17.1-pre2, 1.17.1-pre3, 1.17.1-rc1, 1.17.1-rc2, 1.18) and platform (Fabric).
  2. Make sure you have the compatible loader or environment installed for Fabric.
  3. Move the downloaded Krysztal's Language Scala file into your Minecraft .minecraft/mods folder and launch the game.

All Versions

+ Add Version
Name Game version Platforms Published Downloads Actions
26.3.x 26.2.x 26.1.x +116
Fabric
2mo ago 1
26.3.x 26.2.x 26.1.x +1
Fabric
2mo ago 1
26.3.x 26.2.x 26.1.x +1
Fabric
2mo ago 1
26.3.x 26.2.x 26.1.x +1
Fabric
2mo ago 1
26.3.x 26.2.x 26.1.x +1
Fabric
2mo ago 1
26.3.x 26.2.x 26.1.x +1
Fabric
2mo ago 1
26.3.x 26.2.x 26.1.x +1
Fabric
2mo ago 1
26.3.x 26.2.x 26.1.x +1
Fabric
2mo ago 1
26.3.x 26.2.x 26.1.x +1
Fabric
2mo ago 1
26.3.x 26.2.x 26.1.x +1
Fabric
2mo ago 1
26.3.x 26.2.x 26.1.x +1
Fabric
2mo ago 1
26.3.x 26.2.x 26.1.x +1
Fabric
2mo ago 1
26.3.x 26.2.x 26.1.x +1
Fabric
2mo ago 1
26.3.x 26.2.x 26.1.x +1
Fabric
2mo ago 1
26.3.x 26.2.x 26.1.x +1
Fabric
2mo ago 1
26.3.x 26.2.x 26.1.x +1
Fabric
2mo ago 1
26.3.x 26.2.x 26.1.x +1
Fabric
2mo ago 1
26.3.x 26.2.x 26.1.x +1
Fabric
2mo ago 1
26.3.x 26.2.x 26.1.x +1
Fabric
2mo ago 1
26.3.x 26.2.x 26.1.x +1
Fabric
2mo ago 1
26.3.x 26.2.x 26.1.x +1
Fabric
2mo ago 1
26.3.x 26.2.x 26.1.x +1
Fabric
2mo ago 1
26.3.x 26.2.x 26.1.x +1
Fabric
2mo ago 1
26.3.x 26.2.x 26.1.x +1
Fabric
2mo ago 1
26.3.x 26.2.x 26.1.x +1
Fabric
2mo ago 1
26.3.x 26.2.x 26.1.x +1
Fabric
2mo ago 1
26.3.x 26.2.x 26.1.x +1
Fabric
2mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
26.1-snapshot-1 25w46a 25w45a +43
Fabric
10mo ago 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
25w21a 25w20a 25w19a +106
Fabric
last yr. 1
24w46a 24w45a 24w44a +88
Fabric
last yr. 1
24w46a 24w45a 24w44a +88
Fabric
last yr. 1
24w46a 24w45a 24w44a +88
Fabric
last yr. 1
24w34a 24w33a 24w21b +79
Fabric
last yr. 1
24w21b 24w21a 24w20a +77
Fabric
last yr. 1
24w21b 24w21a 24w20a +77
Fabric
last yr. 1
24w14potato 24w14a 24w13a +70
Fabric
last yr. 1
[3.7.0] krysztal-language-scala 3.7.0 by Krysztal112233 on Sep 13, 2026
Download
Bundled Scala runtime: 3.9.0

The language adapter itself is now implemented in Scala 3, with support for class entrypoints and clearer instantiation errors.
Build with Scala3: 3.3.3
Build with Scala3: 3.3.0
Build with Scala3: 3.3.1
Build with Scala3: 3.3.4
Build with Scala3: 3.3.5
Build with Scala3: 3.3.6
Build with Scala3: 3.4.0
Build with Scala3: 3.4.1
Build with Scala3: 3.4.2
Build with Scala3: 3.4.3
Build with Scala3: 3.5.1
Build with Scala3: 3.5.0
Build with Scala3: 3.5.2
Build with Scala3: 3.6.2
Krysztal's Language Scala Icon
Download Krysztal's Language Scala
Select game version
Select platform