AviaSkins.Forums

AviaSkins.Forums (http://forum.aviaskins.com/index.php)
-   Ил-2 Штурмовик: Забытые Сражения (http://forum.aviaskins.com/forumdisplay.php?f=15)
-   -   Нестандартные наборы вооружений в ИЛ-2 Забытые сражения (http://forum.aviaskins.com/showthread.php?t=4929)

OtVint 04.02.2018 12:39

Нестандартные наборы вооружений в ИЛ-2 Забытые сражения
 
Здравствуйте! Подскажите, есть ли возможность как-то редактировать подвешиваемое оружие, изменить стандартное. Хочется иногда и с перегрузом вылететь. Например подвесить на ПЕшку не две фаб-500 и фаб-250, а, скажем, четыре фаб-500.
Какой файл за это отвечает и чем его открыть?

deSAD 04.02.2018 13:30

Цитата:

Сообщение от OtVint (Сообщение 173757)
... Какой файл за это отвечает и чем его открыть?

Т. н. "класс". И просто так его не "открыть" :DONT_KNOW: Кроме того, в "неМОДифицированном" ИЛе классы банально недоступны для непосредственного "открытия" чем бы то ни было, т. к. упакованы в .sfs.

OtVint 04.02.2018 13:44

У меня стоит модификация HSFX 7

deSAD 04.02.2018 14:07

Ну, тогда можете взглянуть на классы. Все они лежат в Files. Это файлы с именами вида Files 069011a66a749490. Как вы сами понимаете, просто так взять и "открыть" их по-прежнему невозможно :DONT_KNOW: Если в двух словах, то их сперва нужно декомпилировать каким-либо декомпилятором, наподобие DJ Java Decompiler, к примеру, получить исходный код на Java, изменить его, скомпилировать обратно и надеяться, что желаемый результат будет достигнут :ups:

OtVint 04.02.2018 14:32

Ясно. В такие дебри я уж не полезу. Ладно, спасибо!

Tychon 05.02.2018 09:08

Цитата:

Сообщение от OtVint (Сообщение 173757)
Хочется иногда и с перегрузом вылететь. Например подвесить на ПЕшку не две фаб-500 и фаб-250, а, скажем, четыре фаб-500.

4хФАБ-500 - любите альтернативную историю?;)
2хФАБ-500 - это и есть перегруз.:)
Даже нагрузка 2хФАБ-500+2хФАБ-250 не использовалась, только испытания проводились.

P.S.Вот возможность подвесить 4х100 на наружные держатели для использования с пикирования - вот это нужная вещь. Полбин вроде такой набор использовал в своем знаменитом вылете на склад ГСМ по Сталинградом.

Karabas-Barabas 05.02.2018 14:16

Необязательно лезть в класс самолета, можно изменить только его кусочек с вооружением, лежащий в папке COD. Правда все равно это будет мод и требуется спецутилитка, можно попросить на SAS.

tarakan67 05.02.2018 16:27

Цитата:

Сообщение от Karabas-Barabas (Сообщение 173811)
Необязательно лезть в класс самолета, можно изменить только его кусочек с вооружением, лежащий в папке COD. Правда все равно это будет мод и требуется спецутилитка, можно попросить на SAS.

Насколько я понял правки должны быть и в классе и в COD. COD нужна для проверки вооружения дефолтных самолётов. Если вооружение в классе и в COD не совпадает, игра не запускается.

Karabas-Barabas 05.02.2018 17:45

Цитата:

Сообщение от tarakan67 (Сообщение 173814)
Насколько я понял правки должны быть и в классе и в COD. COD нужна для проверки вооружения дефолтных самолётов. Если вооружение в классе и в COD не совпадает, игра не запускается.

Ну может сейчас и так, а года 4 назад можно было класс самолета не править.

Dimas1999 05.02.2018 17:54

Цитата:

Сообщение от tarakan67 (Сообщение 173814)
Насколько я понял правки должны быть и в классе и в COD. COD нужна для проверки вооружения дефолтных самолётов. Если вооружение в классе и в COD не совпадает, игра не запускается.

Если есть cod, то запись в классе не нужна, если отсутствует cod и он нужен, то у самолёта не будет никакого вооружения, если запись в cod и в классе не совпадает, то вооружение задвояется - сначала идёт содержимое cod, потом вооружение, прописанное в классе. Для этого вооружение надо расписывать подробно, как расписывает Вася. От cod легко избавиться - в классе надо указать на фингер и расписать вооружение подробно.

tarakan67 05.02.2018 18:11

Цитата:

Сообщение от Dimas1999 (Сообщение 173822)
От cod легко избавиться - в классе надо указать на фингер и расписать вооружение подробно.

В таком случае попробуй изменить вооружение любого дефолтного самолёта, не меняя названия его класса и не меняя cod. о результатах отпишись

Dimas1999 05.02.2018 20:37

Цитата:

Сообщение от tarakan67 (Сообщение 173823)
В таком случае попробуй изменить вооружение любого дефолтного самолёта, не меняя названия его класса и не меняя cod. о результатах отпишись

Мда. Я был не прав, но радует то, что читерам будет чуточку сложнее, но асов-программистов это не остановит. Я ошибочно полагал, что если расписать вооружение и прописать фингер, то от кода можно избавиться. У меня это получилось с модными крафтами, как я понял, если дублировать класс расписать вооружение и прописать фингер, то от кода можно избавиться, но классы дефолтных где-то прописаны и они проверяются дополнительно, даже если подробно расписать вооружение, ничего там не меняя (количество патронов и пушки те же), то всё равно получаем задвоенную загрузку, тут сработал cod. Но в cod можно трогать, не меняя класс, но это не точно) В ноябре эксперементировал на чистой 4.13.4, вроде как всё работало.
===============================================
Вот такой метод нашёл в классе Aircraft
public static void weapons(Class class1)
{
try
{
int i = Finger.Int("ce" + class1.getName() + "vd");
BufferedReader bufferedreader = new BufferedReader(new InputStreamReader(new KryptoInputFilter(new SFSInputStream(Finger.LongFN(0L, "cod/" + Finger.incInt(i, "adt"))), getSwTbl(i))));
ArrayList arraylist = weaponsListProperty(class1);
HashMapInt hashmapint = weaponsMapProperty(class1);
do
{
String s = bufferedreader.readLine();
if(s == null)
break;
StringTokenizer stringtokenizer = new StringTokenizer(s, ",");
int j = stringtokenizer.countTokens() - 1;
String s1 = stringtokenizer.nextToken();
_WeaponSlot a_lweaponslot[] = new _WeaponSlot[j];
for(int k = 0; k < j; k++)
{
String s2 = stringtokenizer.nextToken();
if(s2 != null && s2.length() > 3)
{
NumberTokenizer numbertokenizer = new NumberTokenizer(s2);
a_lweaponslot[k] = new _WeaponSlot(numbertokenizer.next(0), numbertokenizer.next(null), numbertokenizer.next(-12345));
}
}
видимо, это и есть проверка , тут и ссылка на содержимое папки cod/, и -12345 - конструкция из файлика код.
===============================================
Но не нашёл проверки конкретных самолётов. Может система работает иначе.

Vasya 05.02.2018 23:03

Цитата:

Сообщение от tarakan67 (Сообщение 173814)
Насколько я понял правки должны быть и в классе и в COD. COD нужна для проверки вооружения дефолтных самолётов. Если вооружение в классе и в COD не совпадает, игра не запускается.

Запускается.
Но если - допустим - дописать в меши новые хуки и в класс так же, а в файлике сод нет - то самолёт не соберётся в окне простого редактора. Это про дефолтные крафты. Ещё, если в сод, в классе и в мешах всё в порядке, а в планес дат это не будет отражено - то в динамических компаниях будут(возможно) проблеммы с некоторыми миссиями.

OtVint 17.02.2018 17:17

[QUOTE=Tychon;173798]4хФАБ-500 - любите альтернативную историю?;)
2хФАБ-500 - это и есть перегруз.:)
Даже нагрузка 2хФАБ-500+2хФАБ-250 не использовалась, только испытания проводились.

Можно же взять и половину топлива)


Текущее время: 12:50. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot