#lang scribble/doc @(require scribble/manual (for-label "../common.ss" "../shadowrun.ss")) @title[#:tag "shadowrun" #:style '(toc)]{"Shadowrun"} @local-table-of-contents[] @defmodule[(planet "shadowrun.ss" ("murphy" "rpg-utils.plt" 1 0))]{ Specific procedures for the "Shadowrun" role playing game system. } @defproc[(cd6 [generator pseudo-random-generator? (current-pseudo-random-generator)]) exact-positive-integer?]{ Simulates a cumulative D6 dice roll and returns a random natural number. A PRNG to use may optionally be specified via the @scheme[generator] argument. } @defproc[(simulate-test [skill exact-nonnegative-integer?] [target exact-nonnegative-integer?] [generator pseudo-random-generator? (current-pseudo-random-generator)]) test-result?]{ Simulates a skill test. The value of the skill or attribute is given by @scheme[skill], the difficulty of the test by @scheme[target]. You may optionally specify a PRNG to use via the @scheme[generator] argument. This procedure returns a @scheme[test-result] structure with the number of successes as its @scheme[value]. } @defproc[(analyze-test [skill exact-nonnegative-integer?] [target exact-nonnegative-integer?]) test-statistics?]{ Determines the statistical properties of a skill test. The value of the skill or attribute is given by @scheme[skill], the difficulty of the test by @scheme[target]. This procedure returns a @scheme[test-statistics] structure with the expected number of successes as its @scheme[expectation]. }