Compatibility
Minecraft: Java Edition
1.21–1.21.4
1.20.x
Platforms
Supported environments
75% of ad revenue goes to creators
Support creators and Modrinth ad-free with Modrinth+Creators
Details
Licensed GPL-3.0-only
Published 6 months ago
Updated 2 weeks ago
Changelog
Overview
Version 1.3.0 introduces significant improvements to the TerraMath mod, including performance optimizations, new mathematical capabilities, enhanced error handling, and server compatibility.
What's New
New Commands
- Added /terramath [info|formula|settings] command to display information about the world settings, current formula, or configuration settings.
- Added /formula command that outputs the current terrain generation formula in a copyable format for easy sharing.
Mathematical Capabilities
Constants Support: Added support for mathematical constants
- Basic constants: pi (π), e, phi (φ)
- Advanced constants: zeta3 (ζ3), catalan (K), alpha (α), delta (δ), omega (Ω)
- All constants can be referenced by both symbol and name (e.g., π or pi)
New Mathematical Functions
- atan2(x,y) - Two-argument inverse tangent
- root(x,n) - Calculate nth root of x
- gcd(x,y) - Greatest common divisor
- lcm(x,y) - Least common multiple
- modi(x,y) - Modular inverse
- and even more...
Optimized Random Number Generation
- rand() - Generate random number between 0 and 1
- randnormal(mean,stdev) - Generate number from normal distribution
- randrange(min,max) - Generate random number in specified range
Noise Functions
- perlin(x,y,z) - Perlin noise generator
- simplex(x,y,z) - Simplex noise generator
- normal(x,y,z) - Normal noise generator
- blended(x,y,z) - Blended noise (combines multiple types)
- octaved(x,z,octaves,persistence) - Octaved noise for more natural terrain
Technical Improvements
- Formula Compilation: Formulas are now compiled into Java code using Janino rather than represented as node objects, significantly improving performance
- Error Handling: Added detailed syntax error handling with user-friendly notifications
- Dedicated Server Compatibility: Improved support for dedicated servers
- Server configuration file handling
- Fixed loading of noise settings from world data
- Added notification system for corrupted formulas
User Experience
- New config system
- Larger formula input field (up to 1024 characters)
- Added tooltip for long error messages
- Updated config translations for multiple languages
- Added modmenu description translation support
Bug Fixes
- Fixed function shadowing when one name is a prefix of another
- Prevented null exceptions caused by integer division by zero
- Fixed checkbox state persistence
- Improved formula validation and error handling
- Fixed noise settings loading from world data
- Resolved several UI positioning issues
Developer Changes
- Reorganized math package into specialized subpackages (parser, formula, functions)
- Reorganized utility functions into subpackages
- Replaced HashMap with ConcurrentHashMap to prevent concurrency issues
- Added terrain information command for debugging
- Code cleanup and performance improvements throughout
Removed Features
- Removed dependency on Architectury API
- Removed redundant 1.5x multiplier from the base formula
Coming Soon
- More formula examples in the community Discord
- Additional noise types and combinations
- Further performance optimizations for complex formulas
Dependencies
Files
Metadata
Release channel
ReleaseVersion number
1.3.0-1.20.6+fabricLoaders
Game versions
1.20.5–1.21.4Downloads
69Publication date
May 13, 2025 at 12:33 AMPublisher

addavriance
Member