Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1] 2

Author Topic: Modding out bugs/annoyances  (Read 3075 times)

nutzy

  • Bay Watcher
    • View Profile
Modding out bugs/annoyances
« on: January 21, 2012, 01:56:42 pm »

There are lots of things in DF that don't work as they should. Modding can fix a lot of these. You can nerf whips, replace all of the [PET_EXOTIC] tags, and add elven diplomats, but there are a few things that really annoy me that I can't figure out how to fix. (And yes, I've searched.)

1) Strange extracts & body parts from caravans. I have seen some people talk about modding blood to be useful, but barrels of butterfly ichor are just silly. I would like to prevent them from being brought as well as impossible meats and such. (At least the meat is useful, though.) Has anybody figured out a fix for this?

2) The four item limit on requests. This is more of an annoyance than anything and may be intended. Still, if I want to buy steel bars it seems that a few dozen is a realistic. I swear I have read about a fix for this, but I can't find it. Is it possible to create a trade item that can be converted via custom reaction into a stack of ten bars? I swear I've read about something like that, but I haven't been able to find it.

3) Stockpile order. I have found some interesting problems caused by trying to change this. For example in the refuse pile I would domestics first and unethical corpses last. I noticed that they are listed according to the order of the creatures_foo.txt files and played around with renaming files.
This works to some extent: you can rename the first three files, and make the list start with domestics instead of toad, worm, and bird corpses that don't exist. I think you have to make sure the first line is the filename and regen, but it works as far as I can tell. More complicated things I tried like moving all ethically forbidden creatures from the existing raws into a new creatures_canlearn.txt caused some crazy things in worldgen.
Is there any way to shuffle around creatures in the raws without totally breaking worldgen? Not that getting civilizations of bloodmen and cave crawlers roaming the countryside isn't entertaining.
Logged

Meph

  • Bay Watcher
    • View Profile
    • worldbicyclist
Re: Modding out bugs/annoyances
« Reply #1 on: January 21, 2012, 05:20:37 pm »

What do you mean by four item limit at embark ?

About 3. Yes, you can easily mix them like you want. Make sure to add the 2 tags to the top of the raw though, creature_name and [OBJECT:CREATURE] and name the txt accordingly.

I fixed following bugs for my mod:

Creatures no longer die out.
Pandas no longer starve.
Added a pet turtle to create shells.
Kobolds no longer get extinct in worldgen.
Dungeon Master is now an appointable noble.
Exotic creatures can now be tamed and trained.
Lashes/Scourges/Whips are no longer lightsabers.
Added the missing dwarfen nobles from former releases again.
Invaders no longer show up on amphibious or flying mounts, causing pathfinding problems.

If you need any of the raws, I can look the solutions up. :)
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 :::

i2amroy

  • Bay Watcher
  • Cats, ruling the world one dwarf at a time
    • View Profile
Re: Modding out bugs/annoyances
« Reply #2 on: January 21, 2012, 05:22:06 pm »

1) I believe somebody came up with something a while back that worked to remove bird bones and all of those other unobtainable materials from mandates, and I'm fairly sure that it stopped traders from bringing them as well. I'm not really sure what happened to it though.

2) The work-around here would be to create a new rock (call it Steel Clump or something like that) and then create a reaction that takes 10 steel bars and turns them into a steel clump and give it to the dwarven civilization. That should then allow traders to bring it. Then all you need is to add another reaction that does the opposite of the first by turning a steel clump back into 10 bars of steel and add that to the dwarven civ as well. You could then request steel clumps and the traders would bring those which you could then turn back into bars. This could then be done with any metals or materials that you want.

3)It sounds like you had a duplicated raws entry there somewhere in your moving. This could be as simple as you forgetting to delete a moved creature front the old text file, but it would mess up your game. Also keep in mind that moving things can easily break a current world, so you should always regen after moving things around if possible.
Logged
Quote from: PTTG
It would be brutally difficult and probably won't work. In other words, it's absolutely dwarven!
Cataclysm: Dark Days Ahead - A fun zombie survival rougelike that I'm dev-ing for.

Domitian

  • Bay Watcher
    • View Profile
Re: Modding out bugs/annoyances
« Reply #3 on: January 21, 2012, 07:35:59 pm »

Sounds like a bunch of great fixes/options for the Lazy Newb pack as well. Heck, i'd kill to have Kobolds not die out... I've never even seen one.
Logged

nutzy

  • Bay Watcher
    • View Profile
Re: Modding out bugs/annoyances
« Reply #4 on: January 21, 2012, 08:06:06 pm »

Thanks for the responses.

