Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  

Author Topic: Simple Mod - Stone Grinding at the Millstone  (Read 1697 times)

Malecus

  • Bay Watcher
    • View Profile
Simple Mod - Stone Grinding at the Millstone
« on: August 21, 2012, 04:53:51 pm »

I took TomiTapio's advise and focused my efforts into creating a way to turn stone into sand.  A quick search of the various non-ore producing stones gave 18 different stones with enough of a silica content to consider for a "realistic" sand-generating reaction.  Of these, I selected five different stones to create sand from, so as to maximize the chances of any given fort being able to have the raw materials (and each one creates a different colour of sand; not that such a thing really matters).  I then realized the difference in weight between a boulder and a bag of sand, so I made sure the reactions convert blocks into sand for a closer conversion ratio.

The directions are as simple as most of my stuff...
1) Enter the following lines somewhere in dwarf section of the entity_default file:
Spoiler (click to show/hide)

2) Create a file called 'reaction_blockgrind' and add it to the raws:
Spoiler (click to show/hide)

3) Generate a world and have lose your fear of glass-demanding strange moods happening to valuable dwarves!

Extra stuff: Here's the list I whipped up of all stones with a noteworthy amount of silica content.  If you want more reactions but want to keep it realistic, consider these:
Spoiler (click to show/hide)
Logged

brainfreez

  • Bay Watcher
  • THIS IS !
    • View Profile
Re: Simple Mod - Stone Grinding at the Millstone
« Reply #1 on: August 21, 2012, 05:41:03 pm »

in what workshop they will get converted ?
Logged
I am currently investigating what Brainfreez is on. It is the greatest drug that any man, woman, kobold or pony has ever seen, going off of that everything he posts is pure win.
Sleyerhero90 : You're battle-rapping with a guy who supported THE SAME FREAKING GUY YOU DO!
Breainfreez : wait .... really ?

Malecus

  • Bay Watcher
    • View Profile
Re: Simple Mod - Stone Grinding at the Millstone
« Reply #2 on: August 21, 2012, 05:46:19 pm »

I went with the millstone, because it's a small building that requires power.  Grinding stone into sand seems like something that should require mechanical assistance.  But if you're playing a powerless/sadistic fort, you could easily change MILLSTONE in the reactions to QUERN and force your dwarves to do it all by hand.
Logged

peregarrett

  • Bay Watcher
  • Гномовержец Enjoyed throwing someone recently
    • View Profile
Re: Simple Mod - Stone Grinding at the Millstone
« Reply #3 on: August 21, 2012, 11:31:53 pm »

Nice work, but it can be done with single reaction, using MATERIAL_REACTION_PRODUCT
add under stones:
Code: [Select]
[INORGANIC:ORTHOCLASE]
...
    [MATERIAL_REACTION_PRODUCT:GRIND_MAT:INORGANIC:SAND_RED]
...
same with obsidian and others

reaction:
Code: [Select]
[REACTION:BLOCKGRIND1]
   [NAME:Grind StoneBlock to Sand]
   [BUILDING:MILLSTONE:CUSTOM_ALT_B]
   [REAGENT:block:1:BLOCKS:NONE:NONE:NONE] - material unspecified
       [HAS_MATERIAL_REACTION_PRODUCT:GRIND_MAT] - but filtered by condition
   [REAGENT:bag:1:BOX:NONE:NONE:NONE]
      [BAG]
      [EMPTY]
      [PRESERVE_REAGENT]
      [DOES_NOT_DETERMINE_PRODUCT_AMOUNT] - its usually used for containers
   [PRODUCT:100:1:POWDER_MISC:NONE:GET_MATERIAL_FROM_REAGENT:block:GRIND_MAT]
      [PRODUCT_TO_CONTAINER:bag]
   [SKILL:MILLING]
Logged
Did you know that the Russian word for "sock" is "no sock"?
I just saw a guy with two broken legs push a minecart with a corpse in it. Yeah.

Meph

  • Bay Watcher
    • View Profile
    • worldbicyclist
Re: Simple Mod - Stone Grinding at the Millstone
« Reply #4 on: August 22, 2012, 12:22:12 pm »

I was about to say the same. Reaction_class or material_reaction_product can reduce it to one reaction, but of course would take away the peoples choice of stone.
Logged
::: ☼Meph Tileset☼☼Map Tileset☼- 32x graphic sets with TWBT :::
::: ☼MASTERWORK DF☼ - A comprehensive mod pack now on Patreon - 250.000+ downloads and counting :::
::: WorldBicyclist.com - Follow my bike tours around the world - 148 countries visited :::

Malecus

  • Bay Watcher
    • View Profile
Re: Simple Mod - Stone Grinding at the Millstone
« Reply #5 on: August 22, 2012, 05:05:15 pm »

You could also create a reaction that turns milk into sand, or simply creates sand from nothing.  You could even argue that because an entire fortress can be built from the sand on one tile, the game already has a sand-from-nothing reaction.  Neither of these make the reaction feel less like a cheat instead of an alternative 'legit' means of sand production.

I selected these stones for the high silica content of their real world counterparts.  The vanilla game has quite an attention to detail regarding real world geology, doing its best to layer mineral types and gem clusters in a 'proper' relation to each other.  What I've done above is an attempt to keep such level of detail while providing additional options.  You'd have as easy a time producing glass-worthy sand from cinnabar as you would smelting platinum from microcline.
Logged

Putnam

  • Bay Watcher
  • DAT WIZARD
    • View Profile
Re: Simple Mod - Stone Grinding at the Millstone
« Reply #6 on: August 22, 2012, 05:32:43 pm »

Yes, you could do that with MATERIAL_REACTION_PRODUCTs or REACTION_CLASSes.

Meph

  • Bay Watcher
    • View Profile
    • worldbicyclist
Re: Simple Mod - Stone Grinding at the Millstone
« Reply #7 on: August 22, 2012, 07:07:43 pm »

I think you misunderstood. By adding reaction_class or material_reaction_product to these selected high-silicia stone types, you could make one reaction that accepts ANY of these stones. This means less reactions for the player to go through, but more micromanagement if he wants to select a specific rock type. It is generally considered to be more elegant to use reaction classes then simply copy/paste a reaction and add all materials into it. But that is just my point of view, it was no criticism, simply another option for the same result.
Logged
::: ☼Meph Tileset☼☼Map Tileset☼- 32x graphic sets with TWBT :::
::: ☼MASTERWORK DF☼ - A comprehensive mod pack now on Patreon - 250.000+ downloads and counting :::
::: WorldBicyclist.com - Follow my bike tours around the world - 148 countries visited :::

Malecus

  • Bay Watcher
    • View Profile
Re: Simple Mod - Stone Grinding at the Millstone
« Reply #8 on: August 22, 2012, 07:44:30 pm »

Ah yes, I see what you're all getting at now.  My bad.

I don't think I'm explaining the philosophy behind my simple mods properly enough.  They're meant to appeal to the most uninitiated of DF modders who want to add in extra content with a minimum of complexity (there's also the potential for some basic learning, either from direct observation or for those in the future using the search function to aid them on their own reactions and get immediate results).  Perhaps I should have called them virus mods: they're as small and simple as possible while providing maximum results.  Using REACTION_CLASS or MATERIAL_REACTION_PRODUCT would require a line added to every relevant stone.  While this would reduce this down to a single reaction, it would also require modifying every one of the applicable stones and adding the line, which leads us to two ends.  Ending A would have this mod include updated inorganic_stone_layer and inorganic_stone_mineral files to add 18 lines of code, which would vastly increase its overall size and making it (initially) incompatible with any larger mods that have also altered these files.  Ending B would instruct anyone wanting to use this mod to add the extra line to each stone entry, making things difficult for the unskilled.  While I already ask that anyone wanting to use this mod alter the entity_default file to make it work, asking them to hunt down 18 entries and change them may intimidate them away.

If I were creating a more substantial mod like your Masterwork which involves a download, I'd be all over the REACTION_CLASS single reaction.
Logged

Putnam

  • Bay Watcher
  • DAT WIZARD
    • View Profile
Re: Simple Mod - Stone Grinding at the Millstone
« Reply #9 on: August 22, 2012, 11:45:56 pm »

...you're right, can I put this in my mod? :P
« Last Edit: August 23, 2012, 10:52:19 pm by Putnam »
Logged

peregarrett

  • Bay Watcher
  • Гномовержец Enjoyed throwing someone recently
    • View Profile
Re: Simple Mod - Stone Grinding at the Millstone
« Reply #10 on: August 23, 2012, 02:24:00 am »

Whoa, a holywar from nothing!

Actually I suggested that because I think having one reaction instead of dozen doing the same is more elegant way, as Meph explained. No offence meant.
Your point, Malecus, is reasonable too, but I still think it's way too much ingame micromanagement.

Also, got an idea of adding generic "Smelt ore" reaction. It's easy for ores yielding single metal with came MATERIAL_EACTION_PRODUCT, but how can I deal with galena and tetrahedrite, yielding two types of metal at different ratios?
Also2, do [METAL_ORE:xxx] tag automatically make smelting job available, without need to make sperial reaction?
Also3, what about [METAL_ORE:CLAY:100], will it produce clay bars?
Also4 please stop me someone! *Got off for coffee*
Logged
Did you know that the Russian word for "sock" is "no sock"?
I just saw a guy with two broken legs push a minecart with a corpse in it. Yeah.

Quietust

  • Bay Watcher
  • Does not suffer fools gladly
    • View Profile
    • QMT Productions
Re: Simple Mod - Stone Grinding at the Millstone
« Reply #11 on: August 23, 2012, 10:51:35 am »

Your original reactions are using [DOES_NOT_DETERMINE_PRODUCT_AMOUNT] in the wrong place - you're supposed to use it on the container, not the item you're using up. In this particular case it doesn't do anything bad (because you will never get a stack of blocks or a stack of bags), but you should still get into the habit of doing things correctly for when it actually matters.

Also, got an idea of adding generic "Smelt ore" reaction. It's easy for ores yielding single metal with came MATERIAL_EACTION_PRODUCT, but how can I deal with galena and tetrahedrite, yielding two types of metal at different ratios?
Also2, do [METAL_ORE:xxx] tag automatically make smelting job available, without need to make sperial reaction?
Also3, what about [METAL_ORE:CLAY:100], will it produce clay bars?
Adding METAL_ORE to an inorganic material will add generic "Smelt [ore]" jobs to all smelters, though it'll need to use a standard BOULDER rather than blocks and it'll produce bars of whatever material you've indicated. I haven't tried creating "clay bars", but I suspect it'll work just fine.
« Last Edit: August 23, 2012, 10:53:37 am by Quietust »
Logged
P.S. If you don't get this note, let me know and I'll write you another.
It's amazing how dwarves can make a stack of bones completely waterproof and magmaproof.
It's amazing how they can make an entire floodgate out of the bones of 2 cats.

TomiTapio

  • Bay Watcher
  • OldGenesis since 2012
    • View Profile
    • My Flickr animal photos
Re: Simple Mod - Stone Grinding at the Millstone
« Reply #12 on: August 23, 2012, 11:25:18 am »

Mmm, quartzite.
Logged
==OldGenesis mod== by Deon & TomiTapio. Five wood classes, four leather classes. Nine enemy civs. So much fine-tuning.
47.05e release: http://dffd.bay12games.com/who.php?id=1538
OldGenesis screenshots: https://twitter.com/hashtag/OldGenesis?src=hashtag_click&f=image
My Finnish language file: http://dffd.bay12games.com/file.php?id=14884

Meph

  • Bay Watcher
    • View Profile
    • worldbicyclist
Re: Simple Mod - Stone Grinding at the Millstone
« Reply #13 on: August 23, 2012, 11:36:27 am »

The bar from ore is also flawed. If it has 50% ore (galena from silver), it will still count as a reagent for: ore of silver. No way to balance this.
Logged
::: ☼Meph Tileset☼☼Map Tileset☼- 32x graphic sets with TWBT :::
::: ☼MASTERWORK DF☼ - A comprehensive mod pack now on Patreon - 250.000+ downloads and counting :::
::: WorldBicyclist.com - Follow my bike tours around the world - 148 countries visited :::