Jump to content
Stray Fawn Community

My opinion on splitters and connectors in logic behavior has evolved a little. I'd like your opinions and challenges, too.


Lurkily

Recommended Posts

Mister The Man and I discussed this a lot, in various threads.  I want folks to try and poke holes in this.  Try and break my opinion, and we'll see if it's broken somehow, or if something cleaner doesn't emerge.  This isn't going into part requests, because this already exists there, and I just want to discuss how the function should work.

I'm exploring this with the assumption that logic will eventually become localized.

I think we need to break connectors into a transmitter/receiver part.  Any signals visible to the transmitter (poll the closest logic hub for this) would be replicated at any receiver, as if a button were being pushed there, so that parents could read it.  Transmitters would have a list of keys and tags, with the option for these to represent either a whitelist or blacklist for what will be transmitted.

I think this is simple, self-explanatory, requires no explanation of how connectors behave, and grants you control over the direction signals travel, AND which signals travel.

So give me a situation this cannot handle, or cannot handle gracefully.  Challenge this architecture, and then we'll refine it, or we'll wrack our brains for an alternative.

 

  • Like 1
Link to comment
Share on other sites

Someone who played the game at the state that it is now and then left for a while and came back after this was implemented might get confused, but that might happen on any change involving anything whatsoever, so I don’t think that that really counts, but it was all that I could think of.

Link to comment
Share on other sites

What does « localised logic » mean?

Also: would transmitters act as splitters, since they could blacklist signals? In other words: would transmitters be used to avoid transmitting?

Would I need to have one splitter, then one receiver, then one splitter, then one receiver, then one transmitter, in this order, to have a secondary, introvert drone (no crosstalk) that I could send to fetch a ball (receive some signals)? No I would not.

How about we just have tags bypass splitters (less than ideal)? Or have logic hubs enclosed between splitters rather than splitters and/or connectors (letting signals pass through connectors and up to splitters, for example)?

Link to comment
Share on other sites

27 minutes ago, Ookami-sama said:

What does « localised logic » mean?

Also: would transmitters act as splitters, since they could blacklist signals? In other words: would transmitters be used to avoid transmitting?

Would I need to have one splitter, then one receiver, then one splitter, then one receiver, then one transmitter, in this order, to have a secondary, introvert drone (no crosstalk) that I could send to fetch a ball (receive some signals)? No I would not.

How about we just have tags bypass splitters (less than ideal)? Or have logic hubs enclosed between splitters rather than splitters and/or connectors (letting signals pass through connectors and up to splitters, for example)?

Localized logic is logic that works like fuel/energy, as in it has to be connected.

the receivers and transmitters would NOT block signals, only the splitter would do that. Receivers and transmitters would act as any other logic block, communicating with the local hub, which communicates with everything else.

for a more complete Idea of how this would work, see:

 

Link to comment
Share on other sites

MtM has it right; localized logic means that logic requires a physical connection to transmit signals; decoupling a drone would cut it off from all signals, unless you include a wireless connection.

In this architecture, splitters would be the only thing that split signals.  Transmitters would query the hub, such as the brain, for signals, and would provide whitelisted signals, or those not blacklisted, to any receiver that asks.  Receivers would query all transmitters for signals, and pass those up to their local hub.

In short, receivers would talk to EVERYTHING they're connected to, and signals would cross a transmitter in all directions freely.  Connectors of any type would not split any signals.

Link to comment
Share on other sites

Either transmitters can hold the white/black list, or the receiver, but both don't require it.  I think the transmitter is a better place for it.  The receiver is taking the sum of all transmitter signals, so I think keeping needless signals out of the air is more useful.

Truthfully, though, I don't see any reason why both should not have a whitelist and blacklist.

Link to comment
Share on other sites

I think that receivers should have the filters. If the transmitters had the filter, then you couldn’t send a different set of signals to two different drones. The opposite would be impossible if the receivers had the filter, though that is much harder to describe and I can’t think of any reason why it would be useful. But maybe both should have filters, just to be safe.

Link to comment
Share on other sites

