WIFI blocker

  • Made2Shred
    21st Jan 2011 Member 0 Permalink
    -1 would be a bitch to code
  • deleted-account
    21st Jan 2011 Member 0 Permalink
    -1 Would be proven too useless and non-productive under most circumstances.
  • Finalflash50
    21st Jan 2011 Banned 0 Permalink
    This post is hidden because the user is banned
  • tommig
    21st Jan 2011 Member 0 Permalink
    its good +1, but it probably would spack up the code -1, and uselees for anything else -1, so overall -1. i'd come back when i'd thought up some other uses. :-s
  • Dragonfree97
    21st Jan 2011 Member 0 Permalink
    @webb
    Seriously, what?

    +1
  • Cr15py
    21st Jan 2011 Member 0 Permalink
    Possibly FARA, like a faraday cage. However, cracker makes a point. Although I don't develop for Powder Toy(so I don't know how the system works), I will make the assumption that by using the tracing system(or whatever it is reffered to as) that draws lines between WIFI in debug mode we could determine if there is any FARA in the way. Also, might I suggest that FARA's temperature determine what "frequency" of WIFI it blocks(which would be in accordance to WIFI channels).

    EDIT: Maybe it could be activated and deactivated so that it has a use.
  • jacksonmj
    21st Jan 2011 Developer 0 Permalink
    The current system works using an array, with one array element for each channel.

    Each wifi particle checks whether there is a spark nearby. If there is, the array element for that channel is set to 1. Otherwise, if the array element for its channel already equals 1, then nearby particles get sparked.

    (The actual code is slightly more complicated, since it also has to deal with turning channels off again at the right time, but you get the idea)

    At no point does this take into account the locations of wifi particles relative to each other, and no indication of which wifi particle turned on the channel is stored. Hence checking whether a wifi blocker is somewhere in between the source wifi particle and a potential destination is not possible at present.

    The lines between wifi are drawn by checking, when drawing each wifi particle, whether it is set to the same channel as the particle under the mouse. If it is, then draw a line between them. Graphics are done completely separately from particle interactions, so I don't think this would help much.

    However, I think this could in fact be coded. More complicated than the current wifi system, and certainly slower, but should be possible:
    Store the source wifi particle location when turning on a wifi channel
    For each potential destination wifi particle, if the channel is turned on, check the straight line path to the source for wifi blocker (using interpolation, much like the movement code uses to check for obstacles)

    But I'm not sure whether this is a good idea. TPT is quite slow enough already.

    EDIT: Although there may be problems if wifi particles on the same channel, separated by blocker, are sparked at the same time. This would be particularly problematic for the original usage case for wifi blocker ("create many machines that use wifi in a single project"). I can't immediately think of a simple and non-laggy way to deal with this.
  • MiXih
    21st Jan 2011 Member 0 Permalink
    @jacksonmj
    i wanted to post exactly same solution
  • Cr15py
    21st Jan 2011 Member 0 Permalink
    jacksonmj
    I assumed an array was involved, thanks for illustrating the system though.

    In any case might I suggest that is be possible to simply turn WIFI on and off as a method of regulating send/receive? It would be simpler and achieve practically the same result. Send/receive with metal, turn on with PSCN, turn off with NSCN.
  • SkinnySatinTiger
    23rd Jan 2011 Member 0 Permalink
    Edited once by SkinnySatinTiger. Last: 3rd Oct 2022
Locked by Catelite: Enough of this anyway