Wolf (https://www.youtube.com/watch?v=WLHARMaR1uU) | Scarab (https://www.youtube.com/watch?v=Yu1nPrlll44) |
Ok wow, this might open up Starsector to an actual online multiplayer.
- No visual indicator of which weapon groups are selected
- No visual indicator of cool downs
- No visual indicator of which weapon groups are selected
- No visual indicator of cool downs
Mmh I recently uploaded a plugin to create rasterized UI elements (http://fractalsoftworks.com/forum/index.php?topic=6452.msg196268#msg196268), you may want to look it up for these issues.
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!Now it's just a matter of getting two instances of Starsector to talk together (AIs and all) and we can have PvP matchesSpoilerhttps://www.youtube.com/watch?v=YeeLyUSa5Vw[close]
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!Now it's just a matter of getting two instances of Starsector to talk together (AIs and all) and we can have PvP matchesSpoilerhttps://www.youtube.com/watch?v=YeeLyUSa5Vw[close]
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.
One of the main reasons why MP will never work is because in order to make it work, you would basically have to deobfuscate a ton of code, thus breaking the EULA. Also, certain mechanics would not work/ translate well (like the time dilation) to MP. And finally, it would be a complete PAIN to fight against people as stuff that is balanced for SP would NOT balanced for MP. I mean, imagine the amount of cheesy fleets that you would face most of the time!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!Now it's just a matter of getting two instances of Starsector to talk together (AIs and all) and we can have PvP matchesSpoilerhttps://www.youtube.com/watch?v=YeeLyUSa5Vw[close]
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).
That or a API by Alex.
In theory it shouldn't be too hard, a function that returns a given AI orders to a ship (ie: move left, vent, fire, use ability) and one that inputs orders to the ship (ie: the actual moving left, firing, venting, etc).
This way you could take the orders of a allied AI ship, send them over the internet (or any other system) and have them translated into enemy ships movements on another player's part.
There's a lot more to it than that; accounting for latency requires the ability to rollback game state (to resolve disagreements between client game states).
Retrofitting such a networking solution to starsector would be a truly monumental task; even my unending optimism believes that solution to be impossible (without direct access to the source).
A more practicable solution is to make the game state deterministic, and just share (and buffer) player inputs.
It's all been thought about & discussed on the forums before, along with a significant amount of planning & prototyping work.
There's a lot more to it than that; accounting for latency requires the ability to rollback game state (to resolve disagreements between client game states).
Retrofitting such a networking solution to starsector would be a truly monumental task; even my unending optimism believes that solution to be impossible (without direct access to the source).
A more practicable solution is to make the game state deterministic, and just share (and buffer) player inputs.
It's all been thought about & discussed on the forums before, along with a significant amount of planning & prototyping work.
Correct me if i am wrong but could a system similar to the one used in Supreme Commander work? It enforces a minimum lag of 500ms (iirc) between players so the game has time to synch everything properly.
I don't know how 501+ms lag is handled though.
I don't suppose that SS supports dual mice?
Then you could plug two mice into the computer and play with your friend without networking anything.
I don't suppose that SS supports dual mice?
Then you could plug two mice into the computer and play with your friend without networking anything.
No, SS probably gets the cursor position from the OS and I don't know of any OS that supports multiple cursors. (You can have multiple mice controlling the same cursor though).
There are work-arounds for the lack of multiple mice that don't hamper gameplay IMO; only personally controlling guns that fire forward, only using forward fixed shields (although an AI will aim it if you have omni), and there's now a "cycle targets" command for targeting.
My current todo list:
* Improve UI elements for the additional players (indicators for each weapon)
* Support for .8x
* Make a compelling video of multiplayer in action
* See about auto scaling the viewable area to always show both ships
I'm not sold on the use case of there being a need to support a second mouse input. I don't see a scenario where a second player has a mouse at the same desk or couch and can actually play. But, this is open source, so if anyone wants to code it up and submit a pull request I'll happily merge it.
I just wondering how development is going. Will there be support for missions also?
Perhaps add controller support? Left stick for movement/turn, d-pad for strafe, right stick for aiming etc.
Or Steam if you have it installed. Hell I have an already built 360 layout for SS that, while still a WIP, is still pretty decent.Perhaps add controller support? Left stick for movement/turn, d-pad for strafe, right stick for aiming etc.
You can use JoyToKey (http://joytokey.net/en/) to enable controller support in SS.
I haven't messed around with missions since SF.4, if the ship names are kept in the mission definition file it would simply be a matter of renaming them to get things to work.And I'm glad that someone decided to make such a great mod. ^_^ As for missions - there is a fleet editor though you can only change model names but not name of ships unfortunately.
I'm glad someone has actually used the mod! Not even I can wrangle a meat space friend to play.
Player-game interface changes:Is it possible to make that a standalone mod?
No mouse to control where a shield faces, instead an AI is used to "aim" the shield
QuotePlayer-game interface changes:Is it possible to make that a standalone mod?
No mouse to control where a shield faces, instead an AI is used to "aim" the shield
Based on others saying it's possible to have a second mouse recognized by the game input management probably. Am I going to do it? Probably not, I'm not sold that others will use more than one mouse at a time on a PC. I might do it if I have time.
QuotePlayer-game interface changes:Is it possible to make that a standalone mod?
No mouse to control where a shield faces, instead an AI is used to "aim" the shield
What?
I meant for single player make the AI control your shield.
Based on others saying it's possible to have a second mouse recognized by the game input management probably. Am I going to do it? Probably not, I'm not sold that others will use more than one mouse at a time on a PC. I might do it if I have time.
What about missions support? Will it be implemented?
Got a bug when trying to transfer to another ship during combat.Spoiler3753673 [Thread-4] ERROR com.fs.starfarer.combat.CombatMain - java.lang.ClassCastException: com.fs.starfarer.combat.ai.movement.maneuvers.TransferCommandAI cannot be cast to com.fs.starfarer.api.combat.ShipAIPlugin
java.lang.ClassCastException: com.fs.starfarer.combat.ai.movement.maneuvers.TransferCommandAI cannot be cast to com.fs.starfarer.api.combat.ShipAIPlugin
at com.fs.starfarer.combat.entities.Ship.getShipAI(Unknown Source)
at data.scripts.coopcombat.CoOpEveryFrameCombatPlugin.renderInWorldCoords(CoOpEveryFrameCombatPlugin.java:45)
at com.fs.starfarer.title.C.K$Oo.new(Unknown Source)
at com.fs.starfarer.combat.super.OoOO.new(Unknown Source)
at com.fs.starfarer.combat.CombatState.traverse(Unknown Source)
at com.fs.state.AppDriver.begin(Unknown Source)
at com.fs.starfarer.combat.CombatMain.main(Unknown Source)
at com.fs.starfarer.StarfarerLauncher$1.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)[close]
Getting a instant crash to desktop whenever co-op partner hits their assigned shield/phase key while using phase ships.Spoiler425598 [Thread-4] ERROR com.fs.starfarer.combat.CombatMain - java.lang.NullPointerException
java.lang.NullPointerException
at data.scripts.coopcombat.CoOpShipAI.advance(CoOpShipAI.java:259)
at com.fs.starfarer.combat.entities.Ship$ShipAIWrapper.advance(Unknown Source)
at com.fs.starfarer.combat.CombatEngine.advanceInner(Unknown Source)
at com.fs.starfarer.combat.CombatEngine.advance(Unknown Source)
at com.fs.starfarer.combat.CombatState.traverse(Unknown Source)
at com.fs.state.AppDriver.begin(Unknown Source)
at com.fs.starfarer.combat.CombatMain.main(Unknown Source)
at com.fs.starfarer.StarfarerLauncher$1.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)[close]
Been playing a lot of Starsector with this mod recently since you fixed the phase cloak thing, thanks a lot for the mod and that fix! The whole thing works surprisingly well over something like Parsec even with 200 ping(as long as the connecting players stay away from agile frigates), and has been the source of many, many long running playthroughs with friends. I'd like to suggest some changes I think would improve it though.
Co-op players currently(as far as I looked) don't have the ability to use carriers properly, lacking a key to toggle 'engage' and 'regroup'. Player2's lock-on also doesn't have enough range to really make use of long range missiles like Pilums.
The dotted aiming reticle for co-op players is a bit difficult to see when zoomed out, even locally for me but especially over stream, making it hard to use really long range ships like Sylphon's planet cracker. It would be nice if there was a alternative more defined reticle or the ability to have a two color high contrast reticle to make it more readable in big fights.
Some bugs that showed up during playtime too.SpoilerBigger Scy Nation ship's like the capitals, when player2 is controlling them will vent at a certain flux level when not receiving direct damage as if being flown by AI. Every other function of the ships work fine.
Seemingly randomly autofire will turn off on potentially any ship regardless of player2's inputs, including them messing with autofire and holdfire in many combinations to try and fix it. The only fix I found is after the battle it happened in, to go into refit and flick the weapon group off autofire and then back on again. During the battle if the main player transfers into player2's ship when the bug happens, they will see autofire is all as normal and it will work fine but when player2 has control it stops working again. I will keep trying to see if I can find a way to reproduce this reliably but it's somewhat rare.[close]
Thank you so much again for such a great mod!
Sorry if I don't post very often, been a bit sick. All the changes last patch are great, being able to have a co-op partner in a battlecarrier and going after targets they sick their fighters on in a faster ship is a lot of fun. The reticle changes made it much easier to see over a stream and zoomed out all the way even when theres tons of fighters and explosions all over the place. Also I have yet to encounter the autofire bug with quite a lot of playtime, it seems your fix works, yay!
I would like to record some gameplay of me playing with a friend and our normal comms, but it'd be from a very heavily modded game if that's alright. Speaking of mods I don't know if I should put this in the Scy thread but, after using some of the other ships in the Scy mod theres something that causes a good portion of them when in the hands of player2 to auto vent randomly at 40% or so flux, like the AI is still in control of that function since it seems to be normal behavior for Scy ships to want to vent at that level whenever they have a opportunity.
How do Player2 and Player3 retreat? Player1 can retreat with enter, but player 2 and 3 just keep bouncing off the border.
Thanks for the quick reply. Trying to play a campaign with my friends, but we're pirates playing on a really difficult start, so no retreat is making it impossible.
Perhaps if there was a way for p2 and p3 to relinquish control back to the AI, they could do that and we could give a retreat order? Thanks for your hard work.
After using new version of the mod a lot with a few different people, encountered some more issues and have some ideas. But otherwise, have really been enjoying the ability to change ships (and off them) for the purposes of retreating and whatnot, makes having different CR times between players in long battles not that big of deal, because the other player can just hop into another ship while their old one retreats. Also has the fun effect of other players bailing the AI out of normally frustrating circumstances, like when the AI is being too passive or too aggressive, player2 takes control and can put the AI ship back into a favorable position.
Expand for bugSpoilerAfter testing it a lot, I have come to the conclusion that due to the fact playerships are typically under AI control and then selected, sometimes the AI messes with autofire groups turning some off, usually whatever it seems to consider the 'main' weapon group, IE the larges in a capital though sometimes its been things like Pilums, or a battery of medium weapons. To see this, if you watch the AI control the main players ship on autopilot, it toggles off and on autofire whenever it feels like it, on whatever groups the AI has decided it wants to do this with.
I imagine the AI just does this normally for every ship and so, whatever weapon groups are set to autofire at the moment of possession, are what player2 has, and not the autofire settings that were setup in the refit screen. Player2 toggling autofire on/off does not seem to fix this, neither does cycling weapon groups, only way to get around it is by being both fast and lucky, catching the AI before it messes with autofire settings.
I've had the AI turn off whatever weapon group Hephaestus Assault Guns and Storm Needlers were on with many ships as the best example I can give currently, I'm sorry I can't think of any exact vanilla ship/weapon combos that caused this to happen, its been a bit and since then I forgot the exact ships/weapon loadouts from the tests I did, it was fairly common though in normal play.
An issue where fighter wings assigned to ships with hangers in separate modules don't obey player2's target, they still obey attack/regroup, but attack whichever target they want.
There are also these various AI issues that I assume have to do with AI override stuff and other scripting things, where the AI has control over a function even while the ship is in the hands of player2, All SCY Nation ships vent whenever the AI wants, all Knight's Templar ships Priwen Burst whenever the AI wants, Some ships with special systems like a few Seeker ships have their inputs solely given to AI instead of player2 making them impossible to use. I don't know if you have the ability to fix these or not, but just thought I'd point them out incase there was a way, there's quite a few ships with hardpoints or inbuilt weapons in those mods that would be quite fun for coop players, but are effectively unusable because of these issues.[close]
Also a few feature requests.
A target previous button as a option, as cycling through 10+ frigates again to target the one you want if you accidentally go past it takes a bit.
A indicator for whether or not fighters are on Attack/Regroup, in the chaos of big fights it can be easy to forget what setting they are on or see what exactly they are doing at a glance.
A way to see flux/hull levels on player2's ship if possible would be cool too, since the base-game UI that shows that for allied ships can be hidden quite often, at least anything that would help show whether or not player2 is winning their flux battle with a enemy ship if the main player is too busy to mouse over them, as suddenly pausing to check can be disruptive for player2's gameplay flow, especially with the latency of playing over a stream.
A way to possibly control omni-shields, either manual rotation with keys, maybe bindable set facings, or some other form of additional control for omni shields, like locking to the target, as the shield AI likes to get distracted by practically harmless frigates often, instead of real threats.
This is amazing feedback, thanks for taking the time to write it up!
My life is pretty hard right now so I'm not sure when I'll be able to get to this. The next time I have a chance to make changes to this, I'll look into all of your suggestions and issues and see what (if anything) can be done about them.
Thanks!
Awesome mod btw, thank-you for updating, I've been playing with a friend over Parsec.wait hold on, are you implying it's already working like this for you?
In theory it should be possible to play multiplayer game by casting your screen to another player player and using couch co-op controls. Obviously with lags, but for certain ships *coughparagon*cough* it might just work. No Alex's dev time needed.
UPDAwesome mod btw, thank-you for updating, I've been playing with a friend over Parsec.wait hold on, are you implying it's already working like this for you?
How do talents apply? Does the person taking over a ship get the officer on the ship's talents or the main characters talents?
Is there any detector if a weapon group is set to autofire or not? Haven't noticed it. If there is not - can it be added then please?
Also. Just tried Ambush mission and phase assault frigate antimatter blaster turret doesn't work in automatic mode for some reason. I set it to group 2 but that didn't help either.
Sorry for the necro, but after having a lot of fun playing this for dozens of hours into a campaign, I've suddenly run into a game-stopping bug.Not a necro, the mod still works!
I'm playing as player 2, and despite not having this problem for the first 30-40 hours of the campaign, suddenly any ship that I use disables autofire on weapon group 2.
I tried switching to weapon group 2 and enabling autofire, but it disables it again as soon as I switch away.
I double checked to make sure autofire is enabled in the loadout and it is enabled.
I couldn't replicate this in simulator, and I recall that it started happening just as we joined a large fight with lots of non-player allies and enemies. For some reason the mod didn't remember what ship I had selected and I had to flip through ships until I got to mine, and I noticed that my guns weren't firing shortly after that.
If there's any further information that might help let me know.
Sorry for the Necro anyone seeing this because of it. I'm having issues with "Insert"ing player 2. I Changed the key to see if that works and have tried many times to get it to work. Before I assume this mod is broken by the sands of time, when do you push the insert button exactly on the deployment screen?
I was and did, nothing happened/worked. I tried every combination, the AI remains in control and I tired switching keys afterwards. Do I click on the ship I want player 2 to take over on the overview map? Like play by play me every click and button please.Sorry for the Necro anyone seeing this because of it. I'm having issues with "Insert"ing player 2. I Changed the key to see if that works and have tried many times to get it to work. Before I assume this mod is broken by the sands of time, when do you push the insert button exactly on the deployment screen?
This coop combat mod still works. Are you using the default configuration? Use it by pressing the Player2 key when combat starts. Try it in the simulator and make sure you have two ships deployed.
Will this be updated for the new patch, or will it work still with .96? I'm new to starsector and wanted to play this with a friend, but I saw that this wasn't up to date
So this allows players to play in combat but do they also show up on the main map? Is it possible to basically mod in a co op? Thanks in advance. :)
So this allows players to play in combat but do they also show up on the main map? Is it possible to basically mod in a co op? Thanks in advance. :)
Unfortunately not.
So this allows players to play in combat but do they also show up on the main map? Is it possible to basically mod in a co op? Thanks in advance. :)
Unfortunately not.
worth asking. A co op would certainly be fun in the game. :) Thanks for the work you have done so far!