لودینگهای طولانی GTA آنلاین توسط کاربران تا ۷۰ درصد بهتر شدند
همه میدانند که لودینگهای بازی «GTA آنلاین» بسیار ملالآور هستند و هر بار وارد شدن در این بازی صبر ایوب میطلبد. طولانی بودن این لودینگها به قوی یا ضعیف بودن کامپیوترها و مدل کنسول ربطی ندارد و همگان را تا حد ممکن آزار میدهد. حالا یک کاربر خوشفکر پیدا شده که با ایجاد تغییراتی در این بازی توانسته لودینگهای بازی GTA آنلاین را تا حد زیادی بهبود بخشد.
شرکت راکاستار پرچمدار ساخت بزرگترین و پرجزئیاتترین بازیهای ویدیویی است. با وجود اینکه آخرین بازی شرکت راکاستار رد دد ریدمپشن ۲ است اما بازی قبلی این شرکت، یعنی GTA 5 حتی بعد از هشت سال بسیار پرطرفدارتر است و همواره یکی از محبوبترین بازیهای موجود به شمار میرود. این موضوع به لطف گیمپلی عالی و شهر عظیم این بازی و صد البته بخش آنلاین بسیار سرگرمکنندهی رخ داده.
البته بخش آنلاین این بازی مشکل بسیار بزرگی دارد. اگر تا به حال این بازی را به قصد تجربهی آنلاین باز کرده باشید یقینا با این مشکل آشنا هستید. هر بار ورود به بخش آنلاین بازی GTA 5 به زمان زیادی وقت نیاز دارد. بازیکنان این بازی در سرتاسر دنیا با لودینگهایی حتی در حد پانزده دقیقه روبهرو شدهاند. کاری نداریم که بازیکنان وطنی GTA آنلاین شرایط بدتری دارند و به لطف اینترنت بگیرنگیر-دار مجبورند حتی بیشتر هم صبر کنند.
یکی از بازیکنان بازی GTA آنلاین با نام مستعار t0st که از شرایط اسفناک این بازی به ستوه آمده، دست به کار شده و بعد از بررسی پروسهی لودینگ بازی GTA آنلاین، مقالهای دربارهی آن به همراه راهکارهایی برای بهبود منتشر کرده. این مقالهی بلندبالا از نظر فنیجذابیتهای زیادی دارد و پیشنهاد میکنیم اگر علم کافی دربارهی برنامهنویسی و کامپیوتر دارد آن را بخوانید. در ادامه خلاصهای از موضوعات مطرح شده در این مقاله را آوردهایم.
ماجرا از اینجا شروع میشود که t0st بعد از برخورد کردن با لودینگهای طولانی بازی GTA آنلاین تصمیم گرفت بههنگام لود شدن، تسک منیجر خود را باز کند تا میزان مصرف منابع سختافزاری را ببیند. این کار چیز عجیبی را مشخص میکند. بازی GTA در دقیقهی اول باز شدن به شکل عادی از سختافزار استفاده میکند و فایلهای اصلی را میخواند و باز میکند. قسمت مشکلدار اینجاست که بعد از این دقیقه، تمام اجزای سختافزاری بهجز یکی از هستههای پردازنده بیکار میشوند و سطح استفاده از آن یک هسته بهشدت بالا میرود. این اتفاق چندین دقیقه طول میکشد و قسمت بزرگی از لودینگ بازی GTA آنلاین را تشکیل میدهد.
این بررسی نشان میدهد که قسمت بزرگی از معطلی برای ورود به بخش آنلاین بازی GTA به دلیل دریافت اطلاعات سرور یا خواندن فایلهای اصلی بازی نیست. کامپیوترها در زمان لود کردن بازی GTA آنلاین طی مدتی طولانی درگیر محاسبه کردن چیزهای خاصی هستند که در ادامه به آنها خواهیم پرداخت. این محاسبات تنها روی یکی از هستههای پردازنده انجام میشوند و از اجرای سریع بازی جلوگیری میکنند. t0st با پی بردن به این ماجرا با استفاده علم خود در حوزهی کامپیوتر، ابزارهایی برای ایرادیابی به بازی GTA 5 متصل و این موضوع را عمیقتر مشاهده کرد.
لود شدن این بازی دو مشکل اصلی دارد. مشکل اول این است که بازی GTA آنلاین به هنگام لود شدن یک فایل برای لیست کردن ۶۳۰۰۰ آیتم خریدنی داخل این بازی میسازد. بعد از افزودن هر آیتم به این فایل تعداد کارکترهای موجود در فایل یکبار محاسبه میشوند. محاسبه کردن تعداد کارکترهای موجود در یک فایل به خودی خود چندان پروسهی طولانی نیست اما ۶۳۰۰۰ بار انجام دادن این کار بسیار طولانی خواهد بود و زمان بسیار زیادی میطلبد.
در کنار این مشکل، بازی GTA آنلاین به هنگام ساختن این فایل علاوه بر ذخیرهسازی اطلاعات اصلی آیتمها، یک نسخهی کدگذاریشدهی منحصربهفرد (هَش دادههای هر آیتم) را میسازد و در کنار اطلاعات اصلی هر آیتم ذخیره میکند. با ذخیرهسازی هر آیتم جدید، کد یکتای آن آیتم با کد آیتمهای قبلی مقایسه میشود که از ذخیره شدن آیتمهای تکراری جلوگیری شود. فراموش نکنیم که این کار هم باید برای تمام ۶۳۰۰۰ آیتم این بازی انجام شود و روند آن در چنین مقیاسی بسیار طولانی خواهد بود. این مقایسهها در ابتدای کار که اندازهی فایل چندان بزرگ نیست بهسرعت رخ میدهند اما با بزرگتر شدن این فایل، افزودن هر آیتم طولانیتر میشود و در نهایت حدود ۲ میلیارد مقایسه نیاز است.
کاربر ما، یعنی t0st برای حل این دو مشکل کدهای بازی را رونویسی کرده. برای حل مشکل اول تابع جدیدی جای تابع قبلی را گرفته که از محاسبههای قبلی نگهداری میکند. با این کد به جای حساب کردن اندازهی فایل به شکل ممتد، نتایج هر محاسبه ذخیره میشوند. به این شکل به جای انجام ۶۳۰۰۰ محاسبه فقط یکی انجام میشود.
مشکل دوم هم همانند اولی، با رونویسی کردن کدهای اصلی بازی حل میشود. با توجه به این که فایل ساخته شده خالی است امکان ندارد آیتمهای بازی از قبل در این فایل ثبت شده باشند و عملا چک کردن تکراری بودن آیتمها بیدلیل است. به همین دلیل t0st کدهای بازی را دستکاری کرده و بعد از این دستکاریها، دیگر دو میلیارد چک انجام نمیشوند.
t0st اعلام کرده که با اعمال کردن این تغییرات میزان کار انجام شده توسط پردازنده به شکل چشمگیری کاهش مییابد و بازی بسیار سریعتر بارگذاری میشود. باز شدن بازی GTA آنلاین روی کامپیوتر این کاربر شش دقیقه طول میکشد و بعد از دستکاری کردن بازی، این زمان به تنها یک دقیقه و پنجاه ثانیه میرسد؛ این اعداد به این معنا هستند که مدت زمان لود شدن بازی GTA آنلاین بعد از ایجاد تغییرات ذکر شده، ۶۹ درصد کاهش داشته.
در صورتی که در برنامهنویسی و ابزار اشکالزدایی مهارت دارید، فایلهای حلکنندهی مشکلات بازی به شکل متنباز منتشر شدهاند و میتوانید با توجه به توضیحات سازنده، آنها را اعمال کنید. البته توجه داشته باشید ممکن است که تغییر دادن فایلهای بازی از طرف شرکت راکاستار با تقلب کردن اشتباه گرفته شود.
t0st در مقالهی خود نوشته که امیدوار است مهندسان شرکت راکاستار این تغییرات را در نسخهی اصلی بازی اعمال کنند. ایجاد این تغییرات در این بازی احتمالا تنها یک روز یکی از برنامهنویسهای این شرکت را بخواهد و چندان کار سختی نیست. ما هم امیدواریم که این مشکل بازی GTA آنلاین حل شوند تا ورود به این بازی کمی راحتتر باشد و تجربهی این بازی برای ما با وجود تحریمها و پینگ فاجعهبار، یک مرتبه دلنشینتر شود.
منبع: یوروگیمر
شرکت راک استار تیم پشتیبانی بسیار ضعیفی داره تا کنون بعضی اپدیت ها مشکل داشتن که پاسخگو نبودن یا جواب بی ربطی دادن الانم این یکیو که دیگه اصلا فکر نمیکنم محل بزارن واقعا جای تاسف داره واسه چنین شرکتی با این اندازه از چیترها هم که نگم برات واقعا انقدر سختشونه جلوی اینارو بگیرن؟ داری بازی میکنی زیردریایی درحال پروازه یا جون بینهایت و چه وچه…
راجب پشتیبانیش باید با بررسی اینو گفت
اما چیت زدن هم حال خودشو داره شاید همینطوری اگه به چیترا کاری نداشته باشن بامزه تر بشه.
من خودم وقت های بازی برای صرفه جویی در زمان و رانندگی یا پرواز های طولانی مدت واس شروع یه قسمت از بازی یا مرحله ای یا رفتند پیش کسی تلپورت میکنم و موقع بازی تقریبا کامل بازی میکنم.
میدونی کسی که تو بازی مثل جی تی ای که خود به خود طوری طراحی شده که وقت زیادی رو بگیره وقت براش مهم باشه این چیتا یه ابزار خیلی خیلی مناسب هستن براش.
خدایی هر ۶ ساعتی که بازی میکنی ۳ ساعتش لودینگه