Skip to main content

Xgenia Slot Engine Functions - Comprehensive Node Reference

This exhaustive reference documents every node utilized by the Xgenia Slot Engine, providing detailed analysis of their mathematical operations, input/output specifications, integration patterns, and performance characteristics. Each function represents a specialized component in the sophisticated slot simulation ecosystem, designed for maximum accuracy, reliability, and regulatory compliance.

Mathematical Foundation Nodes​

Paytable and Mathematical Configuration​

Get Paytable (nodes/slot-games/get-paytable)​

Purpose: Advanced paytable management system providing comprehensive payout structure definition and validation.

Detailed Functionality:

  • Constructs mathematically consistent paytable structures with configurable symbol combinations
  • Supports dynamic payout multipliers ranging from 0.1x to 1000x for different symbol configurations
  • Handles complex symbol relationships including wild substitutions and scatter mechanics
  • Provides real-time validation of mathematical consistency across all payout combinations
  • Enables runtime modification of payout structures for A/B testing and optimization

Input Specifications:

  • Paytable Source (Optional): External paytable configuration or URL reference
  • Game Type (String): Slot game variant affecting paytable structure ("classic", "video", "megaways")
  • Symbol Configuration (Object): Detailed symbol definitions with IDs and properties

Output Specifications:

  • Paytable (Object): Complete payout structure with all symbol combinations and multipliers
  • Symbol Count (Integer): Total number of symbols defined in the paytable
  • RTP Contribution (Float): Calculated RTP contribution from paytable structure

Mathematical Validation Features:

  • Automatic consistency checking across all symbol combinations
  • RTP calculation validation against industry standards
  • Payout distribution analysis for volatility assessment
  • Regulatory compliance verification for gaming jurisdictions

Generate Symbol Weights (nodes/slot-games/generate-symbol-weights)​

Purpose: Sophisticated probability distribution calculator creating balanced symbol weights for optimal game mathematics.

Advanced Mathematical Processing:

  • Processes complex mathematical formulas including exponential, logarithmic, and polynomial expressions
  • Supports custom volatility profiles through dynamic formula adjustment
  • Implements advanced normalization algorithms ensuring proper probability distributions
  • Provides real-time feedback on calculated RTP and volatility measures

Formula Processing Capabilities:

  • Exponential Functions: exp(-x / k) for natural decay distributions
  • Polynomial Functions: a*x^n + b*x + c for complex curve fitting
  • Logarithmic Functions: log(x + k) for gradual probability transitions
  • Custom Expressions: Support for complex mathematical expressions with multiple variables

Input Parameters:

  • Target RTP (Float, 85.0-99.9%): Desired Return to Player percentage
  • Symbol Count (Integer, 1-15): Number of different symbols in the game
  • Paytable (Object): Complete payout structure for RTP calculations
  • Volatility Target (String): Desired volatility level ("low", "medium", "high", "custom")
  • Weight Formula (String): Mathematical expression controlling probability distribution

Output Specifications:

  • Symbol Weights (Array): Normalized probability weights for each symbol (sum = 1.0)
  • Calculated RTP (Float): Actual RTP achieved with generated weights
  • Volatility Rating (Float): Calculated volatility measure (0.0-10.0 scale)
  • Distribution Analysis (Object): Statistical analysis of weight distribution

Reel Strips Generator (nodes/slot-games/reel-strips-generator)​

Purpose: Advanced reel strip creation system using sophisticated algorithms for mathematically balanced configurations.

Advanced Generation Algorithms:

  • Genetic Algorithm Optimization: Evolves reel configurations toward optimal mathematical targets
  • Statistical Distribution Analysis: Ensures proper symbol frequency and clustering prevention
  • RTP Optimization Engine: Fine-tunes configurations for exact return to player targets
  • Volatility Control System: Adjusts symbol placement for desired game feel and risk profile

Quality Assurance Systems:

  • Mathematical Validation: Comprehensive verification of all generated strips
  • Clustering Analysis: Prevention of symbol clustering that could affect fairness
  • RTP Verification: Validation against target return to player percentages
  • Regulatory Compliance: Ensures strips meet gaming authority requirements

Input Configuration:

  • Number of Reels (Integer, 1-10): How many reels to generate strips for
  • Strip Length (Integer, 20-200): Number of positions on each reel strip
  • Symbol Set (Array): Available symbols with their properties and weights
  • Target RTP (Float): Desired Return to Player percentage for optimization
  • Volatility Profile (String): Target volatility characteristics
  • Quality Threshold (Float): Minimum quality score for generated strips

Output Specifications:

  • Reel Strips (2D Array): Complete symbol sequences for all reels
  • Strip Statistics (Object): Comprehensive analysis including symbol frequencies
  • Calculated RTP (Float): Actual RTP achieved by generated strips
  • Quality Metrics (Object): Volatility measure, balance score, and compliance status

