Thema: Anti-Admin Sample
-
08.11.2011, 16:06 #1
- Registriert seit
- 22.05.2012
- Beiträge
- 203
Thanked 21 Times in 9 PostsAnti-Admin Sample
Da viele sich nicht anstrengen wollen und lieber c&p machen, hier ein Sample um Anti-Admin bei euren Bots einzubauen:
PHP-Code:/*
____ __. _________ .__ __
| |/ _| / _____/ ___________|__|______/ |_
| < \_____ \_/ ___\_ __ \ \____ \ __\
| | \ / \ \___| | \/ | |_> > |
|____|__ \/_______ /\___ >__| |__| __/|__|
\/ \/ \/ |__|
Knuddels Anti-Admin Sample
© The Don of NYC
*/
using KNLib;
using System;
using System.Threading;
namespace Anti_Admin_Sample
{
class Program
{
static void Main(string[] args)
{
new Thread(Login).Start(); // Loginvorgang in einem neuen Thread ausführen
}
static void Login()
{
KSClient KSC = new KSClient(new Applet("applet.jar")); // Neue KS Client Klasse initialisieren mit angegeben Pfad für das Applet
KSC.OnTokenReceived += new KSClient.ReceivedHandler(KSC_OnTokenReceived);
KSC.Connect(ChatSystem.DE);
KSC.Login("NICK", "PW", "/K-Script");
}
static void KSC_OnTokenReceived(KSClient KSC, String packet)
{
Console.ForegroundColor = ConsoleColor.White;
String[] token = packet.Split('\0');
switch (token[0])
{
case "u":
Console.WriteLine("Eingeloggt");
if (!AntiAdmin.isLoaded) // Wenn die Adminliste noch nicht geladen wurde, senden wir /h um das Hilfefenster mit den Admins zu erhalten
KSC.SendMessage("/h");
break;
case "k":
if (token[1].Contains("Hilfeõf")) // Wenn das Hilfefenster gesendet wird, fangen wir es ab
AntiAdmin.LoadAdminlist(token[7]); // und laden die Adminliste indem wir den Inhalt des Fensters als Parameter übergeben
break;
case "r":
if (AntiAdmin.isLoaded) // Wenn Adminliste geladen wurde, prüfen wir...
if (AntiAdmin.Adminlist.Contains(token[1])) // ob derjenige der uns angeschrieben hat, ein Admin war. Dann tun wir...
{
Console.ForegroundColor = ConsoleColor.Red;
Console.WriteLine("Fuck!!! Der Admin {0} schrieb mich privat an. WAS SOLL ICH TUN SIR?", token[1]); // irgendwas
}
break;
case "l":
String joinedUser = token[2].Split('\n')[0];// Splitten bei \n, da bei manchen Channeln der Nick, der in den Channel kommt wie folgt gesendet wird: NICK\nALTER
if (AntiAdmin.isLoaded) // Wenn Adminliste geladen wurde, prüfen wir...
if (AntiAdmin.Adminlist.Contains(joinedUser)) // ob derjenige der in den Channel gekommen ist, ein Admin ist. Dann tun wir...
{
Console.ForegroundColor = ConsoleColor.Red;
Console.WriteLine("Fuck!!! Der Admin {0} hat den Channel betreten", joinedUser); // irgendwas
}
break;
}
}
}
}
PHP-Code:using System;
using System.Collections.Generic;
using System.Text.RegularExpressions;
namespace Anti_Admin_Sample
{
class AntiAdmin
{
private static List<String> _Adminlist = null;
/// <summary>
/// Gibt die geladene Adminliste zurück
/// </summary>
public static List<String> Adminlist
{
get { return _Adminlist; }
}
/// <summary>
/// Gibt zurück ob die Adminliste geladen wurde
/// </summary>
public static bool isLoaded
{
get { return _Adminlist != null && _Adminlist.Count != 0; }
}
/// <summary>
/// Lädt die aktuelle Adminliste von Knuddels
/// </summary>
/// <param name="token">Inhalt des Hilfefensters</param>
public static void LoadAdminlist(String token)
{
_Adminlist = new List<String>();
foreach (Match m in Regex.Matches(token, "°>_h([^\\|]+)"))
_Adminlist.Add(m.Value.Replace("°>_h", String.Empty).Replace("\", String.Empty)); // Regex failed, wayne ..
}
}
}
Ist recht einfach gehalten und die meisten sollten es hoffentlich verstehen. Wenn ihr Fragen habt, dann stellt sie vernünftig.
-
20.11.2011, 14:30 #2
- Registriert seit
- 09.11.2011
- Beiträge
- 121
Thanked 129 Times in 46 PostsAnti-Admin Sample
Regex failed nicht, du nutzt m.Value statt m.Groups[1].Value :b
MfG
-
25.11.2011, 23:37 #3
- Registriert seit
- 22.05.2012
- Beiträge
- 203
Thanked 21 Times in 9 PostsAnti-Admin Sample
Nachtrag Botkontrolle:
Methode zum Bestätigen der Botkontrolle:
PHP-Code:private static void BotKontrolle(String message, int delay1, int delay2)
{
try
{
String BotKontrolleID = Regex.Match(message, "/ok (\\d+)").Groups[1].Value;
Thread.Sleep(new Random().Next(delay1, delay2));
if (KSC.IsConnected && KSC.isLoggedIn)
KSC.SendMessage(String.Format("/ok {0}", BotKontrolleID));
Console.WriteLine("h3h3, Botkontrolle bestätigt!");
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
PHP-Code:case "r":
if (token[4].Contains("Überprüfung auf Bot-Benutzung"))
new Thread(delegate() { BotKontrolle(token[4], 10000, 30000); }).Start();
Ähnliche Themen
-
[Suche] KNLib Sample
Von AmJano im Forum Knuddels ProgrammierungAntworten: 3Letzter Beitrag: 01.11.2012, 23:41 -
[Vb]Anti Admin + Botkontrolle
Von DnL im Forum SourcecodeAntworten: 16Letzter Beitrag: 29.04.2012, 03:31 -
VB.Net [Sample] JappyLib
Von Snees im Forum .NetAntworten: 0Letzter Beitrag: 20.03.2012, 17:54 -
[Vorschlag] U-Hacks API + Sample
Von xTracZ im Forum FeedbackAntworten: 5Letzter Beitrag: 08.01.2012, 22:30 -
[C#-OS] Umfragen Bot Sample
Von The Don of NYC im Forum SourcecodeAntworten: 0Letzter Beitrag: 09.05.2011, 21:02
Diese Seite nutzt Cookies, um das Nutzererlebnis zu verbessern. Klicken Sie hier, um das Cookie-Tracking zu deaktivieren.