TauCetiClassic
TauCetiClassic copied to clipboard
Баг с пИИ
Подробное описание проблемы
Не слышно речи за пИИ в непосредственной близости.
Что должно было произойти
пИИ общается без помощи радио локально
Что произошло на самом деле
пИИ слышит только радио
Как повторить
Зайти за пИИ
Дополнительная информация:
Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.
#5934 Этот баг скорее всего относится к этому ишуе, кстати появилось после 513
И вот такой вот 6000ный ишуй? Дизлайк
#6035 #6104 #6423 #6758 #6881 #7089 #7263 #8192
Найденные мной проблемные ишуи в добавок
Раз уж мою тему решили закрыть. Стоит добавить, что та-же проблема актуальна и для позитронки. М.б. ещё для мозга в ММИ и чего-то ещё с подобной механикой. Раньше такого не было кажется и вот опять.
Скоро год будет багу
https://github.com/TauCetiStation/TauCetiClassic/blob/30414cf0a02d1032ff183ef07990c17a8a0656c5/code/modules/mob/living/say.dm#L145-L162
Вся суть бага в этом месте. Проблема в том, что алгоритм не может добавить моба пИИ внутри хумана. Там типо хуман(моб)->телефон с пИИ(обж)->сам пИИ(моб). На тг это пофикшено с помощью одного рекурсивного алгоритма и я не очень знаю, почему бы просто его не спортировать. Воот, это все что я нарыл
Глянул, потому что тут в дискорде опять вспоминали ~~и опять ничего не делали, даже не бампнули~~
Киборг выше прав, там свой код поиска слушателей нужно заменить на get_hearers_in_view
и скопипастить обновление к этому проку с тг, расставить флаг HEAR_1
к объектам которые имеют hear_talk
. Изи фикс.
Изи фикс.
когда уже пофиксят
когда уже пофиксят
Никогда. Очевидно же, что никто не заинтересован в том, чтобы сделать это.
Если кому-то нужно - я могу расписать подробнее алгоритм действий, как это пофиксить. Стоит только дождаться мержа тгчата.
Дождались
Возвращаясь к проблеме. Вопрос с порта с тг уже сложнее, там случился https://github.com/tgstation/tgstation/pull/61422
Если не рефакторить, починить еще проще, но я не могу найти где и в какой момент это вообще сломали, и как это работало раньше. Самое близкое изменение, что я нашел, https://github.com/TauCetiStation/TauCetiClassic/pull/4040 - но вроде бы существенно ничего не меняли.
Не зная, как и когда это сломали, я не уверен, что пофикшу правильно.
4040 вроде как и сломал, либо вроде даже что-то с переходом на 513 бьонд...
Скорее всего с 513. Мы перешли на новую версию 2 августа 2020, и после этого начались репорты.
Возможно, связанно с https://www.byond.com/forum/post/2600534
Сейчас разбираться уже поздно, если бы сразу обратили внимание что это возможно из-за мажорной версии... моя теория - view()
"по ошибке" возвращал внутренних мобов (спрятанных в чем-то, находящимся в пределах view), и Люммокс любезно нам это починил, пока чинил баг выше по ссылке.