Багло
От: neFFy Россия  
Дата: 05.03.08 15:32
Оценка: 135 (49) +4 :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :)))

Если верить одной широко раскрученной байке, то в режиме огибания рельефа местности автопилот истребителей F-16 израильских ВВС выходил из строя при полете над Мертвым морем. Высота машины в какой-то момент пересекала отметку "уровня моря", происходило деление на ноль отчего у автопилота приключался паралич мозга.

Чего уж говорить, если фирма Lockheed Martin может так опростоволоситься, то что взять с нас, простых разработчиков игрушек?

На моей памяти из проектов Nival Interactive наиболее урожайным на комичные баги был Блицкриг 2. Если кто не знает, это такая стратегия на тему второй мировой. Очень кстати смешная даже и без багов. У нас был строгий немецкий издатель, а немцы они страсть какие пугливые до всего что связано с их нацистским прошлым. Упоминать имя фюрера нельзя, слова типа "нацистский", "фашистский" тоже табу, даже свастика у нас была не настоящая, а стилизованная. И это при том, что между миссиями у нас были ролики, поясняющие какие-то исторические события связанные с игровым процессом. В результате получилась эдакая гламурная войнушка в стиле галантного века только с танками и бомбардировщиками без особых претензий на историчность. Кстати, видя какое у нас получается непотребство, наш военный консультант попросил убрать из титров его имя

ФАУ-2 — это такая немецкая мегапетарда. Германия ими под конец войны докучала Великобритании, но без особого успеха. Вундерваффе страдало от кучи детских болезней и хорошо если могло оторваться от земли. Зачастую взрывалась прямо на стартовом столе, а уж коли отрывалось да еще и летело в сторону Англии, то уж вообще успех. Горючее, между прочим, 3,5 тонны этилового спирта

Ну, сделали и мы в Блицкриге эту самую ракету. Как и немцы, сделали ее уже ближе к концу проекта и соорудили на базе объекта "самолет". Но программисты несколько схалтурили и не пооткручивали у бывшего самолета подозрительную для баллистической ракеты функциональность. Оказалость, что если во время полета к цели начинал идти дождь или снег, то во-первых ракета говорила человеческим голосом "Fliege zuruck"(нем. лечу назад), а во-вторых разворачивалась и летела обратно на базу. Фигли там, погода то нелетная.

А еще был у нас замечательный юнит — отряд спецназовцев. Войска у нас могут получать в ходе миссии опыт, а за опыт дают всякие интересные способности. Так вот, донельзя прокачанные спецназовцы получали возможность маскироваться под вражескую пехоту. Достаточно было просто кликнуть в отряд неприятельских солдатиков, и наши бойцы переодевались в их форму. Можно было безнаказанно разгуливать по вражеской базе. Ну, до первого выстрела, конечно.

Но, беда в том, что в Блицкриге кроме собственно пехоты еще были всякие антуражные юниты, типа коров, свиней и собак. Выяснилось, что спецназ вовсе не чурается переодевания в бобиков и хавроний. Если учесть, что механизм этого самого переодевания несколько глючил и часть отряда можно было нарядить в одну форму, часть в другую, то можно было создавать совершенно безумные подразделения. Например, отряд из собак, свиней и панцергренадеров. Учитывая, что отряду можно отдавать всякие приказы типа "маршировать", "ползти" и т.д., то игроку предоставлялась уникальная возможность полюбоваться марширующими свиньями. Получалось это у них, впрочем, паршиво, потому что скелет свиньи не соответствует скелету пехотинца и выглядит это как отряд ездящих не попе хрюшек. А еще этот цирк-шапито можо было запихать в окоп. Сидят, значит, свиньи с собаками в окопе и периодически из него выглядывают.

Со свиньями был связан, кстати, еще один баг, из-за которого игра падала. В какой-то момент программисты что-то такое там подкрутили и свиньи перестали быть нейтральными, а обрели возможность принадлежать какому-то игроку. Управлять ими было нельзя, но формально они могли быть "наши" или "ненаши". Так вот свиньи роняли игру. Потому что видя неприятеля, патриотичная хавронья хотела дать врагу отпор и лезла за оружием, которого у нее естественно не было. Если мне не изменяет память, программисты исправили баг, просто выдав свинье пистолет Люгер без патронов. Визуально это никак не видно, но формально, теперь, видя врага, она лезет за оружием, видит что патронов нет и на этом успокаивается.

Кстати, собака, в отличие от свиньи, может кусаться. И число укусов у нее ограничено, кабы не соврать, десятью тысячами. Потом у барбоса кончаются "патроны", и он становится безобидным. Кстати интересный вопрос, я не проверял, будет ли грузовик снабжения, который подвозит боеприпасы, подносить патроны собаке?

Ладно, потом может еще напишу про баги из Heroes of Might and Magic V. Там, правда, как-то именно смешных багов было не много (зато других навалом). Даже сходу и вспомнить то ничего не могу.

©
...coding for chaos...
Re: Багло
От: vladimir.vladimirovich США  
Дата: 05.03.08 15:55
Оценка:
Здравствуйте, neFFy, Вы писали:

Отлично
... << RSDN@Home 1.2.0 alpha rev. 787>>
Re: Багло
От: xedin Беларусь http://natribu.org/by/
Дата: 05.03.08 17:21
Оценка: :))) :)
Здравствуйте, neFFy, Вы писали:

Вертолётный симулятор/тренажер адаптировали для Австралии. Заказчик потребовал добавить стада кенгуру как деталь ландшафта. Исполнитель отнёсся халтурно, сделал модель кенгуру и прилепил её методом copy/paste на логику пехотинца, поменяв только модуль отрисовки.
В результате, когда вертолет прошёл над стадом кенгуру, оные рассредоточились, перегруппировались и на втором заходе сбили вертолёт из ПЗРК...

Спорить не о чем — я прав
(с)cr lf
Re: Багло
От: maxluzin Европа  
Дата: 05.03.08 19:39
Оценка: -5
Здравствуйте, neFFy, Вы писали:

[...]

Ну про F-16 это известные истории. Кроме "глюков ниже уровня моря", известна ещё одна история, когда автопилот этих истребителей переворачивал самолёт вверх шасси, когда он пересекал экватор. Совсем недавно была какая-то информация в И-нете, что из-за программной ошибки в навигационной системе новейших F-22 "Raptor", которые во время перегона из Штатов в Японию, столкнулись с какими-то "глюками", связанными с меридианом перемены времени (как раз по Берингову проливу и ниже в Океанию идёт), многие показатели навигационных программ сбросились, и эскадрилии "игрушек", каждая из которых стоит по 300 млн. долларов, пришлось возвращаться на базу. Я понимаю, конечно, что у американцев ещё со школы с географией, мягко говоря, "не совсем хорошо", и все эти ошибки в итоге исправляются, но сколько ж можно наступать на те же грабли?! Это ж вроде классика, ещё с фортрановских времён всегда особым образом рассматривать пороговые случаи (рядом с нулём или в других точках экстремума)! Странно всё это...

А с игрушками, мне тут кажется в чистом виде байка... Я игрушки никогда не программировал (кроме "морского боя" на заре программерства на СМ ЭВМ), так что могу и кардинально ошибаться, но вроде при "захвате" объекта и "применения по нему" каких-то методов, первом делом следовало бы проверить тип объекта и допустимость применения по нему этого метода. Может там виртуальные функции не перегружались в классах-наследниках (очевидное объяснение, которое на ум первым приходит), но я не думаю, что там так чисто С-плюс-плюсно реализовывалось, скорее всего, должно было быть какое-то отдельное поле с кодом типа объекта... Как-то "свежо предание, да верится с трудом"... Либо программеры совсем уж "пофигисты и раззвездяи" были...
Re[2]: Багло
От: Vintik_69 Швейцария  
Дата: 05.03.08 21:17
Оценка:
Здравствуйте, maxluzin, Вы писали:

M> Либо программеры совсем уж "пофигисты и раззвездяи" были...


Ха. Насчет программистов не знаю, но вот то, что там код мог быть не высшей степени совершенства — это вполне могло быть
Re[2]: Багло
От: o.kostya  
Дата: 06.03.08 06:54
Оценка:
Здравствуйте, maxluzin, Вы писали:

M>А с игрушками, мне тут кажется в чистом виде байка...


Варкрафт2 от Близарда. Садишь в кораблик скелета, а выгрузить можешь своего юнита\вражеского юнита\башню смотря кто там построился на место умершего скелета.
... << RSDN@Home 1.1.3 stable >>
Re[2]: Багло
От: Трофимов  
Дата: 06.03.08 12:32
Оценка:
X>

X>Вертолётный симулятор/тренажер адаптировали для Австралии. Заказчик потребовал добавить стада кенгуру как деталь ландшафта. Исполнитель отнёсся халтурно, сделал модель кенгуру и прилепил её методом copy/paste на логику пехотинца, поменяв только модуль отрисовки.
X>В результате, когда вертолет прошёл над стадом кенгуру, оные рассредоточились, перегруппировались и на втором заходе сбили вертолёт из ПЗРК...


Programmers did add animated kangaroos to the simulation, and they did accomplish this by replacing the visual representation of soldiers with visual representations of the hopping marsupials (while neglecting to remove the weapons and firing behavior from these representations), but this was all done out of fun (not necessity), and this humorous glitch was discovered right away and not unwittingly (and embarrassingly) displayed to a group of visitors (American or otherwise). Additionally, as Dr. Grisogono related, "[S]ince we were not at that stage interested in weapons, we had not set any weapon or projectile types, so what the kangaroos fired at us was in fact the default object for the simulation, which happened to be large multicoloured beachballs."

