Kart Krew's Smart Tether
KART KREW PRESENTS... Smart Tether A goofy disaster stream showing off the improvements made for v3. Inspired by Knuckles' Chaotix and Sonic Classic Heroes, this addon ties players together so everyone can experience the levels together, and...
mb.srb2.org
Ties everyone together with a sparkling band, so everyone has to complete the level together! Take advantage of funny momentum jank to complete the level faster! Recommended for 2-6 players, but it's totally doable with 8-10 players. (Anything above that I don't recommend but you can try for laughs anyway. :p)
The original script is by fickleheart, tons of credit goes to them for the skeleton! Original script is here: https://mb.srb2.org/showthread.php?t=39545
Changes from the 2.1 version include:
I poured a lot of effort in trying to make Combi-ring something that I didn't want to play Coop mode without anymore, and I think I succeeded -- it's probably the most fun I've had with SRB2's Coop in a long time. It keeps everyone together, so you can experience the level with your friends, but it has a lot more agency than before. If you previously just thought of it as a total meme, or slow and unfun, I highly encourage trying my changes out; I think you'll be pleasantly surprised.
The original script is by fickleheart, tons of credit goes to them for the skeleton! Original script is here: https://mb.srb2.org/showthread.php?t=39545
Changes from the 2.1 version include:
- Slingshot momentum: In old combi, if two players were moving in the same direction, the faster player would be pulled back, and the slower player pulled in. This version instead pulls the slower player in, and leaves the faster player alone. This allows for fun sling-shot momentum shenanigans, gaining you extra speed with cooperation! Players going in opposite directions still works the same way.
- Ability anchoring: Using your abilities gives you a little more priority over players who aren't. This gives everyone the same kind of agency and let's you influence the rest of the group in a certain direction, and helps bring everyone to the same level as Knuckles in 2.1's Combi. Players using springs or swing gimmicks are also given some priority as well.
- HOLD!: You can HOLD! to stand in place and increase your pull. This is possible in 2.1's Combi, but now non-spin characters can also do it by holding Spin in place -- there's a big goofy HOLD! icon when you're doing it successfully.
- Teleporting: Holding Ring Toss will let you bubble to another random player, bringing you slowly to them, but at the cost of losing your team's rings. If you continue to hold Ring Toss when you're at your destination, you'll continue to follow them. You also teleported on respawn, adding a bit of a respawn timer based on how far you are from the last checkpoint, increasing tension. You're also forced to teleport to a single player when they're using certain gimmicks, like minecarts, zoom tubes, and teleporters.
- Power-up sharing: Collected rings, shields, Super form, and other power-ups are shared across the group. No more fighting over getting rings! Getting hurt will lose rings for everyone, so be careful!
- Team lives: Everyone has the same life counter. If one person dies, you can respawn infinitely. However, if everyone dies at the same time, then a life will be lost!
Out of the box, Combi-ring will usually work perfectly fine with custom characters, but if you want to make your custom abilities anchor players, there's multiple options.
Additionally, you may want to make sure your character doesn't show extra particles/effects when they have player.mo.flags2 & MF2_DONTDRAW so they don't appear while teleporting. Same goes for abilities, but for player.pflags & PF_STASIS|PF_JUMPSTASIS. If either of these are not reasonable however, then you can also manually check for player.mo.combi.teleporting being set.
Lastly, as a fun bonus, you can also give your character custom sprites for HOLD! Just add sprites called HOLD in your character WAD and the game will use them!
- It will automatically anchor players with player.panim set to PA_ABILITY and PA_ABILITY2, so if you have custom ability states, making sure the panim is the right value during them will automatically anchor the player by default.
- If you want to set priority when using your ability once, and then reset it when you hit the ground, you can set player.mo.combi.usingability to true, then the rest will be done by combi automatically.
- If you want extreme fine control over the anchoring and even be able to override the default anchor priority value regardless of what it normally is, set player.mo.combi.priority to either true or false. This gets reset to nil every tic, which uses the default behavior instead.
Additionally, you may want to make sure your character doesn't show extra particles/effects when they have player.mo.flags2 & MF2_DONTDRAW so they don't appear while teleporting. Same goes for abilities, but for player.pflags & PF_STASIS|PF_JUMPSTASIS. If either of these are not reasonable however, then you can also manually check for player.mo.combi.teleporting being set.
Lastly, as a fun bonus, you can also give your character custom sprites for HOLD! Just add sprites called HOLD in your character WAD and the game will use them!
I poured a lot of effort in trying to make Combi-ring something that I didn't want to play Coop mode without anymore, and I think I succeeded -- it's probably the most fun I've had with SRB2's Coop in a long time. It keeps everyone together, so you can experience the level with your friends, but it has a lot more agency than before. If you previously just thought of it as a total meme, or slow and unfun, I highly encourage trying my changes out; I think you'll be pleasantly surprised.
Last edited: