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

Adds microlabs #33727

Merged
merged 7 commits into from
Sep 4, 2019
Merged

Adds microlabs #33727

merged 7 commits into from
Sep 4, 2019

Conversation

John-Candlebury
Copy link
Member

@John-Candlebury John-Candlebury commented Sep 1, 2019

Summary

SUMMARY: Content "Adds microlabs, small 4x4 labs that open only to the subway network."

Purpose of change

Adds some rewards for subway spelunking, and more midgame looting areas. I also want these for the Hub 01 questline.

Describe the solution

Much like the greater labs, microlabs are randomly genned based on a system of tiles. Unlike labs, the tiles match through their corner rooms, allowing for a higher perceived randomness and more labyrinthine layouts. They are also implemented fully through json, so adding more content is just a matter of adding new mapgen entries and overmap specials.

Because a picture is worth a thousand words, here's a picture of the average microlab:

image

You might notice that it doesn't have a finale room, instead it opts for both a higher loot amount overall, and may have occasional special rooms that have robotics/mutagen/bionic rewards. The one in the picture has a special cloning room (which doesn't do anything but that's beside the point).

It also has for a much higher density of zombie spawns, probable because people got more easily trapped down there. So get some shotguns or something.

Additional context

Thanks to ralreegorganon for coding the subway connections, I couldn't have figured them out by myself.

Microlabs are small 4x4 labs that open only to the subway network. They dont have finales
@ZhilkinSerg ZhilkinSerg added [JSON] Changes (can be) made in JSON Map / Mapgen Overmap, Mapgen, Map extras, Map display labels Sep 1, 2019
@ZhilkinSerg ZhilkinSerg self-assigned this Sep 1, 2019
data/json/mapgen/microlab/microlab_special_tiles.json Outdated Show resolved Hide resolved
data/json/mapgen/microlab/microlab_generic.json Outdated Show resolved Hide resolved
@tenmillimaster
Copy link
Member

Wow, this definitely looks like the work of a variously at times underfunded and overfunded agency.
Nice!

@Night-Pryanik
Copy link
Contributor

I don't know if these labs could be called "micro". "Mini" at best.

Aside from naming issues, I'd like to mention serious current problem with all our labs, micro variant included. Placing all versions of labs (mutations, robotics, aliens, bionics, weaponry etc) in one building is BAD. I think there are no all-in-one labs IRL. I think we need to strictly differentiate all kinds of labs from each other. This will encourage players to explore other labs because they won't find all types of high-level loot in one single lab anymore.

@Zireael07
Copy link
Contributor

@Night-Pryanik: You make a very good point, but I believe it's outside this PR's scope.

@Night-Pryanik
Copy link
Contributor

Well, this PR in its current state is adding another case of all-in-one labs, and I believe we shouldn't worsen the overall situation.

@Zireael07
Copy link
Contributor

I don't think it worsens the overall situation, given that it gives people a real reason to go wandering around the sewers, which were a bit underwhelming.

@Night-Pryanik
Copy link
Contributor

It worsens the current "labs" situation, not the "sewers" situation.

@John-Candlebury
Copy link
Member Author

The lab added in here is mostly the mundane chemical/biological variant, it barely has high-level, "sci-fi" loot outside the few rooms contained in microlab_special.json. Unlike normal labs they also have no experimental weapons/teleporters/alien tech rooms. So looting one or two of these wont come close to giving you all the neat tools a late game character needs.

As for the special rooms I think that both the mutagen and cloning rooms both fit in the "biological lab" theme these have going on. The rare robotics room can properly justified as a basic maintenance location, since the labs can have robotic security and the rooms only spawn basic metallurgic tools and electronic components.

This only leaves the autodoc room as an outlier. I can remove it rather easily, but Im not sure its warranted either, zombie scientists have implants, and theres no strong reason to why these couldnt be installed in site.


Dont get me wrong I would love more thematic labs, but as of now we dont have good mapgen tools to do this, at least not without a lot of duplicating mapgen deffinitions, since theres no good way to define item spawns without having to overwrite pretty much everything

If someone wants to implement a method that allows setting the item_spawns either on overmap_terrain definition or through ter_furn_transforms, know that I'm willing to churn out a ton of lab content to make specialized labs a real thing.

@ymber
Copy link
Member

ymber commented Sep 2, 2019

Generally these feel pretty good. Loot spawns are about right and they're an interesting place to explore. The ratio of researchers to security is unduly skewed towards security and I found a mapgen bug while I was exploring it where a table was spawning on the same tile as a wall.
2019-09-02_0934_01

@John-Candlebury
Copy link
Member Author

Revised the spawn list, should have a better chance to spawn the lab flavored foes right now.

@ZhilkinSerg ZhilkinSerg merged commit 1b34f54 into CleverRaven:master Sep 4, 2019
@ZhilkinSerg ZhilkinSerg added the [C++] Changes (can be) made in C++. Previously named `Code` label Sep 4, 2019
@ZhilkinSerg ZhilkinSerg removed their assignment Sep 4, 2019
misterprimus pushed a commit to misterprimus/Cataclysm-DDA that referenced this pull request Sep 21, 2019
* Adds microlabs

Microlabs are small 4x4 labs that open only to the subway network. They dont have finales

* Allow opening depot doors

* Update data/json/mapgen/microlab/microlab_generic.json

Co-Authored-By: Matthew Taylor <[email protected]>

* Update data/json/mapgen/microlab/microlab_special_tiles.json

Co-Authored-By: Matthew Taylor <[email protected]>

* Adds surface connected microlab

* Slight mapgen adjustments, new monster spawn lists.
@John-Candlebury John-Candlebury deleted the microlab branch June 28, 2020 15:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
[C++] Changes (can be) made in C++. Previously named `Code` [JSON] Changes (can be) made in JSON Map / Mapgen Overmap, Mapgen, Map extras, Map display
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants