روز وصال یاران! (تجربه‌م از گلوبال گیم‌جم 2021)

یه مطلبی کوتاه از تجربه‌م توی گلوبال گیم جمبرای این مطلب من به صورت «سوال‌محور» میرم جلو که هیجان بیشتری داشته باشه! :)خب بریم ببینیم که توی گلوبال گیم جم 2021 چه گذشت بر ما ...اول از همه این رو بگم که گلوبال گیم‌جم امسال «آنلاین» و Themeش این عنوان بود: Lost and Foundتم امسال گلوبال گیم جم? برای شرکت توی Global Game Jam اول چیکار کردی؟خب من همیشه قبل از ایده پردازی یا هر کار دیگه ای، یه راست میرم سمت تیم پیدا کردن و سعی میکنم توی کمترین زمان یه تیم مناسب و مشتی پیدا کنم.کلا این طبیعی هست که توی هر جَمی همیشه یه سری افراد احساسی هستن که اول‌ش میگن بیاین با هم تیم بزنیم ولی وقتی که اون حس‌شون می‌پره یهو غیب‌شون میزنه و علی میمونه و حوض‌ش! پس این بخش برای من از هر چیزی مهم‌تر هست، چون با پیدا کردن یه تیم پایه هم از اتلاف وقت‌ت جلوگیری میکنه و هم توی روند ساخت بازی‌‌ت خیلی لذت می‌بری.لذت شرکت کردن توی یه Game Jam با یه تیم خوب! البته این حضوریه!راستی من دو روز هم از شرکت مرخصی گرفتم که بتونم بیشتر وقت بذارم روی جم که آخر مطلب توضیح میدم چی شد.? چرا به Solo شرکت کردن فکر نکردی؟خب من قبلا 3 بار تجربه‌ی Solo (تنهایی) شرکت کردن توی 3 تا جم آنلاین رو داشتم ولی واقعا دلم رو زد و دیگه علاقه‌ای به این جنس شرکت کردن نداشتم و نخواهم داشت!دلیل‌های زیادی هم داره که یکی از مهم‌ترین هاش پرداختن به کارهایی که آخرسر توی آینده‌ی شغلی‌ت به هیچ دردت نمی‌خورن! البته اگه ادامه‌ی مسیرتون به این ختم میشه که قراره آچار فرانسه بشین (یعنی از این دست ایندی‌هایی که به دلیل کمبود اعضای تیم باید خیلی از کارهارو انجام بدن) پس قطعا بهش فکر کنین :)من آیندم رو توی پوزیشن Level Designer (طراح مرحله) می‌بینم، پس دلیلی نداره که درگیر یه سری تسک‌های برنامه‌نویسی Low level (پیچیده و مفهومی) و حتی درگیر یه سری کارهای "صرفا" آرتیستیک و هنری بشم! :)یه لول بلاک‌مشی از خودم!البته ناگفته نمونه که من به Visual Scripting خیلی علاقه دارم و توی بعضی از Career های لول دیزاین یه مزیت به حساب میاد ولی اینکه به طور مثال برای اجرای یه فیچر خاصی مجبور بشی توی کدهای متن‌محور به قیلولی اونقدر مناسب نیست.یه نمونه ویژوال اسکریپتی که با PlayMaker یونیتی قبلا برای یه جم زدم? چه تیمی پیدا کردی آخرسر؟جونم براتون بگه که توی این جم تورم به آدم‌های خیلی خوبی خورد که خودم بعد پیدا کردن شون داشتم تعجب می‌کردم که الان اینا واقعی‌ن یا دارم خواب می‌بینم؟! همه پایه، همه مشتاق و همه کار کن! اصن یه وعضی!خیلی رک و راست اگه بهتون بگم، این تیم بهترین تیم مجازی بود که توی یک سال گذشته باهاش آشنا شدم! به طرز عجیبی هیچ‌کدوم از زیر کار در نمی‌رفتن، توی دیسکورد وقتی جلسه می‌ذاشتیم هیچ‌کس نمی‌پیچوند، هر چند وقت کارشون رو به اشتراک می‌ذاشتن و ... کلا یه حس عجیبی داشت!6 نفر بودیم از کشورهای مختلف (از پرتغال گرفته تا کالیفرنیای آمریکا) و با لهجه‌های متفاوت ترکیبی.تصویر من و 4 هم‌تیمی دیگه‌م (یه نفر عکس‌ش نیست)? چرا رفتی سراغ تیم خارجی؟خب دلایل زیادی دارم برای جواب این سوال که براتون اینجا لیست میکنم:1️⃣ انتخاب با دست بازتر!شما وقتی که از کامیونیتی یه زبان اقلیت میری به سمت کامیونیتی یه زبان جهانی (مثل EN)، خیلی خیلی گزینه‌های مورد نظرت بیشتر میشه و راحت‌تر میتونی تیم دلخواه‌ت رو انتخاب کنی.بذارین یه مثال خیلی واضح بزنم: توی فیلم The Platform (که اگه ندیدین حتما ببینین!) کاراکتر ماجرا وقتی که توی طبقه 48م هست انتخاب غذای بیشتری داره یا وقتی که توی طبقه 148م هست؟ ? واقعیت تلخه و نمیشه انکارش کرد، پس باید منطقی تصمیم بگیریم تا روند رشدمون سریع‌تر پیش بره و به اصطلاح Boost بشه.فیلم پلتفرم یه مثال غم‌انگیز ولی مناسب برای این مورد!2️⃣ تعداد بیشتر تیم‌های آنریلی![این مورد در واقع زیر مجموعه ی مورد اول بود ولی خب به خاطر اهمیت‌ش جداش کردم]یکی از دلیل‌های مهم دیگه ای که باعث میشه من سمت تیم‌های خارجی برم مربوط میشه کراش جدیدم Unreal!? از وقتی که وارد شرکت سورنا شدم و تصمیم گرفتم که برای تسریع روند کارها لول‌هام رو توی این انجین درست کنم (چون خود بازی شرکت توی این انجین داره ساخته میشه) دیگه به اصطلاح Fall In Love ش شدم و ترک کردن‌ش برام خیلی سخت بود! :)خراب مکتب‌ Unreal شدم! :)3️⃣ تقویت زبان!شاید بگین این چه دلیل‌ایه که داری ولی خب برای من واقعا مهم هست که توی اون مدت زمان محدود جم خودم رو تحت فشار قرار بدم و با بچها به زبان انگلیسی صحبت کنم. چه فرصتی بهتر از این واقعا؟!البته باز این مورد بر می‌گرده به هدف های پشت صحنه‌ی آدم و اینکه بخواد این زبان رو تقویت کنه یا نه. اگر برای شما یادگیری این زبان اهمیتی نداره و تصمیمی به مهاجرت توی سال‌های آینده ندارین خب چه کاری ه خودتون رو به زحمت بندازین! :)? چرا تاکید داشتی تیم آنریلی پیدا کنی؟من خیلی نرم افزارها و انجین های مختلفی رو تست کردم که بتونم یه ورک‌فلو (Workflow) سریع در عین حال کاربردی رو پیدا کنم ولی خب واقعا اون چیزی که می‌خواستم رو پیدا نکرده بودم (به طور مثال من توی نرم افزار Rhino تا حد مطلوبی حرفه‌ای شده بودم ولی مشکل‌ش بحث اکسپورت و ایمپورت به انجین بود که زمان زیادی رو از من میگرفت) تا زمانی که دستم آلوده به آنریل شد!بحث، بحث زمان‌ست و بس!بعد از زدن چند تا لول با سیستم BSP ش کم کم فهمیدم که این همون ابزاری هست که دنبال‌ش بودم و باید تا جای ممکن به بهانه‌های مختلف باهاش کار کنم که به سطح Masteryش نزدیک بشم! برای همین من سعی کردم یه تیمی پیدا کنم که بخواد با آنریل پروژه ش رو جمع کنه که آخرسر همین هم شد.? از کجا پیدا کردی تیم‌ت رو؟از اونجایی که خود سرور دیسکورد GGJ بدترین سرور برای تیم پیدا کردن بود، من آواره‌ی چندتا سایت و کانال شدم که بتونم یه تیم خوب پیدا کنم ولی وقتی با آقای وهاب احمدوند یه صحبت کوتاه کردم، ایشون به من گفتن که یه سر به کتگوری گیم‌جم سرور دیسکورد Unreal Slackers بزن. اون لحظه از اون لحظاتی بود که یه چراغ بالا سرم روشن شد و گفتم واقعا چرا زودتر به ذهنم نرسیده بود! (این سرور مخصوص آنریل کارهاس و خیلی کامیونیتی فعالی داره)سرورش رو باز کردم و صفحه Artstationم رو توی کانال looking for team شون گذاشتم و اعلام آمادگی کردم. بعد از حدودا 3 ساعت یه دوست آرتیست که از قبل یه تیم جمع کرده بود بهم پیام داد برای همکاری. به همین راحتی!? چرا اینقدر حالا سخت می‌گیری؟!درسته دلیل اصلی شرکت کردن توی Game Jam ها همون خوش گذروندن و داشتن لحظاتی Fun موقت در کنار تعدادی از افراده (حتی اگه Fail بشیم) ولـــــــــی خب با جوین شدن به یه تیم خوب میشه بهش ضریب (2x, 4x, 8x و...) داد تا خیلی خیلی بهت خوش بگذره! :) همونطور که توی این رویداد به من گذشت.من وقتی که یه تیم خوب پیدا میکنم :)⚠️ البته دقت کنین این موضوع رو با تعیین کردن اسکوپ پروژه اشتباه نگیرین! توی ساخت گیم برای جم‌ها باید تا جای ممکن خضوع و فروتنی به خرج بدیم و اسکیل پروژه‌مون رو کوچیک ببندیم تا جمع بشه ولی سخت گیری توی پیدا کردن هم‌تیمی اتفاقا میتونه یه پوینت مثبت به تجربه‌ت بده و هیچ ضرری نداره! :)? روند ساخت بازی‌تون چطور گذشت؟[این بخش رو سعی میکنم به صورت خلاصه و مفید توضیح بدم]اول ماجرا مثل همیشه از Discord عزیز شروع شد. بعد از اینکه اوکی رو به Lead تیم دادم و وارد تیم‌شون شدم که شامل سه برنامه‌نویس، یه آرتیست و یه طراح صدا بود، به من گفتن بیا چنل صوتی که بهت ایده رو توضیح بدیم (قبل اومدن من ایده فیکس شده بود).ایده‌ی بازی این بود که کاراکتر اصلی یه چیزی رو گم کرده و با مهارت‌های پارکوری ش میخواد اون‌ها رو به دست بیاره، همین! درسته این ایده اونقدر فیتِ تمِ جم که Lost and Found بود نیست ولی هدف بچها بیشتر اجرا کردن مکانیک های پارکور و متعلقات جانبی‌ش بود که در نهایت توی دو روز خیلی خوب درآوردن‌ش.ایده‌ی تیم از این تصویر Mirror's Edge شروع شد? چطور طراحی مراحل رو شروع کردی؟بعد از گرفتن کلیت ماجرا شروع کردم به فکر کردن در مورد لول‌هایی که میتونه مناسب این ژانر باشه. با توجه به اینکه تا به حال همچین تجربه‌ی طراحی لول برای یه بازی Parkour-Based رو نداشتم رفتم سراغ نمونه‌های مشابه‌ش.اول از همه Mirrors Edge رو شروع کردم (قبلا بازی نکرده بودم!) و بعد از چند ساعت تجربه‌ش و تکرار بعضی لول‌های خاص‌ش، نسخه بعدی‌ش یعنی Mirrors Edge Catalyst رو تست کردم. (نسخه 2016 ش خیلی روون تر و جذاب تر از نسخه‌ی 2009 ش بود و Dice خیلی خوب نقص‌های نسخه‌ی قبلی رو رفع کرده بود برخلاف بعضی از نظرهای پلیرها که می‌گفتن نسخه‌ی اول‌ش بهتره!)نسخه ی اول بازی Mirror's Edge - سال ساخت: 2009نسخه ی دوم بازی Mirror's Edge - سال ساخت: 2016بعد از بررسی لول‌های اون دو تا بازی و جمع کردن بعضی رفرنس‌های خوب دیگه شروع کردم به اسکچ زدن (طراحی روی کاغذ) بیس لول اول که مرحله‌ی آموزشی (Tutorial) بود. توی مرحله‌ی اول باید مکانیک‌های پایه رو بدون هیچ Guide متنی خاصی و با یه Flow ی روون به پلیر یاد میدادم تا آماده بشه برای مراحل بعد.مرحله‌ی دوم رو هم بعدش به همین شکل شروع کردم ولی با این دید که قراره یه سری اتفاقات سخت تر بیوفته، پس دوباره یه سری به لول‌های اون دوتا بازی زدم که آنالیز کنم تیم Dice دقیقا چه تکنیک‌هایی رو برای سخت‌تر کردن لول پیاده کرده و چطور اون هارو در کنار هم قرار داده‌شون که پلیر ناامید نشه.⚠️ نکته‌ی مهم:مثل همیشه من لول‌هارو بدون اینکه به Art قضیه اهمیتی بدم به صورت Blockout یا Blockmesh ای طراحی کردم، خیلی ساده و سریع از اسکچ‌های روی کاغذ به محیط 3D آنریل.? در واقع یه لول دیزاینر توی طراحی‌ش بیشترین چیزی که باید بهش اهمیت بده اون بخش Gameplay ماجراس، نـــــــه جنبه‌ی هنری یا جنبه‌ی برنامه‌نویسی‌ش! ?منظور از گیم‌پلی این هست که مثلا پلیر وقتی بازی میکنه لذت میبره از گذروندن مراحل؟ درجه سختی لول‌ها بالانس هست؟ اون بخش‌هایی که پلیر گیر میکنه رو میتونه بعد چند بار تکرار کردن بگذرونه یا فقط یه پلیر حرفه‌ای میتونه اون رو رد کنه؟ و ... خیلی سوال‌های دیگه.بخشی از گیم‌پلی لول اولبخشی از گیم‌پلی لول دوم ویو از بالای مرحله‌ی اولویو از بالای مرحله ی دومدر آخر هم باید بگم متاسفانه توی اون دو روز مرخصی (چهارشنبه و پنج‌شنبه) که اول مطلب بهش اشاره کردم متاسفانه نتونستم این تیم رو پیدا کنم و همه‌ی این اتفاقات از جمعه شب به بعد به جریان افتاد! (خود رویداد از چهارشنبه شروع شده بود) برای همین برخلاف میل زیادم به طراحی لول‌های بیشتر و با وجود کارهای شرکت، نتونستم بیشتر از دو تا مرحله آماده کنم. ?? به چه خروجی‌ای رسیدین؟به یه چیز خیلی خوب! :)خروجی نهایی‌مون رو می‌تونین از این 2 لینک پایین دانلود و بازی‌ش کنین:1) صفحه گلوبال گیم‌جم2) صفحه itch.io تصویری از صفحه‌ی itch‌مون و رول‌هایی که داشتیمیه ویدئوی گیم پلی از بازی‌مون که ضبط کردم: (نیاز به قندشکن!) https://www.youtube.com/watch?v=OJKSA4X-cr8 از هر گونه نظر، انتقاد و پیشنهاد در مورد خود بازی و مخصوصا لول‌هاش استقبال می‌کنیم... ?❤️? حالا چه سودی برات داشت که شرکت کردی؟وقتی صحبت از Game Jam که میشه بعضی از دوستان این سوالات رو می‌پرسن:1) چقدر پول گیرت میاد؟!2) اسپانسر پیدا میکنی برای بازی‌ت؟!3) یه اثر Early-Access بیرون میاد ازش برای استیم؟!و ...جواب همه‌ی این سوالات خیلی ساده‌س و اینه: "? !NOPE"نه پول گیرت میاد، نه خبری از اسپانسر هست و نه یه اثر ارلی اکسس برای استیم بیرون میاد!ممکنه این موارد اتفاق بیوفته ولی شاید شامل 5 درصد از جم‌هایی هست که شرکت می‌کنین! یعنی جم‌های پولی وجود داره، توی بعضی هاشون اسپانسر هم هست و ممکنه اینقدر روی بازی‌تون خوب کار کنین که بعد از چند روز وقت گذاشتن روی Polish ش بتونین روی استیم هم عرضه کنین ولــــــــــــی درصد‌ش خیلی خیلی کمه و اصلا نبایــــــــــد به این چیزا فکر بکنین! ?? حالا من چه چیزهایی رو بدست آوردم توی رویداد GGJ2021:1) تجربه‌ی همکاری با یه تیم فوق العاده خوب!2) آشنایی عمیق‌تر با بازی‌های پارکور و دنیای لول‌ دیزاین‌ش3) بالا رفتن سطح تسلط روی انجین Unreal4) بالا رفتن سطح زبان از نظر Writing و Speaking5) اضافه شدن یک خروجی دیگه به پورتفولیوم6) بالا رفتن سطح عملکرد نسبت به زمان(این مورد آخر یعنی ظرفیت کاری که می‌تونستم توی یه بازه‌ی زمانی خاص انجام بدم بیشتر شد).....???خب این بود از تجربه‌ی من از GGJ2021 ...امیدوارم که اگه براش وقت گذاشتین حداقل یه جمله‌ش براتون مفید بوده باشه و آخرسر دست خالی اون ضبدر صفحه رو نزده باشین! ?مطلب‌های دیگه از من که میتونه براتون مفید باشه: https://vrgl.ir/KSTQP https://vrgl.ir/4GVyc