يحتوي على مختلف البرامج النصية للمرافق التي أستخدمها لجعل تشغيل بطولات تشالونج أسهل (خاصة لـ Super Smash Bros. Melee).
من المفترض أن يتم تشغيل جميع الأمثلة من نسخة تم تنزيلها من هذا المستودع.
# After creating a local tourney at https://challonge.com/mtvmelee77,
# I want to seed participants based on their Google MTV gaR PR rankings, and shuffle
# the bracket a bit while preserving each participant's projected placement.
python3 garpr_seeds_challonge.py mtvmelee77 --shuffle --region=googlemtv
# Then later on in the local, after loser's round 2 has finished, I want
# to create an amateur bracket automatically, so I don't have to spend time
# manually entering in each participant.
python3 create_amateur_bracket.py mtvmelee77
# Once that amateur bracket is created, it's available at
# https://challonge.com/mtvmelee77_amateur. The amateur bracket will use the
# same seedings as the original bracket by default, but I want to vary up the
# matches, so I run shuffled gaR PR seeds on the bracket again.
python3 garpr_seeds_challonge.py mtvmelee77_amateur --shuffle --region=googlemtvتستخدم هذه البرامج النصية Python 3 ، ولا تتوافق مع Python 2. إذا واجهت أي مشكلات في وضع هذا الأمر ، فلا تتردد في فتح مشكلة جديدة هنا.
git clone https://github.com/akbiggs/challonge-tools
cd challonge-tools
python3 -m venv challonge_tools_env
source challonge_tools_env/bin/activate
pip install -r requirements.txt
قم بتحرير نسختك المحلية من challonge.ini باستخدام اسم المستخدم الخاص بك و API.
قم بتشغيل البرنامج النصي الذي تريد تجربته!
python3 <script_to_run>.py
garpr_seeds_challonge.py : بذور بطولة تعتمد على تصنيفات GAR PR.
سيتم زرع أي أسماء غير معروفة في المركز الأخير (حسب ترتيب مظهرها الأصلي في قائمة البذر). يتم تجاهل القضية في الأسماء.
$ python3 garpr_seeds_challonge.py 32w50dxc
Tournament updated; see seeds at http://challonge.com/32w50dxc/participants.
يمكنك تغيير المنطقة باستخدام علم --region .
$ python3 garpr_seeds_challonge.py 32w50dxc --region=googlemtv
Tournament updated; see seeds at http://challonge.com/32w50dxc/participants.
الأعلام:
--region=norcal : المنطقة المستخدمة للحصول على تصنيفات Gar PR. الافتراضي: norcal--print_only=False : اضبط هذا على True إذا كنت ترغب فقط في طباعة البذور الجديدة دون أن تلتزم بها في البطولة. هذا مفيد للاختبار قبل إعادة صياغة بطولتك. الافتراضي: False--shuffle=False : اضبط هذا على True إذا كنت ترغب في خلط البذور بعد ذلك مع الحفاظ على وضع كل مشارك متوقع. هذا يساعد على تقديم القليل من التباين في القوس. الافتراضي: False--config_file=challonge.ini : ملف التكوين لقراءة بيانات اعتماد challonge الخاصة بك من. يعد هذا مفيدًا لتقليل خطر ارتكاب بيانات اعتمادك عن طريق الخطأ. الافتراضي: challonge.ini garpr_seeds.py : يحصل على البذور دون استخدام API challonge.
مفيد لاختبار التصنيف دون بطولة فعلية.
$ python3 garpr_seeds.py "Eden, Bryan, Non-gaR PR Person, Admiral"
[3, 2, 4, 1]
shuffle_seeds_challonge.py : خلط البذور في بطولة challonge.
تساعدك هذه الوظائف على خلط شريحة مع الحفاظ على الموضع المتوقع لكل مشارك في نهاية البطولة. يساعد هذا في وضع عشوائي للبطولات مع الحفاظ على موازنة الأشياء ، مقارنة بـ "بذور خلط خلل" في تشالونج ، والتي تعرض بشكل عشوائي كل شيء.
$ python3 shuffle_seeds_challonge.py zcmvlkxm
Seeds shuffled: http://challonge.com/zcmvlkxm/participants
يقوم تلقائيًا بتحديث بذر جميع المشاركين بناءً على ترتيب خلط خلفي تم إنشاؤه.
الأعلام:
--config_file=challonge.ini : ملف التكوين لقراءة بيانات اعتماد challonge الخاصة بك من. يعد هذا مفيدًا لتقليل خطر ارتكاب بيانات اعتمادك عن طريق الخطأ. الافتراضي: challonge.ini shuffle_seeds.py : خلط البذور دون استخدام API challonge.
يكون هذا مفيدًا عندما لا تتمكن من الوصول إلى اتصال بالإنترنت ، أو عندما تريد فقط اختبار التوزيع العشوائي.
$ python3 shuffle_seeds.py 9
[1, 2, 3, 4, 6, 5, 8, 7, 9]
إرجاع أمر البذر المقطوع حديثًا لبطولة مع عدد معين من المشاركين. يشير كل رقم إلى مكان إدراج البذور المقابلة.
$ python3 shuffle_seeds.py "Neal, Bryan, Paragon, gaR, Admiral Lightning Bolt, Eden"
['Neal', 'Bryan', 'Paragon', 'gaR', 'Eden', 'Admiral Lightning Bolt']
إرجاع ترتيب المشاركين المخلوع حديثًا من قائمة أسماء المشاركين. يجب أن يتم طلب المشاركين من البذور الأولى إلى البذور الأخيرة. يتم تجريد المساحات الرائدة والمتزايدة في أسماء المشاركين.
create_amateur_bracket.py : ينشئ بطولة هواة تلقائيًا من بطولة تشالونج الحالية.
تأخذ بطولة الهواة الأشخاص الذين يضعون تحت عتبة معينة ويستضيفون بطولة منفصلة لهم بعد البطولة الرئيسية. هذا يساعد الناس على الحصول على مزيد من التدريبات والحصول على المزيد من المرح ، خاصة في لعبة مع منحنى تعليمي سحق الروح مثل المشاجرة.
$ python3 create_amateur_bracket.py mtvmelee72
يفحص http://challonge.com/mtvmelee72 ويقدم إنشاء شريحة هواة باستخدام الأشخاص الذين تم إلغاؤهم في جولات الخاسر 1 و 2.
ستحصل الأداة على موافقتك قبل أن تنشئ أي شيء ، ولن تفعل أي شيء إذا كانت هناك شريحة هواة موجودة بالفعل. لن يعدل بيانات البطولة الحالية.
مثال جلسات مع هذه الأداة:
الأعلام:
--use_double_elimination=True : ما إذا كان ينبغي أن تستخدم شريحة الهواة المزدوجة أو التحول الفردي. الافتراضي: True--randomize_seeds=False : ما إذا كان يجب أن يعرض القوس الهواة عشوائيًا تمامًا على البذور أو استخدام البذر من القوس الرئيسي لمعرفة ذلك. الافتراضي: False--losers_round_cutoff=2 : جولة الخاسر التي لم يعد الأشخاص الذين يتم القضاء عليها مؤهلين للحصول على شريحة الهواة. قيمة 2 تعني أنه يتم تضمين جولات الخاسر 1 و 2 ، ولكن ليس الخاسر الجولة 3. الافتراضي: 2--associate_challonge_accounts=False : ما إذا كان ينبغي ربط حسابات المستخدمين بالمستخدمين بإدخالاتهم في أقواس الهواة. يعد هذا مفيدًا لمساعدتهم على تتبع جميع البطولات التي أدخلوها ، ولكنها تجعل قوس الهواة إرسال بريد إلكتروني إليهم ، لذا استخدم بمسؤولية عند توليد قوسين للهواة. ستعلمك الأداة ما إذا كان سيتم إرسال حسابهم عبر البريد الإلكتروني. الافتراضي: False--config_file="challonge.ini" : ملف التكوين لقراءة مفتاح API challonge الخاص بك واسم المستخدم من. الافتراضي: "challonge.ini"على سبيل المثال
$ python3 create_amateur_bracket.py mtvmelee72
--config_file=akbiggs_challonge.ini
--use_double_elimination=False
parse_challonge_config.py : أداة المطورين للحصول على بيانات اعتماد challonge من ملف التكوين.
مفتاح API challonge هو شيء تريد أن تبقيه السر. قمت بإعداد هذه الأداة حتى تتمكن من تحليل معلومات الشلون الخاصة بك بسهولة من ملف التكوين الذي يمكن تجاهله من ريبو Git بدلاً من ترميزه في التعليمات البرمجية.
انظر challonge.ini للحصول على مثال على ملف التكوين مع التعليمات.
$ python3 parse_challonge_config.py my_challonge.ini
{ user: 'blah', api_key: 'not telling' }
قبل إجراء الاختبارات ، ستحتاج إلى تهيئة الخفافيش:
git submodule update --init --recursive
بعد ذلك ، ما عليك سوى تشغيل test.sh لتشغيل جميع اختبارات الوحدة:
./test.sh