.h
[info]ano_nimus
Журнал о разработке казуальной игры в жанре Hidden Object & Puzzle Quest.

Текущий статус: Работаем во всю.

Значительная часть записей имеет  "программерский" уклон.

Некоторые записи в режиме Firends Only. Оставляйте комменты к этой записи -- зафренжу (какое дурацкое слово О_о).
Если не сложно, добавляйте пару слов о себе — хочется знать с кем общаешься.

Комментарии  к этой записи скрываются.
  • Add to Memories

Release: Collector's Edition
[info]ano_nimus
http://www.bigfishgames.com/download-games/12477/dark-dimensions-city-of-fog-ce/index.html

Ура-Ура :)
  • Add to Memories

Проблемы #3
[info]ano_nimus
Модульность.

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

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

Однако такая ситуация, когда мы вынуждены отдавать весь код ради написания одной несчастной мини-игры явно является патологической, вы не находите? В след. части я безусловно не сделаю такой-же ошибки, а вам рекомендаю подумать о модульности заранее. Чтобы можно было взять код отвечающий за взаимодействие ядра движка с мини-играми можно было легко отделить и собрать отдельным проектом. Существует множество способов это сделать, я думаю что вы прямо сейчас с легкостью придумаете 2-3. При таком подходе выиграют все, вы будете знать что наружу ушел только код не представляющей особой ценности, а программист-аутсорсер избежит соблазна (или не дай бог необходимости!) изучать ваш код который безусловно представляет собой интеллектуальную собственность компании и возможно является объектом коммерческой тайны.
  • Add to Memories

Почти некропост!
[info]ano_nimus
[info]lampogolovii 
привет!
а я вот все никак не могу найти нормального музыканта, чтобы написал подходящую музыку для игры.
не подскажешь, где именно ты искал композиторов для своего проекта? и какие, если не секрет, цены у них?
заранее спасибо!


нормальный музыкант понятие очень растяжимое :)
я знаю случай когда человек писал очень крутую музыку, но сделать игровые звуки для него оказалось сложной задачей. и наоборот, человек который делает отличные звуки в музыке уже не так хорош. цены у всех разные, конкретно наши я не могу озвучить по понятным причинам, но они не сильно отличаются от средних по рынку.
есть компании которые хорошо себя зарекомендовали, их легко можно найти по отзывам на том-же DTF. а цены опять-же зависят от сложности задач. полная озвучка на проект может стоить от 100$ и практически до бесконечности.

[info]tirexik 
И снова пропали так надолго!
Как дела?


Дела хорошо, правда работы очень и очень много.
  • Add to Memories

Проблемы #2
[info]ano_nimus
Аутсорсеры.

Где-то сидят люди которые за фиксированную плату делают конкретную работу, звучит здорово, не так ли? На практике же аутсорсеры это полный пиздец. Если конечно у вас нету одной из трех вещей: 1. кучи времени 2. кучи денег 3.наплевателького отношения к качеству. Да-да, тот самый классический треугольник, выберите любые две позиции. Почему-то изначально мы ожидали от аутсорса большего.

Русскоязычные аутсорсеры это полный шиздец, повторюсь. Во первых дофига неадекватных людей, школьники, студенты, просто дибилы. Пользы от их внимания к вашим "лотам" никакой, но продираться через их флуд занятие не из приятных. Вторая "каста" это ОЧЕНЬ дорогие спецы, причем определянная их часть просто дорогие, по профессионализму не намного выше среднего. Остается дай бог процентов 30 людей которых потенциально можно нанять.

Мы работали с 4 или 5 аутсорсерами. Двое делали мини-игры, одна рисовала сцены, один делал 3д-модели с анимацией и еще кто-то был, кого я уже не помню. Из 5ти человек отработал безупречно всего один. Остальные валили сроки, рисовали черт знает что или не умели нарезать 3д-рендер в 2д (с этой мини-игрой я протрахался почти 4 дня, ужас просто, нарезка вырывала мозг).

Пара советов:

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

Всегда подписывайте НДА, по котрому четко прописано можно ли человеку выкладывать работы в портфолио и если можно то когда. Я считаю нормальной задержку до выхода проекта, скажем года должно хватить. Убедитесь что он понимает смысл договора и возможные последствия разглашения.

Пропишите в договор штрафы за опоздания, часто это работает лучше чем просто напоминания. Стандартный 1% в день не подойдет, это слишком мало. Обычно аутсорс заказы колеблются в районе 500$, что такое 5$? Почти ничего, человек спокойно провалит сроки на день и то и два, подумаешь 300 рублей когда стоимость заказа 15К. А для вас эти два дня могут стоить очень дорого.

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

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

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

Вроде все, если что не рассказал про аутсорс то спрашивайте.
  • Add to Memories

Проблемы #1
[info]ano_nimus
Как и обещал в предыдущем посте, буду писать про проблемы которые у нас возникали и/или возникают.

Итак, 3:34 ночи, я в офисе, заливаю версию. Ночевать в офисе мне уже не в первой и это и является проблемой.
Причины две: ошибки в планировании, и недостаточная работа над этими ошибками после их возникновения.

ВСЕГДА оставляйте запас на программерские задачи хотя-бы в два дня, иначе трудно. Под программерскими задачами здесь я понимаю в том числе сборку уровней, т.к. у нас этим занимаюсь я. И очень жестко контролируйте сроки художников, т.к. если художник опоздал, то мы имеем сразу две проблемы:
1. Собственно само опоздание по графике, что уже плохо.
2. Программер/сборщик сначала сидит без дела (нет арта) а потом у него сразу куча работы, т.к. сборка опоздавшего арта накладывается на другие запланированные заранее задачи.

Безусловно аджайл решает, но применять те-же итерации не так просто как кажется на первый взгляд, хотя-бы потому, что есть куча переделок о которых вы узнаете в последний момент, и под которые у вас не будет запланировано время. Причем они могут быть как на 30 минут рабочего времени, так и на 2-3 полных дня и то и ночи.

Вернемся к изначальной проблеме: опоздание по арту, как ее решать? Во первых четко дать понять художнику что у него есть конкретный срок. Лучше если срок давать с запасом, но не говорить об этом. В идеале арт всегда должен быть готов раньше чем планировалось, регулярные запланированные опоздания это так-же плохо как обычные опоздания, т.к. художник привыкает опаздывать и когда будет действительно срочная задача он опять опоздает, и это будет фейл.

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

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

Вопросы&Ответы:
> Вопрос - сколько планируете еще потратить времени на доработку проекта?
Идеал - 3 месяца, но меньше чем за 4.5 думаю не управимся. Не считая локализаций на 7 языков и мак-версии (тоже 7 языков).
Причем это скорее не доработка а разработка, т.к. пока сделана мЕньшая часть (по контенту), но бОльшая по кодобазе.

> Ну и, естественно, вопрос - какие именно проблемы стали неожиданностью?
Почти все. Изначально казалось, что с нашим опытом мы сможем проблем избежать, как минимум бОльшей части. Это было ошибкой, огребаем по полной. Причем ошибки которых удавалось избегать первые месяцы, начинают вылезать сейчас. Частично это объясняется тем, что это первый проект нас как одной команды.

  • Add to Memories

(no subject)
[info]ano_nimus
Собственно всем привет, прощу прощения за длительное молчание.

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

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

Некоторое время я буду постить сюда именно проблемы которые у нас возникали, иногда с решениями иногда без. Возможно буду давать какие-то советы от себя лично, но ( дисклеймер ) относится к ним следует просто как к частному мнению одного человека.

Как всегда жду ваших вопросов, спасибо что не бросили следить за этим жж.
  • Add to Memories

o_o
[info]ano_nimus
Кто здесь?
  • Add to Memories

Работа с продюсером
[info]ano_nimus
Наконец дошли руки до давно обещанного поста про работу с продюсером. Сразу оговорюсь, что напрямую с продюсером лично я не общаюсь. Во-первых по иерархии не положено :), а во-вторых уровень английского не позволяет грамотно и спокойно писать на английком. К счастью у нас есть супер-человек, который в числе прочего занимается общением с "высоким руководством". Что касается меня, как программиста, то для меня общение с продюсером заключается в чтении фидбеков и последующем доведении своих комментариев до коллег.

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

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

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

Про фидбек на демку скажу отдельно. Фидбек просто отличный, разобрали все по полочкам. Значительная часть замечаний было предугадываема заранее, т.к. мы прекрасно видели слабые стороны демки. Но продюсеры, как я понял, работают по принципу "что видим о том и говорим". Если они видят что-то не очень хорошее, то сразу пишут об этом. Причем пишут настолько корректно и вежливо что первое время было трудно привыкнуть.

Тут я сделаю небольшое отступление. С русскими продюсерами мне общаться в качестве исполнителя не приходилось, но я видел как работают продюсеры внешних проектов в тех компаниях где довелось поработать, о них и буду говорить. "Они" командуют! Что-то решили и командуют, причем зачастую мнение разработчика не очень-то и учитывается.

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

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

Фидбек обычно приходит за 2 подхода, сначала приходит письмо мол "все получили, скоро напишем фидбек" а потом (через день-другой) приходит сам фидбек. Фидбеки написано понятно (по крайней мере я читаю без проблем), если для пояснения вопроса нужно картинка они ее вставляют. Например в демо-версии инвентарь не имел ни слотов, ни даже надписей над предметами. Так продюсер на картинке все предметы расставил, рамочки обвел, подписи поставил, чтобы вообще никаких вопросов не возникало, на картинку посмотрел и сразу понял, что именно продюсер имеет в виду.

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

Ну кажется про все рассказал. Если что-то упустил -- пишите, постараюсь рассказать поподробнее.

P.S. Журнал открываю пока, так что если есть кого пригласить в дискуссию то велком. Только просьба без броад-каста типа постинга ссылок на дтф, неадекваты тут не нужны :)
  • Add to Memories

Ответы на вопросы
[info]ano_nimus
Сегодня отвечу на вопрос из комментов:
Можете рассказать, какая часть игры программируется на данном этапе: квесты, миниигры, инструментарий, портирование и т.д.? И что из этого у программиста отнимает наибольшее количество времени?


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

До прошлой недели бОльшую часть времени (процентов 90) занимала сборка уровней, сейчас небольшое затишье (контента для вставки пока нет) и поэтому процентов 85 времени, или даже больше, уделяю программированию. Это очень хорошо, смогу сделать несколько важных задач. А вот через неделю-две этого контента свалится просто невообразимое кол-во: уровень, пара сцен и звук еще.

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

Кстати по поводу инструментария :)
У нас его практически нет, студия да фотошоп, как-то больше ничего не нужно было, пока по крайней мере.

p.s. Может открыть блог обратно? Почитал сейчас, вроде как страшного и нарушающего НДА тут нет? О_о
  • Add to Memories

You are viewing [info]ano_nimus's journal