コード例 #1
0
 public MultiStruct Generate()   // .em117glt
 {
     var structs = new List <MhwMultiStructData.StructData> {
         new MhwMultiStructData.StructData("Header", new List <MhwMultiStructData.Entry> {
             new MhwMultiStructData.Entry("Magic 1", typeof(ushort), true),
             new MhwMultiStructData.Entry("Entry Count", typeof(uint), true).Out(out var itemCount)
         }, 1).Out(out var header),
コード例 #2
0
 public MultiStruct Generate()   // .dtt_rsz
 {
     var structs = new List <MhwMultiStructData.StructData> {
         new MhwMultiStructData.StructData("Monster Random Sizes", new List <MhwMultiStructData.Entry> {
             new MhwMultiStructData.Entry("Magic 1", typeof(uint), true),
             new MhwMultiStructData.Entry("Magic 2", typeof(uint), true),
             new MhwMultiStructData.Entry("Number of Monsters", typeof(uint), true).Out(out var monsterCount)
         }, 1).Out(out var monsterCountHolder),
コード例 #3
0
ファイル: Opst.cs プロジェクト: dtlnor/MHW-Editor
 public MultiStruct Generate()   // .opst
 {
     var structs = new List <MhwMultiStructData.StructData> {
         new MhwMultiStructData.StructData("Header", new List <MhwMultiStructData.Entry> {
             new MhwMultiStructData.Entry("Iceborne Identifier", typeof(uint), true),
             new MhwMultiStructData.Entry("Magic", typeof(uint), true),
             new MhwMultiStructData.Entry("Entry Count", typeof(uint), true).Out(out var entryCount)
         }, 1).Out(out var header),
コード例 #4
0
 public MultiStruct Generate()   // .dtt_clawc
 {
     var structs = new List <MhwMultiStructData.StructData> {
         new MhwMultiStructData.StructData("Monster Claw Grab", new List <MhwMultiStructData.Entry> {
             new MhwMultiStructData.Entry("Magic 1", typeof(uint), true),
             new MhwMultiStructData.Entry("Magic 2", typeof(uint), true),
             new MhwMultiStructData.Entry("Number of Claggers", typeof(uint), true).Out(out var count)
         }, 1).Out(out var header),
コード例 #5
0
 public MultiStruct Generate()   // .mbd
 {
     var structs = new List <MhwMultiStructData.StructData> {
         new MhwMultiStructData.StructData("Motion Blend Data (1)", new List <MhwMultiStructData.Entry> {
             new MhwMultiStructData.Entry("Magic 1", typeof(uint), true),
             new MhwMultiStructData.Entry("Magic 2", typeof(uint), true),
             new MhwMultiStructData.Entry("Entry Count", typeof(uint), true).Out(out var entryCount)
         }, 1).Out(out var header),
コード例 #6
0
 public MultiStruct Generate()   // .aeq
 {
     var structs = new List <MhwMultiStructData.StructData> {
         new MhwMultiStructData.StructData("Aeq", new List <MhwMultiStructData.Entry> {
             new MhwMultiStructData.Entry("Magic 1", typeof(uint), true),
             new MhwMultiStructData.Entry("Magic 2", typeof(ushort), true),
             new MhwMultiStructData.Entry("Entry Count", typeof(uint), true).Out(out var entryCount)
         }, 1).Out(out var header),
コード例 #7
0
 public MultiStruct Generate()   // .em_ss
 {
     var structs = new List <MhwMultiStructData.StructData> {
         new MhwMultiStructData.StructData("Small Monster Size Params", new List <MhwMultiStructData.Entry> {
             new MhwMultiStructData.Entry("Magic 1", typeof(uint), true),
             new MhwMultiStructData.Entry("Magic 2", typeof(uint), true),
             new MhwMultiStructData.Entry("Magic 3", typeof(uint), true),
             new MhwMultiStructData.Entry("Number of Size Settings", typeof(uint), true).Out(out var count)
         }, 1).Out(out var header),
コード例 #8
0
        public MultiStruct Generate()   // .w07p
        {
            var shellParams = new List <MhwMultiStructData.Entry> {
                new MhwMultiStructData.Entry("1", typeof(float)),
                new MhwMultiStructData.Entry("2", typeof(float)),
                new MhwMultiStructData.Entry("3", typeof(float)),
                new MhwMultiStructData.Entry("4", typeof(float)),
                new MhwMultiStructData.Entry("5", typeof(float)),
                new MhwMultiStructData.Entry("6", typeof(float)),
                new MhwMultiStructData.Entry("7", typeof(float))
            };

            var structs = new List <MhwMultiStructData.StructData>();

            structs.AddRange(CreateBase(N));

            structs.AddRange(new List <MhwMultiStructData.StructData> {
                new MhwMultiStructData.StructData($"W{N}p Params ({++paramIndex}) - Shelling Params", new List <MhwMultiStructData.Entry> {
                    new MhwMultiStructData.Entry("Normal Shell", typeof(uint)),
                    new MhwMultiStructData.Entry("Wide Shell", typeof(uint)),
                    new MhwMultiStructData.Entry("Long Shell", typeof(uint)),
                    new MhwMultiStructData.Entry("Shelling Charge Delay (Seconds)", typeof(float)),
                    new MhwMultiStructData.Entry("Shelling Charge Recoil Distance Multiplier", typeof(float)),
                    new MhwMultiStructData.Entry("Wyvernfire Charging Time (Seconds)", typeof(float)),
                    new MhwMultiStructData.Entry("Wyvernfire Cooldown Time (Seconds)", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {unkIndex += 8}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                    new MhwMultiStructData.Entry("Shelling Count for [Shelling (N Times) -> Wyrmstake] (e.g. 2: Shelling (Twice), Then Wyrmstake)", typeof(uint)),
                    new MhwMultiStructData.Entry($"Unk {unkIndex += 2}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                    new MhwMultiStructData.Entry("Fullburst Rounds per Second (0.05 = 1200RPM)", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {unkIndex += 2}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float))
                }, 1, showVertically: true),

                new MhwMultiStructData.StructData("Shell/Ammo Params", new List <MhwMultiStructData.Entry> {
                    new MhwMultiStructData.Entry("Shell Damage".Out(out var shellDamage), typeof(void), subStruct: CreateShellInnerStruct(shellDamage)),
                    new MhwMultiStructData.Entry("Shell Fire Damage".Out(out var shellFireDamage), typeof(void), subStruct: CreateShellInnerStruct(shellFireDamage)),
                    new MhwMultiStructData.Entry("Shell Charged Multiplier", typeof(float)),
                    new MhwMultiStructData.Entry("Full-burst Multiplier", typeof(float)),
                    new MhwMultiStructData.Entry("Shell Unk 1", typeof(float)),
                    new MhwMultiStructData.Entry("Wyvernfire Damage".Out(out var wyvernfireDamage), typeof(void), subStruct: CreateShellInnerStruct(wyvernfireDamage)),
                    new MhwMultiStructData.Entry("Wyvernfire Fire Damage".Out(out var wyvernfireFireDamage), typeof(void), subStruct: CreateShellInnerStruct(wyvernfireFireDamage)),
                    new MhwMultiStructData.Entry("Wyrmstake Tick Raw Damage".Out(out var wyrmstakeDamage), typeof(void), subStruct: CreateShellInnerStruct(wyrmstakeDamage)),
                    new MhwMultiStructData.Entry("Wyrmstake Fixed Blast Damage".Out(out var wyrmstakeBlastDamage), typeof(void), subStruct: CreateShellInnerStruct(wyrmstakeBlastDamage)),
                    new MhwMultiStructData.Entry("Wyrmstake Fire Damage".Out(out var wyrmstakeBlastFireDamage), typeof(void), subStruct: CreateShellInnerStruct(wyrmstakeBlastFireDamage)),
                    new MhwMultiStructData.Entry("Wyrmstake Add Damage".Out(out var wyrmstakeAddDamage), typeof(void), subStruct: CreateShellInnerStruct(wyrmstakeAddDamage))
                }, 3),
コード例 #9
0
ファイル: MonsterParts.cs プロジェクト: woshimj001/MHW-Editor
 public MultiStruct Generate()   // .dtt_epg
 {
     var header = new MhwMultiStructData.StructData("Monster Parts", new List <MhwMultiStructData.Entry> {
         new MhwMultiStructData.Entry("Magic 1", typeof(uint), true),
         new MhwMultiStructData.Entry("Magic 2", typeof(uint), true),
         new MhwMultiStructData.Entry("Monster Id", typeof(uint), true, dataSourceType: DataSourceType.Monsters),
         new MhwMultiStructData.Entry("Magic 3", typeof(uint), true),
         new MhwMultiStructData.Entry("Health", typeof(uint)),
         new MhwMultiStructData.Entry("Flinches Count", typeof(uint), true).Out(out var flinchesCount)
     }, 1);
コード例 #10
0
 public MultiStruct Generate()   // .col
 {
     var header = new MhwMultiStructData.StructData("Collisions", new List <MhwMultiStructData.Entry> {
         new MhwMultiStructData.Entry("Magic 1", typeof(uint), true),
         new MhwMultiStructData.Entry("Name", typeof(char), true, typeof(string), arrayCount: 4),
         new MhwMultiStructData.Entry("Magic 2", typeof(uint), true),
         new MhwMultiStructData.Entry("Unk 1", typeof(uint), true),
         new MhwMultiStructData.Entry("Unk 2", typeof(uint), true),
         new MhwMultiStructData.Entry("Name Count", typeof(uint), true).Out(out var nameCount)
     }, 1);
コード例 #11
0
        public MultiStruct Generate()   // .shlp
        {
            var i = 0;

            var structs = new List <MhwMultiStructData.StructData> {
                new MhwMultiStructData.StructData("Shlp", new List <MhwMultiStructData.Entry> {
                    new MhwMultiStructData.Entry("Magic 1", typeof(uint), true),
                    new MhwMultiStructData.Entry("SLP", typeof(char), true, typeof(string), arrayCount: 4),
                    new MhwMultiStructData.Entry("Magic 2", typeof(uint), true)
                }, 1),

                new MhwMultiStructData.StructData("Assets", new List <MhwMultiStructData.Entry> {
                    new MhwMultiStructData.Entry("Header", typeof(uint)),
                    new MhwMultiStructData.Entry("Path", typeof(string), isNullTerminatedString: true, condition: "if (|ref|Header_raw != 0)")
                }, 25),

                new MhwMultiStructData.StructData("Shlp (1)", new List <MhwMultiStructData.Entry> {
                    new MhwMultiStructData.Entry("Projectile Body: EPV Index", typeof(uint)),
                    new MhwMultiStructData.Entry("Projectile Body: EPV Element #", typeof(uint)),
                    new MhwMultiStructData.Entry("Muzzle: EPV Index", typeof(uint)),
                    new MhwMultiStructData.Entry("Muzzle: EPV Element #", typeof(uint)),
                    new MhwMultiStructData.Entry("Muzzle: Joint 1", typeof(byte)),
                    new MhwMultiStructData.Entry("Muzzle: Joint 2", typeof(byte)),
                    new MhwMultiStructData.Entry("Muzzle: Joint 3", typeof(byte)),
                    new MhwMultiStructData.Entry("Muzzle: Joint 4", typeof(byte)),
                    new MhwMultiStructData.Entry("Obj Collision Header", typeof(uint)),
                    new MhwMultiStructData.Entry("Obj Collision", typeof(string), isNullTerminatedString: true, condition: "if (|ref|Obj_Collision_Header_raw != 0)"),
                    new MhwMultiStructData.Entry("Obj Collision Index", typeof(uint)),
                    new MhwMultiStructData.Entry("Timeline List Header", typeof(uint)),
                    new MhwMultiStructData.Entry("Timeline List", typeof(string), isNullTerminatedString: true, condition: "if (|ref|Timeline_List_Header_raw != 0)"),
                    new MhwMultiStructData.Entry("Unk 2", typeof(uint)),
                    new MhwMultiStructData.Entry("Unk 3", typeof(uint)),
                    new MhwMultiStructData.Entry("Unk 4", typeof(uint)),
                    new MhwMultiStructData.Entry("Unk 5", typeof(uint)),
                    new MhwMultiStructData.Entry("Unk 6", typeof(uint))
                }, 1, showVertically: true),

                new MhwMultiStructData.StructData("Number of Linked Shell Params Holder", new List <MhwMultiStructData.Entry> {
                    new MhwMultiStructData.Entry("Number of Linked Shell Params", typeof(uint), true).Out(out var linkedShellCount)
                }, 1, true).Out(out var linkedShellCountHolder),
コード例 #12
0
        public MultiStruct Generate()   // .plsp
        // 'Unk' counters.
        {
            ushort i           = 0;
            ushort j           = 0;
            uint   paramsIndex = 0;

            var structs = new List <MhwMultiStructData.StructData> {
                new MhwMultiStructData.StructData("Header", new List <MhwMultiStructData.Entry> {
                    new MhwMultiStructData.Entry("PLS", typeof(char), true, typeof(string), arrayCount: 4),
                    new MhwMultiStructData.Entry("Magic 1", typeof(uint), true)
                }, 1),

                new MhwMultiStructData.StructData($"Skill Params ({++paramsIndex})", new List <MhwMultiStructData.Entry> {
                    new MhwMultiStructData.Entry("Speed Eating 1 Drink Motion Speed", typeof(float)),
                    new MhwMultiStructData.Entry("Speed Eating 2 Drink Motion Speed", typeof(float)),
                    new MhwMultiStructData.Entry("Speed Eating 3 Drink Motion Speed", typeof(float)),
                    new MhwMultiStructData.Entry("Speed Eating 1 Drink End Frame", typeof(float)),
                    new MhwMultiStructData.Entry("Speed Eating 2 Drink End Frame", typeof(float)),
                    new MhwMultiStructData.Entry("Speed Eating 3 Drink End Frame", typeof(float)),
                    new MhwMultiStructData.Entry("Speed Eating 1 Heal Speed Rate", typeof(float)),
                    new MhwMultiStructData.Entry("Speed Eating 2 Heal Speed Rate", typeof(float)),
                    new MhwMultiStructData.Entry("Speed Eating 3 Heal Speed Rate", typeof(float)),
                    new MhwMultiStructData.Entry("Speed Eating 1 Meat Motion Speed", typeof(float)),
                    new MhwMultiStructData.Entry("Speed Eating 2 Meat Motion Speed", typeof(float)),
                    new MhwMultiStructData.Entry("Speed Eating 3 Meat Motion Speed", typeof(float)),
                    new MhwMultiStructData.Entry("Speed Eating 1 Meat Loop Count", typeof(byte)),
                    new MhwMultiStructData.Entry("Speed Eating 2 Meat Loop Count", typeof(byte)),
                    new MhwMultiStructData.Entry("Speed Eating 3 Meat Loop Count", typeof(byte)),
                    new MhwMultiStructData.Entry("Speed Eating 1/2/3 Meat End Frame", typeof(float)),
                    new MhwMultiStructData.Entry("Speed Eating 1 Tablet Motion Speed", typeof(float)),
                    new MhwMultiStructData.Entry("Speed Eating 2 Tablet Motion Speed", typeof(float)),
                    new MhwMultiStructData.Entry("Speed Eating 3 Tablet Motion Speed", typeof(float)),

                    new MhwMultiStructData.Entry("Mud Motion Speed", typeof(float)),
                    new MhwMultiStructData.Entry("Mud Trans Rate", typeof(float)),
                    new MhwMultiStructData.Entry("Elemental Damage Defense %", typeof(byte)),
                    new MhwMultiStructData.Entry("Elemental Damage Resist %", typeof(byte)),
                    new MhwMultiStructData.Entry("Elemental Damage Resist", typeof(byte)),
                    new MhwMultiStructData.Entry("Weakness Exploit Hit-Zone Threshold", typeof(byte)),
                    new MhwMultiStructData.Entry("Latent Power Activation Time", typeof(ushort)),
                    new MhwMultiStructData.Entry("Latent Power Total Damage to Trigger", typeof(ushort)),
                    new MhwMultiStructData.Entry("Latent Power Secret Total Damage to Trigger", typeof(ushort)),
                    new MhwMultiStructData.Entry("Heroics Activation Health %", typeof(float)),
                    new MhwMultiStructData.Entry("Guts Health Threshold", typeof(byte))
                }, 1, showVertically: true),

                new MhwMultiStructData.StructData("Wide Range", new List <MhwMultiStructData.Entry> {
                    new MhwMultiStructData.Entry("Level 1", typeof(float)),
                    new MhwMultiStructData.Entry("Level 2", typeof(float)),
                    new MhwMultiStructData.Entry("Level 3", typeof(float)),
                    new MhwMultiStructData.Entry("Level 4", typeof(float)),
                    new MhwMultiStructData.Entry("Level 5", typeof(float))
                }, 2),

                new MhwMultiStructData.StructData($"Skill Params ({++paramsIndex})", new List <MhwMultiStructData.Entry> {
                    new MhwMultiStructData.Entry($"Unk{++i}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk{++i}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk{++i}", typeof(float)),
                    new MhwMultiStructData.Entry("Master Mounter: Mount Multiplier", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk{i+=2}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk{++i}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk{++i}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk{++i}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk{++i}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk{++i}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk{++i}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk{++i}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk{++i}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk{++i}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk{++i}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk{++i}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk{++i}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk{++i}", typeof(float))
                }, 1, showVertically: true),

                new MhwMultiStructData.StructData("Focus", new List <MhwMultiStructData.Entry> {
                    new MhwMultiStructData.Entry("Time Rate 1", typeof(float)),
                    new MhwMultiStructData.Entry("Time Rate 2", typeof(float)),
                    new MhwMultiStructData.Entry("Time Rate 3", typeof(float))
                }, 3),

                new MhwMultiStructData.StructData("Punishing Draw", new List <MhwMultiStructData.Entry> {
                    new MhwMultiStructData.Entry("Attack Power", typeof(ushort)),
                    new MhwMultiStructData.Entry("Stun", typeof(ushort)),
                    new MhwMultiStructData.Entry("Exhaust", typeof(ushort)),
                    new MhwMultiStructData.Entry("Param 4", typeof(ushort)),
                    new MhwMultiStructData.Entry("Param 5", typeof(ushort)),
                    new MhwMultiStructData.Entry("Param 6", typeof(ushort))
                }, 14),

                new MhwMultiStructData.StructData("Razor Sharp", new List <MhwMultiStructData.Entry> {
                    new MhwMultiStructData.Entry("Sharpness No Reduce %", typeof(byte)),
                    new MhwMultiStructData.Entry("Gunlance Shot Sub Value", typeof(byte)),
                    new MhwMultiStructData.Entry("Gunlance Shot No Reduce %", typeof(byte)),
                    new MhwMultiStructData.Entry("Gun Ammo No Reduce %", typeof(byte)),
                    new MhwMultiStructData.Entry("Bow Coating No Reduce %", typeof(byte)),
                    new MhwMultiStructData.Entry("Guard Consumption %", typeof(byte))
                }, 2),

                new MhwMultiStructData.StructData("Minds Eye / Ballistics", new List <MhwMultiStructData.Entry> {
                    new MhwMultiStructData.Entry("Critical Begin Wide Rate", typeof(float)),
                    new MhwMultiStructData.Entry("Critical End Wide Rate", typeof(float))
                }, 2)
            };

            var weapons = new List <string> {
                "Great Sword",
                "Sword & Shield",
                "Dual Blades",
                "Long Sword",
                "Hammer",
                "Hunting Horn",
                "Lance",
                "Gunlance",
                "Switch Axe",
                "Charge Blade",
                "Insect Glaive",
                "Bow",
                "HBG",
                "LBG"
            };

            var criticalConditionEntries = weapons.Select(weapon => new MhwMultiStructData.Entry(weapon, typeof(float))).ToList();
            var criticalElementEntries   = new List <MhwMultiStructData.Entry>(criticalConditionEntries)
            {
                new MhwMultiStructData.Entry("Dragon Seal Rate", typeof(float))
            };

            structs.AddRange(new List <MhwMultiStructData.StructData> {
                new MhwMultiStructData.StructData("Critical Element Multipliers", criticalElementEntries, 2),

                new MhwMultiStructData.StructData("Critical Condition Multipliers", criticalConditionEntries, 2)
            });

            structs.AddRange(new List <MhwMultiStructData.StructData> {
                new MhwMultiStructData.StructData($"Skill Params ({++paramsIndex})", new List <MhwMultiStructData.Entry> {
                    new MhwMultiStructData.Entry("Bludgeoner: Red Sharpness Attack Bonus (& BG Melee)", typeof(ushort)),
                    new MhwMultiStructData.Entry("Bludgeoner: Orange Sharpness Attack Bonus", typeof(ushort)),
                    new MhwMultiStructData.Entry("Bludgeoner: Yellow Sharpness Attack Bonus", typeof(ushort)),
                    new MhwMultiStructData.Entry("Bludgeoner: Green Sharpness Attack Bonus", typeof(ushort)),
                    new MhwMultiStructData.Entry("Bludgeoner: Blue Sharpness Attack Bonus", typeof(ushort)),
                    new MhwMultiStructData.Entry("Bludgeoner: White Sharpness Attack Bonus", typeof(ushort)),
                    new MhwMultiStructData.Entry("Bludgeoner: Purple Sharpness Attack Bonus", typeof(ushort)),
                    new MhwMultiStructData.Entry("Bludgeoner: Bowgun Melee Attack Stun Bonus", typeof(ushort)),

                    new MhwMultiStructData.Entry("Non-Elemental Boost: Attack Multiplier", typeof(float)),

                    new MhwMultiStructData.Entry("Affinity Slider: Attack Up Activate Time", typeof(float)),
                    new MhwMultiStructData.Entry("Affinity Slider: Attack Up Duration", typeof(float)),
                    new MhwMultiStructData.Entry("Affinity Slider: Attack Critical Bonus", typeof(byte))
                }, 1, showVertically: true),

                new MhwMultiStructData.StructData("Artillery", new List <MhwMultiStructData.Entry> {
                    new MhwMultiStructData.Entry("Level 1", typeof(float)),
                    new MhwMultiStructData.Entry("Level 2", typeof(float)),
                    new MhwMultiStructData.Entry("Level 3", typeof(float)),
                    new MhwMultiStructData.Entry("Level 4", typeof(float)),
                    new MhwMultiStructData.Entry("Level 5", typeof(float))
                }, 9),

                new MhwMultiStructData.StructData($"Skill Params ({++paramsIndex})", new List <MhwMultiStructData.Entry> {
                    new MhwMultiStructData.Entry("Heavy Artillery: Ballista Attack Rate 1", typeof(float)),
                    new MhwMultiStructData.Entry("Heavy Artillery: Ballista Attack Rate 2", typeof(float)),
                    new MhwMultiStructData.Entry("Heavy Artillery: Cannon Attack Rate 1", typeof(float)),
                    new MhwMultiStructData.Entry("Heavy Artillery: Cannon Attack Rate 2", typeof(float)),

                    new MhwMultiStructData.Entry("Bombardier: Attack Rate 1", typeof(float)),
                    new MhwMultiStructData.Entry("Bombardier: Attack Rate 2", typeof(float)),
                    new MhwMultiStructData.Entry("Bombardier: Attack Rate 3", typeof(float)),
                    new MhwMultiStructData.Entry("Bombardier: Attack Rate 4", typeof(float)),
                    new MhwMultiStructData.Entry("Bombardier: Attack Rate 5", typeof(float)),

                    new MhwMultiStructData.Entry("Capacity Boost: Gunlance Normal Bonus", typeof(byte)),
                    new MhwMultiStructData.Entry("Capacity Boost: Gunlance Radiation Bonus", typeof(byte)),
                    new MhwMultiStructData.Entry("Capacity Boost: Gunlance Scatter Bonus", typeof(byte)),
                    new MhwMultiStructData.Entry("Capacity Boost: Charge Blade Shield Duration Bonus", typeof(byte))
                }, 1, showVertically: true),

                new MhwMultiStructData.StructData("Ammo Up", new List <MhwMultiStructData.Entry> {
                    new MhwMultiStructData.Entry("Capacity 1 Limit", typeof(sbyte)),
                    new MhwMultiStructData.Entry("Capacity 1 Bonus", typeof(byte)),
                    new MhwMultiStructData.Entry("Capacity 2 Limit", typeof(sbyte)),
                    new MhwMultiStructData.Entry("Capacity 2 Bonus", typeof(byte)),
                    new MhwMultiStructData.Entry("Capacity 3 Limit", typeof(sbyte)),
                    new MhwMultiStructData.Entry("Capacity 3 Bonus", typeof(byte)),
                    new MhwMultiStructData.Entry("Capacity 4 Limit", typeof(sbyte)),
                    new MhwMultiStructData.Entry("Capacity 4 Bonus", typeof(byte))
                }, 3),

                new MhwMultiStructData.StructData("Power Prolonger", new List <MhwMultiStructData.Entry> {
                    new MhwMultiStructData.Entry("Level 1", typeof(float)),
                    new MhwMultiStructData.Entry("Level 2", typeof(float)),
                    new MhwMultiStructData.Entry("Level 3", typeof(float))
                }, 5),

                new MhwMultiStructData.StructData($"Skill Params ({++paramsIndex})", new List <MhwMultiStructData.Entry> {
                    new MhwMultiStructData.Entry("Health Auto Recover Interval", typeof(float)),
                    new MhwMultiStructData.Entry("Health Auto Recover Value", typeof(byte))
                }.Out(out var temp1), 1, showVertically: true)
            });
コード例 #13
0
ファイル: Program.cs プロジェクト: woshimj001/MHW-Editor
        public static void GenerateMultiStructProps(string category, string className, MhwMultiStructData structData)
        {
            WriteResult($"{Global.GENERATED_ROOT}\\MHW_Editor\\Structs\\{category.Replace(".", "\\")}", className, new MultiStructItemTemplate {
                Session = new Dictionary <string, object> {
                    { "_namespace", $"MHW_Editor.Structs.{category}" },
                    { "className", className },
                    { "structData", structData }
                }
            });

            WriteResult($"{Global._010_OUTPUT_ROOT}", structData.ext, new MultiStruct010Template {
                Session = new Dictionary <string, object> {
                    { "structData", structData }
                }
            }, "bt");
        }
コード例 #14
0
        protected override List <MhwMultiStructData.StructData> CreateBase(string wpNum)
        {
            var structs = base.CreateBase(wpNum);

            structs.Add(new MhwMultiStructData.StructData($"W{wpNum}p Params ({++paramIndex})", new List <MhwMultiStructData.Entry> {
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry("Delay Between Shots: Rapid Fire +1", typeof(float)),
                new MhwMultiStructData.Entry("Extra Bullets: Rapid Fire +1", typeof(uint)),
                new MhwMultiStructData.Entry("Delay Between Shots: Rapid Fire +2", typeof(float)),
                new MhwMultiStructData.Entry("Extra Bullets: Rapid Fire +2", typeof(uint)),
                new MhwMultiStructData.Entry("Delay Between Shots: Rapid Fire +3", typeof(float)),
                new MhwMultiStructData.Entry("Extra Bullets: Rapid Fire +3", typeof(uint)),
                new MhwMultiStructData.Entry("Delay Between Shots: Rapid Fire +4", typeof(float)),
                new MhwMultiStructData.Entry("Extra Bullets: Rapid Fire +4", typeof(uint)),
                new MhwMultiStructData.Entry($"Unk {unkIndex += 9}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry("Rapid Fire Extra Round Damage Multiplier", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {unkIndex += 2}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry("Wyvernheart Ammo Cap", typeof(float)),
                new MhwMultiStructData.Entry("Delay Between Shots", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {unkIndex += 3}", typeof(float)),
                new MhwMultiStructData.Entry("Wyvernheart Ammo Recharge", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {unkIndex += 2}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(byte)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(byte)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(byte)),
                new MhwMultiStructData.Entry("Wyvernheart Hit Count for Damage Bonus", typeof(byte)),
                new MhwMultiStructData.Entry("Hit for 1st Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(1st) Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("Hit for 2nd Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(2nd) Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("Hit for 3rd Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(3rd) Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("Hit for 4th Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(4th) Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("Hit for 5th Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(5th) Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {unkIndex += 12}", typeof(byte)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(byte)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(byte)),
                new MhwMultiStructData.Entry("Wyvernheart Mod Hit Count for Damage Bonus", typeof(byte)),
                new MhwMultiStructData.Entry("(Mod) Hit for 1st Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod, 1st) Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod) Hit for 2nd Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod, 2nd) Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod) Hit for 3rd Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod, 3rd) Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod) Hit for 4th Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod, 4th) Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod) Hit for 5th Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod, 5th) Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod) Hit for 6th Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod, 6th) Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod) Hit for 7th Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod, 7th) Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod) Hit for 8th Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod, 8th) Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod) Hit for 9th Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod, 9th) Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod) Hit for 10th Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod, 10th) Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {unkIndex += 22}", typeof(byte)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(byte)),
                new MhwMultiStructData.Entry("Wyrmsnipe Cooldown", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {unkIndex += 2}", typeof(byte)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(byte)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(byte)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(uint)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(short))
            }, 1, showVertically: true));

            structs.Add(new MhwMultiStructData.StructData($"Unk Arr {++arrayIndex}", new List <MhwMultiStructData.Entry> {
                new MhwMultiStructData.Entry("Unk 1", typeof(float)),
                new MhwMultiStructData.Entry("Unk 2", typeof(float)),
                new MhwMultiStructData.Entry("Unk 3", typeof(float)),
                new MhwMultiStructData.Entry("Unk 4", typeof(float)),
                new MhwMultiStructData.Entry("Unk 5", typeof(float))
            }, 16));

            structs.Add(new MhwMultiStructData.StructData($"Unk Arr {++arrayIndex}", new List <MhwMultiStructData.Entry> {
                new MhwMultiStructData.Entry("Unk 1", typeof(float)),
                new MhwMultiStructData.Entry("Unk 2", typeof(uint)),
                new MhwMultiStructData.Entry("Unk 3", typeof(float)),
                new MhwMultiStructData.Entry("Unk 4", typeof(float)),
                new MhwMultiStructData.Entry("Unk 5", typeof(float)),
                new MhwMultiStructData.Entry("Unk 6", typeof(float))
            }, 4));

            structs.Add(new MhwMultiStructData.StructData($"W{wpNum}p Params ({++paramIndex})", new List <MhwMultiStructData.Entry> {
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry("Close range Up active range 1", typeof(float)),
                new MhwMultiStructData.Entry("Close range Up active range 2", typeof(float)),
                new MhwMultiStructData.Entry("Close range Up active range 3", typeof(float)),
                new MhwMultiStructData.Entry("Close range Up active range 4", typeof(float)),
                new MhwMultiStructData.Entry("Close range Up Modifier 1", typeof(float)),
                new MhwMultiStructData.Entry("Close range Up Modifier 2", typeof(float)),
                new MhwMultiStructData.Entry("Close range Up Modifier 3", typeof(float)),
                new MhwMultiStructData.Entry("Close range Up Modifier 4", typeof(float)),
                new MhwMultiStructData.Entry("Ranged Attack Up active distance 1", typeof(float)),
                new MhwMultiStructData.Entry("Ranged Attack Up active distance 2", typeof(float)),
                new MhwMultiStructData.Entry("Ranged Attack Up active distance 3", typeof(float)),
                new MhwMultiStructData.Entry("Ranged Attack Up active distance 4", typeof(float)),
                new MhwMultiStructData.Entry("Ranged Attack Up Modifier 1", typeof(float)),
                new MhwMultiStructData.Entry("Ranged Attack Up Modifier 2", typeof(float)),
                new MhwMultiStructData.Entry("Ranged Attack Up Modifier 3", typeof(float)),
                new MhwMultiStructData.Entry("Ranged Attack Up Modifier 4", typeof(float)),
                new MhwMultiStructData.Entry("Guard Angle (Both Sides)", typeof(float))
            }, 1, showVertically: true));

            structs.Add(new MhwMultiStructData.StructData("Number of Shield Mods Struct", new List <MhwMultiStructData.Entry> {
                new MhwMultiStructData.Entry("Number of Shield Mods", typeof(uint)).Out(out var count)
            }, 1, true).Out(out var countHolder));
コード例 #15
0
ファイル: Wp12Param.cs プロジェクト: dtlnor/MHW-Editor
        protected override List <MhwMultiStructData.StructData> CreateBase(string wpNum)
        {
            var structs = base.CreateBase(wpNum);

            structs.Add(new MhwMultiStructData.StructData($"W{wpNum}p Params ({++paramIndex})", new List <MhwMultiStructData.Entry> {
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry("Delay Between Shots: Rapid Fire +1", typeof(float)),
                new MhwMultiStructData.Entry("Extra Bullets: Rapid Fire +1", typeof(uint)),
                new MhwMultiStructData.Entry("Delay Between Shots: Rapid Fire +2", typeof(float)),
                new MhwMultiStructData.Entry("Extra Bullets: Rapid Fire +2", typeof(uint)),
                new MhwMultiStructData.Entry("Delay Between Shots: Rapid Fire +3", typeof(float)),
                new MhwMultiStructData.Entry("Extra Bullets: Rapid Fire +3", typeof(uint)),
                new MhwMultiStructData.Entry("Delay Between Shots: Rapid Fire +4", typeof(float)),
                new MhwMultiStructData.Entry("Extra Bullets: Rapid Fire +4", typeof(uint)),
                new MhwMultiStructData.Entry($"Unk {unkIndex += 9}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry("Rapid Fire Extra Round Damage Multiplier", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {unkIndex += 2}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry("Wyvernheart Ammo Cap", typeof(float)),
                new MhwMultiStructData.Entry("Delay Between Shots", typeof(float)),
                new MhwMultiStructData.Entry("Wyvernheart Ammo Consumption", typeof(float)),
                new MhwMultiStructData.Entry("Wyvernheart Ammo Recharge", typeof(float)),
                new MhwMultiStructData.Entry("Wyvernheart Vertical Deviation", typeof(float)),
                new MhwMultiStructData.Entry("Wyvernheart Horizontal Deviation", typeof(float)),
                new MhwMultiStructData.Entry("Wyvernheart Hit Count Per Actual Hit", typeof(byte)),
                new MhwMultiStructData.Entry($"Unk {unkIndex += 8}", typeof(byte)),
                new MhwMultiStructData.Entry("Wyvernheart Hit Count Loss Per Every Actual Loss Hit", typeof(byte)),
                new MhwMultiStructData.Entry("Wyvernheart Hit Count for Damage Bonus", typeof(byte)),
                new MhwMultiStructData.Entry("Hit for 1st Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(1st) Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("Hit for 2nd Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(2nd) Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("Hit for 3rd Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(3rd) Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("Hit for 4th Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(4th) Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("Hit for 5th Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(5th) Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("Wyvernheart Mod Hit Count Per Actual Hit", typeof(byte)),
                new MhwMultiStructData.Entry($"Unk {unkIndex += 14}", typeof(byte)),
                new MhwMultiStructData.Entry("Wyvernheart Mod Hit Count Loss Per Actual Hit Loss", typeof(byte)),
                new MhwMultiStructData.Entry("Wyvernheart Mod Hit Count for Damage Bonus", typeof(byte)),
                new MhwMultiStructData.Entry("(Mod) Hit for 1st Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod, 1st) Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod) Hit for 2nd Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod, 2nd) Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod) Hit for 3rd Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod, 3rd) Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod) Hit for 4th Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod, 4th) Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod) Hit for 5th Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod, 5th) Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod) Hit for 6th Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod, 6th) Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod) Hit for 7th Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod, 7th) Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod) Hit for 8th Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod, 8th) Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod) Hit for 9th Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod, 9th) Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod) Hit for 10th Damage Bonus", typeof(ushort)),
                new MhwMultiStructData.Entry("(Mod, 10th) Damage Bonus", typeof(ushort))
            }, 1, showVertically: true));

            structs.Add(new MhwMultiStructData.StructData("Event Pad Vib", eventPadVib, 1));

            structs.Add(new MhwMultiStructData.StructData($"W{wpNum}p Params ({paramIndex}.1)", new List <MhwMultiStructData.Entry> {
                new MhwMultiStructData.Entry("Wyvernsnipe Prone Movement Params 1", typeof(float)), // 217
                new MhwMultiStructData.Entry("Wyvernsnipe Prone Movement Params 2", typeof(float)),
                new MhwMultiStructData.Entry("Wyvernsnipe Prone Movement Params 3", typeof(float)),
                new MhwMultiStructData.Entry("Wyvernsnipe Prone Movement Params 4", typeof(float)),
                new MhwMultiStructData.Entry("Wyvernsnipe Prone Movement Params 5", typeof(float)),
                new MhwMultiStructData.Entry("Wyvernsnipe Prone Movement Params 6", typeof(float)),
                new MhwMultiStructData.Entry("Wyvernsnipe Prone Movement Params 7", typeof(float)),
                new MhwMultiStructData.Entry("Wyvernsnipe Prone Movement Params 8", typeof(float)),
                new MhwMultiStructData.Entry("Wyvernsnipe Prone Movement Params 9", typeof(float)),
                new MhwMultiStructData.Entry("Wyvernsnipe Prone Movement Params 10", typeof(float)),
                new MhwMultiStructData.Entry("Wyvernsnipe Prone Movement Params 11", typeof(float)),
                new MhwMultiStructData.Entry("Wyvernsnipe Prone Movement Params 12", typeof(float)),
                new MhwMultiStructData.Entry("Wyvernsnipe Prone Movement Params 13", typeof(float)),
                new MhwMultiStructData.Entry("Wyvernsnipe Prone Movement Params 14", typeof(float)),
                new MhwMultiStructData.Entry("Wyrmsnipe Capacity", typeof(byte)),
                new MhwMultiStructData.Entry("Wyrmsnipe Cooldown", typeof(float)), // 232
                new MhwMultiStructData.Entry("Wyvernsnipe Number of Medium Explosions?", typeof(byte)),
                new MhwMultiStructData.Entry("Wyvernsnipe Number of Larger Explosions?", typeof(byte)),
                new MhwMultiStructData.Entry("Wyvernsnipe Number of End Explosions?", typeof(byte)),
                new MhwMultiStructData.Entry($"Unk {unkIndex += 47}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(uint)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(short))
            }, 1, showVertically: true));

            structs.Add(new MhwMultiStructData.StructData($"Unk Arr {++arrayIndex}", new List <MhwMultiStructData.Entry> {
                new MhwMultiStructData.Entry("Unk 1", typeof(float)),
                new MhwMultiStructData.Entry("Unk 2", typeof(float)),
                new MhwMultiStructData.Entry("Unk 3", typeof(float)),
                new MhwMultiStructData.Entry("Unk 4", typeof(float)),
                new MhwMultiStructData.Entry("Unk 5", typeof(float))
            }, 16));

            structs.Add(new MhwMultiStructData.StructData("Bowgun Deviation (Last One Maybe High + Felyne Meal)", new List <MhwMultiStructData.Entry> {
                new MhwMultiStructData.Entry("Unk 1", typeof(float)),
                new MhwMultiStructData.Entry("Unk 2", typeof(uint)),
                new MhwMultiStructData.Entry("Unk 3", typeof(float)),
                new MhwMultiStructData.Entry("Unk 4", typeof(float)),
                new MhwMultiStructData.Entry("Unk 5", typeof(float)),
                new MhwMultiStructData.Entry("Unk 6", typeof(float))
            }, 4));

            structs.Add(new MhwMultiStructData.StructData("Ammo Shifting", new List <MhwMultiStructData.Entry> {
                new MhwMultiStructData.Entry("Vertical", typeof(float)),
                new MhwMultiStructData.Entry("Horizontal", typeof(float))
            }, 17));

            structs.Add(new MhwMultiStructData.StructData($"W{wpNum}p Params ({++paramIndex})", new List <MhwMultiStructData.Entry> {
                new MhwMultiStructData.Entry("Close range Up active range 1", typeof(float)),
                new MhwMultiStructData.Entry("Close range Up active range 2", typeof(float)),
                new MhwMultiStructData.Entry("Close range Up active range 3", typeof(float)),
                new MhwMultiStructData.Entry("Close range Up active range 4", typeof(float)),
                new MhwMultiStructData.Entry("Close range Up Modifier 1", typeof(float)),
                new MhwMultiStructData.Entry("Close range Up Modifier 2", typeof(float)),
                new MhwMultiStructData.Entry("Close range Up Modifier 3", typeof(float)),
                new MhwMultiStructData.Entry("Close range Up Modifier 4", typeof(float)),
                new MhwMultiStructData.Entry("Ranged Attack Up Active Distance 1", typeof(float)),
                new MhwMultiStructData.Entry("Ranged Attack Up Active Distance 2", typeof(float)),
                new MhwMultiStructData.Entry("Ranged Attack Up Active Distance 3", typeof(float)),
                new MhwMultiStructData.Entry("Ranged Attack Up Active Distance 4", typeof(float)),
                new MhwMultiStructData.Entry("Ranged Attack Up Modifier 1", typeof(float)),
                new MhwMultiStructData.Entry("Ranged Attack Up Modifier 2", typeof(float)),
                new MhwMultiStructData.Entry("Ranged Attack Up Modifier 3", typeof(float)),
                new MhwMultiStructData.Entry("Ranged Attack Up Modifier 4", typeof(float)),
                new MhwMultiStructData.Entry("Guard Angle (Both Sides)", typeof(float))
            }, 1, showVertically: true));

            structs.Add(new MhwMultiStructData.StructData("Number of Shield Mods Struct", new List <MhwMultiStructData.Entry> {
                new MhwMultiStructData.Entry("Number of Shield Mods", typeof(uint)).Out(out var count)
            }, 1, true).Out(out var countHolder));
コード例 #16
0
        protected override List <MhwMultiStructData.StructData> CreateBase(string wpNum)
        {
            var structs = base.CreateBase(wpNum);

            structs.Add(new MhwMultiStructData.StructData($"W{wpNum}p Params ({++paramIndex})", new List <MhwMultiStructData.Entry> {
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(uint)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(uint)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(uint)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(uint)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(byte)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(byte)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(byte)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(byte)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(byte)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(byte)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(byte)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(byte)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(byte)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(ushort)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(byte)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(byte)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(byte)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(byte)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(uint)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(short))
            }, 1, showVertically: true));

            structs.Add(new MhwMultiStructData.StructData($"Unk Arr {++arrayIndex}", new List <MhwMultiStructData.Entry> {
                new MhwMultiStructData.Entry("Unk 1", typeof(float)),
                new MhwMultiStructData.Entry("Unk 2", typeof(float)),
                new MhwMultiStructData.Entry("Unk 3", typeof(float)),
                new MhwMultiStructData.Entry("Unk 4", typeof(float)),
                new MhwMultiStructData.Entry("Unk 5", typeof(float))
            }, 16));

            structs.Add(new MhwMultiStructData.StructData($"Unk Arr {++arrayIndex}", new List <MhwMultiStructData.Entry> {
                new MhwMultiStructData.Entry("Unk 1", typeof(float)),
                new MhwMultiStructData.Entry("Unk 2", typeof(uint)),
                new MhwMultiStructData.Entry("Unk 3", typeof(float)),
                new MhwMultiStructData.Entry("Unk 4", typeof(float)),
                new MhwMultiStructData.Entry("Unk 5", typeof(float)),
                new MhwMultiStructData.Entry("Unk 6", typeof(float))
            }, 4));

            structs.Add(new MhwMultiStructData.StructData($"W{wpNum}p Params ({++paramIndex})", new List <MhwMultiStructData.Entry> {
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry($"Unk {++unkIndex}", typeof(float)),
                new MhwMultiStructData.Entry("Close range Up active range 1", typeof(float)),
                new MhwMultiStructData.Entry("Close range Up active range 2", typeof(float)),
                new MhwMultiStructData.Entry("Close range Up active range 3", typeof(float)),
                new MhwMultiStructData.Entry("Close range Up active range 4", typeof(float)),
                new MhwMultiStructData.Entry("Close range Up Modifier 1", typeof(float)),
                new MhwMultiStructData.Entry("Close range Up Modifier 2", typeof(float)),
                new MhwMultiStructData.Entry("Close range Up Modifier 3", typeof(float)),
                new MhwMultiStructData.Entry("Close range Up Modifier 4", typeof(float)),
                new MhwMultiStructData.Entry("Ranged Attack Up active distance 1", typeof(float)),
                new MhwMultiStructData.Entry("Ranged Attack Up active distance 2", typeof(float)),
                new MhwMultiStructData.Entry("Ranged Attack Up active distance 3", typeof(float)),
                new MhwMultiStructData.Entry("Ranged Attack Up active distance 4", typeof(float)),
                new MhwMultiStructData.Entry("Ranged Attack Up Modifier 1", typeof(float)),
                new MhwMultiStructData.Entry("Ranged Attack Up Modifier 2", typeof(float)),
                new MhwMultiStructData.Entry("Ranged Attack Up Modifier 3", typeof(float)),
                new MhwMultiStructData.Entry("Ranged Attack Up Modifier 4", typeof(float)),
                new MhwMultiStructData.Entry("Guard Angle (Both Sides)", typeof(float))
            }, 1, showVertically: true));

            structs.Add(new MhwMultiStructData.StructData("Number of Shield Mods Struct", new List <MhwMultiStructData.Entry> {
                new MhwMultiStructData.Entry("Number of Shield Mods", typeof(uint)).Out(out var count)
            }, 1, true).Out(out var countHolder));
コード例 #17
0
        public MultiStruct Generate()   // .plp
        // 'Unk' counters.
        {
            ushort unk = 0;
            ushort staminaConsumptionIndex = 0;
            ushort staminaTimeReduceIndex  = 0;
            uint   arrayIndex         = 0;
            uint   paramsIndex        = 0;
            uint   cdBlockIndex       = 0;
            uint   skippingAheadIndex = 0;

            var structs = new List <MhwMultiStructData.StructData> {
                new MhwMultiStructData.StructData("Header", new List <MhwMultiStructData.Entry> {
                    new MhwMultiStructData.Entry("PLP", typeof(char), true, typeof(string), arrayCount: 4),
                    new MhwMultiStructData.Entry("Magic 1", typeof(uint), true)
                }, 1),

                new MhwMultiStructData.StructData($"Player Params ({++paramsIndex})", new List <MhwMultiStructData.Entry> {
                    new MhwMultiStructData.Entry("Gravity", typeof(float)),
                    new MhwMultiStructData.Entry("Gravity Speed Rate", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(uint)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(uint)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float))
                }, 1, showVertically: true),

                new MhwMultiStructData.StructData($"Player Params ({++paramsIndex}) - Unk Array ({++arrayIndex})", new List <MhwMultiStructData.Entry> {
                    new MhwMultiStructData.Entry("Unk 1", typeof(byte)),
                    new MhwMultiStructData.Entry("Unk 2", typeof(ushort)),
                    new MhwMultiStructData.Entry("Unk 3", typeof(ushort)),
                    new MhwMultiStructData.Entry("Unk 4", typeof(float)),
                    new MhwMultiStructData.Entry("Unk 5", typeof(ushort))
                }, 12),

                new MhwMultiStructData.StructData($"Player Params ({++paramsIndex})", new List <MhwMultiStructData.Entry> {
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(uint)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(uint)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),

                    new MhwMultiStructData.Entry("Health Initial Value", typeof(float)),
                    new MhwMultiStructData.Entry("Health Max Value", typeof(float)),
                    new MhwMultiStructData.Entry("Health Damage Recovery Rate", typeof(float)),
                    new MhwMultiStructData.Entry("Health Damage Recovery Wait Time", typeof(float)),
                    new MhwMultiStructData.Entry("Health Damage Recovery Interval", typeof(float)),
                    new MhwMultiStructData.Entry("Health Damage Recovery Value", typeof(float)),

                    new MhwMultiStructData.Entry("Stamina Initial Value", typeof(float)),
                    new MhwMultiStructData.Entry("Stamina Max Value", typeof(float)),
                    new MhwMultiStructData.Entry("Stamina Min Value", typeof(float)),
                    new MhwMultiStructData.Entry("Stamina Tired Value", typeof(float)),
                    new MhwMultiStructData.Entry("Stamina Auto Recover", typeof(float)),
                    new MhwMultiStructData.Entry("Stamina Auto Max Reduce", typeof(float)),
                    new MhwMultiStructData.Entry("Stamina Auto Max Reduce Time", typeof(float)),
                    new MhwMultiStructData.Entry("Stamina IB Unknown", typeof(float)),
                    new MhwMultiStructData.Entry("Stamina Escape Dash Rate", typeof(float)),
                    new MhwMultiStructData.Entry("Stamina Out of Battle Rate", typeof(float)),
                    new MhwMultiStructData.Entry("Stamina Reduce Rate Limit Trigger", typeof(float)),
                    new MhwMultiStructData.Entry("Stamina Reduce Rate Limit Time", typeof(float)),
                    new MhwMultiStructData.Entry("Stamina Mount Endurance Rate", typeof(float)),

                    new MhwMultiStructData.Entry("Stamina Consumption: Dodge", typeof(float)),
                    new MhwMultiStructData.Entry("Stamina Consumption: LS Counter", typeof(float)),
                    new MhwMultiStructData.Entry("Stamina Consumption: SA Wild Swing", typeof(float)),
                    new MhwMultiStructData.Entry($"Stamina Consumption: Unk{++staminaConsumptionIndex}", typeof(float)),
                    new MhwMultiStructData.Entry($"Stamina Consumption: Unk{++staminaConsumptionIndex}", typeof(float)),
                    new MhwMultiStructData.Entry($"Stamina Consumption: Unk{++staminaConsumptionIndex}", typeof(float)),
                    new MhwMultiStructData.Entry("Stamina Consumption: Bow Shoot", typeof(float)),
                    new MhwMultiStructData.Entry($"Stamina Consumption: Unk{++staminaConsumptionIndex}", typeof(float)),
                    new MhwMultiStructData.Entry($"Stamina Consumption: Unk{++staminaConsumptionIndex}", typeof(float)),
                    new MhwMultiStructData.Entry($"Stamina Consumption: Unk{++staminaConsumptionIndex}", typeof(float)),
                    new MhwMultiStructData.Entry("Stamina Consumption: Bow Charge Step", typeof(float)),
                    new MhwMultiStructData.Entry($"Stamina Consumption: Unk{++staminaConsumptionIndex}", typeof(float)),
                    new MhwMultiStructData.Entry("Stamina Consumption: Claw Attack 1", typeof(float)),
                    new MhwMultiStructData.Entry("Stamina Consumption: Claw Attack 2", typeof(float)),
                    new MhwMultiStructData.Entry("Stamina Consumption: Claw Attack 3", typeof(float)),
                    new MhwMultiStructData.Entry("Stamina Consumption: Claw Attack 4", typeof(float)),
                    new MhwMultiStructData.Entry($"Stamina Consumption: Unk{++staminaConsumptionIndex}", typeof(float)),
                    new MhwMultiStructData.Entry($"Stamina Consumption: Unk{++staminaConsumptionIndex}", typeof(float)),

                    new MhwMultiStructData.Entry($"Stamina Time Reduce mCore: Unk{++staminaTimeReduceIndex}", typeof(float)),
                    new MhwMultiStructData.Entry($"Stamina Time Reduce mCore: Unk{++staminaTimeReduceIndex}", typeof(float)),
                    new MhwMultiStructData.Entry($"Stamina Time Reduce mCore: Unk{++staminaTimeReduceIndex}", typeof(float)),
                    new MhwMultiStructData.Entry("Stamina Time Reduce mCore: Hammer/Bow Charge Drain", typeof(float)),
                    new MhwMultiStructData.Entry($"Stamina Time Reduce mCore: Unk{++staminaTimeReduceIndex}", typeof(float)),
                    new MhwMultiStructData.Entry($"Stamina Time Reduce mCore: Unk{++staminaTimeReduceIndex}", typeof(float)),
                    new MhwMultiStructData.Entry($"Stamina Time Reduce mCore: Unk{++staminaTimeReduceIndex}", typeof(float)),
                    new MhwMultiStructData.Entry($"Stamina Time Reduce mCore: Unk{++staminaTimeReduceIndex}", typeof(float)),
                    new MhwMultiStructData.Entry("Stamina Time Reduce mCore: Lance's Power Guard", typeof(float)),
                    new MhwMultiStructData.Entry($"Stamina Time Reduce mCore: Unk{++staminaTimeReduceIndex}", typeof(float)),
                    new MhwMultiStructData.Entry("Stamina Time Reduce mCore: Clutch Drain (Whilst Grappled)", typeof(float)),
                    new MhwMultiStructData.Entry("Stamina Time Reduce mCore: Clutch-Counter", typeof(float)),
                    new MhwMultiStructData.Entry($"Stamina Time Reduce mCore: Unk{++staminaTimeReduceIndex}", typeof(float)),
                    new MhwMultiStructData.Entry($"Stamina Time Reduce mCore: Unk{++staminaTimeReduceIndex}", typeof(float)),
                    new MhwMultiStructData.Entry($"Stamina Time Reduce mCore: Unk{++staminaTimeReduceIndex}", typeof(float)),
                    new MhwMultiStructData.Entry($"Stamina Time Reduce mCore: Unk{++staminaTimeReduceIndex}", typeof(float)),
                    new MhwMultiStructData.Entry($"Stamina Time Reduce mCore: Unk{++staminaTimeReduceIndex}", typeof(float)),
                    new MhwMultiStructData.Entry($"Stamina Time Reduce mCore: Unk{++staminaTimeReduceIndex}", typeof(float)),

                    new MhwMultiStructData.Entry("Mount Reduce Stamina mCore: Unk1", typeof(float)),
                    new MhwMultiStructData.Entry("Mount Reduce Stamina mCore: Unk2", typeof(float)),

                    new MhwMultiStructData.Entry("Mount Life Reduce Stamina mCore: Unk1", typeof(float)),
                    new MhwMultiStructData.Entry("Mount Life Reduce Stamina mCore: Unk2", typeof(float)),
                    new MhwMultiStructData.Entry("Mount Life Reduce Stamina mCore: Unk3", typeof(float)),
                    new MhwMultiStructData.Entry("Mount Life Reduce Stamina mCore: Unk4", typeof(float)),

                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry("Explosive HR Fixed Attack Rate", typeof(float)),
                    new MhwMultiStructData.Entry("Explosive MR Fixed Attack Rate", typeof(float)),
                    new MhwMultiStructData.Entry("Critical Attack Rate", typeof(float)),
                    new MhwMultiStructData.Entry("Bad Critical Attack Rate", typeof(float)),

                    new MhwMultiStructData.Entry("Sharpness Recoil Reduction %", typeof(byte)),
                    new MhwMultiStructData.Entry("Sharpness Recoil Reduction Value", typeof(byte)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(uint)),
                    new MhwMultiStructData.Entry("Physical Attack Rate Limit", typeof(float)),
                    new MhwMultiStructData.Entry("Elemental Attack Rate Limit", typeof(float)),
                    new MhwMultiStructData.Entry("Condition Elemental Attack Flat Limit", typeof(float)),
                    new MhwMultiStructData.Entry("Bowgun Elemental Attack Rate Limit", typeof(float)),
                    new MhwMultiStructData.Entry("Condition Attack Rate Limit", typeof(float)),
                    new MhwMultiStructData.Entry("Stun Attack Rate Limit", typeof(float)),
                    new MhwMultiStructData.Entry("Stamina Attack Rate Limit", typeof(float)),
                    new MhwMultiStructData.Entry("Mount Attack Rate Limit", typeof(float)),
                    new MhwMultiStructData.Entry("Super Armor Stun Damage Rate", typeof(float)),
                    new MhwMultiStructData.Entry("Hyper Armor Damage Rate", typeof(float)),
                    new MhwMultiStructData.Entry("Hyper Armor Stun Damage Rate", typeof(float)),
                    new MhwMultiStructData.Entry("Gunner Defense Rate", typeof(float)),
                    new MhwMultiStructData.Entry("Gunner Elemental Resistance Bonus", typeof(byte)),
                    new MhwMultiStructData.Entry("Lava Damage Interval Time", typeof(float)),
                    new MhwMultiStructData.Entry("Lava Damage Damage", typeof(float)),
                    new MhwMultiStructData.Entry("Acid Damage Interval Time", typeof(float)),
                    new MhwMultiStructData.Entry("Acid Damage Damage", typeof(float))
                }, 1, showVertically: true)
            };

            structs.AddRange(new List <MhwMultiStructData.StructData> {
                new MhwMultiStructData.StructData($"CD Block ({++cdBlockIndex})", new List <MhwMultiStructData.Entry> {
                    new MhwMultiStructData.Entry("Unk", typeof(uint), true)
                }, 4, true),

                new MhwMultiStructData.StructData($"Player Params ({++paramsIndex})", new List <MhwMultiStructData.Entry> {
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry("Walk Turn Tilt (Bow)", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry("Run Turn Tilt (Bow)", typeof(float)),
                    new MhwMultiStructData.Entry("Run Turn Tilt Head (Bow)", typeof(float)),

                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(byte)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(byte)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(byte)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(byte)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(byte)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(byte)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(byte)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(byte)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(byte)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(byte)),

                    new MhwMultiStructData.Entry("Walk Turn Speed", typeof(float)),
                    new MhwMultiStructData.Entry("Walk Turn Speed (Room)", typeof(float)),
                    new MhwMultiStructData.Entry("Walk Stop Margin Time", typeof(float)),
                    new MhwMultiStructData.Entry("Female Motion Start Time", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry("Walk Motion Speed (Room)", typeof(float)),
                    new MhwMultiStructData.Entry("Walk Motion Speed", typeof(float)),
                    new MhwMultiStructData.Entry("Run Stop Margin Time", typeof(float)),
                    new MhwMultiStructData.Entry("Run Turn Speed", typeof(float)),
                    new MhwMultiStructData.Entry("Run Turn Lever Angle", typeof(float)),
                    new MhwMultiStructData.Entry("Run Female Motion Start Time", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry("Run Motion Speed (Room)", typeof(float)),
                    new MhwMultiStructData.Entry("Run Motion Speed", typeof(float)),
                    new MhwMultiStructData.Entry("Dash Turn Speed", typeof(float)),
                    new MhwMultiStructData.Entry("Dash Motion Speed", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float)),
                    new MhwMultiStructData.Entry($"Unk {++unk}", typeof(float))
                }, 1, showVertically: true),

                new MhwMultiStructData.StructData($"Player Params ({++paramsIndex}) - Dodge IFrames", new List <MhwMultiStructData.Entry> {
                    new MhwMultiStructData.Entry("Evasion 0", typeof(float)),
                    new MhwMultiStructData.Entry("Evasion 1", typeof(float)),
                    new MhwMultiStructData.Entry("Evasion 2", typeof(float)),
                    new MhwMultiStructData.Entry("Evasion 3", typeof(float)),
                    new MhwMultiStructData.Entry("Evasion 4", typeof(float)),
                    new MhwMultiStructData.Entry("Evasion 5", typeof(float)),
                    new MhwMultiStructData.Entry("Evasion Mantle", typeof(float))
                }, 10),

                new MhwMultiStructData.StructData($"Player Params ({++paramsIndex}) - Evade Distance", new List <MhwMultiStructData.Entry> {
                    new MhwMultiStructData.Entry("Distance 1", typeof(float)),
                    new MhwMultiStructData.Entry("Distance 2", typeof(float)),
                    new MhwMultiStructData.Entry("Distance 3", typeof(float))
                }, 11)
            });

            structs.AddRange(new List <MhwMultiStructData.StructData> {
                new MhwMultiStructData.StructData($"Skipping Ahead ({++skippingAheadIndex})", new List <MhwMultiStructData.Entry> {
                    new MhwMultiStructData.Entry("Raw Bytes", typeof(void), subStruct: new MhwMultiStructData.StructData($"Raw Bytes ({skippingAheadIndex})", new List <MhwMultiStructData.Entry> {
                        new MhwMultiStructData.Entry("Byte", typeof(byte))
                    }, 7014))
                }, 1),

                new MhwMultiStructData.StructData($"Player Params ({++paramsIndex}) - HR/MR Augment Params", new List <MhwMultiStructData.Entry> {
                    // HR Augment.
                    new MhwMultiStructData.Entry("Wp HR Augment Attack Bonus (1)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp HR Augment Attack Bonus (2)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp HR Augment Attack Bonus (3)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp HR Augment Critical Bonus (1)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp HR Augment Critical Bonus (2)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp HR Augment Critical Bonus (3)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp HR Augment Defense Bonus (1)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp HR Augment Defense Bonus (2)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp HR Augment Defense Bonus (3)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp HR Augment Defense: Divine Blessing Chance (1)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp HR Augment Defense: Divine Blessing Chance (2)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp HR Augment Defense: Divine Blessing Chance (3)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp HR Augment Defense: Divine Blessing Reduction (1)", typeof(float)),
                    new MhwMultiStructData.Entry("Wp HR Augment Defense: Divine Blessing Reduction (2)", typeof(float)),
                    new MhwMultiStructData.Entry("Wp HR Augment Defense: Divine Blessing Reduction (3)", typeof(float)),
                    new MhwMultiStructData.Entry("Wp HR Augment Defense Heal Damage Rate (1)", typeof(float)),
                    new MhwMultiStructData.Entry("Wp HR Augment Defense Heal Damage Rate (2)", typeof(float)),
                    new MhwMultiStructData.Entry("Wp HR Augment Defense Heal Damage Rate (3)", typeof(float)),
                    new MhwMultiStructData.Entry("Wp HR Augment IB Unk", typeof(float)),
                    new MhwMultiStructData.Entry("Wp HR Augment Lifesteal Cooldown", typeof(float)),

                    // MR Augment now.
                    new MhwMultiStructData.Entry("Wp MR Augment Attack Bonus (1)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp MR Augment Attack Bonus (2)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp MR Augment Attack Bonus (3)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp MR Augment Attack Bonus (4)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp MR Augment Critical Bonus (1)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp MR Augment Critical Bonus (2)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp MR Augment Critical Bonus (3)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp MR Augment Critical Bonus (4)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp MR Augment Defense Bonus (1)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp MR Augment Defense Bonus (2)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp MR Augment Defense Bonus (3)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp MR Augment Defense Bonus (4)", typeof(byte)),

                    new MhwMultiStructData.Entry("Wp MR Augment Defense: Divine Blessing Chance (1)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp MR Augment Defense: Divine Blessing Chance (2)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp MR Augment Defense: Divine Blessing Chance (3)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp MR Augment Defense: Divine Blessing Chance (4)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp MR Augment Defense: Divine Blessing Reduction (1)", typeof(float)),
                    new MhwMultiStructData.Entry("Wp MR Augment Defense: Divine Blessing Reduction (2)", typeof(float)),
                    new MhwMultiStructData.Entry("Wp MR Augment Defense: Divine Blessing Reduction (3)", typeof(float)),
                    new MhwMultiStructData.Entry("Wp MR Augment Defense: Divine Blessing Reduction (4)", typeof(float)),

                    new MhwMultiStructData.Entry("Wp MR Augment Health Percent (1)", typeof(float)),
                    new MhwMultiStructData.Entry("Wp MR Augment Health Percent (2)", typeof(float)),
                    new MhwMultiStructData.Entry("Wp MR Augment Health Percent (3)", typeof(float)),
                    new MhwMultiStructData.Entry("Wp MR Augment Health Percent (4)", typeof(float)),

                    new MhwMultiStructData.Entry("WP MR Wyrmstake Blast Health Regen", typeof(float)),

                    new MhwMultiStructData.Entry("Wp MR Augment Lifesteal Cooldown", typeof(float)),
                    new MhwMultiStructData.Entry("Wp MR Augment Element (1)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp MR Augment Element (2)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp MR Augment Element (3)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp MR Augment Element (4)", typeof(byte)),

                    new MhwMultiStructData.Entry("Wp MR Augment Bowgun Element/Status: Ammo Element Bonus (1)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp MR Augment Bowgun Element/Status: Ammo Element Bonus (2)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp MR Augment Bowgun Element/Status: Ammo Element Bonus (3)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp MR Augment Bowgun Element/Status: Ammo Element Bonus (4)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp MR Augment Bowgun Element/Status: Ammo Status Bonus (1)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp MR Augment Bowgun Element/Status: Ammo Status Bonus (2)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp MR Augment Bowgun Element/Status: Ammo Status Bonus (3)", typeof(byte)),
                    new MhwMultiStructData.Entry("Wp MR Augment Bowgun Element/Status: Ammo Status Bonus (4)", typeof(byte))
                }.Out(out var hrMwAugmentEntries), 1, showVertically: true)
            });
コード例 #18
0
 public MultiStruct(string category, string className, MhwMultiStructData mhwMultiStructData)
 {
     this.category           = category;
     this.className          = className;
     this.mhwMultiStructData = mhwMultiStructData;
 }