Ir para conteúdo
Faça parte da equipe! (2024) ×

Fallem

Steel Member
  • Total de Posts

    71
  • Registro em

  • Última visita

  • WCoins

    0

Posts postados por Fallem

  1. alguém esta com poblema na pista runas ? eu consigo resgristar de boa , é da para resgistrar qualquer horario , quando registrar o grupo nao e sumonado no tempo que esta na source . eu olhei na source onde tem  Partyteleport tava normal , se alguém teve esse poblema e conseguiu resolver eu ficaria muito grato se me ajudasse  . ou se alguem sabe onde  tem o erro e poder me ajuda , eu ficaria agradecido tbm .

    • Curtir 1
  2. 18 horas atrás, Fallem disse:


    Erro    MSB3191    Não é possível criar o diretório "C:\Users\vicbr\Desktop\HORUS DLL\". O acesso ao caminho 'C:\Users\vicbr\Desktop\HORUS DLL\' foi negado.    DBSRV    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppBuild.targets    526    
     

    eu edito  diretório de saida é edito tbm o SDK para   10.0 (versão mais recente instalada)

    quando tento compilar ta esse erro.

     

    observação : o clientpath  da certinho , mais tanto a DBSV é TMSV não da pra compilar  aparece sempre esse erro  , se alguém tive como me ajuda discord :    Sefhe#5121

     

     

     

    ultilizando o 2019  eu tiver varios  poblemas , não sei por que da isso 

  3. 18 horas atrás, Fallem disse:


    Erro    MSB3191    Não é possível criar o diretório "C:\Users\vicbr\Desktop\HORUS DLL\". O acesso ao caminho 'C:\Users\vicbr\Desktop\HORUS DLL\' foi negado.    DBSRV    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppBuild.targets    526    
     

    eu edito  diretório de saida é edito tbm o SDK para   10.0 (versão mais recente instalada)

    quando tento compilar ta esse erro.

     

    observação : o clientpath  da certinho , mais tanto a DBSV é TMSV não da pra compilar  aparece sempre esse erro  , se alguém tive como me ajuda discord :    Sefhe#5121

     

     

     

    tive que baixa o VS 2013 ae parou com esse erro .


  4. Erro    MSB3191    Não é possível criar o diretório "C:\Users\vicbr\Desktop\HORUS DLL\". O acesso ao caminho 'C:\Users\vicbr\Desktop\HORUS DLL\' foi negado.    DBSRV    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppBuild.targets    526    
     

    eu edito  diretório de saida é edito tbm o SDK para   10.0 (versão mais recente instalada)

    quando tento compilar ta esse erro.

     

    observação : o clientpath  da certinho , mais tanto a DBSV é TMSV não da pra compilar  aparece sempre esse erro  , se alguém tive como me ajuda discord :    Sefhe#5121

     

     

     

  5. outra dúvida .... alguém poderia me explicar como funcinar esse  código  , peguei a source XWYD para estudos . porem  quando eu registro a pista +0  entrar normal

    mais quando eu mato os lich nao refina a pista.     . se alguém souber e tiver como ajuda eu ficaria muito grato  meu discord:  SpanFrank#7748  pode  pode me chama no PV tbm . obg

     

    na source XWYD nao achei 

     

    STRUCT_ITEM NextPista;
                                            memset(&NextPista, 0, sizeof(STRUCT_ITEM));

                                            NextPista.sIndex = 5134;
                                            NextPista.stEffect[0].cEffect = 43;
                                            NextPista.stEffect[0].cValue = 1;

     

     

     

     

    #nesse código aki nao achei onde fala da refinação da pista  #  estou começando a estuda esse contéudo 

     

     

    namespace ClueLevel
    {

        Lich::Lich()
        {
        }
        Lich::~Lich()
        {
        }

        bool Lich::onGroupRegistered(const uint16_t masterId)
        {
            if (getGroupCount() > 1)
                return false;

            bool containsGroup = false;

            foreachGroup([&containsGroup, &masterId](uint16_t otherGroup) {
                if (otherGroup == masterId)
                    containsGroup = true;
            });
            if (containsGroup)
                return false;

            addGroup(masterId);
            return true;
        }

        void Lich::onClueReset()
        {
            if (getGroupCount() == 0)
                return;

            for (int client = 0; client < MAX_USER; client++)
            {
                auto user = Func::GetUserFromIndex(client);
                auto mob = GetMobFromIndex(client);

                auto play = Func::getPlayerinArea({ 3330, 1600 }, { 3451, 1661 });

                if (play.size() > 0)
                {
                    for (auto& i : play)
                        DoTeleport(i, 3284 + rand() % 2, 1685 + rand() % 2, 0);
                }
                
                auto play2 = Func::getPlayerinArea({ 3330, 1600 }, { 3451, 1661 });

                if (play2.size() > 0)
                {
                    for (auto& i : play2)
                        DoTeleport(i, 3284 + rand() % 2, 1685 + rand() % 2, 0);
                }


            }
            resetGroups();
            killLichAll(true);
        }

        void Lich::onClueStart()
        {
            if (getGroupCount() == 0)
                return;

            uint8_t idx = 0;

            foreachGroup([&idx](uint16_t masterId) {
                
                auto userData = &Global::userData[masterId];

                if (idx == 0)
                    Func::partyTeleportUxmal(masterId, 3347, 1605, 0);
                //Func::executeForParty(masterId, [&idx](uint16_t member){DoTeleport(member, 3347, 1605, 0); });
                else
                    Func::partyTeleportUxmal(masterId, 3406, 1605, 0);
                //Func::executeForParty(masterId, [&idx](uint16_t member){DoTeleport(member, 3406, 1605, 0); });

                Logs::sendLog(Global::pistalog, "[Enter] -> Grupo do %s Entrou na Pista de Lich.", GetMobFromIndex(masterId)->Mob.Name);

                idx++;
            });

            Logs::sendLog(Global::pistalog, "[GroupCounter] -> Número de Grupo Registrado na Pista de Lich %d", getGroupCount());

            spawnLichEsq();
            spawnLichDir();
        }

        bool Lich::onMobKilled(const uint16_t masterId, const uint16_t mobId)
        {
            bool containsGroup = false;

            auto mob = GetMobFromIndex(mobId);
            auto play = GetMobFromIndex(masterId);
            auto rnd = Rnd::instance().IRandomX(0, 100);

            if (!strcmp(mob->Mob.Name, "Lich Infernal"))
            {
                if (rnd >= 25 && rnd <= 32)
                {
                    Func::executeForParty(masterId, [](int32_t member) {

                        STRUCT_ITEM runas[5] = {
                            { 5110, 0, 0, 0, 0, 0, 0 },
                            { 5112, 0, 0, 0, 0, 0, 0 },
                            { 5115, 0, 0, 0, 0, 0, 0 },
                            { 5113, 0, 0, 0, 0, 0, 0 },
                            { 5111, 0, 0, 0, 0, 0, 0 },
                        };

                        if (Func::checkPlayerLiveInArea(member, { 3330, 1600 }, { 3451, 1661 }) == TRUE) PutItem(member, &runas[rand() % 5]);

                    });

                    Func::sendPistaLider(masterId, { 3330, 1600 }, { 3451, 1661 }, 1);
                    Logs::sendLog(Global::pistalog, "[Winner] -> Grupo do %s ganhou a pista de Lich lado Direito.", play->Mob.Name);

                    killLichAll(true);
                    return true;
                }
                killLichEsq(true);
                spawnLichEsq();
                return false;
            }

            if (!strcmp(mob->Mob.Name, "Lich Infernal "))
            {
                if (rnd >= 25 && rnd <= 32)
                {
                    Func::executeForParty(masterId, [](int32_t member) {

                        STRUCT_ITEM runas[5] = {
                            { 5110, 0, 0, 0, 0, 0, 0 },
                            { 5112, 0, 0, 0, 0, 0, 0 },
                            { 5115, 0, 0, 0, 0, 0, 0 },
                            { 5113, 0, 0, 0, 0, 0, 0 },
                            { 5111, 0, 0, 0, 0, 0, 0 },
                        };

                        if (Func::checkPlayerLiveInArea(member, { 3330, 1600 }, { 3451, 1661 }) == TRUE) PutItem(member, &runas[rand() % 5]);

                    });
                    Func::sendPistaLider(masterId, { 3330, 1600 }, { 3451, 1661 }, 1);

                    Logs::sendLog(Global::pistalog, "[Winner] -> Grupo do %s ganhou a pista de Lich lado Esquerdo.", play->Mob.Name);
                    killLichAll(true);
                    return true;
                }
                killLichDir(true);
                spawnLichDir();
                return false;
            }
            return false;
        }

        bool Lich::onMovimented(const uint16_t masterId, const uint16_t destX, const uint16_t destY)
        {
            bool containsGroup = false;

            return true;
        }

        void Lich::killLichEsq(bool updatePlayerSight)
        {
            auto liveMobs = Func::getMobsInAreaStr({ 3330, 1600 }, { 3390, 1656 }, { 2566 });
            for (auto& i : liveMobs)
            {
                pMob.Mob.BaseStatus.curHP = 0;
                MobKilled(i, i, 0, 0);
            }
        }

        void Lich::killLichDir(bool updatePlayerSight)
        {
            auto liveMobs = Func::getMobsInAreaStr({ 3388, 1601 }, { 3451, 1656 }, { 2566 });
            for (auto& i : liveMobs)
            {
                pMob.Mob.BaseStatus.curHP = 0;
                MobKilled(i, i, 0, 0);
            }
        }

        void Lich::killLichAll(bool updatePlayerSight)
        {
            // 3451 1645
            auto liveMobs = Func::getMobsInAreaStr({ 3330, 1600 }, { 3451, 1656 }, { 2566 });
            for (auto& i : liveMobs)
            {
                pMob.Mob.BaseStatus.curHP = 0;
                MobKilled(i, i, 0, 0);
            }
        }

        void Lich::spawnLichEsq()
        {
            static const STRUCT_POSITION spawn_pos[3] =
            {
                { 3368, 1634 }, { 3357, 1621 }, { 3355, 1637 },
            };

            auto rnd = Rnd::instance().IRandomX(0, 2);

            for (auto x = 0; x < 7; x++)// esse loop faz a quantidade de Lich
                CreateMob("Lich_Infernal", spawn_pos[rnd].X, spawn_pos[rnd].Y, "clue_of_runes/Lich", 0); // Lado Esquerdo

        }

        void Lich::spawnLichDir()
        {
            static const STRUCT_POSITION spawn_pos[3] =
            {
                { 3423, 1632 }, { 3413, 1623 }, { 3411, 1632 },

            };

            auto rnd = Rnd::instance().IRandomX(0, 2);

            for (auto x = 0; x < 7; x++)// esse loop faz a quantidade de Lich
                CreateMob("Lich_Infernal_", spawn_pos[rnd].X, spawn_pos[rnd].Y, "clue_of_runes/Lich", 0); // Lado Direito

        }

        void Lich::onSpawnBoss()
        {

        }

        void Lich::onPlayerTimer()
        {
        }

    } // end namespace ClueLevel

  6. Ola bom dia  alguém teria como me dizer como faço  para certo NPC entrar itens com add 

     

    vo pega como exemplo o NPC Treinadora ( source Xwyd)

     

    no NPC treinadora aparece o add correto que eu quero , mais quando eu compra certo item ele vem +0 sem add

     

     

     

     

    cJx4xPb.png

     

     

     

     

    #pragma region Recicladora troca 4
            if (npc->Mob.Inventory[packet->sellSlot].Index == 939) // Treinadora
            {
                if (userData->Ingame.LastClicked != packet->sellSlot)
                {
                    userData->Ingame.LastClicked = packet->sellSlot;
                    SendClientMessage(client, Language::instance().getStringFormat(ComporItem, pItem->Name));
                    return true;
                }

                if (slot == -1)
                {
                    SendClientMessage(client, "Seu inventário estar cheio.");
                    return true;
                }

                if (Andarilho == 3467)
                    Loop += 15;

                if (Andarilho_2 == 3467)
                    Loop += 15;

                int amount = 0;

                for (int i = 0; i < Loop; i++)
                {
                    if (mob->Mob.Inventory.Index == 524 && amount <= 1)
                        amount += Func::GetItemAmount(&mob->Mob.Inventory);
                }

                if (amount < 1)
                {
                    SendClientMessage(client, "Estar faltando algum item.");
                    return true;
                }

                if (amount > 1)
                    amount = 1;

                for (int i = 0; i < amount; i++)
                {
                    int slot = Func::GetFirstSlot(client, SlotType::Inventory, 524);
                    Func::AmountMinus(&mob->Mob.Inventory[slot]);
                    SendItem(client, (uint16_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]);
                }


                STRUCT_ITEM itemSend = { 939, 43 , 9 , 0 , 0 ,0 , 0 };
                PutItem(client, &itemSend);
                SendEtc(client);
                return true;

  7. de acordo com o print , eu crio um determinado npc  Sempre da erro quando eu abro TMSV . alguem sabe como corrijo esse erro ? quando eu entro no jogo ele fica revivendo morto sempre     :D

     

    ww2kRt2.png

  8. 8 horas atrás, Sc2ALLin disse:

    Já tentou configurar os diretorios?

     

    9 horas atrás, Sc2ALLin disse:

    Já tentou configurar os diretorios?

    sim  quando eu mudo o diretorio não esta salvando , sempre que eu tento editar  o diretorio ele automaticamente cria uma pasta em outro local   com esse nome ==> ServeP

     

    sempre que clico para salva  as configuraçães  diz que foi solva , mais quando eu abro o NPBR   continua da mesma edição que estava antes . 

     

    Sem-aasa.png

     

     

     

    • Curtir 3
  9. Em 31/08/2019 em 20:28, PrziNNN disse:

    Boa noite,

    De uma olhada no " Command.cpp ", fica na TMSRV, e lá tem comandos da source.

    Os cmd " nativos " (/gm +notice / (EXEMPLO) ), são os " tradicionais ", o restante condiz com a source.

     

    edit

    else if (strcmp(cmd, "+item") == 0)
            {
                STRUCT_ITEM put;
                memset(&put, 0, sizeof(STRUCT_ITEM));
                sscanf_s(msg, "%hu %d %d %d %d %d %d", &put.Index, &put.EF1, &put.EFV1, &put.EF2, &put.EFV2, &put.EF3, &put.EFV3);
                NativeFunctions::putItem(client, &put);
                Functions::SendClientChatCor(client, "Item adicionado ao inventario", 0xFF0000);
                NativeFunctions::sendClientMessage(client, "Item adicionado ao inventario");
                return true;
            }
        }
        return false;
    }

    bool Command::AdministradorComands(int client, p334h* packet)
    {
        auto mob = NativeFunctions::getMobFromIndex(client);

        p295h p;
        memset(&p, 0, sizeof(p295h));
        p.header.ClientId = client;
        p.header.PacketId = 0x295;
        p.header.Size = sizeof(p295h);
        strcpy_s(p.Name, (char*)mob->Mob.Name);
        strcpy_s(p.Comand, packet->Msg);

        memcpy_s(packet, sizeof(p295h), &p, sizeof(p295h));
        bool bol = Command::GMCommand(client, (p295h*)packet);
    //    if(!bol) NativeFunctions::processClientMessage(client, (char*)packet);
        
        return !bol;

     

    achei na Source , uma duvida  eu tentei usar o comando cmd +item é gm +item , nao conseguir adicionar nenhum item . sempre diz que o jogador nao esta conectado 

     

    alguém descobriu  a proteção que essa source tem para usar os comandos 

  10. 10 horas atrás, viniciusbb disse:

    Bom provavelmente a itemlist foi modificada e nao foi atualizada na itemicon.bin

     

     

    abra com um editor (tem nas tools fixada) o itemicon.bin, procura pelo id do tigre de fogo, vai estar um valor na frente... ai vc pega os id dos icones e troca...

    aki está assim  

     

    vou pega um item qualquer 

     ex: tigre de fogo ID 2379 no itemcoin ta assim    2379 , 450  

    no itemlist ta assim 

    2379,Tigre_de_Fogo,313.0,255.0.0.0.0,0,1500000,16384,0,0,EF_CLASS,51

     

     

    para deixa o tigre de fogo com imagem de  tigre de fogo é só editar esse código 313 por 450 ou inverter os código?

    sou novo nessa a aréa.  obg pela ajuda 

     

  11. Oi galera , boa noite eu estou com uma dúvida .  segue abaixo  a imagem que  eu estou tentando acha como mudar isso mais até hoje nao tive solução

     

     

    alguém sabe como resolver esse Problema da imagem 

     

    7WPcFZe.jpg

     

    a imagem que era para aparecer do tigre de fogo não aparece , apenas fica essa  do escudo holphon  , tem outra montaria tbm  , tigre do gelo  mostra a imagem do dragao menor em vez de ser do Tigre do gelo rs .

     

     

  12.  

    de acordo com a imagem  eu gostaria de sabe se e possivel arrumar esse visual studio na hora que termino de compilar ele fica assim 

    o certo era pra ficar de outra forma , tentei muda para Active Release mais a opção não aparece .

     

    OBS : não sou um profissional  em c++  , comecei  a estuda esse source tem pouco dias  pra me esse erro no visual studio e novo .

     

    segue abaixo como fica após ser compilado.

     

    foI0nCy.jpg

     

     

     

     

    FgUdmbn.jpg

×
×
  • Criar Novo...

Informação Importante

Nós fazemos uso de cookies no seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies , caso contrário, vamos supor que você está bem para continuar.