Connect4 — מהלוח הראשון למשחק עם מחשב וחברים


13 תוצרים עובדים ב־Java, XML ו־View Binding

בונים משחק ארבע בשורה: מתחילים בציור ובחוקי המשחק, מוסיפים שמירה ומחשב, ולבסוף משחקים דרך חדרי Firebase. כל פרק מתחיל במצב שעבד בסוף קודמו ומסתיים בתוצאה שאפשר להפעיל ולבדוק.

נקודת ההתחלה

הפרויקט כבר נוצר כ־Empty Views Activity, בשפת Java, עם XML ו־View Binding פעיל גם ב־Gradle וגם ב־MainActivity. הקוד משתמש בחבילה com.example.connect4. נדרשת היכרות עם מחלקות, מערכים, תנאים, לולאות ומתודות; מושגי Android החדשים נלמדים במקומם במסלול.

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

פרק מה לומדים מה עובד בסיום
01 — לוח שמצויר ומגיב למגע Canvas, גאומטריה ו־callback לוח 6×7 מדווח על עמודה שנבחרה
02 — דיסקיות, כוח כבידה ותורות מערך, כוח כבידה, צילום מצב ותור דיסקיות נופלות; עמודה מלאה נדחית; משחק חדש
03 — מתי המשחק מסתיים? ארבעה כיוונים, תיקו והגנת סיום משחק מקומי שלם עם סימון הרביעייה
04 — אותו משחק אחרי סיבוב ופתיחה מחדש ViewModel, SharedPreferences ו־replay המשחק חוזר לאחר סיבוב ופתיחה מחדש
05 — מחשב פשוט שאפשר להסביר ממשק שחקן, היוריסטיקה ו־Fragment משחק נגד מחשב פשוט בכל אחד מהצבעים
06 — תור מחשב ברקע בלי מהלכים ישנים Executor, callback, ביטול וזהות בקשה חישוב ברקע ללא החלת תוצאה ישנה
07 — מחברים יריב מוכן של המורה חבילת מורה, קטלוג ו־fallback שלושה מודלים נבחרים פועלים offline
08 — זהות משתמש לפני משחק רשת Firebase Auth וזרימה אסינכרונית יצירת חשבון, כניסה ויציאה באימייל
09 — כניסה עם חשבון Google Credential Manager וזהות Firebase זרימת כניסה עם Google ותקלות הגדרה
10 — לובי, חדרים ושני מושבים לובי, push key, UID ו־transaction אדום, צהוב וצופים בחדרים מתעדכנים
11 — מהלך אחד, שלושה מסכים היסטוריה, replay ועסקת מהלך משחק משותף עם תוצאה זהה אצל המשתתפים
12 — ניתוק, חזרה וסנכרון עם החדר ניתוק, reconciliation ומחזור חיים חזרה לחדר בלי מהלך כפול או צילום ישן כבסיס לקלט
13 — מלטשים את האפליקציה ומאמתים את התוצר משאבים, landscape, ניגודיות ומשוב התצוגה הסופית ואימות המשחק בכל המצבים

שלוש תחנות שאפשר להציג

  • פרק 3: משחק מקומי שלם לשני אנשים.
  • פרק 7: משחק מקומי, היריב הפשוט והיריב המסופק — ללא צורך בחשבון או ברשת.
  • פרק 13: גם חשבונות, חדרים, צופים והתצוגה הסופית.

כל קובץ הוא מיני־מדריך ולא התחייבות לשיעור של 45 דקות. פרקי המחשב והרשת יכולים להתפרס על כמה מפגשים. קוראים את ההסבר, מקלידים שינוי ממוקד ובודקים את התוצאה לפני שממשיכים.

מה המורה מספק ומה התלמיד כותב?

תחום אחריות
חוקי המשחק, ציור, מגע, שמירה, היוריסטיקה ורשת התלמיד מיישם ומסביר לפי הפרקים
חיבור יריב למנוע, עבודה ברקע וביטול התלמיד מיישם ומאמת
MCTS, קידוד טנזורים, טעינה ואימות של המודל והמודלים המאומנים חבילת מורה מוכנה בפרק 7; לומדים את החוזה ולא את המימוש הפנימי
Firebase/OAuth וכללים במסד המשותף הכנה של המורה לצד הסבר ובדיקה של זרימות הלקוח
בדיקות אוטומטיות ותיעוד האימות חומר מורה מלווה; אין למחוק את בדיקות התבנית

למורה ולמי שמתחזק את המסלול: תוכנית המימוש, checkpoints ומצב האימות. הכיסוי הוא של שילוב מודל מסופק; אין כאן קורס אימון ML או מימוש MCTS.