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

Modular saltworks #34136

Merged
merged 59 commits into from Nov 4, 2019
Merged

Conversation

Maleclypse
Copy link
Member

@Maleclypse Maleclypse commented Sep 20, 2019

Summary

Summary: Content "Faction Camp Modular Saltworks"

Purpose of change

Creating an additional modular camp expansion. Modeled after Curstwist's PRs in the same topic.

Describe the solution

Creating additional json files similar the livestock and storage campsite PR's.

Describe alternatives you've considered

Continuing to just make single json edits.

Additional context

"WIP" I've managed to get the game to load without load stopping errors but I can't get the expand base mission to complete successfully and create the modular campsite Saltworks. Any suggestions very welcome.
Once I can get one version to create I plan to create other building material versions and work on the recipe mission list.

I'm pretty ready to close this out but I think I'm going to need some help to finish it in a reasonable timeline.

Catching up to current version
Creating Modular basecamp Saltworks with a Brewery. Still needs recipes for follower missions.  Still needs additional building materials versions but trying to get the camp site to build.
@Maleclypse
Copy link
Member Author

Error recipe group
failed to add saltworks

@ZhilkinSerg ZhilkinSerg added [JSON] Changes (can be) made in JSON Crafting / Construction / Recipes Includes: Uncrafting / Disassembling Map / Mapgen Overmap, Mapgen, Map extras, Map display Player Faction Base / Camp All about the player faction base/camp/site labels Sep 21, 2019
Co-Authored-By: ZhilkinSerg <ZhilkinSerg@users.noreply.github.com>
@Maleclypse
Copy link
Member Author

@curstwist I hate to bother you, but if you have a second to look over this at any time and if you see where I'm going wrong I'd appreciate the help. If no time, no worries I'll muddle through :)

@curstwist
Copy link
Contributor

curstwist commented Sep 21, 2019

Looks like you are missing the survey recipe step.

And its mapgen partner. Look at the 1st entries in a _wood recipe &mapgen file. I dont repeat it in other palettes

{
        "type": "recipe",
        "result": "faction_base_workshop_0",
        "description": "Survey land for a workshop area.",
        "category": "CC_BUILDING",
        "subcategory": "CSC_BUILDING_BASES",
        "skill_used": "fabrication",
        "autolearn": false,
        "never_learn": true,
        "construction_blueprint": "faction_base_workshop_0",
        "blueprint_name": "workshop survey",
        "time": "180 m",
        "blueprint_requires": [ { "id": "not_an_upgrade" } ],
        "blueprint_provides": [ { "id": "fbmw_0" } ]
      },

and

{
    "type": "mapgen",
    "method": "json",
    "nested_mapgen_id": "fbmw_0",
    "object": {
      "mapgensize": [ 6, 6 ],
      "rows": [
        "      ",
        "      ",
        "      ",
        "      ",
        "      ",
        "      "
      ],
      "palettes": [ "fbmw_wood_palette" ]
    }
  },
  {
    "type": "mapgen",
    "update_mapgen_id": "faction_base_workshop_0",
    "method": "json",
    "object": { "place_nested": [ { "chunks": [ "fbml_0" ], "x": 15, "y": 3 } ] }
  },

that little mapgen really doesn't do anything to the map, but I got errors if I left it out, the survey wants an update_mapgen_id.

@Maleclypse
Copy link
Member Author

Looks like you are missing the survey recipe step.

And its mapgen partner. Look at the 1st entries in a _wood recipe &mapgen file. I dont repeat it in other palettes

{
        "type": "recipe",
        "result": "faction_base_workshop_0",
        "description": "Survey land for a workshop area.",
        "category": "CC_BUILDING",
        "subcategory": "CSC_BUILDING_BASES",
        "skill_used": "fabrication",
        "autolearn": false,
        "never_learn": true,
        "construction_blueprint": "faction_base_workshop_0",
        "blueprint_name": "workshop survey",
        "time": "180 m",
        "blueprint_requires": [ { "id": "not_an_upgrade" } ],
        "blueprint_provides": [ { "id": "fbmw_0" } ]
      },

and

{
    "type": "mapgen",
    "method": "json",
    "nested_mapgen_id": "fbmw_0",
    "object": {
      "mapgensize": [ 6, 6 ],
      "rows": [
        "      ",
        "      ",
        "      ",
        "      ",
        "      ",
        "      "
      ],
      "palettes": [ "fbmw_wood_palette" ]
    }
  },
  {
    "type": "mapgen",
    "update_mapgen_id": "faction_base_workshop_0",
    "method": "json",
    "object": { "place_nested": [ { "chunks": [ "fbml_0" ], "x": 15, "y": 3 } ] }
  },

that little mapgen really doesn't do anything to the map, but I got errors if I left it out, the survey wants an update_mapgen_id.

Thanks! I'll work on that this week.

@Maleclypse
Copy link
Member Author

Some screenshots?

I edited the descriptions. I also noticed that the brewery upgrade is failing and not calculating the components needed to build so if anyone has any suggestions on how to fix that I'm open to them. I'll turn this back into WIP until I get that resolved. When I tested it the first time I just got them all built to first level.

Saltworks first level
failed
recipe failure

@Maleclypse Maleclypse changed the title Modular saltworks WIP Modular saltworks Oct 30, 2019
@Maleclypse
Copy link
Member Author

@curstwist were you having issues with upgrades to existing buildings and that's why you stopped making basecamp upgrades until it was resolved? I can't remember.

@curstwist
Copy link
Contributor

@curstwist were you having issues with upgrades to existing buildings and that's why you stopped making basecamp upgrades until it was resolved? I can't remember.

I stopped until the rotation issue is fixed (there's a PR up that should fix it) and using the expansion upgrade craft recipies in the "core" building, which isn't working. Since this is a proper expansion, it shouldn't be either of my issues. I'll take a look at it.

in blueprint provides requires excludes
@curstwist
Copy link
Contributor

You can also use "amount": ..either should work.

@Maleclypse
Copy link
Member Author

I'm not sure what the following means
src/json.cpp:111: Failed to visit member 'faction_owner' in JsonObject at line 2480:78509: { "type": "mapgen", "om_terrain": "faction_base_saltworks_0", "method": "json", "faction_owner": { "id": "your_followers", "area": [ { "x": 0, "y": 0, "x2": 23, "y2": 23 } ] }, "weight": 250,

@curstwist
Copy link
Contributor

Faction_owner needs to be within the object section. They were all wrong but jbtw recently fixed the others.

@AMurkin
Copy link
Contributor

AMurkin commented Oct 30, 2019

Shouldn't faction_owner be inside object?

Comment on lines 88 to 89
"blueprint_provides": [ { "id": "fbmsw_southwest2" } ],
"blueprint_excludes": [ { "id": "fbmsw_souththwest2" } ],
Copy link
Contributor

Choose a reason for hiding this comment

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

excludes id is still misspelled. should be identical to requires.

@Maleclypse Maleclypse changed the title WIP Modular saltworks Modular saltworks Oct 31, 2019
@Maleclypse
Copy link
Member Author

I'm seeing a bunch of gunmod errors in my C and Travis tests but not anymore errors from files I edited. Tomorrow I'll see if I can get the brewery upgrades to work and I'll post screenshots of them assuming they do.

Attempting to make it so it doesn't ask me if I want to replace with other designs
See if this fixes the ability to upgrade to level 2 brewery
@Maleclypse
Copy link
Member Author

@curstwist this might just need another set of eyes or maybe I should take a break for the day on it but I've got all the material types building all the way through except for the final brewery upgrade on metal and wad types. I've also solved my issue where it would offer me to change material types in the base construction screen, I'm not sure if it was the most elegant solution but it seems to have worked by editing the blueprint excludes line.

@Maleclypse
Copy link
Member Author

Image of completed all materials versions here in Camp Salty. Top left has a basic brewery, bottom right has upgraded brewery by one level. All other breweries are level 2. Left is log, top left is stone, north is metal, top right is wattle and daub, right is wood.

Saltworks final

@ZhilkinSerg ZhilkinSerg merged commit 30468cb into CleverRaven:master Nov 4, 2019
Ramza13 pushed a commit to Ramza13/Cataclysm-DDA that referenced this pull request Nov 5, 2019
* WIP Saltworks

Creating Modular basecamp Saltworks with a Brewery. Still needs recipes for follower missions.  Still needs additional building materials versions but trying to get the camp site to build.

* Update data/json/recipes/basecamps/recipe_modular_saltworks_log.json

Co-Authored-By: ZhilkinSerg <ZhilkinSerg@users.noreply.github.com>

* Update recipe_modular_saltworks_log.json

* Update data/json/mapgen/basecamps/modular_saltworks_log.json

Co-Authored-By: ZhilkinSerg <ZhilkinSerg@users.noreply.github.com>

* Update recipe_modular_saltworks_log.json

* Update recipe_modular_saltworks_log.json

* Update recipe_modular_saltworks_log.json

* Update modular_saltworks_log.json

* Update recipe_modular_saltworks_log.json

* Update recipe_modular_saltworks_log.json

* Update modular_saltworks_log.json

* Additional Materials

added other material's for buildings

* added recipes to basecamps

* Create recipe_modular_saltworks_stone.json

* Update modular_saltworks_wad.json

* Update recipe_modular_saltworks_log.json

* Update recipe_modular_saltworks_wad.json

* updates and corrections

* Update recipe_modular_saltworks_wad.json

* Update recipe_modular_saltworks_wood.json

* Update modular_saltworks_wad.json

* fixes and removing excess pallettes

* fbml to fmbs

* Update recipe_groups.json

* Update recipe_modular_saltworks_log.json

* Update recipe_modular_saltworks_log.json

* Update recipe_modular_saltworks_log.json

* Update recipe_modular_saltworks_log.json

* Update recipe_modular_saltworks_log.json

* removing { on line 64 of each json

* Update recipe_modular_saltworks_stone.json

* Linting and repair

* Update modular_saltworks_rock.json

* fbms_0 to fbmsw_0

* Update recipe_modular_saltworks_wad.json

* fixed syntax and references

* Update recipe_modular_saltworks_stone.json

* Update overmap_terrain_faction_base.json

* Update modular_saltworks_log.json

* Update faction_buildings.json

* Update recipe_modular_saltworks_wad.json

* Update recipe_modular_saltworks_wood.json

* replace extraneous #

* fbms to fbmsw

Also created saltworks folder for recipes

* add recipe descriptor

* named upgrades appropriately

in blueprint provides requires excludes

* remove excess th's

fixed faction owner

* Update faction_buildings.json

* limiting upgrade options

Attempting to make it so it doesn't ask me if I want to replace with other designs

* Lintin new excludes

* changed west to southwest

See if this fixes the ability to upgrade to level 2 brewery

* Cursetwist fixes to Saltworks

* It's the final linting...doo da doot doot
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Crafting / Construction / Recipes Includes: Uncrafting / Disassembling [JSON] Changes (can be) made in JSON Map / Mapgen Overmap, Mapgen, Map extras, Map display Player Faction Base / Camp All about the player faction base/camp/site
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants