?

Log in

No account? Create an account

Previous Entry | Next Entry

Прочитал интересную статью о баге в игре Civilization. В первой версии этой игры, если среди AI был Махатма Ганди и игра доходила до поздней стадии (с атомными бомбами), то Индия устраивала ядерный апокалипсис.

Причина оказалась следующая. У каждого AI был задан уровень агрессии, на который отвели один байт. У непротивленца Ганди этот уровень был равен единице. На поздней стадии игры цивилизации переходили к демократии, и при этом уровень агрессии понижался на два пункта. Но так как переменная была unsigned, попытка вычесть 2 из 1 давала 256-1=255. После чего гиперагрессивный Ганди взрывал к чертовой бабушке планету.

Баг нашли и исправили, но по традиции во многих версиях игры Ганди в определенных ситуациях (например, при поражении на переговорах) сходит с ума и начинает кидаться атомными бомбами. Этакое пасхальное яйцо для старых игроков.

Иногда мне кажется, что ошибки в наших моделях делают последние гораздо реалистичнее.

Comments

( 12 comments — Leave a comment )
3mer
Nov. 26th, 2016 03:15 pm (UTC)
Ну, да. Есть же генетичечкие алгоритмы оптимизации, которые играют со случайными числами.
Да и вся эволюция на случайной изменчивости.
Так что случайное не случайно.
Это хитрый план )
kray_zemli
Nov. 26th, 2016 05:14 pm (UTC)
Нет ли здесь ошибки в наших моделях? Любой сложный процесс выглядит случайным при наблюдении со стороны.
3mer
Nov. 27th, 2016 01:06 pm (UTC)
на самом деле наши в общем модели случайны.
Моделей и теоретиков тьма.
И решений для одной и той же проблемы тьма.
Исключение электростатика - там одно единственное решение, как ни решай.
vladimir000
Nov. 26th, 2016 03:41 pm (UTC)
В первой цивилизации ядерную войну можно было вести хоть доупора, никакого взрыва планеты не происходило:)
kray_zemli
Nov. 26th, 2016 05:09 pm (UTC)
Ядерный взрыв оставлял загрязнения. Если загрязнения долго не вычищать, наступало глобальное потепление. Оно приводило к заболачиванию местности.
vladimir000
Nov. 26th, 2016 05:20 pm (UTC)
Но выиграть-то это не мешало:)
qkowlew
Nov. 27th, 2016 08:45 am (UTC)
Глобальное потепление и заболачивание и так наступало, если просто долго продолжать играть после отлёта корабля.

Я как-то развлёкся, взорвав около 2 сотен атомных бомб по городам.
"Неубедительно".

kray_zemli
Nov. 27th, 2016 11:07 am (UTC)
Может, у меня версия была другая? Насколько помню, была чёткая связь между глобальным потеплением и квадратиками с Pollution, которые появлялись не только вокруг ядерного взрыва, но и время от времени сами по себе, от дымящих фабрик.

Если все ваши 200 бомб попали в одну воронку, то квадратиков с загрязнением получилось как от одной.
qkowlew
Nov. 27th, 2016 11:38 am (UTC)
Ну некоторыми да - в одну цель.
В целом я тогда обеспечил атомными ударами все города, кроме своих. :)

Загрязнение - да, просто от промышленности, тоже было, конечно.
recoder
Nov. 26th, 2016 05:46 pm (UTC)
Ну так errare humanum est, ошибаться - это наше, человеческое!
emirr
Dec. 10th, 2016 07:49 pm (UTC)
У меня он однажды (а 5 циве) парой ядерных бомб пол-армии уничтожил.
( 12 comments — Leave a comment )

Profile

knot
scholar_vit
scholar_vit

Latest Month

February 2018
S M T W T F S
    123
45678910
11121314151617
18192021222324
25262728   

Tags

Powered by LiveJournal.com
Designed by Paulina Bozek