Advertisement
biu

Auto Login Mutator.

biu
Jul 7th, 2013
154
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.  
  2. /*===========================================================================
  3.   Auto Login Mutator.
  4.  ============================================================================
  5.   A more simple version of autologin mutator. , This one only works in  227...
  6.   But will do nothing in > 227 ,  Mabye if in not Lazy i can make if compatible with 225.
  7.   My code is , Well...  Mostly Shit So I Wont Even Put My Name Here....
  8.  
  9.   # september 24 - more optimaations
  10. ----------------------------------------------------------------------------*/
  11. class adloginMutator expands MutatorPlus    config(aloginMutator);
  12.  
  13. struct adminidlist {                                              // Admin Autologin Autority
  14.      var() config string         adminname,adminip;               // The name of the Admin , The Admin's IP
  15.      var() config bool           isenabled;                       // Whether this entry is active
  16.      var() config string         priviladge;                      // The admin level
  17.      };
  18.  
  19. var(autologin)  config  adminidlist     trustedadminip[20] ;      // 227 only admin ip table
  20. var Playerpawn Pending; // The (P)awner
  21.  
  22.  
  23. simulated function postBeginPlay()
  24. {
  25.   super.postBeginPlay();
  26.   if( int(Level.EngineVersion) < 227 ) // Do nothing in Versions that dont have 'ugetplayerip'
  27.     { log("Error:  This Version Of Autologin Is Incompatible with Older Versions Of Unreal."); destroy(); }
  28.  
  29. }
  30.  
  31.  
  32.  
  33.  
  34. function MutateNewPlayer( PlayerPawn NewPlayer, string newOptions, string newPortal )
  35. {
  36.    if( int(Level.EngineVersion) > 226 ) // do nothing in Versions that dont have 'ugetplayerip'
  37.    {
  38.       Pending = Newplayer;
  39.       SetTimer(0.3,False);
  40.    }else{
  41.       // Should never get to this point. Possible Security Issues Involing Blank Strings Returns...
  42.      log("Error:  This Version Of Autologin Is Incompatible with Older Versions Of Unreal.");
  43.      destroy();
  44.    }
  45. }
  46.  
  47. function Timer()
  48. {
  49.    local int az;
  50.  
  51.       For( az = 0; az <  20 ; az++ ) // Look For IP's
  52.       {
  53.          if ((consolecommand("ugetplayerip " $(Pending.PlayerReplicationInfo.Playerid))) ==trustedadminip[az].adminip && trustedadminip[az].isenabled)
  54.          {
  55.  
  56.                     if (trustedadminip[az].priviladge == "1")
  57.                     { // Main Admins
  58.                       Pending.bAdmin = true;
  59.                       XPRI(Pending.playerreplicationinfo).adminlevel = 1;
  60.                       if (XPRI(Pending.playerreplicationinfo).adminlevel == 1)
  61.                       {
  62.  
  63.                        Pending.ClientMessage("You are Logged In With Admin Status ("$trustedadminip[az].priviladge$")",'Event',True );
  64.                        log("LoggedIn - "$trustedadminip[az].adminip$"["$az$"] name " $(Pending.PlayerReplicationInfo.PlayerName) $ " (" $ trustedadminip[az].adminname $")  @LvL "$trustedadminip[az].priviladge,'Autologin');
  65.  
  66.                       }else{ // Ya WtF...
  67.  
  68.                          if (pending == none)
  69.                          {
  70.                           log("Autologin - No Player Or No PlayerReplicationInfo. ");
  71.                           log("LoggedInfailed -  for "$trustedadminip[az].adminip$"["$az$"] name " $(Pending.PlayerReplicationInfo.PlayerName)$ " (" $ trustedadminip[az].adminname $")  @LvL "$trustedadminip[az].priviladge,'Autologin');
  72.  
  73.                          }else{
  74.                           Pending.ClientMessage("Error Processing Login");
  75.                           log("Somehow managed to fail.",'Autologin');
  76.                           log("LoggedInfailed -  for "$trustedadminip[az].adminip$"["$az$"] name " $(Pending.PlayerReplicationInfo.PlayerName)$ " (" $ trustedadminip[az].adminname $")  @LvL "$trustedadminip[az].priviladge,'Autologin');
  77.  
  78.                          }
  79.                       }
  80.  
  81.                     }
  82.  
  83.                     if (trustedadminip[az].priviladge == "2")
  84.                     { // Almost Admins
  85.                       XPRI(Pending.playerreplicationinfo).adminlevel = 2;
  86.                       Pending.ClientMessage("You are Logged In With Admin Status ("$trustedadminip[az].priviladge$")",'Event',True );
  87.                       log("LoggedIn - "$trustedadminip[az].adminip$"["$az$"] name " $(Pending.PlayerReplicationInfo.PlayerName)$ " (" $ trustedadminip[az].adminname $")  @LvL "$trustedadminip[az].priviladge,'Autologin');
  88.                     }
  89.  
  90.                     if (trustedadminip[az].priviladge == "3")
  91.                     { // Mostly Lamers
  92.                       XPRI(Pending.playerreplicationinfo).adminlevel = 3;
  93.                       //Pending.ClientMessage(" Logged in as Administrator ("$trustedadminip[az].priviladge$")",'Event',True );
  94.                       log("LoggedIn -"$trustedadminip[az].adminip$" ["$az$"] name " $(Pending.PlayerReplicationInfo.PlayerName)$ " (" $ trustedadminip[az].adminname $")  @LvL "$trustedadminip[az].priviladge,'Autologin');
  95.                     }
  96.  
  97.  
  98.                     if (trustedadminip[az].priviladge == "reject")
  99.                     { // Extra : Simple IP Join Kick. (obviously they need to join first tho...)
  100.                      log ("---------------");
  101.                      log("Rejected -"$trustedadminip[az].adminip$" ["$az$"]" ,'Autologin');
  102.                      log ("---------------");
  103.                      Pending.destroy();
  104.                     }
  105.  
  106.  
  107.  
  108.                     if ( InStr(trustedadminip[az].priviladge,"rejected:") != -1 )
  109.                     { // Bonus - Reason Based Rejection!
  110.                        log ("---------------");
  111.                        // if (mid(trustedadminip[az].priviladge, 9) !=  "")
  112.                        // {
  113.                        Pending.ClientMessage(mid(trustedadminip[az].priviladge, 9),'networking',True );
  114.                        // }
  115.                        log("Rejected -"$trustedadminip[az].adminip$" ["$az$"]  - "$ mid(trustedadminip[az].priviladge, 9) ,'Autologin');
  116.                        log ("---------------");
  117.                        Pending.destroy();
  118.                      }
  119.  
  120.  
  121.                     if (trustedadminip[az].priviladge == "mod")
  122.                     { // moderators ya ....im bored again
  123.                       XPRI(Pending.playerreplicationinfo).adminlevel = 2;
  124.                       Pending.ClientMessage("-----------------------------",'Event',True );
  125.                       //Pending.ClientMessage("The server has givin you limited moderation priviladges.",'Event',True );
  126.                       Pending.consolecommand("adminhelp");
  127.                       log("LoggedIn - "$trustedadminip[az].adminip$"["$az$"] name " $(Pending.PlayerReplicationInfo.PlayerName)$ " (" $ trustedadminip[az].adminname $")  @LvL "$trustedadminip[az].priviladge,'Autologin');
  128.                     }
  129.  
  130.  
  131.  
  132.                     if (trustedadminip[az].priviladge == "mod?")
  133.                     { // ya im bored  -  part 1
  134.                       Pending.ClientMessage("-----------------------------",'Event',True );
  135.                       pending.ClientMessage("(message goes here)",'Event',True );
  136.                       XPRI(Pending.playerreplicationinfo).adminlevel = 2;
  137.                       Pending.consolecommand("adminhelp");
  138.                       Pending.consolecommand("ah");
  139.                       trustedadminip[az].priviladge == "mod";
  140.  
  141.                     }
  142.         }
  143.  
  144.      }
  145.  
  146.    Pending=None;
  147. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement