Red 2 the Ranger
silm50.exe
Это не бага, это фича!
(народная мудрость)
Тяжела и неказиста
Жизнь простого программиста…
(народная мудрость)
Все совпадения лиц, имен и ников в нижеследующем тексте с реальными
и вымышленными существами просьба считать умышленными и по умолчанию
игнорировать.
ONLINE.DLL
Жил-был программист. Жил неизвестно где, а был широко известен в
узких кругах под ником Эру ака Илуватар. Начинал с ассемблера, потом перешел,
как водится, на C++. И по ходу набрал неплохую команду разработчиков. Ребята
сочиняли код, а он чем дальше, тем больше постановкой задач занимался. И вот
однажды позвал он их всех и сказал:
- Есть у меня идея: создать онлайновую игру. Да не стрелялку тупую, а
полноценный симулятор мира, на порядок круче, чем Ультима Онлайн и ВечныйКвест.
Нашел я издателя-идиота, так что с деньгами проблем нет, и вот вам техзадание и
демо-ролик. Устроим же мозговой штурм, чтобы забацать проект офигительной
красоты. Давайте свои идеи, а я их буду записывать.
У народа случилось творческое озарение, и столько идей, великих и прекрасных,
породили они совместно, что если бы всё это закодировать, то сам Лорд Бритиш
повесился бы от зависти.
Но один из программеров, самый талантливый, решил, что соблюдать техзадание
ниже его достоинства. В той тусовке был он известен под псевдонимом Мелькор.
Много лазил он по Сети и сам потихоньку мечтал забацать нечто крутое и
онлайновое. А потому некоторые свои мысли начал продвигать, не заботясь о
балансе мира и соответствии с начальными условиями. Часть разработчиков его
идеями вдохновилась и начала фантазировать кто во что горазд, и напридумывали
они ТАКО-ОЕ, что Эру был прямо-таки вынужден предложить своей славной команде
перестать гнать лажу и заняться делом. А также напомнил, что заказчика всё-таки
он нашёл, а потому и музыку заказывает. Все осознали, а Мелькор обиделся.
И на основе того мозгового штурма сделал Эру демонстрационную версию мира,
откомпилировал и дал всем – посмотреть и побаловаться. Но не запускал туда ни
юнитов, ни юзерских персонажей, полагая, что сначала надо всё подготовить. И
столь красива была та демка, что часть программистов прямо-таки возжаждала
поскорее зафиксировать всё это в коде, чтобы оно само крутилось и радовало
взор, а также влезть в мир и посмотреть на него изнутри. Тут демка кончилась, а
Илуватар сказал:
- Кто хочет мне помогать программИть – добро пожаловать, скачивайте конструктор
мира и начинайте. А кроме того, мир нужно будет поддерживать: вот вам админские
привилегии.
Когда новоявленные админы впервые запустили свежеоткомпилированный exe-шник,
они слегка растерялись, поскольку узрели только темный экран. И поняли они, что
демка – демкой, а мир придется создавать ручками да по клаве. Так начались их
великие труды, скрашиваемые пивом и трепом в чате, пока не пришел час и не
была-таки создана первая планета: пустая сфера посреди пустого трехмерного
пространства. Манвэ, Ульмо и Ауле творили ее, и Мелькор им помогал (как он это
понимал), а когда они отвлеклись, быстренько заполнил пустую сферу пламенем
(gradient fill: flame), чтобы потом было из чего сотворить вулканы, ибо круто.
А после предложил, чтобы остальные занимались интерфейсом, видеодрайверами и
прочими интересностями, а мир разрабатывать поручили лично ему. Манвэ такого
авангарда не понял, и разработчики перессорились. Но в результате Мелькору
выделили кусок мира для единоличного творчества.
И напрограммили себе админы внутримировые воплощения – аватары – внешне похожие
на игровые расы, только круче, и обозвали их "валарами", чтобы не зацепить
ненароком чей-нибудь копирайт. Но могли обходиться и без них, оставаясь
невидимыми и как бы бесплотными. Они же пригласили участвовать в проекте
знакомых программеров и бета-тестеров, и часть из них тоже запустили в мир.
Мелькор увидел это и наваял себе жуткий облик, позаимствованный из игрушек,
начиная с DOOM и Heretic: кто его видел, у того отпадала челюсть, и тестер
мчался рассказывать коллегам, что встретил Самого Крутого Монстра. Когда таких
набралось много, они собрались большой толпой и отправились проверить этого
Самого Монстра на Крутость. Так началась первая в мире битва. Поскольку
некоторые действующие лица участвовали в ней не только как аватары, а и как
кодировщики, то в результате в мире оказалось дофигища гор, морей и разломов,
не предусмотренных в проекте. Особым шиком было подкачать свежепофиксенную
библиотеку прямо в процессе, да так, чтобы у оппонента под ногами разверзлось
море лавы, а сверху его прихлопнуть свежеотгроханным горным хребтом. О
цельности кода никто и не вспоминал, так что баги разгребать после этой тусовки
пришлось неделю. А особо стойкие глюки дожили до конца проекта, сопротивляясь
деятельности Ауле и Оромэ (эти двое влекли тяжкое существование деблохеров). И
все же это было не совсем напрасно: хотя ни в одном пункте техзадание не
осуществилось полностью, и всё работает не так, как обещали заказчику, однако
мир обрел более-менее жизнеспособное воплощение, которое уже можно было
показывать как раннюю альфу.
|