AviaSkins.Forums

AviaSkins.Forums (http://forum.aviaskins.com/index.php)
-   Моделирование и конструирование (http://forum.aviaskins.com/forumdisplay.php?f=18)
-   -   Несколько вопросов по Java (http://forum.aviaskins.com/showthread.php?t=3499)

Vasya 24.12.2015 21:47

Несоответствие хуков и их записей в разделе вооружения.
Может быть так же не правильно переоткрыт и сохранён меш в который добавлялись хуки.

Skvorez 24.12.2015 22:26

Цитата:

Сообщение от Vasya (Сообщение 147616)
Несоответствие хуков и их записей в разделе вооружения.
Может быть так же не правильно переоткрыт и сохранён меш в который добавлялись хуки.

Умеешь ты обнадежить... нечего сказать. Может быть оружие переписать в новую конструкцию?.
зы: хуки не трогал

Asura 25.12.2015 09:25

В лог пишутся все ошибки, надо поиск причины начинать с него. :)

Vasya 26.12.2015 18:33

Цитата:

Сообщение от Skvorez (Сообщение 147617)
Умеешь ты обнадежить... нечего сказать. Может быть оружие переписать в новую конструкцию?.
зы: хуки не трогал

Скинь мне этот мод в личку - я проверю., надеюсь что решу вопрос., уже получаеться немного.
Цитата:

Сообщение от Asura (Сообщение 147626)
В лог пишутся все ошибки, надо поиск причины начинать с него. :)

Не всегда лог можно понять. Дока - конечно - всё прочитает, но самоучки как я, могут спотыкаться. Хотя, да, лог бы очень желательно поглядеть.
---------------------------------------------------------------
Цитата:

Сообщение от Skvorez (Сообщение 147614)
Сделал пару слотов, модель не собирается хоть убейся...

Хоть джава-файлы прикрепи, а.

Skvorez 26.12.2015 20:44

Цитата:

Сообщение от Vasya (Сообщение 147657)
Скинь мне этот мод в личку - я проверю., надеюсь что решу вопрос., уже получаеться немного.

Не всегда лог можно понять. Дока - конечно - всё прочитает, но самоучки как я, могут спотыкаться. Хотя, да, лог бы очень желательно поглядеть.
---------------------------------------------------------------
Хоть джава-файлы прикрепи, а.

классы перекомпелил из под другой среды, и вуаля


качай. ссылку удалю потом

Vasya 26.12.2015 22:46

СПАСИБО!
Скачал уже.

Skvorez 27.12.2015 08:46

Цитата:

Сообщение от Vasya (Сообщение 147663)
СПАСИБО!
Скачал уже.

а что с оружием? у меня не все отображается:(

tarakan67 27.12.2015 09:21

ставь это http://www.sas1946.com/main/index.ph...c,48603.0.html
удаляй дубли и будет тебе счастье

Skvorez 27.12.2015 11:29

Цитата:

Сообщение от tarakan67 (Сообщение 147669)
ставь это http://www.sas1946.com/main/index.ph...c,48603.0.html
удаляй дубли и будет тебе счастье

дубли, ты имеешь виду в джет эре и прочих местах?

tarakan67 27.12.2015 12:00

Цитата:

Сообщение от Skvorez (Сообщение 147671)
дубли, ты имеешь виду в джет эре и прочих местах?

По желанию, можешь там, а можешь и в самом паке

deSAD 03.09.2016 13:47

В развитие темы ...
Цитата:

Сообщение от deSAD (Сообщение 156677)
Попробовал было "пересобрать" I_153_M63, добавив туда два дополнительных варианта вооружений с БС'ами из I_153_M62, но - увы и ах - ИЛ после этого даже не запустился, хотя класс скомпилировался без ошибок :DONT_KNOW:

Вот код ...
Код:

package com.maddox.il2.objects.air;

import com.maddox.il2.ai.Regiment;
import com.maddox.il2.engine.*;
import com.maddox.il2.fm.*;
import com.maddox.il2.game.Main;
import com.maddox.il2.net.NetFileServerSkin;
import com.maddox.rts.HomePath;
import com.maddox.rts.Property;
import java.io.*;

public class I_153_M63 extends I_153
{

    public I_153_M63()
    {
    }

    public void onAircraftLoaded()
    {
        if(thisWeaponsName.startsWith("1BS"))
            hierMesh().chunkVisible("MGun02_D0", false);
        else
            hierMesh().chunkVisible("MGun02_D0", true);
    }

    public void missionStarting()
    {
        super.missionStarting();
        customization();
    }

    private void customization()
    {
        if(!Config.isUSE_RENDER())
            return;
        boolean flag = false;
        boolean flag1 = false;
        int i = hierMesh().chunkFindCheck("CF_D0");
        int j = hierMesh().materialFindInChunk("Gloss1D0o", i);
        Mat mat = hierMesh().material(j);
        String s = mat.Name();
        try
        {
            if(s.startsWith("PaintSchemes/Cache"))
            {
                s = s.substring(19);
                s = s.substring(0, s.indexOf("/"));
            } else
            if(s.startsWith("3DO/Plane/I-153/i153m63_summer"))
                s = "summer";
            else
            if(s.startsWith("3DO/Plane/I-153/i153m63_winter"))
                s = "winter";
            customini = false;
            String s1 = Main.cur().netFileServerSkin.primaryPath();
            File file = new File(HomePath.toFileSystemName(s1 + "/I-153M63/Customization.ini", 0));
            BufferedReader bufferedreader = new BufferedReader(new FileReader(file));
            Object obj = null;
            boolean flag2 = false;
            boolean flag3 = false;
            boolean flag4 = false;
            do
            {
                String s2;
                if((s2 = bufferedreader.readLine()) == null)
                    break;
                if(s2.equals("[Show_Antenna]"))
                {
                    flag2 = true;
                    flag3 = false;
                    flag4 = false;
                } else
                if(s2.equals("[Hide_Radiator]"))
                {
                    flag2 = false;
                    flag3 = true;
                    flag4 = false;
                } else
                if(s2.equals("[Hide_WheelCover]"))
                {
                    flag2 = false;
                    flag3 = false;
                    flag4 = true;
                } else
                if(s2.equals(s))
                {
                    if(flag2)
                    {
                        hierMesh().chunkVisible("Wire1_D0", true);
                        hierMesh().chunkVisible("Wire2_D0", true);
                        hierMesh().chunkVisible("Wire3_D0", true);
                    }
                    if(flag3)
                    {
                        hierMesh().chunkVisible("Water_D0", false);
                        hierMesh().chunkVisible("FrontDisk_D0", false);
                        hierMesh().chunkVisible("Ring_D0", true);
                        FM.CT.setRadiatorControl(1.0F);
                        FM.CT.DamageRadiatorControl();
                    }
                    if(flag4)
                    {
                        hierMesh().chunkVisible("GearL7_D0", false);
                        hierMesh().chunkVisible("GearR7_D0", false);
                    }
                    customini = true;
                }
            } while(true);
            bufferedreader.close();
        }
        catch(Exception exception)
        {
            System.out.println(exception);
        }
    }

    public static String getSkinPrefix(String s, Regiment regiment)
    {
        if(regiment == null || regiment.country() == null)
            return "";
        else
            return "i153m63_";
    }

    private boolean customini;

    static
    {
        Class class1 = com.maddox.il2.objects.air.I_153_M63.class;
        new NetAircraft.SPAWN(class1);
        Property.set(class1, "iconFar_shortClassName", "I-153");
        Property.set(class1, "meshName", "3DO/Plane/I-153/hier-M63.him");
        Property.set(class1, "PaintScheme", new PaintSchemeFMPar00());
        Property.set(class1, "yearService", 1939.2F);
        Property.set(class1, "yearExpired", 1944F);
        Property.set(class1, "FlightModel", "FlightModels/I-153-M63.fmd");
        Property.set(class1, "cockpitClass", com.maddox.il2.objects.air.CockpitI_153.class);
        Property.set(class1, "LOSElevation", 0.84305F);
        Aircraft.weaponTriggersRegister(class1, new int[] {
            0, 0, 1, 1, 2, 2, 2, 2, 2, 2,
            2, 2, 3, 3, 3, 3, 9, 9, 9, 9,
            9, 9, 9, 9
        });
        Aircraft.weaponHooksRegister(class1, new String[] {
            "_MGUN01", "_MGUN02", "_MGUN03", "_MGUN04", "_ExternalRock01", "_ExternalRock02", "_ExternalRock03", "_ExternalRock04", "_ExternalRock05", "_ExternalRock06",
            "_ExternalRock07", "_ExternalRock08", "_ExternalBomb01", "_ExternalBomb02", "_ExternalBomb03", "_ExternalBomb04", "_ExternalDev01", "_ExternalDev02", "_ExternalDev03", "_ExternalDev04",
            "_ExternalDev05", "_ExternalDev06", "_ExternalDev07", "_ExternalDev08"
        });
        Aircraft.weaponsRegister(class1, "default", new String[] {
            "MGunShKASsi 700", "MGunShKASsi 750", "MGunShKASsi 500", "MGunShKASsi 520", null, null, null, null, null, null,
            null, null, null, null, null, null, null, null, null, null,
            null, null, null, null
        });
        Aircraft.weaponsRegister(class1, "4xAO10", new String[] {
            "MGunShKASsi 700", "MGunShKASsi 750", "MGunShKASsi 500", "MGunShKASsi 520", null, null, null, null, null, null,
            null, null, "BombGunAO10 1", "BombGunAO10 1", "BombGunAO10 1", "BombGunAO10 1", null, null, null, null,
            null, null, null, null
        });
        Aircraft.weaponsRegister(class1, "2xAO10_2xFAB50", new String[] {
            "MGunShKASsi 700", "MGunShKASsi 750", "MGunShKASsi 500", "MGunShKASsi 520", null, null, null, null, null, null,
            null, null, "BombGunAO10 1", "BombGunAO10 1", "BombGunFAB50 1", "BombGunFAB50 1", null, null, null, null,
            null, null, null, null
        });
        Aircraft.weaponsRegister(class1, "2xFAB50", new String[] {
            "MGunShKASsi 700", "MGunShKASsi 750", "MGunShKASsi 500", "MGunShKASsi 520", null, null, null, null, null, null,
            null, null, null, null, "BombGunFAB50 1", "BombGunFAB50 1", null, null, null, null,
            null, null, null, null
        });
        Aircraft.weaponsRegister(class1, "4xFAB50", new String[] {
            "MGunShKASsi 700", "MGunShKASsi 750", "MGunShKASsi 500", "MGunShKASsi 520", null, null, null, null, null, null,
            null, null, "BombGunFAB50 1", "BombGunFAB50 1", "BombGunFAB50 1", "BombGunFAB50 1", null, null, null, null,
            null, null, null, null
        });
        Aircraft.weaponsRegister(class1, "2xFAB100", new String[] {
            "MGunShKASsi 700", "MGunShKASsi 750", "MGunShKASsi 500", "MGunShKASsi 520", null, null, null, null, null, null,
            null, null, null, null, "BombGunFAB100 1", "BombGunFAB100 1", null, null, null, null,
            null, null, null, null
        });
        Aircraft.weaponsRegister(class1, "2xFAB50_2xFAB100", new String[] {
            "MGunShKASsi 700", "MGunShKASsi 750", "MGunShKASsi 500", "MGunShKASsi 520", null, null, null, null, null, null,
            null, null, "BombGunFAB50 1", "BombGunFAB50 1", "BombGunFAB100 1", "BombGunFAB100 1", null, null, null, null,
            null, null, null, null
        });
        Aircraft.weaponsRegister(class1, "8xRS82", new String[] {
            "MGunShKASsi 700", "MGunShKASsi 750", "MGunShKASsi 500", "MGunShKASsi 520", "RocketGunRS82 1", "RocketGunRS82 1", "RocketGunRS82 1", "RocketGunRS82 1", "RocketGunRS82 1", "RocketGunRS82 1",
            "RocketGunRS82 1", "RocketGunRS82 1", null, null, null, null, "PylonRO_82_1 1", "PylonRO_82_1 1", "PylonRO_82_1 1", "PylonRO_82_1 1",
            "PylonRO_82_1 1", "PylonRO_82_1 1", "PylonRO_82_1 1", "PylonRO_82_1 1"
        });
        Aircraft.weaponsRegister(class1, "1BS+2ShKAS", new String[] {
            "MGunUBsi 230", null, "MGunShKASsi 500", "MGunShKASsi 520", null, null, null, null, null, null,
            null, null, null, null, null, null, null, null, null, null,
            null, null, null, null
        });
        Aircraft.weaponsRegister(class1, "1BS+2ShKAS_8xRS82", new String[] {
            "MGunUBsi 230", null, "MGunShKASsi 500", "MGunShKASsi 520", "RocketGunRS82 1", "RocketGunRS82 1", "RocketGunRS82 1", "RocketGunRS82 1", "RocketGunRS82 1", "RocketGunRS82 1",
            "RocketGunRS82 1", "RocketGunRS82 1", null, null, null, null, "PylonRO_82_1 1", "PylonRO_82_1 1", "PylonRO_82_1 1", "PylonRO_82_1 1",
            "PylonRO_82_1 1", "PylonRO_82_1 1", "PylonRO_82_1 1", "PylonRO_82_1 1"
        });
        Aircraft.weaponsRegister(class1, "none", new String[] {
            null, null, null, null, null, null, null, null, null, null,
            null, null, null, null, null, null, null, null, null, null,
            null, null, null, null
        });
    }
}

Что я делаю не так? © :I'm_thinking:

tarakan67 03.09.2016 18:12

Цитата:

Сообщение от deSAD (Сообщение 156682)
В развитие темы ...

Вот код ...
Код:

        Aircraft.weaponTriggersRegister(class1, new int[] {
            0, 0, 1, 1, 2, 2, 2, 2, 2, 2,
            2, 2, 3, 3, 3, 3, 9, 9, 9, 9,
            9, 9, 9, 9
        });
        Aircraft.weaponHooksRegister(class1, new String[] {
            "_MGUN01", "_MGUN02", "_MGUN03", "_MGUN04", "_ExternalRock01", "_ExternalRock02", "_ExternalRock03", "_ExternalRock04", "_ExternalRock05", "_ExternalRock06",
            "_ExternalRock07", "_ExternalRock08", "_ExternalBomb01", "_ExternalBomb02", "_ExternalBomb03", "_ExternalBomb04", "_ExternalDev01", "_ExternalDev02", "_ExternalDev03", "_ExternalDev04",
            "_ExternalDev05", "_ExternalDev06", "_ExternalDev07", "_ExternalDev08"
        });
        Aircraft.weaponsRegister(class1, "default", new String[] {
            "MGunShKASsi 700", "MGunShKASsi 750", "MGunShKASsi 500", "MGunShKASsi 520", null, null, null, null, null, null,
            null, null, null, null, null, null, null, null, null, null,
            null, null, null, null
        });
        Aircraft.weaponsRegister(class1, "4xAO10", new String[] {
            "MGunShKASsi 700", "MGunShKASsi 750", "MGunShKASsi 500", "MGunShKASsi 520", null, null, null, null, null, null,
            null, null, "BombGunAO10 1", "BombGunAO10 1", "BombGunAO10 1", "BombGunAO10 1", null, null, null, null,
            null, null, null, null
        });
        Aircraft.weaponsRegister(class1, "2xAO10_2xFAB50", new String[] {
            "MGunShKASsi 700", "MGunShKASsi 750", "MGunShKASsi 500", "MGunShKASsi 520", null, null, null, null, null, null,
            null, null, "BombGunAO10 1", "BombGunAO10 1", "BombGunFAB50 1", "BombGunFAB50 1", null, null, null, null,
            null, null, null, null
        });
        Aircraft.weaponsRegister(class1, "2xFAB50", new String[] {
            "MGunShKASsi 700", "MGunShKASsi 750", "MGunShKASsi 500", "MGunShKASsi 520", null, null, null, null, null, null,
            null, null, null, null, "BombGunFAB50 1", "BombGunFAB50 1", null, null, null, null,
            null, null, null, null
        });
        Aircraft.weaponsRegister(class1, "4xFAB50", new String[] {
            "MGunShKASsi 700", "MGunShKASsi 750", "MGunShKASsi 500", "MGunShKASsi 520", null, null, null, null, null, null,
            null, null, "BombGunFAB50 1", "BombGunFAB50 1", "BombGunFAB50 1", "BombGunFAB50 1", null, null, null, null,
            null, null, null, null
        });
        Aircraft.weaponsRegister(class1, "2xFAB100", new String[] {
            "MGunShKASsi 700", "MGunShKASsi 750", "MGunShKASsi 500", "MGunShKASsi 520", null, null, null, null, null, null,
            null, null, null, null, "BombGunFAB100 1", "BombGunFAB100 1", null, null, null, null,
            null, null, null, null
        });
        Aircraft.weaponsRegister(class1, "2xFAB50_2xFAB100", new String[] {
            "MGunShKASsi 700", "MGunShKASsi 750", "MGunShKASsi 500", "MGunShKASsi 520", null, null, null, null, null, null,
            null, null, "BombGunFAB50 1", "BombGunFAB50 1", "BombGunFAB100 1", "BombGunFAB100 1", null, null, null, null,
            null, null, null, null
        });
        Aircraft.weaponsRegister(class1, "8xRS82", new String[] {
            "MGunShKASsi 700", "MGunShKASsi 750", "MGunShKASsi 500", "MGunShKASsi 520", "RocketGunRS82 1", "RocketGunRS82 1", "RocketGunRS82 1", "RocketGunRS82 1", "RocketGunRS82 1", "RocketGunRS82 1",
            "RocketGunRS82 1", "RocketGunRS82 1", null, null, null, null, "PylonRO_82_1 1", "PylonRO_82_1 1", "PylonRO_82_1 1", "PylonRO_82_1 1",
            "PylonRO_82_1 1", "PylonRO_82_1 1", "PylonRO_82_1 1", "PylonRO_82_1 1"
        });
        Aircraft.weaponsRegister(class1, "1BS+2ShKAS", new String[] {
            "MGunUBsi 230", null, "MGunShKASsi 500", "MGunShKASsi 520", null, null, null, null, null, null,
            null, null, null, null, null, null, null, null, null, null,
            null, null, null, null
        });
        Aircraft.weaponsRegister(class1, "1BS+2ShKAS_8xRS82", new String[] {
            "MGunUBsi 230", null, "MGunShKASsi 500", "MGunShKASsi 520", "RocketGunRS82 1", "RocketGunRS82 1", "RocketGunRS82 1", "RocketGunRS82 1", "RocketGunRS82 1", "RocketGunRS82 1",
            "RocketGunRS82 1", "RocketGunRS82 1", null, null, null, null, "PylonRO_82_1 1", "PylonRO_82_1 1", "PylonRO_82_1 1", "PylonRO_82_1 1",
            "PylonRO_82_1 1", "PylonRO_82_1 1", "PylonRO_82_1 1", "PylonRO_82_1 1"
        });
        Aircraft.weaponsRegister(class1, "none", new String[] {
            null, null, null, null, null, null, null, null, null, null,
            null, null, null, null, null, null, null, null, null, null,
            null, null, null, null
        });
    }
}

Что я делаю не так? © :I'm_thinking:

Всё делаешь так, но список вооружения этого самолёта дублируется также в папке cod(в зашифрованном виде). Игра сравнивает два списка и при отличиях уходит в крэш. Изменив вооружение в классе самолёта также надо изменить его и в папке cod. Инструмент для дешифровки папки cod есть у SAS-овцев, но они, как всегда, очень трепетно относятся к авторским правам, поэтому делиться им с кем попало не собираются. Можно записать варианты вооружения по другому, создав дубликат класса дефолтного самолёта, Vasya вроде бы этим занимался.

GUZKNIFE 03.09.2016 18:34

deSAD!!!
...и не запуститься.;););)
Нужно поменять
Property.set(class1, "cockpitClass", com.maddox.il2.objects.air.CockpitI_153.class);

на
Property.set(class1, "cockpitClass", new Class[] {
com.maddox.il2.objects.air.CockpitI_153.class
});

а загрузку в классе можно удалить и написать только в коде-не будет дублирования.:)

deSAD 03.09.2016 23:54

Цитата:

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

Цитата:

Сообщение от tarakan67 (Сообщение 156692)
Можно записать варианты вооружения по другому, создав дубликат класса дефолтного самолёта, Vasya вроде бы этим занимался.

Да не хотелось бы :ups:

Цитата:

Сообщение от GUZKNIFE (Сообщение 156694)
Нужно поменять
Property.set(class1, "cockpitClass", com.maddox.il2.objects.air.CockpitI_153.class);

на
Property.set(class1, "cockpitClass", new Class[] {
com.maddox.il2.objects.air.CockpitI_153.class
});

А, да ... lacota в свое время - помнится - на что-то подобное обращал внимание :rtfm: Хотя, если без того, чтобы влезть в cod, все равно не "срастется", то :DONT_KNOW:

Благодарю за "просвещение", камераден :thx:

Vasya 04.09.2016 04:35

В файл cod дописать вооружение не проблемма, вообще то. Но потом и в Д-Ген нужно будет дописьівать вооружение дефолтной Чайки М-63.

tarakan67 04.09.2016 10:50

Цитата:

Сообщение от Vasya (Сообщение 156707)
В файл cod дописать вооружение не проблемма, вообще то. Но потом и в Д-Ген нужно будет дописьівать вооружение дефолтной Чайки М-63.

Расскажи как, и каким инструментом пожалуйста.

Vasya 04.09.2016 17:21

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

Сообщение от tarakan67 (Сообщение 156709)
Расскажи как, и каким инструментом пожалуйста.

Обыкновенным COD_Worx.,
батник:
C:\jdk1.3.1\bin\java -jar loadouteditor.jar I_153_M63.
Я думал что у тебя/вас есть такой.
------------------------------------
Я вот подумываю таки пойти на курсы, конкретно, по джаве., подучиться, так сказать. Мне дал этот COD_Worx один программер., соорудить её не так уж и сложно для граммотного. Так что САСовские секреты - секреты Полишинеля. ОМовский Ил сломали, значит сломать можно всё если захотеть.

tarakan67 04.09.2016 18:59

Цитата:

Сообщение от Vasya (Сообщение 156717)
Обыкновенным COD_Worx.,
батник:
C:\jdk1.3.1\bin\java -jar loadouteditor.jar I_153_M63.
Я думал что у тебя/вас есть такой.
------------------------------------
Я вот подумываю таки пойти на курсы, конкретно, по джаве., подучиться, так сказать. Мне дал этот COD_Worx один программер., соорудить её не так уж и сложно для граммотного. Так что САСовские секреты - секреты Полишинеля. ОМовский Ил сломали, значит сломать можно всё если захотеть.

Нет, COD_Worx у меня нет, где можно скачать?

Vasya 04.09.2016 21:21

Цитата:

Сообщение от tarakan67 (Сообщение 156722)
Нет, COD_Worx у меня нет, где можно скачать?

А волшебное слово?! :ups:

tarakan67 04.09.2016 22:22

"Бегом!" (шутка, "пожалуйста", конечно!)


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

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