As for localised logic, as you call it, it does not really make sense for signals to be sent through wires rather than the air (wires, because your drone very much needs to be electrically insulated, so sending signals through the hull material is not an option). Even radio signals are vastly superior to any long-range physical connection in about any area, barring perhaps transmission through dense matter where radio signals are only slightly better: the signal might not reach too well with wireless, but it will not reach at all with wires unless you bore a hole through said dense matter. Good luck with that.

Otherwise, a blacklist for a sort of repeater/transmitter would be useless from the moment you need to hide more keystrokes than your blacklist can hold. If one repeater blocks N and K, another P and I, then each antenna/receiver would fetch P and I from the first, plus N and K from the second. I.e your blacklist's purpose is defeated. Same with a whitelist, which purpose would be defeated with two repeaters (allow P & I, not the rest + allow N & K, not the rest = allow P, I, N, K).

Repeating what I wrote above: what would the addition of several parts, possibly with a number of settings so as to make them helpful at all, make possible and/or easier that a slight rework of logic hubs would not, especially when this idea of yours comes with such redesign in mind?

Also, how do you determine the length of a blightlist (black and/or white, in brief)? Four hidden keys are way too few considering the number required for basic logic (one OR gate is three keys), so salvation will only be found in a rather large list of accepted keystrokes. Still, how many? 5? 10? 42? 666? And how do you navigate through them?

On a scale from « Computing Grail » to « Neutral » to « End of Hope », with all nuances in between, how would you rate the impossibility to drop 30 logic gates at the start of a mission and instead have to carry them around?

Link to comment
Share on other sites

2 hours ago, Ookami-sama said:

As for localised logic, as you call it, it does not really make sense for signals to be sent through wires rather than the air (wires, because your drone very much needs to be electrically insulated, so sending signals through the hull material is not an option). Even radio signals are vastly superior to any long-range physical connection in about any area, barring perhaps transmission through dense matter where radio signals are only slightly better: the signal might not reach too well with wireless, but it will not reach at all with wires unless you bore a hole through said dense matter. Good luck with that.

To see the arguments for localized logic, look here:

2 hours ago, Ookami-sama said:

Otherwise, a blacklist for a sort of repeater/transmitter would be useless from the moment you need to hide more keystrokes than your blacklist can hold. If one repeater blocks N and K, another P and I, then each antenna/receiver would fetch P and I from the first, plus N and K from the second. I.e your blacklist's purpose is defeated. Same with a whitelist, which purpose would be defeated with two repeaters (allow P & I, not the rest + allow N & K, not the rest = allow P, I, N, K).

I’m assuming that when you are saying repeater that you mean receiver.

If you have to many keys to fit in a blacklist, then you can use multiple whitelists. Each signal that you dont want is blocked, and each that you do is allowed through.

3 hours ago, Ookami-sama said:

Repeating what I wrote above: what would the addition of several parts, possibly with a number of settings so as to make them helpful at all, make possible and/or easier that a slight rework of logic hubs would not, especially when this idea of yours comes with such redesign in mind?

It would not be such a large redesign. Yes, we would be scrapping all of the work that went into the logic connector, but this could be implemented by adding a list of signals “in the air”, that would work kind of like a hub that only transmitters and recievers could access. The transmitters determine what is in the list from thier local hub, and the recievers look at the list to determine what signals to send to thier local hub.

3 hours ago, Ookami-sama said:

Also, how do you determine the length of a blightlist (black and/or white, in brief)? Four hidden keys are way too few considering the number required for basic logic (one OR gate is three keys), so salvation will only be found in a rather large list of accepted keystrokes. Still, how many? 5? 10? 42? 666? And how do you navigate through them?

Typically, most logic outputs are only needed by a few logic gates that are in the same place as them, so yes, an or gate uses 3 signals, but a single segment of a binary calculator (5 gates) only needs a total of 5 inputs and outputs to work. One of those inputs is an output from the previous segment, so 2 segments is only 7 inputs/outputs.

The number of maximum gates in a list should be small enough that you can see all of them without any special navigation features. I think that 8 is a reasonable number.

3 hours ago, Ookami-sama said:

On a scale from « Computing Grail » to « Neutral » to « End of Hope », with all nuances in between, how would you rate the impossibility to drop 30 logic gates at the start of a mission and instead have to carry them around?

