#Wireless Transmitters & Receivers (and ways to make them viable)

50 messages · Page 1 of 1 (latest)

limpid kelp
#

And how to resolve potential security/moderation concerns!
there's a few ways i could think to resolve the security issues that might come with a transmitter/receiver

  1. a way to toggle on (with the connector) wireless links, so that you can still follow wireless links like a wire, but have them hidden generally

  2. Making Wireless Gates, the ability to create new frequencies, and the ability to connect to an existing frequency a separate build permission

  3. tools that allow you to teleport to & eliminate entities or wires/components that are causing too much lag

  4. A menu that allows you to view, disable or teleport to receivers and transmitter on a specific frequency, the menu would show all frequencies used on the server

  5. make it so that prefabs do not accept receivers as a brick, or are disabled when first loaded in (extreme option to prevent instant prefab communication, largely unnecessary with the previous implements)

  6. a per-player tick update detector that reports tick lag on a per-player basis (factorio has this but with UPS - updates per second on a per game mod basis, helps find laggy mods) - largely unnecessary, but being able to see what player is causing the most lag would help moderation.

all of these would work on their own, but combined would make a pretty good array of tools for catching entity & wire lag, thus making transceivers & receivers something that could be done with next to no security/moderation risks

I will also mention that currently there is nothing stopping people from doing the same security problems that a wireless-transmitter would amplify, they will not cause issues inherently. Being able to follow a wire does not stop someone from breaking the game using gates and wires.

Wireless circuits also allow things that just aren't as accessible to make now

Vehicle homologation without needing thousands of wires that stretch across the map
Additive circuitry that can react to a new member on a frequency without serious rewrites
Circuits that can accept inputs from a map-wide public circuit
Vehicle communication in general, that doesn't damage other's ability to build

If wires have no collision, why would this be needed?

Because wires have visuals still. This is particularly apparent on large servers with teleporter systems and vehicle-return teleports. Wires will go absolutely anywhere, and often interfere with other's ability to build, and the longer a wire, the more likely that it passes through someone else's builds and gives them confusion that might otherwise turn them away from building on a server.

Rerouters cannot solve this issue as you just cannot have a rerouter system that accounts for every permutate location a vehicle can be, and those wires can cross through several people's builds. You cannot hide these wires currently while building, so they will absolutely run through other people's builds, and be a general building nuisance. I've encountered this problem myself on servers where you have a random wire in your build that you cannot account for, and when you investigate it, it's not even your wire, & the culprit moves/teleports before you find it. People can also use this to grief others by having a vehicle with a hundred or so wires, all hooked up to a single point on the map. While these wires aren't visible without tools, with tools they clutter the view and make it impossible to work.

A Wireless system resolves wires clashing with people's ability to build, and allows long range teleporters, or vehicle return systems to not clutter the view with hundreds of wayward wires.

gilded ice
#

Tbf the griefing will still happen even if wireless stuff was a thing. But at least having the option to hide wires would be nice
Would be cool to be able to toggle on/off other peoples’ wires visibility and/or hide your wires from others by default

limpid kelp
#

a lot of the security pitfalls can be alleviated with the right countermeasures, and i wanted to stress that in this post

strange swift
#

I would absolutely love wireless circuits. And in fact, I think they would be needed to bypass the only reason why variables can't really be used for a server wide circuit that anyone can connect to. You wouldn't need a trust permission to set your frequency to listen to it

#

You could maybe require trust to write to it... or perhaps the wireless gate could have a condition that makes the frequency writable to only certain roles

marsh monolith
#

I still have no idea why they're so paranoid about security and such.

  1. They would probably be more useful in a non-freebuild server anyway. Where the builders would have full control over what gets sent where.
  2. Even if used in freebuild servers, you could have a setting on the component that can choose permissions. Either owner only, trusted only, or everyone.
  3. If they need a demonstration of this being used in another game without any issue, Second Life has been around for over two decades. I've never had any of my scripts interfered with, even if they're just listening on a channel with no other filtering. Yes, there have been cases where I've seen it happen. But that was due to a script using a random channel between 1-100 on one person, and another script using a specific channel between that range on another person.
  4. Even with all this considered, and there's still security concerns over our circuits, why not just let us have it anyway? It's just the circuits that are affected. And only on freebuilds, or some weird edge case from a prefab or something. I think the positives strongly outweight the negatives.
strange swift
#

Actually, another thing. I think wireless transmitters would be the only way to do things like physics entities that are spawned act in time with some external control circuit

limpid kelp
#

because im not denying there are security issues with prefabs communicating with each other

#

but again you can stop that by making wireless another permission, disabling the receiver brick from being allowed in prefabs, giving mod tools that make finding these gates easier

strange swift
#

Actually, a question. What is the main issue with prefabs communicating with eachother?

limpid kelp
#

I don't exactly know, but i imagine it's being able to spam lag prefabs

strange swift
#

Ah

limpid kelp
#

or a prefab silently communicating with another prefab to cause lag

strange swift
#

Or I suppose maybe entity spawner stuff but that should be disabled if the player doesn't have the permission and is less an issue with communicating between prefabs

limpid kelp
#

which. is still a problem regardless if we have wireless or not because a griefer isn't going to be fussed about connecting 1 wire to make their lag machine work

#

bots are a bigger lag machine than the circuit system could ever be

#

but we aren't removing bots for security concerns

#

but at the same time i can't really make any argument for or against the prefabs communicating problem

#

as i don't rightly know how that is a security concern, that wouldn't still be a security concern if wireless didn't exist

strange swift
#

I wonder if the reason is less lag prevention and moreso that someone pasting a prefab with wireless could unintentionally connect with other builds on the server

#

Like, being unable to stop someone from connecting and writing whatever they want

limpid kelp
#

make frequencies player instanced then? as in luna1 luna2

strange swift
#

But that's solvable with local channels being allowed only without the right permission

limpid kelp
#

and when pasting a prefab, clear it's frequencies if they don't match any frequency on the server

strange swift
#

A side note, wireless logic would also allow for multi to multi teleporters actually feasibe without making an awkward inbetween step. If you can change what channel it reads, that is

limpid kelp
#

i want it simply because it allows things that otherwise couldn't exist

#

and that's mainly in the more advanced logic

strange swift
limpid kelp
#

you can with frequencies do systems that react to the number of circuits on a system

#

so you can make a reactive circuitry that can adapt if more receivers are added to it

#

so that if you say have a bunch of roombas, you can (with a get position/ get velocity gate we so desperately need) record their positions and use them for some math that allows the roombas to not crash into each other

#

and have that system react to there being more or less roombas on the network without significant rewrites

#

you can't exactly do that rn because if you were to make a dynamic system like that, you'd have to wire everything back, when a frequency could just send the values needed for it all to work from the transmitter to all receiving circuits

#

there's also the use case of having race tracks with cars that have enforced stats or return teleporters

so many wires going everywhere that you just can't see what you're doing if you're in the vicinity of it

#

honestly the more circuit examples we come up with, that would not work without wireless, the more that this kind of gate seems necessary

#

if we have a large enough list of circuits it would make possible, then they might reconsider they're position on the security issue (same thing here if we come up with solutions that might resolve the security issues)

strange swift
#

It basically had 5 drones that could be fully controlled remotely, and you could choose which one was being used

#

You could even do time division multiplexing

#

You would either use a value that would enable other values to pass, or you would change the frequency

#

Either way, it let you make arbitrarily scaled communication systems that could automatically set themselves up

gilded ice
#

Idk if there’s much of a security issue with the current features we have but it’s probably pretty handy from a design standpoint to have all prefabs’ wires effectively sandboxed when users place them.
But yeah there should be ways to do frequencies and have trust etc that still let them be sandboxed

patent stone
#

I would personally really like the receiver/transmitter pair because it would make working with variables significantly easier
the current way you work with variables is almost comparable to referencing them not by name but by line number, with the way you're referencing a specific brick
a receiver/transmitter pair would allow one to reference a variable by "name" (frequency) rather than by having to manually connect it to the brick itself
I also think an interesting solution to the "security" problem would just be looking at how actual scripting languages treat scope, maybe a setting on the gates to determine where they transmit to/receive from? I.E by brick owner, owner trusted, whole server, brick grid, etc

marsh monolith
# strange swift Actually, a question. What *is* the main issue with prefabs communicating with e...

Wirelessly? That any player could theoretically connect a transmitter to any receiver and mess with unexpected values or received signals. But if we can use an int64 channel, the chance of doing this unintentionally is extremely low. And then intentional griefing would only really happen in freebuilds (still highly unlikely, by the way). In which, your circuit with a wireless receiver is likely much less important to the integrity of the server.

strange swift
#

Where each user cannot affect other users stuff, and admins have access to creating global channels

marsh monolith
# strange swift I mean, that's why you use user based channels

They mentioned that this wouldn't stop gallery prefabs since they would get pasted in under your ownership. But I'd also like the user based thing to be an optional thing the user chooses anyway. Because yeah, still strongly believe the positives of the system highly outweighs the negatives.

limpid kelp
#

I imagine with permissions you can have it so that a person cannot create new frequencies

and when they paste in a prefab it'll give a warning saying that it won't let you paste it in because it violates that permission