I have perused most of the major mods on this board and have stolen bits and pieces of many of them. I'm looking at the ☼MASTERWORK☼ mod right now... that might take a while.  ;) Did you actually get the Dungeon Master to work or just replace [PET_EXOTIC] with [PET]?

As for the worldgen insanity, I thought all of the typos had been fixed. I already figured out the proper header info, so that should be the only problem. It's good to know that it will work.

Domitian: the kobold fix is easy. Add [NO_EAT] in the [CREATURE:KOBOLD] section of creature_standard.txt. Almost as simple and indispensable as the old catmouth fix.
Logged

nutzy

  • Bay Watcher
    • View Profile
Re: Modding out bugs/annoyances
« Reply #5 on: January 21, 2012, 08:52:23 pm »

I can't find anything wrong :(

One thing occurs, though. Do creature variants have to occur after the creature they are based on? I wonder if that might be breaking it.

Logged

Hugo_The_Dwarf

  • Bay Watcher
  • Modding Mentor
    • View Profile
    • Regeneration: Forced Evolution
Re: Modding out bugs/annoyances
« Reply #6 on: January 21, 2012, 09:07:08 pm »

Sounds like a bunch of great fixes/options for the Lazy Newb pack as well. Heck, i'd kill to have Kobolds not die out... I've never even seen one.
You can have vanilla kobolds survive world gen by removing [UNBUTCHERABLE] from rats... I know my kobolds survive worldgen in Regeneration, and I never added the [NO_EAT] tag to them :/ but some vermin are butcherable in Regeneration
Logged

NonconsensualSurgery

  • Bay Watcher
    • View Profile
Re: Modding out bugs/annoyances
« Reply #7 on: January 21, 2012, 11:30:53 pm »

You can have vanilla kobolds survive world gen by removing [UNBUTCHERABLE] from rats... I know my kobolds survive worldgen in Regeneration, and I never added the [NO_EAT] tag to them :/ but some vermin are butcherable in Regeneration

!

*GOOGLYEYES*

Does this have any other strange effects?
Logged
Never had a bat massacre people with an axe before.
EDIT2: Oh god, the bat has got a title now.

Hugo_The_Dwarf

  • Bay Watcher
  • Modding Mentor
    • View Profile
    • Regeneration: Forced Evolution
Re: Modding out bugs/annoyances
« Reply #8 on: January 21, 2012, 11:40:44 pm »

You can have vanilla kobolds survive world gen by removing [UNBUTCHERABLE] from rats... I know my kobolds survive worldgen in Regeneration, and I never added the [NO_EAT] tag to them :/ but some vermin are butcherable in Regeneration

!

*GOOGLYEYES*

Does this have any other strange effects?
None that DF does not reproduce on its own (embarking/trading with/for vermin parts...) I guess worldgen/none adv or fortress mode ignores the fact that vermin are too small to give bones? (since kobolds have [BONECARN]) after I got attacked by kobolds I had thought "Oh I must have added [NO_EAT] to the little buggers" but when I went in to see if I had... There was no [NO_EAT] tag, which baffled me. Then I remembered I had removed [NOT_BUTCHERABLE] from a few vermin types, curious I went to the SULKING entity and I found that Kobolds have
[PERMITTED_JOB:TRAPPER] -catchy the vermin
and
[PERMITTED_JOB:ANIMAL_DISSECTOR] - butcher the vermin

