promotional bannermobile promotional banner

Paired Life

Everyone picks a partner, and every pair shares one health bar. One of you takes a hit, both feel it. One of you dies, both die. Built for big casts

Everyone picks a partner. Every pair shares one health bar.

Two players, one pool of health.

One of you takes a hit, both of you feel it. One of you drowns, both of you drown. You pick your partner on the way in, and from that moment you are playing the same life.

Why pairs, and not one bar for the whole server

Putting an entire server on a single health bar is a great bit with two or three friends. Scale it to a real cast and it falls apart:

  • Every stray zombie is everybody's problem.
  • Nobody can take a risk, ever, because everyone else pays for it.
  • One careless player ends the run for people who weren't even online.
  • There are no individual stories. There's one bar, and it belongs to nobody.

Paired Life scopes the bond to two people. Six players become three independent life pools. Twenty become ten. A death is now a story about those two — who dropped into the ravine, who insisted on fighting the creeper, who has to explain themselves. Risk becomes something a pair chooses for itself. Everyone else keeps playing.

That's the whole design: keep the intimacy of a shared life, lose the group punishment.

Choosing a partner

Unpaired players get a clickable picker when they join:

 
──────────────────────────────────
CHOOSE YOUR PARTNER
You and your partner will share one health bar.
 
[ Mark ] [ Desmond ] [ Ben ]
 
Click a name to send a request.
──────────────────────────────────
 

The person they pick gets [ ACCEPT ] / [ DENY ] buttons. Once both agree, the pair is locked — no swapping partners the moment things get inconvenient.

When you do want to shuffle, an admin opens a re-pair window:

 
/pairedlife reroll open 10
 

Everyone gets a clickable notice, partners can be changed freely for ten minutes, then it locks again. Perfect for between episodes or seasons.

Unpaired players just play normally, so an odd number in the cast is fine.

Every pair gets a colour

❤1 Dylan ❤1 Mark ← both cyan
❤2 Desmond ❤2 Ben ← both gold
 

The colour and tag come from a vanilla scoreboard team, so they show up everywhere a name is drawn — chat, the tab list, death messages, and the nametag floating above their head. At a glance you can see who belongs to whom. Fourteen readable colours, and pair numbers are recycled when a pair dissolves.

What actually happens when you die

 
Mark was blown up by Creeper ← the real death
Dylan died because of Mark ← his partner goes with him
 

The pool refills when the first of the pair respawns. If the second one is still staring at the death screen while the first is already taking hits, they respawn into whatever the pool is down to.

Both death lines are configurable text.

What's shared, and what isn't

Shared: health, and death.

Personal: hunger, XP, inventory, and status effects. Absorption hearts are personal too — a golden apple protects the player who ate it before the damage ever reaches the shared pool.

Damage stacks (two partners taking hits drains the pool twice as fast — that's the point), but healing is normalised, so a well-fed pair regenerates at one player's rate rather than double speed.

Built to survive a modded pack

  • Zero mixins. Health is reconciled once a tick rather than by hooking the damage pipeline. That means there is no injection point for another mod to collide with, and it automatically picks up damage and healing from mods it has never heard of — modded weapons, custom boss attacks, healing items, /heal, anything that moves a health bar.
  • Server-side only. Your players join on completely vanilla clients. Every prompt is ordinary chat with click events. Nobody installs anything.
  • One dependency: Fabric API.
  • Pairs persist across restarts and server crashes, saved as plain readable JSON you can inspect or hand-edit between sessions.

Commands

Players

Command  
/pair Open the partner picker, or show your status
/pair <player> Send a request (or accept theirs)
/pair accept|deny <player> Answer a request
/pair status Your partner and your shared health
/pair list Every pair on the server
/unpair Leave your partner, during an open re-pair window

Admins — /pairedlife, permission level 2

Command  
reroll open [minutes] / reroll close Open or close the re-pair window
pair <a> <b> / unpair <player> Force pairs
sethealth <player> <hp> / heal <player> Adjust a pair's pool
list / reset / reload Inspect, wipe, reload config

Configurable

config/pairedlife.json, reloadable live with /pairedlife reload. Among other things you can:

  • Turn the shared death off, so the survivor is left on half a heart instead of dying with them.
  • Raise maxTeamSize to 3 for trios. The internals are generic, so larger groups use the same code path, though only trios have been tested.
  • Unlock pairs entirely, or let players re-pair whenever they like.
  • Reword every message, including both death lines.
  • Switch damage feedback between action bar, chat, or off.
  • Disable the scoreboard colours if your pack already uses teams.

The Paired Life Team

profile avatar
Owner
  • 28
    Followers
  • 6
    Projects
  • 16.8K
    Downloads
Donate

More from Vang_QView all