Приветствую!

Возможно кого-то заинтересует.
В рамках знакомства с языком Rust написал сабж. Код лежит здесь.
Примеры использования:
Хелп: dnddice.exe -h
Поддерживает два варианта задания бросаемых дайсов - через параметры командной строки: dnddice.exe -n4 -d6 -D1
И через парсинг кодов дайсов, заданных в командной строке же: dnddice.exe 4d6drop1 4d6drop1 4d6drop1
Коды поддерживают умножение и деление результатов бросков (а также возведение в степень и деление по модулю).
Строчка 6d8drop1c2p10minus20%6d8drop1c2p10minus20+6d8drop1c2p10minus20^6d8drop1c2p10minus20 нормально парсится:)
Хелп по кодам: dnddice.exe --help-dice-codes
Можно напрямую задавать метод генерации набора статов: dnddice.exe --method=dnd
dnddice.exe --method=wh40k
Список методов: dnddice.exe --help-methods
Хелп по конкретному методу: dnddice.exe --help-method=dnd
Можно собрать статистику, всю: dnddice.exe -N 1000 --stat --method=dnd
Или частично: dnddice.exe -N 1000 --probabilities 2d8greatest1
Более подробные результаты бросков: dnddice.exe -v -N 10 --probabilities 2d8greatest1
dnddice.exe -vv -N 10 --probabilities 2d8greatest1
Проверял под 7 и 10 виндой и под Дебианом 10. Сборка требует установки Rust-а, Если вы мне почему-то доверяете (стандартный дисклеймер об освобождении от любых обязательств) - сборку под Win64 можно взять здесь.
С уважением, Dargot.

Возможно кого-то заинтересует.
В рамках знакомства с языком Rust написал сабж. Код лежит здесь.
Примеры использования:
Хелп: dnddice.exe -h
Поддерживает два варианта задания бросаемых дайсов - через параметры командной строки: dnddice.exe -n4 -d6 -D1
И через парсинг кодов дайсов, заданных в командной строке же: dnddice.exe 4d6drop1 4d6drop1 4d6drop1
Коды поддерживают умножение и деление результатов бросков (а также возведение в степень и деление по модулю).
Строчка 6d8drop1c2p10minus20%6d8drop1c2p10minus20+6d8drop1c2p10minus20^6d8drop1c2p10minus20 нормально парсится:)
Хелп по кодам: dnddice.exe --help-dice-codes
Можно напрямую задавать метод генерации набора статов: dnddice.exe --method=dnd
dnddice.exe --method=wh40k
Список методов: dnddice.exe --help-methods
Хелп по конкретному методу: dnddice.exe --help-method=dnd
Можно собрать статистику, всю: dnddice.exe -N 1000 --stat --method=dnd
Или частично: dnddice.exe -N 1000 --probabilities 2d8greatest1
Более подробные результаты бросков: dnddice.exe -v -N 10 --probabilities 2d8greatest1
dnddice.exe -vv -N 10 --probabilities 2d8greatest1
Проверял под 7 и 10 виндой и под Дебианом 10. Сборка требует установки Rust-а, Если вы мне почему-то доверяете (стандартный дисклеймер об освобождении от любых обязательств) - сборку под Win64 можно взять здесь.
С уважением, Dargot.
no subject
Date: 2021-03-15 05:19 pm (UTC)no subject
Date: 2021-03-15 06:23 pm (UTC)Приветствую!
Там регулярка, программа должна аварийно завершать работу, если переданные коды дайсов ей не соответствуют или не могут быть в дальнейшем распарсены. Ну и выводить соответствующее сообщение об ошибке, что коды неправильные, а правильно - вот так.
Но то должно, а как на самом деле работает - кто знает. Когда тестировщик и разработчик в одном лице - добра не жди:)
С уважением, Dargot.