العودة إلى المدونة
Scripts5 دقيقة قراءة

Agency-Seatbelt: لماذا سكريبت بحجم 20 كيلوبايت له أكبر تأثير على إحساس القيادة

Agency-Seatbelt صغير في الكود لكنه ضخم في تأثير اللعب. إليك لماذا ميكانيكيات حزام الأمان الواقعية أهم مما تعتقد.

Agency Scripts

المؤسس والمطور الرئيسي في Agency Scripts

سكريبتات صغيرة، تأثير كبير

Agency-Seatbelt is one of the smallest scripts we ship, but feedback consistently ranks it among the most appreciated. There's a lesson there: RP is built from small mechanical touches that make the world feel consistent, not from monolithic feature dumps.

العائد الواقعي

عندما يضطر اللاعبون لوضع حزام الأمان فعليًا قبل القيادة، تتغير ثلاثة أشياء. تصبح مطاردات الشرطة أكثر خطورة لأن ربط الحزام أثناء المطاردة يكلف وقتًا. يحصل ضباط الشرطة على سبب جديد لإصدار المخالفات. يعاني الركاب من عواقب حقيقية لإهمال السائق. كل منها هو خط ربط صغير في لعب الأدوار يضيف عمقًا دون زيادة العبء الذهني.

تفاصيل الرسوم المتحركة والصوت

قضينا وقتًا أكثر على رسوم متحركة للربط والفك منها مقارنة بالمنطق الأساسي. رسوم متحركة مدتها ثانيتان، صوت نقرة خفيف، ومؤشر حزام أمان مميز على Agency HUD، هذه التفاصيل الدقيقة هي التي تشير للاعبين "هذا الخادم يأخذ نفسه على محمل الجد." عندما يقوم كل شيء آخر بعمله بهدوء، تبرز تلك اللحظات الصغيرة.

الدمج مع سكريبتات المركبات

Agency-Seatbelt hooks cleanly into any vehicle damage script because we expose a simple client event, `agency-seatbelt:isBuckled`, that other scripts can query. Your tow truck script can refuse tow requests from players who just ejected through their windshield. Your hospital script can add realistic injury modifiers. The script is small enough to not care, but flexible enough to participate.

مجاني، لأنه يجب أن يكون

Agency-Seatbelt ships at €0 forever. A basic safety mechanic shouldn't be behind a paywall. Use it, fork it, modify it, we don't care. Every server using our free scripts is a server that might one day buy our premium ones, and we're playing the long game.

التثبيت & الإعداد

Agency-Seatbelt is free and has zero dependencies. Download from GitHub or the Tebex free tier, drop the folder into your resources directory, and add ensure agency-seatbelt إلى server.cfg. يبدأ المورد بالعمل فورًا عند إعادة تشغيل الخادم التالية. لا قاعدة بيانات، لا إطار عمل، لا إعدادات مطلوبة.

إذا كنت تريد تخصيص مفتاح الاختصار، تكامل التذكرة، أو سلوك مؤشر HUD، افتح config.lua. الإعدادات الافتراضية معقولة لمعظم الخوادم، العديد من مالكي الخوادم يشغلون Agency-Seatbelt لأشهر دون الحاجة لتعديل الإعدادات.

خيارات التكوين

ال config.lua يغطي إعدادات التفاعل والعواقب:

  • مفتاح ربط الحزام، المفتاح الذي يضغطه اللاعبون لتثبيت وفك الحزام. الافتراضي: B (نفس العديد من سكربتات حزام الأمان القديمة لسهولة التذكر).
  • عتبة الطرد، سرعة المركبة التي يتم عندها طرد اللاعب غير المثبت بالحزام عند التصادم. الافتراضي: 50 كم/س.
  • قوة الطرد، مدى رمي اللاعب عند القذف. القيم الأعلى أكثر درامية؛ القيم الأدنى أكثر واقعية.
  • الضرر عند الطرد، إزالة الصحة والدروع عند قذف اللاعب بدون حزام الأمان. قابل للتكوين بشكل منفصل عن قوة القذف.
  • مؤشر HUD، ما إذا كان يظهر رمز حزام صغير على HUD عند عدم تثبيت الحزام أثناء التواجد في مركبة. يتطلب Agency-Hud أو يصدر حدث موقع لـ HUD مخصص.
  • قيادة الشرطة، تمكين /checkbelt للسلطات لفحص حالة حزام الأمان لركاب المركبة القريبة.
  • تطبيق قوانين الركاب، ما إذا كان يتم طرد الركاب بالإضافة إلى السائقين عند عدم تثبيت الحزام. الافتراضي: مفعّل.

توافق الإطار

Agency-Seatbelt has no framework dependencies. The ejection and damage logic uses native FiveM vehicle and ped manipulation functions that work identically on any server. The optional police command uses a simple permission check, implement Config.IsPolice(src) لأي نظام وظائف مخصص، أو تعطيل الأمر تمامًا إذا لم يكن مطلوبًا.

