
Code Roulette هي لعبة روليت روسية تعتمد على واجهة طرفية (TUI)، ومتعددة اللاعبين عبر الإنترنت، حيث يقوم الخاسر بتنفيذ ملف payload بلغة Python الخاص بالفائز.
لعبة روليت روسية متعددة اللاعبين عبر الإنترنت، بواجهة طرفية، حيث يقوم الخاسر بتنفيذ ملف بايثون الخاص بالفائز.

![]() | ![]() |
![]() | ![]() |
Code Roulette هي لعبة روليت روسية متعددة اللاعبين عبر الإنترنت، معتمدة على واجهة مستخدم طرفية (TUI)، حيث يُجبر الخاسر على تنفيذ حمولة بايثون من اختيار الفائز. الدردشة متضمنة.
واجهة اللعبة تعتمد بالكامل على الطرفية باستخدام Textual، وتدعم التفاعل بكل من لوحة المفاتيح والفأرة. لذلك، يمكن لعبها في أي مكان يمكن فيه تثبيت حزم بايثون وفتح طرفية.
من خلال تنفيذ حمولة بايثون الخاصة بلاعب آخر على جهازك إذا خسرت، يمكن محاكاة جوهر لعبة الروليت الروسية الأصلية بشكل مناسب في الفضاء الرقمي.
تبدأ اللعبة باتصال جميع المستخدمين بخادم محلي أو بعيد، واختيار أسماء المستخدمين وملفات الحمولة الخاصة بهم. بمجرد وجود عدد كافٍ من اللاعبين في الردهة، يمكن لأول من يتصل (مالك الردهة) بدء اللعبة.
سيتم إقران جميع اللاعبين، من جانب الخادم، بلاعب آخر. ثم سيُعرض على كل لاعب ملف الحمولة الخاص بخصمه ويُمنح فرصة للانسحاب.
بمجرد أن يستعد جميع اللاعبين المتبقين، تبدأ اللعبة. سيتناوب كل لاعب على سحب الزناد في المسدس الأسكي. الخزانات مخفية، لذا قد تكون أي واحدة هي التي ترسلك إلى شاشة الخاسر.
أما بالنسبة لأولئك الذين لم يسحبوا الزناد للمرة الأخيرة، فتُعرض شاشة الفائز توضح لمن يتم تنفيذ الكود الآن، ومعاينة للكود نفسه، واسم اللاعب الذي خسر.
أما الخاسر، فسيتم الآن تنفيذ ملف الحمولة الذي وافقوا على المقامرة به على نظامهم.
[!CAUTION] يمكن لهذا البرنامج تنفيذ كود عشوائي يقدمه لاعب آخر على جهازك إذا خسرت اللعبة.
يرجى مراجعة والتأكد من فهمك لمخاطر تنفيذ الكود عن بعد، وكيفية عمل اللعبة، وقراءة إخلاء المسؤولية قبل استخدام هذا البرنامج!
[!NOTE] Code Roulette غير متوفرة بعد كحزمة PyPi أو كملف تنفيذي أصلي. ومع ذلك، أخطط لتنفيذ ذلك عندما يكون البرنامج جاهزًا للتوزيع على نطاق أوسع.
يمكن تشغيل هذا المستودع محليًا بسهولة باستخدام مدير الحزم UV.
uv run main.py --help
uv run main.py serveruv run main.py clientلسهولة الاستخدام، تم تضمين ملف requirements.txt لمستخدمي pip.
باستخدام Code Roulette، يمكنك استخدام أي ميزات مكتبة بايثون 3 الافتراضية في ملفات الحمولة الخاصة بك. نظرًا لأن النظام مفتوح، يمكنك ابتكار طريقة لاستيراد حزم إضافية. ومع ذلك، لن يتم تنفيذ هذا الدعم بشكل أصلي في اللعبة.
للاطلاع على مجموعة من ملفات الحمولة النموذجية، تفقد دليل payloads/.
فهرس بتنسيق JSON لملفات الحمولة متاح أيضًا من هذا المستودع للمطورين. تتضمن الخارطة الطريق المستقبلية دمج اختيار الملفات من قاعدة البيانات هذه.
تأكد من إضافة textual-dev كتبعية أيضًا.
يمكن فتح العميل في وضع المطور الخاص بـ Textual عن طريق تشغيل: textual run --dev -c uv run main.py --log-level debug client
هذا المستودع، باستثناء محتوى دليل payloads/، متاح بموجب رخصة GNU العمومية العامة v3.0.
في جميع الظروف تقريبًا، أنصح بشدة بعدم استخدام هذه الرخصة. ومع ذلك، نظرًا لطبيعة هذا المشروع كمنتج نهائي كامل (لعبة)، أشعر أنها مناسبة في هذا السياق. إذا كان لديك سبب مقنع لفتحه، فأخبرني وربما يمكننا مناقشة الترخيص للاستخدام.
محتوى دليل payloads/ فقط متاح بموجب رخصة MIT.
[!CAUTION] يمكن لهذا البرنامج تنفيذ كود عشوائي يقدمه لاعب آخر على جهازك إذا خسرت اللعبة.
يرجى مراجعة والتأكد من فهمك لمخاطر تنفيذ الكود عن بعد، وكيفية عمل اللعبة، وقراءة إخلاء المسؤولية قبل استخدام هذا البرنامج!
هذا البرنامج يُقدم "كما هو"، دون أي ضمان من أي نوع، صريح أو ضمني، بما في ذلك على سبيل المثال لا الحصر ضمانات القابلية للتسويق، الملاءمة لغرض معين، وعدم الانتهاك. لا يتحمل المؤلفون أو أصحاب حقوق النشر أي مسؤولية عن أي مطالبة أو أضرار أو مسؤولية أخرى، سواء في إجراء تعاقدي أو تقصيري أو غيره، ناشئًا عن أو من أو فيما يتعلق بالبرنامج أو استخدامه أو التعاملات الأخرى معه.
أنت وحدك المسؤول عن أي عواقب قد تنشأ عن استخدام هذا البرنامج، بما في ذلك على سبيل المثال لا الحصر فقدان البيانات، تلف النظام، أو مشاكل قانونية ناتجة عن تنفيذ كود يقدمه لاعبون آخرون. قم دائمًا بمراجعة وفهم الكود الذي توافق على تنفيذه قبل المشاركة في اللعبة.
الروليت الروسية هي لعبة خطيرة تهدد الحياة في الواقع الحقيقي. هذا البرنامج مخصص لأغراض الترفيه فقط ولا ينبغي اعتباره تأييدًا لمثل هذه الأنشطة. إذا كنت أنت أو أي شخص تعرفه يعاني من مشاكل تتعلق بالمقامرة أو السلوكيات المهددة للحياة، فيرجى طلب المساعدة المهنية. هناك دائمًا شخص مستعد للاستماع والمساعدة.
إذا اخترت استخدام هذا البرنامج، فأنت تفعل ذلك على مسؤوليتك الخاصة.