Автор Тема: Проверить бы TXD Pool.  (Прочитано 2095 раз)

Оффлайн Sektor

  • Администратор
  • Постоялец
  • *****
  • Сообщений: 518
  • Репутация: +34/-0
    • Просмотр профиля
Проверить бы TXD Pool.
« : Март 21, 2014, 09:52:01 pm »
Интересно бы проверить бы этот пул:

Код: ASM
  1. .text:0058102C 004 68 69 05 00 00                                                  push    1385
  2. .text:00581031 008 E8 1A 01 00 00                                                  call    CPool_CTexDictionary__constructor

Возможно это лимиты на максимальное кол-во TXD файлов. Для этого нужно по играть с push  1385... На сколько я помню, у многих наверное была проблема при добавлении новых TXD файлов в IMG, был тупо вылет. Так что возможно это значение и будет всему решение, но пока точно я не уверен. Но имейте введу, значение вы должны подменить заранее, пока еще функция не выполнилась, таким образом будет размер для TXD, такой какой вам нужен.
« Последнее редактирование: Март 21, 2014, 10:06:27 pm от Sektor »

Оффлайн xanser

  • Главный Модератор
  • Постоялец
  • *****
  • Сообщений: 550
  • Репутация: +74/-0
  • Есть такая профессия - на работе сидеть
    • Просмотр профиля
Re: Проверить бы TXD Pool.
« Ответ #1 : Март 24, 2014, 09:07:34 am »
В минус работает замечательно, стабильный вылет.
В плюс видно что пытается, но игра вылетает дальше на загрузке на адресе 0x640D0B.
Добавлял копированием generic.txd (в generic1.txd, generic2.txd...), прописыванием их в default.dat и заменой в generic.ide, у меня 1370 txd, соответственно 15 добавляются, 16 уже нет, увеличение лимита не помогает.

P.S. Лимит менял в момент, когда меняю папку сохранения, параметры Limit Adjuster'а, отключаю видео и т.д. Там еще есть места, где попадается 1385 (69 05 00 00), надо везде попробовать заменить
« Последнее редактирование: Март 24, 2014, 09:16:45 am от xanser »

Оффлайн Sektor

  • Администратор
  • Постоялец
  • *****
  • Сообщений: 518
  • Репутация: +34/-0
    • Просмотр профиля
Re: Проверить бы TXD Pool.
« Ответ #2 : Март 24, 2014, 01:19:20 pm »
Патчинг делал обычным ASI плагином?

Оффлайн xanser

  • Главный Модератор
  • Постоялец
  • *****
  • Сообщений: 550
  • Репутация: +74/-0
  • Есть такая профессия - на работе сидеть
    • Просмотр профиля
Re: Проверить бы TXD Pool.
« Ответ #3 : Март 24, 2014, 01:20:46 pm »
d3d8.dll. Заменил уже все вхождения 1385, не помогло.

Оффлайн Sektor

  • Администратор
  • Постоялец
  • *****
  • Сообщений: 518
  • Репутация: +34/-0
    • Просмотр профиля
Re: Проверить бы TXD Pool.
« Ответ #4 : Март 24, 2014, 01:23:56 pm »
Вылет именно, и за патчинга?

Вчера делал патчинг:
Код: C++
  1.        
  2.  DWORD _old;
  3.  VirtualProtect((LPVOID)(0x058102C + 1), 5,  PAGE_READWRITE, &_old);
  4.   *(DWORD*)(0x058102C + 1) = 9000;
  5.  VirtualProtect((LPVOID)(0x058102C + 1), 5, _old, &_old);

Fast ASI Loader-ом, загружал, вылета не было но и результата тоже, для обычных текстур, а для IMG, не знаю.
« Последнее редактирование: Март 24, 2014, 01:27:52 pm от Sektor »

Оффлайн xanser

  • Главный Модератор
  • Постоялец
  • *****
  • Сообщений: 550
  • Репутация: +74/-0
  • Есть такая профессия - на работе сидеть
    • Просмотр профиля
Re: Проверить бы TXD Pool.
« Ответ #5 : Март 24, 2014, 01:43:44 pm »
А ты txd привязываешь к объектам в IDE или просто добавляешь?
Ну вот так выглядит вылет без патчинга и с патчингом с одной лишней txd, именно привязанной к объекту.

Оффлайн Sektor

  • Администратор
  • Постоялец
  • *****
  • Сообщений: 518
  • Репутация: +34/-0
    • Просмотр профиля
Re: Проверить бы TXD Pool.
« Ответ #6 : Март 24, 2014, 02:34:50 pm »
Нет, я тут просто патчинг сделал... Но надо бы решить этот весь вопрос, снять все эти лимиты как-то, это необходимо все для моддинга...

Оффлайн xanser

  • Главный Модератор
  • Постоялец
  • *****
  • Сообщений: 550
  • Репутация: +74/-0
  • Есть такая профессия - на работе сидеть
    • Просмотр профиля
Re: Проверить бы TXD Pool.
« Ответ #7 : Март 24, 2014, 02:37:50 pm »
У меня само по себе увеличение лимита вылет не вызывает, только когда начинаешь эти лимиты использовать, оказывается что не так все просто.
Через IMG то же самое, как и с подключаемыми TXD
« Последнее редактирование: Март 24, 2014, 02:49:37 pm от xanser »

Оффлайн Sektor

  • Администратор
  • Постоялец
  • *****
  • Сообщений: 518
  • Репутация: +34/-0
    • Просмотр профиля
Re: Проверить бы TXD Pool.
« Ответ #8 : Март 24, 2014, 03:13:06 pm »
Да, одного пула это мало. Я даже эти места патчил, и толку конечно ноль, не чего не дает...


Код: C++
  1.           WriteInt(0x041065D + 2, 9000);
  2.           WriteInt(0x0580FD4 + 2, 9000);
  3.           WriteInt(0x061D98B + 1, 9000);
  4.           WriteInt(0x061D9E5 + 1, 9000);
  5.           WriteInt(0x061DAA5 + 1, 9000);
  6.           WriteInt(0x061DBA5 + 1, 9000);
  7.           WriteInt(0x061DCFA + 2, 9000);
  8.           WriteInt(0x061DD39 + 1, 9000);

Оффлайн xanser

  • Главный Модератор
  • Постоялец
  • *****
  • Сообщений: 550
  • Репутация: +74/-0
  • Есть такая профессия - на работе сидеть
    • Просмотр профиля
Re: Проверить бы TXD Pool.
« Ответ #9 : Март 24, 2014, 03:28:06 pm »
Ага, то же самое. Еще раз все проверил, лимит хранимых файлов в img-архиве, либо подключаемых внешних, это все же увеличивает, игры позволяет запуститься, только пока нельзя использовать больше стандартного.

Оффлайн Sektor

  • Администратор
  • Постоялец
  • *****
  • Сообщений: 518
  • Репутация: +34/-0
    • Просмотр профиля
Re: Проверить бы TXD Pool.
« Ответ #10 : Март 24, 2014, 06:14:11 pm »
Цитировать
лимит хранимых файлов в img-архиве
Т.е это увеличило лимит в IMG, для хранения TXD?

Оффлайн xanser

  • Главный Модератор
  • Постоялец
  • *****
  • Сообщений: 550
  • Репутация: +74/-0
  • Есть такая профессия - на работе сидеть
    • Просмотр профиля
Re: Проверить бы TXD Pool.
« Ответ #11 : Март 25, 2014, 04:16:47 am »
Да увеличило, если добавить лишние в архив и не патчить, игра выдаст первую ошибку, а так нормально запускается, проблема только при обращении. Кстати в Limit Adjuster 2 beta 6 этот лимит присутствует, не знаю насколько работает.

Оффлайн Sektor

  • Администратор
  • Постоялец
  • *****
  • Сообщений: 518
  • Репутация: +34/-0
    • Просмотр профиля
Re: Проверить бы TXD Pool.
« Ответ #12 : Март 25, 2014, 04:31:56 am »
Хорошо, дело сделано, хотя-бы уже с лимитами для IMG. Теперь бы найти бы, лимиты внешних TXD, т.е которые находятся вне IMG архива.

Оффлайн xanser

  • Главный Модератор
  • Постоялец
  • *****
  • Сообщений: 550
  • Репутация: +74/-0
  • Есть такая профессия - на работе сидеть
    • Просмотр профиля
Re: Проверить бы TXD Pool.
« Ответ #13 : Март 25, 2014, 06:09:15 am »
Для внешних вообще нет лимита, можно добавлять в default.dat хоть сколько, игра запускается, но также нельзя использовать лишние. Их можно вообще не рассматривать, они в игре появляются с большой задержкой.
« Последнее редактирование: Март 25, 2014, 06:14:52 am от xanser »