Jump to content
  • 0

sobre respaw


Elias Garcez

Question

queria saber como eu faço para ex: tem um teleport mais quando cara teleporta ele pode ir pra uma loc aleatoria , e porque tem um respaw pvp so que nego ficar nascendo no mesmo lugar os caras vao segura respaw , alguemn pode me ajudar me explicando como fazer isso?

Link to comment
Share on other sites

16 answers to this question

Recommended Posts

  • 0
59 minutos atrás, elias garcez disse:

queria saber como eu faço para ex: tem um teleport mais quando cara teleporta ele pode ir pra uma loc aleatoria , e porque tem um respaw pvp so que nego ficar nascendo no mesmo lugar os caras vao segura respaw , alguemn pode me ajudar me explicando como fazer isso?

É por isso que normalmente esses servidores por ai tem 2 opções de teleporta para determinada zona, para evitar que o respawn seja afetado por essas questões

O que você está pedindo é que magicamente o servidor teleporte o player aleatóriamente para varios lugares, só que, quando é criado um teleporte, ele é atrelado a uma coordenada X que é criada no banco de dados, porém um servidor de lineage ainda não tem inteligencia artificial para resolver essas coisas não amigo..

Possível? Sim, é possível desenvolver isso, porém tem que ser no java da source do projeto, porém, o que você está pedindo é algo um tanto trabalhoso demais para uma coisa de pouca importancia em um servidor, por isso não se vê isso por ai e o que todos fazem é apenas criar 2 ou mais opções de Spawn nos locais e o problema se resolve facilmente..

Ou, você pode criar uma zona de paz ao redor do local que o player spawna ao chegar, tem vários tutoriais no fórum sobre editar e criar zonas.

Ou, você pode verificar se o seu projeto tem, ou adicionar a função para que quando o Player teleportar, ele com proteção contra ataques e tals por X segundos.

neTiVFC.gif

9KuKwr5.gif

Link to comment
Share on other sites



  • 0
5 minutos atrás, AllInOne disse:

É por isso que normalmente esses servidores por ai tem 2 opções de teleporta para determinada zona, para evitar que o respawn seja afetado por essas questões

O que você está pedindo é que magicamente o servidor teleporte o player aleatóriamente para varios lugares, só que, quando é criado um teleporte, ele é atrelado a uma coordenada X que é criada no banco de dados, porém um servidor de lineage ainda não tem inteligencia artificial para resolver essas coisas não amigo..

Possível? Sim, é possível desenvolver isso, porém tem que ser no java da source do projeto, porém, o que você está pedindo é algo um tanto trabalhoso demais para uma coisa de pouca importancia em um servidor, por isso não se vê isso por ai e o que todos fazem é apenas criar 2 ou mais opções de Spawn nos locais e o problema se resolve facilmente..

Ou, você pode criar uma zona de paz ao redor do local que o player spawna ao chegar, tem vários tutoriais no fórum sobre editar e criar zonas.

Ou, você pode verificar se o seu projeto tem, ou adicionar a função para que quando o Player teleportar, ele com proteção contra ataques e tals por X segundos.

entendi amigo , obrigado por me responder , vou criar outros respaw entao, aproveitando queria tbm tirar duvida se tem como bloquiar entrar em pt na aria pvp pode me dizer e como?

Link to comment
Share on other sites

  • 0
2 minutos atrás, elias garcez disse:

entendi amigo , obrigado por me responder , vou criar outros respaw entao, aproveitando queria tbm tirar duvida se tem como bloquiar entrar em pt na aria pvp pode me dizer e como?

Até tem, mexendo na source, mas digamos que você faça isso e uma pt com 4 players tentem ir e descubram que é proibidocriar pt em zona pvp no seu servidor, tipo, automaticamente seu servidor perde 4 players na hora né..

neTiVFC.gif

9KuKwr5.gif

Link to comment
Share on other sites

  • 0
3 minutos atrás, AllInOne disse:

Até tem, mexendo na source, mas digamos que você faça isso e uma pt com 4 players tentem ir e descubram que é proibidocriar pt em zona pvp no seu servidor, tipo, automaticamente seu servidor perde 4 players na hora né..

nao amigo e que a aria de farm entende so que e pvp, e nao quero que possam dar pt entende , porque fiz um sistema de farm que se for em pt ajuda somente os clans

