ﺍﻟﺴﻼﻡ ﻋﻠﻴﻜﻢ ﻳﺎ ﻋﺸﺎﻕ ﺍﻟﺒﻴﻜﺴﻞ!
من بعد ما ركزت فـ Devlog #1 على الحركة، جا الوقت باش نزيد الحاجة اللي غادي تخلي المشروع يولّي فعلاً لعبة Action RPG: نظام القتال.
فهاد التحديث خدمت على ضربات متتابعة بالسيف، زدت مؤثّرات باش كل ضربة تتحس، صاوبت أول عدو كيتبع اللاعب، وحاولت نخلّي النسخة تخدم حتى فالمتصفح والتليفون.
بناء نظام القتال
فاللّول، الشخصية كانت عندها سيف مربوط بها، ولكن ما كانش كاين نظام قتال حقيقي.
كنت نقدر ندير Animation وحدة كتعاود كل مرة كتبرك على البطونة دالهجوم، ولكن هادشي كان غادي يخلي القتال يبان جامد ومعاود.
لذلك بنيت Combo فيه ثلاثة ديال الضّربات باستعمال AnimationTree وState Machine:
- الضربة اللّولة سريعة وقصيرة.
- الضربة الثانية كتكمّل الحركة إلا ضغط اللاعب فالوقت المناسب.
- الضربة الثالثة تْقَل شوية، ولكن أقوى وكتسد الـCombo.

الفكرة هي أن اللاعب ما يبقاش كيشوف نفس الضربة كتعاود، ولكن يحس أن الهجوم عندو إيقاع وتدرج.
زدت حتى Training Dummy باش نجرب عليه التوقيت ديال الضربات، الـHitbox، والمسافة اللي خاص السيف يوصل ليها.
كيفاش خليت الضربة تتحس؟
نظام القتال يقدر يخدم تقنياً، ولكن إلا ما كانش فيه رد فعل بصري وصوتي، الضربات غادي يبانو بلا وزن.
لذلك زدت مجموعة من التفاصيل الصغيرة.
الوميض
منين كيتضرب العدو، كيتبدل اللون ديالو للبيض للحظة قصيرة.
هاد الوميض كيعطي رد فعل سريع وواضح، حتى إلا ما ركزش اللاعب على رقم الضرر.
أرقام الضرر
ملي كتقيس العدو، كيبان رقم الضرر فوقو، كيكبر شوية، كيتحرك للفوق، ومن بعد كيختفي.
تقنياً، استعملت Label3D وحركتو بـTween باش يكبر ويصغر ويتحرك للفوق.
هاد الحركة بسيطة، ولكن كتخلي اللاعب يعرف مباشرة أن الضربة تسجلات وشحال دارت من الضرر.
المؤثرات البصرية
زدت حتى:
- أثر كيتبع حركة السيف.
- شرارات صغيرة ملي الضربة كتوصل.
- تأثير قصير ملي العدو كيموت.
كل تأثير بوحدو بسيط، ولكن ملي كيتجمعو كيعطيو للقتال إحساس أحسن بزاف.

أول عدو والذكاء ديالو
من بعد ما خدم القتال، خاصني شي عدو نجرب عليه النظام.
ما بغيتش نكتب كل السلوك فـScript واحد عامر بـif/else، لذلك جربت Behavior Tree باستعمال إضافة Beehave.
قسمت سلوك العدو بهاد الشكل:
- إلا كان اللاعب بعيد، العدو كيبقى كيدور أو كيتحرك بلا هدف واضح.
- إلا دخل اللاعب للمسافة ديالو، كيبدا يطارده.
- إلا وصل قريب بزاف، كيحاول يضربه.
- إلا وقع شي حدث أهم، بحال الضرر أو الموت، كيوقف السلوك العادي وكيستجب له.
هاد النظام خلا السلوك مرتب كثر، وكيقدر يتوسع من بعد بلا ما يتحول الكود لفوضى.

مثلاً، نقدر نزيد لاحقاً حالة غضب، هروب، دفاع، أو زعيم عندو مراحل مختلفة.
تحويل اللعبة للتليفون
هادي كانت من أصعب المراحل فهاد التحديث، حيث نسخة الويب ديال Godot 4 كانت ثقيلة شوية، وهادشي كان كيبان كثر فالتليفون.
باش نحسن الأداء، درت شوية ديال التعديلات:
- Compatibility Mode: استعملت OpenGL 3 باش نرفع التوافق مع الأجهزة.
- Texture Compression: ضغطت الـTextures باش ما ياكلوش بزاف ديال الذاكرة.
- Shadow Atlas: نقصت دقة الظلال، حيث كتأثر بزاف على الأداء فالموبايل.
- وحاولت نخلي الكود خفيف وما يديرش حسابات زايدة بلا فايدة.
النتيجة ما كانتش مثالية، ولكن اللعبة ولات أخف وقابلة للتجربة فالمتصفح ديال التليفون.
التحكم باللمس
باش اللاعب يقدر يجرب اللعبة من التليفون، زدت واجهة خاصة باللمس:
- Virtual Joystick لتحريك الشخصية.
- زر للهجوم.
- زر لحركة إضافية.
- أزرار واضحة فالواجهة بدل الاعتماد على الكيبورد.

الواجهة مازال بسيطة، ولكن خلات التجربة قابلة للعب مباشرة من المتصفح بلا مانيطة ولا كيبورد.
جرب اللعبة
النسخة الحالية مازال Prototype، ولكن تقدر تجرب نظام القتال مباشرة فالمتصفح.
فهاد التحديث تقدر تجرب:
- Combo ديال ثلاث ضربات.
- أرقام الضرر.
- الوميض والمؤثرات.
- أول عدو كيطارد اللاعب.
- التحكم بالكيبورد أو اللمس.
الخاتمة
هاد التحديث هو أول مرة بدا المشروع كيحس فعلاً بحال Action RPG، ماشي غير شخصية كتتحرك وسط مرحلة فارغة.
نظام القتال مازال بسيط، والعدو حتى هو محتاج يتحسن، ولكن دابا كاينة قاعدة واضحة نقدر نبني فوقها: ضربات، رد فعل، ضرر، عدو، وموت.
كل تفصيل صغير زاد شوية من الإحساس ديال اللعب، وخلاني نفهم أن القتال ماشي غير Animation وHitbox، ولكن توقيت، صوت، مؤثرات وردود فعل.







