|
Последний патч для WarCraft 3: The Frozen Throne. Многие карты НЕРАБОТАЮТ с этим патчем! Даже DotA 6.61b (уже вышла 6.61c, которая работает), а также множество карт было убито для Battle.net (Garena пока не торопится переходить на 1.24). Почему? Читайте дальше... Не так давно из форумов Blizzard стало известно о новом ВИРУСЕ, который распространялся через карты для WarCraft 3: The Frozen Throne! Вы заходитве в созданную игру, загружаете инфицированную карту и после того, как игра начнется, вирус заражает вашу систему. Предположительно, этот вирус крадет CD-Key для игры на Battle.net Такой "прикол" возможен из-за интересной возможности карт WarCraft - Return Bug. В картах WarCraft 3 можно писать собственные процедуры и фунции (и нетолько) на внутреннем языке JASS. Return Bug (RB) - это такие функции. Например, пишется так: Code function unit2int takes unit u returns integer return u return 0 endfunction Тут дело в том, что дерактор проверяет возвращаемое значение по последнему оператору return а выполнение кода функции прекращается после первого встреченного return (или на endfunction). Таким образом возвращается адрес объекта в памяти в виде целого числа. Это число можно превратить обратно в юнита: Code function int2unit takes integer i returns unit return i return udg_unit endfunction Открыто это было, минимум, в 2005 году, но все (похоже, и Blizzard) считали RB безопасным. Но вот оно - случилось. И Blizzard убрали RB, сделав заместо него Хэш Таблицы, выполняющие этиже функции. Вот только, ВСЕ карты, которые использовали RB были "вознаграждены"... Даже DotA 6.61b (последняя на время выхода патча) неработала и все играли (на Battle.net сам видел) в 6.59b... Многие карты, из тех, что были таким образом убиты, врятли будут переделоваться для нового патча... Поэтому решайте сами, нужен ли вам этот патч! Добавлю, что новые карты (сделанные в 1.24 редакторе), использующие Хэш таблицы также небудут работать в 1.23 (и ниже)... Автор статьи - SLY (сайт: EpicMap.ru)
| | |