Забавная была игрушка «Wolf5K». Это игра на JavaScript, занимающая пять килобайт (!). Был такой конкурс когда-то — «The 5K», цель — уместить что-нибудь толковое в 5 килобайт.
Ребята произвели фурор тогда, они уместили в этот размер небольшую псевдотрёхмерную бродилку. Никаких CANVAS! Хитрость в том, что вся графика (кроме кровищи) делается в формате XBM и передаётся тегу IMG через схему «javascript». Игрушка работала в IE5, IE6, Mozilla 1.1+ и Netscape 4.77 для Мака.
Формат XBM — это текстовый формат чёрно-белых картинок (я даже когда-то делал библиотеку для PHP Image::XBM). Его удалили из IE в SP2, работает ли это до сих пор в Gecko-браузерах я не знаю (у меня сейчас не установлен FF, а ставить лень), а «Опера» не читает графику через схему «javascript», так как никогда не делает попыток угадать контент по содержанию. Только по MIME-типу.
В общем, захотелось мне почему-то вспомнить эту игрушку, а она у меня не работает. Ну, делов-то. Заменить схему «javascript» на чуть доработанную «data». Вот патч, нужно открыть окно игры, скопировать его в строку браузера и нажать «Enter»:
javascript:void(eval(X.toString().replace(/"j.*?;"/, '"data:image/x-xbitmap," + encodeURI(im)')))
В IE по-прежнему работать не будет (в нём нет XBM), в «Хроме» тоже не должно, в «Опере» — заработает. Если у кого-нибудь установлено что-то ещё, попробуйте и скажите получилось ли.
Добавлено утром: читатели сообщают, что в «Сафари» тоже работает.
Комментарии 21
Забавно, я думал WebKit не понимает XBM.
Работает с патчем.
Супер!
Пожалуйста, кстати, в Chrome (6.0.447.0 dev) и Opera (10.54) под той же MacOS (10.6.4) тоже работает, а вот Firefox 3.6.3 отказывается.
Дико забавно.
Комментарий для unno.ru:
Видимо, под MacOS всё несколько иначе работает.
Ага — сейчас проверил на работе — та же сборка оперы — не пашет. Вроде отличий никаких — и на работе, и на нетбуке — XP.
Уже известил о столь печальном событии разработчиков.
Если в menu.ini прописано такое:
Item, «Download»=Execute program, «dmaster.exe»,"%l %u"
То при запуске качалки урл и реферер будут указаны как один аргумент:
dmaster.exe " http://site.com/file.zip http://site.com/page%22
В 10.10 работает нормально, в свежих — нет.
А, понятно.