AviaSkins.Forums

AviaSkins.Forums (http://forum.aviaskins.com/index.php)
-   W.I.P. (http://forum.aviaskins.com/forumdisplay.php?f=38)
-   -   Tachikawa Ki-36 Type98 (Ida) (http://forum.aviaskins.com/showthread.php?t=4874)

tarakan67 12.04.2019 21:20

Давай сначала. Модель появилась в полном редакторе. Ставишь ей маршрутные точки, назначаешь вариант вооружения default(просто щёлкни мышью по окну вооружения во вкладке "свойства" и выбери из выпадающего списка "default"), сохраняешь миссию и запускаешь сохранённую миссию. Так модель появилась в игре?

tvister 12.04.2019 21:35

Цитата:

Сообщение от tarakan67 (Сообщение 193986)
назначаешь вариант вооружения default(просто щёлкни мышью по окну вооружения во вкладке "свойства" и выбери из выпадающего списка "default"),

В этом списке ничего нет, даже "default"

Цитата:

Сообщение от tarakan67 (Сообщение 193986)
Так модель появилась в игре?

Модель в игре появляется, в каком виде, писал выше. В миссии исходно два звена по четыре самолета, одно звено Ки-36 и один самолет игрока. При включении миссии появляется самолет игрока (с выключенным мотором) и один Ки-36 (остальные самолеты отсутствуют). Ки-36 как бы подбрасывает в воздух (мотор не работает) после чего он падает и взрывается...:(

Molva 12.04.2019 22:10

Цитата:

Сообщение от tvister (Сообщение 193988)
В этом списке ничего нет, даже "default"

Значит в классе косяки. И что-то подсказать могут только профессионалы, а им сейчас не до этого. Любители тоже могут подсказать, но надо сначала все пощупать.

tarakan67 12.04.2019 22:32

Цитата:

Сообщение от tvister (Сообщение 193988)
В этом списке ничего нет, даже "default"



Модель в игре появляется, в каком виде, писал выше. В миссии исходно два звена по четыре самолета, одно звено Ки-36 и один самолет игрока. При включении миссии появляется самолет игрока (с выключенным мотором) и один Ки-36 (остальные самолеты отсутствуют). Ки-36 как бы подбрасывает в воздух (мотор не работает) после чего он падает и взрывается...:(

Попробуй сделать миссию из одного звена, в котором только один самолёт Ки-36. Запусти миссию и проанализируй потом лог. Ты описываешь симптомы, когда в файле миссии записан вариант вооружения, которого нет в классе самолёта, используемого в этой миссии. Причём это не обязательно самолёт игрока. С другой стороны отсутствие вариантов вооружения однозначно указывает на проблему в прописке вооружения в классе самолёта.

tvister 12.04.2019 22:33

Вложений: 1
Всё, полетел. На классах от Ки-30. Позже буду разбирать посадку наблюдателя, работу блистеров и вооружения. Всем спасибо за посильную помощь. Пошел вкушать лимоны с коньяком.%)

Vasya 13.04.2019 01:00

Я писал уже, что раздел вооружения нужно выписать в соответствии с хуками в мешах, ну и проставить их по порядку.
Код:

        Aircraft.weaponTriggersRegister(class1, new int[] {
            0, 10, 3, 3, 3
        });
        Aircraft.weaponHooksRegister(class1, new String[] {
            "_MGUN01", "_MGUN02", "_ExternalBomb02", "_ExternalBomb03", "_ExternalBomb01"
        });
        try
        {
            ArrayList arraylist = new ArrayList();
            Property.set(class1, "weaponsList", arraylist);
            HashMapInt hashmapint = new HashMapInt();
            Property.set(class1, "weaponsMap", hashmapint);
            byte byte0 = 5;
            Aircraft._WeaponSlot a_lweaponslot[] = new Aircraft._WeaponSlot[byte0];
            String s = "default";
            a_lweaponslot = new Aircraft._WeaponSlot[byte0];
            a_lweaponslot[0] = new Aircraft._WeaponSlot(0, "MGunVikkerssi", 400);
            a_lweaponslot[1] = new Aircraft._WeaponSlot(10, "MGunVikkersKt", 420);
            a_lweaponslot[2] = null;
            a_lweaponslot[3] = null;
            a_lweaponslot[4] = null;
            for(int i = 5; i < byte0; i++)
                a_lweaponslot[i] = null;

            arraylist.add(s);
            hashmapint.put(Finger.Int(s), a_lweaponslot);
            s = "1x250";
            a_lweaponslot = new Aircraft._WeaponSlot[byte0];
            a_lweaponslot[0] = new Aircraft._WeaponSlot(0, "MGunVikkerssi", 400);
            a_lweaponslot[1] = new Aircraft._WeaponSlot(10, "MGunVikkersKt", 420);
            a_lweaponslot[2] = null;
            a_lweaponslot[3] = null;
            a_lweaponslot[4] = new Aircraft._WeaponSlot(3, "BombGun250kgJ", 1);
            for(int j = 5; j < byte0; j++)
                a_lweaponslot[j] = null;
           
            arraylist.add(s);
            hashmapint.put(Finger.Int(s), a_lweaponslot);
            s = "none";
            a_lweaponslot = new Aircraft._WeaponSlot[byte0];
            a_lweaponslot[0] = null;
            a_lweaponslot[1] = null;
            a_lweaponslot[2] = null;
            a_lweaponslot[3] = null;
            a_lweaponslot[4] = null;
            for(int l = 0; l < byte0; l++)
                a_lweaponslot[l] = null;

            arraylist.add(s);
            hashmapint.put(Finger.Int(s), a_lweaponslot);
        }
        catch(Exception exception) { }
    }
}

В разделе вооружения есть одна бомба 250 кг.
Я её переписал с твоего класса, где была вар_абракадабра.
Вообще - этот хук должен быть третьим и располагаться под фюзеляжем в CF_D0.msh.
Но можно его оставить первым - но нужно в разделе вооружения переписать порядок расположения этой бомбы.
Код:

Aircraft.weaponHooksRegister(class1, new String[] {
            "_MGUN01", "_MGUN02", "_ExternalBomb01", "_ExternalBomb02", "_ExternalBomb03"

Код:

            arraylist.add(s);
            hashmapint.put(Finger.Int(s), a_lweaponslot);
            s = "1x250";
            a_lweaponslot = new Aircraft._WeaponSlot[byte0];
            a_lweaponslot[0] = new Aircraft._WeaponSlot(0, "MGunVikkerssi", 400);
            a_lweaponslot[1] = new Aircraft._WeaponSlot(10, "MGunVikkersKt", 420);
            a_lweaponslot[2] = new Aircraft._WeaponSlot(3, "BombGun250kgJ", 1);
            a_lweaponslot[3] = null;
            a_lweaponslot[4] = null;
            for(int j = 5; j < byte0; j++)
                a_lweaponslot[j] = null;

А с другим классом полетел, потому что там раздел вооружения соответствует выписанным хукам в планере.

tvister 13.04.2019 09:41

Вложений: 1
Цитата:

Сообщение от Vasya (Сообщение 194006)
Я писал уже, что раздел вооружения нужно выписать в соответствии с хуками в мешах, ну и проставить их по порядку.

Василий, я все так и сделал.

Цитата:

Сообщение от Vasya (Сообщение 194006)
В разделе вооружения есть одна бомба 250 кг.
Я её переписал с твоего класса, где была вар_абракадабра.
Вообще - этот хук должен быть третьим и располагаться под фюзеляжем в CF_D0.msh.
Но можно его оставить первым - но нужно в разделе вооружения переписать порядок расположения этой бомбы.

D3A1 летает и так. Я только переписал класс с заменой имен. Впрочем нет. Были убраны воздушные тормоза и посадочный крюк, добавлены части блистера. Но к вооружению это не относится.

Код:

            arraylist.add(s);
            hashmapint.put(Finger.Int(s), a_lweaponslot);
            s = "1x250";
            a_lweaponslot = new Aircraft._WeaponSlot[byte0];
            a_lweaponslot[0] = new Aircraft._WeaponSlot(0, "MGunVikkerssi", 400);
            a_lweaponslot[1] = new Aircraft._WeaponSlot(10, "MGunVikkersKt", 420);
            a_lweaponslot[2] = new Aircraft._WeaponSlot(3, "BombGun250kgJ", 1);
            a_lweaponslot[3] = null;
            a_lweaponslot[4] = null;
            for(int j = 5; j < byte0; j++)
                a_lweaponslot[j] = null;

Эту часть кода с бомбой 250 я удалил после упоминания об ошибке. Возможно ошибка была там и раньше, обратил на неё внимание только после исправления багов с 3д моделью.
Часть кода удалил а ошибка осталась. Как и откуда она взялась я не знаю. В ветке о работе с ява, есть упоминание о кодировании вооружения дефолтных самолетов, писалось то все с дефолтного Вел-а. Может проблема в этом? Классы на основе Ки-51 тоже не работали, но тогда были моменты по 3д модели, а еще в Ки-51 есть хуки от автора. Класс Ки-30 тоже с вопросами, он какой то урезанный, короткий. Но Ида полетела именно на нем. А ещё в вооружении "Энн" прописан пилон от "Кейт", тоже интересный момент. Теперь когда самолет полетел я могу осторожно экспериментировать и с оружием и со всем остальным.
Вот последняя ява Ки-36.

Vasya 13.04.2019 11:42

Цитата:

Сообщение от tvister (Сообщение 194015)
Василий, я все так и сделал.



D3A1 летает и так. Я только переписал класс с заменой имен. Впрочем нет. Были убраны воздушные тормоза и посадочный крюк, добавлены части блистера. Но к вооружению это не относится.

Код:

            arraylist.add(s);
            hashmapint.put(Finger.Int(s), a_lweaponslot);
            s = "1x250";
            a_lweaponslot = new Aircraft._WeaponSlot[byte0];
            a_lweaponslot[0] = new Aircraft._WeaponSlot(0, "MGunVikkerssi", 400);
            a_lweaponslot[1] = new Aircraft._WeaponSlot(10, "MGunVikkersKt", 420);
            a_lweaponslot[2] = new Aircraft._WeaponSlot(3, "BombGun250kgJ", 1);
            a_lweaponslot[3] = null;
            a_lweaponslot[4] = null;
            for(int j = 5; j < byte0; j++)
                a_lweaponslot[j] = null;

Эту часть кода с бомбой 250 я удалил после упоминания об ошибке. Возможно ошибка была там и раньше, обратил на неё внимание только после исправления багов с 3д моделью.
Часть кода удалил а ошибка осталась. Как и откуда она взялась я не знаю. В ветке о работе с ява, есть упоминание о кодировании вооружения дефолтных самолетов, писалось то все с дефолтного Вел-а. Может проблема в этом? Классы на основе Ки-51 тоже не работали, но тогда были моменты по 3д модели, а еще в Ки-51 есть хуки от автора. Класс Ки-30 тоже с вопросами, он какой то урезанный, короткий. Но Ида полетела именно на нем. А ещё в вооружении "Энн" прописан пилон от "Кейт", тоже интересный момент. Теперь когда самолет полетел я могу осторожно экспериментировать и с оружием и со всем остальным.
Вот последняя ява Ки-36.

Если есть желание, скинь мне в личку 3До!
Я попытаюсь запустить с "родным" классом - тем что мы вместе собрали, почистив от вар_абракадабры.

tvister 13.04.2019 17:03

Отправил.

tvister 14.04.2019 22:04

Вложений: 1
Добавил в классы Ки-30 фрагмент кода из Ки-36-САС, отвечающий за открытие-закрытие подвижных частей фонаря. Поколдовал с локальными координатами самой задней сдвижной части, более плотно "прижал" её к корпусу. Теперь разбираю классы Е-13А и Нортоповской Гаммы. У этих самолетов есть анимированный переход стрелка наблюдателя из положения стрелка в положение наблюдателя.

Vasya 15.04.2019 02:54

Вложений: 2
Цитата:

Сообщение от tvister (Сообщение 194219)
Добавил в классы Ки-30 фрагмент кода из Ки-36-САС, отвечающий за открытие-закрытие подвижных частей фонаря. Поколдовал с локальными координатами самой задней сдвижной части, более плотно "прижал" её к корпусу. Теперь разбираю классы Е-13А и Нортоповской Гаммы. У этих самолетов есть анимированный переход стрелка наблюдателя из положения стрелка в положение наблюдателя.

Маладец! :ok:
Мой отчёт.
С классами после твоего декомпилятора Ил не запускался вообще.
Краш на 20 проц. загрузки - это не подходит синтаксис твоей джавы Илу.
Запустил только с переделанными немного старыми классами.
Нужно выправлять, или удалять, или искать новый раздел
в хит-бон if(s.startsWith("xxspar"))
Проявился задвоенный винт и отражения на крыльях.
Если захочешь - можешь в мой класс добавить код на открывания фонаря.
Коды бомбометания с пикирования и гака удалены.
В общем - подумай как лучше, потому что класс/хеш перекомпиленный после старого декомпилятора может не запускаться на других компах и игра будет крашить.

tvister 15.04.2019 07:02

Спасибо Василий! Приду с работы попробую поставить твой вариант классов. Сдвоенный винт, баги с крыльями, это все проблемы с 3д, вчера было свободное время, все исправил.

tvister 18.04.2019 20:21

Василий! Полет нормальный, единственно я чего то не могу наладить нормальную работу секций фонаря. А так все Ок. Спасибо!

Vasya 18.04.2019 23:19

Цитата:

Сообщение от tvister (Сообщение 194404)
Василий! Полет нормальный, единственно я чего то не могу наладить нормальную работу секций фонаря. А так все Ок. Спасибо!

В смысле?
Не компилится?
Не так работает с "моим" классом?
Давай мне то, что хочешь вставить - это если не компилится, то попробуем утрясти джаву.

tvister 18.04.2019 23:26

Компилится. Но при этом части фонаря разъезжаются кто куда захочет.:( Видимо проблема с локальными осями. Или с цифрами накосячил, или с знаками.:I'm_thinking: Разбираюсь в общем.

tvister 23.04.2019 14:51

Вложений: 1
C частями фонаря разобрался. Все работает нормально. Но есть ещё одна проблема. Никак не могу совладать с анимацией стрелка. По замыслу, при появлении противника, задние части фонаря должны разойтись, а стрелок-наблюдатель, должен развернуться спиной к пилоту и приподняв пулемет вести огонь, как на Gamma2A5B или Е-13А1. Ситуация осложняется тем, что у каждой модели свой синтаксис написания класса. А Гамма она вообще глючная, пилот хоть и крутится, но огня не ведет. В общем все мои потуги создать работающий класс, заканчиваются или ошибками компиляции, или вылетами игры, или вот таким "двуликим Янусом". :( :I'm_thinking:

andrey65 23.04.2019 14:55

Извините, если порю чушь)) А с дефолтного Пе-2 перовой серии нельзя тупо списать?

tvister 23.04.2019 16:32

Спасибо, но "пешка" это немного не то. В Пе-2 стрелок уже сидит в боевом положении и нет анимации сдвижной части фонаря.
П.С. Не мешало бы и исправить, но пока не знаю как.

andrey65 23.04.2019 16:59

Цитата:

Сообщение от tvister (Сообщение 194572)
Спасибо, но "пешка" это немного не то. В Пе-2 стрелок уже сидит в боевом положении и нет анимации сдвижной части фонаря.
П.С. Не мешало бы и исправить, но пока не знаю как.

Да, это я ошибся: почему-то думал, что там все работает

SkyFan 23.04.2019 17:30

Цитата:

Сообщение от tvister (Сообщение 194570)
Никак не могу совладать с анимацией стрелка.

Так может быть, на этой основе ваять Ki-55? Там второй член экипажа крутиться и стрелять не должен (правда, придется решать проблему создания двойного управления и пересадки игрока из инструкторской в курсантскую кабину - и обратно). А Ki-36 - своим чередом. Очередность - на усмотрение автора. Просто по мому дилетантскому впечатлению проект подошел к развилке. Но могу ошибаться. :DONT_KNOW:


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

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