2016-04-10 19:23:05 +05:30
# Third-party libraries
This folder has third-party or otherwise external libraries needed for other parts to work.
2022-10-14 03:07:44 +05:30
## filesystem
Gulrak's implementation of C++17 std::filesystem for C++11 /C++14/C++17/C++20 on Windows, macOS, Linux and FreeBSD.
See [github repo ](https://github.com/gulrak/filesystem ).
MIT licensed.
2022-07-06 09:26:00 +05:30
## gamemode
A performance optimization daemon.
See [github repo ](https://github.com/FeralInteractive/gamemode ).
2022-08-19 22:12:26 +05:30
BSD-3-Clause licensed
2022-07-06 09:26:00 +05:30
2023-01-07 02:17:14 +05:30
## cmark
2022-08-06 12:53:50 +05:30
2023-01-07 02:17:14 +05:30
The C reference implementation of CommonMark, a standardized Markdown spec.
2016-04-10 19:23:05 +05:30
2023-01-07 02:17:14 +05:30
See [github_repo ](https://github.com/commonmark/cmark ).
BSD2 licensed.
2016-04-10 19:23:05 +05:30
## javacheck
2022-08-06 12:53:50 +05:30
2016-04-10 19:23:05 +05:30
Simple Java tool that prints the JVM details - version and platform bitness.
Do what you want with it. It is so trivial that noone cares.
2021-10-22 02:55:52 +05:30
## Katabasis
2022-08-06 12:53:50 +05:30
2021-10-22 02:55:52 +05:30
Oauth2 library customized for Microsoft authentication.
This is a fork of the [O2 library ](https://github.com/pipacs/o2 ).
MIT licensed.
2016-04-10 19:23:05 +05:30
## launcher
2022-08-06 12:53:50 +05:30
2016-04-10 19:23:05 +05:30
Java launcher part for Minecraft.
2022-11-08 23:21:18 +05:30
It does the following:
2022-07-13 00:14:11 +05:30
2022-11-08 23:21:18 +05:30
- Waits for a launch script on stdin.
- Consumes the launch script you feed it.
- Proceeds with launch when it gets the `launcher` command.
If "abort" is sent, the process will exit.
2016-04-10 19:23:05 +05:30
This means the process is essentially idle until the final command is sent. You can, for example, attach a profiler before you send it.
2022-11-08 23:21:18 +05:30
The `standard` and `legacy` launchers are available.
2016-04-10 19:23:05 +05:30
2022-10-24 22:51:26 +05:30
- `standard` can handle launching any Minecraft version, at the cost of some extra features `legacy` enables (custom window icon and title).
2022-11-08 23:21:18 +05:30
- `legacy` is intended for use with Minecraft versions < 1.6 and is deprecated .
2016-04-10 19:23:05 +05:30
Example (some parts have been censored):
2022-07-13 00:23:51 +05:30
2016-04-10 19:23:05 +05:30
```
mod legacyjavafixer-1.0
mainClass net.minecraft.launchwrapper.Launch
param --username
param CENSORED
param --version
2022-11-08 23:21:18 +05:30
param Prism Launcher
2016-04-10 19:23:05 +05:30
param --gameDir
param /home/peterix/minecraft/FTB/17ForgeTest/minecraft
param --assetsDir
param /home/peterix/minecraft/mmc5/assets
param --assetIndex
param 1.7.10
param --uuid
param CENSORED
param --accessToken
param CENSORED
param --userProperties
param {}
param --userType
param mojang
param --tweakClass
param cpw.mods.fml.common.launcher.FMLTweaker
2022-11-08 23:21:18 +05:30
windowTitle Prism Launcher: 172ForgeTest
2016-04-10 19:23:05 +05:30
windowParams 854x480
userName CENSORED
sessionId token:CENSORED:CENSORED
2022-10-24 22:51:26 +05:30
launcher standard
2016-04-10 19:23:05 +05:30
```
2022-06-15 14:09:56 +05:30
Available under `GPL-3.0-only` (with classpath exception), sublicensed from its original `Apache-2.0` codebase
2016-04-10 19:23:05 +05:30
## libnbtplusplus
2022-08-06 12:53:50 +05:30
2016-04-10 19:23:05 +05:30
libnbt++ is a free C++ library for Minecraft's file format Named Binary Tag (NBT). It can read and write compressed and uncompressed NBT files and provides a code interface for working with NBT data.
See [github repo ](https://github.com/ljfa-ag/libnbtplusplus ).
Available either under LGPL version 3 or later.
2021-10-22 02:55:52 +05:30
## LocalPeer
2022-08-06 12:53:50 +05:30
2021-10-22 02:55:52 +05:30
Library for making only one instance of the application run at all times.
2016-04-10 19:23:05 +05:30
2021-10-22 02:55:52 +05:30
BSD licensed, derived from [QtSingleApplication ](https://github.com/qtproject/qt-solutions/tree/master/qtsingleapplication ).
2016-04-10 19:23:05 +05:30
2021-10-22 02:55:52 +05:30
Changes are made to make the code more generic and useful in less usual conditions.
2016-04-10 19:23:05 +05:30
2022-06-04 03:32:11 +05:30
## murmur2
Canonical implementation of the murmur2 hash, taken from [SMHasher ](https://github.com/aappleby/smhasher ).
Public domain (the author disclaimed the copyright).
2021-10-22 02:55:52 +05:30
## quazip
2016-10-30 07:07:38 +05:30
2022-08-19 22:12:26 +05:30
A zip manipulation library.
2016-10-30 07:07:38 +05:30
2022-08-19 22:12:26 +05:30
LGPL 2.1 with linking exception.
2016-11-27 04:23:56 +05:30
2021-10-22 02:55:52 +05:30
## rainbow
2022-08-06 12:53:50 +05:30
2021-10-22 02:55:52 +05:30
Color functions extracted from [KGuiAddons ](https://inqlude.org/libraries/kguiaddons.html ). Used for adaptive text coloring.
2016-11-27 04:23:56 +05:30
2021-10-22 02:55:52 +05:30
Available either under LGPL version 2.1 or later.
2016-11-27 04:23:56 +05:30
2021-10-22 02:55:52 +05:30
## systeminfo
2016-11-27 04:23:56 +05:30
2022-10-18 20:07:04 +05:30
A Prism Launcher-specific library for probing system information.
2021-10-22 02:55:52 +05:30
Apache 2.0
2021-04-16 11:49:01 +05:30
2022-09-24 02:36:36 +05:30
## tomlplusplus
2021-10-22 02:55:52 +05:30
2021-04-17 22:16:11 +05:30
A TOML language parser. Used by Forge 1.14+ to store mod metadata.
2021-04-16 11:49:01 +05:30
2022-09-24 02:36:36 +05:30
See [github repo ](https://github.com/marzer/tomlplusplus ).
2021-04-16 11:49:01 +05:30
2022-10-18 20:07:04 +05:30
Licenced under the MIT licence.
2023-02-13 03:53:15 +05:30
## qdcss
A quick and dirty css parser, used by NilLoader to store mod metadata.
Translated (and heavily trimmed down) from [the original Java code ](https://github.com/unascribed/NilLoader/blob/trunk/src/main/java/nilloader/api/lib/qdcss/QDCSS.java ) from NilLoader
Licensed under LGPL version 3.