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

Ports tg's cavegen, bitfields, area_flags, improved random mineral rocks #4800

Merged
merged 11 commits into from
Aug 7, 2021

Conversation

KubeRoot
Copy link
Member

About The Pull Request

Ports the following PRs:

Ports over some code improvements from tgstation, and the beautiful cave generation - see pictures below. Currently caves are generated by creating random starting points in the rock, and extending them out in straight lines, sometimes changing directions. The result tends to look very odd and unnatural.

NOTE: Currently this PR changes lavaland generation and removes the previous tunnel generation implementation.

I know the PRs ported are somewhat unrelated and seemingly random, but they all came in as "dependencies" for the cavegen. I hope in vain I don't have to atomize this

Sample pictures:

image
image

Why It's Good For The Game

More natural-feeling caves on lavaland, a base for future procedural cave generation, as well as code improvements to make working with it nicer.

Changelog

🆑
refactor: Bitfields now use tg's macro, separated more cleanly.
refactor: area_flags from tgcl
tweak: Random mineral turfs no longer cause large amounts of turf changes on initialization.
del: Old lavaland cave generation based on straight lines
add: Beautiful new lavaland cave generation from tg, with organic and complex cave systems
/:cl:

Mothblocks and others added 6 commits July 13, 2021 04:47
-bitfielded a bunch of bools on /area, I left some untouched cus they get called a lot
-Unused vars
-Fixed a var pretending to be a fake bool
-Probably more
As-is, random mineral spawning changes the turf to the subtype with that mineral, which results in a lot of turf changes I guess. Now it just changes the mineralType of the turf. Unless it's gibtonite or a cave spawner, because the alternatives are worse and those aren't all that common anyway.

🆑
tweak: Random mineral turfs no longer cause large amounts of turf changes on initialization.
/🆑
…l (#54915)

This replaces lavaland's old diagonal tunnel gen which was really
horrendously jammed into asteroid floor code (?????) with Cellular
Automata which runs in rust (PR for that here:
tgstation/rust-g#57 ). The new code is a bit
cleaner, but also looks better.

VID: https://streamable.com/a45ke2

Things to do:
- Make an icemoon version
- Fix the roundstart atmos adjacency issues

I asked AnturK if this was an acceptable PR for this month; he said it
was okay as long as I didn't add new areas, which I don't plan to do.
But if anyone thinks this PR breaks the spirit of the month I'll open
it again in december.
ike709
ike709 previously approved these changes Jul 13, 2021
Copy link
Member

@ike709 ike709 left a comment

Choose a reason for hiding this comment

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

Probably fine but also probably needs a testmerge.

Co-authored-by: Urumasi <[email protected]>
@github-actions
Copy link

This pull request has conflicts, please resolve those before we can evaluate the pull request.

@github-actions
Copy link

This pull request has conflicts, please resolve those before we can evaluate the pull request.

@github-actions
Copy link

This pull request has conflicts, please resolve those before we can evaluate the pull request.

@github-actions
Copy link

This pull request has conflicts, please resolve those before we can evaluate the pull request.

@ike709 ike709 merged commit da080e3 into BeeStation:master Aug 7, 2021
Terra1 referenced this pull request in SinguloStation13/SinguloStation-Red Aug 7, 2021
…cks (#4800)

* Refactor bitfields global, improve turret_flags debugging (#53239)

* Refactors area stuff (#52751)

-bitfielded a bunch of bools on /area, I left some untouched cus they get called a lot
-Unused vars
-Fixed a var pretending to be a fake bool
-Probably more

* Random mineral spawns change less turfs. (#49205)

As-is, random mineral spawning changes the turf to the subtype with that mineral, which results in a lot of turf changes I guess. Now it just changes the mineralType of the turf. Unless it's gibtonite or a cave spawner, because the alternatives are worse and those aren't all that common anyway.

🆑
tweak: Random mineral turfs no longer cause large amounts of turf changes on initialization.
/🆑

* Refactor the procedural generation of lavaland and turf/closed/mineral (#54915)

This replaces lavaland's old diagonal tunnel gen which was really
horrendously jammed into asteroid floor code (?????) with Cellular
Automata which runs in rust (PR for that here:
tgstation/rust-g#57 ). The new code is a bit
cleaner, but also looks better.

VID: https://streamable.com/a45ke2

Things to do:
- Make an icemoon version
- Fix the roundstart atmos adjacency issues

I asked AnturK if this was an acceptable PR for this month; he said it
was okay as long as I didn't add new areas, which I don't plan to do.
But if anyone thinks this PR breaks the spirit of the month I'll open
it again in december.

* fix (#55462)

* Fix lavaland map

* Fix bad merge

Co-authored-by: Urumasi <[email protected]>

Co-authored-by: Jared-Fogle <[email protected]>
Co-authored-by: TiviPlus <[email protected]>
Co-authored-by: Buggy123 <[email protected]>
Co-authored-by: Qustinnus <[email protected]>
Co-authored-by: Urumasi <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants