Hi !
I have some questions

I added Alchemy BOD and edited "namespace Server.Engines.BulkOrders" Reward.cs for Alchemy BOD system.

but I could not understand below section.
private static readonly int[][][] m_GoldTable = new int[][][]

I think ,This part would be have serial arrangement in which things follow in logical order or a recurrent pattern.

What is this part referring to?
at public class SmallBulkEntry, Will it be carried out in order which is written above?
Refer to SmallBulkEntry.cs public static SmallBulkEntry[] BlacksmithWeapons.
It would not be carried out in order..

Thanks raymax
 

Attachments

  • BulkMaterialType edited raymax.cs
    2.7 KB · Views: 4
  • Rewards without Alchemy rewards edited raymax.cs
    224.6 KB · Views: 7
  • SmallBulkEntry edited raymax.cs
    8.7 KB · Views: 6
  • SmallAlchemyBOD edited raymax.cs
    9.2 KB · Views: 6
Last edited:
The BOD rewards works on a point system. X amount of points are needed to get X reward. The points are based on if the BOD is a small or large, if exceptional or not, the amount required to fill the BOD, type of item & Material required. A 10 piece small Blacksmith BOD for non exceptional Daggers done in Dull Copper would have a lower reward than a 10 piece small BOD for Exceptional Daggers done in Dull Copper. It then adds those points to determine the reward. No logical order or pattern, just a points system to determine rewards.

Code:
        public override int ComputePoints(int quantity, bool exceptional, BulkMaterialType material, int itemCount, Type type)
        {
            int points = 0;

            if (quantity == 10)
                points += 10;
            else if (quantity == 15)
                points += 25;
            else if (quantity == 20)
                points += 50;

            if (exceptional)
                points += 200;

            if (itemCount > 1)
                points += this.LookupTypePoints(this.m_Types, type);

            if (material >= BulkMaterialType.DullCopper && material <= BulkMaterialType.Valorite)
                points += 200 + (50 * (material - BulkMaterialType.DullCopper));

            return points;
        }
 
Last edited:
Thanks hammerhand.

I understood it.

In SmithRewardCalculator..

private static readonly int[][][] m_GoldTable = new int[][][]
{
new int[][] // 1-part (regular)
{
new int[] { 1500, 3000, 6000, 12000, 24000, 48000, 96000, 192000, 384000 },
..................
},
new int[][] // 1-part (exceptional)
{
.................
},
new int[][] // Ringmail (regular)
{
..............
},
new int[][] // Ringmail (exceptional)
{

what is define the those section.(1-part (regular),1-part (exceptional),Ringmail (regular),
Ringmail (exceptional))?

thanks
 
The 1 part reg & exceptional are small BODs (I think) in 10, 15 & 20 count. This shows gold levels for each one. The Armors & weapons that follow them are all large BODs. You can get 200k gold for a 20 piece exceptional large Platemail BOD in Valorite, but only 100k gold for a 10 piece of the same. That's what those numbers are showing.
 
OHH,,,hammerhand...
U colud not understand my questions ...

Colud you ansmer the this values ? private static readonly int[][][]
1st [] =_____.
2nd [] =_____.
3rd [] =_____.
 
It had be solved myself...

1st [] =int typeIndex.
2nd [] =int quanIndex.
3rd [] =int mtrlIndex.
 
It wolud be refered to "public override int ComputeGold(int quantity, bool exceptional, BulkMaterialType material, int itemCount, Type type)"
 
Back