Java Lore 2026: What happened between Java 8 and 25?

Ok, I am finally up-to-date with Java lore. It came with the simple question: Why does Oracle still distribute Java 8 at java.com per default to clients (the latest is Java 25)🤔!

TLDR: Currently recommended: Adoptium Temurin (Java 21 LTS), https://whichjdk.com/

What happened? A bit of context: Oracle changed Java licensing around 2019. Around Java 11, Oracle introduced a subscription-based licensing for many production use cases. They changed the free use again for “internal business operations”, but since then, it seems like Oracle JDK is no longer the obvious free default for many use cases.

Also, Java 8 is still the default download on java.com because it is the last version that Oracle shipped as an end-user JRE. Since Java 9, they no longer distribute the runtime separately and applications are expected to ship their own runtime with tools like jlink.

But then in 2021: The AdoptOpenJDK project moved to the Eclipse Foundation and became Eclipse Adoptium, which now distributes the Temurin OpenJDK builds. (They btw distribute separate JDK and JRE environments again: https://adoptium.net/de/news/2021/10/jlink-to-produce-own-runtime !)

In fact, a lot of alternative OpenJDK builds grew:

  • Eclipse Temurin (Adoptium)
  • Amazon Corretto
  • Azul Zulu
  • Microsoft Build of OpenJDK
  • Red Hat OpenJDK, etc.

They are all based on the same OpenJDK source code, mainly differing in build pipelines, support policies, and packaging.

So what is the current state of Java?

Current Java release cycle:

  • New Java version every 6 months
  • LTS releases roughly every 2 years

Current important versions:

  • Java 17 (LTS, widely deployed)
  • Java 21 (current LTS, recommended)
  • Java 25 (latest release)

And a lot of cool features since Java 8, like modules, var, records, switch expressions, pattern matching, and the new fancy virtual thread system (Project Loom). Concluding: Unless you have constraints, Java 21 LTS is the safe default with Adoptium. The distributions Amazon Corretto, Azul Zulu and BellSoft Liberica are also fine.

A lot has happened since Java 8, from Oracle licenses, Adoptium, the jlink tool, and more. I am thinking about writing a blog post with the best-of new features between 8 and 21/25. Would that be interesting :)? Is Java still cool in 2026?

Unity 6.2 NGO 2.8 Control Spawn Positions

In the new Unity for GameObjects netcode, there’s no way to control the spawn position directly via the NetworkManager. The simplest way I found was to write a “SpawnManager” with a list of possible spawn positions, and it spawns the prefabs after OnClientConnected.

using UnityEngine;
using Unity.Netcode;
using System.Collections.Generic;

public class SpawnManager : MonoBehaviour
{
 public static SpawnManager Instance;
 [Header("Player Prefab")]
 [SerializeField] private NetworkObject playerPrefab;
 [Header("Spawn Points")]
 [SerializeField] private List<Transform> spawnPoints;
 private int spawnIndex;

private void Awake()
 {
 Instance = this;
 }

private void Start()
 {
 NetworkManager.Singleton.OnClientConnectedCallback += OnClientConnected;
 }

private Transform GetNextSpawnPoint()
 {
 var spawn = spawnPoints[spawnIndex];
 spawnIndex = (spawnIndex + 1) % spawnPoints.Count;
 return spawn;
 }

private void OnClientConnected(ulong clientId)
 {
 if (!NetworkManager.Singleton.IsServer)
 {
 return;
 }
 Transform spawn = GetNextSpawnPoint();
 NetworkManager.Singleton.SpawnManager.InstantiateAndSpawn(
 playerPrefab,
 clientId,
 destroyWithScene: true,
 isPlayerObject: true,
 forceOverride: false,
 position: spawn.position,
 rotation: spawn.rotation
 );
 }
}

Create a GameObject called SpawnManager, give it this script and then drag the prefab and the spawnpositions into its variables:screenshot of the SpawnManager

Make sure that in the NetworkManager, the network prefabs list is not empty. The default player prefab however is, because the SpawnManager spawns the prefabs:
prefab NetworkManager screenshot

Halloween Special 2025

Greetings, brave admins and hackers!

we thought it is time again to remind everyone (and ourselves) about PacketAssault! Due to recent Android restrictions, unsigned APKs can no longer be installed. Therefore, we updated the 2022 PA project.

The project is still on hold and not on the Play Store, but you can try it right now!

👉 Test it here – Have fun exploring the three levels!

🎃 Happy Halloween!

Not a Linear Year

Interestingly enough, for me, every Halloween is in some kind of way another opportunity to reflect on the status quo. To think about where I am standing, especially regarding the status of my games.

Looking back, the middle of 2024 was turbulent. I got my new job in consulting, and, because working intensively and learning new things was not enough, I also started TU Vienna’s Extended Studies on Innovation. It just felt like the right time. I do not have to mention that doing this program, in addition to my full-time consulting work, was quite challenging, and probably the reason why other progress (like fitness 😅) was suffering from October 2024 until at least July 2025.

