Приветствую друзья!
Удивительно наткнулся на этот форум, думал уже давно все исчезло в истории вместе с теми кассетами, магнитофонами и здоровыми телевизорами-мониторами
Отдельно хочу поприветствовать Андрея Чистякова, наверно глядя на которого я поверил в то, что написать самому игру более чем реально. Но по порядку
Я был школьником 8-9 класса в Н.Новгороде. Увлекался техникой и буквально бредил желанием иметь свой компьютер. Надо сказать что точно я не представлял зачем он мне конкретно) Накопив немного денег, приступил к убеждению родителей в жизненной необходимости такого приобретения. Как понимаете в 1991 году объяснить важность такой покупки было не так и просто. Собрав нужную сумму я пошел в магазин (не помню как он назывался, за Ярмаркой). Было на тот момент два ПК - Микроша и ПК Львив. Не знаю чем, может более радостной бежевой гаммой, но меня привлек последний. Все купил, несу домой, рот до ушей!
Спустя неделю я осознал, что софта мягко говоря маловато, а тот что есть от разработчиков ПК Львив мало функционален. Я начал искать альтернативы. И нашел их в магазине Фотолюбитель. Там и состоялась встреча с Андреем Чистяковым и его прекрасными разработками. Немного поиграв в эти замечатеьные игры я заинтересовался как же так это все работает. У меня был уже опыт работы в Бейсик, но ясно на нем далеко не уедешь. И вот тут я стал понимать, что все дело в последней странице инструкции к ПК! Да, там просто были перечислены коды ассемблера и регистры. Это наверно и стал переломный момент, когда я всерьез и надолго занялся программированием.
Долгие ночи наедине с дизассемблером, мало по малу стал понимать как это работет. Получилось сделать первый примитив, Робокоп стреляет во врага - тот умирает, до сих пор помню радость когда все ожило, задвигалось и конечно тот специфичный звук ПК.
Проект
Немножко окрепнув в программировании я решил сделать что-то стоящее и масштабное. За основу был взят сюжет с ZX Spectrum. Я взял здоровый лист миллиметровки и начал рисовать карту, насколько помню 8х8 или 10х10 комнат. Да, карта квадратная) Все внутри комнат укладывалось в определенную сетку. Каждый враг имел свой алгоритм движения и логику. Были серьезные проблемы с быстродействием, которые надо было решать. Как сейчас помню, когда Андрей сдвинул мой стандартный взгляд на использование команд ассемблера. Например, ПК был настолько медленный, что просто очистить экран циклом по пикселю происходило заметно, как опускание шторы. Он предложил простое решение использовать одну команду push чтоб забивать сразу 4 ячейки за один такт. Для моего неопытного мозга такой подход был просто прорыво) Надо сказать, что в дальнейшем код часто писался с "нетрадиционным" использованием команд, чтобы все "летало". Так в Disk John после разных экспериментов все движение объектов происходило не за счет вычисления каждого движущегося объекта, а просто перерисовкой всего экрана с учетом смещений фигур. Так оказалось быстрее и никаких остаточных артефактов.
Когда игра была доделана, немного побаловался со звуком, ПК можно было научить играть настоящую музыку и даже говорить) Не помню точно, но кажется я сделал двойной загрузчик, чтобы не скучно было ждать загрузку основной игры. И отдал Андрею, на тот момент он уже был матерый коммерсант и разместил игру в магазине Фотолюбитель.
Первый гонорар. Помню как встретился с Адреем, он дал мне деньги со словами - твой первый заработок. Помню тот диалог, я признался что это круто, но не знаю пока как и на что потратить. Чем вызвал улыбку у него, тогда уже студента (он-то знал уже хорошо
)
А сейчас когда прошло очень много лет, вспоминаю все это с улыбкой и теплом. Сейчас уже не многие программисты могут что-то накидат в кодах, но ведь было время
Спасибо тем замечательным людям, которые нашли время реанимировать все это из архивов и даже заставить работать!