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

Add Advanced Modifier #144

Merged
merged 21 commits into from
Aug 3, 2024
Merged

Add Advanced Modifier #144

merged 21 commits into from
Aug 3, 2024

Conversation

BenjaTK
Copy link
Owner

@BenjaTK BenjaTK commented Jul 25, 2024

AdvancedModifier(2D/3D) is a modular modifier which will allow for much more complex generation.

It works with an array of conditions, all of which it have to be met to place the tile on the target cell.

For example:
Let's say we want to place vegetation on top of side-scrolling terrain. We'll use an OffsetCondition, which checks for a certain tile in an offset to allow placing.
image

In this case, the first condition is only met if there is a ground tile below.
We also have a chance condition, which is pretty self explanatory.

image

Now we'll make the tile to be placed a RandomTileInfo, which will choose between trees, grass and tall grass.

Here's the result:
image

We can also do stuff like this (the torches):
image

This PR also adds a filter type to only apply modifiers on empty tiles.


To-do

  • OffsetRule3D
    image
  • Documentation
  • Icons for the modifier and rules

Sorry, something went wrong.

@BenjaTK BenjaTK added the ✨ enhancement New feature or request label Jul 25, 2024
@BenjaTK
Copy link
Owner Author

BenjaTK commented Jul 25, 2024

I am also not entirely sure about the wording of "rules"? Any ideas?

@BenjaTK BenjaTK merged commit 2683b07 into main Aug 3, 2024
@BenjaTK BenjaTK deleted the custom_modifier branch August 30, 2024 18:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
✨ enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant