Loading...
Beta Modpages Unclaimed

GenLoader

Custom WorldGen Loader for end users and mods

0 Likes
5356 Downloads
Created by VapourDrive

Description

Header Image

Overview

GenLoader is a mod that is designed with two goal in mind: to allow the end user to customize and add generation to the game that they want, and for mods to easily make their ore generation completely customizable. I made this when there was not going to be any CoFH mods for 1.8.9 because I thought it would be nice for pack makers to have. Now that it is announced that they are working on 1.8.9 versions of their mods I have decided to still release it because it contains a few features that I am quite happy with and I've worked hard to create a friendly to use API for it.

Features

Gen Loader has a few key features that I'll expand on including

  • An API that can handle other mods' ore generation, making it completely customizable with very little effort on their part.
  • Vanilla generation disabling - and the ability to overwrite vanilla's generation through this mod.
  • Completely open opportunities for the end user to create their own custom generations.
  • A handful of helpful commands and data dumps.

API

I encourage other modders to use this mod as a soft dependency at minimum and a hard dependency if they want to. You can register "disabled-by-default" generation schemes that are useful for if the user wants to customize their gen, they will have a printed generation scheme that they can chose to enable and tweak. You can also just register generations to be enabled by default and they will be handled completely by this mod.

You can set specific categories that will get written out as separate json files for a well organized file structure that is easy to navigate.

Through the API, blocks can be registered to be added to predefined whitelists for clear and countblock commands.

Vanilla Generation

If you want to have more control over vanilla generation you can chose to disable it in the GenLoader's configs and then enable the generation schemes that I have set up that by default exactly mirror what vanilla generation setting are, but can then be tweaked to your specifications.

Data Dumps

Currently when you start up a game instance in post Init, they are rewritten everytime for new blocks. All of the registered blocks will print out all of their possible block states to json files in a folder in the GenLoader config directory. They are organized my mod ID in order to make finding blocks easy.

DataDump

An example of the json object for a block would be

SampleBlock

Check the dumped files in *configFolder*/genloader/dumps/blocks for more examples.

Commands

GenLoader's commands all start off with /genloader and there are currently 2, everything is tab-complete compatible, it's very convenient to use.

countblocks

countblocks is used as follows:

/genloader countblock xchunkmin xchunkmax zchunkmin zchunkmax modid:blockname property property value

or

/genloader countblock xchunkmin xchunkmax zchunkmin zchunkmax premadelistname (eg valuable)

CountBlocks use

You can use tab-complete after /genloader and then again after countblocks. By default it chooses a 5x5 chunk area around the player. "valuable" is a predefined list that mods can add their blocks to via the API that by default contains vanilla ores. "valuable" could be replaced by minecraft:coal_ore to count the number of coal. Specific states can be found using a repeating "property value" pattern after the mod and block name.

CountBlock Demo

This shows an example of specifying a property for stone named variant and the property value of diorite for diorite stone. Check the data dump files for block states.

clearblocks

clearblocks does something similar to countblocks except it removes the specified block from the world, it is called in the same manner.

Example clearblock

Running the command shown has this effect on the world, only works in creative mode. "Junk" leaves behind all registered ores in the API, if you want to be more specific, start with removing stone, then dirt and grass etc.

Generation

Things that you can specify in generations:

  • Dimensions - list of integer ids
  • BiomeType - list of forge biomedictionary types
  • BiomeID - more specific list of specific individual biomes
  • Minumum Y value
  • Maximum Y Value
  • Chance - the percent chance that the chunk will run the generation (good for really rare ores)
  • Frequency - the number of times the generation will be run in a chunk
  • Generation type - growing list of generations that I have
    • Standard ore gen (most vanilla ores)
    • Weighted ore gen (lapis)
  • Generation Priority - when in the order of generations this one will occur
  • Weighted Blocklist - all the blocks that can make up the generation, chosen based on their weight value
  • Blockstate to replace - most often stone, can be dirt etc.

 Example for Emerald

EmeraldExample

More Documentation will come soon!


AD Become Premium to remove Ads!

What means Verified?

  • Compatibility: The mod should be compatible with the latest version of Minecraft and be clearly labeled with its supported versions.
  • Functionality: The mod should work as advertised and not cause any game-breaking bugs or crashes.
  • Security: The mod should not contain any malicious code or attempts to steal personal information.
  • Performance: The mod should not cause a significant decrease in the game's performance, such as by causing lag or reducing frame rates.
  • Originality: The mod should be original and not a copy of someone else's work.
  • Up-to-date: The mod should be regularly updated to fix bugs, improve performance, and maintain compatibility with the latest version of Minecraft.
  • Support: The mod should have an active developer who provides support and troubleshooting assistance to users.
  • License: The mod should be released under a clear and open source license that allows others to use, modify, and redistribute the code.
  • Documentation: The mod should come with clear and detailed documentation on how to install and use it.

AD Become Premium to remove Ads!

How to Install

1

Download Forge & Java

Download Forge from the offical Site or here. If you dont have Java installed then install it now from here. After Downloading Forge you can run the file with Java.

2

Prepare

Lounch Minecraft and select your Forge istallation as Version this will create a Folder called Mods.

3

Add Mods

Type Win+R and type %appdata% and open the .minecraft Folder. There will you find your Folder called Mods. Place all Mods you want to play in this Folder

4

Enjoy

You are now Ready. Re-start your Game and start Playing.

More Mods like this

Mantle

Shared code for Forge mods

AutoRegLib

A library to ease menial tasks in mod development.

CraftTweaker

CraftTweaker allows modpacks and servers to customize the game. With CraftTweaker you can change recipes, script events, add new commands and even change item properties!

CoFH Core

Contains Core Functionality for all Team CoFH mods. Also does some really cool stuff on its own!

Patchouli

Accessible, Data-Driven, Dependency-Free Documentation for Minecraft Modders and Pack Makers

Baubles

An addon module and API for Thaumcraft