Lost Alpha: Блог разработчика #1


Приветствую всех. Решил завести блог по Lost Alpha, где я выскажу несколько своих мыслей касательно этого проекта. Если такая идея будет интересна читателям, то, может быть, у блога будет продолжение.

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

- Компания GSC взялась за проект Lost Alpha и полностью его контролирует.

Это не так. Для того чтобы компания была заинтересована в проекте, он должен быть соответствующего качества. На данный момент требуемое качество не достигнуто, хотя список нужных исправлений от них был давно получен, и проект находится в процессе исправления.


- Компания GSC потребует вырезать некоторые фичи из Lost Alph’ы, и произойдет история как ТЧ.

Такого, скорее всего, не произойдет. Подобные вещи произошли с ТЧ из-за THQ или их самих. Тут же ситуация иная, THQ уже никаким боком не относится. Однако «фичекат» может произойти к концу разработки проекта. Уж этого не избежать, к сожалению. В большинстве игр такое происходит. Даже в недавнем Метро ЛЛ был «фичекат», тем не менее игра вышла очень знатной.


- Сколько можно исправлять баги? Уже можно было десять раз их исправить за столько то времени.

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

Баги в движке:

Приведу пример основных багов, которые были в ноябре и как мы их исправляли. На тот момент в движке было три основных бага, которые не требовали отложения, ибо мешали прохождению (некоторые из них были написаны в списке требуемых исправлений от GSC):

1)    Баг с гулагами. Когда игра некоторое время начинала жутко тормозить. Думаю, понятно, что в игре такие лаги не допустимы. Причина искалась несколько месяцев и была найдена по чистой случайности. Скажу, что причина была не простая и догадаться, чтобы баг был в этом файле, было невозможно.

2)    Баг в скриптовой системе. Честно говоря, уже не помню, в чем он заключался, но исправили в январе.

3)    Баг, который мешал закончить игру. Мы называли этот баг  - «баг с лестницей». Этот баг мы смогли исправить, насколько я помню, в марте - апреле. Сначала мы думали, что он рандомный и игра вылетает, когда хочет. Потом узнали, что надо пройти полностью всю локацию и тогда он будет появляться стабильно. Подобный вылет не встречался вообще ни у кого из игроков в интернете. Вылет говорил о некорректности какого-то объекта, более информации не было, да и вообще информация в вылете была очень странной. Я решил добавить информацию об объекте в вылете. Лог игры грешил на одну из лестниц. И тут началось… пробовали двигать лестницу на более корректное место, удалять и создавать новую, так как параметры прошлой лестницы могли быть сломаны (удалять лестницу нельзя, ведь тогда по сюжету нельзя будет пройти игру); удалять аи-сетку на этом месте, однако изменений в логе не произошло. Позже я заметил, что один раз в логе был написан объект – аномалия. В СДК этот объект был не сфероидным, а являлся параллелепипедом, как лестница. После удаления лестницы и аномалии лог сулил на другие аномалии имеющие форму параллелепипеда. Это было очень странно, ломали головы над этим. Удаляли все аномалии, и, по-моему, это результата не дало, хотя когда я удалял скриптом все спавн-объекты, вылета не было. Очень долго с этим копались, пока в один прекрасный момент в дебаг-режиме не написалось то самое сообщение, которое нас спасло. Оказалось, что у GSC в движке была написана ошибка в классе объектов лампочек, в котором из-за переполнения одного значения намертво висла часть игры, выполняющую одну операцию со всеми объектами игры. В ТЧ этот баг в движке есть, насчет ЧН, ЗП не знаю. То есть тогда, когда я удалял все объекты с локации, лампочки тоже удалялись, и соответственно, бага произойти не могло. Однако, почему игра постоянно ругалась на лестницу, а потом на аномалии, имеющие форму параллелепипеда, до сих пор остается для меня загадкой.

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

 

Расскажу также про баги в скриптах, почему они возникают.

 

Баги в скриптах:

Люди в команде приходят и уходят на протяжении всего времени разработки. Не редко хорошие скриптеры (как и программисты) хотят работать над своим проектом/игрой на своей скриптовой системе/своем движке. Подобная вещь не обошла и Lost Alph’у стороной в плане скриптов. А скриптовая система, как известно, связывает практически все скрипты игры. Так вот, при смене скриптовой системы можно попросту не заметить какой-либо скрипт или подумать, что он уже не используется. Он останется на старой скриптовой системе, т.е. он станет фактически не рабочим. Ну а далее, он забывается и в дальнейшем может быть отключен геймдизайнерами как нерабочий. Таких скриптов не один и не два. Я видел не исправленные скрипты на скриптовой системе аж 2010 года от barin’а (скриптер на то время). Более того, у каждой скриптовой системы есть свои заковырки, которые новые скриптер может не понять или понять по-своему, что в дальнейшем вызовет фризы и баги. С момента, как я пришел в команду, скриптовая система менялась два раза, что увеличило количество багов в скриптах. «Почему же нельзя всегда работать на одной и той же скриптовой системе?» - можете спросить вы. Потому что скриптеру всегда удобно работать только на своей системе, когда все утилит-функции под рукой и скрипты вызываются как тебе нужно, а не как кому-то захотелось; ну или скриптер категорически не согласен с этой системой, считает, что «то и это не должно так работать, должно быть по другому». Это одна из причин возникновения багов. Также есть банальные ошибки к скриптах и конфигах, от этого никто не застрахован :)

 

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


