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

Adobe blocks, brick walls made from mud! #30606

Merged
merged 26 commits into from May 26, 2019

Conversation

@LordSunder
Copy link
Contributor

commented May 18, 2019

SUMMARY: Content "Adds mud bricks and the ability to make brick walls out of them"

Purpose of change

Following conversation on my previous pull request, and on the forums, adobe and cob walls were mentioned as things people wanted from my suggestion of having more to do with excess soil. So I resolved to make that possible.

Describe the solution

Adobe bricks are not all that different from regular ceramic. They're a mixture of soil, water and organic fiber such as straw or dung, left to dry, and then used in much the same way as blocks in construction.
Currently the player can craft wet bricks, load them onto a pallet (light wooden frame) in a manner similar to pickling a vegetable, and disassemble the pallet of bricks when it's done to receive enough adobe bricks to construct a full tile of brick wall. This requires adobe cement, which can be made from a mix of soil and water, or regular cement in the normal brick wall recipe. Constructing with pure adobe only requires a wooden smoother, whereas the regular cement recipe uses a metal one as usual. This gives survivalists a way to make brick equivalents that don't need a kiln, and mature slowly in batches while they're out scavenging.

Adobe bricks are 1/3 larger than regular bricks, to reflect how they're usually quite large (more like blockwork). CDDA bricks are unusually small and light compared to reality, and you require way fewer bricks than you'd actually need to build a 1x2m wall (30 in CDDA to reality's 120 standard US bricks) so I made the adobe ones larger and heavier to compensate, and thus you require 1/3 fewer adobe bricks to make a wall.

Sources: http://desertphile.org/adobe/brick.htm -> How to make them
https://www.diydata.com/general_building/brick_calculator/brick_calculator.php -> source for realistic brick estimate, not super important

Describe alternatives you've considered

Adding an 'adobe brick wall' was a possibility, but it seemed like pointless clutter, as adobe bricks have been used for centuries in much the same scenarios as ceramic bricks. I considered adding it as an alternative recipe to the rammed earth wall, but the fence post frame wouldn't make sense. You don't need a wooden frame in the ground to build a regular brick wall, so why should baked mud bricks?

Other features I've considered was a recipe to bake adobe bricks in a kiln, if you have one, but I'm fairly sure that slow drying is needed to prevent the bricks from cracking (uneven expansion from clay content), so I discarded it.

Additional context

A lone brick
Pallet of mud bricks

LordSunder added some commits May 17, 2019

Update construction.json
Well, it's fairly realistic. The water is a bit on the low side (25l) but that's because it's roughly 1/4 of what would be needed for this volume of earth were it baked dry. Post cataclysm rainfall in New England is pretty crazy, so I tried to account for that.
Update terrain.json
Strengthened the walls to fit within realistic bounds. Can be stronger, but if this gets accepted eventually, I'll add a modern version that uses a small amount of concrete, a cement mixer and a sledge to make something similar to a very slow to build concrete wall.
First pass
Linted, added, realised my repo was out of date, had to redo. Not sure if linting sticks, but my saved copies of the json code are exactly as the linter spat them out.

LordSunder and others added some commits May 18, 2019

Plurals added
added plural definitions to pallets.
Update data/json/items/tools.json
Co-Authored-By: Anton Burmistrov <Night_Pryanik@mail.ru>
Update data/json/items/tools.json
Co-Authored-By: Anton Burmistrov <Night_Pryanik@mail.ru>
Update data/json/items/generic.json
Co-Authored-By: Anton Burmistrov <Night_Pryanik@mail.ru>
Plurals removed
removed plurals for bricks, as it was redundant
Update data/json/items/generic.json
Co-Authored-By: Anton Burmistrov <Night_Pryanik@mail.ru>
@Night-Pryanik

This comment has been minimized.

Copy link
Member

commented May 18, 2019

Most probably we don't need intermediate soft adobe brick - we already removed crude (unfired) brick from the game in the past (#11756). Just modify recipe of pallet_full to accept ingredients for soft_adobe_brick, not the soft brick itself.

@LordSunder

This comment has been minimized.

Copy link
Contributor Author

commented May 18, 2019

I guess it just felt more immersive to craft the wet bricks with whatever materials you have on hand, especially since you need a container to mix it in since you're not using a cement mixer for the wall construction, and this isn't a given in the earlygame. Also, dung rots, so I doubt you'd be able to get enough of it at once if I scale things up to 'make full pallet from scratch'.

Update data/json/items/tools.json
Co-Authored-By: Anton Burmistrov <Night_Pryanik@mail.ru>
@Rail-Runner

This comment has been minimized.

Copy link
Contributor

commented May 18, 2019

Well, another option could be allowing bricks to dry individually, without using a pallet. Since a pallet of bricks would be able to successfully dry up even if you stored it underwater for that week, as it is now, I don't think it makes it any worse.

@LordSunder

This comment has been minimized.

Copy link
Contributor Author

commented May 18, 2019

Yeah, I suppose. Can I add transformations directly to the unfinished brick item?
Edit: really wish they wouldn't dry in the rain/underwater, but this is literally the second thing I've tried to add, so I pretty much just reused the application of the portable charcoal kiln. Didn't really occur to me to make them dry individually, although it loses the cool 'pallets of bricks out to dry in your hobo back yard' aesthetic when making batches. Ho hum, cut down the clutter.

@I-am-Erk
Copy link
Contributor

left a comment

I'm not convinced an Adobe brick wall would be as durable as a fired brick wall. Maybe they should have their own stats and just use looks_like so they use the same tile?

Show resolved Hide resolved data/json/items/tools.json Outdated
Recipe consolidation
Made singular bricks dry by themselves, so make as many as you want and leave them in a pile to dry. In the pouring rain, next to a river. Until someone makes dampness a thing beyond a morale value.
@kevingranade

This comment has been minimized.

Copy link
Member

commented May 19, 2019

I'm not concerned about modeling fired brick vs Adobe brick structural integrity. I suspect that an adobe wall would be significantly easier to claw and bash through for a zombie horde, and it's simply not the same thing.

@LordSunder

This comment has been minimized.

Copy link
Contributor Author

commented May 19, 2019

I hate dithering like this, but after some testing, I think removing the pallets was a bad move. It helps the aesthetics/fluff to have a batch method, and it allows you to transform a batch of 20 at a time with one button press rather than 20 individual 'you test the brick' button presses. Having the bricks dry individually is better than them not doing that, but 20 button presses to stress test enough bricks for one wall is a bit much. Maybe have the pallets as an extra investment of the frames so that you can conveniently dry stuff in bulk?

@Rail-Runner

This comment has been minimized.

Copy link
Contributor

commented May 19, 2019

Having the bricks dry individually is better than them not doing that, but 20 button presses to stress test enough bricks for one wall is a bit much.

Isn't time remaining visible on an item? I thought it is.

Lots of requested changes
Adobe walls are a new terrain type. Pallets are back, as an option for crafting large batches of bricks. I tested the singular brick method, and it's okay for the scenario where you need a few extra, but transforming a full batch was giving me wristache, so something had to change. Adobe bricks in regular brick walls are out, to fit the new terrain entry. Sand is now needed to stucco the exterior to keep the rain out. Oh, and I fixed my misunderstanding of transformation messages. That's... about it.
@LordSunder

This comment has been minimized.

Copy link
Contributor Author

commented May 19, 2019

Time remaining is visible, yes, but as far as I know, you still have to activate an item to finish the delayed transformation when it's done, which was what I was referring to. I realised a misunderstood transformation messages, so changed the line about leaving them to dry to testing them to see if they were done, because you should drop test bricks like this to make sure the batch came out okay (just drop it from chest height and see if it shatters). This way, you could reasonably craft a bunch of bricks, load them onto pallets, and only have to activate like 5-6 items at the end of it instead of 100-120 individual bricks.

@anothersimulacrum

This comment has been minimized.

Copy link
Contributor

commented May 19, 2019

I support the pallets as a method for batch-crafting bricks, it could get annoying with large amounts of bricks, which you'll be making when you want to build something with them.

@LordSunder

This comment has been minimized.

Copy link
Contributor Author

commented May 19, 2019

I was all for reducing clutter by doing away with the pallet/pallet recipes, right up until I tested it ingame, and encountered the nastiness that was trying to build a house out of this stuff, manually activating every brick to make it useable. No. Also, I was poking around with the idea of making other pallet items at some point that correspond to terrain objects that could be placed in building sites/lumber yards/warehouse type places for atmosphere and a lump sum of materials for someone with a truck to transport the stuff.

LordSunder added some commits May 19, 2019

Update terrain.json
Pls accept my code mr bot uwu /s
Accidental breakage, yay
Somehow missed this blatant error.

LordSunder and others added some commits May 20, 2019

Update data/json/terrain.json
Co-Authored-By: anothersimulacrum <anothersimulacrum@gmail.com>
@chriseich21

This comment has been minimized.

Copy link

commented May 22, 2019

Would it be possible to have a timer or event that triggers and autoconverts items when time expires? So after X hours of burning, filled charcoal kiln automatically becomes finished charcoal kiln. Or in this case, wet Adobe drying. It seems a more logical approach, however I don't know if this was the chosen method due to how the reality bubble works (feel like freezing outside bubble is a problem for any implementation of this).

Loading, activating, and unloading would be even better but require a lot of changes; probably not worth time versus first change mentioned. My first time using the kiln though was not as intuitive as other tools/recipes, I was looking for charcoal in chemicals, therefore I'm not big on using it as a template for new items for future new players.

@LordSunder

This comment has been minimized.

Copy link
Contributor Author

commented May 23, 2019

Pretty sure you still have to activate a lit portable charcoal kiln that's reached the end of its transformation, unfortunately. It's the same json format as pickling, and various other delayed transformations, that's unfortunately tied to the use_action tag for items. If you were referring to the charcoal kiln furniture, then that's tied to the examine_action tag "kiln_full" which as far as I know is defined in the C++ end of things. Unfortunately, I have no knowledge of C++, though I'm trying to get some understanding from tutorials, otherwise I'd probably try to make that my first project, aside from maybe revamping the underground.

LordSunder added some commits May 25, 2019

Update terrain.json
Thought I fixed this ages ago. Guessing when I merged the master in, something got overwritten?

@kevingranade kevingranade merged commit 4e620a2 into CleverRaven:master May 26, 2019

3 checks passed

continuous-integration/appveyor/pr AppVeyor build succeeded
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details
gorgon-ghprb Build finished.
Details

@LordSunder LordSunder deleted the LordSunder:Adobe-branch branch May 26, 2019

@kevingranade

This comment has been minimized.

Copy link
Member

commented May 30, 2019

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

https://discourse.cataclysmdda.org/t/how-to-get-rid-of-soil/20194/7

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.