Cat cancels Store Item in Stockpile: Too injured
- Эта статья описывает баг, существовавший в старых версиях игры. К настоящему моменту он исправлен.
Этой статье присвоена категория «Д» — значит «Дварфы». Это значит, что в ней встречаются смешные шутки, не очень смешные шутки, совсем не смешные шутки, всякие внутриигровые приколы и ссылки на форум Bay12. Не верьте всему, что тут понаписали, и не расстраивайтесь, если чего-то не поняли. |
Кошка, убившая мышь или другого вредителя, желает отнести её своему хозяину, дабы похвастаться, но тут то и подстерегает баг, переноску можно осуществлять только руками и кошка думает: «Где мои руки!? Мои прекрасные руки! Они оторвали их! Боже мой! Какой кошмар! Что мне делать! эээ… стоп… я же кошка, у меня нет рук» и идёт по своим делам, предварительно наспамив сообщение о том, что ей оторвало руки — "Сancels Store Item in Stockpile: Too injured".
Это старый баг и он появился вновь в версии 40d. Рот кошки не имеет специального тега [GRASP], поэтому игра считает, что кошке нечем поднять свою добычу и генерируется вышеуказанное сообщение об ошибке. Досадно, что на этом всё не заканчивается, кошка снова и снова пытается поднять убитого грызуна.
Исправление бага
Так как со временем популяция ваших кошек возрастает и число разных грызунов от них не отстает, сообщение об ошибке будет появляться всё чаще и чаще, но это легко поправить, с помощью небольшой модификации игры (последовательность действий описана ниже). Вам даже не придется заново создавать мир.
Шаг первый
Откройте raw/objects/body_default.txt и добавьте новую запись:
[BODY:CAT_MOUTH] [BP:CAT_MOUTH:mouth][CONTYPE:HEAD][MOUTH][SMALL][EMBEDDED][APERTURE][GRASP]
Это создаст новую часть тела в вашей дварфской вселенной. А конкретно рот, который сможет что-то поднять. Теперь мы должны приделать эту часть тела к кошке!
Шаг второй
Откройте файл raw/objects/creature_domestic.txt и отредактируйте кошку следующим образом:
[CREATURE:CAT] [NAME:cat:cats:cat] [TILE:'c'][COLOR:0:0:1] [VERMINHUNTER] [PETVALUE:20] [CARNIVORE][NATURAL][PET] [LARGE_ROAMING] [COMMON_DOMESTIC][BENIGN] [PREFSTRING:aloofness] [BODY:QUADRUPED:TAIL:2EYES:2EARS:NOSE:2LUNGS:HEART:GUTS:ORGANS:THROAT:NECK:SPINE:BRAIN:CAT_MOUTH] [BODYGLOSS:PAW] [SIZE:3] [MAXAGE:10:20] [ATTACK:MAIN:BYTYPE:MOUTH:bite:bites:1:6:GORE][ATTACKFLAG_CANLATCH] [CHILD:1][CHILDNAME:kitten:kittens] [FAT:1] [DIURNAL] [STANDARD_FLESH] [HOMEOTHERM:10070] [LAYERING:100] [SWIMS_INNATE][SWIM_SPEED:2500] [MUNDANE]
Готово.
Обращаем ваше внимание на то, что вам не нужно изменять строчку [ATTACK], хоть она и содержит MOUTH. Потому что в данном случае «mouth» относится совершенно к другому.