Sadly, this also meant that the Halloween Special 2024 did not get much attention. So this year, I declare that Halloween shall not pass with empty-handed! Instead, it will bring at least one change that was already decided back in 2024: Super MX is now called MX: Episode of Darkcity.

There’s still a lot of work ahead to complete the full rebranding, but this step is really important. The original name was a wordplay targeted at the 16-bit Super Nintendo era, but nowadays, that association has faded, since too much time has passed. The new title better reflects the adventure itself, which takes place in one of Xenon’s countries, namely Darkcity.

And here I am, after a lot has happened, and more to come. I have learned so much. And I finally got adequate holidays, and with more energy, creativity, and a repaired fitness routine, I am again ready to further tackle the future!

Life is full of ups and downs. It’s not linear. Keep moving – I will too 🙂

TLD1.3d Small Update

Some of you may have noticed that we quietly pushed a new update for The Last Dimension back in August – this one ensures full compatibility with the latest Android versions.

We now added edge-to-edge fullscreen support and updated software libraries.

You can grab the latest version on Google Play:
https://play.google.com/store/apps/details?id=at.sectorinfinity.lastdimension

And yes… we’re definitely looking forward to Halloween! 🎃

Jump to / Search specific dates in Signal (+Telegram, WhatsApp)

For tldr, go to the screenshots at the end of the post.

Lately, I have been asked by my dad if you can search in the chat of the Signal messenger not only by words but also by date. So, the first thing I did was look in the app, and after not finding anything, do a bit of research:

How can i Search for specific dates?
byu/yeomania insignal

With this thread, I thought that this feature does not exist. As a happy open-source fan, the next thing I did was clone the repository of the official Signal Android app (https://github.com/signalapp/Signal-Android), and then I started to add a new option to the three-point menu of conversations. While reading the code for a few hours, I suddenly found functions for jumping to a specific date and validating that date (e.g. JumpToDateValidator.kt). Then I realized, that the app already had the feature I was about to implement 😆.

So how do you search in a conversation by date? You first have to activate the normal search. Then, nearby but undetected to the left above the keyboard, there is a button which opens a calendar selector!

signal step 1 signal step 2 signal step 3

And there you have it! You can select a date (if it exists) and the conversation will jump to that date!
I afterwards asked myself, do the other messengers have that feature? And yes, both Telegram and WhatsApp can do that too!
screenshot of telegram

Telegram has the button in the same position as Signal…

screenshot of whatsapp

and Whatsapp has it beside the search bar. Fascinating!

And that’s it. If you came over to this post by looking for this specific feature, I hope I could have helped you, and if not, maybe you learned something new! 😀

TLD1.3c Small Bugfix Update

TLD1.3c has been released, fixing a bunch of bugs in the fractal wizard of the editor and the community page in one update. Some people are still figuring out the editor 😉

TLD 1.3 Update

The Last Dimension 1.3 is officially online! Download or update it at https://play.google.com/store/apps/details?id=at.sectorinfinity.lastdimension!

It finally releases the fifth level “Chaos Theory”,  Play Games Services integration with achievements and a level editor where you can share your levels online!

Screenshot of "Chaos Theory"
Screenshot of “Chaos Theory”

We know that the editor is, while powerful, quite complex to use, so we are already thinking about ways how to make fractal rule creation simpler. Till then, we again refer to the L-System blog post for creating simple fractals (https://seismic.myftp.biz/blog/index.php/2020/11/19/l-systems-in-games-part-1-basics/).

Have fun!

The Last Dimension 1.3 German Stream!

🌟 Exciting News Alert! 🌟 Join me and Plaxarta this Saturday, 11.05.2024, at 18:00 (UTC+2) for an epic journey into The Last Dimension 1.3 with Plaxarta’s live stream on Twitch! 🎮
https://www.twitch.tv/plaxarta
Can’t wait to dive into the new features and share our thoughts in German together. Follow @Plaxarta on Twitter/X and subscribe to his YouTube channel for more updates! #gaming #livestream #TheLastDimension #Plaxarta #excited 🔥✨🚀🎉

The Last Dimension April Update

The TLD development is in full swing! We are not only testing the fifth level “Chaos Theory”, but are also working on a level editor to create your own fractal levels!

The TLDL editor

Soon, you will be able to create fractals by using our TLDL grammar (https://seismic.myftp.biz/blog/index.php/2020/11/19/l-systems-in-games-part-1-basics/).  Currently, the focus is on easy sharing of the game files and code editing compatible with mobile devices. Note that the code visible on the left of the screen is just an overview of the fractal, not the view you will be working with. We are also working on mechanisms to support the code-based approach.

Stay tuned!