[Starsector Mods][0.95a] Cooperative Multiplayer Combat v3.7 (2021-04-29)

  • Post category:Mods
  • Post comments:0 Comments

Cooperative Multiplayer Combat v3.7
-=Download=-

Now your friends can help out in combat with this shared screen/couch co-op/multiplayer mod

New UI Elements

Readiness color key:

  • Green = ready
  • Yellow = almost ready
  • Orange = not close to ready
  • Red = out of ammo

3 players

Spoiler: click to expand
Spoiler

Features:

  • Enjoy shared screen cooperative play with up to three friends
  • New UI elements to support weapon and system cool downs
  • Pushbutton targeting of nearby ships
  • Shield AI to manage shield facing
  • Works with just about any mod
  • Mission Support!

-=Download=-

How to use
1. Download & install this mod
2. Make sure this mod is enabled
3. When combat starts and ships are deployed, have your friend press the Select Ship key (‘Insert’ by default for player 2)
4. During combat, have your friend use the keys specified in mods/CoOpCombat/Player2.json to pilot their ship (if you change the settings, you’ll need to restart Starsector)
5. If sharing a keyboard is hard (or awkward), use a second keyboard or a game pad that can emulate keys.
6. When combat starts, zoom out more than usual so your friends show up on the screen
7. -optional- Install the Detailed Combat Results mod (

  • No mouse to control where a shield faces, instead an AI is used to “aim” the shield
  • No mouse to control where weapons aim, weapons can only aim directly forward.  Mitigate this by using in your group 1 only weapons that fire directly forward
  • No mouse to select targets for weapons, instead a new “cycle targets” command has been added which cycles through nearby targets
  • Camera/view-port stays centered on Player1, to compensate zoom out level has been greatly increased

How To: Controller Support (optional)

How To: Internet/Remote Play
Install a game streaming app (like Parsec.tv), you’ll need a decent internet connection to pull this off.

How To: Change Key Bindings

  • Locate the configuration file for the player you want to modify the keys for (mods/CoOpCombat/Player2.json for player two for example)
  • Edit the file using your favorite powerful text editor (like VSCode)
  • Modify the key assigned to the action you want performed.  To determine the name for your key, look below in the spoiler section
  • Be sure to save the file and restart Starsector
Spoiler: click to expand
Spoiler
Code
ESCAPE
1
2
3
4
5
6
7
8
9
0
MINUS
EQUALS
BACK
TAB
Q
W
E
R
T
Y
U
I
O
P
LBRACKET
RBRACKET
RETURN
LCONTROL
A
S
D
F
G
H
J
K
L
SEMICOLON
APOSTROPHE
GRAVE
LSHIFT
BACKSLASH
Z
X
C
V
B
N
M
COMMA
PERIOD
SLASH
RSHIFT
MULTIPLY
LMENU
SPACE
CAPITAL
F1
F2
F3
F4
F5
F6
F7
F8
F9
F10
NUMLOCK
SCROLL
NUMPAD7
NUMPAD8
NUMPAD9
SUBTRACT
NUMPAD4
NUMPAD5
NUMPAD6
ADD
NUMPAD1
NUMPAD2
NUMPAD3
NUMPAD0
DECIMAL
F11
F12
F13
F14
F15
F16
F17
F18
KANA
F19
CONVERT
NOCONVERT
YEN
NUMPADEQUALS
CIRCUMFLEX
AT
COLON
UNDERLINE
KANJI
STOP
AX
UNLABELED
NUMPADENTER
RCONTROL
SECTION
NUMPADCOMMA
DIVIDE
SYSRQ
RMENU
FUNCTION
PAUSE
HOME
UP
PRIOR
LEFT
RIGHT
END
DOWN
NEXT
INSERT
DELETE
CLEAR
LMETA
RMETA
APPS
POWER
SLEEP

Mod compatibility

  • Requires no extra mods/libs to function
  • should work with any mod that doesn’t assign very high priority AIs
  • Tested with nexerlin, lots of ships & factions

What this mod is not and will not be (even though it might be cool)

  • An MMO
  • Allow you and a friend to both have different fleets on the campaign map

Using this mod in other mods
This mod is covered by the MIT license, you can do what ever you want with this, no need to ask.  Just be nice and mention that this mod exists and where you got it from

Acknowledgements
Some code related to rendering was taken from the excellent Leading Pip Mod, attribution is here by granted to Magehand LLC per licensing.

Change Log

Spoiler: click to expand
Spoiler
3.7
 * Updated for StarSector .95a
 * Backwards compatible
 * Added PREV_TARGET key, so it’s now possible to cycle through targets both directions

3.6
 * Players can now change which ship they are controlling during battle (‘Insert’ key by default for player 2)
 * Players can now retreat. Simply order a retreat and switch ships until no one is controlling any retreating ships.
 * Changed how keys are configured to be a bit simpler to add additional players
 * Backwards compatible

3.5
 * Made many values configurable in the CoOpCombatSettings.json
 * Increased lock-on range
 * Added engage/regroup toggle for carriers
 * Player 2+ aiming reticles are larger
 * Attempts at fixing Auto-Fire issue.

3.4
 * Add ability to toggle phase-cloak

3.3
 * Prevent exception when transferring command

3.2
 * Now works with Starsector .9a

3.1
 * Add mission support, just edit the variant of a ship to be “player#” like you would with the ship name
 * Added experimental PvP mission (Doing anything more interesting would require work)

3.0 – Now works with Starsector .8.1a, minor graphical improvements

 2.0 – UI elements for:
        * Selected weapon group
        * Weapon cooldown
        * System cooldown
        * Weapons have their own targeting lane
        * Switching between weapon groups now works (had to disable autofire)

 1.0 – Created

Forum:


That… looks pretty cool. I could see setting it up with particular hard-ware for player-two like a custom button set, Otherwise, having the AI controll the weapons and the Player controll the weapon-group would be an effective control I think.

I’d love to see a video of this, the GIF doesn’t give it justice. xD

This is a pretty good idea though! I did something similar with my brother that was a fun experiment. It wasn’t a mod, we just gave each other differnt controlls of the ship. I managed the thrust, weapon-groups and Ship-system (keyboard) he managed the shield, weapon fire, and steering of the ship… (the Mouse). It was fun, and difficult!


Cool to hear that you and your brother play!  I loved the coop mod for M&B (inspired this) and I feel like there’s a lack of good couch-coop games in general.

Like I mention in the main post, I’ve had a good experience with a friend using a gamepad and this mod.  The controls actually feel pretty natural, and in general I think the controls for SS would translate really well to a dual stick controller.


Ok wow, this might open up Starsector to an actual online multiplayer.

Ok wow, this might open up Starsector to an actual online multiplayer.

I want to manage expectations here, there’s a strong limit about what can be done without it requiring hundreds of hours of Alex’s programming time.  Maybe best case scenario is people play the heck out of this and something like multiplayer gets put on the road map.


I look forward to seeing how far this can go.

Hey Alex, any chance of getting support for a in-combat split-screen of the combat field? Sounds like a smallish tweak that would open up a huge field of opportunities for mods like this to go hog-wild

  • No visual indicator of which weapon groups are selected
  • No visual indicator of cool downs

Mmh I


  • No visual indicator of which weapon groups are selected
  • No visual indicator of cool downs

Mmh I

Wow, thanks, that’s exactly what I need! 

That thread looks like a gold mine.


Spoiler: click to expand
Spoiler

Now it’s just a matter of getting two instances of Starsector to talk together (AIs and all) and we can have PvP matches


Never
Going
To
Happen
Ever

Spoiler: click to expand
Spoiler

Now it’s just a matter of getting two instances of Starsector to talk together (AIs and all) and we can have PvP matches

The day that happens is the day that swine discover the secrets of flight, hell freezes over AND politicians start telling the truth and become un-corruptable!


Spoiler: click to expand
Spoiler

Now it’s just a matter of getting two instances of Starsector to talk together (AIs and all) and we can have PvP matches

The day that happens is the day that swine discover the secrets of flight, hell freezes over AND politicians start telling the truth and become un-corruptable!

Depends.
If, somehow, one discovered the section of the code where a AI routine/Player input is translated into ship activity (moving, firing, etc), it could be possible to intercept the “commands” that regulate the movements of your own ships, send it to another computer, have this second computer replace the commands of it’s player enemy’s AI with the commands received (ie: translating Player1 allied ships movements into Player2 enemy ships movements and vice versa).


Multiplayer Offtopicness:

Spoiler: click to expand
Spoiler

Never
Going
To
Happen
Ever

Years ago, people said the same about KSP, but modders found a way. If someone is sufficiently dedicated and skilled, they might just do it for SS. It might not be likely, but don’t say never.

On topic:
This is really impressive. I just don’t know how much I fancy playing without a mouse, though.


Years ago, people said the same about KSP, but modders found a way. If someone is sufficiently dedicated and skilled, they might just do it for SS. It might not be likely, but don’t say never.

There is a pretty big difference between a game built in an engine that is dedicated to support multiplayer games, and one in a custom engine that has nothing to even remotely help with multiplayer. Or at the least not in a legal “I-didn’t-entirely-decompiled-and-recompiled-your-game” way.

Leave a Reply