Moxquizz

Hier bekommt Ihr Antworten auf Eure Fragen zum Eggdrop-Hosting von Shellfire

Moderatoren: Florian, Matze, Max, Lui

schteff
Beiträge: 6
Registriert: 14 Feb 2008 16:18

Moxquizz

Beitragvon schteff » 14 Feb 2008 16:23

Hallo,

ich hab ein paar Fragen bezüglich dem Quiz:

    - Wie kann ich den trigger von ! auf ? ändern? Gibt es da eine spezielles file?

    - Wie kann ich die Begrüßung ausschalten?

2 Welcome to 06,00{MoxQuizz} version 0.8.1, © by Moxon <moxon@meta-x.de>. Say "!ask" to get the current question or "!qhelp" to get an help text. Check the channel rules with !rules.


    - Wie können meine Channel-User das script stoppen bzw. anhalten. Habt ihr da schon eine Möglichkeit gefunden?


Vielen Dank

Gruß
schteff

Max
Site Admin
Beiträge: 476
Registriert: 29 Jun 2003 20:52
Wohnort: Shellfire HQ
Kontaktdaten:

Beitragvon Max » 14 Feb 2008 17:03

Hi schteff,

ich werde mal versuchen deine Fragen zu beantworten:

1. Trigger ändern:

Ich habe mal in die Dateien reingeschaut, der Trigger ist dort leider nicht einzeln einstellbar, d.h. es müsste jeder Command einzeln angepasst werden. Du findest die entsprechenden Bindings in der moxquizz.tcl in den Zeilen 168-253.

2. Begrüßung ausschalten:

Die Funktion scheint es tatsächlich nicht zu geben. Abhilfe sollte es hier schaffen, in der moxquizz.tcl die Zeile

Code: Alles auswählen

mxirc_notc $nick $text


mit einem Rautenzeichen (#) auszukommentieren. Hierauf gebe ich allerdings keine Garantie da ich es zZt. nicht selbst ausprobieren kann.

3. Das Script stoppen:

Den Bot anhalten kannst du entweder mit .!halt (Spiel wird angehalten, Punkte bleiben erhalten bis mit !ask fortgesetzt wird) oder .!stop (Spielstand wird gelöscht). Diese Commands funktionieren aber nur in der Partyline (deshalb der Punkt vorm Ausrufezeichen) und können nur von bestimmten Usern ausgeführt werden. Diese Usergruppen sind: P - Quizmaster, Q - Quizadmin und m - Botmaster.
Um die Commands aus dem Channel heraus benutzen zu können, muss folgende Zeile in der moxquizz.tcl geändert werden:

Code: Alles auswählen

bind dcc P !halt moxquiz_halt

in

Code: Alles auswählen

bind pub P !halt moxquiz_halt


Auch diese Änderung ist ohne Garantie da ich wie gesagt gerade nicht testen kann.
Max Behr
ShellFire Gattung & Behr GbR

schteff
Beiträge: 6
Registriert: 14 Feb 2008 16:18

Beitragvon schteff » 21 Feb 2008 15:19

Hallo,

danke Max für deine Antwort, hat auch fast alles geklappt.

Bis auf 3. Das Script stoppen

Ich kann es auch in der Partyline nicht mit .halt, .stop oder sowas stoppen. Ist irgendwie komisch. Habs auch als Pub abgeändert, geht so aber auch nicht. Ne Idee?

Danke
Gruß
Schteff

Florian
Site Admin
Beiträge: 464
Registriert: 29 Jun 2003 17:53

Beitragvon Florian » 22 Feb 2008 10:19

Hi,

du musst darauf achten, dass du

a) den Befehl in der Partyline korrekt eingibst: ".!halt" (mit Punkt und Ausrufezeichen)

b) Du die "P"-Flag beim Bot hast, dazu in der Partyline::
.chattr <deinhandle> +P

c) Mit Max' Lösung sollte das auch im Channel funktionieren, sofern du die "P"-Flag hast.


Zu der Sache mit dem Fragezeichen. Dazu musst du wohl oder übel jeden "Bind" in der "moxquizz.tcl" per Hand ändern:

Also aus

Code: Alles auswählen

