Welcome to Star Citizen - официальный сайт русскоязычного сообщества

Привет, пилот!

Тебя приветствует космическая станция русскоязычного сообщества Star Citizen. Здесь ты можешь найти ответы на все свои вопросы, ознакомиться с последними новостями игровой вселенной, узнать секреты из многочисленных гайдов и обзоров. Если же ты захочешь поблагодарить авторов, задать вопрос или высказать свое мнение, то тебе придется пройти процедуру регистрации, которая не отнимет у тебя много времени.

Поиск по сайту: Результаты поиска по тегам 'bugsmashers'.

  • Поиск по тегам

    Введите теги через запятую.
  • Поиск по автору

Тип публикаций


Категории

  • Новости
  • Интервью
  • Корпорации
  • Патчи и обновления

Категории и разделы

  • Информационный центр
    • Новости
    • Патчноты и дев блоги
    • История Вселенной
  • Вселенная Star Citizen
    • Новым космолетчикам
    • Star Marine
    • Торговля, наука и производство
    • Корабли и модули
    • Миссии
    • Политика
    • Навыки и таланты
  • Коммуникационный центр
    • Обо всем во вселенной Star Citizen
    • Видео вселенной Star Citizen
    • Организации
    • Торговый центр
    • Разговоры
    • Другие игры
    • Творчество пилотов
    • Конкурсы
  • Администрация
    • Обо всем

Блоги

  • Arccorp Bar
  • Головошляп' - блог
  • braum' - блог
  • Перегрузки и их действие
  • Dickens-блог
  • SFD
  • Инфо-бар TERRAтория
  • Космос
  • Desert
  • recover deleted items recycle bin
  • вдумчивый Вамвдул



Фильтр по количеству...

Организация


Звание орг.


Handle