- Они там несколько месяцев заменяют одни деревья? На это уйдет от силы недели две.

Изначально я не хотел отвечать на этот вопрос, однако хочу все-таки ответить, дабы подобных странных вопросов по поводу деревьев больше не возникало. Деревья, которые сначала были в Lost Alph’е, частично взяты из билдов. Соответственно, эти старые деверья были малополигональными и имели не очень хорошие текстуры. Когда решили заменять деревья, решили не ограничиваться заменой текстур, а решили сделать также замену моделей. А теперь посчитайте, сколько времени уйдет замену всех деревьев в 3д редакторе, потом проверка геометрии в СДК каждого дерева/кустика, тестовую компиляцию уровня, проверку в игре всей геометрии и компиляцию уровня на максимальном качестве. Сейчас еще много предстоит работы с деревьями.


- Почему разработчики не делятся информацией и не пишут статей о проделанной работе?

Почему не пишут? Пишут, только не получается делать это часто.  Если вас интересует, чем команда занимается на данный момент, вы всегда можете спросить на официальной странице мода на ModDB.


Ладно, вроде на всё ответил :) Если подобная информация в виде блога читателей устроит, то, может быть, получится что-нибудь рассказать, например, про то, над чем на данный момент я работаю/работал в проекте, или что-либо еще. 

До встречи.

Источник | Категория: Дневники разработчиков | Добавил: SkyLoader Теги: S.T.A.L.K.E.R, Lost Alpha
Коментарии
VeRtex 28.08.2013, 14:52 #35 +2  
SkyLoader, побалуй нас новым выпуском smile
SkyLoader 31.08.2013, 20:35 #37 +4  
Чуть позже smile
UX-3000 19.08.2013, 13:55 #34 0  
Да и неудобно говорить, что группа людей бесплатно работает в поте лица, а кто-то будет из них тянуть последние копейки за дистанционную работу. Я считаю, что если взяли такую планку, то ДОЛЖНО БЫТЬ СТОРОННЕЕ ИЛИ ЛИЧНОЕ ФИНАНСИРОВАНИЕ, без этого сейчас никак. Ну и бесплатная помощь от других команд и комрадо обязательна, консультантов проекта никто не отменял. Суть всего того, что я говорил в том, чтобы в путевой карте проекта были зашиты статьи расходов на дистанционную работу и связи с беплатными консультантами. Пока об этом не было сказано ни слова, но думаю, что разработчики ЛА имеют таких помощников.
UX-3000 19.08.2013, 13:51 #33 0  
Да что вы привязались к этим деревьям? Вон мапперы часто делают сырые паки локаций - там куча железобетонных кустов и висящих деревьев, но люди же играют - бегают на таких локациях. Допиливать и исправлять в процессе оной разработки - это очень сложно. Возможно сначала нужно было чётко определиться с полной путевой картой проекта, потом уже бета-тестерам отдать шутрвал в руки - пусть ищут провалы под локации и другие баги. Даи тестеры, если их брать из числа опытных мод-мейкеров, занимающихся другими модами, могли бы сами сделать баг-фиксы и патчи, исправляющие косяки - если проект был бы хоть чуточку более открытым для сталк-коммьюнити. Что касается текучки кадров, то это решается финансово - привлекать частных спонсоров проекта (искать их везде и всегда), или использовать наёмный труд - мапперов, моделлеров. В будущем частников можно будет перетащить в коллектив энтузиастов - они втянутся в процесс. Но проблема с финансированием всегда важна...
jein 03.08.2013, 11:59 #32 +2  
SkyLoader, будет ли исправлен баг вызывающий фризы при переходе объектов и НПС из оффлайна в онлайн? И не говорите что этот баг малозначителен и не заметен.
SkyLoader 31.08.2013, 20:32 #36 +1  
Все из-за прогрузки моделей, анимаций и текстур объекта (ну еще скриптов, и в движке создание данных) при его создании. Это исправить не так просто, но на топовых компьютерах это практически не заметно.
max_im_ka 03.08.2013, 01:11 #31 +1  
Все супер, Ждем еще.
FrozenHeart13 01.08.2013, 02:06 #30 +1  
хороший бложик tongue
YKROP 30.07.2013, 23:40 #28 +1  
Давно так надо было.
crocop 30.07.2013, 15:41 #27 +1  
Жду продолжения, понравилось!
[Partisan] 30.07.2013, 12:00 #23 +3  
Ха, мою картинку использовали! biggrin
Помню, года три-четыре назад решил один скриншот обработать и выложил на lost-alpha.com
Вот тебе и на tongue
Max_Warlock 30.07.2013, 11:18 #22 0  
Насчет проблем со скриптерами - нормальные скриптеры пишут комментарии к замороченным местам какбэ wink
1-10 11-20 21-26
Добавлять комментарии могут только зарегистрированные пользователи. Войдите или зарегистрируйтесь