How to contribute to the Boundless.Worlds project

This guide is for folk that have some world builder configs that they they wish to submit to the boundless.worlds repository. If you’re already familiar with git and GitHub, you can skip it


Alrighty! Brace yourself, it takes a bit to get set up initially :slight_smile:

Initial Setup

1] sign up for GitHub (free plan) - note that the username you choose is what everyone will see and refer to you by.

2] Next, browse to the world builder repository, and fork it (click on top right). If it asks where to fork to, choose your username.

3] Grab and install GitKraken. Set it up and walk through the initial setup (and email authentication).

4] Next, you’ll need to let it know about your GitHub account. Click on the gear in the top right, then the Authentication tab on the left, then on GitHub.com. Click on Connect to GitHub, follow the steps in your browser, and then switch back to GitKraken. Finally, click on “Generate SSH key and add to GitHub”

5] Now you can clone (download) the world builder repository. Go to the File menu → Clone Repo. Click on the GitHub.com tab, and you should see boundless.worlds in the list - select it. Make note of where it will clone the repo (feel free to choose a different directory if you like), and then hit Clone!

6] Almost there! Once it’s done cloning, hover over “remote” on the left bar and click the green + button. Click on GitHub, and choose turbulenz/boundless.worlds from the GitHub Repo dropdown. Click Add Remote. Whew!

If all is well, you should see something like this:

You’re now set up to make contributions to the repo; and you shouldn’t have to do any of that again!

Making Contributions

Ok, so, let’s add your floating islands! Open up the directory where you cloned this repository to (in step 5 above). You should see a config directory, docs directory, and a handful of .md files.

Copy your custom node from Boundless’ own configs directory into this newly cloned copy. Place it into the appropriate directory under config. E.g. under biomes if it’s a biome node, noise3d if it’s a 3d noise node, etc.

Let’s say it’s a biome node, so you placed it at config/biomes/FloatingIslands.json. If you switch back to GitKraken, you should see a new entry at the top of the list called “// WIP” - click on it. You should see the file you just copied under “Unstaged Files” on the right:

Click on “Stage all changes”, and the file will move down to the “Stages Files” list, and you can now fill in a commit message. A commit message describes the change that you are making (and everyone contributing can review these). You’ll want a quick one line summary, like “Floating islands biome”. And fill in the description with any details you want to share about your custom node (tips about how to use it, etc). Here’s an example:

Once you’re happy, hit Commit, and you’ll see your new commit added to the list in the center. Either right click on your new commit and choose Push, or click on the push icon: . This will upload your commit to GitHub.

The final step (!) is to create a pull request, which is GitHub’s way of letting you share your commits with everyone else. Right click on the commit, and there should now be an option labeled “Start a pull request to turbulenz from origin/master” - choose that. It’ll let you review and deit the description. Once you’re happy, hit Create Pull Request. You’re done!

Your newly created pull request should show up at the repository - and we’ll be able to review your configs. Once everything’s in order, we’ll be able to accept your changes and merge them into the repository!

15 Likes

Couldnt we just do Download .ZIP?
Or does that mess something up? I’ve never used Github for anything but a backup for my src code for my games

You can download a zip of the repository but this is taking a disconnected copy of everything. Which is fine. But …

What @nevir describes above is the cleanest process for 1. accessing the project, 2. making a change, and then 3. contributing the change back to the project.

If you only download a zip, you’re making step 3 harder.

1 Like

I’m so far lost that I feel like this is a pile of .txts renamed to .jsons
firstly, fo you need the world builder?
second, what is this?
third, is it an editor thing?

[quote=“Meowmere, post:4, topic:4673, full:true”]
firstly, fo you need the world builder?[/quote]

Yeah, the world builder repo contains all the shared biomes, terrain, and other configuration necessary to generate a world for the game. Each json file describes some portion of it (and you need the world builder to view thosw files)

All the json files in this repo ultimately end up in the main game, are used to generate worlds, and are built into the world builder

This post is for folk that have built some things in the world builder that they wish to share, and see if they can be included in the game.

It’s an unfortunately complicated process (the first few times you do it, at least), but it allows for everyone to more easily track and build on top of each other’s work

Not sure what you’re asking?

like a… I’m just gonna say like an external application that you can design worlds in?

Will there ever be a plant/fungus/animal creator where one can submit ideas?

Not likely. Making a creature creator is in itself a massive undertaking.

I keep having trouble trying to connect to a created world in the builder. The game keeps crashing. I figured it was because I made a broken world, so I tried using one of the premade ones (the earthlike one) and it still crashes. Any ideas what I am doing wrong?

edit: I think I just broke my computer :S