Link to comment
Share on other sites

  • 0
7 minutos atrás, elias garcez disse:

nao amigo e que a aria de farm entende so que e pvp, e nao quero que possam dar pt entende , porque fiz um sistema de farm que se for em pt ajuda somente os clans

Se o Farm em PT só tem benefício para clan, então qual a diferença de poder criar pt ou não na área de farm pvp..

neTiVFC.gif

9KuKwr5.gif

Link to comment
Share on other sites

  • 0
7 minutos atrás, AllInOne disse:

Se o Farm em PT só tem benefício para clan, então qual a diferença de poder criar pt ou não na área de farm pvp..

poxa mais e a forma que eu to fazendo mano, eu so quero saber como faz pra bloquiar party na aria flag, se nao puder falar ta ok...

Link to comment
Share on other sites

  • 0
1 minuto atrás, elias garcez disse:

poxa mais e a forma que eu to fazendo mano, eu so quero saber como faz pra bloquiar party na aria flag, se nao puder falar ta ok...

Você vai precisar realizar essa edição direto na Source do projeto que você está usando, criando as condições e variáveis para negar a entrada de players em Party na zona PvP teleportando eles de volta para a cidade caso entrem com Party formada, bloquear a ação de criar Party dentro da zona, e também condicionar as edições para afetarem todo o servidor ou apenas uma única zona específica.

neTiVFC.gif

9KuKwr5.gif

Link to comment
Share on other sites

  • 0
1 hora atrás, elias garcez disse:

poxa mais e a forma que eu to fazendo mano, eu so quero saber como faz pra bloquiar party na aria flag, se nao puder falar ta ok...

poste o seu L2FlagZone para que eu edite para desfazer party quando entrar na zona e nao permiti invite de party dentro da zone

Link to comment
Share on other sites

  • 0
Em 13/01/2023 at 17:42, S.Christian disse:

poste o seu L2FlagZone para que eu edite para desfazer party quando entrar na zona e nao permiti invite de party dentro da zone

 

/*
 * This program is free software: you can redistribute it and/or modify it under
 * the terms of the GNU General Public License as published by the Free Software
 * Foundation, either version 3 of the License, or (at your option) any later
 * version.
 *
 * This program is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
 * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
 * details.
 *
 * You should have received a copy of the GNU General Public License along with
 * this program. If not, see <http://www.gnu.org/licenses/>.
 */
package com.l2jmega.gameserver.model.zone.type;

import com.l2jmega.Config;
import com.l2jmega.gameserver.instancemanager.PartyZoneManager;
import com.l2jmega.gameserver.model.World;
import com.l2jmega.gameserver.model.actor.Creature;
import com.l2jmega.gameserver.model.actor.instance.Player;
import com.l2jmega.gameserver.model.zone.L2SpawnZone;
import com.l2jmega.gameserver.model.zone.ZoneId;
import com.l2jmega.gameserver.network.serverpackets.ExShowScreenMessage;
import com.l2jmega.gameserver.taskmanager.PvpFlagTaskManager;

public class L2FlagZone extends L2SpawnZone
{
    private int _maxClanMembers;
    private int _maxAllyMembers;
    private int _minPartyMembers;
    private boolean _checkParty;
    private boolean _checkClan;
    private boolean _checkAlly;
    
    public L2FlagZone(int id)
    {
        super(id);
        
        _maxClanMembers = 0;
        _maxAllyMembers = 0;
        _minPartyMembers = 0;
        _checkParty = false;
        _checkClan = false;
        _checkAlly = false;
    }

    @Override
    public void setParameter(String name, String value)
    {
        if (name.equals("MaxClanMembers"))
            _maxClanMembers = Integer.parseInt(value);
        else if (name.equals("MaxAllyMembers"))
            _maxAllyMembers = Integer.parseInt(value);
        else if (name.equals("MinPartyMembers"))
            _minPartyMembers = Integer.parseInt(value);
        else if (name.equals("checkParty"))
            _checkParty = Boolean.parseBoolean(value);
        else if (name.equals("checkClan"))
            _checkClan = Boolean.parseBoolean(value);
        else if (name.equals("checkAlly"))
            _checkAlly = Boolean.parseBoolean(value);
        else
            super.setParameter(name, value);
    }
    
    @Override
    protected void onEnter(Creature character)
    {
        character.setInsideZone(ZoneId.FLAG, true);
        
        if (character instanceof Player)
        {
            final Player activeChar = (Player) character;
            
            activeChar.sendMessage("You have entered a Party Zone!");
    
            if (Config.ENABLE_FLAGZONE)
            {
                
            if (!activeChar.isInObserverMode())
                {
                    if (activeChar.getPvpFlag() > 0)
                        PvpFlagTaskManager.getInstance().remove(activeChar);
                    
                    activeChar.updatePvPFlag(1);
                    
                    if (!activeChar.isGM())
                        activeChar.getAppearance().setVisible();
                    
                }
            }           
            
            if (_checkParty)
            {
                if (!activeChar.isInParty() || activeChar.getParty().getMemberCount() < _minPartyMembers)
                {
                    activeChar.sendPacket(new ExShowScreenMessage("Your party does not have " + _minPartyMembers + " members to enter on this zone!", 6 * 1000));
                    PartyZoneManager.getInstance().RandomTeleport(activeChar);
                }
            }
            
            if(!activeChar.isPhantom())
                PartyZoneManager.getInstance().checkPlayersArea_ip(activeChar, Integer.valueOf(2), World.getInstance().getPlayers(), Boolean.valueOf(true)); 
            
            if (Config.FLAGZONE_HWID_PROTECT && !activeChar.isPhantom())
                MaxPlayersOnArea(activeChar);

            if (_checkClan)
                MaxClanMembersOnArea(activeChar);

            if (_checkAlly)
                MaxAllyMembersOnArea(activeChar);
        }
    }
    
    public boolean MaxPlayersOnArea(Player activeChar)
    {
        return PartyZoneManager.getInstance().checkPlayersArea(activeChar, Config.MAX_BOX_IN_FLAGZONE, true);
    }
    
    public boolean MaxClanMembersOnArea(Player activeChar)
    {
        return PartyZoneManager.getInstance().checkClanArea(activeChar, _maxClanMembers, true);
    }
    
    public boolean MaxAllyMembersOnArea(Player activeChar)
    {
        return PartyZoneManager.getInstance().checkAllyArea(activeChar, _maxAllyMembers, World.getInstance().getPlayers(), true);
    }
    
    @Override
    protected void onExit(Creature character)
    {
        character.setInsideZone(ZoneId.FLAG, false);
        
        if (character instanceof Player)
        {
            final Player activeChar = (Player) character;
            
            if(Config.ENABLE_FLAGZONE)
            {
                PvpFlagTaskManager.getInstance().add(activeChar, Config.PVP_NORMAL_TIME);
                activeChar.sendMessage("You have left a Party Zone!");
            }
        }
    }

    @Override
    public void onDieInside(Creature character)
    {
    }

    @Override
    public void onReviveInside(Creature character)
    {
    }
}

 

mais no caso isso nao modifica na pt farm nao né? porque la e flag tambem

Link to comment
Share on other sites

  • 0
 

Sua Revisão e a L2jMegaPack. Procure nas config por: CheckPartyInvite coloque True e tambem tem a opção DisablePartyFlagZone coloque true tambem.

" Os homens tendem a acreditar sobretudo naquilo que menos compreendem. "

Link to comment
Share on other sites

  • 0
3 minutos atrás, -= JRGames =- disse:
 

Sua Revisão e a L2jMegaPack. Procure nas config por: CheckPartyInvite coloque True e tambem tem a opção DisablePartyFlagZone coloque true tambem.

mais na flag zone tem a party farm será que eu fazendo isso nao vai poder dar pt no evento party farm tbm?

Link to comment
Share on other sites

  • 0
1 minuto atrás, elias garcez disse:

mais na flag zone tem a party farm será que eu fazendo isso nao vai poder dar pt no evento party farm tbm?

creio que não melhor criar uma variável só para a parte mesmo.

" Os homens tendem a acreditar sobretudo naquilo que menos compreendem. "

Link to comment
Share on other sites

  • 0
1 hora atrás, elias garcez disse:

pior que nao tem amigo, teria como adicionar sem dar problemas?image.png.931ccb630b59432c0851ab7abf567af2.png

 

Você pode criar multiplas los aleatorias facilmente defina no seu Gatekeeper para usar as locs da sua propria zona, caso não saiba fazer eu crio para você só me enviar seu anydesk faço isso em 2 minutos mais preciso que você poste aqui o resultado para todos.

Assinatura com premissa de conteúdo proibido - removido.

Link to comment
Share on other sites

  • 0
11 minutos atrás, elias garcez disse:

sim amigo eu posto com todo prazer.

envia seu id do anydesk no meu PV que crio pra você

Assinatura com premissa de conteúdo proibido - removido.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Join now

    Be part of the largest and oldest communities about Lineage2 in Latin America.






  • Patrocinadores

  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • eu tentei colocar so a system no cliente limpo ainda continua teria ideia de quais arquivos?
    • O que você precisa fazer parece ser simples. Alterar a tabela onde a query é feita e remover a restrição de exibição de players online?
    • Uma ideia interessante, hoje estamos na era do "LUCERA", pra quem procura um servidor estável, apesar de um pouco inacessível, seria interessante adequar. Uma vez comentei com você sobre a entrega automática que o lucera permite através do "items_delayed", ele permite que a troca do painel chegue direto no personagem online em tempo real, e o painel não aceita comprar nada com ele logado, seria interessante para lucera ter essa alteração pra invez de inserir dentro do "items" inserir dentro do "items_delayed" e tirar essa restrição de precisar deslogar pra comprar do "prime shop". Se tiver alguma dúvida me procura, posso ajudar a adaptar e deixar funcional e fazer os testes. Eu fiz essa adaptação para o meu painel, mas ainda tem alguns bugs, você sabe o código fonte de cabo a rabo, faria em 20 minutos o que estou levando semanas kkkk
    • por favor alguem me ajuda a tela de login e cria personagem fica todos invisivel https://ibb.co/JR4RnPB https://ibb.co/qW7tM50
    • Para próximas atualizações Criar um forum interno Criar sistema de indicações Criar sistema multilinguagem Criar cadastro de clans que irao jogar no servidor Criar filtro de organização para loja de itens e para loja de personagens Adicionar novas opções de doações Criar o sistema de VIP       Previsões @Ivan Pires?  
    • Dá para acompanhar as alterações em algum sistema de controle de versões? como no github ou algo assim? Assim ficaria mais fácil fazer as modificações pessoais no projeto mas sem perder as correções que vão sendo feitas com o tempo. Ou talvez um arquivo com um diff entre versões. Também seria muito útil. . diff --git a/engine/classes/LoginServer.php b/engine/classes/LoginServer.php index 0c369aa..3195a82 100644 --- a/engine/classes/LoginServer.php +++ b/engine/classes/LoginServer.php @@ -244,7 +244,7 @@ namespace ICPNetworks { if($this->encrypt == 5){ $results = $this->execute($this->QUERY_LOGIN_2,[$username]); if(count($results) == 1){ - if(!password_verify($password,$results["password"])){ + if(!password_verify($password,$results[0]["password"])){ return "pass_login_error"; } }else{ @@ -382,7 +382,7 @@ namespace ICPNetworks { if($this->encrypt == 5){ $results = $this->execute($this->QUERY_LOGIN_2,[$username]); if(count($results) == 1){ - if(!password_verify($senha1,$results["password"])){ + if(!password_verify($senha1,$results[0]["password"])){ return $this->resposta("Invalid password.<br>Try again.","Oooh no!","error"); } }else{  
    • Conteúdo dos vídeos estão offline.  
    • Bom dia,  Onde eu checo os LOG para encontrar essa parte  "  Se você precisa preencher um determinado local com vários npcs, por exemplo uma zona de drop ou farm qualquer pode fazer o comando de spawn + quantidade + id do NPC, ficando algo semelhante a isso: //spawn_loc 300 40010. Quando você der esse comando o servidor ira retornar com um log semelhante a este: <spawn name="[custom_spawn]"> <mesh> <vertex x="82306" y="149106" minz="-3472" maxz="-3344" /> <vertex x="82606" y="149106" minz="-3472" maxz="-3344" /> <vertex x="82606" y="149406" minz="-3472" maxz="-3344" /> <vertex x="82306" y="149406" minz="-3472" maxz="-3344" /> </mesh> <npc id="40010" count="1" respawn="60" /> <npc id="40011" count="1" respawn="60" /> <npc id="40012" count="1" respawn="60" /> </spawn> "   Muito obrigado!  
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.