-
Notifications
You must be signed in to change notification settings - Fork 35
Custom level generation #750
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
Open
thicco-catto
wants to merge
36
commits into
TeamREPENTOGON:main
Choose a base branch
from
thicco-catto:level-gen
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+839
−1
Open
Changes from 32 commits
Commits
Show all changes
36 commits
Select commit
Hold shift + click to select a range
8b17521
Reset room list function
thicco-catto 7c047e1
Added bool parameter
thicco-catto ea8320c
Added callback enum
thicco-catto d2bf067
Merge branch 'TeamREPENTOGON:main' into level-gen
thicco-catto 2490b78
Added RNG parameter to callback
thicco-catto 8f8c157
Added dungeon generator controller
thicco-catto f9fb019
Removed test functions and fixed final boss not set
thicco-catto f65b5f5
Callback triggers for more dungeon types
thicco-catto d313242
Filter by generation type
thicco-catto e2f77b4
Moved custom callback to appropiate file
thicco-catto 32e508d
Fixed return values for lua functions
thicco-catto 1feba7f
Renamed lua functions
thicco-catto bfab985
PlaceRoom returns the room
thicco-catto 845072c
Generator returns bool
thicco-catto c2cc975
Dungeon generator has own RNG
thicco-catto 47dbdd9
Refactored floor generation
thicco-catto 7d5ce08
Moved implementations to source file
thicco-catto 57a718d
Added room shape check and swapped col/row
thicco-catto 05c839a
Added door validation
thicco-catto 9a7e37e
Added shape field to DungeonGeneratorRoom
thicco-catto 40605fd
Added PlaceDefaultStartingRoom
thicco-catto 797a52d
Fixed constructors
thicco-catto 8ad7897
Added dungeon type param to callback
thicco-catto 2e6f9f4
Changed some pointers to references
thicco-catto e1b7d98
Changed resetLilPortalRoom param
thicco-catto bd2415e
Removed unnecesary include
thicco-catto 52c50b5
Use bitset to check room placement
thicco-catto c308a3e
Created utils file and generation type enum
thicco-catto 0bbb155
Enum is passed as number to callback
thicco-catto d89ff98
DungeonGenerator now holds index for final boss
thicco-catto fc5098b
Removed some debug logs
thicco-catto 6edd184
Refactored DungeonGenerator to use LevelGenerator
thicco-catto 2c37191
Removed ununsed fields
thicco-catto 86ff2bb
Added BlockIndex function
thicco-catto 062d157
Changed optional return
thicco-catto 4732779
Added custom callback logic
thicco-catto File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We might want to change this, as right now I expect that if someone returns an invalid level layout, we don't give a chance for other callbacks to run and simply return to default generation.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The logic here seems like it might be fine, but yeah this callback will likely require custom handling in main_ex.lua. We could potentially detect that a mod left things in an invalid state, possibly print an error to the console, then reset it before we run the next callback.
Not mandatory for an initial push, but is something we should sort out before this gets included in a release.