Jump to content

xLive

Scripting Moderators
  • Posts

    458
  • Joined

  • Days Won

    21

Everything posted by xLive

  1. اللعبة عددها مو مثل السابق أكيد، باقي فيه عدد لكن ما اشوفه يعتبر ميت وموجود عندك إحصائيات حديثة هنا تفضيلات الناس تغيرت بشكل كبير، صار الأغلب يفضل لعب الأدوار"الحياة الواقعية" وهذا مو شيء في هذي اللعبة فقط؛ كل لعبة شبيهة لها مثل FiveM, RageMP, AltV, Garry's Mod, وغيرهم .الأخيرة حتى كانت فيها كثير ألعاب إبداعية وممتعة، لكن حاليًا الأغلبية سحبوا عليها وصار التركيز الأكثر على لعب الأدوار (بدأ لمن انتشرت العاب الباتل رويال) PUBG لكن، فيه استثناءات أحيانًا لو كان الخادم فيه فكرة ممتعة، وجذابة للاعبين مثل يلي صار مع خوادم وهذا مو يعني فيه أطوار اختفت نهائيًا وما صار فيه أحد يلعبها (مثل الهجولة، الديربي، التكتيك إلخ..)، باقي موجودين لكن عددها مو كثير بداعي الفضول.. ودي أعرف الأشياء يلي ما قدرتوا تسووها؟ ما أختلف إن فيه حدود للأشياء يلي تسويها(مثل الـ 32 بت)، لكن نادر أشوف إن احد يحتاج زيادة :وتقدر منها تسوي أشياء جدًا رهيبة مثل احد المشاريع الحديثة يلي تحت
  2. playercolors أعتقد سكربت بعد onPlayerChat يستخدم
  3. xLive

    مساعده

    طيب ممتاز انت الان مفروض بكودك تستعمل dxShaderSetValue عشان تعطي الشادر النص dxDrawImage الارقمنت يلي تعطيه فوق تقدر تحطه هنا وبينرسم لك فاللوحة نفس يلي يظهر بالسيارة ما يحتاج تسوي دوران أو تغير الحجم إذا تستخدم طريقة ثانية ياليت توضحها وتحط جزء من الكود عشان نشوف كيف النص ينصنع في الزجاج أي افضل لأن الظاهر حتى انت ما يوصلك اشعارات اسأل في قناة البرمجة العربية وبرد عليك على طول إن شاء الله https://discord.gg/mtasa تفضل ديسكورد اللعبة:
  4. xLive

    مساعده

    عشان ترسم على زجاج المركبة فيه طريقتين الزجاج يواحد ثاني فيه النص أو اللون يلي اختاره الاعب Texture تستبدل حق المركبة؟ Texture كيف تستبدل الـ :في طريقتين TXD عبر ملف لكن هذا ما راح ينفع مع فكرتك، لأن راح يتطبق في جميع السيارات بنفس الايدي عبر الشادر من أي مصدر تقدر تستخدم Texture وهنا عندك حرية أكبر تقدر تستبدل الزجاج مثلا بـ كلهم تقدر من خلالهم تعطيه الشادر ويستبدله لك dxCreateTexture, dxCreateRenderTarget الميزة الأكبر بعد تقدر تحدد الشادر يتطبق لكائن معين، وكذا لو استبدلت الزجاج على سبيل المثال راح يظهر في السيارة المطلوبة فقط تمام كيف نطبق الطريقة الثانية؟ واحد لجميع زجاج السيارة وبعض الأجزاء زي ما تشوف بالصورة Texture خبرتي مو كبيرة في المجسمات، لكن زجاج السيارات للأسف الـ فالحل هنا انك تعدل مجسم السيارة وتعدله بحيث يكون كل زجاج له خاص عشان تقدر تستبدله وإذا مجسم السيارة عندك معدل عادة بعضهم يكون مسوين هذا الشيء، تقدر تتأكد باستخدام هذا السكربت (يلي مستخدمه بالصورة بالأعلى)Texture shader_tex_names منه للزجاج المطلوب تبدأ تصنع الشادر Texture إذا لقيت اسم الـ engineApplyShaderToWorldTexture وتسوي نفس المثال الأول الموجود في صفحة شرحتها في أول تعليق وأنصحك تجلس تجرب فيه عشان تفهم فكرة الرندر التارقت Texture كيف اعطي الفنكشن يلي فوق نص على هيئة؟ تقدر ترسمه باللوحة كأنه صورة عادية Texture وبما انك حولت النص لـ Texture فيه طريقة ثانية بدون صداع الشادر واستبدال الـ dxDrawMaterialLine3D إنك بكل بساطة تحسب إحداثيات ثلاثيات الأبعاد للزجاج وترسمه باستخدام الفنكشن يلي فوق تقدر تعطيه للنافذة Texture ونفس الـ الدوان والحجم وغيره هذا كله تطبقه في الرندر تارقت
  5. xLive

    مساعده

    الظاهر اني فهمتك غلط، انت الآن يعني مسوي نظام التظليل وتظهر بالسيارة وتحتاج تظهرها باللوحة فقط؟ إذا يب مفروض عندك بالكود وظيفة dxSetShaderValue هذا مفروض ينعطى له الصورة يلي تكون في المركبة؟ تقدر تستخدمها في dxDrawImage إذا ما تستخدمها ممكن تحط الجزء يلي تصنع فيه الشادر وتستبدل فيه زجاج المركبة؟ واعتذر على التأخير
  6. xLive

    مساعده

    وعليكم السلام فقط من خلال الشادر ويبدو إنك تعرف كيف تسوي هذا الشيء Texutre تستبدل الـ تستخدم شيء اسمه رندر تارقت Texture لكن لتحويل الدي اكس لـ تقدر تعطيه الشادر وتشوفه بالسيارة Texture ايش يعني الرندر تارقت؟ باختصار شديد مثل الورقة تصنعه وتحدد حجم "الورقة" وبعدها ترسم فيه الدي اكس (مرة واحدة لا تضيف حدث الرندر) وخلاص هو وإحداثيات الرسم تبدأ من أعلى الشاشة باليسار والدوران والحجم وغيره تحدده من وظائف الدي اكس كأنك ترسمه عالشاشة dxDrawImage وتقدر أيضًا تعرض الرندر تارقت على الشاشة عشان تعرضها للاعب أو وانت تتأكد إنه صحيح باستخدام وأيضًا يفيد في اشياء آخرى الرندر تارقت، مثلًا في صفحة الويكي عنده 4 صور رسمهم في رندر تارقت وبكذا خلاص ما يحتاج أربع مرات، يحتاج فقط يرسم الرندر تارقت لأن هو فيه جميع الصور، وكذا يوفر استهلاك معالج أكبر dxDrawImage يستخدم الذاكرة العشوائية لكرت الشاشة فإذا ما تحتاجه مثلا السيارة صارت بعيدة أو تدمرت أنصحك تدمر الرندر تارقت والشادر عشان ما يكون فيه استهلاك دون فائدة وكراشات VRAM وبالمقابل يستخدم الـ
  7. وعليكم السلام ورحمة الله وبركاته ليش صرت تشوفهم بكثرة؟ السبب مشروح هنا باختصار المطورين المتفرغين لتطوير لحماية ضد الغش صاروا جدًا قليلين. وأغلب الأشياء يلي تشوفها للأسف هي بكل اختصار عبارة عن أخطاء سكربتات يتم إستغلالها من قبل الغشاشين كثير خوادم يستعملون سكربتات جدا قديمة فيها كثير أخطاء برمجية، وفيه أيضًا كثير أشخاص ما تعرف تبرمج بشكل صحيح. وللأسف يعتمدون فقط على حماية اللعبة بدل ما يصلحون السكربتات ويضيفون حماية للأشياء يلي يواجهونها كيف أحمي خادمي وأتصدى للغش؟ هذا منشور يشرح كيف بشكل بسيط .بالتوفيق
  8. guiSetSelectedTabوعليكم السلام. تقدر تغيره عبر guiGetEnabled كيف تعرف التاب المفتوح؟ تقدر تحطهم مثلا في جدول وعشان تبحث تسوي لوب للجدول وتقدر تعرف إذا مقفل أو مفتوح بواسطة
  9. xLive

    مساعده

    زر وداخله صورة فقط :مثال local button = dgsCreateButton (...) -- نصنع زر طبيعي بدون أي كلام local image = dgsCreateImage(0,0,25,25,"image.png",false,button) -- الإحداثيات مثال، اهم شيء نحدد "أب" للصورة. كذا راح تنصنع داخل الزر dgsSetProperty(image,"rotation",90) -- نغير دوران الصورة لـ 90 درجة
  10. xLive

    مساعده

    وعليكم السلام، ما تقدر بواسطة الخواص حقت الزر. هو الزر، وكذا راح تنصنع الصورة داخل الزر وتقدر تغير دورانها بواسطة الخواص parent وتحط الـ dgsCreateImage لازم تصنع صورة باستخدام
  11. .وعليكم السلام، التصرف الصحيح ضدها هو منع الغشاشين من فعل أي تأثير :وهذا يتم على مرحلتين حماية السكربتات: مثل ما تم توضيح لك سابقًا؛ أغلب المشاكل والضرر الكبير تتم بسبب سوء كتابة السكربتات ويتم استغلالها من قبل الغشاشين. الحل هنا هو كتابة السكربتات بشكل صحيح لمنع الغشاشين من استغلالهم. وهنا شرح على ذلك حماية ضد الغش: وهذا ضد الأشياء يلي تتم دون استغلال احد السكربتات، مثل التفجير والطيران وغيره. هذا يتم كشفها بواسطة تحققات لكشف هذي الأشياء :نأخذ التفجير على سبيل المثال فيه وظائف تم إضافتها يمكن استعمالها لصنع حماية ضدها مثل onExplosion, onPlayerProjectileCreation, onPlayerDetonateSatchels جميعها من خلالهم تقدر تسوي منها حماية بسيطة لكشفهم، على سبيل المثال لاعب ارسل صواريخ دبابة؛ لكن هو غير موجود في دبابة من الأساس أو خادمي لا توجد له طريقة بإطلاق صواريخ. وغيرها الكثير من الأشياء تقدر تضيفها onPlayerTriggerEventThreshold وفيه أحداث غيرها تقدر تساعدك مثلا وباقي الأشياء على نفس الطريقة يحتاج فقط منطق برمجي ممتاز
  12. triggerServerEvent وعليكم السلام، إذا الاعب ضغط زر إظهار الصورة ترسل تريقر لجانب الخادم triggerClientEvent بعدها جانب الخادم يتحقق إذا الاعب عنده الصلاحية يظهر الصورة بعدها ترسل تريقر لكل الاعبين لجانب العميل بإستخدام وفي جانب العميل تستقبل الايفنت وتظهر الصورة بشكل عادي إستعمالها هنا سيء جدًا element dataلا أنصح في هذي الطريقة أخ خالد لازم يستخدم جانب الخادم ليتحقق من صلاحية الاعب من إظهار الصور للجميع، أو الغشاشين راح يقدروا يستغلوا هذي الطريقة لإظهار الصور
  13. وعليكم السلام rulesTable وين معرف؟ handlePunishment و وين يشتغل لأن انت تاخذ منه القيمة kickPlayer أيضًا لا تسمي وظائفك بنفس اسم وظائف موجودة بالفعل لأن راح يسبب لك مشاكل في إستعمالها مثل
  14. وعليكم السلام ما يتحدث نهائيًا إلا في حال كانremainingTimeUntilNextLotto ركز في كودك، المتغير lottoActive مفعل وفي كودك ما تظهر الوقت إلا لو كان غير مفعل، يعني مستحيل المتغير يتحدث لكن عالعموم انا اشوف استعمال الوقت غير مناسب هنا والأفضل تستعمل التايمر لأن اصلا تحتاجه setTimer getTimerDetails التايمر راح يشغل لك وظيفة بعد وقت معين راح يفيدك هنا، وتقدر تعرف منه كم باقي وقت عبر
  15. للأسف تحتاج تكون عارف برمجة، الموضوع مو فقط انك تضيف سكربت حماية وخلاص لأن كثير سكربتات منشورة للأسف مكتوبة بشكل خاطئ والغشاشين يستغلوها. لازم تراجع السكربتات المثبتة عندك وتتأكد من الأشياء يلي فيها وتعدله
  16. .الأشياء يلي ذكرتها غير جديدة، موجودة من سنين؛ الشيء الجديد إن فيه ناس يستهدفوا خادمك .في حال حميت سكربتاتك بشكل صحيح ما راح تواجه هذي المشاكل
  17. .وعليكم السلام ورحمة الله وبركاته، الأشياء يلي تم ذكرها هي سوء برمجة وعدم الاهتمام بالحماية Script Security اقرأ هذه الصفحة لحماية خادمك
  18. استخدم مرة القادمة هذا القسم للغة العربية جرب شغل اللعبة كمسؤول
  19. setPedHeadless راح يزيل رأس الاعب فقط killPed عشان تقتل الاعب تستخدم
  20. لتغيير وضعية الكام setCameraMatrix استخدم
  21. I don't know what fluid animations mean for images. DGS has a lot of animation functions that can be found here, and you can also create your own animations. For CEGUI, you can use a timer or onClientRender event, along with interpolateBetween, for moving, sizing animations, etc..
  22. @Mersad Your thread has been moved to the Scripting section. Please use it for scripting questions in the future. That's because your draw functions are being executed after DGS finishes its own drawing. You can either change your onClientRender event priority to high or set DGS renderPriority to low using dgsSetRenderSetting. Both will ensure that your draw functions runs before DGS render event, which should make DGS elements render above it: addEventHandler("onClientRender", root, drawFunction, false, "high") addEventHandler: By the way, is there any particular reason for not using dgsCreateImage?
  23. chatGPT ياليت تعرف للبرمجة قبل ما تساعد في هذا القسم، لأن جالس تلصق من والإجابة مالها أي علاقة بالمشكلة المشكلة في هذا السطر فقط تحتاج تتحقق إن الشخص يلي هجم == لاعب الكلاينت وتتحقق إن الشخص يلي تدمج مو الكلاينت نفسه source ~= localPlayer and attacker == localPlayer -- نتحقق إن الشخص يلي تدمج هو مو الكلاينت نفسه، ونتحقق إن هو الشخص يلي دمج كذا صار الحدث مختلف الان انت ربطت الحدث بلاعب الكلاينت، يعني اذا تدمج هو فقط راح يشتغل الحدث root عكس اول كان مربوط بـ .على العموم @Avir14 انا اشوف استعمال حدث جانب الكلاينت هنا خطأ، راح يشتغل لكن حل غير مناسب؛ لأن جانب الكلاينت ممكن يشوف الاعب تدمج عنده، لكن غير ثابت مثلا انت ملقلق onPlayerDamage إذا استعملته فيه احتمالية كبيرة أحيانًا تدمج ويطلع الصوت وبالحقيقة الاعب ما تدمج. الحل المناسب؟ استخدم حدث جانب السيرفر وترسل تريقر لجانب الكلاينت للقاتل باستخدام عشان تشغل الصوت triggerClientEvent
×
×
  • Create New...