Player detection for circuit network
Posted: Mon May 01, 2017 8:29 pm
TL;DR: I'd like an entity to be able to detect the player, like gates, but without the "activates if the player is 10 tiles away and running towards it" mechanic. Am willing to send doughnuts to the Factorio office as a bribe.
--------
I'm currently playing around with some fun ideas for circuit networks, and I've noticed that there's one major thing that's difficult to detect properly: the player.
Currently, as far as I can tell, the only option is to detect the player using a gate. This works really well for proximity (gates open and stay open if the player is within 3 tiles), but has a major undesirable quirk: the gate will open (and send a signal) if the player runs towards it from, as far as I can tell, up to 16 tiles away. That makes it virtually impossible to have a consistent detection for player proximity.
For example, I'm currently making a timed maze puzzle for multiplayer: you enter the start box and the gates close behind you, while the gates to the maze open. You run through the maze as fast as you can to the end box, at which point your time is recorded and you can exit. This works great with proximity: but causes issues because you can't be sure if the player is actually inside the box, or just near it.
There are some ways to try to work around it (eg starting a timer when the player is detected, to ensure they stay within range for ~5 seconds before starting), but they're a bit messy: a proper mechanic for detecting the player would be far, far better.
Please could we have either a new entity for detecting the player (ideally with an ability to adjust the range), or perhaps even just a toggle on gates to only detect players who are currently within proximity, while not opening for players who are further away?
--------
I'm currently playing around with some fun ideas for circuit networks, and I've noticed that there's one major thing that's difficult to detect properly: the player.
Currently, as far as I can tell, the only option is to detect the player using a gate. This works really well for proximity (gates open and stay open if the player is within 3 tiles), but has a major undesirable quirk: the gate will open (and send a signal) if the player runs towards it from, as far as I can tell, up to 16 tiles away. That makes it virtually impossible to have a consistent detection for player proximity.
For example, I'm currently making a timed maze puzzle for multiplayer: you enter the start box and the gates close behind you, while the gates to the maze open. You run through the maze as fast as you can to the end box, at which point your time is recorded and you can exit. This works great with proximity: but causes issues because you can't be sure if the player is actually inside the box, or just near it.
There are some ways to try to work around it (eg starting a timer when the player is detected, to ensure they stay within range for ~5 seconds before starting), but they're a bit messy: a proper mechanic for detecting the player would be far, far better.
Please could we have either a new entity for detecting the player (ideally with an ability to adjust the range), or perhaps even just a toggle on gates to only detect players who are currently within proximity, while not opening for players who are further away?