* Merge 'main' into '2.2-nojb' (#447) * Changes - Refine WKWebView on notched devices (worked fine on my 7 as well...) - Add iDevice model, iOS version, and install to General footer * New debug option: auto correction Sometimes autocorrection can be annoying, so there's now a toggle, enabled by default to preserve behavior. * Changes to custom controls Allow saving to default.json Put custom controls editor to in-game menu Localization * Rename renderer: tinygl4angle to ANGLE This avoids confusion between Android and iOS version when mentioning this renderer * GLFW.java: add glfwExtensionSupported * New Crowdin updates (#438) * New translations Localizable.strings (French) * New translations Localizable.strings (Chinese Simplified) * New translations Localizable.strings (Finnish) * New translations Localizable.strings (English) * New translations Localizable.strings (German) * New translations Localizable.strings (Ukrainian) * New translations Localizable.strings (Ukrainian) * New translations Localizable.strings (Estonian) * New translations Localizable.strings (Chinese Simplified) * New translations Localizable.strings (Chinese Simplified) * New translations Localizable.strings (Russian) * New translations Localizable.strings (English (upside down)) * New translations Localizable.strings (Czech) * New translations Localizable.strings (Czech) * New translations Localizable.strings (Turkish) * New translations Localizable.strings (Swedish) * New translations Localizable.strings (Ukrainian) * New translations Localizable.strings (Chinese Traditional) * New translations Localizable.strings (Vietnamese) * New translations Localizable.strings (Portuguese, Brazilian) * New translations Localizable.strings (Persian) * New translations Localizable.strings (Bengali) * New translations Localizable.strings (Thai) * New translations Localizable.strings (Kazakh) * New translations Localizable.strings (Hindi) * New translations Localizable.strings (Slovak) * New translations Localizable.strings (Malay) * New translations Localizable.strings (English, United Kingdom) * New translations Localizable.strings (Pirate English) * New translations Localizable.strings (Filipino) * New translations Localizable.strings (Tatar) * New translations Localizable.strings (Latin) * New translations Localizable.strings (Bashkir) * New translations Localizable.strings (English (upside down)) * New translations Localizable.strings (LOLCAT) * New translations Localizable.strings (Serbian (Cyrillic)) * New translations Localizable.strings (Russian) * New translations Localizable.strings (Chinese Simplified) * New translations Localizable.strings (German) * New translations Localizable.strings (English) * New translations Localizable.strings (Indonesian) * New translations Localizable.strings (Romanian) * New translations Localizable.strings (French) * New translations Localizable.strings (Spanish) * New translations Localizable.strings (Arabic) * New translations Localizable.strings (Catalan) * New translations Localizable.strings (Czech) * New translations Localizable.strings (Greek) * New translations Localizable.strings (Portuguese) * New translations Localizable.strings (Finnish) * New translations Localizable.strings (Hebrew) * New translations Localizable.strings (Italian) * New translations Localizable.strings (Japanese) * New translations Localizable.strings (Korean) * New translations Localizable.strings (Lithuanian) * New translations Localizable.strings (Dutch) * New translations Localizable.strings (Norwegian) * New translations Localizable.strings (Polish) * New translations Localizable.strings (Russian (pre-revolutionary)) * New translations Localizable.strings (Estonian) * New translations Localizable.strings (Russian) * New translations Localizable.strings (Chinese Simplified) * New translations Localizable.strings (German) * New translations Localizable.strings (Italian) * New translations Localizable.strings (Italian) * New translations Localizable.strings (Turkish) * New translations Localizable.strings (French) * New translations Localizable.strings (Spanish) * New translations Localizable.strings (Czech) * New translations Localizable.strings (German) * New translations Localizable.strings (Italian) * New translations Localizable.strings (Polish) * New translations Localizable.strings (Russian) * New translations Localizable.strings (Chinese Simplified) * New translations Localizable.strings (English) * New translations Localizable.strings (Indonesian) * New translations Localizable.strings (Ukrainian) * New translations Localizable.strings (Chinese Traditional) * New translations Localizable.strings (Vietnamese) * New translations Localizable.strings (Filipino) * New translations Localizable.strings (English (upside down)) * New translations Localizable.strings (Estonian) * New translations Localizable.strings (Arabic) * New translations Localizable.strings (German) * New translations Localizable.strings (Estonian) * New translations Localizable.strings (Russian) * New translations Localizable.strings (Czech) * New translations Localizable.strings (Czech) * New translations Localizable.strings (Turkish) * New translations Localizable.strings (English) * New translations Localizable.strings (French) * New translations Localizable.strings (Chinese Simplified) * New translations Localizable.strings (Portuguese, Brazilian) * New translations Localizable.strings (Chinese Simplified) * New translations Localizable.strings (Portuguese, Brazilian) * New translations Localizable.strings (Portuguese, Brazilian) Co-authored-by: Eilionoir Tunnicliff <[email protected]> Co-authored-by: Duy Tran Khanh <[email protected]> Co-authored-by: Duy Tran Khanh <[email protected]> * Makefile changes Should incorporate everything under "Rewrite makefile to be one-for-all" for #448 I have no idea if this works, I know the workflow will fail at least because of the make deb, make ipa blah blah * Change workflow to work with the rewrite - Shouldn't need JAVA_HOME set anymore, as the Makefile sets it - make package - Remove .deb * Remove extraneous else * Add /bin to JAVA_HOME for macOS * Remove extras from package dependencies * for real coal Makefile added a space in the version smh * Change to dsym and we're done * Update release workflow * Fix dsym recipe and now we're done * NOSTDIN fixes + theoretically fix dsym * Remove extraneous @ * DEBIAN Removal: 1/5 * DEBIAN Removal: 2/5 * DEBIAN Removal: 3/5 * DEBIAN Removal: 4/5 * DEBIAN Removal: 5/5 I hate GitHub web as much as you * Remove LaunchScreen.storyboard Co-authored-by: Duy Tran Khanh <[email protected]> Co-authored-by: Duy Tran Khanh <[email protected]>
PojavLauncher
Note
- The official Twitter for PojavLauncher is @PLaunchTeam. Any others (most notably @PojavLauncher) are fake, please report them to Twitter's moderation team.
Introduction
- PojavLauncher is a Minecraft: Java Edition launcher for Android and iOS based on Boardwalk.
- This launcher can launch most of available Minecraft versions (up to latest 1.19.2, including Combat Test versions).
- Modding via Forge and Fabric are also supported.
- Older versions of Forge and Fabric can be used with OpenJDK 8.
- This repository contains source code for iOS/iPadOS platform.
- For Android platform, check out PojavLauncher repository.
Getting started with PojavLauncher
The PojavLauncher Website has extensive documentation on how to install, set up, and play! For those who wish to install quickly, here's the basics (on iOS 12 or later):
Note: This is experimental, although game works smoothly, you should not set Render distance too much.
Setup the sideload app
- For iOS 14.0-15.5beta4, TrollStore is recommended to keep PojavLauncher permanently signed and have JIT enabled by itself.
- Otherwise, install AltStore or SideStore. Others will also work.
Installing PojavLauncher
Relesse build (AltStore/SideStore trusted source)
- Add
PojavLauncher Repositoryfrom Trusted Sources - Tap
FREEto begin installing.
Development build
- Download an IPA build of PojavLauncher in the Actions tab.
- Open the downloaded IPA in the sideload app to install.
Enabling JIT
| Application | AltStore | SideStore | TrollStore | JitStreamer | Jitterbug | Jailbroken |
|---|---|---|---|---|---|---|
| Requires ext-device | Yes | No | No | No | If VPN unavailable | No |
| Requires Wi-Fi | Yes | Yes | No | Yes | Yes | No |
| Auto enabled | Yes(*) | No | Yes | Yes | No | Yes |
| Minimum iOS version | 12.2 | 14.0 | 14.0 | 14.0 | 14.0 | Any |
(*) AltServer running in local network is required.
Known issues
- Some Forge versions may fail with
java.lang.reflect.InvocationTargetException. - The game will be prone to JetsamEvents. More specifically, random crashes might occurs if allocating too much resources.
Contributors
PojavLauncher is amazing, and surprisingly stable, and it wouldn't be this way without the commmunity that helped and contribute to the project! Some notable names:
@khanhduytran0 - Lead iOS port developer
@crystall1nedev - Lead iOS port developer
@artdeell
@Mathius-Boulay
@zhuowei
@jkcoxson
@Diatrus
Third party components and their licenses
- Caciocavallo: GNU GPLv2 License.
- jsr305: 3-Clause BSD License.
- org.json: The JSON License.
- Boardwalk: Apache 2.0 License
- GL4ES by @lunixbochs @ptitSeb: MIT License.
- Mesa 3D Graphics Library: MIT License.
- MetalANGLE by @kakashidinho and ANGLE team: BSD 2.0 License.
- MoltenVK: Apache 2.0 License.
- Azul Zulu JDK: GNU GPLv2 License.
- LWJGL3: BSD-3 License.
- LWJGLX (LWJGL2 API compatibility layer for LWJGL3): unknown license.
- Alderis (color picker for iOS < 14): Apache 2.0 License.
- DBNumberedSlider: Apache 2.0 License
- fishhook (jailed environment usage only): BSD-3 License.
- Java Native Access: Apache 2.0 License.
- shaderc (used by mods that uses Vulkan for rendering): Apache 2.0 License.
- TOInsetGroupedTableView: MIT License.
- AltKit
- Thanks to MCHeads for providing Minecraft avatars.
Special thanks to MacStadium!
This project is listed under the MacStadium Open Source Program, which allows all of us developers to keep on moving forward even without physical access to a Mac.
