פרויקט: בניית סביבת משחק ממוחשבת

Post on 30-Dec-2015

69 views 0 download

description

פרויקט: בניית סביבת משחק ממוחשבת. שם התלמידים: תומר עזרא ואופיר ערד מנחה: שי בגון שם המורה המלווה: אלי בן שלום בית ספר: תיכון אחד העם פתח תקווה כיתה י"א מועד הגשה: 11.04.07. מבוא הגדרת הפרויקט ומטרותיו אינטליגנציה מלאכותית פונקציות בסיסיות ממשק גרפי תקשורת טסטינג הצעות לשיפור. - PowerPoint PPT Presentation

Transcript of פרויקט: בניית סביבת משחק ממוחשבת

פרויקט: בניית סביבת משחק ממוחשבת

שם התלמידים: תומר עזרא ואופיר ערדמנחה: שי בגון

שם המורה המלווה: אלי בן שלוםבית ספר: תיכון אחד העם פתח תקווה

כיתה י"א11.04.07מועד הגשה:

עיקרי התכנים

מבוא •הגדרת הפרויקט ומטרותיו•אינטליגנציה מלאכותית•פונקציות בסיסיות•ממשק גרפי•תקשורת•טסטינג•הצעות לשיפור•

תקציר

התכנון- שתי אפליקציות מקושרות שמדמות משחק

ישויות שרת – המרות| תקשורת| חוקים| מצב| הרשימה| בינה מלאכותית

ישויות משתמש- המרות| תקשורת| חוקים| מצב |הרשימה| ממשק שרתגרפי|

שחקן שחקן

מבוא ורקע

המשחק ארבע בשורה הינו משחק אסטרטגי בין שני שחקנים

חוקי המשחק –

המטרה ליצור רצף של ארבעה חיילי משחק

בנוסף, מניעת השגת מצב דומה מהיריב

הראשון אשר יוצר רצף הוא המנצח

. איך יוצרים פרוייקט במחשבים? 1

. מהו מודל נוח לעבודה? 2

. איך מתכננים נכון עבודה בכלל ואיך בצוות? 3

. איך משתפים קוד?4

. כיצד להעצים את חויית המשתמש ע"י שימוש 5בממשק גרפי ובתקשורת בין אפליקציות?

שאלות עליהן המערכת עונה

לתכנת וליצור מודל נוח לעבודה למשחק•ללמוד נושאים חדשים בתחום מדעי המחשב •

ועיצוב תוכנהלתכנן אינטיליגנציה מלאכותית•עבודה בצוות ושיתוף קוד•ליצור תקשורת בין תהליכים שונים.•בדיקת התוכנית לוח העבודה שיצרנו •

(testing) מימוש סביבת משחק "ארבע בשורה"•

תיאור מטרות העבודה

• Microsoft VISUAL C++ 6.0

• )MFC(

• )PIPES(

• www.sourceforge.net

• CVS

תיאור סביבת העבודה

יצירת סביבת משחק ממוחשבת מרובת •תהליכים

יצירת תקשורת בין שרת-לקוח•

יצירת אינטליגנציה מלאכותית•

יצירת ממשק נוח למשתמש•

ניתוח הבעיה האלגוריתמית

תומר אחראי על:

התקשורת בין האפליקציות•

אינטליגנציה מלאכותית•

אופיר אחראי על:

ישויות בסיסיות•

ממשק גרפי•

חלוקת העבודה

פונקציות2כוללת •

מינימקס•

הערכת מצב•

אינטליגנציה מלאכותית

עץ משחק

תיאור המהלכים והמצבים האפשריים, •במשחק ע"פ הלוח

התקדמות מעמיקה לאורך התורות•

התקדמות לסירוגין בין שחקן ויריב•

עץ משחק

עוברת על כל המהלכים למצב מסויים ומחזירה •את מינוס המהלך הטוב ביותר לפי האלגוריתם

המינוס הוא כדי לדמות שכאן תור היריב•

מניחה שהיריב בוחר באפשרות הטובה ביותר •בשבילו אחרת יותר טוב

בעצם-עץ משחק•

מינימקס

עץ משחק )כלשהו(-ארבע בשורה )כלשהו...(עץ מינימקס

-15הערכת מצב -21הערכת מצב -15הערכת מצב -17הערכת מצב

21מחזיר 17מחזיר 15מחזיר 15מחזיר

-21מחזיר -17מחזיר

רנדומלי •

אסטרטגיה קבועה מראש •

אסטרטגיה לומדת •

מינימקס "עמוק" •

מינימקס "מהיר" •

שילוב בין אסטרגיות•

אלגוריתמים קיימים לפתרון הבעיה

מטרתה לנקד באופן יחסי כל לוח •

עוברת על כל הרבעיות בלוח•

משלימה את המינימקס•

הערכת מצב

ישות מצב•

ישות חוקים•

ישות הרשימה•

מופיעות גם בלקוח וגם בשרת•

הכרחיות למשחק תקין•

ישויות בסיסיות

כוללת:

פונקציות הקשורות בלוח המשחק•

איפוס•

החזרת ערך בנקודה•

העתקת לוח•

ביצוע מהלך•

בטל מהלך•

ישות מצב

ישות בה נכללים חוקי המשחק•

בין היתר:•

בדיקת מנצח•

בדיקת תור•

גובה הטורים•

עדכון מהלכים אופציונליים•

עדכון גבהים•

חוקים

ישות הכוללת רשימת מהלכים אותם אפשרי •לבצע

מוסיפה מהלכים לרשימה•

יוצרת רשימות•

מוחקת אותן•

אומרת האם מהלך חוקי )איבר ברשימה(•

הרשימה

תפקידו לקשר בין המשתמש האנושי לבין •המחשב

כולל אמצעי פלט וקלט•

תצוגה צבעונית דו מימדית )חדשנית ביותר...(•

מסך רגיש ללחיצות עכבר•

חלונות עזרה, אודות ואפשרויות•

ממשק גרפי

תמונות מסךהה

תמונות מסך

תמונות מסך

תמונות מסךתמונות מסך

תמונות מסך

תתי ישויות3כוללת בתוכה •

שרת•

משתמש•

ישות עזר- המרות•

נמצאת גם בתוכנת הלקוח וגם בתוכנת השרת•

PIPEכרגע עובדת על •

ישות התקשורת

ישות השרת:•

תפקידה להעביר מערך תווים•

ישות המשתמש:•

תפקידה לקבל מערכי תווים ולהעתיקם•

נעזרות לשם כך בישות ההמרות•

ישות השרת והמשתמש

סכימה של מהלך במשחק

משתמש שרת2

משתמש 1

התחברות ראשונית

התחברות ראשונית

התחברות לשרת

התחברות למשתמש 1

שליחת סוג משחקהתחברות לשרת

התחברות למשתמש 2

בכל לחיצה )ביצוע מהלך(

בכל לחיצה )ביצוע מהלך(שליחת לוח

שליחת מהלך

שליחת לוח

שליחת מהלך

סכימת ישויות השרתניצחו

ראשין

הרשימה

רשימה

מצבקבועים

אינטליגנציה

שרת

משתמש

משחק חוקי

המרותמלאכותית

סכימת ישויות הלקוחסיווג

לוח

הרשימה

רשימה

מצבקבועים

מאפיינים

אודות עזרה

שרת

משתמש

משחק חוקי

המרות

ע"מ להקל בבדיקת הקוד בכל הקבצים יצרנו •קבצי בדיקה

פונקציות או קלאסים שנועדו לבדוק חלק •מסויים בתוכנה

טסטינג

בדיקת יעילות הסביבה ע"י שינוי אסטרטגיה•

(IP/TCPשינוי סוג התקשורת )•

שינוי המשחק עצמו•

- CHILD PROCESS שימוש ב•

הצעות לשיפור

•MSDN

•www.sourceforge.net

מקורות מידע שונים ברחבי האינטרנט•

מדריך למידה של האוניברסיטה הפתוחה •- מבוא למדעי המחשב 20427לקורס מספר

++Cשפת

ביבליוגרפיה

תודה