Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

support multiple subs for ending the round #12903

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

deltanedas
Copy link

Currently if you play with multiple subs (I am working on a mod that does this) you can only use the main sub to dock to the outpost.
This PR lets you use any player-team sub to end the round, meaning:

  • You can use drones or escape pods as a last ditch effort to save the round facing certain death in the sub
  • If your "sub" is actually multiple subs glued together, any of those sub parts can dock to it (basis of my mod)

PvP is unaffected and I believe pirates use a different team id, so pirates spawning at natural formation end zone shouldn't do anything to the round.

@DrBruhman
Copy link

cool feature will be to finish round if any sub docked with n% player-team crew on board.

Copy link
Collaborator

@Regalis11 Regalis11 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This does look like a potentially cool feature! I'm not entirely convinced the current approach is enough to implement this though.

Does this handle swapping the submarine, i.e. that the vessel you dock with becomes the new main submarine and the others get left behind? It also seems that this is only implemented in the server-side round ending logic, in my opinion the behavior should be the same in both single player and multiplayer.

@deltanedas
Copy link
Author

Does this handle swapping the submarine, i.e. that the vessel you dock with becomes the new main submarine and the others get left behind?

how i have it, non-main subs at the end area should not be left behind.

It also seems that this is only implemented in the server-side round ending logic, in my opinion the behavior should be the same in both single player and multiplayer.

where would i add logic for singleplayer? i thought it was run on dedicated srrvers and solo play

@Regalis11
Copy link
Collaborator

Regalis11 commented Jan 9, 2024

how i have it, non-main subs at the end area should not be left behind.

What I mean is that if your main sub is laying at the ocean floor, and you make it to the end outpost on a drone or an escape pod, the main sub should in my opinion be left behind (and you'd need some way to retrieve/replace it). Otherwise it would be easy to abuse this feature by just always breezing through the level on a drone. This partially works already, but there are several issues with it that still need to be addressed:
#4610
#3604.

where would i add logic for singleplayer? i thought it was run on dedicated srrvers and solo play

The code you've edited only affects the server, so it wouldn't work in solo play. I'm not entirely sure what would be the appropriate place to define the logic, but preferably the single player and multiplayer should reuse the same code. I believe figuring out (or adding) the proper place for it would be a part of the non-trivial amount of work in getting this feature implemented, and I'm afraid I currently don't have the time to start investigating it. :/

@deltanedas
Copy link
Author

if your main sub is laying at the ocean floor, and you make it to the end outpost on a drone or an escape pod, the main sub should in my opinion be left behind

agreed, you should only keep all subs if they all make it (either individually piloted or docked together). if the main sub was not at the end zone a way similar to drone replacement could be used to replace any lost sub(s) but until then setting whatever sub docked as the main sub.

i assume that theres no shared client-server logic so that would take a lot of future work to get it going...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants