شخصية D&D

شخصية D&D

سهل

مقدمة

بعد أسابيع من الترقب، تجتمع أنت وأصدقاؤك لأول لعبة لكم من Dungeons & Dragons (D&D). ولأن هذه أول جلسة في اللعبة، فعلى كل لاعب أن يُنشئ شخصية يلعب بها. تُحدَّد قدرات الشخصية برمي نرد ذي ستة أوجه، ولكن أين النرد فعلًا؟ وترتجف من الصدمة حين تدرك أن أصدقاءك ينتظرون منك أنت أن تُحضر النرد، فقد كانت فكرتك أنت أن تلعبوا D&D! وحين تصاب بالذعر، تدرك أنك نسيت إحضار النرد، ما يعني ألا لعبة D&D. ولأنك تملك بعض مهارات البرمجة الأساسية، تجد حلًا سريعًا: ستكتب برنامجًا يحاكي رمي النرد.

التعليمات

في لعبة Dungeons & Dragons، يبدأ كل لاعب بتوليد شخصية يمكنه اللعب بها. وللشخصية، من بين أمور أخرى، ست قدرات: القوة والرشاقة والبنية والذكاء والحكمة والكاريزما. وهذه القدرات الست لها درجات تُحدَّد عشوائيًا. وتفعل ذلك برمي أربعة أحجار نرد ذات 6 أوجه وتسجيل مجموع أكبر ثلاثة أحجار. وتفعل ذلك ست مرات، مرة لكل قدرة.

نقاط الصحة الأولية لشخصيتك تساوي 10 + معدِّل بنية شخصيتك. وتجد معدِّل بنية شخصيتك بطرح 10 من بنية شخصيتك، ثم القسمة على 2 والتقريب إلى أسفل.

اكتب مولِّد شخصيات عشوائيًا يتبع القواعد أعلاه.

على سبيل المثال، قد تبدو الرميات الست لأربعة أحجار النرد كما يلي:

  • 5، 3، 1، 6: تستبعد العدد 1 وتجمع 5 + 3 + 6 = 14، وتُسنِد المجموع إلى القوة.
  • 3، 2، 5، 3: تستبعد العدد 2 وتجمع 3 + 5 + 3 = 11، وتُسنِد المجموع إلى الرشاقة.
  • 1، 1، 1، 1: تستبعد العدد 1 وتجمع 1 + 1 + 1 = 3، وتُسنِد المجموع إلى البنية.
  • 2، 1، 6، 6: تستبعد العدد 1 وتجمع 2 + 6 + 6 = 14، وتُسنِد المجموع إلى الذكاء.
  • 3، 5، 3، 4: تستبعد العدد 3 وتجمع 5 + 3 + 4 = 12، وتُسنِد المجموع إلى الحكمة.
  • 6، 6، 6، 6: تستبعد العدد 6 وتجمع 6 + 6 + 6 = 18، وتُسنِد المجموع إلى الكاريزما.

ولأن البنية تساوي 3، فإن معدِّل البنية يساوي -4 ونقاط الصحة تساوي 6.

Note

توفِّر معظم لغات البرمجة مولِّدات أرقام (شبه) عشوائية، لكن لغات برمجة قليلة مصمَّمة لرمي أحجار النرد. ومن هذه اللغات Troll.

تعديل عبر GitHub يفتح الرابط في نافذة أو علامة تبويب جديدة
Lisp Flavoured Erlang Exercism

مستعد لبدء شخصية D&D؟

سجّل في Exercism لتتعلّم وتتقن Lisp Flavoured Erlang عبر 68 تمرينًا، وإرشاد بشري حقيقي، وكل ذلك مجانًا.

تعمّق في شخصية D&D!

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