Most of the gates probably only have to interact with eachother, so just stick two-ish whitelisted transmitters on them and there you go.

Link to comment
Share on other sites

Thinking about it, it does seem like logic signals travel through a net of wires, which act as antennas when their neighbours are not so near any more. Which is technically possible, I imagine, but really makes me reconsider what place actual logic occupies in the development of a number of games. No wonder Assassin's Creed games are so messed up...

A repeater is a transmitter in my vocabulary. A signal amplifier, or a relay, as you wish. I believe you could not make use of a list of allowed/restricted signals on a repeater, only a whitelist on an antenna (also called « receiver »), for the reasons I stated.

Please forgive my tries to find synonyms to repeated words: my native language makes me despise duplicates, if only in my own speech.

I might come back with more questions if the devil makes me her advocate again.

Link to comment
Share on other sites

A repeater would be both a receiver and a transmitter; it's typically only for extending the range by listening for a signal, and, well, repeating it, so a repeater or receiver further down the line can pick it up.  I apologize if you weren't asking for clarification, but I wasn't sure.

Right now, logic outputs are sent up the hierarchy of parts; if there's a decoupler, or factory, it doesn't matter - it keeps following the hierarchy to the brain or the first splitter.  When looking for an input, a part follows that same hierarchy, and asks the first splitter or the brain for those signals.

If logic were local, decouplers and factories would become hubs when decoupled.

Link to comment
Share on other sites

For one thing, a lot of us engineering types are a little OCD, and don't like our finely crafted machines having blemishes just hanging on them for no reason other than that they once were useful.  For another, explosive decouplers are a request that's recurred a few times.  (Edit: In fact, the decouplers originated in requests for explosive-bolt-style separation, if I recall correctly.)

It seems like a trivial change to make them consume themselves instead of hanging on like a zit on your well-oiled machine.  I wouldn't say it's important enough to spend a lot of time on, but if it is trivial, I know what I prefer.

To get back to the subject at hand, what it WOULD do is remove a hub, if decouplers acted as hubs when decoupled.  So, like factories, if that were implemented, the direct children would have to become hubs.

Link to comment
Share on other sites

13 hours ago, Ookami-sama said:

On a scale from « Computing Grail » to « Neutral » to « End of Hope », with all nuances in between, how would you rate the impossibility to drop 30 logic gates at the start of a mission and instead have to carry them around?

 

I missed this earlier.  An empty blacklist typically results in nothing blacklisted, all requests approved.  In this setting, a transmitter with an empty blacklist would carry all signals.  You could use a whitelist on a transmitter and a blacklist on a receiver, but there's no clear precedence when they're processed at the same time, and you typically only need one or the other.

EDIT: Whitelists and blacklists don't mix; you use either one of the other.  Whitelist means only listed signals can pass.  Blacklist means anything EXCEPT listed signals can pass.

Link to comment
Share on other sites

I think empty blacklsit being the default is probably easier.  For the UI's sake, you can have the whitelist/blacklist selection appear to be blank until you click the arrows to toggle between them.

  • Like 1
Link to comment
Share on other sites

So, this would require all drones not connected to the core to have a receiver in order to receive commands? Would the receiver be any more robust than the other logic blocks? I ask because small drones tend to get low hp parts destroyed at a much greater rate than the big ones. Ideally, I'd prefer not to have any logic blocks on drones subject to danger.   

Link to comment
Share on other sites

Logic is actually kind of robust; all logic blocks and every 2x2 sensor has as much HP as the small armor block does, 1000 HP. It's on the low end of the middle ground, but it is pretty middle ground.  They're exactly as tough as thrusters or guns.

Connectors as well, currently have 1000 HP, but i expect that HP amounts, being pretty generic and footprint-based, will get heavily rebalanced at some point.

Link to comment
Share on other sites

The lowest hp I'm aware of is 400 and the highest is 4k. Logic blocks are at 1k, but 33% larger than thrusters and twice as large as guns, making them less tough than either one. Additionally, losing a thruster or a gun rarely leaves a drone useless like it could for a drone dependent on a receiver. 

Would it be inaccurate to state that this change would lower small independent drone survival rates?

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...