Completely Automated Staff Team! - Oh yes, I did.

Discussion in 'Custom Script Releases' started by Tresdni, Jan 17, 2011.

  1. Tresdni New Member

    [IMG]

    Tired of those corrupt staff team members? Tired of players complaining that no staff members are on? Well, here is your very own automated staff team. (I swore I wasn't going to release this, but I assume many smaller shards will benefit from this - BIG TIME. ) Correct me if I'm wrong :)

    What these guys will do for you
    - Unstuck your characters by casting a gate out (limited).
    - Take suggestions and record them.
    - File harassment claims via email.
    - Answer general UO questions, even opening browser to UO Guide's pages for additional help.
    - WHATEVER ELSE YOU WANT TO PROGRAM THEM TO DO! IT'S ENDLESS!

    How They Work
    - Player clicks the help button.
    - GM appears (random human name, dependant on the sex they are -also random.)
    - Key words list appears as a gump. These are the words the staff member responds to. I've pre-scripted about 16 actions for you already. You can put in as many as you'de like, they are easy.
    - Player uses a key word, staff member reacts. You can find these actions in StaffBot.cs.
    - Pages by default are limited to once every hour. This is easily changed, and marked in the script.
    - Staff member will only put one gate out if player is stuck, until they page another staff member. If the gate has already been placed, they will simply say that they are out of mana for the next hour (by default).

    What these guys WON'T DO
    - They won't EVER log off.
    - They will never turn corrupt, and ruin your shard.
    - They won't ever ask for anything in return, they are happy as pie doing what they do :)

    Installation
    I tried to make this as easy as possible, and yes, you can even disable this system in the Core folder, and it will use the original help system. Simple huh?

    - Replace your HelpGump.cs with the one provided.
    - Drop the other folders in your Scripts directory.
    - Couple of PlayerMobile.cs changes. I tried to avoid it, but I really hate using item timers, and switched the system to use inline. I did this for the stability of the system :)

    Core changes
    Open PlayerMobile.cs, and find

    Code:
    [CommandProperty(AccessLevel.GameMaster)]
            public TimeSpan NpcGuildGameTime
            {
                get { return m_NpcGuildGameTime; }
                set { m_NpcGuildGameTime = value; }
            }
    Add UNDER IT

    Code:
    [CommandProperty(AccessLevel.GameMaster)]
            public DateTime LastTimePaged
            {
                get { return m_LastTimePaged; }
                set { m_LastTimePaged = value; }
            }
    then find

    
    Code:
    private List<Mobile> m_RecentlyReported;

    
    Add UNDER IT

    Code:
    private DateTime m_LastTimePaged;


    Deserialize (Please correct this if I'm wrong, because I did not do it this way - I installed on a fresh install of RunUO to test it!!! )


    Find


    Code:
    case 29:
    
    {
    
    m_VASTotalMonsterFame = reader.ReadInt();
    
    goto case 28;
    
    }
    Add above this (Please note the case numbers, your's may differ. This is done on a base PlayerMobile.cs with no mods beforehand. Really trying to make this easy for you.

    Code:
    case 30:
    
    {
    
    m_LastTimePaged = reader.ReadDateTime();
    
    goto case 29;
    
    }
    Serialize (Again, please correct me if I'm wrong.)

    Find

    Code:
    writer.Write((int)29); // version
    Change It To

    Code:
    writer.Write((int)30); // version
    Find

    Code:
    writer.Write((TimeSpan)m_NpcGuildGameTime);
    Add Under

    Code:
    writer.Write((DateTime)m_LastTimePaged);
    And there you have it, your very own completely automated staff team! I hope they treat you well, they have been serving happily on my new project for a week with no complaints!

    Attached Files:

    Lord_Velius likes this.
  2. TheNorthStar New Member

    I'm gonna have to check this one out. :)
    Thanks for sharing.
  3. Tresdni New Member

    Forgive me if the serializing and deserializing are wrong, I just added the things to the current ones on a fresh install. I'm not the brightest when it comes to that, but the rest is working like a CHARM. I'm super-psyched for this system, put a lot of thought into it :)
  4. LordHogFred New Member

    Very nice :).
    Btw, if you want to avoid having to do the serial/deserial stuff try using an XML attachment.
    I'll be more than happy to show you how if you want?
  5. Tresdni New Member

    I totally agree, but a lot of the newer folks (which may have low playerbases, I'm just guessing) may not know much about xml attachments. I do however, urge every single person that downloads RunUO to install xmlspawner2. It is AMAZING. I have to admit, I am giddy over this project. It's something I've thought about for years, but never had the know-how to put it together. I know - it's not as complex as it seems, but damn it's useful!
  6. James420 New Member

    This is truly a great idea, and an awesome release. I'm definitely going to drop it in my shard and play with it, perhaps change it a lot. I can't believe something like this has never been done before, it's a great solution to an age old problem. I think this is a great base release, but I honestly think you could do so much more with it.

    Instead of worrying about what new scripters are able to understand and edit, you should focus more on feature and usefulness. As LordHogFred mentioned. XML Attachments would be a great idea for something like this. You could develop a nice base class that had a bunch of api calls that the attachments could use to do basic things. Something like attachments would allow you to do each thing as an attachment, such as stuck in a spot. Or anything else you could think up.

    Thanks for the nice release, it's great to see nice new stuff like this still being made by the community. I'll be sure to toy with it and let you know if I have any problems or some suggestions for it. Keep up the great work. :D
  7. Anti-Basic New Member

    I, for one, welcome our new automated overlords
  8. James420 New Member

    Lol, I know. It really is great. My players really love the idea, they think it's like having their own staff pet. Lol.

    I've modded it slightly though so it'll still open the old help menu if their wait period is still not up, since I have other stuff in the help menu such as ressing. Although I'd like to add that to this system, should be rather easy to just add it as a new keyword.
  9. Pr3d13 New Member

  10. Tresdni New Member

    Glad you guys are liking it :) Yea, I've done many more mods to the ones on my new un-released project, but I figured this would be a great start for everyone :) You can literally add all the cases you want, and have them do ANYTHING lol. Pretty awesome.
  11. Subity New Member

    Very Cool idea! Thanks for sharing :)
  12. nacrom New Member

    i cannot wait to put this over on my shard. Thanks for a great submission ^.^
  13. milva New Member

    "Thank You so much" for sharing this with the runuo community!! Awesome script -so many server's will benefit with using this :)
  14. osd_daedalus New Member

    oh lol... usually is staff complaining about player bots... now we will see staff bots? :D

    but... GREAT IDEA! And something which does something instead to classical OSI/RunUO which just send premade phrases like "Sorry; I can't help you with that". Well done!
  15. nacrom New Member

    had this picture laying around. I think it fits this thread well LOL

    Automated Staff Training Session =-P

    gms.jpg
  16. osd_daedalus New Member

    thumbs up for ImaNewbie!
  17. Tresdni New Member

    Thank you all for the positive feedback, really makes projects like this worth my time :)
  18. Sythen New Member

    recieved an installation error on 4 lines:
    'm_LastTimePaged' Does Not Exist In The Current Context
    Lines 272, 273, 2847, and 3303 (on a fresh PlayerMobile.cs from SVN 663)
  19. Sythen New Member

    Very nice work from what I've seen of the scripts Tresdni... thanks so much for this contribution. As soon as I get it working, I plan on making this a perma-edition to my script collection :)
  20. Tresdni New Member

    You didn't do the PlayerMobile.cs changes as noted in under installation :)
Insert every image as a...
  1.  0%

Share This Page

10px;h