Найдено 16 результатов

  1. Мы находимся в главном меню, и тут часто образуется баг, когда игрок, спавнившись в матче одиночной игры, например, Free Flight или Survival, или любой одиночный режим, если вы при этом не будете трогать ни одну кнопку, игрок начнет парить над свои кораблем, и продолжит подниматься вверх, будто воздушный шарик. Мне пришлось глубоко покопаться в программном коде и вот в чем баг. У нас есть корабль, сиденье пилота и игрок. Мы прикрепляем игрока к кораблю через специальный "крепеж", используя старую-добрую систему креплений и зацепок. И в этом весь баг: если корабль не двигается, он не считывает код, что игрок прикреплен к сиденью. И не замечает его. Плюс поддержка ускорения игрока относительно зоны/корабля, если ничего не происходит, то нет и ускорения относительно одной из точек. Мы просто отключаем ускорение и физику, когда игрок находится в "нулевой" позиции, т.е. он не двигается и не предпринимает никаких действий. Баг исправлен!
  2. Сегодня мы поговорим об интересном баге. Вот в чём заключается баг: если вы играете в Star Marine, и все ваши виды оружия полностью заряжены и у вас больше нет свободных слотов, вы подходите к другому оружию, нажимаете зум и пытаетесь его поднять, тогда происходит так называемый «внетелесный опыт» когда вас выкидывает из тела, карты и даже со станции, очень далеко в космос. Этот баг полностью зависит от вашего ЦП, либо он случится, и вы улетите в просторы космоса, либо ничего не произойдет и просто будет жуткий зум к оружию. На самом деле всё заключается в коде зума и шлема, при обратном зуме вы должны вернуться к исходному изображению на экране, но вас наоборот откидывает на миллионы километров назад. Ещё мешает переходный код FOV’а, который делит вид на экране от 1 до 0 и там получаются огромные цифры. Мы заменим его не меньшее число и вуаля! Все работает как надо! Баг исправлен.
  3. Сегодняшним багом будет интересный краш, который возникал, когда игрок выходил из корабля и включал режим наблюдателя (spectator mode), это крашило всех игроков в матче, включая самого игрока. Проблема заключается в том, что порты предметов не полностью очищались, когда игрок переходил в режим наблюдателя, и игра пыталась получить доступ к чему-то, чего уже не было и это крашило игру. Марк нырнул в программный код, чтобы убедиться, что когда игрок выходит из корабля и входит в режим наблюдателя, игра верно очищает все его старые кэши, которые остаются, если игрок покидает корабль. Кстати, Марк очень любит бекон и во время исправления ошибок кода, он любит им полакомиться.
  4. Итак, мы находимся на тестовом уровне и выясняем, что за баг, или краш, случается с ИИ Констеллейшен. При выходе из игры, возникала ошибка (fatal error). Ошибка дается с кодом, где она возникла, чтобы программисты сразу могли понять, где им искать зарытую собаку. У нас есть сущность - Констеллейшен, которая состоит из физики, геометрии, интерактивности и обновлений. Обновления не должны появляться, когда вы выходите из игры, находясь в этой сущности. Т.е. все вышесказанное должно обнуляться при выходе из игры. Таким образом мы изменим код, чтобы сущность и все сопутствующее ей, полностью удалялось, при выходе из игры. Баг/краш исправлен.
  5. Мы находимся внутри Катерпиллара и баг заключается в том, что иногда грузовые двери либо не открывались вообще, либо открывались неправильно. Эти двери двойные - внешние и внутренние. Наружные двери закрываются, тогда как внутренние глючат и не закрываются, мы можем это видеть в представленном видеоролике. Всё это связано с анимацией - когда корабль находится далеко в космосе - зачем тратить циклы ЦП на обработку анимации открытия дверей? Когда мы находимся внутри, игра "понимает", что мы внутри и включает анимацию внешних дверей, но при этом начинают глючить внутренние двери. Что нужно сделать: создать сущность, в виде корабля, привязать её к внутренним и внешним дверям, чтобы они были связаны между собой, когда двери открываются или закрываются, при этом мы силой "заставляем" взаимодействовать между собой внешние и внутренние двери. Баг исправлен.
  6. Сегодняшний баг связан с UI (пользовательским интерфейсом) МобиГлас. При установке некоторых нестандартных разрешений, края МобиГлас были срезанными. Если установить более "широкое" разрешение, то всё было ОК. Мы находим кусок старого кода МобиГлас, и видим стандартное разрешение, установленное дизайнерами, но проблемы возникают уже при разрешении экрана 1280х960, поэтому вот что придумали программисты: основываясь на разрешении рендера или аспекте экрана, они сделали так, чтобы МобиГлас автоматом масштабировался под каждый экран/разрешение. Всё, баг исправлен, как вы можете видеть, МобиГлас располагается по центру экрана. Единственной проблемой остается кнопка "close", которая не подсвечивается, при наведении на неё курсора. Это опять же произошло из-за смены масштаба МобиГлас. Изменяем элемент flash UI, чтобы курсор мышки совпадал с местоположением кнопки. Вводим координаты мышки, рендера и flash, изменяем положение координат x и y. Всё, баг исправлен, кнопка подсвечивается при наведении на неё курсора.
  7. Сегодняшняя проблема заключается в том, что если на корабле отключить g-safety, то на полной скорости вы должны уходить в блэкаут (черный экран), но иногда этого не случалось, ни блэкаута, ни соответствующей анимации. Но при этом контроль над кораблём терялся. Проблема заключается в том, что давным давно была сделана анимация при блэкауте и последующем восстановлении. Но дело в том, что был старый кусок кода, а сейчас код новый и поэтому и возникал этот баг. Но всё сделано так в ЗГ, что анимация игрока/персонажа, связана с анимацией корабля. Два куска кода - анимации и блэкаута, конфликтовали. Таким образом над надо было исправить код, чтобы всё было залочено только персонажа, а не на корабль и персонажа. Так же можно увидеть небольшой баг, связанный с радаром, который вызывал очень много частых крашей. Итак проверяем, работает ли исправленный код...Да, теперь анимация блэкаута работает как надо.
  8. Мы снова находимся на тестовом уровне с нашим тестовым Хорнетом. Можно увидеть, что все турели у него свободно болтаются. Но дело в том, что если турели вращать, то всё нормально, но если прекратить это делать, они дергаясь возвращаются на случайную позицию и это очень неприятно. Похоже, что проблема в программном коде турелей, который уже очень давно не редактировали. Мы попробуем исправить разные оси, x,y, рысканье, вращение и т.д., чтобы турель "смотрела" прямо на цель и при вращении не болталась. Проблема оказалась в "скелете" и "суставах" турели, т.е. в том, что позволяет ей вращаться, наклоняться и т.д. Еще мешает анимация, которую обновили, а код остался старым, из-за этого тоже происходит конфликт. Марк вносит изменения таким образом, что даже если анимация снова будет мешать, программный код турели сработает как надо и когда надо. Теперь турели остаются на последнем месте расположения, туда, куда вы их навели в последний раз. Главное, что турели больше не дергаются как бешеные. Баг исправлен.
  9. Баг: при уничтожения корабля, иногда возникала ошибка в памяти (corrupt memory). Проблема была в том, что конфликтовали две системы – система предметов – Item System и физическая система – Physics System. По идее они должны работать вместе, чтобы при попадании в корабль, система предметов «понимала», куда попали – в двигатели, в маневровые, в пушки и т.д. Т.е. если сначала срабатывает система предметов, всё в порядке – кусок корабля, двигатель, пушка или крыло отваливается и дальше начинает работать физическая система. Но если наоборот, сначала включалась физическая система, она будет думать, что часть корабля уже отвалилась, при этом работая на весь корабль, как на целую физическую сущность, при этом происходил конфликт, т.к. в памяти находился и весь корабль, и часть корабля, даже если при этом она не отвалились/не была отстрелена. Проблему можно решить, если создать правильный порядок запуска систем.
  10. РАСШИФРОВКА Сегодняшний баг заключается в том, что гранаты неправильно работали в многопользовательской игре. Когда вы их бросали, они просто падали на землю и взрывались, вместо того, чтобы преодолеть определенное расстояние. Вся проблема заключалась в сериализации. Физический контроллер управляет всеми свойствами, которые необходимы дизайнеру для установки физики в объекте, и гранаты являются физическим объектом, и когда вы их бросаете, они должны, по идее, сериализовать всю информацию. Сервер "увидит" как далеко вы бросили гранату, а клиент получит сетевой пакет, и так же увидит, как далеко она упала, но именно эта цепочка и была разрушена. Кусок кода был добавлен для исправления предыдущего бага, который пытался сериализовать физическое состояние и передать его предметам, средствам передвижения, и всем вещам, которые используют физический контроллер. Код был вложен в игру, но он не был использован на предметах, из-за определенных причин. У предметов есть так называемый профиль-менеджер, если что, он должен был сработать. Можно сериализовать такие вещи, как позицию, ускорение твердого тела (в данном случае - гранаты). Но сети нужен постоянный поток информации, и если присутствует твердое тело, то его надо было точно сериализовать, а именно - ускорение и позицию. Сервер посылал ускорение и позицию, но когда клиент получал пакет, он не был готов к этому, и отключал игрока. Исправление бага заключается в том, чтобы вытащить кусок кода, и расположить его прежде, чем запуститься физический контроллер, т.к. сериализация должна быть первой, неважно, сработает ли профиль-менеджер. Поэтому если твердое тело послано, а вы застряли в физике, сериализация справится со всей информацией, считав ускорение и позицию. Последним шагом был захват профиль-менеджера, и передвижение его в физический контроллер, чтобы он работал со всеми профилями автоматически.
  11. РАСШИФРОВКА Баг: при перелезании или перепрыгивании через препятствия, персонажа телепортировало в воздух, в конечном счёте его выкидывало в космос, где он погибал от отсутствия кислорода. Это было из-за двух проблем: 1) Используя позицию персонажа в мире игры, например, в зоне сетки корабля, возникало множество ошибок, т.к. игра не принимала во внимание, что находится внутри пространства сетки. 2) другой проблемой была ошибка в коде из-за очень плохих данных. Иногда при перепрыгивании препятствия, игра получала неправильную информацию. Поэтому мы решим проблему, послав наше точное местоположение в игре, указав, где находится земля (поверхность) и где остальные точки. Чтобы полностью исправить баг, нужно использовать позиции зон, и посылать данные по нахождению персонажа, и тому, где находится поверхность.
  12. РАСШИФРОВКА Описание бага: если колесо на ровере взрывалось, оно должно было отвалиться и откатиться в сторону - вместо этого, оно медленно "уплывало" прочь. Это и есть баг. Это было из-за того, что вес колеса неправильно просчитывался в геометрической функции. Функция неверно обрабатывала код колеса. Внесены изменения в геометрическую функцию, поправлен код и всё. Марк еще раз пробует ровер на предмет взрыва колеса и всё работает как надо. p.s.Извините, что кратко, я тут немного приболел....
  13. РАСШИФРОВКА Всем привет, сейчас мы находимся на супер-секретном испытательном уровне, с Гладиусом и другим, невидимым кораблём. У нас появился новый баг, когда аниматоры сделали быстрый вход/выход из корабля. Как мы видим, пилот не может ухватиться за перекладины лестницы и промахивается руками мимо них, потом садится на кресло пилота, но немного криво и сдвинувшись в сторону, при этом у него «гуляет» левая рука. Аниматоры сломали всю голову, даже сделали специальные невидимые «подушки» для персонажа, но в конце концов решили вызвать инженера-программиста. Мы решили разобрать персонажа-пилота, до скелета и посмотреть, как работает программный код, когда он залезает в корабль и садится в кресло. Мы высчитали какой блок кода задействован в этот момент. Но, к сожалению, этот блок кода использовался для стандартных передвижений игрока, и код блока расходился или не был синхронизирован с анимацией и физикой. Или наоборот, они шли в параллель, мешая друг другу. Мы должны использовать предугадывание движений, которое стоит по умолчанию, если мы будем использовать Cvar. Итак, предугадывание движений для Cvar включено, «прикрепление» к креслу пилота отключено, иначе у нас ничего не выйдет. Итак, делаем сэмпл фрейма, и перекодировку блока… Итак, запускаем всё заново. Бам! он схватил перекладину, взялся за борт, садится в кресло в нужной позиции. Теперь всё гораздо лучше, чем раньше. Ещё есть небольшая задержка, перед тем, как пилот залезет в кресло, но с этим уже должны справится аниматоры. Баг исправлен!
  14. РАСШИФРОВКА Всем привет, мы находимся на небольшом тестовом уровне для FPS, и у нас есть баг, который добрые парни из Англии смогли исправить. Иногда, во время FPS, когда вас убивали у вас пропадало всё оружие, прицелы и прочее нацепленное на пушку, но если вы переключались на вид от третьего лица, всё появлялось обратно. Всё это происходило из-за портов предметов (item port) – порты предметов, это штуки, которые позволяют дизайнерам «прикрепить эту штуку, вот сюда». Сюда можно новый прицел, какого он будет размера и так далее. Но отсюда вытекают и новые вопросы: это проблема с портами предметов? Это проблема с насадками на оружие? Всё становится ещё запутаннее: когда я перехожу в вид от третьего лица – всё возвращается, и когда я убивал самого себя, иногда этот баг происходил, иногда – нет. Я уже понял, когда этот баг происходит 100%, но когда ты первый спавнишься на сервер, этого бага не бывает. Итак, у нас есть, предмет и насадка на него, иногда мы отсоединяем её, производим замену, и снова прикрепляем её к игроку, это всё из-за старого сетевого кода. Пушка могла появится перед игроком, броня могла не одеваться, постоянные дисконнекты, коннекты и т.п. Если вы смотрите от третьего лица, вам показывают геометрию третьего лица, если вы смотрите от первого лица, вам показывают геометрию от первого лица. Было очевидно, что вы не хотите видеть геометрию первого лица, когда играете от третьего, т.к. это дополнительные полигоны, детали и прочее. Legacy item 1.0, имела возможность переключения между первым и третьим лицом, но проблема была в том, что если вы находитесь в одном из режимов и снова хотите его включить, система замыкается и не обновляется. Поэтому если мы в режиме третьего лица, и хотим переключиться на него же, система думает, что этот режим и так включен и ничего не делает. Или если мы в режиме от первого лица, и переключаемся на него же, тоже ничего не будет происходить. Это серьезная проблема, от которой мы планируем избавиться в Системе Предметов 2.0. Что сделали парни из Британии: они силой заставили изменять вид от первого\третьего лица, чтобы вы смогли переключаться из них, и система всё же обновлялась. Всё это происходит из-за того, что старый сетевой код постоянной коннектит\дисконнектит предметы, оружие, броню, насадки на оружие и прочее – к игроку, поэтому и возникала такая проблема. Теперь при замене насадок, оружия, и переключения видов третьего\первого лица, никаких проблем быть не должно, мы протестировали.
  15. РАСШИФРОВКА Баг: Когда вы ехали на багги или любом другом средстве передвижения по поверхности, под которой нет всегда гравитации, то камера от третьего лица, следовала за позицией гравитации, а не за багги. Это была ошибка в коде, камера всегда предполагала, что гравитация это ось Z или ниже. Chad Zamzow написал кусок кода, который позволял вращать камеру, основываясь на ориентации гравитации, таким образом, камера от третьего лица, всегда будет расположена позади, по центру средства передвижения.
  16. РАСШИФРОВКА Баг: Когда игрок пытался использовать систему интерактивности во время полёта, опции в кокпите не появлялись. Это происходило из-за того, что игра и система физики не были синхронизированы с игроком, т.е. игрок-то был в кокпите, но физика этого не "признавала". Легчайшим способом решения этого, было бы использование системы зон (zone system), но поскольку Legacy корабли ещё в игре, например, большинство одноместных кораблей, и их ещё не переделали, нужно было поддерживать обе системы. Что сделал Марк: он нашел точку, в которой и игра, и физика пересекаются, дабы их можно было синхронизировать друг с другом, чтобы и игра, и физика знали, что игрок находится к кресле пилота, он вертит головой в кокпите и использует систему интерактивности. Скорее всего, этот баг уже будет исправлен в будущем патче.