
A port of Modern Beta Fabric for Forge 1.12.2!
Enjoy all the toggle-able features of Minecraft 1.12.2 with the faithful re-implementation of the Beta, Alpha, Infdev, and Indev terrain generators. Originally done for a friend's server but now expanded on to match the original Fabric version in feature parity plus additional improvements/fixes. Please don't expect updates beyond bugfixes and minor improvements if I feel like it.
Features
- Terrain generators:
- Beta 1.7.3
- Alpha 1.1.2_01
- Infdev 20100611
- Infdev 20100420
- Infdev 20100415
- Infdev 20100227
- Indev 20100223
- Classic 0.0.23a
- Beta Skylands
- Pocket Edition v0.6.0
- Release (Vanilla) 1.12.2
- The End
- Biome generators:
- Beta 1.7.3
- Pocket Edition v0.6.0 (with Beta biomes)
- Single/Fixed
- Release (Vanilla) 1.12.2 with biome mod support
- Biomes O' Plenty (when Biomes O' Plenty mod is installed)
- Mix and match terrain and biome generators.
- Classic Nether terrain generation.
- Options to substitute Beta biomes with other vanilla or mod biomes for the Beta biome generator.
- In-game world generation customization, based on the vanilla Customized world type.
- Shareable and built-in world generation presets, like with the vanilla Customized world type.
- Toggleable modern structures and decoration features.
- Accurate Beta sky and Beta biome colors when playing in SP. Optional in MP.
- Adjustable cloud height for Modern Beta worlds, y108 by default.
- Modified player spawns that place players on beaches like in classic versions.
- In-game terrain/biome generation previewer before world creation.
- Commands for inspecting and editing generator settings in-game.
- Support for extended height limits when using Depths Update or Cubic Chunks.
Server Usage
The following should be done in the server.properties file:
- Set the 'levelType' field to 'modernbeta' (or 'modernbetacubic' if using Cubic Chunks), without the quotes.
- Set generation options in the 'generator-settings' field. You can create the generator options string using the in-game GUI.
Mod Support
Additional support is provided for these mods:
- Biomes O' Plenty
- Buildcraft Energy
- Cubic Chunks - Supported for height extension.
- Defiled Lands
- Depths Update - Supported for height extension.
- Dynamic Trees
- Future MC
- Millénaire - Download config files here
- Oceanic Expanse
- Thaumcraft
- Yung's Better Mineshafts
These mods are known to cause issues:
- Galacticraft - Sky/Fog visual features will be disabled when this is installed.
- Muon - This mod is incompatible.
- Cave Generator - If you are experiencing tick/entity lag, please disable all biome replacement options to improve performance.
Add-ons
Modern Beta supports custom add-ons. Here are a few:
- Modern Beta Forge Release Plus - Adds biome generators from late Beta to early Release versions of Minecraft.
- Modern Beta Forge Islands - Adds island generation for several terrain generators.
- Modern Beta Forge Rivers - Adds river generation for several terrain generators.
- Modern Beta Forge Voronoi Climates - Adds biome generation with customizable biome maps and a visual editor.
Other recommended mods:
- Smooth Menus - Increases frame rate for in-game menus, including the customization GUIs.
- Celeritas
Preset Note
For accurate generation for non-Beta chunk sources, please select from the built-in presets first; simply changing the chunk source will not accordingly update the needed noise settings.
Why no Forge version for current versions of Minecraft?
I have no plans on working on current versions of Minecraft at the moment. Please take a look at Moderner Beta for an alternative!
Credits
Thanks to mrburgerUS, SuperCoder7979, Arenovas, Amb0s, PaulEvs, comp500, and the folks behind RetroMCP. The Minecraft Wiki was sourced to provide some descriptions in this mod.
All Versions
+ Add Version| Name | Game version | Platforms | Published | Downloads | Actions |
|---|---|---|---|---|---|
| 11d ago | 1 | ||||
| 1mo ago | 1 | ||||
| 1mo ago | 1 | ||||
| 1mo ago | 1 | ||||
| 2mo ago | 1 | ||||
| 2mo ago | 1 | ||||
| 2mo ago | 1 | ||||
| 2mo ago | 1 | ||||
| 2mo ago | 1 | ||||
| 3mo ago | 1 | ||||
| 4mo ago | 1 | ||||
| 5mo ago | 1 | ||||
| 6mo ago | 1 | ||||
| 7mo ago | 1 | ||||
| 7mo ago | 1 | ||||
| 7mo ago | 1 | ||||
| 8mo ago | 1 | ||||
| 8mo ago | 1 | ||||
| 8mo ago | 1 | ||||
| 9mo ago | 1 | ||||
| 11mo ago | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 |
- Add support for Defiled Lands' biomes in non-Release Modern Beta worlds, which can be toggled and adjusted on a per-biome basis under the Add-on tab.
- Improve biome distribution for modded biome support (e.g. Thaumcraft, Buildcraft Energy, Defiled Lands). Worlds created before this version will maintain the previous distribution.
- Add biome locator function to map preview screen, which will give the approximate distance of a selected biome to 0/0 if nearby (within 2560 blocks). This is to help players check if desired biomes are nearby without giving away explicit coordinates (so you'll still need to explore!).
- Improve error logging.
- Fix springs not being able to generate in non-Stone default blocks.
- Fix more minor GUI bugs.
- Fix crash when opening the world customization GUI.
- Fix crash when trying to create a Modern Beta world while Tropicraft is installed.
- Fix GUI bugs.
- Add partial compatibility with Cubic Chunks. When installed, the normal 'Modern Beta' world type will be replaced by the 'Cubic Beta' world type on the Create New World screen. For performance reasons, world height minimum and maximum limits are limited to -1024 and 1024, respectively.
- Improve vegetation feature density on taller worlds.
- Improve data fixer error logging.
- Fix surface builder not correctly generating bedrock for non-Release surface builders.
- Add
useSpringsgenerator setting, which enables toggling water and lava spring/fall generation. - Improve sand, gravel, and clay disk generator options; these options are now toggleable for vanilla/modded biomes.
- Update world presets for new options.
- Rearrange certain generator settings on the world customization GUI screen.
- Fix some GUI bugs/issues.
- Add support for sayys-ouro's excellent Depths Update mod. When Depths Update is installed, new Modern Beta worlds (Infdev 20100227 and later generators) can be extended below and above vanilla y0 and y255 limits, respectively. Several other generator settings are also unlocked accordingly, including sea level, ore generation heights, cave generation heights, etc. For generation to work properly, ensure that the 'Extend Custom World Types' setting in Depth Update's mod config is disabled.
- Add compatibility for Depths Update-specific content under the Add-ons tab in the world customization GUI. For now, this includes options for deepslate layer generation.
- Add deep caves which generate caves below y0. Generator settings are only enabled when Depths Update is installed.
- Add world floor generator setting to set world generator floor (Infdev 20100227 and later generators). Only enabled when Depths Update is installed.
- Add new "Depths Update Beta" world preset when Depths Update is installed. This takes default Modern Beta generation, lowers the world floor to y-64, and adjusts ores and cave generation accordingly.
- Add small icon to top-left of world customization GUI to indicate whether Depths Update is installed, with tooltip displaying recommended mod version and notes for the best experience.
- Implement multiple improvements for vanilla ravine and cave carvers.
- Update world customization GUI. Page tab buttons are now placed on the left side of the screen. GUI elements are more responsive and better adjust to window resolution changes.
- Update settings tooltips to render with a background texture.
- Add
CARVABLE_BLOCKregistry, used to replace older compatibility code used to additional valid carvable blocks. - Update large swathes of world generation code to support world height extension mod compatibility for Infdev 20100227 and interpolated noise world generators.
- Update Modern Beta registries to use their NBT tags for their internal names.
- Update
Propertyclasses. - Add new
RegistryPropertyto enable adding properties that use Modern Beta registries. - Rename previous
RegistryPropertytoStringFilterProperty. - Update
Propertyconstructors to allow declaring initialdisplay. - Update and rename various
MapGenBetaCavemethods. - Refactor
client.guipackage structure.
- Fix crash when entering Extra Utilities' Deep Dark dimension.
- Revert Nether settings compatibility with Biomes O' Plenty and Nether API due to inconsistent behavior.
- Add
ravineChancegenerator setting, to adjust chance of ravine generation. - Add min/max value info in tooltip descriptions for ranged (numeric slider or field) settings.
- Improve compatibility with Biomes O' Plenty and Nether API. Classic/customizable Nether settings can now be used while those mods are installed.
- Fix ravines not carving into non-Stone default blocks.
- Fix world customization screen getting laggy when using Classic or Indev chunk sources with very large level sizes.
- Fix GUI bugs.
- Add
STRUCTUREregistry and move all vanilla structures here. Structures that are registered here will also be added as a valid target for themodernbetaforge:locateconsole command.
- Add setting tooltips to world customization screen. Most generator settings will now display a brief description when hovered over for a moment.
- Add additional compatibility for Oceanic Expanse. The following features are toggleable in the Add-on tab of the world customization screen (features must also be enabled in OE's config):
- Coquina Outcrops; generates in Beta Beaches.
- Kelp; generates in Beta Oceans.
- Palm Trees; generates in Beta Beaches.
- Prismarine Pots; generates in Beta Oceans.
- Seagrass Patches; generates in Beta Oceans and Beta Swamplands.
- Sea Oats Patches; generates in Beta Beaches.
- Shell Patches; generates in Beta Beaches.
- Shipwrecks; generates in all Beta oceans.
- Frozen Oceans; generates in Beta Frozen Oceans.
- Warm Oceans; generates in Beta Oceans.
- Add optional dark oak tree generation to Beta Seasonal Forests.
- Adjust modern tree distribution (swamp, acacia, jungle) in Beta biomes.
- Add
FEATUREandFORGE_FEATUREregistries. World generator features can be registered here instead of the global Forge registries to enable per-world customization of said features. - Update GUI predicates for all Beta base/ocean/beach biome settings.
- Add additional compatibility with Future MC. Use that mod's configuration to adjust generation behavior.
- Add lily of the valley flowers to Beta Forests.
- Add cornflowers to Beta Plains.
- Add sweet berry bushes to Beta Taigas.
- Add bamboo to Beta Rainforests.
- Add bee nest generation for regular and fancy oak trees in Modern Beta biomes.
- Replace vanilla tab buttons in world customization screen with new custom tab buttons.
- Fix GUI bugs.
- Update change list screen. Settings that are disabled in the customization screen (and thus not relevant) will be greyed out, and a button to sort by enabled entries has been added.
- Add debug config option to toggle displaying generation info in the map preview screen.
- Adjust default cloud height for worlds with atypical world heights.
- Fix map preview structure and surface builder rendering bugs.
#### Technical Changes
- Update generator JSON string format. Settings are now ordered to reflect their order in the customization screen.
- Add default method
replacesDefaultBlocktoSurfaceBuilder, to indicate whether the surface builder can replace thedefaultBlock. This is mostly to indicate to the map previewer that the vanilla surface builder cannot replace non-Stone blocks.
- Add new Biomes O' Plenty biome source, active when BoP is installed. This biome source is a port of the biome generator from the BoP world type and should be used with the Release/vanilla chunk source. Expect biome distribution to be the same but terrain generation to be somewhat different. BoP world type options related to land mass, biome size, temperature variation, and rainfall variation are available under the Add-on tab.
- Add Biomes O' Plenty world preset to quickly use the new Biomes O' Plenty biome source with default Release chunk source settings.
- Add
riverDepthWeightgenerator setting which adds additional depth to river biomes when using the Release chunk source. WhenriverDepthWeightis greater than 1.0, the likelihood of rivers generating with constrictions will be reduced. - Add additional noise scale settings for biome replacement options for BoP, BuildCraft Energy, and Thaumcraft compatibility add-ons.
- Optimize Release chunk source.
- Improve world customization GUI.
- Improve map previewer; map preview will show more accurate biome colors for certain vanilla and BoP biomes.
- Update lang file.
- Fix server crash.
- Add new generator setting
useTerrainCoordFixfor Beta/PE terrain generator, which fixes chunk border artifacts due to incorrect sampling of x/z block coordinates during terrain generation. For example, this artifacting is most visible around 280/40 on the "Glacier" seed when using default Beta generator settings. - Fix critical bug where Infdev 611 worlds would not generate as intended. This issue has been present since 1.9.0.0; if you have made an Infdev 611 world since then, please use an NBT editor or the in-game
modernbetaforge:setgeneratorsettingcommand to set the chunk source tomodernbetaforge:alphato ensure contiguous terrain generation. - Fix scale noise settings for End terrain generator being modifiable in world customization screen despite having no effect on generation.
- Add a new button to map preview screen that saves generated previews to the screenshot folder.
- Add a new button to map preview screen that sets the world seed field when one has not been set in the world creation screen.
- Update map preview screen to cancel preview generation more gracefully.
- Update world customization screen to handle setting randomization more gracefully.
- Update destination directory and filename for the
drawmapcommand.
- Update map preview rendering.
- Improve cave carver compatibility with biome mods.
- Fix old sugar cane color config setting not properly applying.
- Adjust changelist screen behavior.
- Fix GUI bugs.
- Add full localization for change items in changelist screen.
- Add copy and paste buttons for world preset textboxes.
- Add additional options to adjust Coral Reef and Kelp Forest biome chance under the BoP compatibility settings.
- Add improved compatibility with Yung's Better Mineshafts. Optimize world generation when mineshafts are generated, while maintaining parity.
- Fix crash when
defaultPresetconfig option is populated with an invalid settings JSON string. - Fix more GUI bugs.
- Update localizations.
- Add changelist screen to world customization screen. Upon saving changes, another screen will open to display the list of generator setting changes compared to the previous settings. You can then confirm the changes, discard the changes, or cancel to return to the world customization screen.
- Add config option to toggle the changelist screen if you prefer the previous behavior.
- Add config option to toggle the world customization screen tab navigation buttons.
- Add support for remapping world customization navigation keybinds (default: A/D).
- Remove non-Beta biome check for Beta/PE color sampling.
- Update various GUI elements.
- Fix various GUI typos and issues.
#### Technical Changes
- Add new
ScreenPropertycustom property. This is a client-side property that can be registered to theModernBetaClientRegistries.GUI_PROPERTYregistry to allow creation of custom screens for the Modern Beta world customization screen. - Add localization for
ListPropertyproperties. - Update
NoiseSurfaceBuilder; beach block selector methods are now public and have been renamed. - Update constructor for chunk sources to now also accept the chunk generator's
BiomeSourceto avoid needless duplication since some chunk sources require the biome source for terrain generation. - Update how certain custom property elements are localized.
- Rename
ClimateMapandClimateTypetoBetaClimateMapandBetaClimateType, respectively.
- Implement an alternate optimized ore generator that reduces memory churn. This likely will not be noticeable when using default ore settings, but should help reduce lag spikes with settings that generate very large amounts of ore.
- Add three options for ore generation: Default (optimized), Classic (optimized), and Vanilla; Classic approximates the ore generation for Beta and earlier versions, and Vanilla uses the vanilla ore generator.
- Update all Classic world presets with more accurate ore generation settings.
- Fix/improve more GUI things.
- Add generator setting
useAmplifiedforReleaseChunkSourceto enable Amplified world type generation. - Optimize world preview generation when using a set world seed.
- Fix a critical world generation bug.
_1.12.2-1.8.3.0 patchnotes below:_
- Add toggle to display vanilla structure placement in the world generation preview screen. Note that positions may be inaccurate if there are installed mods that change how vanilla structures generate.
- Enable cancelling map preview generation during preview generation in the world generation preview screen.
- Optimize mod size.
- Optimize world customization presets screen.
- Various world customization GUI improvements.
#### Technical Changes
- Add new method
haltGenerationtoFiniteChunkSource, which should be checked by implementations in between phase changes to see if the generation method should be exited early. This is used by the world generation preview screen to allow early cancellation.
- Add toggle to display vanilla structure placement in the world generation preview screen. Note that positions may be inaccurate if there are installed mods that change how vanilla structures generate.
- Enable cancelling map preview generation during preview generation in the world generation preview screen.
- Optimize mod size.
- Optimize world customization presets screen.
- Various world customization GUI improvements.
#### Technical Changes
- Add new method
haltGenerationtoFiniteChunkSource, which should be checked by implementations in between phase changes to see if the generation method should be exited early. This is used by the world generation preview screen to allow early cancellation.
- Fix yet another map preview bug.
- Add new
ModernBetaModRegistryregistry to complete data fixer functionality. Addons that leverage the data fixer API should also register the mod ID and integer data version to this registry for registered data fixes to work. - Update
BiomeResolverCusominterface; add newgetCustomBiomemethod that also accepts the biome source as an argument and deprecate the previousgetCustomBiomemethod.
- Update
noneworld spawner torelease, to better reflect that it is the vanilla player spawn algorithm. A datafixer has been added to update worlds that use this particular setting. - Fix several broken datafixers that broke worlds updating from old versions (1.4.0.0 and earlier) of this mod.
- Fix biome sampling bug in map previewer.
#### Technical
- Rewrite most of the datafixer code. Datafixers now only return the value to update a specific generator setting tag instead of operating on the entire
ModernBetaGeneratorSettingsfactory object. - Add new
MOD_DATA_FIXregistry to allow implementing datafixes using the new datafixer implementation. - Deprecate original
DATA_FIXregistry. - Add debug noise chunk source generator with debug preset. This can be toggled from the Debug section in the configuration.
- Update custom world presets to gracefully handle missing descriptions and/or icons.
- Add command
modernbetaforge:getgeneratorsettingwhich prints a specific generator setting value. Requires maximum permission value (4) to use. - Add command
modernbetaforge:setgeneratorsettingwhich updates a specific generator setting with a new value. Requires maximum permission value (4) to use, followed by a world restart. - Add generator setting
useClimateFeatureswhich toggles using the biome source's climate sampler when applicable or a biome's default temperature value when generating snow or ice. - Add additional input validations for generator settings.
- Add small delay in between A/D navigation key presses in the world customization screen.
#### Technical Changes
Modern Beta Forge and related mod repositories will be moving from Github to Codeberg in the near future. All outgoing links on Modrinth will be updated accordingly.
- Add additional Javadoc documentation for all Modern Beta registries.
- Rename
NoiseScaleDepthscale/depth container class toNoiseHeightand move into its own file. - Add
NoiseHeightSamplerinterface for adding new samplers for terrain base height and height variation forNoiseChunkSource. - Add
NOISE_HEIGHT_SAMPLERregistry for addingNoiseHeightSamplerimplementations for modifying base terrain variation. - Add option to specify an integer priority when registering to a Modern Beta Registry. Entries registered at a lower priority will be used earlier in the generation process.
- Add option to specify the scale/number of decimal places when registering a custom
FloatProperty. - Add option to hide custom properties from being displayed on the world customization GUI.
- Add
getNoiseHeightSamplermethod toNoiseChunkSourcefor getting a registered and instantiatedNoiseHeightSampler. - Add
getNoiseHeightmethod toNoiseChunkSourcefor sampling theNoiseHeightat a particular block coordinate. - Add getter methods to
NoiseChunkSourcefor getting the noise dimensions. - Change
BiomeInjectionContextto also store the base/original sampled biome. - Change several utility debug and getter methods in
NoiseChunkSourceto final methods. - Rename several methods in
PerlinOctaveNoise. - Remove deprecated method
buildBiomeInjectionContextinChunkSource.
- Add generator setting
snowLineOffset, which can be found under the Climate category. This controls the general altitude at which blocks generate snowy/frozen, depending on climate, for Beta and PE biome sources. Note that this only affects initial terrain generation and does not change the precipitation type for a particular location which remains dependent on the current biome, consistent with the behavior of weather in Minecraft Beta 1.7.3. - Add additional input validation for various generator settings.