Bazı arkadaşlar ve ben bazı DSA (D & D gibi çoğunlukla Alman masa üstü RPG) oynadı. Ruloları geçme şansının ne olduğunu merak ediyordum, bu yüzden hesaplamak için bazı kodlar yazmanız gerekecek.
Karakteriniz istatistikler (8 ila 14) ve (TV) Yetenek değerleri (0 ila 21) ile tanımlanır. Şimdilik tırmanmayı örnek olarak kullanacağız.
Yetenek testleri
Bir yetenek (tırmanma) şuna benzer: (Cesaret-Beceri-Güç) TV: 7. Bir yetenek üzerinde bir karakteri test etmek için 20 taraflı bir zarla bu istatistiklere yuvarlanır ve bunu iyi yaparsın. Değilse, ruloları 1: 1 oranında azaltmak için TV noktalarınızı kullanabilirsiniz.
Misal
Cesareti 12, el becerisi 13 ve gücü 14 olan bir avcı bir ağaca tırmanmaya çalışıyor, TV'si 7.
3 atar, değer 12'nin altındadır, bu yüzden o ruloyu geçti.
Daha sonra bir 17, 17, 13'ten 4'ü alır, böylece 4 TV 3 kaldı.
Son atış için 14 puan alırsınız.
Tüm toplar geçti ve avcı ağaca tırmanmayı başardı, 3 TV kaldı.
Giriş
Dilinizin standart girişinden alınan, seçtiğiniz herhangi bir formatta 4 değer. Yine de bu sırada olması gerekir.
Örneğin 12 13 14 7
veya 12,13,14,7
{12,13,14,7} dizisi olarak veya karışık[12, 14, 8], 3
Çıktı
Ruloların ne sıklıkta geçme şansı.
Örneğin (yukarıdaki değerler için)0.803
12,14,8,3 = 0.322
11,11,12,11 = 0.840
Bonus için: Yine biçimlendirme burada sorun değil, istediğiniz gibi ama aşağıdaki sırayla çıktı alın:
failed/with 0/with 1/with 2/with 3/with 4/with 5/with 6/with 7
TV kalmayıncaya kadar devam edin.
12,13,14,7 = 0.197/0.075/0.089/0.084/0.078/0.073/0.068/0.063/0.273
12,14,8,3 = 0.678/0.056/0.051/0.047/0.168
Zorluk ve kurallar ve bonus
Girdiye ruloları% + - 0,5 hassasiyetle geçirme şansı verildiğini öğreneceksiniz.
Programınız
n
TV ile geçme şansını da verirse% -20 (çıkışa bakınız).Bu kod golf, bayttaki en kısa kod kazanır!
[12, 14, 8], 3
mi?