پرش به مطلب اصلی

وقتی بازی کرش می‌کند چه کنیم

خود پنجرهٔ کرش معمولاً علت را نشان نمی‌دهد. GPCL اول گزارش‌ها را می‌خواند و سرنخ می‌دهد، بعد به ترتیب زیر پیش بروید.

اول یک کار بکنید

در پنجرهٔ کرش «خروجی گرفتن از گزارش خطا» را بزنید و zip ساخته‌شده را ذخیره کنید. ابتدای گزارش نتیجهٔ تحلیل GPCL است و بعد فهرست مودها، Java، پارامترهای اجرا و همهٔ گزارش‌ها می‌آید؛ بررسی تقریباً به آن تکیه دارد.

1. اول تحلیل GPCL را ببینید​

پنجره ۱ تا ۲ سرنخی را که GPCL در گزارش‌ها پیدا کرده نشان می‌دهد، مثلاً «حافظه کافی نیست» یا «بررسی پیش‌نیاز یا سازگاری مودها رد شد». با زدن «دیدن جزئیات» همهٔ سرنخ‌ها، خطوط گزارش مربوطه و اطلاعات کرش دیده می‌شود.

این نتیجه‌ها بر پایهٔ تطبیق کلیدواژه‌اند و فقط جهت بررسی‌اند. اگر گزارش اطلاعات دقیق‌تری داشته باشد (مثلاً کدام پیش‌نیاز کم است) در شواهد فهرست می‌شود.

2. از گزارش خطا خروجی بگیرید​

دکمه در پنجرهٔ کرش هست. جایی را برای ذخیره انتخاب کنید؛ GPCL این‌ها را بسته‌بندی می‌کند:

  • error-report.txt: نتیجهٔ تحلیل، خلاصهٔ خطا، سیستم / کارت گرافیک / Java، فهرست مودها، بسته‌های منابع و شیدرها، پارامترهای اجرا، خروجی بازی، خطوط خطا در گزارش؛
  • crash-reports/: گزارش‌های کرش تولیدشده در همین کرش؛
  • logs/: latest.log و debug.log (اگر خیلی بزرگ باشند فقط بخش انتهایی)؛
  • jvm-crash/: hs_err_pid*.log که خود JVM می‌نویسد (اگر JVM به‌خاطر درایور کارت گرافیک و مانند آن کرش کند)؛
  • launcher-log.txt: گزارش لانچر؛
  • game-output.txt: خروجی استاندارد و خروجی خطای فرایند بازی در این اجرا.

--accessToken و نام کاربری سیستم در گزارش پوشانده شده‌اند و می‌توانید مستقیم بفرستید. فقط تصویر پنجرهٔ کرش را نفرستید.

3. خودتان گزارش را ببینید​

«دیدن گزارش» در پنجره خروجی فرایند بازی را باز می‌کند. به انتهای آن نگاه کنید و این کلمه‌ها را جست‌وجو کنید:

کلیدواژهمعمولاً یعنی
Exception، Caused byاستثنای واقعی معمولاً بعد از اولین Caused by است
OutOfMemoryErrorحافظهٔ تخصیص‌یافته کافی نیست
UnsupportedClassVersionErrorنسخهٔ Java با نسخهٔ بازی نمی‌خواند
NoSuchMethodError، ClassNotFoundExceptionمود با نسخهٔ بازی یا لودر نمی‌خواند، یا پیش‌نیاز کم است
GLFW errorمشکل در درایور کارت گرافیک یا پشتیبانی OpenGL

4. علت‌های رایج​

نشانهعلت رایجچه کار کنیم
بلافاصله بعد از اجرا خارج می‌شود و UnsupportedClassVersionError در گزارش استنسخهٔ Java اشتباهبگذارید GPCL خودکار Java را اضافه کند؛ یا در تنظیمات آینه را عوض کنید و دوباره نصب کنید
وسط بارگذاری گیر می‌کند یا می‌پرد و OutOfMemoryError هستکمبود حافظه یا مود زیاددر تنظیمات ← بازی ← تخصیص حافظه بالاتر ببرید؛ از حافظهٔ فیزیکی بیشتر ندهید
هنگام بارگذاری مودها کرش می‌کند و نام مود در گزارش هستنسخهٔ مود اشتباه، پیش‌نیاز کم، یا تعارض دو موداول فقط همان مود را نصب کنید؛ نسخهٔ MC و لودر پشتیبانی‌شده را بررسی کنید
قبل از آمدن پنجره خارج می‌شود و GLFW error هستدرایور کارت گرافیک قدیمی یا نبود پشتیبانی OpenGLدرایور کارت گرافیک را به‌روز کنید؛ روی لپ‌تاپ مطمئن شوید بازی با کارت گرافیک مجزا اجرا می‌شود
از سرور اخراج می‌شوید و Invalid session می‌آیدورود رسمی منقضی شده یا حساب مجوز این نسخه را ندارددوباره ورود رسمی کنید؛ مطمئن شوید حساب این نسخه را دارد
هنگام ورود به دنیا یا بارگذاری بستهٔ منابع کرش می‌کندذخیره، بستهٔ منابع یا بستهٔ شیدر خراب استاول یک دنیای جدید بسازید؛ قبل از هر کاری از ذخیره‌ها پشتیبان بگیرید
با Fabric کرش می‌کند و از نبود fabric-api می‌گویدFabric API نصب نیستFabric را با تیک «نصب Fabric API هم» دوباره نصب کنید یا دستی نصبش کنید

5. اول این سه چیز را کنار بگذارید​

  1. همهٔ مودها، بسته‌های منابع و شیدرها را خاموش کنید و یک بار تمیز اجرا کنید. اگر بالا آمد، مشکل از مودهاست.
  2. یک نسخهٔ اصلی دیگر را اجرا کنید. اگر بالا آمد، مشکل از نسخهٔ فعلی یا ترکیب مودهای آن است.
  3. یک دنیای جدید بسازید. اگر بالا آمد، ذخیرهٔ قبلی خراب شده است.

6. اگر باز هم نشد​

به gamets@caellab.com ایمیل بزنید و گزارش خطای خروجی‌گرفته‌شده را پیوست کنید و این‌ها را بنویسید:

  • نسخهٔ لانچر، نسخهٔ Minecraft، نسخهٔ لودر؛
  • مودهای نصب‌شده (با شمارهٔ نسخه بهتر است)؛
  • کاری که پیش از کرش انجام داده‌اید.

فقط نوشتن «به‌محض اجرا کرش می‌کند» پیدا کردن مشکل را سخت می‌کند؛ گزارش‌های داخل فایل کلید ماجرا هستند.