Разработка и ромхакинг > Разработка игр
[PC] Rock 'n' Roll Racing R
BARAKA:
ща тыкнем посмотрим)
CR_Racer:
Сейчас ведётся работа над фоном планеты. Уже есть первые успехи.
Кроме того, готовится текстурированная модель Мародёра.
Проект уже не так далёк от выпуска первой беты.
Чайман:
Я один раз не дождался, пока игра запустится (самый первый раз), т.к. ничего кроме черного экрана видно не было, и теперь все время рантайм еррор 216...
Под виртуалкой пустил, дождался, запустилась, но падает после отображения гл. меню. (Ну, виртуалка - это не показатель, понимаю). Ка сбросить настройки? Чтоб игра думала, что в первый раз ее пускаю?
ЗЫ: сорри, что пропал малость (или не малость) :blush:
ALEX_230_VOLT:
при первом запуске игры идёт распаковка изображений, причём да - это длится довольно долго, но зато потом всё будет происходить моментально. А так как ты прервал процесс распаковки, то распаковалось не всё и чтобы произвести распаковку званого надо удалить файл Imagesd.caf (размером примерно в 20 мб)
Чайман:
О, спасибо!
Почти всё, о чем писал раньше по части глюков с графикой пропало! Молодцы!!! :D
Осталось только следующее:
1. Надпись warrior имеет под собой полосочки (видимо текстурка слегка перекрутилась), но это мелочи.
2. Анимация взрыва неправильно отображается, как будто нарезка на кадры изначальной картинки была сделана не от кординат (0,0), а со сдвигом по оси X.
3. После отказа продолжать текущую гонку (в меню паузы) и отображения результатов - куча ошибок и вылет.
Из новых "проблем" заметил это:
1. В меню паузы кнопка "S" выходит из режима паузы.
2. Кое-где дорога не стыкуется с бортиком.
Хотя ни то ни другое играть не мешает. Молодцы! :D
Если надо скрины - приложу ;)
Добавлено позже:
О, да, AI убран был?
ALEX_230_VOLT:
О, рад что ты вернулся :)
--- Цитата ---1. Надпись warrior имеет под собой полосочки (видимо текстурка слегка перекрутилась), но это мелочи.
--- Конец цитаты ---
у себя я это давно уже исправил, просто CR_Racer вовремя не скинул. Когда будет уже что показывать я выложу свою сборку где всё будет нормально ;)
--- Цитата ---2. Анимация взрыва неправильно отображается, как будто нарезка на кадры изначальной картинки была сделана не от кординат (0,0), а со сдвигом по оси X.
--- Конец цитаты ---
да это пока временный вариант и мы планируем сделать чтобы машина разлеталась на части. хотя спрайт взрыва по идее всеравно понадобится :-\
--- Цитата ---3. После отказа продолжать текущую гонку (в меню паузы) и отображения результатов - куча ошибок и вылет.
--- Конец цитаты ---
странно. только что пероврил - всё нормально, да и у других такой проблемы не было o_0
--- Цитата ---1. В меню паузы кнопка "S" выходит из режима паузы.
--- Конец цитаты ---
ок, исправим
--- Цитата ---Если надо скрины - приложу
--- Конец цитаты ---
нет необходимости - всё и так понятно
--- Цитата ---О, да, AI убран был?
--- Конец цитаты ---
теперь его можно включить и отключить в файле alpha.ini Вот там девятая строка false, и если заменить на true то АИ вернётся ;)
r57shell:
--- Цитата: ALEX_230_VOLT от 14 Ноябрь 2010, 15:18:59 ---при первом запуске игры идёт распаковка изображений, причём да - это длится довольно долго, но зато потом всё будет происходить моментально. А так как ты прервал процесс распаковки, то распаковалось не всё и чтобы произвести распаковку званого надо удалить файл Imagesd.caf (размером примерно в 20 мб)
--- Конец цитаты ---
В таких случаях нужно говорить: "Что-за параша?!". Во первых, не лучше ли сделать инсталл? С этим можно поспорить такчто идём дальше.
Как видим человек даже не видит что был какой-то инсталл, и закрывает логично, а после этого, снова инсталл никогда не запускается - и игрок может оправдано матерится.
Ты (не знаю к кому обращаюсь) когда-нибудь видел чтобы программа так себя вела? На самом деле даже если и видел - это не нормально. Хороший софт должен сообщать, почему он не работает, или хотябы намекать, типо "попробуй-те переустановить", или "что-то не так в этом файле". А тут...
Всё так делается, что у каждой функции в API или среде или ещё где, есть критерии, что произошла ошибка, и есть критерии, как узнать где. Простой пример fopen() функции из С++. Она возвращает 0 если произошла ошибка. Даже на выделение памяти, и на ЗаКрытие Файла есть случаи когда возникает ошибка. Стандартный вопрос "как так? файл не хочет закрываться?" - да легко, если есть кэш данных которые надо записать в файл, а они ещё не записаны, и мы закрывая файл как-бы говорим - закончи с ним - ну и логично, всё что ещё не дописали - нужно дописать, а вдруг места нет? Бац - ошибка. Если мы её пропустим - то можем потерять данные, которые могут быть важными. На выделение памяти ошибки тоже экзотичные, памяти не хватает - а мы хотим вывести, что памяти не хватает, но для этого хотим выделить память что-бы описать "какая именно ошибка", и ошибка в ошибке... короче с этим много нюансов.
А без обработки ошибок, невозможно вообще помогать юзерам, которые твою прогу пользуют, т.к. ошибка то произошла на его компе - не факт, что ты сможешь получить её у себя, и чаще всего от юзера самого ты хрен узнаешь при каких действиях она возникла. Иногда, даже сделав много оброботки ошибок - етого не достаточно, приходится ещё вбивать больше... И вообще после такого, может программа начать лагать ). Нужно разделять ошибки самой программы, от ошибок извне, таких как не правильный файл подсунули, или ещё чего. И проверки на ошибки самой проги, оставлять только в отладочной версии, т.к. пока она будет отладочной - всё проверится, останутся только ошибки извне, такчто проверки на внутренние - можно, и НУЖНо убрать, чтобы убить излишние лаги, отсюда две версии: 1) так называемая Debug версия, и 2) так называемая Release версия.
BARAKA:
r57shell,не бузи на народ,пусть себе создают игру.вот как громко заявят"вот официальная версия 1.00" тогда и бцудешь по поводу такого критиковать.а щас пока что ещёж нифига не сделано.Не спорю,,метод "установки" не очень,но блин всеж исправится со временем)
Nightwolf@:
CR_Racer я могу поучаствовать в разработке Rock 'n' Roll Racing у меня есть куча идей и еще проги есть прога для создания трас и прога редактор планет я создал уже 31 трасу для гонок Rock 'n' Roll Racing
r57shell:
--- Цитата: BARAKA от 17 Ноябрь 2010, 19:50:04 ---r57shell,не бузи на народ,пусть себе создают игру.вот как громко заявят"вот официальная версия 1.00" тогда и бцудешь по поводу такого критиковать.а щас пока что ещёж нифига не сделано.Не спорю,,метод "установки" не очень,но блин всеж исправится со временем)
--- Конец цитаты ---
Ага, а потом надо будет говорить "Надобыло сразу нормально делать", т.к. кто-нибудь скажет, типо "это нужно всё переделывать".
Представь еслиб игры делались так: Чуваки смотрите, какую игру я придумал... Оооо круто, давай реализуем. Прошло 2 года, реализовали. Блин, а идея то ацтой была, надо заного переписывать. Это собственно и есть, причина, по которой сама идея игры может изменятся во время её разработки. Также с механикой.
Нет я буду бузить, чтобы потом небыло таких типо, "всем нравилось, а потом вдруг - ацтой ацтой", как было с ти...
Добавлено позже:
А если во время разпаковки картинок, свет выключили? Юзер также будет тупить.
BARAKA:
создать трассы любой дурак может,вот сделать так чтобы на них ещё и кататься нормально было это посложнее.
Проги разрабатывались на этом же форуме но в маленько другой ветке,так что ты никого не удивил.
Ну а насчет помощи вперед,думаю ребята обрадуются)
Добавлено позже:
Тваюжмать,я уже становлюсь похож на апельсина!
Vivi the Black Mage:
--- Цитата: BARAKA от 17 Ноябрь 2010, 20:05:02 ---
Тваюжмать,я уже становлюсь похож на апельсина!
--- Конец цитаты ---
Живо принимай антидот! А то будет 3 апельсин! :crazy:
ALEX_230_VOLT:
--- Цитата --- Во первых, не лучше ли сделать инсталл?
--- Конец цитаты ---
можно, но пока рано, т.к. новые версии выходят очень часто и каждую из них инсталить достанет
--- Цитата ---Хороший софт должен сообщать, почему он не работает, или хотябы намекать, типо "попробуй-те переустановить", или "что-то не так в этом файле". А тут...
--- Конец цитаты ---
ну вообще ты это ещё ранее говорил и мы сделали выводы - теперь программа ведёт log ;) А про распаковку изображений игра, если ты не заметил, писала во всех версиях кроме самой последней, где это убралось случайно (т.к. весь код игры переписывался) и вернуть обратно не составит труда.
по поводу остального - кину CR_Racer ссылку на этот пост.
--- Цитата ---r57shell,не бузи на народ,пусть себе создают игру.вот как громко заявят"вот официальная версия 1.00" тогда и бцудешь по поводу такого критиковать.а щас пока что ещёж нифига не сделано.Не спорю,,метод "установки" не очень,но блин всеж исправится со временем)
--- Конец цитаты ---
спасибо за защиту, но на этот раз r57shell всё по делу сказал ;) не по делу у него ранее были наезды, когда он к меню цеплялся, хотя я предупреждал что оно не готово
Добавлено позже:
--- Цитата ---А если во время разпаковки картинок, свет выключили? Юзер также будет тупить
--- Конец цитаты ---
кстати да, ты подкинул мне идею - надо чтобы игра проверяла размер файла распакованых изображений и сверяла её. Правда тут надо подумать как научить программу просчитывать из запакованного размер распакованного
--- Цитата: Nightwolf@ от 17 Ноябрь 2010, 19:51:06 ---CR_Racer я могу поучаствовать в разработке Rock 'n' Roll Racing у меня есть куча идей и еще проги есть прога для создания трас и прога редактор планет я создал уже 31 трасу для гонок Rock 'n' Roll Racing
--- Конец цитаты ---
то что опыть есть это хорошо, но про какие проги идёт речь? o_0 проги для своего проекта вообще то делаем мы и для создания трасс никаких прог не надо. О том как это делать подробнее тут
http://rx4.3bb.ru/viewtopic.php?id=261
А планеты у нас редактируются через ini файл и пока что всерьёз мы за планеты не брались, т.к. ещё физика до ума не доведена
Добавлено позже:
--- Цитата ---Проги разрабатывались на этом же форуме но в маленько другой ветке,так что ты никого не удивил.
--- Конец цитаты ---
а вот меня удивил. Про какие проги вообще идёт речь? если вы про хакинг оригинального RRR то это одно, но вы так говорите как будто это проги для нашего проекта o_0
BARAKA:
так чето мне подумалось что Nightwolf@,говорит про проги для оригинала.Хотя он ещё не отписался.так что посмотрим,что он имел ввиду.
r57shell:
--- Цитата: ALEX_230_VOLT от 17 Ноябрь 2010, 21:08:56 ---А про распаковку изображений игра, если ты не заметил, писала во всех версиях кроме самой последней, где это убралось случайно (т.к. весь код игры переписывался) и вернуть обратно не составит труда.
--- Конец цитаты ---
Я заметил, а ты уверен, что всем это было/будет видно?
Я вообще за игры без установок, распаковок. Берите пример (с кого? Правильно!) с близард. Все их игры, ещё раз повторюсь для закрепления, ВСЕ не требуют установки, точнее если сказать - установленные когда-то - успешно запускаются. Кроме того, установщики весят чуть меньше чем установленные.... на 0.1% если не меньше )). Патчи ставятся просто заменой одного архива + исполняемых файлов. Как правило исполняемые файлы весят много меньше чем ресуры, итого вот например в Diablo II патч 1.11b сжатый весит не больше 5 метров... (на память сказал) хотя сама игра весит все 1.5 гб. Warcraft 3 - таже фигня. Исключением может показаться World of Warcraft, но и там, если просматривать историю изменений от WOW до WOW Wrath of the Lich King - сохраняется таже техника.
Чо могу сказать, фишка вся в MPQ файлах - они все образуют "виртуальную" файловую систему игры, вместо тысяч файлов, в файловой системе лежит пара-тройка. Виртуальная файловая система выгледит так: берётся первая MPQ по приоритетам, в "виртуальную" файловую систему игры толкаются все файлы по указанным путям в MPQ, затем берётся вторая по приоритетам MPQ и снова делается тоже самое только с ЗАМЕНОЙ существующих. Что получаем? Последняя MPQ по приоритетам - Patch.MPQ, он заменяет посути любой из файлов, которые надо заменить патчем.
Поиск файла в MPQ идёт за O(log N) как мне помнится... На пальцах это если в архиве миллион файлов - то нужный находится, или говорится, что его нет - за порядка 20 операций. Главное тут слово "порядка". Файлы в MPQ сжаты, может быть и хреновым архиватором, но сжаты. Однако все наверно видели как быстро запускаются игры, идёт загрузка. Просто не всё что лежит в файлах - грузится сразу, а только когда надо.
Вроде всего-то, много файлов заменили одним - пустяк. На самом деле открыть файл это дофига делов и времени: найти в файловой системе (что винда не так быстро делает), заблокировать какие-то опции (как минимум удаление). Чтобы небыло косяков с файлами, система должна обеспечивать последовательность операций с ними, отсюда чтение файлов - тоже дофига делов. Для чтения - нужно закончить/приостановить любую операцию записи в данный файл, прочитать, продолжить - снова дофига делов. Если файлов дофига - то логично и дофига "дофига" делов. Заталкиванием всего в MPQ - даёт возможность: читать всегда только один файл(несколько, если несколько MPQ), постоянно держать их открытыми - не нужно открывать/закрывать. Короче большой выйгрышь производительности, да и пользователю приятно - нету хлама папок.
Ликбез окончен, всем спасиба...
Добавлено позже:
--- Цитата: ALEX_230_VOLT от 17 Ноябрь 2010, 21:08:56 ---кстати да, ты подкинул мне идею - надо чтобы игра проверяла размер файла распакованых изображений и сверяла её.
--- Конец цитаты ---
Одна проверка размера - не тру, лучше ещё прикрутить хотябы маломальскую чексумму (см. гугл: чексумма или хэши (checksumm,hash)). Но и чексумма может не найти косяков в файле, поэтому в торрентах например используют несколько чексумм на разные отрывки файла "покрывающие" весь файл. Хотябы CRC32.
Nightwolf@:
все трасы которые я зделал ини все рабочие я давно их все поместил в оригинальный ром
я умею делать трасы чоб они раболи в игре
Добавлено позже:
у меня есть 22 моделки машин для Rock 'n' Roll Racing готовых токо я пока их не кому не дам не караденые чисто я создал токо у меня нет проги для запихивания их в ром
CR_Racer:
r57shell, спасибо за конструктивную критику. Это полезно.
Кстати нужно учесть, что сейчас "альфа-версия", а она в основном-то предназначена для разработчиков. В релизе я конечно же всё сделаю, как положено, тем более это несложно, в моём коде не нужно ничего переделывать будет, все API-функции обернуты собственными (может где-то и есть велосипед, но я всё-таки оставляю надежды на портируемость кода в дальнейшем и перевода на другой язык).
Технология хранения файлов, которую ты описал, мне знакома. Такую встречал в некоторых играх. У меня есть что-то схожее с этим, правда, без приоритетов. Согласен, что с приоритетами удобней бы было (но и без них неплохо). У меня система несколько своя, у меня за O(n) сначала строится список (но файлов-то мало, поэтому нет потерь в производительности), а подгрузка уже за O(1), загружается всё только тогда, когда используется.
Про хеши я тоже в курсе, это нужно сделать будет.
Nightwolf@, твоя помощь приветствуется, только вот мы не ломаем ром, а переделываем игру на PC. И кстати, создание трасс стало несложным, поэтому ты можешь переделать свои трассы для нашей игры.
--- Цитата: Nightwolf@ от 18 Ноябрь 2010, 09:46:05 ---у меня есть 22 моделки машин для Rock 'n' Roll Racing готовых токо я пока их не кому не дам не караденые чисто я создал токо у меня нет проги для запихивания их в ром
--- Конец цитаты ---
Модельки в 3D?
Nightwolf@:
да в 3d у меня модельки а можна заменить все маши на каждой планете и как впихивать трасы так чоб они раболи все я кидаю 4 трасы когда ставлю 5 то она стает первой в чом прикол
r57shell:
--- Цитата: CR_Racer от 18 Ноябрь 2010, 17:44:39 ---У меня система несколько своя, у меня за O(n) сначала строится список (но файлов-то мало, поэтому нет потерь в производительности), а подгрузка уже за O(1), загружается всё только тогда, когда используется.
Про хеши я тоже в курсе, это нужно сделать будет.
--- Конец цитаты ---
Загрузка за O(1) от чего? Собсно интересует именно время поиска файла. А инициализация - это пофигу, на крайняг её можно пребилднуть. А подгрузка файла - тоже пофигу, всё зависит от файла, т.к. главное сделано - нашли.
CR_Racer:
Nightwolf@, прочитай, что тебе написали выше. Тут не ромы, тут ремейк!
--- Цитата ---O(1) от чего?
--- Конец цитаты ---
В смысле? O(1) это есть O(1), он не от чего :) Значит "моментальное" обращение.
Навигация
Перейти к полной версии