SunBlock

System Design

1 / 4
1 / 4

SunBlock has quite a few moving parts, and for sanity's sake, I find it useful to view the system in three layers.

These are:

  1. Physical Layer (PL)
  2. Logical Layer (LL)
  3. Game Layer (GL)

The physical layer captures the solar data and hands it off to the server to read, store, and broadcast on our live status website. This data is then read by the mod server-side and broadcast to the players as part of an in-game HUD. (You can read more on our GitHub repo)

This only makes it Minecraft on a solar-server. So next we introduced a solar-powered sword and a power button. The sword would directly translate solar power into attack damage. When the sun is bright, the sword's at its height. The power button allowed players to switch the server from power-saver profile to performance profile. This allowed players to directly affect the power consumption of the server significantly which then changed the collective gameplay style, server lag, monster strengths (since it affected TPS), and battery duration. For anyone experimenting with Solar Powered systems: lithium-ion batteries are EXTREMELY inconsistent.

This affordance made it solar Minecraft. Now we were playing with power. The server ran its first full survival multiplayer season from May through July 2025. Players experienced energy constraints as a gameplay mechanic rather than a message — when clouds rolled in over Montreal, the game world responded in real time. We got to observe people collectively worry about keeping the world alive; talk about allegorical play...