Need an API to allow seeing multiplayer cursors even when other forces are not your friends.
I am actively working on a mod called Solo-Teams (https://mods.factorio.com/mod/solo-teams) that facilitates multiplayer mode.
One of the issues I am facing is that I need players to be able to see who is looking over their base, even though those other forces are unfriendly. Keeping them unfriendly is an important part of the game, yet I want players to have knowledge if they are being spied on in a certain area.
Disconnect multiplayer cursors from friendship status
Re: Disconnect multiplayer cursors from friendship status
This seems very close to an XY problem.
* Players can only see areas they have active radar coverage of
* Player cursors are only relevant when they select something
* A player doesn't have to have anything selected while viewing any area
* A player can make a pin of any area they want and view it without physically being there (provided they have radar coverage of the area)
So what you're asking for doesn't really make any sense as it's not going to fix the underlying issue(s) you're trying to address.
* Players can only see areas they have active radar coverage of
* Player cursors are only relevant when they select something
* A player doesn't have to have anything selected while viewing any area
* A player can make a pin of any area they want and view it without physically being there (provided they have radar coverage of the area)
So what you're asking for doesn't really make any sense as it's not going to fix the underlying issue(s) you're trying to address.
If you want to get ahold of me I'm almost always on Discord.
Re: Disconnect multiplayer cursors from friendship status
My mod creates separate forces for players, each with their own surface. Players can navigate to other surfaces via GPS tags printed in chat. Remote view opens on the foreign surface, no radar coverage needed, no friendship set.
So the premise that "players can only view areas with radar coverage" doesn't hold here. Remote view (via GPS ping) across surfaces bypasses that. Players are already inspecting each other's bases freely.
The problem:
When Player A is remote-viewing Player B's base, Player B has no idea. Cursors require set_friend, and set_friend is too heavy, it bundles chart sharing, entity visibility, and cursor visibility into a single boolean. For competitive or semi-cooperative mods, that's not an option.
What I actually need:
A way to make multiplayer cursors visible between forces that are not friends. Something like force.set_cursor_visible(other_force, true), just cursors, nothing else. Players are already looking at each other's stuff; I just want both sides to know it's happening.
So the premise that "players can only view areas with radar coverage" doesn't hold here. Remote view (via GPS ping) across surfaces bypasses that. Players are already inspecting each other's bases freely.
The problem:
When Player A is remote-viewing Player B's base, Player B has no idea. Cursors require set_friend, and set_friend is too heavy, it bundles chart sharing, entity visibility, and cursor visibility into a single boolean. For competitive or semi-cooperative mods, that's not an option.
What I actually need:
A way to make multiplayer cursors visible between forces that are not friends. Something like force.set_cursor_visible(other_force, true), just cursors, nothing else. Players are already looking at each other's stuff; I just want both sides to know it's happening.
Re: Disconnect multiplayer cursors from friendship status
Remote view can not view areas that are not actively explored by radar coverage. Force chart sharing is not enabled by default.
So it sounds like you’ve shared charting everywhere when you don’t actually want that.
So it sounds like you’ve shared charting everywhere when you don’t actually want that.
If you want to get ahold of me I'm almost always on Discord.
Re: Disconnect multiplayer cursors from friendship status
ok you're right that remote view normally requires radar coverage, but I dug into why players can see everything in my current Platformer run. And found the answer: god controller mode.
The Platformer mod (which Solo Teams is using currently) destroys the player's character entity on spawn. With no character, players are in defines.controllers.god, which grants full map vision on any surface... no radar, no chart sharing needed. I confirmed there are zero calls to share_chart, force.chart(), or any chart-related API in either Solo Teams or Platformer. The god controller is what bypasses the radar requirement entirely.
So the chain is:
Platformer destroys the character, player enters god mode
Solo Teams gives each player their own force + surface
Players click GPS tags to remote-view each other's bases
God mode means they see everything, no radar needed
This is why I still need a way to show cursors without set_friend. Players are already seeing each other's bases (god mode guarantees it), but neither side knows when they're being observed. set_friend would solve cursors, but it bundles in building access and turret behavior that I don't want, the diplomacy semantics change for something that should be purely visual.
Also, another question is... lets say there is no god mode involved. How can I let one player share_chart see another player's base without friendship?
I think it brings us back to this earlier request: viewtopic.php?t=124553
The Platformer mod (which Solo Teams is using currently) destroys the player's character entity on spawn. With no character, players are in defines.controllers.god, which grants full map vision on any surface... no radar, no chart sharing needed. I confirmed there are zero calls to share_chart, force.chart(), or any chart-related API in either Solo Teams or Platformer. The god controller is what bypasses the radar requirement entirely.
So the chain is:
Platformer destroys the character, player enters god mode
Solo Teams gives each player their own force + surface
Players click GPS tags to remote-view each other's bases
God mode means they see everything, no radar needed
This is why I still need a way to show cursors without set_friend. Players are already seeing each other's bases (god mode guarantees it), but neither side knows when they're being observed. set_friend would solve cursors, but it bundles in building access and turret behavior that I don't want, the diplomacy semantics change for something that should be purely visual.
Also, another question is... lets say there is no god mode involved. How can I let one player share_chart see another player's base without friendship?
I think it brings us back to this earlier request: viewtopic.php?t=124553
Re: Disconnect multiplayer cursors from friendship status
So to repeat the earlier problem statement:
I would like to be able to share my team's charting with another team, but also I do not want to allow the other team to be able to interact with my logistics or mess up my requests or rotate some inserter.
Basically the request is the disconnect `share_chart` from `friend` status.
There has been some missing in this area that makes it hard to create some flexible multiplayer experiences, thats why this keeps coming up repeatedly.
I would like to be able to share my team's charting with another team, but also I do not want to allow the other team to be able to interact with my logistics or mess up my requests or rotate some inserter.
Basically the request is the disconnect `share_chart` from `friend` status.
There has been some missing in this area that makes it hard to create some flexible multiplayer experiences, thats why this keeps coming up repeatedly.