http://www.snopes.com/humor/nonsense/kangaroo.asp
Re: Багло
От: alzt  
Дата: 06.03.08 14:04
Оценка: +2
Здравствуйте, neFFy, Вы писали:

В основном как я понял причина везде — плохо спроектированная иерархия наследования.
А вообще такие истории только повышают интерес к продукту.
Re[3]: Багло
От: maxluzin Европа  
Дата: 06.03.08 18:00
Оценка:
Здравствуйте, o.kostya, Вы писали:

OK>Здравствуйте, maxluzin, Вы писали:


M>>А с игрушками, мне тут кажется в чистом виде байка...


OK>Варкрафт2 от Близарда. Садишь в кораблик скелета, а выгрузить можешь своего юнита\вражеского юнита\башню смотря кто там построился на место умершего скелета.


Стратегии не люблю (на работе и без игрушек их всегда хватало), мне больше тупые "стрелялки" и "леталки" с "мочиловом" и адреналином больше нравились... За игрой в Варкравт и Старкрафт (вроде так называется?) наблюдал только со стороны (иногда наблюдать за чужой игрой больше эстетического наслаждения получаешь). Но если там такое предусмотрено (порождать что-то на месте сдохшего скелета), то почему бы и нет? Рождаются же люди в самолётах! А потом еще и гражданство другой страны "автоматом" получают...

Могли ли предполагать разработчики Кваки, что "rocket launcher" в некоторых случаях может использоваться, как и "rocket jumper"?...
Re[4]: Багло
От: Cyberax Марс  
Дата: 06.03.08 18:18
Оценка:
Здравствуйте, maxluzin, Вы писали:

M>Могли ли предполагать разработчики Кваки, что "rocket launcher" в некоторых случаях может использоваться, как и "rocket jumper"?...

Да. В Q2 было секретное место, куда добраться можно было только рокетджампом. Там ещё сообщение выводилось типа: "Ну ты и сумасшедший рокетджампер"
Sapienti sat!
Re[4]: Багло
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 06.03.08 18:20
Оценка: 1 (1) +2 :))) :)
Здравствуйте, maxluzin, Вы писали:

M>Могли ли предполагать разработчики Кваки, что "rocket launcher" в некоторых случаях может использоваться, как и "rocket jumper"?...


Выделенным, лично меня (как квакера) ты обидел до глубины души

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[4]: Багло
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 06.03.08 18:24
Оценка: +1
Здравствуйте, maxluzin, Вы писали:

M>Могли ли предполагать разработчики Кваки, что "rocket launcher" в некоторых случаях может использоваться, как и "rocket jumper"?...


Где-то читал, что во второй кваке большинство "неточностей физики" были введены специально ради strafe/circle/rocket и т.п jump'ов и распрыжек.

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re: Багло
От: ArtDenis Россия  
Дата: 06.03.08 18:40
Оценка: +1
Здравствуйте, neFFy, Вы писали:
FF>Если верить одной широко раскрученной байке

Давно уже так не смеялся, читая этот форум
... << RSDN@Home 1.2.0 alpha 2 rev. 854>>
[ 🎯 Дартс-лига Уфы | 🌙 Программа для сложения астрофото ]
Re[5]: Багло
От: maxluzin Европа  
Дата: 06.03.08 19:22
Оценка: 5 (2) :)))
Здравствуйте, kochetkov.vladimir, Вы писали:

KV>Здравствуйте, maxluzin, Вы писали:


M>>Могли ли предполагать разработчики Кваки, что "rocket launcher" в некоторых случаях может использоваться, как и "rocket jumper"?...


KV>Выделенным, лично меня (как квакера) ты обидел до глубины души


Ну уж прости... Я лично человек консервативный и последовательный, ракетами под ноги, чтоб запрыгнуть на второй этаж "не пуляю"... Да и без дополнительной брони или режима... э-э-э... "берсеркера" (?) — это очень рискованное действие... Хотя, видел, как в "дефматче" бывший админ — чемпион города по Кваке — поджидал, когда на него "навалятся", херачил под ноги ракетой, заваливая половину нападавших, и "уходил по крышам"... Наблюдать такое было полный восторг! Аплодисменты срывал!
Re[5]: Багло
От: maxluzin Европа  
Дата: 06.03.08 19:23
Оценка:
Здравствуйте, kochetkov.vladimir, Вы писали:

KV>Здравствуйте, maxluzin, Вы писали:


M>>Могли ли предполагать разработчики Кваки, что "rocket launcher" в некоторых случаях может использоваться, как и "rocket jumper"?...


KV>Где-то читал, что во второй кваке большинство "неточностей физики" были введены специально ради strafe/circle/rocket и т.п jump'ов и распрыжек.


Врут! Безбожно! Это из серии: "это не баг, это — фича!" Кодт это знает...
Re[6]: Багло
От: Сергей  
Дата: 06.03.08 19:30
Оценка:
Здравствуйте, maxluzin, Вы писали:

KV>>Где-то читал, что во второй кваке большинство "неточностей физики" были введены специально ради strafe/circle/rocket и т.п jump'ов и распрыжек.


M>Врут! Безбожно! Это из серии: "это не баг, это — фича!" Кодт это знает...


Не, не врут. В Quake1 — strafe jumping не планировался, просто так получилось.
Но всем так понравилось, что дальше подобные фичи стали делать специально.
Re[5]: Багло
От: maxluzin Европа  
Дата: 06.03.08 19:43
Оценка: 3 (1) :))
Здравствуйте, kochetkov.vladimir, Вы писали:

KV>Здравствуйте, maxluzin, Вы писали:


M>>Могли ли предполагать разработчики Кваки, что "rocket launcher" в некоторых случаях может использоваться, как и "rocket jumper"?...


KV>Где-то читал, что во второй кваке большинство "неточностей физики" были введены специально ради strafe/circle/rocket и т.п jump'ов и распрыжек.


В моей любимой игрушке "X3: Reunion", в которую уже играю пару лет (кстати, с подачи кывтовцев), есть такая фича: пристоковавшись к космической станции, можно не только купить/продать товар, но и прочитать доску объявлений (BBS), там иногда очень полезные миссии появляются, на которых можно неплохо заработать... Так вот, один из типов миссий есть такой: надо организовать туристический тур по красотам Вселенной. Неплохо платят, кстати, за такую миссию... Некоторые игроки (из "бывших советских", насколько я помню) додумались до такого: принимают на борт туристическую группу, получают за это "бабки", а потом летят в пиратский сектор и... продают в рабство всю туристическую группу поголовно, естественно тоже "за бабки"! В пиратских секторах по сценарию и логике игры торговля рабами вполне даже легальна. Ну кто из разработчиков мог бы додуматься, что две фичи (1)"туристические миссия" и (2)"продажа рабов" можно объединить в одну "логистическую цепь" ( ой, не могу! ), и на этом можно заработать "двойной навар"?!!! Ужос! Кто их этому учил в советских школах?!!!

Вот такие вещи в играх тоже бывают, о чем разработчики даже не подозревают...
Re[6]: Багло
От: Сергей  
Дата: 06.03.08 20:15
Оценка: :))) :)
Здравствуйте, maxluzin, Вы писали:

M>Вот такие вещи в играх тоже бывают, о чем разработчики даже не подозревают...


Есть популярная стрелялка под названием Counter-Strike. Для её выделенного сервера, который используется для работы в качестве интернет-сервере, существует множество всяких аддонов, позволяющих делать всякие интересные вещи на сервере — вроде ведения статистики игроков, голосований и т.п. Это в качестве введения, для тех, кто не в теме.

Так вот, на одном из игровых порталов г. Саратова у меня был знакомый админ, рассказывал мне забавную историю. Был популярный везде хвалимый серверный аддон, позволяющий передавать деньги другим игрокам. Было забавно, когда игроки стали друг другу передавать отрицательные суммы денег, т.е. попросту тырили их друг у друга.
Re[7]: Багло
От: maxluzin Европа  
Дата: 06.03.08 20:32
Оценка:
Здравствуйте, Сергей, Вы писали:

С> Было забавно, когда игроки стали друг другу передавать отрицательные суммы денег, т.е. попросту тырили их друг у друга.


Фи-и-и... Слишком прямолинейно... Так миллионерами не становятся! Вот я вынашивал идею, как в "X3. Reunion" создать такую туристическую базу в каком-нибудь секторе расы Телади (раса безбожных торговцев, где можно почти всё) поближе к пиратам, чтоб моды всякие особые не программировать, а потом потом продать полстраны пиратам в рабство... Пока без доп.программирования модов не выходит... А с доп.программированием уже не тот "спортивный интерес"...
Re[8]: Багло
От: Сергей  
Дата: 06.03.08 20:48
Оценка:
Здравствуйте, maxluzin, Вы писали:

M>Здравствуйте, Сергей, Вы писали:


С>> Было забавно, когда игроки стали друг другу передавать отрицательные суммы денег, т.е. попросту тырили их друг у друга.


M>Фи-и-и... Слишком прямолинейно...


Дык это же Counter-Strike. Там ничего хитрее и не бывает.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.