Advanced Random Number Generation Systems​

ISAAC Random Number Array Generator (nodes/math/isaac-rng-array)​

Purpose: Enterprise-grade cryptographic pseudorandom number generation for deterministic testing and simulation.

Cryptographic Security Features:

  • ISAAC Algorithm Implementation: Indirection, Shift, Accumulate, Add, Count cryptographic algorithm
  • Cryptographic Security: Passes all standard randomness tests including NIST test suite
  • Deterministic Reproducibility: Identical seeds produce identical sequences for testing
  • High Performance: Optimized for batch generation with minimal computational overhead

Advanced Capabilities:

  • Batch Processing: Generates arrays of random numbers in single operations
  • Seed Management: Sophisticated seed handling with entropy validation
  • Quality Assurance: Built-in statistical testing and validation
  • Performance Optimization: Efficient memory usage and processing speed

Technical Specifications:

  • Seed (Integer/String): Optional seed value for deterministic output
  • Nonce (Integer): Additional randomization parameter for sequence variation
  • Count (Integer, 1-10000): Number of random values to generate in array
  • Range (Object): Optional range specification for bounded random numbers

Output Characteristics:

  • Generated Array (Array): Array of cryptographically secure random numbers
  • Statistical Properties (Object): Quality metrics and randomness validation
  • Performance Metrics (Object): Generation time and efficiency statistics

TRNG (True Random Number Generator) (nodes/math/trng)​

Purpose: Hardware-based entropy generation providing truly unpredictable random numbers for production scenarios.

True Randomness Sources:

  • Hardware Entropy: System-level entropy sources including thermal noise
  • Environmental Factors: Mouse movements, keyboard timings, system interrupts
  • Cryptographic Validation: Quality assurance for generated random numbers
  • Regulatory Compliance: Meets gaming authority requirements for random number generation

Quality Assurance Features:

  • Entropy Analysis: Real-time analysis of randomness quality
  • Statistical Testing: Continuous validation against randomness standards
  • Bias Detection: Automatic detection and correction of potential biases
  • Compliance Reporting: Detailed logs for regulatory audit requirements

Min (nodes/math/min)​

Purpose: Advanced minimum value calculation with comprehensive validation and error handling.

Enhanced Functionality:

  • Multi-Input Comparison: Support for comparing multiple numeric values simultaneously
  • Type Validation: Comprehensive checking for numeric types and valid ranges
  • Error Handling: Graceful handling of edge cases including NaN and infinity
  • Performance Optimization: High-speed processing for frequent operations in betting logic

Use Cases in Slot Engine:

  • Bet Clamping: Ensuring bet amounts don't exceed available capital
  • Range Validation: Limiting input values to acceptable ranges
  • Financial Controls: Preventing overdraft conditions in simulation scenarios

Spin, Wins, and Payouts​

  • Weighted Reels (nodes/slot-games/weighted-reels) — Generates symbol grid and stop positions using Reel Strips and Symbol Weights.
  • Check Wins (nodes/slot-games/check-wins) — Detects payline wins; outputs Winning Lines.
  • Calculate Winnings (nodes/slot-games/calculate-winnings) — Computes Spin Winnings and Winning Lines Details from payline results.
  • Reel Ways Check Wins (nodes/slot-games/reel-ways-check-wins) — Detects wins by consecutive symbols across reels.
  • Reel Ways Calculate Winnings (nodes/slot-games/reel-ways-calculate-winnings) — Sums payouts by number of winning ways.

Free Spins​

  • Init Free Spins (nodes/slot-games/init-free-spins) — Initializes free spins configuration.
  • Calculate Free Spins States (nodes/slot-games/calculate-free-spins-states) — Manages remaining spins, retriggers, and state flags.

Aggregation, Results, Export​

  • Spin Calculate (nodes/slot-games/spin-calculate) — Monolithic calculator (for scenarios requiring one-shot spin processing).
  • Spin Result (nodes/slot-games/spin-result) — Formats final results for UI.
  • Slot Simulation (nodes/slot-games/slot-simulation) — Batch spin runner used conceptually by the simulation loop.
  • stateManager / arrayStateManager — Aggregate KPIs and timeseries arrays for charts (used on the Start Page graph).
  • Export to JSON file — Writes collected arrays to a downloadable JSON file.

Data flow (paylines vs reel-ways)​

  • Paylines: Weighted Reels → Check Wins → Calculate Winnings
  • Reel-ways: Weighted Reels → Reel Ways Check Wins → Reel Ways Calculate Winnings

Free-spins logic updates state between spins and modifies reel behavior (blocked reels, symbol counts) when enabled.