Skip to content

feat: add multi-parameter biome point scoring#674

Merged
github-actions[bot] merged 1 commit into
devfrom
feature/multiparam-biome-points-655
May 2, 2026
Merged

feat: add multi-parameter biome point scoring#674
github-actions[bot] merged 1 commit into
devfrom
feature/multiparam-biome-points-655

Conversation

@MichaelFisher1997
Copy link
Copy Markdown
Collaborator

Summary

  • Extend legacy biome point data with elevation, continentalness, ruggedness, and ridge-mask centers.
  • Add multi-parameter Voronoi scoring while keeping existing selector wrappers compatible.
  • Cover migrated biome points with selector regression tests.

Verification

  • nix develop --command zig fmt modules/world-worldgen/src/biome_registry.zig modules/world-worldgen/src/biome_selector.zig modules/world-worldgen/src/biome_selector_tests.zig modules/world-worldgen/src/biome.zig
  • nix develop --command zig build test

Fixes #655

@github-actions github-actions Bot added the documentation Improvements or additions to documentation label May 2, 2026
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 2, 2026

📋 Summary

This PR implements Fixes #655 by extending the Voronoi biome selection system from 2D (heat/humidity) to 6D (adding elevation, continentalness, ruggedness, and ridge-mask). The BiomePoint struct gains optional elevation, continentalness, ruggedness, and ridge_mask fields with sensible derived defaults. A new selectBiomeVoronoiMultiParam function performs the full 6D distance calculation, while existing entry points remain backward-compatible wrappers. Two new regression tests verify all migrated biome points remain selectable and that continentalness separation works correctly.

The implementation is clean, well-documented, backward-compatible, and adequately tested.

📌 Review Metadata

🔴 Critical Issues (Must Fix - Blocks Merge)

None identified.

⚠️ High Priority Issues (Should Fix)

None identified.

💡 Medium Priority Issues (Nice to Fix)

None identified.

ℹ️ Low Priority Suggestions (Optional)

None identified.

📊 SOLID Principles Score

Principle Score Notes
Single Responsibility 9 BiomePoint gains data fields; selectors stay pure and focused.
Open/Closed 9 Extends Voronoi without modifying existing caller contracts.
Liskov Substitution 10 All existing biome points remain selectable; wrappers preserve behavior.
Interface Segregation 10 Clean separation between 2D wrapper and 6D multi-param API.
Dependency Inversion 10 Pure functions, no new dependencies, reads from existing registry.
Average 9.6

🎯 Final Assessment

Overall Confidence Score: 92%

How to interpret: 81-100%: High confidence, ready to merge or with trivial fixes

Confidence Breakdown:

Merge Readiness:

  • All critical issues resolved
  • SOLID average score >= 6.0
  • Overall confidence >= 60%
  • No security concerns
  • Tests present and passing (if applicable)

Verdict:

MERGE

Clean, backward-compatible extension of Voronoi biome selection with solid regression tests.

Machine Readable Verdict

{
  "reviewed_sha": "a0e54cfbda4d334c184165227e005e995b1efc19",
  "critical_issues": 0,
  "high_priority_issues": 0,
  "medium_priority_issues": 0,
  "overall_confidence_score": 92,
  "recommendation": "MERGE"
}

New%20session%20-%202026-05-02T22%3A23%3A52.906Z
opencode session  |  github run

@github-actions github-actions Bot enabled auto-merge (squash) May 2, 2026 22:28
@github-actions github-actions Bot merged commit 85d4f51 into dev May 2, 2026
9 checks passed
@MichaelFisher1997 MichaelFisher1997 deleted the feature/multiparam-biome-points-655 branch May 2, 2026 22:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Worldgen Phase 2: migrate existing biome points to multi-parameter scoring

1 participant