Skip to content

Implement JASS PRNG interpreter natives - #1225

Merged
Frotty merged 1 commit into
masterfrom
jass-prng-interpreter
Aug 14, 2026
Merged

Implement JASS PRNG interpreter natives#1225
Frotty merged 1 commit into
masterfrom
jass-prng-interpreter

Conversation

@Frotty

@Frotty Frotty commented Aug 14, 2026

Copy link
Copy Markdown
Member

What changed

  • Added the Warcraft III JASS PRNG implementation used by SetRandomSeed, GetRandomInt, and GetRandomReal.
  • Replaced the interpreter's nondeterministic Java Random implementation with deterministic JASS-compatible state.
  • Added regression coverage for the reference integer sequence, float bit patterns, equal bounds, and reversed integer bounds.

Validation

  • Standalone Java compilation of JassPrng.java passed.
  • Reference seed 12345 matched the supplied Warcraft integer sequence: 189832, 638801, 925099.
  • Full Gradle compilation remains blocked by pre-existing unresolved conflict markers in SyntacticSugar.java, outside this PR's staged files.

@Frotty
Frotty marked this pull request as ready for review August 14, 2026 08:23
@Frotty
Frotty merged commit 120b96e into master Aug 14, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant