בוט דרגות

ƒlameStriker

New member
בוט דרגות

שלום. יש לי כמה שאלות בקשר לבוט דרגות ששמתי לערוץ שלי. 1.הגדרתי לבוט שלי שכשכל פעם שמישהו שיש לו דרגה,יכתוב: opme! אז הוא יקבל אופ. הנה הסקריפט שאני משתמש:
on 5:text:!opme*:*: { if ($me !isop $chan) { notice $nick I am not op at $chan $+ , sorry! } elseif ($me isop $chan) { if ($2 != $null) { mode $chan +ooo $2 | notice $chan $nick deoped $2 } elseif ($2 == $null) { mode $chan +ooo $nick } } }​
עכשיו,הכל טוב ויפה כשמישהו רוצה אופ וכותב את הטריגר הזה. השאלה שלי היא: מה אני צריך לעשות שהבוט שלי ייתן אופ אוטומטי למי שנכנס והוא ברשימה אצל הבוט? ואני לא מדבר על צ'נסרב שייתן אופ,כי עשיתי את זה ואני רוצה לדעת איך כותבים סקריפט שיגיד לבוט לתת אוטואופ למי שנכנס מבלי שהוא יקליד: opme! מובן? השאלה השניה: 2.אני רוצה שאני (הפאונדר) יגיד לבוט שלי להסיר או לתת אופ למי שבערוץ. נגיד שאני יקיליד: op nick! והבוט יזהה את הניק ויתן לו אופ. מה אני צריך לעשות בשביל זה יקרה? תודהההההה מראש על העזרה!!
 

Sc8

New member
אז ככה

בקשר לקוד שלך את ההתחלה תשנה קצת שזה יעבוד רק לערוץ on 5:text:!opme *:#: ומה שביקשת on @5:join:#:mode # +o $nick on @*:text:!op *:#:if ($nick == הניק שלך) && ($2 ison #) { mode # +o $2 } אם הבנתי אותך נכון​
 

Sc8

New member
בע

בגלל העברית זה יצא קצת הפוך, אז השני זה ככה:
on @*:text:!op *:#:if ($nick == your-nick) && ($2 ison #) { mode # +o $2 }​
 

ƒlameStriker

New member
תודה רבההההההה../images/Emo70.gif

הקטע של op nick! הצליח
בדיוק כמו שרציתי
. אבל הקטע של אוטואופ בבוט יש בעיה קטנה. כתבתי את הסקריפט שנתת לי:
on @5:join:#:mode # +o $nick​
וזה אכן הצליח
. אז ניסיתי לעשות ניסוי,כדי לוודא שלא יהיו "זייפנים" או גנבי אופ... חחח. אז נכנסתי בניק של אותו אופר שלי וזה בכל זאת נתן לו אופ.
זה אפשרי לעשות שהבוט יזהה בדיוק,אם הניק שצריך לקבל ממנו אוטואופ,הוא אכן בעל הניק? הכוונה שיזהה את ההוסט שלו. הבנת? ככה שיווצר מצב שמי שיכנס עם הניק של אותו אופר,אני רוצה שהוא לא יקבל אופ,וזה שכן צריך לקבל אופר,כן יקבל. אם לא ניסחתי נכון,אני אסביר שוב.
 

Sc8

New member
אפשרי אבל לא תמיד יעבוד..

אתה יכול לתת את הדרגה לאדרס מסויים כך שברגע שהאדרס הזה יהיה תואם לאדרס החמישי של מי שנכנס זה ייתן לו אופ.. אתה יכול לעשות זאת כך:
/auser 5 ADDRESS address = הכתובת שלה אתה רוצה לתת את הדרגה לדוגמא /auser 5 *!Sc8@*​
יעבוד רק על מישהו שהאי די נט שלו הוא Sc8 יש במירק כבר רשימה של כמה אדרסים לפי מספר.. כך שאם אותו אדם מחובר תוכל לדוגמא לעשות
/guser 5 NICK 2​
וזה ייתן להוסט של הניק הזה את הדרגה הבעייה פה היא שהוסט יכול להשתנות וגם אידינט יכול להשתנות כך שכל אחד יכול לעקוף את זה אני מציע לך לתת את זה על הניק של אותו אחד + אידינט כך זה יהיה יותר בטוח אבל לא תמיד יעבוד.. תמיד יוכלו לעקוף את זה. אבל אם תתן להוסט תדע שהוסט בדרך כלל משתנה ואז זה בכלל לא יעבוד על מי שנתת לו את הדרגה וההוסט שלו השתנה. תוכל לעשות
/auser 5 NICK!IDENT@*​
אבל שוב אני אומר לך שבכל זאת יוכלו לעקוף את זה.. פשוט לשנות אידינט לאידינט הזה..
 

