Gamedev LectureФорум

Мой быдлокод вас огорчает, часть 1 (комментарии)

#0
10:44, 17 июня 2011

Мой быдлокод вас огорчает, часть 1 (комментарии)

Это сообщение сгенерировано автоматически.

#1
10:44, 17 июня 2011

Спасибо, а в описанные игры можно поиграть?

#2
10:49, 17 июня 2011

"DOOM Ы" где-то в старых архивах, надо попробовать найти. Леталку через некоторое время скину, как дома буду. Но игры - отстойные)))

#3
10:55, 17 июня 2011

Без скриншотов даже читать не хочется.

#4
10:56, 17 июня 2011

Alprog
Есть истина в словах твоих, исправлю.

#5
22:55, 18 июня 2011

Интересно, в каком году писалась игра на Turbo Pascal? Если не ошибаюсь, эта среда морально устарела в середине 90х. Это не критика, просто замечание. Я сам в начале 2000х писал набросок игры в этой среде. Работал в DOS. Изображение создавалось векторным способом через линии, кривые, заполнение контуров (модуль graph).

Помню, была в Turbo Pascal команда копирования части экрана, но там было жесткое ограничение на объем копируемой памяти. Т.е. блиттируемая картинка была слишком маленькой для серьезной работы.

Конечно, реальные игры никто на Turbo Pascal не писал. Даже С в то время (до середины 90х) было слишком тормозным для этого. Для написания игр использовался Assembler.

В том, как Ваша команда выполняла проект есть одна положительная черта. Вы поставили перед собой реально достижимую задачу. Очень многие начинающие разработчики сразу хотят создать шедевр, а это практически невозможно.

#6
11:25, 19 июня 2011

old_proger
Хех. Это дело писалось 6 лет назад, то есть в 2005. На дворе ожидался F.E.A.R., а мы писали игры на Turbo Pascal. Все объяснялось предельно просто. После 9 класса я отдыхал в летней физико-компьютерной школе, и наш препод по информатике поставил нам задачу - за время пребывания в этой школе сделать игру на Turbo Pascal, у нас было около 10 дней на это. К тому моменту я уже имел некоторый опыт работы с трехмерными движками - леталка, вторая игра в статье, была сделана за год до этого.
На тех компах, что мы имели в распоряжении, не было даже мышек - не говоря уже о DIrectX'ах)

А постановка достижимой задачи была связана с тем, что сроки были четко оговорены и не было никакой возможности их увеличить.

#7
19:45, 19 июня 2011

Спасибо за статью, очень занятно).

#8
12:11, 20 июня 2011

хм...заголовок статьи о быдлокоде, но в статье ничего толком не сказано про быдлокод. Про именование функций - слишком уж банально и очевидно. Статья больше походит на мемуары "о славных похождениях Петьки и Василия Ивановича". Использование матрицы вместо отдельных эвентов не означает, что в игре не будет быдлокода. Ожидал увидеть архитектурные решения, паттерны, тесты(модульные и не очень), используемые библиотеки. Было бы неплохо рассказать о том, использовались ли у вас код-ревью системы
P.S.
Сорри, если получилось слишком грубо, но такое первое впечталение от статьи.

#9
14:04, 20 июня 2011

Ravager
Хм, под быдлокодом здесь понимаются архитектурные решения, а не имена функций - они больше относятся к стилю. В принципе, могу выложить свои старые исходники или их фрагменты - но сомневаюсь, что они кому-то будут интересны.

Что касается матрицы - это всего лишь схема, поясняющая взаимодействия между игровыми объектами, к быдлокоду отношения не имеющая.

Основная суть статьи указана в предисловии - демонстрация накопления сложности даже в мизерных проектах. Возможно, это позволит хотя бы нескольким начинающим разработчикам понять, что сделать убийцу Крайзиса у них, скорее всего, не получится, начните с Пакмена или Тетриса. Если эта мысль от читателей ускользнула - значит, я плохо написал статью.

Название статьи было выбрано в конце - я посчитал его достаточно простым и запоминающимся, хотя оно не совсем точно отражает ее суть. А если начистоту, то это название пришло прямиком из моего быдлорассказа "Творец".

#10
16:10, 20 июня 2011

  Согласен с Ravager, было бы неплохо привести примеры быдло-кода к статье.

#11
17:23, 20 июня 2011

Прошу внести изменения, матрица выложена ввиде картинки, которая занимает весь экран и текст с неё нельзя скопировать, удобнее будет если сделать такую аккуратненькую таблицу, просто скопируйте предложенный код.

Матрица взаимодействия при контакте

УровеньСамолётРакета
УровеньНет событий
СамолётУничтожение самолётаУничтожение обоих самолётов
РакетаУничтожение ракетыУничтожение ракеты, уменьшение здоровья самолётаУничтожение обеих ракет

<h1>Матрица взаимодействия при контакте</h1>
<table border=1>
<tr><td></td><td>Уровень</td><td>Самолёт</td><td>Ракета</td></tr>
<tr><td>Уровень</td><td>Нет событий</td><td></td><td></td></tr>
<tr><td>Самолёт</td><td>Уничтожение самолёта</td><td>Уничтожение обоих самолётов</td><td></td></tr>
<tr><td>Ракета</td><td>Уничтожение ракеты</td><td>Уничтожение ракеты, уменьшение здоровья самолёта</td><td>Уничтожение обеих ракет</td></tr>
</table>
#12
10:09, 21 июня 2011

Володя
Спасибо! Сначала сам так хотел, но не разобрался. Исправляю.

Gamedev LectureФорум

Тема в архиве.