##################################################
## bindings

# bot running status
bind dcc P !init moxquiz_init
bind dcc P !stop moxquiz_stop
bind dcc P !halt moxquiz_halt
usw


Müsste

Code: Alles auswählen

##################################################
## bindings

# bot running status
bind dcc P ?init moxquiz_init
bind dcc P ?stop moxquiz_stop
bind dcc P ?halt moxquiz_halt
usw


werden. Danach den Bot natürlich noch entsprechend rehashen.

Viele Grüße
Florian Gattung
Shellfire Gattung & Behr GbR

schteff
Beiträge: 6
Registriert: 14 Feb 2008 16:18

Beitragvon schteff » 25 Feb 2008 21:23

Hallo,

es geht jetzt alles bis auf das halten.


c) Mit Max' Lösung sollte das auch im Channel funktionieren, sofern du die "P"-Flag hast.


Leider klappt das noch nicht, ich hab P-Flag und ich hab das in der conf abgeändert wie Max es gesagt hat - siehe unten

Code: Alles auswählen

# bot running status
bind dcc P ?init moxquiz_init
bind dcc P ?stop moxquiz_stop
bind pub P ?halt moxquiz_halt
bind dcc P ?pause moxquiz_pause
bind dcc P ?cont moxquiz_cont
bind dcc P ?reset moxquiz_reset
bind dcc m ?exit moxquiz_exit
bind dcc m ?aftergame moxquiz_aftergame


weiter unten bei: # userquest and other user (public) commands
haben die public Befehle ein anderes Flag: "-" und kein "P" könnte es damit zusammenhängen?

z.B.

Code: Alles auswählen

bind pub - ?ask moxquiz_ask
bind pub - ?revolt moxquiz_user_revolt


hab ich aber auch abgeändert, dann kommt aber der Fehler in der Partyline:

[21:11] Tcl error [moxquiz_halt]: wrong # args: should be "moxquiz_halt handle idx arg"

ich kann den nur leider nich zuordnen :?

Danke
Gruß

Max
Site Admin
Beiträge: 476
Registriert: 29 Jun 2003 20:52
Wohnort: Shellfire HQ
Kontaktdaten:

Beitragvon Max » 27 Feb 2008 16:10

"-" bedeutet, dass kein Userflag benötigt wird, um Zugriff auf den Befehl zu haben. Somit hätte jeder User das Recht, den Bot zu stoppen. Das scheint offenbar nicht zu funktionieren, da im späteren Verlauf der handle benötigt wird, den der User dann ja vielleicht garnicht hat.

Versuch doch mal

Code: Alles auswählen

bind pub v ?halt moxquiz_halt


Damit sollten alle User, die mindestens den v-Flag beim Bot (nicht im Channel!) haben, den Befehl im Channel ausführen können.
Max Behr

ShellFire Gattung & Behr GbR

Max
Site Admin
Beiträge: 476
Registriert: 29 Jun 2003 20:52
Wohnort: Shellfire HQ
Kontaktdaten:

Beitragvon Max » 27 Feb 2008 16:59

Okay das Problem wahr scheinbar doch etwas komplexer :shock: bettmenn hat mich eben darauf hingewiesen, dass es daran liegt, dass es daher kommt, dass die benötigten Argumente für eine public-Funktion sich von der einer DCC-Funktion unterscheiden. Die Zeile

Code: Alles auswählen

proc moxquiz_halt {handle idx arg} {


muss demnach noch in

Code: Alles auswählen

proc moxquiz_halt {nick host handle channel arg} {


umgeschrieben werden. Danach kannst du das mit dem voice aus meinem letzten Post auch weglassen und mit "-" den Befehl für alle User freigeben. Also doch:

Code: Alles auswählen

bind pub - ?halt moxquiz_halt
Max Behr

ShellFire Gattung & Behr GbR

schteff
Beiträge: 6
Registriert: 14 Feb 2008 16:18

Beitragvon schteff » 05 Apr 2008 12:01

Hi Max,

super vielen Dank für deine Lösung funtkioniert einwandfrei!

Geprüft, getestet und für einwandfrei erfunden!

Grüße
schteff


Zurück zu „Eggdrop Support“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast