|
You last visited: Today at 14:33
Advertisement
[HELP]Composing.
Discussion on [HELP]Composing. within the CO2 Private Server forum part of the Conquer Online 2 category.
12/07/2009, 11:15
|
#1
|
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.?
|
|
|
12/07/2009, 12:18
|
#2
|
elite*gold: 20
Join Date: Mar 2006
Posts: 6,125
Received Thanks: 2,518
|
With the code i probably could.
|
|
|
12/07/2009, 12:20
|
#3
|
elite*gold: 0
Join Date: Oct 2009
Posts: 8,765
Received Thanks: 5,291
|
Quote:
Originally Posted by Korvacs
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.
|
|
|
12/07/2009, 12:51
|
#4
|
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.
|
|
|
12/07/2009, 13:00
|
#5
|
elite*gold: 0
Join Date: Oct 2009
Posts: 8,765
Received Thanks: 5,291
|
Quote:
Originally Posted by Korvacs
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.
|
|
|
12/07/2009, 13:04
|
#6
|
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.
|
|
|
12/07/2009, 13:06
|
#7
|
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 };
|
|
|
12/07/2009, 13:10
|
#8
|
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.
|
|
|
12/07/2009, 14:02
|
#9
|
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
|
|
|
12/07/2009, 14:02
|
#10
|
elite*gold: 0
Join Date: Jun 2008
Posts: 76
Received Thanks: 3
|
thanks very match for this great post
|
|
|
|
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.
|
|