Announcements
-
Recently Browsing
No registered users viewing this page.
-
Similar Content
-
By KhayrusS
Existem diferentes formas de contribuição em projetos open source, sendo uma das principais a contribuição de implementações através do Pull Request. Nesse guia, vou abordar como criar um Pull Request no projeto L2jOrg, mas que poderá ser usado em qualquer projeto que utilize git.
Eu trabalho com git há alguns anos, e durante esse tempo experimentei diversas formas de utilização. Um dos melhores fluxos de trabalho pra utilizar git, na minha opinião, é o modelo "short lived branches" ou "topic branches", nesse link você pode encontrar mais detalhes.
Requisitos para seguir o guia:
Git; IDE (eu irei utilizar o IntelliJ IDEA, mas pode ser usada a que preferi); Uma conta no github.
Obs.: a IDE é opcional, você pode utilizar apenas o cliente git para realizar os passos desse guia, mas por simplicidade será demonstrado apenas com o uso da IDE.
1º Passo - Criando um fork do projeto no github
O projeto L2jOrg utiliza submódulos, é necessário realizar o fork de todos os repositórios que pretende fazer contribuições.
A criação de um fork é bastante simples, apenas é necessário estar logado no github, e utilizar o botão fork na página dos repositórios:
Vamos criar o fork para o primeiro repositório: https://github.com/L2jOrg/L2JOrg
Clique no botão fork no canto superior direito
Caso participe de alguma organização no github, aparecerá uma tela para escolher onde será criado o fork
Agora faça o mesmo processo para o repositório do Datapack: https://github.com/L2jOrg/Datapack.
Após feito o fork dos dois repositórios, você terá uma cópia dos repositórios.
2º Passo - Clonando seu repositório
Antes de seguir esse passo, é necessário ter o git instalado.
Após a criação do fork, iremos fazer o clone dos seus repositório. Esse clone nada mais é do que fazer uma cópia do seu repositório remoto, que está no github, para sua máquina. Assim, podemos modificar os arquivos com mais facilidade.
Para realizar o clone, precisamos saber qual o endereço dos nossos repositórios. Podemos encontrar essa informação no github:
Aqui teremos duas opções de url. Utilizando ssh ou https. Eu particulamente utilizo a com ssh por achar mais simples, já que utilizando https é necessário fornecer o usuário e senha do github para se comunicar com o repositório remoto. Caso queira utilizar ssh, mas não sabe como configurar, segue a documentação.
No botão "code" do github é onde podemos encontrar as urls necessárias para fazer o clone do repositório. Copie a url que iremos utilizar na IDE, no nosso caso no IntelliJ IDEA.
A primeira vez que o IntelliJ é aberto, é apresentada uma tela de "Bem Vindo". Apartir dessa tela já podemos realizar o clone do repositório, utilizando o botão "Get from VCS".
Se no seu caso, ele já abriu algum projeto que você não queira fechar, é só utlizar o menu "File" -> "New" -> "Project from Version Control"
Irá aparecer uma janela para colocar a url do projeto, após adicionar a url e escolher onde seu projeto vai ficar é só clicar em "clone".
Ao finalizar o clone, o IntelliJ abre a janela com o arquivos do projeto:
Algo que vale à pena mencionar é que mesmo sem ter feito o clone do Datapack, o Intellij realizou o clone automaticamente. Isso ocorre devido ao projeto utlizar submodules. Para mais detalhes veja esse artigo!
Vemos verificar o conteúdo dos repositório, para isso clique no nome da branch "development" no canto inferior direito. Aqui é mostrado as branches existentes no repositório.
Nesse caso, o Datapack está em um estado que chamamos de "detached head". Rudemente falando, esse estado indica que fizemos o checkout de um commit específico ao ínves de uma branch. Aqui você encontra mais detalhes!
Vamos "corrigir" esse estado fazendo o checkout da branch development. Clique em origin/development e checkout:
3º Passo - Configurando Remotes
Agora vamos para uma das mais importantes partes desse guia. Uma das maiores dificuldades que algumas pessoas têm ao se trabalhar com o modelo colaborativo do git, é manter seu repositório atualizado com o repositório oficial.
Quando realizamos um clone de um repositório fork, para o git aquele repositório é o principal. Mas no modelo colaborativo, é necessário configurar o git para reconhecer o repositório oficial também. Isso nos ajudará a manter o repositório atualizado com o oficial.
Para isso vamos configurar "os Remotes" do git.
Vá no menu "Git" -> "Manage Remotes"
Irá aparecer uma janela para configurar os remotes. Note que já temos dois remotes configurados, um para o Core e outro para o Datapack. O remote do core está correto, mas o Datapack está configurado para o repositório oficial. Isso ocorre devido ao arquivo de configuração responsável pelo submodule.
Vamos corrigir o Datapack e adicionar mais dois remotes. Para isso vamos pegar a url dos repositórios oficiais. Após a configuração os remotes ficaram assim:
Após a configuração, vamos atualizar o repositório com o conteúdo dos novos remotes, para isso vá no menu "Git" -> Fetch.
Vamos acessar a tab git do IntelliJ, por padrão fica no canto inferior esquerdo, para vermos com mais detalhes o conteúdo do repositório. Aqui podemos ver os conteúdo tanto do repositório fork quanto do oficial.
4º Passo - Realizando mudanças
Vamos realizar um mudança simples, apenas para demonstrar como o workflow funciona.
A primeira coisa a fazer antes de realizar a mudança é criar uma nova branch.
Clique na branch development, canto inferior direito, depois "New Branch".
Der um nome sugestivo para a branch, de forma a dar uma ideia o que aquela branch vai corrigir ou modificar.
Agora podemos realizar a mudança desejada. Após realizar a mudança, vamos abrir a aba "commit" que fica do lado esquerdo. Nessa janela podemos selecionar quais os arquivos que fazem parte da mudança, para enviar a modificação para o repositório.
Após selecionar os arquivos necessários, preenchemos a mensagem do commit com uma algo que descreva o que está sendo mudado. O ideal é que se utilize poucas palavras para descrever a mudança.
Em casos em que é necessário algo mais detalhado, escreva na primeira uma descrição breve, e após uma linha escreva a descrição completa.
Agora podemos fazer o commit e o push das mudanças.
Commit -> realiza a mudança no seu repositório local
Push -> envia a mudança para o respositório remoto ( github)
Abrirar uma tela para alterar alguma opção do push, se necessário. Aqui podemos ver que será criada uma nova branch no repositório remoto, sinalizado pelo label "new" após o nome da branch. Após verificar que está tudo correto, clique no "push".
*Lembrando que o remote origin é o repositório fork, então a mudança vai para esse repositório e não para o oficial.
Após o push, vamos olhar como ficou o repositório no github.
Podemos ver que ao entrar no github ele já nos mostra que foi realizado um push recentemente no repositório. E finalmente fornece um botão para realizarmos o pull request.
Clique no botão "compare & pull request".
O github abrirá a página de pull request do repositório oficial, automaticamente preencherar algumas informações com a mensagem que colocamos no commit.
Nessa página, podemos configurar para qual branch o pull request será feito. Por padrão ele fará o pull request na branch "development", caso o pull request seja para outra branch você pode alterá-la.
Clique no botão "Create pull request". Ao criar o pull request a mudança vai passar por algumas checagens automáticas, e ficará aberto para alguém da equipe analisar o que foi mudado.
Essa é fase que chamamos de code review, aqui fazemos uma verificação geral da mudança.
Algumas das coisas que verificamos aqui:
A qualidade do código; Se a mudança faz sentido; Se a mudança é necessária; Se o código faz o que supostamente deveria fazer; Se não existe código malicioso; entre outras coisas;
Alguma pessoa do time irá realizar o review do código, podendo aprovar, pedir mudanças ou apenas não aceitar o pull request
5º Passo - Atualizando o repositório com o conteúdo do repositório oficial
Após o pull request ser aceito, ele é incorporado ao repositório oficial. Então é necessário que o repositório fork e o local seja sempre atualizado também.
Para isso, vamos voltar ao IntelliJ. A primeira coisa a fazer é retornar para nossa branch padrão "development". Vamos fazer o checkout dela.
Agora vamos fazer o pull (copiar) das alterações realizados no repositório oficial. Você pode clicar com o botão direito em algum arquivo do projeto -> Git -> Pull...
Vamos configurar de onde queremos receber as atualizações, nesse caso queremos atualizar a nossa branch com o repositório oficial e branch development, que foi a que submetemos o pull request.
Podemos ver que nossa branch local está atualizada com a mudança que fizemos no pull request:
Após realizar o pull dessas alterações, você pode fazer push para o seu repositório fork, para mantê-lo sempre atualizado.
Esse processo pode parecer um pouco complicado, ou até mesmo com vários passos. Mas é uma forma de coloboração bastante eficaz que permite a fácil utilização de múltiplos repositórios, sem muitas complicações de merge. Mas isso já é uma outra história.
O importante é sempre lembrar:
Antes de fazer qualquer mudança crie uma nova branch sempre a partir da branch padrão, nesse caso "development" Se seu pull request não foi aprovado ainda, e você precisa fazer uma alteração diferente, volte para branch padrão, crie uma nova branch apartir dela e só então comece a realizar a próxima mudança Lembre-se de manter seu repositório sempre atualizado com o oficial De vez em quando faça uma limpeza, delete as branchs que foram criadas e as mudanças já foram aprovadas. Lembre-se o modelo é "short lived branch" então elas tem vida curta mesmo. []'s
-
By Kelvin
Salve rapaziada,
Tenho uma grande novidade para compartilhar com vocês, a parceria oficial entre a L2JBrasil e a Lucera. Portanto, leia toda a postagem para ter informações completas sobre tudo.
O que é Lucera?
Lucera é a nome da revisão Interlude e Classic russa, que é tão antiga quanta a nossa comunidade e que por longos anos vem sendo trabalhada pelos seus desenvolvedores. Apesar de não ser uma revisão brasileira ela possui toda a sua estruturação em inglês, portanto, pode ser usada facilmente por qualquer.
Porque escolher Lucera?
Trabalhar com L2J é um trabalho árduo que muitos adotam por paixão e outros por motivos financeiros. Independente do seu interesse você usando uma rev com base Lucera, terá uma opção de revisão que já vem sendo trabalhada a vários anos.
Muito dos grandes servidores da Europa e América do Norte utilizam a base Lucera para terem sucesso e conseguem muito bem!
Por aqui a utilização da revisão ainda é um TABU, tanto pela dificuldade na linguagem (apesar do fórum deles ter uma sessão em PT_BR) quanto a ausência de um suporte mais "Friend Frendly", isso por muitas vezes afasta o usuário mais iniciante. Muito dos usuários da L2JBrasil já utilizam ou utilizaram em alguma oportunidade essa pack e uma grande parcela recomenda.
Eu particularmente dediquei o ano de 2020 para abrir alguns servidores com diversas bases, aCis (excelente para PVP), Sunrise para H5 (falaremos disso posteriormente :P), e Lucera para bases mais MID-LOW rate e foi muito gratificante o retorno.
Lucera é uma revisão L2J que comparam as suas mecânicas próxima ao L2OFF, isso se deve a cultura que L2OFF são arquivos "oficiais" portanto atestam essa qualidade neste comparativo também.
E a L2JBrasil o que tem com isso?
Nossa parceria rende a você acesso a um conteúdo semelhante ao do fórum oficial, mas, com uma linguagem mais "amigável" e com conteúdo extra que aprendi ao utilizar a revisão.
VIA MP: https://www.l2jbrasil.com/messenger/compose/?to=1
VIA EMAIL: [email protected]
VIA DISCORD https://discord.gg/sjneErZ3
Descontos exclusivos postados exclusivamente na área Lucera em VPS, Epic Server e Hospedagem, além de otimização insana na L2JCenter.com.
Cargo Lucera User
Acesso a ferramentas de forma mais facilitada através dos anexos no Sub-Forum Lucera na L2JBrasil.
Guias direcionados a Lineage 2 produzidos por mim para utilização e noções básicas de servidores em Windows e Linux, segurança digital, manutenção e rotinas de backup para banco de dados e muitas outras bizarrices que usuários iniciais cometem, esse recurso será gratuito para o fórum, porém, tópicos relacionados a Lucera serão exclusivos dos nossos membros doadores.
E de que quebra: a satisfação de contribuir com a manutenção da maior comunidade de Lineage 2 do Mundo que se mantem 100% free até hoje 🙂, já que parte das vendas serão doadas para as despesas do nosso fórum.
O que mais eu ganho com isso?
Você adquirindo uma licença Lucera através da L2JBrasil terá:
Participação em uma comunidade internacional criada a vários anos e extremamente ativa.
Acesso a 1 Licença Interlude ou Classic por IP sem a necessidade de doações adicionais.
2.1 Atualizações custam 20 USD mensal e não são obrigatórias. Acesso a SVN do projeto para receber atualizações**, bug report e sugestão de adoções de mods.
Uma revisão o mais estável possível com praticamente todos os sistemas e subsistemas funcionais.
O que eu não ganho?
Você não terá um assistente pessoal para criar seu servidor a seu gosto, você recebera uma licença de uma revisão premium, não um desenvolvedor particular 😛 Um java moder particular, todos os mods pertencentes na Lucera são oficialmente colocados na revisão, então, não existe "mods exclusivos", você pode desenvolver se quiser ou sugerir, dependendo da quantidade de interessados o desenvolvedor poderá avaliar a implementação. Tratamento diferencial junto a L2JBrasil ou qualquer extensão da comunidade.
Interlude
A versão Interlude é o projeto principal da Lucera, trabalhado ao longo de diversos anos é bem estável.
Teste o servidor Interlude baixando o patch pelo link:
📦 Tenha o cliente Interlude e use está system para conectar-se.
Pra quem gosta de procurar coisas na pasta config link abaixo:
📦 Baixe a pasta config L2 Lucera Interlude.
Senha para arquivos: l2jbrasil.com
Classic (Interlude Remastered)
A versão Classic é o novo projeto Lucera, usada todos os principais mecanismos da versão Interlude, essa rev trabalha com o cliente Classic Secret of Empire / Fafurion, portanto a ideia é limitar o conteúdo ao Interlude mas inevitavelmente exisatem coisas de interface e do cliente que podem ser usados caso existam ou forem implementados como: braceletes, agathions, transformações entre outras coisas.
A Lucera Classic é uma revisão que ainda está em desenvolvimento. As atualizações são periódicas. É uma excelente exclusividade comparada a outros concorrentes com valores bem maiores e com qualidade inferir. Se é um iniciante e precisa de algo sólido talvez a versão interlude seja para você.
Outra coisa que acho legal nesse cliente é a qualidade gráfica superior, HDR, Surround e mais uma penca de melhorias em relação aos outros clientes.
Teste o servidor Interlude baixando o patch pelo link:
📦 Baixe o cliente completo e inclua este l2.ini dentro da pasta /sytem_en/
Pra quem gosta de procurar coisas na pasta config link abaixo:
📦 Baixe a pasta config L2 Lucera Classic.
FAQ
Kelvin vocês estão vendendo revisões de L2J? Vai ser liberado pra todo mundo então?
Não, para essas parcerias acontecerem o time ou desenvolvedor precisa provar algumas qualidades tais como tempo de desenvolvimento, pelo menos uma micro comunidade estabelecida com o mínimo do desenvolvedor ativo nela e/ou site organizado e detalhado com informações claras e transparentes sobre o serviço.
É oferecido a oportunidade de participar de um projeto de qualidade mediante doação para sua subsistência, não venda.
Qual a melhor rev Interlude ou Classic?
Ambas são bem idênticas no que diz respeito à mecânicas ingame já que defendem a jogabilidade do interlude.
Claro a Classic ainda é uma versão em construção já que possuem mais sistemas que a versão canonica.
Posso ter acesso admin?
Sim, envie um MP com o nick do seu personagem.
Posso trocar minha Licença de Interlude para Classic?
Não, são projetos separados e esforços separados para cada projeto acontecer, portanto, não aventure-se. Escolha bem a versão que deseja trabalhar, conheça, estude-a, veja feedbacks e assim tenha sucesso.
Qual nível de rates a Lucera é recomendada?
Já utilizei em servidores base 3x até 100x portanto é uma excelente escolha em ambos os aspectos.
Qual o papel da L2JBrasil nisso?
A L2JBrasil é um parceiro, uma ponte, facilitamos tanto a aquisição da licença quanto damos facilidades nela sem que você gaste 1 centavo a mais de contribuição nisso.
Não consigo doar porque os valores são em dólares ou é difícil pagar como faz?
Nós podemos fazer a ponte entre isso, os valores dependerão da cotação do dólar da operadora do cartão + iof, portanto, esteja certo de sua aquisição.
Vou usar uma versão crackeada!
Você não precisa arriscar tempo e dinheiro em algo vazado, sem updates, use uma aCis, Mobius ou Frozen, tem versões open source e grátis, não seja seu pior inimigo.
Quem já possui uma licença Lucera antiga como fica?
Não teremos uma politica de acessos a membros que não participem desse programa de parceria a principio, porém, se você tem conhecimento sobre a área e gostaria de ajudar, você recebera um acesso diferenciado e sua permanência decorrera da sua atividade e qualidade desta.
-
By junin00
Pack 01
Pack 02
Pack 03
Pack 04
Pack 05
Pack 06
Use o L2ViewUTX.rar para visualizar o nome dos ícones, pois nem todos estão igual ao da imagem.
Arquivo com as texturas para download:
favero_l2_icons.rar
Créditos: NCSoft, e eu por Adaptar.
SE GOSTOU DEIXA O LIKE AI 👍
-
By Kelvin
Caminho: Gameserver\config\olympiad.properties\
*Para Classic
1. Procure por OlympiadNewStadiums = False e troque para True.
2. Atualize os arquivos do jogo
\Maps\17_10_Classic.unr (arquivo em anexo).
2.1 Atualize os arquivos do geodata
Gameserver\geodata\17_10.l2g (arquivo em anexo).
3. A nova área já estará disponivel:
17_10_Classic.zip 17_10.zip
-
By Kelvin
Caminho: gameserver/data/multisell/
Uma multisell com chance é uma lista de compra onde você exige determinados itens para entrega e o NPC dentre uma lista sorteia e entrega no seu inventário. Mantenha o parâmetro is_chanced habilitado.
<config showall="true" is_chanced="true" notax="true" keepenchanted="false" />
Exemplo da multisell completa:
<?xml version='1.0' encoding='utf-8'?> <list> <config showall="true" is_chanced="true" notax="true" keepenchanted="false" /> <item id="1"> <ingredient id="1459" count="1"/> <!-- Item exigido para ser entregue e trocado --> <production id="71" count="1" chance="0"/> <!-- O primeiro item tem que ser posto com a chance de 0 para que o cliente identifique os restantes e mostre. Isso não afeta em nada --> <production id="71" count="1" chance="50"/> <!-- 50% de Chance de ter oo item --> <production id="72" count="1" chance="50"/> <!-- 50% de Chance de ter oo item --> </item> </list> Vai ficar algo semelhante a isso:
-
-
Posts
-
By warley hong · Posted
como faco para utilizar projeto acis , sou novo e estou com l2jfrozen. -
Alguém sabe dizer se o npc classe master ta funcional?
-
Hello @everyone, apparently the problem of undefined claims has been generated by a bad calculation of the remaining times, so to correct this, you must go to: votesystem.Handler.VoteManager and search public long getTimeRemaining (individualVote iv) and replace the old method with this: public long getTimeRemaining (individualVote iv) { long timeRemaining = 0L; timeRemaining = ((iv.getVotingTimeSite () + Config.INTERVAL_TO_NEXT_VOTE) - ((iv.getDiffTime ()> 0)? (System.currentTimeMillis () + iv.getDiffTime ()): (System.currentTimeMillis () - iv.getDiffTime () - iv.getDiffTime ()))); System.out.println ("Remaining time:" + timeRemaining); return timeRemaining; }
-
Alguém que saiba fazer, pode me ajudar?
-
O link não está funcionando, só fica gerando nova chave! Pderia reupar por favor?
-
By L2carlinhos2020 · Posted
queria saber ser so funciona no projeto l2jdream ou e pra todos projetos ? -
Updated for Homonculus https://pastebin.com/J9mkvWYH
-
Olá @fabaol2jbrasil, seu tópico apresenta um ou mais links offline, caso alguém tenha e deseja compartilhar conosco, mande um mp para mim ou qualquer outro staff para atualizarmos o tópico, obrigado.
-
Link de todos os download quebrados
-
l2jorg Projeto L2JORG Community
😍 L2jOrg agora tem um espaço próprio no fórum.
👉 Ao invés de postar tudo por aqui e ficar perdido pelo tempo, você pode usar o fórum especifico do projeto:
Recommended Posts
Posted by sucodeuva,
A última versão estável sempre estará nesse link
Recommended by Grundor
0 reactions
Go to this post
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.