BeamNG.Earth
A 1:1 scale streamed Earth for BeamNG.drive: real elevation and satellite imagery, floating origin, LOD streaming from a companion server
翻譯準備中
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證正在載入完整 README。 以下為已儲存的摘錄。
Alias Games — משחק מילים מרובה משתתפים משחק אליאס אונליין לטלפון (PWA), בנוי על Next.js ו-Redis (Upstash). אתר עצמאי, בנפרד מאתר הקניות.檢視完整 README ↗
משחק אליאס אונליין לטלפון (PWA), בנוי על Next.js ו-Redis (Upstash). אתר עצמאי, בנפרד מאתר הקניות.
app/page.tsx דף המשחק (/)
app/layout.tsx מטא-דאטה והתקנה כאפליקציה
app/api/alias/rooms/ API: יצירת חדר, הצטרפות, פעולות משחק, קריאת מצב
app/api/alias/ads/ API פרסומות: הצגה, ספירה, ניהול, דוחות
app/admin|advertise|report/ סביבת ניהול, טופס מפרסם, דוח למפרסם
components/alias/
AliasClient.tsx כל מסכי המשחק (כניסה, לובי, תור, סיכום, ניצחון)
Splash.tsx מסך פתיחה + שעון החול עם מסגרת העץ
lib/alias/
game.ts כל חוקי המשחק ומכונת המצבים (צד שרת)
store.ts שמירה ב-Redis + נעילה לכל חדר
words.ts מאגר המילים
types/alias.ts טיפוסים משותפים
public/ אייקונים, manifest ו-service worker להתקנה כאפליקציה
app/globals.css כולל אנימציית החול של שעון החול
/?room=1234 + שיתוף בוואטסאפ. הסיסמה לא נכללת בקישור.כברירת מחדל אין שום פרסומת. גם אם מפרסם שלח בקשה וגם אם אושרה, שום דבר לא מופיע עד שבעל המשחק מדליק את המתג הראשי בסביבת הניהול.
| כתובת | מי | מה |
|---|---|---|
/admin | בעל המשחק | דשבורד: מאשר/דוחה/משהה פרסומות, מעלה תמונת באנר מהטלפון, עורך כותרת וקישור, קובע מחיר לכניסה, רואה חשיפות, כניסות וסכום לתשלום, מדליק וכבה את כל הפרסומות |
/advertise | מפרסם | טופס הצעת פרסומת (נשאר "ממתין לאישור" ולא מוצג) |
/report?t=… | מפרסם | דוח אישי: כניסות, חשיפות וכמה לשלם |
כניסה לדשבורד (/admin): שתי דרכים, אפשר להגדיר אחת או שתיהן.
ADMIN_EMAIL (ברירת מחדל [email protected]) עם קישור חד-פעמי בתוקף ל-15 דקות, ולחיצה עליו מכניסה לדשבורד ל-12 שעות. הגדרה: נרשמים בחינם ל-Resend עם אותה כתובת מייל, יוצרים API Key, ומגדירים ב-Vercel את RESEND_API_KEY. (בחשבון חינמי של Resend אפשר לשלוח רק לכתובת שנרשמתם איתה, ואין צורך להגדיר דומיין.)ADS_ADMIN_KEY עם מפתח ארוך וסודי, שמקלידים בדף הכניסה.בלי אף אחד מהשניים סביבת הניהול לא קיימת. ההגנות: קישור חד-פעמי שנשמר מוצפן, עוגייה HttpOnly, מקסימום 3 מיילים ב-10 דקות, ו-5 ניסיונות מפתח שגויים נועלים לדקה.
תשלום לפי כניסות: כל פרסומת מקושרת דרך /api/alias/ads/go?id=…, וכל כניסה נספרת לפני ההפניה למפרסם.
אותו מכשיר שנכנס לאותה פרסומת שוב בתוך שעה נספר פעם אחת, ובוטים ותצוגות מקדימות של קישורים לא נספרים.
המערכת מחשבת כמה כל מפרסם חייב (כניסות × מחיר), אבל לא גובה כסף: את הגבייה עושים מחוץ למערכת
(ביט, העברה בנקאית, חשבונית) לפי הדוח.
מקומות: מסך הכניסה, הלובי, וסיום תור/משחק. אף פעם לא באמצע תור ולא ליד כפתורי המשחק. כל פרסומת מסומנת "פרסומת".
Google AdSense (אופציונלי): מגדירים NEXT_PUBLIC_ADSENSE_CLIENT ו-NEXT_PUBLIC_ADSENSE_SLOT_HOME/LOBBY/ROUNDEND,
מוסיפים public/ads.txt, ומדליקים את המתג "Google AdSense" בניהול. ספונסר ישיר גובר על AdSense באותו מיקום.
שימו לב: אם יש משתמשים באיחוד האירופי צריך באנר הסכמה לעוגיות לפני AdSense, ופרסומות לילדים מוגבלות בחוק. תמונות באנר מגיעות מקישור שהמפרסם נותן, ולכן בודקים כל פרסומת בתצוגה המקדימה לפני אישור.
alias-games.TURSO_DATABASE_URL, TURSO_AUTH_TOKEN). הטבלה נוצרת אוטומטית בשימוש הראשון.ADS_ADMIN_KEY (ראו למטה).https://alias-games.vercel.app, ואפשר לחבר דומיין משלך.בלי מסד נתונים המשחק לא יעבוד באתר חי, כי כל בקשה יכולה להגיע לשרת אחר. לבדיקה: /api/alias/health?check=1.
בראש הדשבורד (/admin) כרטיס "כמה משתמשים יש לי": סה״כ משתמשים, חדשים היום, פעילים היום, פעילים ב-7 ימים, משחקים שנפתחו, וגרף של 14 הימים האחרונים.
"משתמש" = מכשיר או דפדפן ייחודי: בכניסה הראשונה נוצר מזהה אקראי אנונימי (בלי שם או מייל) ונשמר בדפדפן. מי שמשתמש בכמה מכשירים או מנקה את הדפדפן נספר כמה פעמים. הימים לפי שעון ישראל, והספירה מתחילה מרגע שהתכונה עלתה.
ADS_ADMIN_KEY (השוואה בטוחה, נעילה לדקה אחרי 5 ניסיונות שגויים). בלי המפתח היא לא קיימת.main (Settings → Branches).npm install
npm run dev # http://localhost:3000
ללא משתני סביבה המשחק שומר חדרים בזיכרון (מתאים לפיתוח). בפרודקשן נדרש מסד נתונים: Turso או Upstash Redis.
UPSTASH_REDIS_REST_URL=
UPSTASH_REDIS_REST_TOKEN=
(או KV_REST_API_URL / KV_REST_API_TOKEN של Vercel). אופציונלי: NEXT_PUBLIC_SITE_URL לתצוגה המקדימה של קישורי הזמנה.
lib/alias/words.tsTEAM_STYLE ב-AliasClient.tsx, DEFAULT_TEAM_NAMES ב-game.tslib/alias/game.ts