Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Map Gen Setup Menu #506

Closed
wants to merge 19 commits into from
Closed

Map Gen Setup Menu #506

wants to merge 19 commits into from

Conversation

MatthewPratt
Copy link
Contributor

Working framework for "Map Gen Setup" menu item (5 files)

(I am learning the system feedback @ that forum link appreciated)

public static final int SIZE_X = 16;
public static final int SIZE_Y = 256;
public static final int SIZE_Z = 16;
//MPratt "Map Gen Setup" start
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi. There are some problems with this.

  • The constants below (INNER_CHUNK_POS_FILTER_X, ...) need to be dynamically updated, too. Otherwise chunk positions will not be calculated correctly.
  • Further, you should prevent these variables to be set to bogus values like negative values or values less than 8 for X and Z (because some algorithms rely on the assumption, that chunks are at least 8xYx8 in size).
  • What about saving the changed values? If you don't store them at least in the config file, you will lose them when you load a saved world. This will probably damage your world.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Public static non-final variables are extraordinarily sketchy in general. There is nothing stopping a module from changing these mid-game and breaking everything.

I would question making these variable in the first place. It is very difficult to make sensible optimizations and design chunk feature generators when you can't even make basic assumptions on chunk size. Limits are strengths, in the right place.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I absolutely agree!

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes we have to make sure that mods don't break things. Great comments everywhere. Will look at things after I get back from work tonight.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Redoing everything from scratch. Chunk sizes should not be modified via menus, immortius is dead right on that one. The whole idea of what I am doing is to provide better and more robust world design. To do so I am working on features that allow me to have some control over the world via something other then straight coding. Not that I am not into straight coding but I envision much more complex world design and am needing in-game tools. I have pretty much compartmentalized my code at this point.

@Cervator
Copy link
Member

@MatthewPratt - whenever you're happy with this, be sure to say so or just close this and reopen a new PR for merging consideration :-)

Might also want to git rebase your commits to clean them up a bit, helps keep things tidy :D

@MatthewPratt
Copy link
Contributor Author

Cervator your comments are helpful to guide us new people. I will likely close this tonight and new PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants