Universal Steam Extractor

Для тех, кто хочет сделать мир лучше.
Сообщение
Автор
Аватара пользователя
andreil
Разработчик
Разработчик
Сообщения: 781
Зарегистрирован: 14.08.2006
Откуда: Светлогорск, Беларусь
Поблагодарили: 2 раза
Контактная информация:

#31 Сообщение 06.04.2008, 21:18

Да, судя по всему, ошибка именно в программе. Ведь я в своей ДЛЛке старался делать как можно меньше мест, где возможны ошибки ;)

ЗЫ: С БМП так и не получилось пока разобраться :( Пиксели почемуто не сохраняются :( А так сейчас попробую немного оптимизировать работу ДЛЛки + добавлю еще пару фишек.
[url=svn://forum.csmania.ru/andreil]Репозиторий с моими проектами[/url]
Занимаюсь переносом всех своих библиотек на С++, а так же созданием их кроссплатформенных версий.
В команду переводчиков манги "Ah! My Goddess!" требуются переводчики с английского и тайперы (последних можем обучить, главное - желание).

Аватара пользователя
andreil
Разработчик
Разработчик
Сообщения: 781
Зарегистрирован: 14.08.2006
Откуда: Светлогорск, Беларусь
Поблагодарили: 2 раза
Контактная информация:

#32 Сообщение 07.04.2008, 09:05

Сегодня занят перелопачиванием USE на несколько другой лад. А именно, переведу всю систему на работу с указателем на PACKAGE, те одновременно можно будет открыть несколько файлов :) Соответственно, уменьшится объем кода (не везде, но всетаки) + система станет более гибкой.
[url=svn://forum.csmania.ru/andreil]Репозиторий с моими проектами[/url]
Занимаюсь переносом всех своих библиотек на С++, а так же созданием их кроссплатформенных версий.
В команду переводчиков манги "Ah! My Goddess!" требуются переводчики с английского и тайперы (последних можем обучить, главное - желание).

Аватара пользователя
andreil
Разработчик
Разработчик
Сообщения: 781
Зарегистрирован: 14.08.2006
Откуда: Светлогорск, Беларусь
Поблагодарили: 2 раза
Контактная информация:

#33 Сообщение 07.04.2008, 12:04

Итак, всетаки перевел USE на ООП не все 100%, поэтому теперь там такоеее есть, что ужас, а именно, класс Tpackage является наследником класа TSim, тот - класса TGcf, он - TWad, этот - TPak, и наконец, TPak является наследником TObj (базовый класс). Зато теперь уменьшился исходный код + облегчилось его чтение и понимание (особенно в файле "USEpackage.pas").

Итого: версия PC1 готова :Yahoo!:

ЗЫ: С извленчением WAD-ов так и не разобрался, да это и не так важно ;)

ЗЫЫ: Девелоперы, немного поменялось АПИ. будьте внимательны ;)
[url=svn://forum.csmania.ru/andreil]Репозиторий с моими проектами[/url]
Занимаюсь переносом всех своих библиотек на С++, а так же созданием их кроссплатформенных версий.
В команду переводчиков манги "Ah! My Goddess!" требуются переводчики с английского и тайперы (последних можем обучить, главное - желание).

Аватара пользователя
$t@t!c_V()1D
Разработчик
Разработчик
Сообщения: 2639
Зарегистрирован: 06.12.2007
Благодарил (а): 10 раз
Поблагодарили: 29 раз

#34 Сообщение 07.04.2008, 15:08

andreil, слушай, у тебя есть точные значения некоторых констант...VOID_UPDATE_PROGRESS, да и вообще, всех VOID'ов (и где ты их объявлял? :Search: )?...Возможно, в этом проблема моей ошибки. Т.к. сам NSIS писался на приплюснутом С, и поэтому, наверное, и возникает такая ошибка. Я попытаюсь реализовать вызов функции не через DLL, а напрямую - через NSIS, а для этого мне нужны значения вышеперечисленных констант.

Аватара пользователя
$t@t!c_V()1D
Разработчик
Разработчик
Сообщения: 2639
Зарегистрирован: 06.12.2007
Благодарил (а): 10 раз
Поблагодарили: 29 раз

#35 Сообщение 07.04.2008, 18:50

Ладно, уже не надо :blush: ...Реализовал через отдельно написанную мини-прогу :Yahoo!: (+17 Кб к тому, что уже есть - USE.dll, Sim.dll и GCFFILES.DAT) Ждите скорого выхода ModZ Launcher :) :suicide: ! andreil, еще раз спасибо за сотрудничество и за USE :wink: .

Аватара пользователя
andreil
Разработчик
Разработчик
Сообщения: 781
Зарегистрирован: 14.08.2006
Откуда: Светлогорск, Беларусь
Поблагодарили: 2 раза
Контактная информация:

#36 Сообщение 07.04.2008, 19:07

$t@t!c_V()1D писал(а):andreil, слушай, у тебя есть точные значения некоторых констант...VOID_UPDATE_PROGRESS, да и вообще, всех VOID'ов (и где ты их объявлял? :Search: )?...Возможно, в этом проблема моей ошибки. Т.к. сам NSIS писался на приплюснутом С, и поэтому, наверное, и возникает такая ошибка. Я попытаюсь реализовать вызов функции не через DLL, а напрямую - через NSIS, а для этого мне нужны значения вышеперечисленных констант.
Это перечислимый тип, а не константы ;) На С++ будет выглядеть так:

Код: Выделить всё

typedef enum
{
    VOID_OUT_TEXT,
    VOID_UPDATE_PROGRESS,
    VOID_START_ACTION,
    VOID_ERROR,
    VOID_END_ACTION,
    VOID_SET_VALUE
} TUSEVoid;
(посмотрел, как это дело описано в HlLib.h
Так же и со всеми остальными, за исключением USE_OVER_WRITE, USE_LIST_FOLDER и USE_LIST_FILES - это действительно константы :)
[url=svn://forum.csmania.ru/andreil]Репозиторий с моими проектами[/url]
Занимаюсь переносом всех своих библиотек на С++, а так же созданием их кроссплатформенных версий.
В команду переводчиков манги "Ah! My Goddess!" требуются переводчики с английского и тайперы (последних можем обучить, главное - желание).

Аватара пользователя
$t@t!c_V()1D
Разработчик
Разработчик
Сообщения: 2639
Зарегистрирован: 06.12.2007
Благодарил (а): 10 раз
Поблагодарили: 29 раз

#37 Сообщение 08.04.2008, 07:58

Мда...Так вот почему у меня были проблемы :dash: NSIS не поддерживает перечислимые типы :pardon: Поэтому-то и вылетал с ошибкой (скорее всего совместимости).

Я же говорю - Специфика... 8) . Тем не менее, ещё раз спасибо за столь модную DLL.

P.S.: В About'e уже упомянул :wink:

Аватара пользователя
$t@t!c_V()1D
Разработчик
Разработчик
Сообщения: 2639
Зарегистрирован: 06.12.2007
Благодарил (а): 10 раз
Поблагодарили: 29 раз

#38 Сообщение 08.04.2008, 14:53

Слушай, у тебя там оказывается проблема с распаковщиком GCF - я не знаю что там точно, но то, что hl2.exe на извлеченном по Vit_amin'овской технологии base source engine 2.gcf не запускается вовсе. Перераспаковал же GCFScape - все норм...че за..? :%)

Аватара пользователя
andreil
Разработчик
Разработчик
Сообщения: 781
Зарегистрирован: 14.08.2006
Откуда: Светлогорск, Беларусь
Поблагодарили: 2 раза
Контактная информация:

#39 Сообщение 08.04.2008, 16:12

$t@t!c_V()1D писал(а):Слушай, у тебя там оказывается проблема с распаковщиком GCF - я не знаю что там точно, но то, что hl2.exe на извлеченном по Vit_amin'овской технологии base source engine 2.gcf не запускается вовсе. Перераспаковал же GCFScape - все норм...че за..? :%)
Хм, проблема именно в ЕХЕшнике? Проверю.....

-----------------------

Проверил: распаковал эту ГЦФ своей прогой в одну папку, Скейпом - в другую, сверил УПК версии 5.7 обе папки - ноль различий ;) Но что-то парится :(

ЗЫ: При распаковке из GCF-архива ввел обработку случая, когда распаковываемый файл недокачан. В этом случае сохраняется то, что скачано и переходим к следующему файлу. Сделано это просто - если в таблице секторов встретился "0", значит этот сектор не закачан (за исключением самого первого сектора, он всегда "0", я это учел).

Немного уменьшил Sim.dll - до 22,5Кб :) Пытаюсь включить OBJ-файл, но выдает ошибку, так что пока придется обойтись ДЛЛкой :(

-----------------------

Включил GCFFILES.DAT в файл программы. Итог - 39Кб ДЛЛки.
Уже почти избавился от Sim.dll, что унесет с ветром еще 25Кб :)
[url=svn://forum.csmania.ru/andreil]Репозиторий с моими проектами[/url]
Занимаюсь переносом всех своих библиотек на С++, а так же созданием их кроссплатформенных версий.
В команду переводчиков манги "Ah! My Goddess!" требуются переводчики с английского и тайперы (последних можем обучить, главное - желание).

Аватара пользователя
x_000
Полковник
Полковник
Сообщения: 4889
Зарегистрирован: 25.02.2008
Откуда: Deutsches Reich
Благодарил (а): 6 раз
Поблагодарили: 18 раз

#40 Сообщение 09.04.2008, 00:25

а где можно найти какую-нибудь документацию по формату GCF-файлов? Хочется досконально во всем разобраться
Или мне придется наживлять иду?

eldest
Разработчик
Разработчик
Сообщения: 302
Зарегистрирован: 17.03.2008
Откуда: такие как я?
Поблагодарили: 2 раза
Контактная информация:

#41 Сообщение 09.04.2008, 03:50

x_000 писал(а):а где можно найти какую-нибудь документацию по формату GCF-файлов? Хочется досконально во всем разобраться
Или мне придется наживлять иду?
http://www.tommunism.net/wiki/GCF_Format

Аватара пользователя
andreil
Разработчик
Разработчик
Сообщения: 781
Зарегистрирован: 14.08.2006
Откуда: Светлогорск, Беларусь
Поблагодарили: 2 раза
Контактная информация:

#42 Сообщение 09.04.2008, 09:21

x_000 писал(а):а где можно найти какую-нибудь документацию по формату GCF-файлов? Хочется досконально во всем разобраться
Или мне придется наживлять иду?
А ты посмотри, как там у меня чтение заголовка реализовано ;) У меня все куда понятнее, чем в HlLib'е, это гарантирую :)
[url=svn://forum.csmania.ru/andreil]Репозиторий с моими проектами[/url]
Занимаюсь переносом всех своих библиотек на С++, а так же созданием их кроссплатформенных версий.
В команду переводчиков манги "Ah! My Goddess!" требуются переводчики с английского и тайперы (последних можем обучить, главное - желание).

Аватара пользователя
andreil
Разработчик
Разработчик
Сообщения: 781
Зарегистрирован: 14.08.2006
Откуда: Светлогорск, Беларусь
Поблагодарили: 2 раза
Контактная информация:

#43 Сообщение 10.04.2008, 14:35

Принял одно решение - буду делать создание СИМ-архивов на основе имеющихся GCF с файлами на диске. Само собой, больший приоритет бцдет у файлов на диске. Затем - создание PAK-архивов. Следующий шаг - запись в GCF обновленного файла, те не создание GCF с 0, а обновление.
[url=svn://forum.csmania.ru/andreil]Репозиторий с моими проектами[/url]
Занимаюсь переносом всех своих библиотек на С++, а так же созданием их кроссплатформенных версий.
В команду переводчиков манги "Ah! My Goddess!" требуются переводчики с английского и тайперы (последних можем обучить, главное - желание).

Аватара пользователя
andreil
Разработчик
Разработчик
Сообщения: 781
Зарегистрирован: 14.08.2006
Откуда: Светлогорск, Беларусь
Поблагодарили: 2 раза
Контактная информация:

#44 Сообщение 10.04.2008, 18:17

Внимание!!!! Найдена ошибка распаковки GCF, из-за которой криво распаковывались, например, WAD'ы из "counter strike.gcf", что приводило к неработоспособности или неиграбельности игры. Ошибка испаравлена,, смотрим вложение ;)
В общем-то ошибка была в построении таблицы секторов, как я и думал месяц назад :sorry: . Подсмотрел это дело в исходниках HlLib.dll. Проверено - все ОК.
[url=svn://forum.csmania.ru/andreil]Репозиторий с моими проектами[/url]
Занимаюсь переносом всех своих библиотек на С++, а так же созданием их кроссплатформенных версий.
В команду переводчиков манги "Ah! My Goddess!" требуются переводчики с английского и тайперы (последних можем обучить, главное - желание).

Аватара пользователя
impulse666
Полковник
Полковник
Сообщения: 7405
Зарегистрирован: 08.12.2005
Откуда: Atman
Благодарил (а): 2340 раз
Поблагодарили: 590 раз

#45 Сообщение 10.04.2008, 22:36

когда мне говорят я нашел "ошибуку" невольно возникает сомнение, а точно-ли это ошибка или автор ошибся насчет ошибки вследствии глобальной склонности к ошибкам?

(это такая шутка на опечатку :D)
Изображение
Негласные Правила
1. Пропаганда лицензии запрещена.
2. На форуме режим многоступенчатых стандартов Ψ. То что можно одним, нельзя другим. Решается правящей партией
3. Ники членов правящей партии (impulse666, NiGHt-LEshiY, SHADOW) искажают только в случае необходимости получить БАН.

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

Ответить Вложения 3