Register for your free account! | Forgot your password?

You last visited: Today at 14:33

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



[HELP]Composing.

Discussion on [HELP]Composing. within the CO2 Private Server forum part of the Conquer Online 2 category.

Reply
 
Old   #1
 
Arcо's Avatar
 
elite*gold: 0
Join Date: Oct 2009
Posts: 8,765
Received Thanks: 5,291
[HELP]Composing.

Well as everybody had this problem when first using the 5165 source, players cannot make their gears any farther than +9.
I went through and tried so many things possible and came to 3 different outcomes.
1.The item would disappear.
I tweaked around with it then after that this result:
2.The item would not plus up, but the composition points would go retarded i.e. 26464/2700.
Tweaked around with it one more time then this:
3. Item would go to +12 but once you equipped it, it would go back to +9.

I tried so many things possible and now my last resort is to ask E*PvPers for help.
Anybody know a way to fix this.?
Arcо is offline  
Thanks
1 User
Old 12/07/2009, 12:18   #2


 
Korvacs's Avatar
 
elite*gold: 20
Join Date: Mar 2006
Posts: 6,125
Received Thanks: 2,518
With the code i probably could.
Korvacs is offline  
Thanks
1 User
Old 12/07/2009, 12:20   #3
 
Arcо's Avatar
 
elite*gold: 0
Join Date: Oct 2009
Posts: 8,765
Received Thanks: 5,291
Quote:
Originally Posted by Korvacs View Post
With the code i probably could.

Well here's the entire Compose.cs.
Code:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using NewestCOServer.Game;

namespace NewestCOServer.PacketHandling
{
    public class Compose
    {
        public static void Handle(Main.GameClient GC, byte[] Data)
        {
            uint MainUID = BitConverter.ToUInt32(Data, 8);
            uint MinorUID1 = BitConverter.ToUInt32(Data, 12);

            Item MainI = GC.MyChar.FindInvItem(MainUID);
            Item MinorI = GC.MyChar.FindInvItem(MinorUID1);

            if (MainI.ID != 0 && MinorI.ID != 0 && MainI.Plus <= 12)
            {
                uint Progress = MainI.Progress;
                Progress += Database.StonePts[MinorI.Plus];

                GC.MyChar.RemoveItem(MainI);

                while (Progress >= Database.ComposePts[MainI.Plus] && MainI.Plus <= 12)
                {
                    Progress -= Database.ComposePts[MainI.Plus];
                    MainI.Plus++;
                }

                if (MainI.Plus == 12)
                    Progress = 0;
                MainI.Progress = (ushort)Progress;
                GC.MyChar.AddItem(MainI);
                GC.MyChar.RemoveItem(MinorI);
            }
        }
    
        static bool OfSameType(uint ID1, uint ID2)
        {
            ushort Part1 = (ushort)ItemIDManipulation.Part(ID1, 0, 3);
            ushort Part2 = (ushort)ItemIDManipulation.Part(ID2, 0, 3);

            if (ItemIDManipulation.Digit(ID1, 1) == ItemIDManipulation.Digit(ID2, 1) && (ItemIDManipulation.Digit(ID1, 1) == 4 || ItemIDManipulation.Digit(ID1, 1) == 5))
                return true;
            else if (Part1 == Part2)
                return true;
            else if (ItemIDManipulation.Digit(ID1, 5) == ItemIDManipulation.Digit(ID1, 3) && Part1 == 112)
                return true;
            else if (ItemIDManipulation.Digit(ID2, 5) == ItemIDManipulation.Digit(ID1, 3) && Part2 == 112)
                return true;
            else if (Part1 >= 135 && Part1 <= 139 && Part2 == Part1 - 5)
                return true;
            else if (Part2 >= 135 && Part2 <= 139 && Part1 == Part2 - 5)
                return true;
            return false;
        }
    }
}
Thanks for the help.
Arcо is offline  
Thanks
1 User
Old 12/07/2009, 12:51   #4


 
Korvacs's Avatar
 
elite*gold: 20
Join Date: Mar 2006
Posts: 6,125
Received Thanks: 2,518
Code:
            if (MainI.ID != 0 && MinorI.ID != 0 && MainI.Plus <= 12)
            {
                uint Progress = MainI.Progress;
                Progress += Database.StonePts[MinorI.Plus];

                GC.MyChar.RemoveItem(MainI);

                while (Progress >= Database.ComposePts[MainI.Plus] && MainI.Plus <= 12)
                {
                    MainI.Plus++;
                    if (Progress == Database.ComposePts[MainI.Plus])
                       break;
                }

                if (MainI.Plus == 12)
                    Progress = 0;
                MainI.Progress = (ushort)Progress;
                GC.MyChar.AddItem(MainI);
                GC.MyChar.RemoveItem(MinorI);
            }
That will work better, but for the +9 becomming +12, it appears to be something to do with either the AddItem command, or the packet itself, which is abit weird, i find it hard to beleive that something so basic would be so messed up.

Let us know if that works abit better.
Korvacs is offline  
Thanks
1 User
Old 12/07/2009, 13:00   #5
 
Arcо's Avatar
 
elite*gold: 0
Join Date: Oct 2009
Posts: 8,765
Received Thanks: 5,291
Quote:
Originally Posted by Korvacs View Post
Code:
            if (MainI.ID != 0 && MinorI.ID != 0 && MainI.Plus <= 12)
            {
                uint Progress = MainI.Progress;
                Progress += Database.StonePts[MinorI.Plus];

                GC.MyChar.RemoveItem(MainI);

                while (Progress >= Database.ComposePts[MainI.Plus] && MainI.Plus <= 12)
                {
                    MainI.Plus++;
                    if (Progress == Database.ComposePts[MainI.Plus])
                       break;
                }

                if (MainI.Plus == 12)
                    Progress = 0;
                MainI.Progress = (ushort)Progress;
                GC.MyChar.AddItem(MainI);
                GC.MyChar.RemoveItem(MinorI);
            }
That will work better, but for the +9 becomming +12, it appears to be something to do with either the AddItem command, or the packet itself, which is abit weird, i find it hard to beleive that something so basic would be so messed up.

Let us know if that works abit better.

Nope didn't work the item just disappeared.
Arcо is offline  
Thanks
1 User
Old 12/07/2009, 13:04   #6


 
Korvacs's Avatar
 
elite*gold: 20
Join Date: Mar 2006
Posts: 6,125
Received Thanks: 2,518
Show me the AddItem function,

This is abit frustrating really, theres a really easy way to simply update an item, but i dont think this server has the functionality to do it atm.

Code:
            Server.packetServer.SendData(Packets.ItemInfomation(_Item, ItemCreationType.Update, Data.ConnectionID));
Thats how i would do it in mine for example.
Korvacs is offline  
Thanks
1 User
Old 12/07/2009, 13:06   #7
 
Arcо's Avatar
 
elite*gold: 0
Join Date: Oct 2009
Posts: 8,765
Received Thanks: 5,291
Hmm someone jsut told me over msn that these lines might have something to do with it.
Code:
        public static ushort[] StonePts = new ushort[9] { 0, 10, 40, 120, 360, 1080, 3240, 9720, 29160 };
        public static ushort[] ComposePts = new ushort[12] { 20, 20, 80, 240, 720, 2160, 6480, 19440, 58320, 2700, 5500, 9000 };
Arcо is offline  
Thanks
1 User
Old 12/07/2009, 13:10   #8


 
Korvacs's Avatar
 
elite*gold: 20
Join Date: Mar 2006
Posts: 6,125
Received Thanks: 2,518
Ignore that, the item shouldnt disappear, lets fix that first, then sort out the composition.
Korvacs is offline  
Thanks
1 User
Old 12/07/2009, 14:02   #9
 
osamaazez's Avatar
 
elite*gold: 0
Join Date: Jun 2008
Posts: 76
Received Thanks: 3
idk how to code it thanks any way but i need Compose.cs file and NPCs.txt and NPCDialog.cs
osamaazez is offline  
Old 12/07/2009, 14:02   #10
 
osamaazez's Avatar
 
elite*gold: 0
Join Date: Jun 2008
Posts: 76
Received Thanks: 3
thanks very match for this great post
osamaazez is offline  
Reply


Similar Threads Similar Threads
ID Composing
05/23/2013 - Eudemons Online - 13 Replies
wat is it all about??? how does it works???
About Composing
10/03/2009 - CO2 Guides & Templates - 35 Replies
Okay here we go :) As lot of ppl know u can compose items to gain an extra bonus First Tip If u wanna compose one hand weapons u can do it with all kinds of Onehanders exsample - u got super 2 sock club and u want 2 make it +1 so u got 2 buy 2 +1 Onhanders it dosent have to be the same type of weapon instead or 2 +1 clubs there can be +1 hammer and +1 dagger or any weapon that is an onehander. Other case is when u want to compose backswords u cant compose them with others onehanders...
[Help] Composing
06/29/2008 - EO PServer Hosting - 2 Replies
How can i make it so that every time i reborn one of my pets its star rank will go up loads, by about 100+ every time?
Gem Composing. . . ???
12/12/2006 - Conquer Online 2 - 10 Replies
i guss composing gems is very good idea but its semes very hard to get super gems from composing ,,,,and its alot of cash more than we needs to buy super gems coz its costs 10,000 silvers to compose 15 normal gems to get refind one and 15 refind with 800.000 silver to get super gems......its look more harder for me...but i want know its only normal gems drops from killing monsters...... and thats composing made to those gems..... and can i upgrarte my gems on my sockets ....? ...
Gem Composing
12/05/2006 - Conquer Online 2 - 18 Replies
I think that this has to be one of the stupider idea of TQ because it is so unprofitable to compose gems simply because normal gems can be use for the blue mouse quest which can earn you way more money. Also I dont think people will be using this method to get super gems anytime soon because it takes 15 refined gems to get one super gem and that is totally stupid because who would waste 15 refined dragon which is worth 1db each and 800k to get a super dragon which is worth only 10-13 dbs most...



All times are GMT +2. The time now is 14:33.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.