FastAsyncWorldEdit icon indicating copy to clipboard operation
FastAsyncWorldEdit copied to clipboard

feat: allow placement of minecraft gen features and structures

Open dordsor21 opened this issue 2 years ago • 31 comments

  • closes #2343

dordsor21 avatar Jul 17 '23 21:07 dordsor21

This only works if the EditSession is backed by an actual World, I think this should be outlined in the Javadocs.

SirYwell avatar Jul 27 '23 19:07 SirYwell

noticed upstream has this functionality, will change to match them and cherry-pick where appropriate

dordsor21 avatar Jul 28 '23 21:07 dordsor21

Please take a moment and address the merge conflicts of your pull request. Thanks!

github-actions[bot] avatar Nov 21 '23 17:11 github-actions[bot]

As there's a mix of structures and features here, what exactly do we add what WE doesn't add? StructureType is in the WE source here, but the commands and the tools for it are in the FAWE source, that's a bit confusing to me right now.

The various Tool/Factory classes are in FAWE because they are classes added by FAWE. The actual command methods are in com.sk89q because all commands are there, and are effectively just class edits, not new classes.

This implementation was in line with how we handle tree generation, and if we can avoid using an InvocationHandler when it's not needed I think we should (the same for any reflection really)

dordsor21 avatar Nov 23 '23 09:11 dordsor21

Please rebase for 1.20.3/4

NotMyFault avatar Dec 08 '23 06:12 NotMyFault

Please take a moment and address the merge conflicts of your pull request. Thanks!

github-actions[bot] avatar Mar 17 '24 07:03 github-actions[bot]

For some reason there is a folder with a . instead of nested folders for the 1.20.4 adapter dot

SirYwell avatar Mar 28 '24 12:03 SirYwell

From a quick test, it looks like e.g. //structure bastion_remnant throws an exception. I don't know if we can fix it, but I think it should at least be handled in a way that doesn't spam the console making it look like FAWE is doing something wrong.

Similarly, features and structures often cannot be placed with messages "Failed to generated structure. Is it a valid spot for it?" and "This feature cannot go here. Ensure the area meets the requirements." In fact, I wasn't able to spawn any feature for now. Can we somehow lift those restrictions? Otherwise, this is very limiting in its use.

SirYwell avatar Mar 28 '24 13:03 SirYwell

From a quick test, it looks like e.g. //structure bastion_remnant throws an exception. I don't know if we can fix it, but I think it should at least be handled in a way that doesn't spam the console making it look like FAWE is doing something wrong.

Yes probably worth doing that

Similarly, features and structures often cannot be placed with messages "Failed to generated structure. Is it a valid spot for it?" and "This feature cannot go here. Ensure the area meets the requirements." In fact, I wasn't able to spawn any feature for now. Can we somehow lift those restrictions? Otherwise, this is very limiting in its use.

I tried, but no. Minecraft generation code is complete spaghetti and it would require an incredible amount of reflection and likely need us to perform changes to the byte code. The command in upstream WE has the same limitations

dordsor21 avatar Mar 28 '24 13:03 dordsor21

Please take a moment and address the merge conflicts of your pull request. Thanks!

github-actions[bot] avatar May 19 '24 11:05 github-actions[bot]

Please take a moment and address the merge conflicts of your pull request. Thanks!

github-actions[bot] avatar May 31 '24 16:05 github-actions[bot]

Please take a moment and address the merge conflicts of your pull request. Thanks!

github-actions[bot] avatar Jun 07 '24 18:06 github-actions[bot]

Please take a moment and address the merge conflicts of your pull request. Thanks!

github-actions[bot] avatar Jun 08 '24 08:06 github-actions[bot]

Please take a moment and address the merge conflicts of your pull request. Thanks!

github-actions[bot] avatar Jun 12 '24 13:06 github-actions[bot]

Please take a moment and address the merge conflicts of your pull request. Thanks!

github-actions[bot] avatar Jun 26 '24 19:06 github-actions[bot]

Please take a moment and address the merge conflicts of your pull request. Thanks!

github-actions[bot] avatar Jun 27 '24 13:06 github-actions[bot]

Please take a moment and address the merge conflicts of your pull request. Thanks!

github-actions[bot] avatar Jun 27 '24 13:06 github-actions[bot]

Please take a moment and address the merge conflicts of your pull request. Thanks!

github-actions[bot] avatar Jul 02 '24 18:07 github-actions[bot]

Please take a moment and address the merge conflicts of your pull request. Thanks!

github-actions[bot] avatar Jul 13 '24 12:07 github-actions[bot]