لماذا هذا مهم للعب التمثيلي

الفلسفة التصميمية وراء Agency-Seatbelt هي أن اللمسات الميكانيكية الصغيرة تتراكم لتشكل شخصية الخادم. خادم يحتوي على أحزمة أمان، الجلوس، الإشعارات المخصصة، وواجهة HUD مصقولة يشعر بأنه مختلف جوهريًا عن خادم بدونها، حتى لو لم يستطع اللاعب التعبير عن السبب بدقة. أحزمة الأمان هي سطر واحد في قائمة الإشارات الهادئة التي تقول "هذا الخادم يهتم بالتفاصيل."

زاوية إنفاذ القانون هي المكان الذي يولد فيه هذا السكربت أكبر قيمة لعب أدوار نشطة. شخصيات الشرطة على الخوادم التي تستخدم Agency-Seatbelt لديها أداة جديدة ناعمة لإنفاذ قوانين المرور. توقف مرور يبدأ بـ"لاحظت أن راكبك لم يكن مربوط الحزام" هو بداية لعب أدوار أفضل من ذريعة يعرفها الجميع بأنها وهمية. هذه التفاصيل الصغيرة تعطي الضباط سببًا واقعيًا للتفاعل مع المدنيين، مما يفتح سيناريوهات لم تكن لتحدث خلاف ذلك.

تتغير مشاهد المطاردة بشكل ملحوظ عندما يعرف السائقون أن الاصطدامات عالية السرعة لها عواقب حقيقية. تصبح الحسابات حول "هل أخاطر بالاصطدام لأفقدهم؟" أكثر إثارة عندما يتضمن أحد النتائج الطيران عبر الزجاج الأمامي. هذا التوتر هو بالضبط النوع الذي يجعل المطاردات أكثر من مجرد مقارنة سرعة بين مركبتين.

يصبح ركاب المركبة مهتمين بسلوك السائق. الراكب الذي يعلم أنه سيدفع ثمن قرارات السائق المتهور سيطلب من السائق التمهل، يجادل حول الطرق، أو ينزل بدلاً من المخاطرة بالرحلة. هذه لحظات لعب تمثيلي دقيقة لا توجد ببساطة بدون نظام العواقب الذي يخلقه حزام الأمان.

الأسئلة المتكررة

هل تعمل خاصية الطرد في جميع أنواع المركبات؟

يعمل الطرد في السيارات والشاحنات والفانات. تستخدم الدراجات النارية والدراجات قوة طرد منفصلة (مخفضة) لأن الفيزياء تتصرف بشكل مختلف. تعطّل المروحيات والطائرات فحوصات حزام الأمان بشكل افتراضي، حيث يخلق الطرد من الطائرات سيناريوهات إزعاج أكثر من قيمة لعب الأدوار. يمكنك تمكين فحوصات الطائرات في config.lua إذا كان لخادمك احتياجات لعب أدوار طيران محددة.

هل يمكننا فرض غرامات مرورية على مخالفات حزام الأمان؟

نعم. Agency-Seatbelt يطلق حدثاً جانب الخادم agency-seatbelt:violation مع معرف اللاعب ومعرف شبكة المركبة عندما يكشف فحص الشرطة عن راكب غير مربوط بحزام الأمان. يستمع سكربت الشرطة أو الغرامات لهذا الحدث ويطبق نظام الغرامات الذي يستخدمه خادمك. يتولى سكربت حزام الأمان الكشف؛ ويتولى سكربت الغرامات العواقب الاقتصادية.

هل تتفاعل ميكانيكية الطرد مع سكربتات شاشة الموت؟

Agency-Seatbelt fires agency-seatbelt:onEjection قبل إلحاق الضرر. سكربتات شاشة الموت التي تستمع لتغيرات الصحة تلتقط الضرر بشكل طبيعي. للتكامل الأوثق (أنواع إصابات مخصصة، بيانات جريمة المشهد)، استمع لحدث الطرد مباشرة وأضف منطقك هناك.

هل هناك طريقة لتعطيل الطرد في مناطق معينة (مثل مضامير السباق)؟

نعم. استخدم exports['agency-seatbelt']:DisableInZone(coords, radius) من أي سكربت خادم. يتم كبت الطرد لجميع اللاعبين ضمن ذلك النطاق. استدعِه أثناء إعداد حدث وأزل المنطقة بعد ذلك. يمنع هذا تعارض آليات حزام الأمان مع أحداث السباق أو السيناريوهات الأخرى حيث يتوقع حدوث حوادث مركبات بدون عواقب.

المتطلبات

  • خادم FiveM (أي إطار عمل أو مستقل)
  • مجاني، لا يتطلب ترخيص Tebex
  • لا اعتماد على قاعدة بيانات
  • لا اعتماد على موارد خارجية

جاهز للبدء؟

احصل على السكربتات من متجرنا، أو انضم إلى Discord للدعم والتحديثات ونظرة على ما هو قادم.