RandEXom / Docs
  • Project home
  • Guide map
  • Class index

RandEXom documentation

This is the guide map. Follow the chapters in order if RandEXom is new to you; each page also has a Previous and Next link. The sidebar uses the same chapter numbers, so you can always see which branch a page belongs to.

RandEXom is a .NET Standard 2.1 library. Its main path is SeedLib state → RandomLib draws → Framework behavior. Interface defines the connections; Utility contains support functions. If that map is unfamiliar, begin at 1.1.

1. Start here

  1. How the library fits together — what each namespace owns and how a draw travels through the layers.

    • 1.1.1 Namespaces and responsibilities
    • 1.1.2 Follow one draw through the layers
    • 1.1.3 How to choose a path
  2. Installation — use the release DLL or a project reference.

    • 1.2.1 Use the published DLL
    • 1.2.2 Reference the source project
    • 1.2.3 First compile check
    • 1.2.4 Build and verify this repository
  3. Getting started — make a first draw and try common helpers.

    • 1.3.1 Generate a bounded number
    • 1.3.2 Choose a seed generator
    • 1.3.3 Shuffle and draw items
    • 1.3.4 Draw a percentage

2. Core libraries

  1. SeedLib: state — choose how the seed changes.

    • 2.1.1 XORShift64Seed
    • 2.1.2 LCGSeedR
    • 2.1.3 IterativeSeedR
    • 2.1.4 IterativeSeedRCustom
    • 2.1.5 Constant seed (SeedR)
  2. RandomLib: draws — turn state into ranges and bytes.

    • 2.2.1 ModuloRandom
    • 2.2.2 NetRandom
    • 2.2.3 SSRNGRandom
    • 2.2.4 Choosing a source

3. Framework helpers

  1. Framework overview — choose a task-level behavior.

    • 3.1.1 Choose a behavior
    • 3.1.2 Default versus supplied sources
  2. Boolean — independent percentage outcomes.

    • 3.2.1 TruePercentageR
  3. Item — shuffling, gacha bags, and a tree picker.

    • 3.3.1 Shuffles_FisherYates: Fisher–Yates shuffle
    • 3.3.2 GachaR: list-backed bag
    • 3.3.3 GachaRBatched: count-backed bag
    • 3.3.4 DistributedTreeR: random branch item picker
  4. Number — slot, alternating halves, and minimum distance.

    • 3.4.1 SlotR: spin one reel at a time
    • 3.4.2 PongR: alternate halves
    • 3.4.3 DistanceR: keep draws apart

4. Reference

  1. Utility — time-derived seed helper and internal conversion.

    • 4.1.1 Public: SeedGenerator
    • 4.1.2 Internal: TypeR.RoundLongToInt(long)
  2. Interfaces and limitations — plug in your own source or seed and understand the limits.

    • 4.2.1 Pass a custom seed progression
    • 4.2.2 Implement an interface
    • 4.2.3 Important limits
    • 4.2.4 Verification
  3. Research and provenance — papers behind algorithms, book-sourced parameters, and non-implemented references.

    • 4.3.1 Implemented algorithm families
    • 4.3.2 LCG research versus preset provenance
    • 4.3.3 Related research, not an implemented feature
    • 4.3.4 Platform behavior and project-specific helpers
  4. Class index — find a type by name and jump to its guide.

  5. TestOut: interactive output examples — menu options, example output, and how to run.

  6. Benchmarks: measured comparisons — results, configuration, and reproducible runs.

Looking for one class rather than a learning path? Use the class index. The README has release information, verification instructions, and support options.

Start reading → 1.1 How the library fits together

  • Improve this Doc
In This Article
Back to top Generated by DocFX