ƒlameStriker

New member
א-הא..

אוקיי,הבנתי. תודה רבה על ההסבר המפורט שלך :) עזרת לי מאוד. אני חושב שאני אוותר על העניין של אוטואופ מהבוט ואני אשאר עם אוטואופ דרך צ'נסרב. נראה לי יותר בטוח.
 

ƒlameStriker

New member
עוד שאלה-בוט נגד הצפות

אממ אני צריך בוט שיעיף משתמש שיציף את הערוץ. הבוט יצטרך לתת קיק (רק קיק) אחרי 8 שורות שמשתמש כותב בזמן קצר מאוד. אתם יודעים אולי איפה אני יכול להשיג סקריפט כזה? תודה!
 

Sc8

New member
טוב

on @*:text:*:#:inc $iif(!%fld. [ $+ [ # ] $+ . $+ [ $nick ] ],-u4) $+(%,fld.,#,.,$nick) | if (%fld. [ $+ [ # ] $+ . $+ [ $nick ] ] == 8) { kick # $nick | unset $+(%,fld.,#,.,$nick) }​
זה בארבע שניות, תוכל לשנות את ה4 באיזה שאתה רוצה
 

ƒlameStriker

New member
תודה רבה!!!

עובד. רק שכתבת: $iif אז הבנתי מיד שיש טעות וזה צריך להיות if ולא iif אז שיניתי וזה עובד. עזרת לי מאוד,אתה גדול-תודה ענקייייייתתתתת!
 

Sc8

New member
לא, אין טעות..

זה כן אמור להיות $iif יש פקודה /if ויש מזהה $iif, פה אני משתמש במזהה
 

ƒlameStriker

New member
אממ זה כל כך קריטי?

כי לקחתי את הסקריפט שנתת לי ומחקתי את ה-i הראשון מה-$iif והסקריפט בכל זאת פועל! אז זה משנה אם זה יהיה עם i אחד או שניים?
 

Sc8

New member
משנה..

אם לא עשית עם שני i אז: קודם כל, אין כזה מזהה $if במירק, כך שזה יחזיר לך $null (כלום) ואז הפקודה שמעלה את המשתנה תהפוך לזה:
inc $+(%,fld.,#,.,$nick)​
מה שאומר שזה יעלה את המשתנה עם הערוץ והניק בכל פעם שהוא רושם משהו בלי הגבלת זמן.. ולא משנה כל כמה זמן הוא אמר את זה. למשל הוא אמר כרגע 7 פעמים ובעוד שעה הוא יכתוב עוד פעם אחת זה יעיף אותו (מה שלא אמור לקרות, זה אמור להעיף רק אם הוא רשם 8 פעמים תוך זמן מסויים).
 

ƒlameStriker

New member
אוףףףף זה מוזר מאודדדד../images/Emo70.gif

תראה,אחרי שהסברת לי שאי אפשר לכתוב רק עם i אחד אז לקחתי את הסקריפט שנתת לי (בדיוק כמו שהוא בהודעה הזאת) ושמתי ברימוט. הבאתי קלון שלי והצפתי איתו את הערוץ ומה קרה?!-לא קרה כלום! הסקריפט לא העיף את המציף. אז נכנסתי לרימוט ושוב שיניתי את $iif ל-$if ושוב נכנסתי עם הקלון שלי והצפתי את הערוץ. ומה קרה? כן בדיוק,הקלון שאיתו הצפתי-הועף! אוף זה מוזר!!! למה כשהסקריפט כתוב עם $iif זה לא מעיף וכשזה כתוב עם $if זה כן מעיף? דרך אגב,הערוץ שלי נמצא במקרון-זה משנה? אה ועוד משהו,כשהסקריפט היה עם $iif אז בחלון השרת היה כתוב לי:
* /if: close bracket not found​
מה זה?! למה זה? תודה רבה לך על כל העזרה!!!
 

Sc8

New member
תראה..

מחק את הקוד הקודם שלך. תרשום:
/unset %fld.*​
באיזה חלון שאתה רוצה. עכשיו תשים ברימוט שלך את זה:
on @*:text:*:#:inc $iif(!%fld. [ $+ [ # ] $+ . $+ [ $nick ] ],-u4) $+(%,fld.,#,.,$nick) | if (%fld. [ $+ [ # ] $+ . $+ [ $nick ] ] == 8) { kick # $nick | unset $+(%,fld.,#,.,$nick) }​
 
למעלה