Seite 1 von 2 12 Letzte
  1. #1

    Registriert seit
    18.11.2011
    Beiträge
    457
    Thanked 296 Times in 94 Posts
    Blog Entries
    1

    Standard [VB.Net] Botkontrollen beantworten?

    Ich bin gerade an einem StayOnlineBot, es funktioniert auch alles, bis auf eine Sache: Ich weiß nicht, wie ich es verwirklichen soll, dass der Bot automatisch Botkontrollen beantwortet. Ich hoffe, ich finde hier einen Ansatz.

    Edit: Programmhilfe KNLib
    Geändert von Pwned (20.11.2011 um 23:37 Uhr)

  2. #2
    Avatar von uncopyable
    Registriert seit
    19.11.2011
    Beiträge
    282
    Thanked 235 Times in 120 Posts

    Standard AW: [VB.Net] Botkontrollen beantworten?

    Versuch es mal so (ausem Kopf)

    Code:
        ' Wobei c KSClient ist. ( Dim c As New KNLib.KSClient(New Applet)
    
        Private Sub c_OnPrivateMessage(sender As Object, fromNick As String, toNick As String, Message As String) Handles c.OnPrivateMessage
            If fromNick = c.Butler AndAlso Message.Contains("Überprüfung auf Bot-Benutzung") Then
                Dim id As String = Nothing
                id = Regex.Matches(Message, "/ok (\\d+)").Item(1).Value
                c.SendMessage("/ok" + id)
            End If
        End Sub

  3. The Following User Says Thank You to uncopyable For This Useful Post:

    Pwned (22.11.2011)

  4. #3

    Registriert seit
    18.11.2011
    Beiträge
    457
    Thanked 296 Times in 94 Posts
    Blog Entries
    1

    Standard AW: [VB.Net] Botkontrollen beantworten?

    Und wie kann ich das mit einem Timer verbinden?

    Weil wenn ich
    PHP-Code:
    Dim botkontrollenID As String Nothing
    botkontrollenID 
    Regex.Matches(Message"/ok (\\d+)").Item(1).Value
    client
    .SendMessage("/ok" botkontrollenID
    in ein Timer_Tick einfüge, funktioniert es nicht.

  5. #4

    Registriert seit
    18.11.2011
    Beiträge
    116
    Thanked 68 Times in 48 Posts

    Standard AW: [VB.Net] Botkontrollen beantworten?

    Warum in nen Timer? O.o

  6. The Following User Says Thank You to lilpole For This Useful Post:

    BL4cK (22.11.2011)

  7. #5

    Registriert seit
    18.11.2011
    Beiträge
    457
    Thanked 296 Times in 94 Posts
    Blog Entries
    1

    Standard AW: [VB.Net] Botkontrollen beantworten?

    Weil der User das Sendeinterval selbst bestimmen können soll

  8. #6
    Avatar von Diebspiel
    Registriert seit
    18.11.2011
    Beiträge
    311
    Thanked 191 Times in 102 Posts

    Standard AW: [VB.Net] Botkontrollen beantworten?

    In einen Timer ist sinnlos, weil er ja oft es dann absendet.

    Bevor er absendet reicht hier ein Thread.Sleep(...) vollkommen aus.

  9. The Following User Says Thank You to Diebspiel For This Useful Post:

    Pwned (21.11.2011)

  10. #7
    Avatar von Dbzfreak1337
    Registriert seit
    19.11.2011
    Beiträge
    61
    Thanked 596 Times in 37 Posts

    Daumen hoch AW: [VB.Net] Botkontrollen beantworten?

    So ungefähr habe ich es bei allen Bots von mir da mit 'Thread.Sleep' nur unnötig der Bot einfriert:
    PHP-Code:
    Dim BKZahl As New TextBox ' Muss am Anfang von der Class gemacht werden damit man es überall benutzen kann so auch auf dem Timer! '
    Dim rdm As New Random 'Dasselbe gilt hier, so kann man überall rdm für Random benutzen'

    BKZahl.Text Split(Message"/ok ")(1)
    BKZahl.Text Split(BKZahl.Text"<° _, um zu bestätigen")(0)
    Timer1.Interval rdm.Next(XXXX) * 1000 'So gibt man es vor man kann es auch so machen. Die die beiden XX, XX müssen natürlich in z.B. 5, 120 oder so ersetz werden'
    Timer1.Interval rdm.Next(NumericUpDown1.ValueNumericUpDown2.Value) * 1000 'So gibt man jemand die Möglichkeit zwischen X und Y per Numerics man kann auch TextBoxen oder sonst was nehmen da aber Numerics nur Zahlen erlauben ist das am sinnvollsten.'

    Timer1.Enabled True

    Private Sub Timer1_Tick(ByVal sender As System.ObjectByVal e As System.EventArgsHandles Timer1.Tick

    client
    .SendMessage("/ok " BKZahl.Text'Dann einfach absenden lassen'

    Timer1.Enabled False

    End Sub 
    Mag etwas umständlicher sein als der RegEx kack aber finde ich so besser.

    Mfg DBZFreak
    Geändert von Dbzfreak1337 (21.11.2011 um 21:19 Uhr) Grund: Natürlich den Timer starten und unten stoppen

  11. #8
    Avatar von Diebspiel
    Registriert seit
    18.11.2011
    Beiträge
    311
    Thanked 191 Times in 102 Posts

    Standard AW: [VB.Net] Botkontrollen beantworten?

    Zitat Zitat von Dbzfreak1337 Beitrag anzeigen
    mit 'Thread.Sleep' nur unnötig der Bot einfriert
    Mit einem StayOnlineBot will man online bleiben, wenn man nicht am PC ist.
    Demnach ist es egal, ob "unsichtbar" - völlig irrelevant! - die Form für 20 Sekunden hängt oder nicht, da man eh nicht davor sitzt und die Interaktion wird ja trotzdem ausgeführt.

  12. The Following User Says Thank You to Diebspiel For This Useful Post:

    ESC (23.11.2011)

  13. #9
    Avatar von uncopyable
    Registriert seit
    19.11.2011
    Beiträge
    282
    Thanked 235 Times in 120 Posts

    Standard AW: [VB.Net] Botkontrollen beantworten?

    Man könnte das ganze auch in einem extra Thread ausführen

    Code:
    Dim t as New Thread(AddressOf Thread1) 
    Shared sub Thread1()
    'Mach was
    Thread.Sleep(500) ' warte
    ' mach noch was
    End Sub
    Wen schon dann richtig.

  14. #10
    Avatar von AmJano
    Registriert seit
    13.08.2012
    Beiträge
    153
    Thanked 66 Times in 27 Posts

    Standard AW: [VB.Net] Botkontrollen beantworten?

    Bei deinem Code steht:
    PHP-Code:
    BKZahl.Text Split(Message"/ok ")(1)
    BKZahl.Text Split(BKZahl.Text"<° _, um zu bestätigen")(0
    BKZahl? Ist das ein TextBox oder wie genau ?

    Danke.


    Mfg

Seite 1 von 2 12 Letzte

Ähnliche Themen

  1. [Sammelthread] Botkontrollen
    Von AFU im Forum Knuddels Allgemein
    Antworten: 12
    Letzter Beitrag: 14.10.2012, 11:51
  2. [S] Botkontrolle beantworten
    Von rVs14 im Forum Sourcecode
    Antworten: 1
    Letzter Beitrag: 16.02.2012, 12:06
  3. Achtung Botkontrollen
    Von Marc im Forum Knuddels-News
    Antworten: 2
    Letzter Beitrag: 23.12.2011, 16:37
Diese Seite nutzt Cookies, um das Nutzererlebnis zu verbessern. Klicken Sie hier, um das Cookie-Tracking zu deaktivieren.