TGF.co.il - [קורס תכנות] שיעור #2 - פתיחת שרת ביתי
 
מציג תוצאות 1 עד 3 מתוך 3
עוד |
  1. Snir_Sofer's Avatar
    Snir_Sofer מנותק/ת TopGear Beginner
    תאריך הצטרפות
    07.01.2010
    שם פרטי
    שניר
    הודעות
    159
    #1

    קורס תכנות - שיעור #2 - שרת ביתי

    ברוכים הבאים לשיעור השני של קורס התכנות.
    בשיעור זה תתקינו במחשבכם את הקבצים בעזרתם תוכלו להתחיל לתכנת - בצורה נורמאלית.

    תוכן עניינים

    1. הורדת והתקנת השרת הביתי
    2. כיצד להפעיל את השרת
    3. רשימת קבצי השרת הביתי ופרטיהם *
    4. סקריפטים שמגיעים עם השרת הביתי *
    5. מדריכים על השרת הביתי *

    * = לא חייב לקרוא. נושאים אלו הם רק בשביל מי שמתעניין ורוצה לדעת עוד.

    הורדת והתקנת השרת הביתי

    לחצו כאן על מנת להוריד את השרת הביתי.
    פתחו תיקיה, תקראו לה באיזה שם שתרצו (אולי "שרת ביתי", "Server", או מה שאתם רוצים) וחלצו לתוכה את הקבצים.

    כיצד להפעיל את השרת

    על מנת להפעיל את השרת שלכם, יש להכנס אל samp-server.exe. אבל לפני שאתם עושים זאת - תתחייבו לערוך את פרטי השרת.

    עריכת פרטי השרת

    על מנת לערוך את פרטי השרת הכנסו אל הקובץ server.cfg.
    תפתחו אותו באמצעות כתבן או פנקס רשימות, מה שתרצו.
    מה שתראו שם יהיה זה:
    קוד PHP:
    echo Executing Server Config...
    lanmode 0
    rcon_password changemde
    maxplayers 50
    port 7777
    hostname SA
    -MP 0.3 Server
    gamemode0 grandlarc 1
    filterscripts base gl_actions gl_property gl_realtime
    announce 0
    query 1
    weburl www
    .sa-mp.com
    maxnpc 0
    onfoot_rate 40
    incar_rate 40
    weapon_rate 40
    stream_distance 300.0
    stream_rate 1000 
    בכל שורה תוכלו לראות מילה, ואחריה ערך.
    לדוגמה
    קוד PHP:
    key value 



    כאשר key הוא המילה ו value הוא הערך.
    מה זה אומר? זה אומר שלהרבה דברים המאפיינים את השרת, לדוגמה שם השרת, יש שם שמסמל אותם, וערך כמובן - שאומר מה הם.
    השורה הראשונה שאנו פוגשים היא "echo Executing Server Config...". לא נגע בה כרגע.
    שאר השורות מסמלות מילים עם ערכים.

    רשימת המילים

    lanmode - במידה ותרשמו כאן 1, רק אתם תוכלו להכנס לשרת הביתי שלכם. במידה ויירשם 0 - יהיה שרת נורמאלי.
    rcon_password - סיסמת ה RCON של השרת. למי שלא יודע, באמצעות אפשרויות ה RCON, ניתן לשלוט בשרת בתור אדמין ראשי: לתת באנים, להפיל את השרת, לעשות ריסטים בשרת, ועוד. כדי להכנס ל RCON ניתן לעשות את הפקודה /rcon login מכל שרת. מידע נוסף על הרקון יהיה בשיעור הבא.
    maxplayers - מקסימום שחקנים בשרת. מינימום - 1, מקסימום - 500 (נכון ל SA-MP 0.3a).
    port - הפורט של השרת. ברירת המחדל היא 7777.
    hostname - שם השרת שיוצג ברשימת השרתים.
    gamemode0 - שם המוד הראשי שבשרת. מידע נוסף בהמשך.
    filterscripts - פילטרסקריפטים בהם השרת משתמש.
    announce - האם להציג את השרת ברשימת השרתים (Internet)? רשמו 1 כדי להציג ו 0 כדי לא להציג.
    query - אני לא בטוח מה זה עושה ^^ שכחתי ממזמן. בכל מקרה עדיף שלא לנסות לגעת בזה. אם הזכרון המעורפל שלי צודק, המילה הזו לא עובדת בכלל.
    weburl - האתר של השרת.
    maxnpc - מספר בוטים בשרת. כל בוט = סלוט של שחקן. משמע, בוט תופס מקום של שחקן.
    השאר שלמטה - לא לגעת. אספר עליהם בהמשך.

    אתם מוזמנים לערוך הכל כרצונכם.

    הפעלה

    לאחר שערכתם את פרטי השרת, אתם מוזמנים לפתוח את הקובץ samp-sever.exe.
    ייפתח לכם חלון דוס שחור, בו כתובים פרטי ההרצה.
    במידה והחלון נפתח לשנייה ונסגר מיד - יש בעיה. חזרו על המדריך ובדקו מה לא עשיתם טוב.
    במידה והוא נשאר פתוח - השאירו אותו כך. כל עוד הקובץ הזה פתוח, השרת פתוח.
    כעת הוסיפו לרשימת השרתים שלכם את הכתובת הבאה:

    קוד:
    localhost
    פרטים (רק למי שמתעניין, לא חובה): localhost בעצם מייצג את האייפי שלכם. יכולתם במקומו לרשום גם את האייפי שלכם. במידה ותרצו לתת לאחרים לשחק בשרת, תנו להם את האייפי שלכם ולא את הצירוף שכתבתי. ה SA-MP אוטומטית מוסיף פורט 7777 לאייפי שאתם כותבים, במידה ולא כתבתם את הפורט. לכן אם שיניתם פורט תצטרכו להוסיף localhost:8888. ב8888 פשוט לשים את הפורט. כמובן ש localhost:7777 גם יעבוד.

    כעת אתם יכולים להכנס לשרת הביתי, לשחק עם חברים או לבד, לראות מה הולך שם.
    רק במידה ואתם מתעניינים ורוצים לדעת יותר - אתם מוזמנים להמשיך לקרוא את השיעור. החלק הבא אינו נדרש ללמידת Pawn.

    רשימת קבצי השרת הביתי ופרטיהם

    קבצים

    server.cfg - קובץ הפרטים של השרת. הסבר למעלה.
    samp-server.exe - הקובץ בעזרתו מריצים את השרת.
    samp-npc.exe - קובץ שכנראה משמש ליצירת NPCs - בוטים. לא רלוונטי בשבילכם.
    announce.exe - הקובץ שאחראי על פרסום השרת בלשונית Internet ב SA-MP. גם זה, לא רלוונטי בשבילכם.
    server-readme.txt - מידע לגבי עריכת server.cfg והשרת הביתי בכללי.
    samp-lisence.txt - זכויות יוצרים וחוקים שונים לגבי שרתי SA-MP.
    server_log.txt - הלוגים של השרת. קובץ זה נוצר רק אחרי פעולה כלשהית של השרת.
    samp.ban - קובץ בו רשומים באנים שניתנו מהשרת. מתקיים רק כאשר יש פעולה עם באנים.

    תיקיות

    scriptfiles - התיקיה בה נמצאים קבצים שמשומשים בסקריפטים עצמם. לדוגמה - פרטי שחקנים, רשימות כלשהן, ועוד.
    gamemodes - תיקיית המודים של השרת.
    filterscripts - תיקיית הפילטרסקריפטים של השרת.
    npcmodes - תיקיית קבצי הבוטים של השרת.
    include - הייתי מציע למחוק; נוצר ביחד עם אחד המודים הלא בדיוק נדרשים ללימוד.
    pawno - תיקיית העורך לשפת ה Pawn.
    pawno/include - תיקייה המכילה ספריות (INC) שונות לתכנות.

    סקריפטים המגיעים עם השרת הביתי

    ישנם מספר סקריפטים אשר נוצרו ע"י צוות SA-MP ומגיעים ביחד עם השרת הביתי.
    תוכלו להשתמש בהם בשרת שלכם במידה ותרצו.

    מודים

    על מנת לשים מוד בשרת, יש לערוך את הערך של gamemode0 ב server.cfg לשם המוד.

    lvdm - המוד Las Venturas DeathMatch. מוד פשוט, כולל פקודות בסיסיות - help, givecash, ועוד כמה, מכיל רכבים ברחבי העיר LV.
    bare - סקריפט לבדיקה. לא שימושי.
    timertest - כנ"ל.
    grandlenc - מוד אשר עבדו עליו לא מעט והוא נועד לבדיקות של SA-MP 0.3.
    barron - מוד עם מטוסים קטנים (RC Barron) שיכולים לירות. יש קרבות בין כל המטוסים, מוד נחמד מאוד לדעתי.
    rivershell - המוד המוכר. 2 קבוצות, כל קבוצה צריכה לגנוב סירה מהקבוצה היריבה לה.

    פילטרסקריפטים

    על מנת לשים פילטרסקריפט בשרת, יש להוסיף לשורה של filterscripts ב server.cfg את שם הפילטרסקריפט.

    adminspec - מכיל מספר פקודות למעקב אחרי שחקנים.
    base - סקריפט המכיל 3 פקודות שימושיות: הודעה פרטית (/pm), קיק (/kick) ובאן (/ban).
    baseaf - הסקריפט base בצורה יותר מורחבת. כולל צ'אט פרטי לאדמינים ואנטי הצפה בצ'אט.
    fsdebug - סקריפט מאוד שימושי שמאפשר לערוך את השרת בצורה נוחה.
    gl_X - כל אלו הם פילטרסקריפטים של המוד grandlenc.
    menutest - סקריפט בדיקה לתפריטים.
    npc_record - סקריפט המשמש לצילום בוטים. פרטים בשיעורים הבאים.
    test_cmds - סקריפט שנוצר על מנת לבדוק את תכונות ה SA-MP 0.3. כולל הרבה פקודות שונות.

    מדריכים על השרת הביתי

    אפשרויות נוספות ב server.cfg

    ישנן מספר אפשרויות בפרטי השרת שלא הוצגו למעלה, ושלא רשומות ב server.cfg שמגיע עם השרת הביתי.
    האפשרויות הללו הן:
    bind - האייפי של השרת. צריך להיות האייפי שלכם. שימושים באפשרות זו תגלו בהמשך.
    gravity - כוח המשיכה שיהיה בשרת. הנורמאלי הוא 0.008.
    weather - מזג האויר שיהיה בשרת. לרשימה לחצו כאן.
    mapname - שם המפה, ברירת המחדל היא San Andreas.
    password - סיסמה לכניסה לשרת.
    rcon - האם להפעיל את האפשרות לכניסה לרקון מבלי להיות בשרת? רשמו 1 אם כן, ו 0 אם לא.
    יש עוד (לרשימה מלאה רשמו varlist בחלון הדוס) שלא אפרט עליהם כאן כי לא ראיתי סיבה.

    שימוש ב RCON

    RCON - אפשרות לשליטה בשרת כאדמין ראשי, מנהל ראשי.
    כדי להתחבר ל RCON דרך השרת, יש להקליד את הפקודה:
    קוד:
    /rcon login [password]
    כאשר ב password נמצאת הסיסמא שהוקלדה ב server.cfg (במילה rcon_password).
    ל RCON מגוון אפשרויות שונות.
    מספר פקודות RCON שימושיות:
    קוד PHP:
    /rcon ban [id] - באן
    /rcon kick[id] - קיק
    /rcon exit - הפלת השרת
    /rcon players רשימת השחקניםאיידייםכינוייםפינגים ואייפיים
    /rcon say [text] - כתיבה בתור אדמין (* Adminbla bla)
    /
    rcon cmdlist הרשימה המלאה של פקודות ה RCON 
    מערכת הבאנים של SA-MP

    ב SA-MP קיימת מערכת באנים מובנת ל IP של שחקנים.
    היתרון בה, והשוני משאר מערכות הבאנים, הוא ששחקנים שקיבלו באן רואים כאילו השרת ממנו הם קיבלו באן - נפל.
    דבר זה יכול להטעות אותם ולגרום להם לא לחזור.

    לאחר ששחקן קיבל באן, הוא יופיעה בקובץ samp.ban בצורה כזאת:

    קוד:
    IP [Date | Time] Name - BanType 
    Name = כינוי השחקן
    Time = שעת ההשעייה
    Date = תאריך ההשעייה

    IP - האייפי של השחקן
    BanType - סוג הבאן (מבחוץ, לאייפי, דרך המשחק, וכו')
    דוגמה:

    קוד:
    127.0.0.1 [22/10/09 | 22:52:19] AAA - CONSOLE BAN 
    מספר דרכים לנתינת באן:
    1. רשימת הפרטים הנ"ל בקובץ samp.ban.
    2. שימוש בבאן דרך סקריפט - פרטים בהמשך.
    3. שימוש בפקודת הרקון /rcon ban [id].
    4. שימוש בפקודת הרקון /rcon banip [ip].

    דרכים להורדת באן:
    1. מחיקת שורת הבאן מהקובץ samp.ban.
    2. שימוש בפקודת הרקון /rcon unbanip [ip].

    שימו לב: לאחר כל פעולה עם הקובץ samp.ban, תצטרכו לעשות את הפקודה /rcon reloadbans, אשר מעדכנת את הבאנים בשרת ע"פ מה שרשום בקובץ באותו רגע שעשיתם את הפקודה.

    שימוש בפילטרסקריפטים

    פילטרסקריפטים כמו שהזכרתי בשיעור הקודם, הם סקריפטים שרצים בכל מוד שיהיה בשרת.
    כמובן שיש צורך להפעיל אותם.

    ישנן 2 דרכים לטעון פילטרסקריפט:

    1. לפני שמפעילים את השרת - בקובץ server.cfg להוסיף בשורת filterscripts את שם קובץ ה AMX של הפילטרסקריפט (ללא .amx).
    לדוגמה:

    קוד:
    filterscripts test_cmds adminspec ...
    להפריד פילטרסקריפטים ברווח.

    2. בזמן שהשרת פועל, ישנן 3 פקודות RCON הקשורות בטעינת פילטרסקריפטים:
    /rcon loadfs [filterscript name] - טעינת פילטרסקריפט.
    /rcon unloadfs [filterscript name] - הורדת פילטרסקריפט.
    /rcon reloadfs [filterscript name] - הורדת וטעינת פילטרסקריפט.

    מודים מתחלפים

    קודם כל, עליכם להכיר פקודת רקון מאוד שימושית: /rcon changemode [gamemode name] - הפקודה הזו מחליפה את המוד הנוכחי בשרת למוד שרשמתם.

    ועכשיו לנושא: מודים מתחלפים.
    ב SA-MP יש אפשרות ליצור מודים מתחלפים שיעברו אחד אחרי השני.
    ב SA-MP יש הגבלה ל 16 מודים בסך הכל שיהיו "מוכנים לטעינה" (או טעונים) בשרת.
    יש לרשום אותם בצורה של gamemodeX [gamemode name] [times] בקובץ server.cfg.
    X הוא מספר המוד, gamemode name הוא שם קובץ ה AMX של המוד (ללא .amx) ו times הוא מספר הפעמים שהמוד ישוחק.
    דוגמה:
    קוד PHP:
    gamemode0 rivershell 3gamemode1 barron 1gamemode2 area51 1 
    ע"פ הקוד הנ"ל, שאמור להיות ב server.cfg, המוד הראשון שיעלה לשרת הוא Rivershell.
    לאחר 3 ריסטים במוד הזה (3 משחקים = 3 ריסטים), המוד יתחלף ל barron.
    לאחר משחק אחד בו נעבור ל Area51, ולאחר משחק אחד גם בזה - נחזור לעוד 3 פעמים בריברשל.
    וכך זה נמשך.

    על מנת ליצור ריסט מיידי (לפני סיום של מוד או ניצחון בו), יש להשתמש בפקודת הרקון /rcon gmx.
    (GMX = Game Mode Exit)

    התחברות ל RCON מבלי להכנס לשרת

    ב SA-MP קיימת אפשרות בשם "Remote Console".
    אפשרות זו נותנת למנהלי השרתים יכולת לשלוט על השרת שלהם גם כאשר הם לא נמצאים בו.
    כדי להתחבר אל ה RCON מבלי להכנס למשחק, פשוט פתחו את ה SA-MP, לחצו על השרת שאתם רוצים לשלוט בו, ואז לחצו על הכפתור למעלה - עם התמונה של החלון השחור (חלון דוס שחור שרשום עליו "_<").
    הקלידו את סיסמת ה RCON, ייפתח לכם חלון דוס שחור.
    במידה ורשום שם "RCON admin connected to the server" הצלחתם להתחבר.
    במידה ולא, הסיסמא כנראה שגויה.
    כדי לשלוט בשרת רשמו שם פשוט פקודות רקון, אבל(!) - בלי /rcon.
    לדוגמה:
    קוד PHP:
    ban 2
    players
    cmdlist
    changemode lvdm 
    סוף =]

    קרדיט לעמית בראמי יוצר המדריך



  2.  
  3. נושאים אחרונים
  4. Almogzxp מנותק/ת TopGear Advanced
    תאריך הצטרפות
    20.07.2009
    שם פרטי
    אלמוג
    הודעות
    345
    #2

    יפה מאוד!
    (ידוע אבל שימושי ביותר!)
    ---סטטוס---
    פרסים:
    5 ווינרים! , פעם אחת מנהל השבוע.
    ניהול:
    פעם אחת מנהל פורום פלאש ואנימציה.
    פעמיים מנהל פורום GUNZ.
    פעמיים מנהל פורום יוצרים משחקים.

    איזה היסטוריה יש לי פה אה ? XD
    ---עיסוקים---
    GunZ, Flash + as2, וSA-MP.
    ------

  5. asaf255 מנותק/ת TopGear Professional
    תאריך הצטרפות
    26.12.2009
    הודעות
    638
    #3

    ידוע וקל תודה!!!

 

המבקרים מצאו דף זה ע"י חיפוש המילים:

SEO by vBSEO