Leclerc Опубликовано 30 мая, 2010 Жалоба Поделиться Опубликовано 30 мая, 2010 megazogg Спасибо за мод и его обновления! Я вот уже давненько не играл, года с полтора в СС, т.к. на Дов2 перешёл, а теперь заинтересовался. Родные иги выглядят ооочень близко к кодексу, и довольно интересно. Вобщем благодаря моду вернулся интерес к дов1 =) Ссылка на комментарий Поделиться на другие сайты Поделиться
UnknownLOL Опубликовано 31 мая, 2010 Жалоба Поделиться Опубликовано 31 мая, 2010 Да, без этого мода первый ДоВ я себе уже не представляю, на движок второго бы его перенести... megazogg, по поводу вылетов - может дело в железе? Вроде ты там какую-то накрутку на графику используешь, пробовал без нее? На второй ДоВ сейчас кое-какой мод тестируем, так вот там та же проблема (и так же не у всех), и решилась сменой настроек графики на более низкие Ссылка на комментарий Поделиться на другие сайты Поделиться
megazogg Опубликовано 31 мая, 2010 Жалоба Поделиться Опубликовано 31 мая, 2010 (изменено) Да, без этого мода первый ДоВ я себе уже не представляю, на движок второго бы его перенести... megazogg, по поводу вылетов - может дело в железе? Вроде ты там какую-то накрутку на графику используешь, пробовал без нее? На второй ДоВ сейчас кое-какой мод тестируем, так вот там та же проблема (и так же не у всех), и решилась сменой настроек графики на более низкие Да, пробовал, итог такой же. Щаз попробую грф. настройки ниже поставить, но раньше-то все нормально было и на тех, что сейчас стоят... Странно все как-то происходит - по всем признакам похоже, что вылетает из-за как раз из-за нехватки мощности (что честно говоря странно - у меня свежий комп, собранный только в январе этого года и кроме видеоадаптера (GeForce 280), у меня все железо на грани макс. возможного. Да и карточки 280 ДОВ1 хватает выше крыши), т.к. при наличии на карте любого размера любых 3 компов (или 2 ИИ + 1 человек) все работает нормально. Но при этом, если ставить 4 ИИ и больше, если они не являются КД, Тау или ИГ - все нормально. Правда я пару раз сумел и с ИГ запустить скирмиш на 4-х. Т.е. повторюсь - ситуация жутко путанная, т.к. при запуске 2 следующих друг за другом тестов, на одной и той же карте, с одинаковыми условиями, первый запуск может быть удачным, а второй нет. На всякий случай скажу, что я уже успел попробовать: 1. Заменил папку AI в моде на аналогичную из SkirmishAI - несколько тестов положительные, несколько отрицательные, ergo - проблема не в нем. 2. Отключал ENBS путем его удаления из папки с игрой - не помогло. 3. Переустановил игру, причем на другой физ. диск - не помогло. 4. Попытался отследить изменения по changelog'у совершенные с выхода 1.53 - они никак не могли повлиять на стабильность игры, в еррор логах нет никаких репортов об ошибках, проверил код - все нормально - не помогло. 5. Запускал тесты на ванильном СС - все нормально, следовательно проблема все же в моде. 6. Пробовал разные комбинации условий победы, откл./вкл. Heroes, Fallback, Auto Abilities - без результата. 7. Проверил код ИИ у проблемных рас - на мой взгляд все нормально, но опять же - вылеты остались. Изменено 31 мая, 2010 пользователем megazogg Ссылка на комментарий Поделиться на другие сайты Поделиться
Эфирный Опубликовано 31 мая, 2010 Жалоба Поделиться Опубликовано 31 мая, 2010 А чем этот мод от фока отличается? Ссылка на комментарий Поделиться на другие сайты Поделиться
Торпеда Опубликовано 31 мая, 2010 Жалоба Поделиться Опубликовано 31 мая, 2010 А чем этот мод от фока отличается? фок это настолка (или попытка ее воспроизвести) в дов,а ревайзд это "толстый" сс Ссылка на комментарий Поделиться на другие сайты Поделиться
UnknownLOL Опубликовано 31 мая, 2010 Жалоба Поделиться Опубликовано 31 мая, 2010 КД, ИГ и Тау используют самое большое количество (если и не самое, то просто очень много уж точно) новых текстур и моделей. Т.к. ты постоянно обновляешь мод, добавляешь новые модели/текстуры, то в какой-то момент на них перестало хватать оперативы/видеопамяти (поэтому раньше вылетов небыло). Не буду утверждать стопроцентно, но повторюсь у нас в моде на второй ДоВ абсолютно такая же ситуация: ok after testing this on my older computer which can only play normal Chaos rising on lowest graphics settings i found that when i play a 3v3 wit all races present i also get a "cannot create dump file: " (error 183)" message pop up, am going to try wit my usual computer and again on the older computer only 2v2 etc Right, tested a 2v2 wit 4 out of 5 races present and it worked fine even on my old computer. A bit of lag but worked all right. Попробуй обновить драйвера на видеокарту, так же можно поудалять из мода неиспользующиеся модели Ссылка на комментарий Поделиться на другие сайты Поделиться
megazogg Опубликовано 31 мая, 2010 Жалоба Поделиться Опубликовано 31 мая, 2010 (изменено) КД, ИГ и Тау используют самое большое количество (если и не самое, то просто очень много уж точно) новых текстур и моделей. Т.к. ты постоянно обновляешь мод, добавляешь новые модели/текстуры, то в какой-то момент на них перестало хватать оперативы/видеопамяти (поэтому раньше вылетов небыло). Не буду утверждать стопроцентно, но повторюсь у нас в моде на второй ДоВ абсолютно такая же ситуация: Попробуй обновить драйвера на видеокарту, так же можно поудалять из мода неиспользующиеся модели В общем, поставил я настройки текстур и моделей на средние вместо высоких, все три расы + орки нормально запустились, но это дико... У меня сейчас Intel Core i7 920 2.66Ghz @ 3.60GHz, OCZ Intel XMP Edition DDR-III 6Gb kit PC-12800, мать ASUS P6T Deluxe V2 1366 + ASUS GeForce GTX 280 1024 Mb, дрова самые последние на данный момент (197.45) для моей видюхи - тот же самый DOW2 у меня без всяких проблем работает на ультра настройках, а игре 6-летней давности этого и подавно должно хватать. Сейчас проверю, как сам ФОК работает, если он тоже будет вылетать, то пойду жаловаться камрадам по команде. :oops: Да, так и есть - ФОК тоже вылетает. Мля, вот говорил же я всем, что нафиг не нужны эти рандомные хрени в АР и такое безумное кол-во варгира. Изменено 31 мая, 2010 пользователем megazogg Ссылка на комментарий Поделиться на другие сайты Поделиться
UnknownLOL Опубликовано 31 мая, 2010 Жалоба Поделиться Опубликовано 31 мая, 2010 На самом деле ничего удивительного) У меня комп AMD Athlon 64 X2 Dual Core 5200, 4gb оперативы, видео - ATI Radeon HD 4850 1024mb. Первый ДоВ жутко лагает в больших битвах, выдавая в среднем 10 фпс (без модов на 5-7 фпс больше). Второй ДоВ идет без тормозов на ультре Ссылка на комментарий Поделиться на другие сайты Поделиться
GrOrc Опубликовано 31 мая, 2010 Жалоба Поделиться Опубликовано 31 мая, 2010 (изменено) 7. Проверил код ИИ у проблемных рас - на мой взгляд все нормально, но опять же - вылеты остались. Судя по описанию проблемы -- проблема конечно же в AI мода. По своему опыту моддинга могу сказать, что такие ошибки отловить не всегда просто. Но в конце концов они всегда отыскиваются. У меня в ходе модификации AI случалось всякое, но в конце концов ошибки локализовывались и устранялись. Для начала локализовать ошибку надо четче. Например, попробовать четко выяснить с каким расами глючит, а с какими нет. И еще попробуйте откат на старые версии AI. Если говорить об AI для SS, то версии 3.0 я более менее доверяю, но вот 3.2 уже нет. Что-то они там напороли не то. Тюдо скромно промолчал на мои вопросы по глюкам в AI 3.2 в обсуждении на Реликньюсе. То, что якобы компу не хватает ресурсов это ИМХО бред. У компа ресурсов с учетом файла подкачки навалом. У меня мод тоже весьма монстрообразный. Моделей, текстур, FX и прочих данных навалом. И работаю я на гораздо худшем, чем у Мегазогга компе (у меня Athlon 3000+ и даже не 64, и всего 1 гиг оперативки). Ничего не вылетает, если AI создан как надо. Я часто запускаю автобой в Titanium Wars на 4 компа и вылетов нет. Меньше ли мой мод чем Ревизед? Вот системная статистика: Titanium Wars 0.95.06 (unpublished ver.) Folders 990 Files 9196 Size 1,41 Gb Revised 1.53 Folders 1257 Files 10327 Size 1,78 Gb ИМХО размеры сравнимые. Мой мод даже получается немного больше в расчете на расу, так как у меня 7 рас, а не 9 (или 10 с темпларами) как в Ревизеде. Если добавить к TWM расы SS, то получим бОльший размер. Конечно вопрос может состоять в том, есть ли в двигле DoW 1 программные ограничения на размер используемых данных? Вроде никто еще реально не упирался в такие ограничения. Да и с чем они могут быть связаны надо еще обосновать. Для Винды ХРюши наши размеры явно не критичны. Сама программа (DoW1) вряд ли содержит в себе искусственные ограничители (хотя конечно кто их знает этих девелоперов). Обычно программеры заставляют работать свои проги до исчерпания ресурсов и ставят заглушки по ерролевелам их нехватки. Тогда ошибка явно выдается и она системная. Тут явно не тот случай. Так что остается пожелать камрадам, как грит Жванецкий, тщательнЕе относиться к AI-кодингу. ;) У меня иногда тоже бывали случаи, когда ошибки приходилось искать за несколько запусков DoW. И всегда выяснялось, что накосячил я, а не Релики. :) (Ну разве что за редкими исключениями :) каковые тоже конечно же есть.) Надо просто внимательнее отслеживать новые добавки к AI и сразу их тестить. Если добавлять и добавлять, а тестить потом все скопом, то замучаетесь ошибки находить. Ах да! Есть же еще разница в том, что я то работаю со старым добрым DC, а все прогрессивное человечество сидит на Iron Lore-вском моде под названием SS. ;) Ну тут ничего не могу сказать. :) Кто их знает этих подельников, как они шедевр от Реликов могли запортить... :) Изменено 31 мая, 2010 пользователем GrOrc Ссылка на комментарий Поделиться на другие сайты Поделиться
megazogg Опубликовано 31 мая, 2010 Жалоба Поделиться Опубликовано 31 мая, 2010 (изменено) Судя по описанию проблемы -- проблема конечно же в AI мода. По своему опыту моддинга могу сказать, что такие ошибки отловить не всегда просто. Но в конце концов они всегда отыскиваются. У меня в ходе модификации AI случалось всякое, но в конце концов ошибки локализовывались и устранялись. Для начала локализовать ошибку надо четче. Например, попробовать четко выяснить с каким расами глючит, а с какими нет. И еще попробуйте откат на старые версии AI. Если говорить об AI для SS, то версии 3.0 я более менее доверяю, но вот 3.2 уже нет. Что-то они там напороли не то. Тюдо скромно промолчал на мои вопросы по глюкам в AI 3.2 в обсуждении на Реликньюсе. То, что якобы компу не хватает ресурсов это ИМХО бред. У компа ресурсов с учетом файла подкачки навалом. У меня мод тоже весьма монстрообразный. Моделей, текстур, FX и прочих данных навалом. И работаю я на гораздо худшем, чем у Мегазогга компе (у меня Athlon 3000+ и даже не 64, и всего 1 гиг оперативки). Ничего не вылетает, если AI создан как надо. Я часто запускаю автобой в Titanium Wars на 4 компа и вылетов нет. Меньше ли мой мод чем Ревизед? Вот системная статистика: Titanium Wars 0.95.06 (unpublished ver.) Folders 990 Files 9196 Size 1,41 Gb Revised 1.53 Folders 1257 Files 10327 Size 1,78 Gb ИМХО размеры сравнимые. Мой мод даже получается немного больше в расчете на расу, так как у меня 7 рас, а не 9 (или 10 с темпларами) как в Ревизеде. Если добавить к TWM расы SS, то получим бОльший размер. Конечно вопрос может состоять в том, есть ли в двигле DoW 1 программные ограничения на размер используемых данных? Вроде никто еще реально не упирался в такие ограничения. Да и с чем они могут быть связаны надо еще обосновать. Для Винды ХРюши наши размеры явно не критичны. Сама программа (DoW1) вряд ли содержит в себе искусственные ограничители (хотя конечно кто их знает этих девелоперов). Обычно программеры заставляют работать свои проги до исчерпания ресурсов и ставят заглушки по ерролевелам их нехватки. Тогда ошибка явно выдается и она системная. Тут явно не тот случай. Так что остается пожелать камрадам, как грит Жванецкий, тщательнЕе относиться к AI-кодингу. ;) У меня иногда тоже бывали случаи, когда ошибки приходилось искать за несколько запусков DoW. И всегда выяснялось, что накосячил я, а не Релики. :) (Ну разве что за редкими исключениями :) каковые тоже конечно же есть.) Надо просто внимательнее отслеживать новые добавки к AI и сразу их тестить. Если добавлять и добавлять, а тестить потом все скопом, то замучаетесь ошибки находить. Ах да! Есть же еще разница в том, что я то работаю со старым добрым DC, а все прогрессивное человечество сидит на Iron Lore-вском моде под названием SS. ;) Ну тут ничего не могу сказать. :) Кто их знает этих подельников, как они шедевр от Реликов могли запортить... :) Я конечно тоже все еще надеюсь, что все-таки проблема в ИИ, но тогда как объяснить, что при снижении граф. настроек игра вылетать перестала, а так же то, что ФОК вылетает точно также? У них конечно есть нечто общее - в ФОК нет нормального ИИ сейчас вообще, а в Ревайзде ИИ писал я, особенно в этом вопросе не разбирающийся, так что себе я тоже не особо дверяю... O_o У меня кстати не XP, а Виста 64. С самим движком игры тоже проблем никаких быть не может, тут не важно, ДК это или СС. На родном СС-то все нормально. Сейчас попробую откатится сначала до версии 1.53 собственного мода, если не поможет, то заменю Сркимиш ИИ 3.2 на 3.0, я так понимаю, что достаточно будет только core-файлы заменить, да? Т.е. тактики и стратегии рас можно оставить? И еще - у меня есть еще подозрения на кряк. Так как на СС 1.2 так и не вышло нормального ехешника, я пользуюсь RSSS.DLL кряком, которй вобще-то изначально был сделан для КоХ, но энтузиасты обнаружили, что он работает и на СС 1.2. Я давно заметил, что у меня после установки этой dll в папке с игрой каждый раз генерируются errorlog'и и dump'ы. Там как раз говорится о том, что Soulstorm.exe caused an Access Violation in module ntdll.dll at 0023:7720ac6c. Создаются эти файлы при выходе из игры, следовательно получается, что программа каждый раз пр выходе вылетает. Но нет худа без добра, я сейчас порезал всякие ненужные файлы (код, модели, текстуры), м сжал мод до таких размеров: Folders: 1,175 Files: 8,561 Size: 2,24 Gb :P Да и еще, ГрОрк - скинь мне в личку или здесь свой код для тестирования ИИ, который игрока компом заменяет. Тот что есть в ридми к СкримишИИ, немного другой и работает немного глючно. Изменено 31 мая, 2010 пользователем megazogg Ссылка на комментарий Поделиться на другие сайты Поделиться
UnknownLOL Опубликовано 31 мая, 2010 Жалоба Поделиться Опубликовано 31 мая, 2010 (изменено) GrOrc Я, конечно, далеко не спец в этом деле, но мне тоже непонятно каким образом баги ИИ могут провоцировать вылеты из игры. И тем более непонятно как эти же баги ИИ "исправляются" посредством простого снижения графических настроек. Тут уж дело скорее действительно в СС, но опять же у некоторых людей никаких вылетов нет, СС, мод и ИИ в нем у всех одинаковые, а вот компы разные... Изменено 31 мая, 2010 пользователем UnknownLOL Ссылка на комментарий Поделиться на другие сайты Поделиться
GrOrc Опубликовано 31 мая, 2010 Жалоба Поделиться Опубликовано 31 мая, 2010 GrOrc Я, конечно, далеко не спец в этом деле, но мне тоже непонятно каким образом баги ИИ могут провоцировать вылеты из игры. И тем более непонятно как эти же баги ИИ "исправляются" посредством простого снижения графических настроек. Тут уж дело скорее действительно в СС, но опять же у некоторых людей никаких вылетов нет, СС, мод и ИИ в нем у всех одинаковые, а вот компы разные... AI реализован на функциях ядра игры, и AI-скрипты -- это текстовый интерфейс с ними. Фактически внешний программинг в рамках готовой системы. Если писать скрипты некорректно, то можно добиться самых разных внутренних коллизий движка разной степени тяжести. Когда я косячил с AI, то чаще всего игра у меня не вылетала, а вставала на холд и/или ругалась. Но думаю, что вылет тоже можно спровоцировать. Наверняка в DoW1 есть такие баги, о которых и сами Релики не подозревают, да и для нас они не часто проявляются. Боюсь соврать, но вроде у меня подобные вылеты пару раз были когда-то давно в моей собственной практике программирования AI, но мне конечно сейчас уже не вспомнить те ситуации. А так, честно говоря, я давно уже не видел серьезных глюков в своей практике AI-программинга. Сейчас если я где-то и ошибаюсь, то это чаще всего приводит просто к тому, что накосяченная раса стоИт и не развивается. Мегазоггу. Лови содержимое моего autoexec.lua : autoexec.lua from GrOrc screenmode = 0 function toggle_screenmode() if screenmode == 0 then taskbar_hide() message_hide() screenmode = 1 else taskbar_show() message_show() screenmode = 0 end end bind("shift+tab", "toggle_screenmode()") run = Cpu_ControlLocalPlayer() run = setsimrate(35) bind("F1","setsimrate(5)") bind("F2","setsimrate(12)") bind("F3","setsimrate(20)") bind("F4","setsimrate(30)") bind("F5","test()") bind("F6","test1()") bind("F7","test2()") bind("F8","test3()") bind("F9","test4()") function test() local count=World_GetPlayerCount() g_Player1=World_GetPlayerAt(0); if count>1 then g_Player2=World_GetPlayerAt(1); World_EnablePlayerToPlayerFOW(g_Player1,g_Player2,0); end if count>2 then g_Player3=World_GetPlayerAt(2); World_EnablePlayerToPlayerFOW(g_Player1,g_Player3,0); end if count>3 then g_Player4=World_GetPlayerAt(3); World_EnablePlayerToPlayerFOW(g_Player1,g_Player4,0); end if count>4 then g_Player5=World_GetPlayerAt(4); World_EnablePlayerToPlayerFOW(g_Player1,g_Player5,0); end if count>5 then g_Player6=World_GetPlayerAt(5); World_EnablePlayerToPlayerFOW(g_Player1,g_Player6,0); end if count>6 then g_Player7=World_GetPlayerAt(6); World_EnablePlayerToPlayerFOW(g_Player1,g_Player7,0); end if count>7 then g_Player8=World_GetPlayerAt(7); World_EnablePlayerToPlayerFOW(g_Player1,g_Player8,0); end Player_SetResource(g_Player1,RT_Requisition,9999); Player_SetResource(g_Player1,RT_Power,9999); end function test1() local count=World_GetPlayerCount() g_Player1=World_GetPlayerAt(0); if count>1 then g_Player2=World_GetPlayerAt(1); World_EnablePlayerToPlayerFOW(g_Player1,g_Player2,0); end if count>2 then g_Player3=World_GetPlayerAt(2); World_EnablePlayerToPlayerFOW(g_Player1,g_Player3,0); end if count>3 then g_Player4=World_GetPlayerAt(3); World_EnablePlayerToPlayerFOW(g_Player1,g_Player4,0); end if count>4 then g_Player5=World_GetPlayerAt(4); World_EnablePlayerToPlayerFOW(g_Player1,g_Player5,0); end if count>5 then g_Player6=World_GetPlayerAt(5); World_EnablePlayerToPlayerFOW(g_Player1,g_Player6,0); end if count>6 then g_Player7=World_GetPlayerAt(6); World_EnablePlayerToPlayerFOW(g_Player1,g_Player7,0); end if count>7 then g_Player8=World_GetPlayerAt(7); World_EnablePlayerToPlayerFOW(g_Player1,g_Player8,0); end Player_SetResource(g_Player2,RT_Requisition,9999); Player_SetResource(g_Player2,RT_Power,9999); end function test2() local count=World_GetPlayerCount() g_Player1=World_GetPlayerAt(0); if count>1 then g_Player2=World_GetPlayerAt(1); World_EnablePlayerToPlayerFOW(g_Player1,g_Player2,0); end if count>2 then g_Player3=World_GetPlayerAt(2); World_EnablePlayerToPlayerFOW(g_Player1,g_Player3,0); end if count>3 then g_Player4=World_GetPlayerAt(3); World_EnablePlayerToPlayerFOW(g_Player1,g_Player4,0); end if count>4 then g_Player5=World_GetPlayerAt(4); World_EnablePlayerToPlayerFOW(g_Player1,g_Player5,0); end if count>5 then g_Player6=World_GetPlayerAt(5); World_EnablePlayerToPlayerFOW(g_Player1,g_Player6,0); end if count>6 then g_Player7=World_GetPlayerAt(6); World_EnablePlayerToPlayerFOW(g_Player1,g_Player7,0); end if count>7 then g_Player8=World_GetPlayerAt(7); World_EnablePlayerToPlayerFOW(g_Player1,g_Player8,0); end Player_SetResource(g_Player3,RT_Requisition,9999); Player_SetResource(g_Player3,RT_Power,9999); end function test3() local count=World_GetPlayerCount() g_Player1=World_GetPlayerAt(0); if count>1 then g_Player2=World_GetPlayerAt(1); World_EnablePlayerToPlayerFOW(g_Player1,g_Player2,0); end if count>2 then g_Player3=World_GetPlayerAt(2); World_EnablePlayerToPlayerFOW(g_Player1,g_Player3,0); end if count>3 then g_Player4=World_GetPlayerAt(3); World_EnablePlayerToPlayerFOW(g_Player1,g_Player4,0); end if count>4 then g_Player5=World_GetPlayerAt(4); World_EnablePlayerToPlayerFOW(g_Player1,g_Player5,0); end if count>5 then g_Player6=World_GetPlayerAt(5); World_EnablePlayerToPlayerFOW(g_Player1,g_Player6,0); end if count>6 then g_Player7=World_GetPlayerAt(6); World_EnablePlayerToPlayerFOW(g_Player1,g_Player7,0); end if count>7 then g_Player8=World_GetPlayerAt(7); World_EnablePlayerToPlayerFOW(g_Player1,g_Player8,0); end Player_SetResource(g_Player4,RT_Requisition,9999); Player_SetResource(g_Player4,RT_Power,9999); end function test4() local count=World_GetPlayerCount() g_Player1=World_GetPlayerAt(0); if count>1 then g_Player2=World_GetPlayerAt(1); World_EnablePlayerToPlayerFOW(g_Player1,g_Player2,0); end if count>2 then g_Player3=World_GetPlayerAt(2); World_EnablePlayerToPlayerFOW(g_Player1,g_Player3,0); end if count>3 then g_Player4=World_GetPlayerAt(3); World_EnablePlayerToPlayerFOW(g_Player1,g_Player4,0); end if count>4 then g_Player5=World_GetPlayerAt(4); World_EnablePlayerToPlayerFOW(g_Player1,g_Player5,0); end if count>5 then g_Player6=World_GetPlayerAt(5); World_EnablePlayerToPlayerFOW(g_Player1,g_Player6,0); end if count>6 then g_Player7=World_GetPlayerAt(6); World_EnablePlayerToPlayerFOW(g_Player1,g_Player7,0); end if count>7 then g_Player8=World_GetPlayerAt(7); World_EnablePlayerToPlayerFOW(g_Player1,g_Player8,0); end Player_SetResource(g_Player5,RT_Requisition,9999); Player_SetResource(g_Player5,RT_Power,9999); Player_SetResource(g_Player6,RT_Requisition,9999); Player_SetResource(g_Player6,RT_Power,9999); Player_SetResource(g_Player7,RT_Requisition,9999); Player_SetResource(g_Player7,RT_Power,9999); Player_SetResource(g_Player8,RT_Requisition,9999); Player_SetResource(g_Player8,RT_Power,9999); end Ссылка на комментарий Поделиться на другие сайты Поделиться
Leclerc Опубликовано 31 мая, 2010 Жалоба Поделиться Опубликовано 31 мая, 2010 (изменено) У меня тут возник наверное боянистый вопрос: при грейдах на силовое оружие, а потом на кулаки у сержантов простых тсм модель пиломеча не заменяется на силовой меч\кулак. Посмотрев файлы я понял, что именно проблема в моделях, а не в апгрейде, он вроде-бы всё должен грейдить нормально. Ну и еще заодно - у сержанта касркин пиломеч в руке смотрится немного архаично, в тот момент, когда есть модель силового оружия. Да и глупо как-то сержанту спецназа иметь меч хуже, чем у сержанта простой пехоты (сержанты гвардейцев то с силовым). Или такие проблемы только у меня? Изменено 31 мая, 2010 пользователем RuW)Leclerc Ссылка на комментарий Поделиться на другие сайты Поделиться
megazogg Опубликовано 31 мая, 2010 Жалоба Поделиться Опубликовано 31 мая, 2010 AI реализован на функциях ядра игры, и AI-скрипты -- это текстовый интерфейс с ними. Фактически внешний программинг в рамках готовой системы. Если писать скрипты некорректно, то можно добиться самых разных внутренних коллизий движка разной степени тяжести. Когда я косячил с AI, то чаще всего игра у меня не вылетала, а вставала на холд и/или ругалась. Но думаю, что вылет тоже можно спровоцировать. Наверняка в DoW1 есть такие баги, о которых и сами Релики не подозревают, да и для нас они не часто проявляются. Боюсь соврать, но вроде у меня подобные вылеты пару раз были когда-то давно в моей собственной практике программирования AI, но мне конечно сейчас уже не вспомнить те ситуации. А так, честно говоря, я давно уже не видел серьезных глюков в своей практике AI-программинга. Сейчас если я где-то и ошибаюсь, то это чаще всего приводит просто к тому, что накосяченная раса стоИт и не развивается. Мегазоггу. Лови содержимое моего autoexec.lua : autoexec.lua from GrOrc screenmode = 0 function toggle_screenmode() if screenmode == 0 then taskbar_hide() message_hide() screenmode = 1 else taskbar_show() message_show() screenmode = 0 end end bind("shift+tab", "toggle_screenmode()") run = Cpu_ControlLocalPlayer() run = setsimrate(35) bind("F1","setsimrate(5)") bind("F2","setsimrate(12)") bind("F3","setsimrate(20)") bind("F4","setsimrate(30)") bind("F5","test()") bind("F6","test1()") bind("F7","test2()") bind("F8","test3()") bind("F9","test4()") function test() local count=World_GetPlayerCount() g_Player1=World_GetPlayerAt(0); if count>1 then g_Player2=World_GetPlayerAt(1); World_EnablePlayerToPlayerFOW(g_Player1,g_Player2,0); end if count>2 then g_Player3=World_GetPlayerAt(2); World_EnablePlayerToPlayerFOW(g_Player1,g_Player3,0); end if count>3 then g_Player4=World_GetPlayerAt(3); World_EnablePlayerToPlayerFOW(g_Player1,g_Player4,0); end if count>4 then g_Player5=World_GetPlayerAt(4); World_EnablePlayerToPlayerFOW(g_Player1,g_Player5,0); end if count>5 then g_Player6=World_GetPlayerAt(5); World_EnablePlayerToPlayerFOW(g_Player1,g_Player6,0); end if count>6 then g_Player7=World_GetPlayerAt(6); World_EnablePlayerToPlayerFOW(g_Player1,g_Player7,0); end if count>7 then g_Player8=World_GetPlayerAt(7); World_EnablePlayerToPlayerFOW(g_Player1,g_Player8,0); end Player_SetResource(g_Player1,RT_Requisition,9999); Player_SetResource(g_Player1,RT_Power,9999); end function test1() local count=World_GetPlayerCount() g_Player1=World_GetPlayerAt(0); if count>1 then g_Player2=World_GetPlayerAt(1); World_EnablePlayerToPlayerFOW(g_Player1,g_Player2,0); end if count>2 then g_Player3=World_GetPlayerAt(2); World_EnablePlayerToPlayerFOW(g_Player1,g_Player3,0); end if count>3 then g_Player4=World_GetPlayerAt(3); World_EnablePlayerToPlayerFOW(g_Player1,g_Player4,0); end if count>4 then g_Player5=World_GetPlayerAt(4); World_EnablePlayerToPlayerFOW(g_Player1,g_Player5,0); end if count>5 then g_Player6=World_GetPlayerAt(5); World_EnablePlayerToPlayerFOW(g_Player1,g_Player6,0); end if count>6 then g_Player7=World_GetPlayerAt(6); World_EnablePlayerToPlayerFOW(g_Player1,g_Player7,0); end if count>7 then g_Player8=World_GetPlayerAt(7); World_EnablePlayerToPlayerFOW(g_Player1,g_Player8,0); end Player_SetResource(g_Player2,RT_Requisition,9999); Player_SetResource(g_Player2,RT_Power,9999); end function test2() local count=World_GetPlayerCount() g_Player1=World_GetPlayerAt(0); if count>1 then g_Player2=World_GetPlayerAt(1); World_EnablePlayerToPlayerFOW(g_Player1,g_Player2,0); end if count>2 then g_Player3=World_GetPlayerAt(2); World_EnablePlayerToPlayerFOW(g_Player1,g_Player3,0); end if count>3 then g_Player4=World_GetPlayerAt(3); World_EnablePlayerToPlayerFOW(g_Player1,g_Player4,0); end if count>4 then g_Player5=World_GetPlayerAt(4); World_EnablePlayerToPlayerFOW(g_Player1,g_Player5,0); end if count>5 then g_Player6=World_GetPlayerAt(5); World_EnablePlayerToPlayerFOW(g_Player1,g_Player6,0); end if count>6 then g_Player7=World_GetPlayerAt(6); World_EnablePlayerToPlayerFOW(g_Player1,g_Player7,0); end if count>7 then g_Player8=World_GetPlayerAt(7); World_EnablePlayerToPlayerFOW(g_Player1,g_Player8,0); end Player_SetResource(g_Player3,RT_Requisition,9999); Player_SetResource(g_Player3,RT_Power,9999); end function test3() local count=World_GetPlayerCount() g_Player1=World_GetPlayerAt(0); if count>1 then g_Player2=World_GetPlayerAt(1); World_EnablePlayerToPlayerFOW(g_Player1,g_Player2,0); end if count>2 then g_Player3=World_GetPlayerAt(2); World_EnablePlayerToPlayerFOW(g_Player1,g_Player3,0); end if count>3 then g_Player4=World_GetPlayerAt(3); World_EnablePlayerToPlayerFOW(g_Player1,g_Player4,0); end if count>4 then g_Player5=World_GetPlayerAt(4); World_EnablePlayerToPlayerFOW(g_Player1,g_Player5,0); end if count>5 then g_Player6=World_GetPlayerAt(5); World_EnablePlayerToPlayerFOW(g_Player1,g_Player6,0); end if count>6 then g_Player7=World_GetPlayerAt(6); World_EnablePlayerToPlayerFOW(g_Player1,g_Player7,0); end if count>7 then g_Player8=World_GetPlayerAt(7); World_EnablePlayerToPlayerFOW(g_Player1,g_Player8,0); end Player_SetResource(g_Player4,RT_Requisition,9999); Player_SetResource(g_Player4,RT_Power,9999); end function test4() local count=World_GetPlayerCount() g_Player1=World_GetPlayerAt(0); if count>1 then g_Player2=World_GetPlayerAt(1); World_EnablePlayerToPlayerFOW(g_Player1,g_Player2,0); end if count>2 then g_Player3=World_GetPlayerAt(2); World_EnablePlayerToPlayerFOW(g_Player1,g_Player3,0); end if count>3 then g_Player4=World_GetPlayerAt(3); World_EnablePlayerToPlayerFOW(g_Player1,g_Player4,0); end if count>4 then g_Player5=World_GetPlayerAt(4); World_EnablePlayerToPlayerFOW(g_Player1,g_Player5,0); end if count>5 then g_Player6=World_GetPlayerAt(5); World_EnablePlayerToPlayerFOW(g_Player1,g_Player6,0); end if count>6 then g_Player7=World_GetPlayerAt(6); World_EnablePlayerToPlayerFOW(g_Player1,g_Player7,0); end if count>7 then g_Player8=World_GetPlayerAt(7); World_EnablePlayerToPlayerFOW(g_Player1,g_Player8,0); end Player_SetResource(g_Player5,RT_Requisition,9999); Player_SetResource(g_Player5,RT_Power,9999); Player_SetResource(g_Player6,RT_Requisition,9999); Player_SetResource(g_Player6,RT_Power,9999); Player_SetResource(g_Player7,RT_Requisition,9999); Player_SetResource(g_Player7,RT_Power,9999); Player_SetResource(g_Player8,RT_Requisition,9999); Player_SetResource(g_Player8,RT_Power,9999); end Спасибо за конфиг. Скачал и поставил 1.53. Все работает прекрасно, без всяких вылетов. На настоящий момент я уже скопировал в 1.53 и проверил в игре на вылеты файлы (ИИ, текстуры и модели, код) из 1.53.2 для ИГ и КД - игра стабильна при игре против любой расы. Теряюсь в догадках... <_< Ссылка на комментарий Поделиться на другие сайты Поделиться
UnknownLOL Опубликовано 31 мая, 2010 Жалоба Поделиться Опубликовано 31 мая, 2010 (изменено) GrOrc Тогда ИИ может быть виноват только если в ИИ скриптах есть специальные алгоритмы поведения при игре с определенным союзником. Т.е. например, конкретно КД с ИГ, или КД с Тау (чего я лично не замечал), потому что вылетов 1 на 1 вроде не было. Если я не ошибаюсь проблема в 2 на 2 и больше (можно было еще попробовать 1 на 2). Вобщем можно конечно и дальше лезть в дебри, но если такой простой тест как снижение настроек графики дал результаты, то я бы не стал... Спасибо за конфиг. Скачал и поставил 1.53. Все работает прекрасно, без всяких вылетов. На настоящий момент я уже скопировал в 1.53 и проверил в игре на вылеты файлы (ИИ, текстуры и модели, код) из 1.53.2 для ИГ и КД - игра стабильна при игре против любой расы. Теряюсь в догадках... O_o Хех, ладно, хорошо, что хорошо закончилось, а то я бы все равно стоял на своем =) Изменено 31 мая, 2010 пользователем UnknownLOL Ссылка на комментарий Поделиться на другие сайты Поделиться
megazogg Опубликовано 31 мая, 2010 Жалоба Поделиться Опубликовано 31 мая, 2010 (изменено) O_o Хех, ладно, хорошо, что хорошо закончилось, а то я бы все равно стоял на своем =) Плюсуем к списку стабильных рас Хаос. Пока еще не закончилось. Тем более, что это не нормальное решение проблемы - причина вылета пока не понятна все равно, а если ее не найти, то где гарантии, что я ее случайно не повторю снова. <_< Изменено 31 мая, 2010 пользователем megazogg Ссылка на комментарий Поделиться на другие сайты Поделиться
megazogg Опубликовано 31 мая, 2010 Жалоба Поделиться Опубликовано 31 мая, 2010 (изменено) Так, я нашел причину вылетов... Как бы это не казалось маловероятным, но причина вылетов кроется в музыкальном моде. Удалите папку data\sound\music из мода и playlist файл и все станет в порядке. Жаль конечно, мне музыка из ДОВ2 нравилась гораздо больше чем из ДОВ1, но видимо я когда кодировал ее под стандарт ДОВ1, что-то не правильно сделал. Ах да, и специально для ГрОрка... :image045: А то развел тут панимаш, разговоры про ядра и прочее. А все в итоге оказалось намного экзотичнее! :image040: Но зато в процессе было выполнено куча нужной оптимизации и меня посетило вдохновение о том, как можно нарисовать знамя ИГ и как именно его сделать окрашиваемым, так что завтро пожалуй попробую, а то посмотрел я на текстуру знамени от Баззззза... Ох. :oops: Изменено 31 мая, 2010 пользователем megazogg Ссылка на комментарий Поделиться на другие сайты Поделиться
Skinnie Опубликовано 1 июня, 2010 Жалоба Поделиться Опубликовано 1 июня, 2010 (изменено) Так может в самом файле плэй-листа ошибка где-нибудь? Ты когда выкладывал музыку из ДоВ II я себе сразу ее поставил, все работает. Треки только тише чем остальные (заметно тише, раза в 1.5). P.S. Версия GrOrc'а, имо, самая логичная, мы когда у Темпларов сталкивались с вылетами в систему - проблемы находили именно в ИИ. Изменено 1 июня, 2010 пользователем Skinnie Ссылка на комментарий Поделиться на другие сайты Поделиться
GrOrc Опубликовано 1 июня, 2010 Жалоба Поделиться Опубликовано 1 июня, 2010 Так, я нашел причину вылетов... Как бы это не казалось маловероятным, но причина вылетов кроется в музыкальном моде. Удалите папку data\sound\music из мода и playlist файл и все станет в порядке. Жаль конечно, мне музыка из ДОВ2 нравилась гораздо больше чем из ДОВ1, но видимо я когда кодировал ее под стандарт ДОВ1, что-то не правильно сделал. Ах да, и специально для ГрОрка... :image045: А то развел тут панимаш, разговоры про ядра и прочее. А все в итоге оказалось намного экзотичнее! :image040: Но зато в процессе было выполнено куча нужной оптимизации и меня посетило вдохновение о том, как можно нарисовать знамя ИГ и как именно его сделать окрашиваемым, так что завтро пожалуй попробую, а то посмотрел я на текстуру знамени от Баззззза... Ох. :oops: Собственно "разговоры про ядра и прочее" я завел только для того, чтобы морально вас поддержать и направить на путь истинный. ;) А то ваши мысли тогда уже зашли в совсем гиблое русло, и вы пали духом. Начали винить игру в грехах, которые она не имеет. ;) Проблема, как я и говорил, не в ресурсах компа, а в некорректном моддинге. Тебе просто повезло, что это в данном случае оказался не AI. ;) Но суть то все та же. Если что-то некорректное ядру DoW-а совать, то оно будет капризничать и не кушать это. Так что "разговоры про ядра и прочее" оказались весьма к месту. ;) Ссылка на комментарий Поделиться на другие сайты Поделиться
megazogg Опубликовано 1 июня, 2010 Жалоба Поделиться Опубликовано 1 июня, 2010 Так может в самом файле плэй-листа ошибка где-нибудь? Ты когда выкладывал музыку из ДоВ II я себе сразу ее поставил, все работает. Треки только тише чем остальные (заметно тише, раза в 1.5). P.S. Версия GrOrc'а, имо, самая логичная, мы когда у Темпларов сталкивались с вылетами в систему - проблемы находили именно в ИИ. Не знаю, это все равно по отдельности не проверишь - без плейлиста музыка не будет работать, а без музыки не будет работать плейлист. Да и что можно было напутать в плейлисте? "Тырк"playlist = { tracks = { "ch_race", "credits_music", "el_theme", "endtheme", "hulk_song_1", "hulk_song_2", "hulk_song_3", "hulk_song_4", "or_theme", "sm_theme", "space_hulk", "ty_theme", "world_chaos_a", "world_chaos_b", "world_chaos_c", "world_chaos_d", "world_chaos_e", "world_e_v2_ork", "world_h_v2_ork", "world_j_v2_el", "world_k_v2_tyr", "worlda_sm", "worldb_tyr", "worldc_sm", "worldd_ork", "worldf_sm", "worldgnew_ty", "worldi_el", "worldl_el", }, silence_min = 5.0, silence_max = 10.0, order = false, } Скорее всего я неправильно настройки выставил при перекодировании. Возможно нужно было битность уменьшить, моно звук поставить вместо стерео или еще что. [ Добавлено спустя 5 минут 54 секунды ] Собственно "разговоры про ядра и прочее" я завел только для того, чтобы морально вас поддержать и направить на путь истинный. ;) А то ваши мысли тогда уже зашли в совсем гиблое русло, и вы пали духом. Начали винить игру в грехах, которые она не имеет. ;) Проблема, как я и говорил, не в ресурсах компа, а в некорректном моддинге. Тебе просто повезло, что это в данном случае оказался не AI. ;) Но суть то все та же. Если что-то некорректное ядру DoW-а совать, то оно будет капризничать и не кушать это. Так что "разговоры про ядра и прочее" оказались весьма к месту. ;) Да я все понимаю, не боись. Хотя имо лучше бы проблема была именно в коде ИИ, ее бы я все таки быстрее нашел и она более ожидаема. Просто мне повезло, что как человек постоянно сталкивающийся со сгорающими компами из-за скачков напряжения, я привык мыслить нестандартно =) У меня когда прошлый комп начал зависать каждые 5-30 минут, по всем признакам тоже было похоже на погоревшую видюху или в крайнем случае на проц, а в итоге оказалось что сгорел северный мост. Ссылка на комментарий Поделиться на другие сайты Поделиться
GrOrc Опубликовано 1 июня, 2010 Жалоба Поделиться Опубликовано 1 июня, 2010 (изменено) Так, я нашел причину вылетов... Как бы это не казалось маловероятным, но причина вылетов кроется в музыкальном моде. Удалите папку data\sound\music из мода и playlist файл и все станет в порядке. Жаль конечно, мне музыка из ДОВ2 нравилась гораздо больше чем из ДОВ1, но видимо я когда кодировал ее под стандарт ДОВ1, что-то не правильно сделал. Кстати, а проблема точно исчезла? Насколько хорошо ты в этом убедился? Сколько было игровых тестов? ;) Revised 1.53 Folders 1257 Files 10327 Size 1,78 Gb Но нет худа без добра, я сейчас порезал всякие ненужные файлы (код, модели, текстуры), м сжал мод до таких размеров: Folders: 1,175 Files: 8,561 Size: 2,24 Gb :P Хе-хе. Интересный подход к удалению файлов. Первый раз в жизни вижу человека, у которого после удаления файлов размер вырос на полгига. ;) Слово "сжал" надо понимать со знаком минус? ;) Изменено 1 июня, 2010 пользователем GrOrc Ссылка на комментарий Поделиться на другие сайты Поделиться
megazogg Опубликовано 2 июня, 2010 Жалоба Поделиться Опубликовано 2 июня, 2010 (изменено) Кстати, а проблема точно исчезла? Насколько хорошо ты в этом убедился? Сколько было игровых тестов? ;) Десять вчера, все игроки - ИИ, во всех комбинациях, какие я смог придумать, на 2-х стандартных картах (Cape of Despair (4p) и Не помню как называется, про столицу из кампании СС что-то (8)). Сегодня буду еще тестировать потому что пока пытался разбираться в чем причина, слегка запорол ИИ ИГ, он при выборе тактики для отрядов (я там закоментил кое что, но судя по всему не до конца) фризится. Хе-хе. Интересный подход к удалению файлов. Первый раз в жизни вижу человека, у которого после удаления файлов размер вырос на полгига. ;) Слово "сжал" надо понимать со знаком минус? ;) Это с музыкой вместе размер. Без нее папка сейчас весит 1.44 Гб. Кстати, как только разберусь с ИИ ИГ, грянет очередной полновесный релиз 1.54 мода. После всей этой эпопеи с вылетами я решил, что мод заслуживает нового порядкового номера (вместо 1.53.2) и полного релиза, т.к. существенно переработалась его файловая структура. Изменения будут следующие: Версия 1.54 - Всем видам огнеметов, а так же Chem Cannon'у включен модификатор start_from_caster, что позволяет исправить застарелый баг движка, когда повреждения от огнеметов (или любого другого оружия с моделью стрельбы конусом) начинали обсчитываться не от стреляющего оружия и дальше, а от цели. - Изменена дальность стрельбы всех тяжелых огнеметов с 15 ед. до 25 ед. - Исправлена проблема с вылетами игры при игре против 2 и более ИИ оппонентов. Проблема заключалась в неправильно портированной музыке из ДоВ2. - Угол конуса тяжелых огнеметов у Хаоса, Элдар, ИГ и частично у КД приведен в соответствие с остальными расами и теперь составляет 40 градусов. - Изменена горячая клавиша для Call for Extraction с "T" на "Y". - Увеличен урон бомб способности Call in an Air Strike!, радиус поражения снижен с 6 до 4, изменена таблица пенетрации брони для нее. - Изменен текст описания Special Weapons Squad. - Изменено описание Command Squad КД, исключены ссылки на Апотекария, уточнен текст. - Изменена цена отряда Dire Avenger с 130 req. до 200 req. - Пенетрация Chem Cannon (Banewolf) всех типов брони снижена на 10 единиц. - Исправлены неправильно указаные имена отрядов HWT в guardbuildbasestrategy.ai - Исправлена ошибка, приводившая к вылету игры при игре против Элдар на картах с 2 или более компьютерными оппонентами. - Исключен War Walker Элдар в виду своей общей убогости как вида так и анимации. Подождем когда в ФОК появится своя, нормальная модель. - Command Squad КД перенесен на Т1, пехотный кап увеличен с 2 до 3 ед. - Дальность действия Hunter-Killer Missile у Dreadnought и Chimera снижена с 1000 до 100 ед. - Увеличено время перезарядки Call in an Air Strike! со 120 до 180 сек., растояние вызова снижено с 50 до 40. - Изменены условия покупки специального (Sniper Rifle и Shotgun) и тяжелого (Heavy Bolter и Missile Launcher) оружия для отрядов Scouts - теперь им для этого сначала нужно купить исследование Special and Heavy Weapons Training (бывшее Sniper Training), наличие Armory не требуется. - Исключен Chapter Master КД и его Honor Guard, модель Captain КД заменена на модель Chapter Master. - Изменена пенетрация брони бомб абилки Call in an Air Strike! увеличена с 0 до 100. - Исключены исследования Veteran Infiltration Research и Tank Hunters Research для ветеранов КД - оказывается в 5-ой редакции кодекса их больше нет. Из текстов описаний этих отрядов исключены строки с соответствующими отсылками на эти исследования. - Добавлен Standard Bearer в Command Squad ИГ. - Количество единиц в отряде Wraithguard изменено с 3-6 до 1-3. Увеличена скорость передвижения с 10 до 16, убран "сержант" Warlock. Изменено 2 июня, 2010 пользователем megazogg Ссылка на комментарий Поделиться на другие сайты Поделиться
Noa Опубликовано 3 июня, 2010 Жалоба Поделиться Опубликовано 3 июня, 2010 - Исключен Chapter Master КД и его Honor Guard, модель Captain КД заменена на модель Chapter Master. Орбитальный удар,тогда будет снова у капитана? если я не путаю,он было только у чаптера... Ссылка на комментарий Поделиться на другие сайты Поделиться
Торпеда Опубликовано 3 июня, 2010 Жалоба Поделиться Опубликовано 3 июня, 2010 Wraithguard'ы я так полагаю теперь будут аналогом облитов? Ссылка на комментарий Поделиться на другие сайты Поделиться
megazogg Опубликовано 3 июня, 2010 Жалоба Поделиться Опубликовано 3 июня, 2010 (изменено) У меня тут возник наверное боянистый вопрос: при грейдах на силовое оружие, а потом на кулаки у сержантов простых тсм модель пиломеча не заменяется на силовой меч\кулак. Посмотрев файлы я понял, что именно проблема в моделях, а не в апгрейде, он вроде-бы всё должен грейдить нормально. Да, это ошибка в модели сержанта. Просто в ФОК с 2008 года, аккурат перед тем как ушел Медес, он заменил "стандартные" модели сержантов на модели сержантов-ветеранов, т.е. с шлемами другго цвета, тряпкой и другим варгиаром (комбиоружие и т.п.), что не правильно. Поэтому я использую старую версию. Ну и еще заодно - у сержанта касркин пиломеч в руке смотрится немного архаично, в тот момент, когда есть модель силового оружия. Да и глупо как-то сержанту спецназа иметь меч хуже, чем у сержанта простой пехоты (сержанты гвардейцев то с силовым). Или такие проблемы только у меня? Пиломеч поправил, в игре правда еще не проверял, но все должно работать. - Исключен Chapter Master КД и его Honor Guard, модель Captain КД заменена на модель Chapter Master. Орбитальный удар,тогда будет снова у капитана? если я не путаю,он было только у чаптера... Абсолютно верно, все так и есть. Wraithguard'ы я так полагаю теперь будут аналогом облитов? Не совсем. Это скорее мини-Wraithlord'ы. Я все еще не решил, как увеличить их живучесть - возможно поставлю им демонический тип брони вместо тяж. пехоты. Изменено 3 июня, 2010 пользователем megazogg Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Пожалуйста, войдите, чтобы комментировать
Вы сможете оставить комментарий после входа в
Войти