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

Added list of artificial blocks and some fixes for lookup.py #83

Closed
wants to merge 6 commits into from

Conversation

Phobos97
Copy link
Contributor

Ive added a list of artificial blocks, these are blocks that are not occurring naturally. These blocks are only used in minecraft generated structures or human-created structures. Also includes some spelling fixes.

Useful for detecting pre-existing structures when choosing building locations for gdmc. Note that the already present VILLAGE_BLOCKS are all blocks that spawn in these villages and thus also include natural blocks which makes them useless for gdmc purposes.

There may be some artificial blocks that are missed in this list, please add to it if you know anything.

@avdstaaij
Copy link
Owner

Hmm, while this is certainly useful, I'm not sure if adding even more manual categories to lookup.py is a good idea. It may seem like it would be just a plus, but if people start actually using and depending on these categories, we also need to constantly update them for future versions. Like the file docstring in lookup.py says, I am actually considering removing the manual categories altogether. See also #61.

The fixes to the existing categories are of course welcome! Please submit them as a separate PR. I'll leave this PR open for now in case I reconsider.

@avdstaaij
Copy link
Owner

It would also be acceptable to remove any natural blocks from VILLAGE_BLOCKS. This would arguably be a bugfix and therefore be non-breaking, since including natural blocks there is not intentional. After all, if we did intend to include natural blocks, we should technically also include "air", which seems ridiculous.

@Phobos97
Copy link
Contributor Author

It would also be acceptable to remove any natural blocks from VILLAGE_BLOCKS. This would arguably be a bugfix and therefore be non-breaking, since including natural blocks there is not intentional. After all, if we did intend to include natural blocks, we should technically also include "air", which seems ridiculous.

This was also my first instinct, we can obviously remove dirt and sand but after that it becomes very fuzzy. For my purposes I would also want to remove blocks like oak_log, cobblestone and terracotta but these blocks are definitely important for the structures so that would not be desirable to remove them.

@avdstaaij
Copy link
Owner

I hadn't thought of the semi-natural blocks like oak_log. That is indeed a problem. I think that the best approach for you (and other users) would be to filter out the natural blocks manually. You should be able to use the set - operator for that.

@avdstaaij
Copy link
Owner

It's been a while, but I've decided to close this. The manual block categories in lookup.py are inherently incompatible with multiple-version support (#99), so pretty much that entire file will eventually have to go anyway.

@avdstaaij avdstaaij closed this Apr 19, 2024
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.

2 participants