Welcome to PlagueFest.com! Log in or Sign up to interact with the Plague Fest community.
  1. Welcome Guest! to interact with the community and gain access to all the site's features.

Self Beacon?

Discussion in Counter-Strike: Source started by Joshy, May 28, 2017

  1. May 31, 2012
    Short: Should donors be able to use self-beacon?


    What do people think of beacons? Would it be enough to attract some people into donating, or would it be enough to pull people down from Server Admin to Donor? Is it annoying?

    I was going to make it a suggestion as I've seen it work, but I have to admit I've lost my touch on how the community would even feel about beacons. I know there are rules for the zombie modes where only CTs can have it, but that's easy to fix with conditional statements. I think, with all the hidden spots and secrets in Surf RPG DM, that self-beacon would be pretty fun. Several years ago - while in the Server Admin role myself - I always felt kind of burdened with the beacon command... It's at your sole discretion as a Server Admin and so long as you follow their guidelines (CTs only and if they ask), but you also could get a little bit of fuss if you discriminated against people ie. only using beacon on your friends. This kind of put me in the shoes of being a hard ass and just not giving out any beacons, or if one person asked and I obliged, then it would be followed by 5 or 6 other people who "wanted" one too.

    I know one common concern is a room full of people trying to use beacon to be annoying. Are there really that many donors and people willing to make it an annoying thing? I'm skeptical, but it's the internet... What are the costs, risks, or trade-offs?
  2. Jul 14, 2010
    I think it would be fine to use on surf rpg dm. And if we wanted it on ZM then make it so CT's can self-beacon, but have it auto turn off once they are zombified.
    Either way I don't think it's necessary, but could be an interesting feature.
  3. Jun 4, 2006
    I brought up this idea years ago but it was never looked into seriously for one reason or another. The gist was donators could beacon themselves but it would need protections in place to prevent a slew of obnoxious beacons. It would need features such as cooldowns to prevent players from using it too often, and - not sure if this is possible - being able to detect other beacons within a certain proximity to the player so we don't end up with cade spots where more than 1 player has a beacon. I could also see players just turning it on at the beginning of a round for no reason whatsoever other than to draw attention to themselves, so we'd probably need to make it so you can only beacon yourself within the last 2 minutes of a round. I'm sure there's other scenarios I'm neglecting that would need to be considered as well.

    Leaving it up to admin discretion is really the safest route to take. The plugin would have to be pretty smart for everything to run smoothly. I have my doubts anyone with the skills needed will want to take such a project on, but I welcome the innovation, especially if it works well.
    • Like Like x 1
    • Agree Agree x 1
    • Wizard! Wizard! x 1
    • Informative Informative x 1
    • Apr 9, 2007
      Is this a challenge? If so, while I may have been for the idea in the past, honestly I don't like it now.
      • Funny Funny x 1
      • May 31, 2012
        For clarification: I clicked funny in regards to this comment :party: while I was being a bum elsewhere, as many would know, I saw a lot of your stuff on AlliedModders and have no doubts now.

        It sounds to me it would just be a lot of conditional statements. To come of think of it, though, this sounds like a lot of work for little benefits. I didn't think of all of these scenarios Brian listed.
      • Nov 14, 2015
        So I had this same idea for a while and recently came across this thread. I decided to give a shot and decided the first set of design goals are:
        1:something unique/special for donators
        2:can not interfere with the admin ability to beacon/un-beacon something (well... almost, see below)
        3:resistant to spam
        4:can't cause unreasonable load to the server/clients or be annoying
        Which results in:
        -they can choose their color
        -can choose a type of beacon (currently just "random color" and "solid color" as i'm not that creative when it comes to this)
        -preferences are saved
        -no one can beacon earlier than 4 minutes remaining, donators can beacon at 4 minutes, while regular players can only beacon at 2 minutes
        -can unbeacon themselves and then rebeacon themselves once (regular players can only beacon themselves -> no unbeaconing themselves)
        note: since I don't know how check the donator status of someone, a function was created to check and currently returns true for everyone
        no issues found yet, but not done testing yet.
        -see #1 for on 2 minute and 4 minute
        -see #1 for unbeaconing
        not much to say other than no real change to visual effects (not so say it couldn't of be done)
        -only humans can beacon themselves
        -auto kills the beacon for anyone but a human -> this would prevent an admin from beaconing a zombie, which I can't remember seeing that happen.
        -The preference menu is initiated by saying "bmenu" or "beaconmenu". beacon toggling is done by "beaconme" (there's a couple others if people want to have some fun with the name).
        Brian, I read your concern on too many beacons in one area. I decided not to pursue this as I've seen some cade spots having many beacons and I didn't find it annoying. I think it's possible but the question is how to handle that condition when found:
        -if we have different color beacons, who's color if there are donators?
        -do we just have a special "mega beacon" that is roughly in the center?
        -only have the person that initiates a beacon first (with donator out ranking a regular player) has a beacon?
        -what if someone activated their beacon, but disabled because they are in the a group then they leave the group. should it automatically enable? or does the player need to say "beaconme" again?
        In short, i'm confident it can be done. Should this plugin get accepted, I'd like to go the route of seeing if this is an issue before attempting a solution.
      • Dec 17, 2007
        This would take a lot of work, in order to keep ppl from abusing beacons. Not to mention, i've honestly haven't seen beacons have any real purpose other than players just wanting them. You can typically find a player relatively easily on any map. All this would be is a player having pretty colors coming off of them.

        However, if a plugin can be created where it
        - Keeps zombies from beaconing themselves
        - Keeps donators from activating it before the last two minutes in the round
        - Is turned off automatically when a human player becomes a zombie
        - Keep it to donators, regular, non donating players can purchase donator if they wish to beacon themselves
      • Nov 14, 2015
        Aphilion, per your post in regards to the current working version:
        -Although I don't have the zombie mod installed, a terrorist is unable to beacon themselves
        -Donators can activate at 4 minutes, while regular players can activate at 2 minutes. It's an easier change to the 4 & 2 minutes in the code, or I can break it out to be cvars for run time configuration. I chose 4 & 2 to give distinction between donator and regular, and if the donator feels gutsy with their spot, they can make it known earlier.
        -As with zombies beaconing themselves above, there's a conditional that should kill the beacon as soon as they turn zombie.
        -That's an easy enough to change/tweak the code for donator only. My reason for allowing regular players to beacon themselves (blue color only, no special stuff allowed, no access to the menu -> that's tested and working) was to allow all players to beacon themselves without needing an admin to intervene. You can also think of it as trying to make an admin job a little bit easier (less of a need to watch for requests and then use the sm_admin or sm_beacon). I tend to like the idea of a program that can assist someone or automate a process.

        I took a stab at some abuse/annoyance prevention, but can you expand on your abuse/annoyance concern further? I can't say for others, but I request beacons for when I want some zombies to pay me a visit in my camping spot. The color aspect was a combination of: a perk for donators, adding a feature wasn't too difficult to implement, and a learning point for SM coding (specifically learning about sourcemod cookies).
      • Jan 29, 2018
        I could see self-beaconing being convenient to players but also I could see it being exploited as well. All players using beacons as soon as spawned or using shortly after spawn, although I imagine we could somehow set a time to when zombies spawn..

        I have heard that too many players with beacons can crash the server which is no good.

        Another thing, we share beacons in 1 cade, 1 beacon per cade.

        So long as we have the capability to program it so only a certain amount of beacons can be used at once, after a certain time, only outside certain proximities, and only for HUMANs then that'd be cool.
      • Nov 14, 2015
        For beacon spam at spawn, I already had a limit on remaining time, but I've also added a run distance detection (if a player runs too far from where they activated their beacon, it get disabled). I've also made the 4 & 2 minutes to be cvars along with the run distance.

        Does anyone else have experience with too many beacons?

        I've attached the code for review. I commented out the development print statements. The reason funcommands.sp is included is because I had to: create cvars, hooks for changes to the cvars, and calling my initialization function in that file.

        Attached Files:

      • Nov 14, 2015
        For those that are interested in the progress, I've completely restructured how the beacon code work in order to support a 'shared beacon for groups'. The good news is that it looks it works
        (I think?? i'll need to find some people to help test conditions..... using bots has been a little tricky). The bad news is I need to reimplement most of the features from the first version, which shouldn't be too bad.

        edited to add:
        I'm planning on creating a state machine to implement all the features. For those that interested and would like to critique the state transitions (either for: conditions/conditionals I've missed, features that should be removed, or for features that should be added. this is how I am envisioning the state flow, but changes must be made, then they must be made) feel free to do so. Warning: it is in pseudo-code

        Attached Files:

        Spray'n'Pray, Jan 5, 2019 Last edited by Spray'n'Pray, Jan 6, 2019