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

Json subway #68496

Draft
wants to merge 7 commits into
base: master
Choose a base branch
from
Draft

Json subway #68496

wants to merge 7 commits into from

Conversation

Procyonae
Copy link
Contributor

@Procyonae Procyonae commented Oct 4, 2023

Summary

Content "Altered subway maps"

Purpose of change

Hardcode bad
Fixes #66220
Fixes #68957
Fixes #69789
Fixes #69821

Describe the solution

  • Subway stations can spawn in any direction
  • Adds ramps that connect the z-2 subway to the z-4 lab_subway
  • Removes sewer_connector and microlab_sub_connector and replaces them with connections
  • Allows city_buildings to use connections
  • Changes maps and terrain to make spriting the rail in a non awful way much more doable

Describe alternatives you've considered

Changing/balancing monster spawns
Making lab stations on z-2 more obscured (looking out the window and seeing a reinforced door guarded by turrets and guards would probably raise eyebrows :^) )
Moving all lab stations to z-4
Making lab_subway use small rails
Changing subway to be 1 rail w/ passing places etc

Testing

Additional context

Requires #67736 for the full scope I want to achieve
#67736 will make the subway spawns more sensical but this is still an upgrade on what we have so I'll just do this first. Basically the connections have some hardcoded stuff only designed for roads so you get silliness like subways pathing to dead ends under the centre of cities which causes them to often not be fully interconnected within an OM.

Still to do:

  • Nests for long diagonal sections (it would help if I remembered what past me meant by this)
  • Make tee cross depend on neighbours (same for ends and straight)
  • Deal with the palette
  • Check new maps are sprite friendly
  • Make vehicle turning code work with altered maps
  • Maintenance entrance to sewers from z-1 subway station
  • Add screenshots of everything

In followup PRs (this was all intended for this PR originally but I want it merged sooner):
Improve mall + hub 01 + microlab_sub_station + central_lab_train_depot + underground_lab_cargo_stationA stations
Station variation + beautification
Vent shaft nest that appears at random
Add non-guarenteed stations for a few maps like the stadium/mines

Possibly in a followup PR:
A region setting controlled vent nest above each subway at regular intervals when there's nothing in the way, placed after all other mapgen

@github-actions github-actions bot added [JSON] Changes (can be) made in JSON Map / Mapgen Overmap, Mapgen, Map extras, Map display [C++] Changes (can be) made in C++. Previously named `Code` Fields / Furniture / Terrain / Traps Objects that are part of the map or its features. labels Oct 4, 2023
data/json/overmap/overmap_special/specials.json Outdated Show resolved Hide resolved
src/overmap.cpp Outdated Show resolved Hide resolved
src/overmap.cpp Outdated Show resolved Hide resolved
src/overmap.cpp Outdated Show resolved Hide resolved
src/overmap.cpp Outdated Show resolved Hide resolved
src/overmap.cpp Outdated Show resolved Hide resolved
src/overmap.cpp Outdated Show resolved Hide resolved
@NetSysFire
Copy link
Member

This is sick. Thanks for working on this!

Copy link
Contributor

github-actions bot commented Nov 3, 2023

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. Please do not bump or comment on this issue unless you are actively working on it. Stale issues, and stale issues that are closed are still considered.

Copy link
Contributor

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. Please do not bump or comment on this issue unless you are actively working on it. Stale issues, and stale issues that are closed are still considered.

@github-actions github-actions bot added the stale Closed for lack of activity, but still valid. label Dec 27, 2023
@github-actions github-actions bot removed the stale Closed for lack of activity, but still valid. label Dec 30, 2023
@github-actions github-actions bot added the <Bugfix> This is a fix for a bug (or closes open issue) label Dec 31, 2023
@github-actions github-actions bot added the astyled astyled PR, label is assigned by github actions label Dec 31, 2023
@Procyonae Procyonae marked this pull request as ready for review December 31, 2023 14:06
@github-actions github-actions bot added json-styled JSON lint passed, label assigned by github actions Code: Tests Measurement, self-control, statistics, balancing. labels Dec 31, 2023
@github-actions github-actions bot added json-styled JSON lint passed, label assigned by github actions and removed json-styled JSON lint passed, label assigned by github actions labels Dec 31, 2023
@github-actions github-actions bot added the Mods: Dinomod Anything to do with the Dinoclysm mod (DinoMod) label Dec 31, 2023
@github-actions github-actions bot added BasicBuildPassed This PR builds correctly, label assigned by github actions and removed astyled astyled PR, label is assigned by github actions labels Jan 1, 2024
@Maleclypse
Copy link
Member

Conflicts and astyle

@Procyonae
Copy link
Contributor Author

Not done I just want to run the tests

@kevingranade
Copy link
Member

This pull request has been mentioned on Cataclysm: Dark Days Ahead. There might be relevant details there:

https://discourse.cataclysmdda.org/t/attempting-to-mod-subway-system/29147/2

@Procyonae Procyonae marked this pull request as draft March 26, 2024 21:18
@github-actions github-actions bot added Vehicles Vehicles, parts, mechanics & interactions Mods: No Hope Relating to the mod No Hope labels Apr 11, 2024
@Night-Pryanik
Copy link
Contributor

Closing as stale. If you wish to continue working on this, ping me to reopen.

@Procyonae Procyonae reopened this Jan 5, 2025
@github-actions github-actions bot removed BasicBuildPassed This PR builds correctly, label assigned by github actions json-styled JSON lint passed, label assigned by github actions labels Jan 5, 2025
Station Rotation

Remove sub_connector s, mess with maps and make stations work

Fix old lab walls

Add generic z-2 to z-4 ramps

Update test_microlab mutable

Remove references to microlab_sub_connector and sewer connectors

Make sub stations use connections

Fix sewer_points

Generic OMTs

Conditional end nests

No more vehicle placement stuff

Minor map tweaks

Add diagonal rail flag
@Procyonae Procyonae force-pushed the JSONSubway branch 2 times, most recently from 2e2f894 to 403d4a3 Compare January 5, 2025 15:22
@github-actions github-actions bot added json-styled JSON lint passed, label assigned by github actions astyled astyled PR, label is assigned by github actions labels Jan 5, 2025
@github-actions github-actions bot added the NPC / Factions NPCs, AI, Speech, Factions, Ownership label Jan 10, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
astyled astyled PR, label is assigned by github actions <Bugfix> This is a fix for a bug (or closes open issue) [C++] Changes (can be) made in C++. Previously named `Code` Code: Tests Measurement, self-control, statistics, balancing. Fields / Furniture / Terrain / Traps Objects that are part of the map or its features. [JSON] Changes (can be) made in JSON json-styled JSON lint passed, label assigned by github actions Map / Mapgen Overmap, Mapgen, Map extras, Map display Mods: Dinomod Anything to do with the Dinoclysm mod (DinoMod) Mods: No Hope Relating to the mod No Hope NPC / Factions NPCs, AI, Speech, Factions, Ownership Vehicles Vehicles, parts, mechanics & interactions
Projects
None yet
5 participants