EDIT:
I guess a strange effect would be your dwarves/humans taking a caged rat and butchering it (at some point I should make a custom rat meat called "Rat on a stick" and only editable raw (ediable cooked would allow for "Rat on a stick roasts, made from finely minced rat on a stick" which to me looks odd :/ )
« Last Edit: January 21, 2012, 11:42:58 pm by Hugo_The_Dwarf »
Logged

ayoriceball

  • Bay Watcher
    • View Profile
Re: Modding out bugs/annoyances
« Reply #9 on: January 21, 2012, 11:51:28 pm »

Do note that Kobolds do manage to somewhat survive- but usually just tiny groups or something like that. If you're lucky, you can get ambushed by some in adventure mode.
Logged
Don't dwarven ladies know they're beautiful the way they are? They don't need to starve themselves to look like those elven bitches.
"Tigermen are lazy and worthless... but not MY friend, Grroawarul."

i2amroy

  • Bay Watcher
  • Cats, ruling the world one dwarf at a time
    • View Profile
Re: Modding out bugs/annoyances
« Reply #10 on: January 22, 2012, 02:16:47 am »

I can't find anything wrong :(

One thing occurs, though. Do creature variants have to occur after the creature they are based on? I wonder if that might be breaking it.
I'm fairly certain that they need to, yes. That is why they always show up right after the creature they are modifying in the raws. So if you are splitting up those combos it might indeed break something. Try fixing it and see if it works and tell us what your results are.
Logged
Quote from: PTTG
It would be brutally difficult and probably won't work. In other words, it's absolutely dwarven!
Cataclysm: Dark Days Ahead - A fun zombie survival rougelike that I'm dev-ing for.

Hugo_The_Dwarf

  • Bay Watcher
  • Modding Mentor
    • View Profile
    • Regeneration: Forced Evolution
Re: Modding out bugs/annoyances
« Reply #11 on: January 22, 2012, 02:10:27 pm »

Do note that Kobolds do manage to somewhat survive- but usually just tiny groups or something like that. If you're lucky, you can get ambushed by some in adventure mode.
from my World log after a 250 year gen

Quote
4: Ithowami, "The Blue Scar", cave
   Owner: Diligulger, kobolds
   Parent Civ: Srulmis, kobolds
   200 kobolds
of course it seems the default "Create a World" only allows for 5 caves? But 200 kobolds I guess counts as a small group?

EDIT:
Run another world (the previous one dwarves had died out) and most of the caves that have kobolds there are at least 200+ living in them
« Last Edit: January 22, 2012, 02:13:12 pm by Hugo_The_Dwarf »
Logged

nutzy

  • Bay Watcher
    • View Profile
Re: Modding out bugs/annoyances
« Reply #12 on: January 24, 2012, 01:21:55 pm »

I found several typos in my raws, but I must still have missed some, so I just scrapped the whole thing. It's not that big a deal shuffling around the stockpile order if I can get impossible vermin junk fixed instead.

I tried to address the four item request limit in a few different ways---with the goal of getting something that weighs and costs ten times as much as a metal bar of the same metal and can be used to make ten bars of that metal.

I tried to make a tool first, but I found that tools don't respect [SIZE:#] or [MATERIAL_SIZE:#] at all. They are always treated as 1000 and 1 respectively. I guess I won't try to melt tools down for bars ever again. Also, the tokens [METAL_MAT] and [METAL_WEAPON_MAT] don't work as I thought they should. (Bugs 4979 and 5029, I think.)

They both limit a tool to being made from metal in fortress mode, but the latter tag doesn't exclude non-weapon metals. And I could embark with my "crate" tools made from wood and stone in addition to metal with either token. I guess it worked, but I don't know if caravans would bring wood or stone crates to sell. Interestingly, my bar reaction turned the stone crates into nonexistent stone bars and the wooden crates into ash bars.

I decided to make bars of special metals that can be turned into regular metals instead. By removing all of the [ITEM_*] tags I kept them from being used for weapons or crafts, etc., but you can still use them to make buildings or stud things.

Is there a better way to do this? I don't think I can prevent them from being used for buildings, but I ought to be able to keep them from being used for super-valuable decorations.

Oh, and btw I tried i2amroy's suggestion to make a stone that smelts into ten bars, but when I genned a world with my special ore it was freaking everywhere and somehow caused surface exposed magnetite clusters too. Maybe that way could work somehow, but I don't know.
Logged

Quietust

  • Bay Watcher
  • Does not suffer fools gladly
    • View Profile
    • QMT Productions
Re: Modding out bugs/annoyances
« Reply #13 on: January 24, 2012, 05:20:59 pm »

Interestingly, my bar reaction turned the stone crates into nonexistent stone bars and the wooden crates into ash bars.
That sort of thing shouldn't be possible - what is the exact reaction you used?
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.

nutzy

  • Bay Watcher
    • View Profile
Re: Modding out bugs/annoyances
« Reply #14 on: January 25, 2012, 08:55:39 am »

I deleted the reaction I used before, but I wrote up some along the lines of what I used and did some testing.

Spoiler (click to show/hide)

It seems that the GET_MATERIAL_FROM_REAGENT token is the key to these weird reactions.

LOG_BAR turns tower cap logs into a generic "tower cap" that seems to be treated as a bar and STONE_BAR turns granite into "granite bar".
The TOOL_BAR reaction turns all wood into ash bars and all stone into bars.
I don't know why the TOOL_BAR reaction treats stone tools the same way STONE_BAR treats stone, but doesn't treat wooden tools the same way LOG_BAR treats logs.

The other four reactions all cause "Unrecognized Material Token" errors on opening DF and make generic unspecified "bars"

I can use all of these to build walls and buildings, so they all seem to be treated as bars (at least, in that respect)
Logged
Pages: [1] 2