Jump to content
Araştır
  • Diğer seçenekler ...
Sonuçları bul ...
Sonuçları bul ...
CyberTroll

Cannot perform item upgrade

Önerilen Mesajlar

Alıntı
I am using v2083.
I'd pay you to do that for me.


I would gladly help you for free here, as It's a lot of manual work to go through these database records and compare with your client.
I think all you need is a little bit of direction how to get started. I'm learning myself the development side of KO, but since I have coding experience, I guess It's not very difficult for me to catch up. But you can still learn these things without coding skills, so don't lose hope so fast :)

İletiyi paylaş


Link to post
Sitelerde Paylaş

I would gladly help you for free here, as It's a lot of manual work to go through these database records and compare with your client.


I think all you need is a little bit of direction how to get started. I'm learning myself the development side of KO, but since I have coding experience, I guess It's not very difficult for me to catch up. But you can still learn these things without coding skills, so don't lose hope so fast :)

Thank you for being so kind.
I realize that this task is going to be a lot of record comparing and whatnot and I hate that part. That is why I offered it to you in exchange for money.

I'd have to find a guide about it somewhere.

İletiyi paylaş


Link to post
Sitelerde Paylaş

If you have any questions, feel free to post them in this topic. I can definitely help you with some SQL queries or maybe provide some information of how to solve your problem.
My way of learning instead of looking for documentation, is to compare with things that are working.
So for example, in your case you had problem with only some items that stuck at +8, then you can search for records in your database and client of items that their upgrades are already working.
That way you figuring out what to change and once you get sharp in that, the next records would be easy for you.

İletiyi paylaş


Link to post
Sitelerde Paylaş

If you have any questions, feel free to post them in this topic. I can definitely help you with some SQL queries or maybe provide some information of how to solve your problem.


My way of learning instead of looking for documentation, is to compare with things that are working.
So for example, in your case you had problem with only some items that stuck at +8, then you can search for records in your database and client of items that their upgrades are already working.
That way you figuring out what to change and once you get sharp in that, the next records would be easy for you.

Have you got a functioning Power Up Store based on PHP with its links in the CommonDataUri section of the loadArea.swf?

İletiyi paylaş


Link to post
Sitelerde Paylaş
Admin
Alıntı
I just checked and the Item Origin ID in the ext of the tbl does not match the ID in the ITEM table even though that upgrade works until +8. What should I do?
-- mesaja ek olarak --
https://imgur.com/a/DsI2hrG


Your screenshot marked column (item_ext) meaning item base id and you wrong check in ITEM table.

180410000 + 759 = 180410000
WindForce (+9)

180410000 + 899 = 180410899
WindForce (+0)

If not null item base id in item_ext column it is unique item and not shared.
If null item base id in item_ext column it is not unique item maybe upgrade, rare, magic.

İletiyi paylaş


Link to post
Sitelerde Paylaş
Alıntı
Have you got a functioning Power Up Store based on PHP with its links in the CommonDataUri section of the loadArea.swf?


Unfortunately I don't have any PUS. Sorry. Maybe someone probably shared in the forum something.
-- mesaja ek olarak --
Alıntı
I just checked and the Item Origin ID in the ext of the tbl does not match the ID in the ITEM table even though that upgrade works until +8. What should I do?
-- mesaja ek olarak --
https://imgur.com/a/DsI2hrG


Mewtwo is right :)
Example:
void CUser::ItemUpgrade(Packet & pkt, uint8_t nUpgradeType);

int nReqOriginItem = nItemID[0] % 1000;

_ITEM_UPGRADE * pUpgrade = nullptr;
foreach_stlmap (itr, g_pMain->m_ItemUpgradeArray)
{ // beginning of foreach
pUpgrade = itr->second;

if (pUpgrade->sOriginItem != nReqOriginItem)
continue;

if ((nItemID[0] / MIN_ITEM_ID) != pUpgrade->nIndex / 100000
&& pUpgrade->nIndex continue;

if( nItemID[1]== 700002000 || nItemID[2]== 700002000 || nItemID[1]== 379258000 || nItemID[2]== 379258000)
trina = true;//How many trina did I put there ?
..............


As you can see, to find the ID in ITEM table, we always need the Base ID, so we take the full Item ID:
int nReqOriginItem = nItemID[0] % 1000;

So if 180410899 % 1000 = we get 899, so we then know what to look for in the ITEM_UPGRADE and the client know which item to grab from the *_ext.tbl.

So your base ID = 180410000 and Ext ID = 899.
To make things work right, make sure your id's are properly synced.

İletiyi paylaş


Link to post
Sitelerde Paylaş

×
×
  • Yeni Oluştur...