Best Studio 1
Best Studio
D 1
delimuratt
Aliyldrim 1
Aliyldrim
Mt2Hizmet 1
Mt2Hizmet
noisiv 1
noisiv
Manwe Work 1
Manwe Work
melankolıa18 1
melankolıa18
Agora Metin2 1
Agora Metin2
Cannn6161 1
Cannn6161
kralhakan2009 1
kralhakan2009
Vahsi Uzman 1
Vahsi Uzman
Hikaye Ekle
Reklam vermek için turkmmo@gmail.com

Cevaplanmadı new pet ASLAN GROWTH

Black Jack36

Level 3
TM Üye
Üye
Katılım
30 May 2025
Konular
10
Mesajlar
180
Online süresi
6d 19h
Reaksiyon Skoru
59
Altın Konu
0
TM Yaşı
1 Yıl 4 Gün
Başarım Puanı
51
MmoLira
1,964
DevLira
12
Ticaret - 0%
0   0   0

ROHAN2 WORLD 1-120 TR TİPİ OFFICIAL YOHARA, BALATHOR VE AMON! 80. GÜNÜNDE! +10.000 ONLİNE! HİLE VE BOT %100 ENGELLİ HEMEN TIKLA!

Hey everyone! I'm having an error while trying to install the new companion system. When I log into the game and try to open the companion egg, I get an error I don't understand; it gives me game.core.


These are the functions referred to in the error that appeared.

Screenshot_2.png


C++:
#ifdef ENABLE_ASLAN_GROWTH_PET_SYSTEM
void CInputMain::ReciveRequestBornPet(LPCHARACTER ch, const char* c_pData)
{
    if (!ch->GetDesc()) { return; }
    int itemvnum = ch->GetEggVid();
    if (itemvnum == 0) { return; }

    TPacketCGBornPet* p = (TPacketCGBornPet*)c_pData;

    char szEscapeName[CHARACTER_NAME_MAX_LEN + 1];
    DBManager::instance().EscapeString(szEscapeName, sizeof(szEscapeName), p->petname, strlen(p->petname));

    if (check_name(szEscapeName) == 0) {
        ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("ASLAN_GROWTH_PET_CANNOT_USE_THIS_NAME"));
        return;
    }

    if (ch->GetGold() < GROWTH_PET_BORN_COST)
        ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("ASLAN_GROWTH_PET_COST_FOR_INCUBATION"), GROWTH_PET_BORN_COST);

    if (ch->CountSpecifyItem(itemvnum) > 0) {
        int randpet = number(0, 4);

        LPITEM PetItem = ITEM_MANAGER::instance().CreateItem(itemvnum + 300);

        if (PetItem)
        {
            int iEmptyPos = ch->GetEmptyInventory(PetItem->GetSize());

            if (iEmptyPos != -1)
            {
                ch->PointChange(POINT_GOLD, -GROWTH_PET_BORN_COST, true);
                ch->RemoveSpecifyItem(itemvnum, 1);

                int tmpslot = number(1, 3);
                int tmpskill[3] = { -1, -1, -1 };

                DWORD bornduration = 0;
                DWORD rand_hp = 0;
                DWORD rand_atk = 0;
                DWORD rand_def = 0;

                for (int i = 0; i < PET_MAX_NUM; ++i) {
                    if (itemvnum == (PetListTable[i].dwEggVnum)) {
                        bornduration = number(PetListTable[i].dwBornLifetime[0], PetListTable[i].dwBornLifetime[1]) * 60 * 60 * 24;
                        rand_hp = number(PetListTable[i].dwBornAttr[0][0], PetListTable[i].dwBornAttr[0][1]);
                        rand_atk = number(PetListTable[i].dwBornAttr[1][0], PetListTable[i].dwBornAttr[1][1]);
                        rand_def = number(PetListTable[i].dwBornAttr[2][0], PetListTable[i].dwBornAttr[2][1]);
                    }
                }

                DWORD pettype = 1;
                DWORD rand_typebonus0 = 0;
                DWORD rand_typebonus1 = 0;
                DWORD rand_typebonus2 = 0;

                //    Type Chance:                2    3    4    5    6
                const int prob_type_table[] = { 30, 50, 70,    80, 90 };
                int rand = number(1, 100);

                for (int i = 0; i < 6; ++i) {
                    if (rand > prob_type_table[i]) {
                        pettype += 1;
                    }
                }

                if (pettype == 2 || pettype == 4 || pettype == 6 || pettype == 8) {
                    rand_typebonus0 = number(PetTypeAttrTable[pettype].dwATK[0], PetTypeAttrTable[pettype].dwATK[1]);
                    rand_typebonus1 = number(PetTypeAttrTable[pettype].dwHP[0], PetTypeAttrTable[pettype].dwHP[1]);
                    rand_typebonus2 = number(PetTypeAttrTable[pettype].dwDEF[0], PetTypeAttrTable[pettype].dwDEF[1]);
                }

                int realtime_tmpdur = time(0) + bornduration;
                PetItem->SetSocket(1, realtime_tmpdur);
                PetItem->SetSocket(2, time(0));         // Borntime (UNIX)
                PetItem->SetSocket(3, bornduration);    // Bornduration (UNIX)

                PetItem->SetForceAttribute(0, 1, 0);            // Pet Level , Pet Evolution
                PetItem->SetForceAttribute(1, rand_hp, rand_atk);
                PetItem->SetForceAttribute(2, rand_def, 0);
                PetItem->SetForceAttribute(3, 0, -1);
                PetItem->SetForceAttribute(4, 0, -1);
                PetItem->SetForceAttribute(5, 0, -1);

                PetItem->StartCheckPetDeadEvent();

                PetItem->AddToCharacter(ch, TItemPos(INVENTORY, iEmptyPos));

                ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("ASLAN_GROWTH_PET_SUCCESS_CREATE_NEW_PET"));

                DBManager::instance().DirectQuery("INSERT INTO player_petsystem VALUES(%lu,'%s', 1, 0, 0, 0, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, NOW(), 0, 0, %d, %d, %d, %d)",
                    PetItem->GetID(), szEscapeName, rand_hp, rand_atk, rand_def, tmpskill[0], 0, tmpskill[1], 0, tmpskill[2], 0, realtime_tmpdur, bornduration, pettype, rand_typebonus0, rand_typebonus1, rand_typebonus2);
            }
            else
            {
                M2_DESTROY_ITEM(PetItem);
                ch->ChatPacket(CHAT_TYPE_INFO, "Not enough inventory space.");
            }
        }
        else
        {
            ch->ChatPacket(CHAT_TYPE_INFO, "[PET] #%u item not exist by that vnum.", itemvnum);
        }
    }
    else
        ch->ChatPacket(CHAT_TYPE_INFO, "[PET] Failure create new pet.");
}

void CInputMain::ReciveRenewPetName(LPCHARACTER ch, const char* c_pData)
{
    TPacketCGRenewPetName* p = (TPacketCGRenewPetName*)c_pData;

    char szEscapeName[CHARACTER_NAME_MAX_LEN + 1];
    DBManager::instance().EscapeString(szEscapeName, sizeof(szEscapeName), p->petname, strlen(p->petname));
    if (check_name(szEscapeName) == 0) {
        ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("ASLAN_BUFF_NPC_CANNOT_USE_THIS_NAME"));
        return;
    }

    LPITEM item = ch->GetInventoryItem(p->itempos1);
    LPITEM item2 = ch->GetInventoryItem(p->itempos2);

    if (item != NULL && item2 != NULL && check_name(p->petname) != 0)
    {
        if (ch->GetGrowthPetSystem()->IsSummoned() && item->GetID() == ch->GetGrowthPetSystem()->GetSummonItemID())
        {
            ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("ASLAN_GROWTH_PET_UNSUMMON_FIRST"));
            return;
        }
        else
        {
            item2->SetCount(item2->GetCount() - 1);
            DBManager::instance().DirectQuery ( "UPDATE player_petsystem SET name = '%s' WHERE id = %lu ", szEscapeName, item->GetID());
            ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("ASLAN_GROWTH_PET_RENEW_PET_NAME"), szEscapeName);
        }
    }
}
#endif

This is the system I'm trying to install.


If anyone has any idea what the reason behind this error is, please let me know. Thank you.

I use Marty 5.8


[CODE title="55401원숭이 알ITEM_PETPET_EGG1NONEITEM_STACKABLENONENONE150000REAL_TIME604800LIMIT_NONE0APPLY_NONE0APPLY_NONE0APPLY_NONE0000000000"]55401 원숭이 알 ITEM_PET PET_EGG 1 NONE ITEM_STACKABLE NONE NONE 15 0 0 0 0 REAL_TIME 604800 LIMIT_NONE 0 APPLY_NONE 0 APPLY_NONE 0 APPLY_NONE 0 0 0 0 0 0 0 0 0 0
55701 ????? ITEM_PET PET_SEAL 1 ANTI_SAFEBOX | ANTI_MYSHOP | ANTI_STACK | ANTI_GIVE | ANTI_SELL | ANTI_DROP LOG NONE NONE 0 0 0 0 0 LIMIT_NONE 0 LIMIT_NONE 0 APPLY_NONE 0 APPLY_NONE 0 APPLY_NONE 0 0 34041 0 0 0 0 0 0 0
[/CODE]

This also contains the item proto data for the egg and the companion seal.
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst