Ir para conteúdo

[VENDA] Projeto completo para criação de servidores de Minecraft


ViniciuszXL

Posts Recomendados

venda.png.f232303b5dc0ad303a8548e1a0102de8.png

Olá pessoal, tudo certo? Bom, pra quem não me conhece, eu sou o Marcus Vinícius, e neste tópico
estarei vendendo um projeto completo para criação de servidores de Minecraft.

Primeiramente, estarei esclarecendo algumas dúvidas quanto à esse projeto. Desde 2016, eu venho-o mantendo atualizado
e adicionando novas funcionalidades, nos quais dado ao tipo de projeto que eu pegaste, tive a necessidade de adicionar
funcionalidades para poder prosseguir com o mesmo.

Utilizei esse projeto primeiro no SigmaCraft. Servidor do Afreim de Minigames. Bem, o projeto nessa época era precoce, e ocorria alguns bugs
indesejáveis. Com o passar do tempo, me dedicando mais ainda à esse projeto e atualizando-o para que não ocorra bugs,
eu vinha utilizando-o no mais recentes projetos, desde o SigmaCraft no qual mencionei para vocês. 
Os minigames que o servidor oferecia era:
SkyWars, BedWars, Arcade, Desastres e EggWars.

O segundo servidor no qual utilizei esse projeto, foi o FireNetwork. Servidor também de Minigames do ReFleTz. Nele, havia mais estabilidade
e funcionalidade por parte do projeto, além de ter várias coisas nos quais não haviam no
SigmaCraft. Os minigames que o servidor oferecia, eram os:
SkyWars, BedWars e TheRush

E o último projeto no qual utilizei, foi o MC-Dust. Servidor de PvP. É o mesmo processo do antigo projeto. Bugs corrigidos, mais estabilidade,
e entre outras novas funcionalidades adicionadas. Neste servidor, os
minigames eram: HardcoreGames, PvP e Rank UP OP (Não concluído).

projeto.png.b405945569df057cc4baa90fb8b850c8.png

Bom, as linguagens e tecnologias utilizadas no projeto, são: Java, MySQL, Redis e Maven.

Java é a linguagem no qual o projeto foi construído, utilizando a API do spigot para criação de sistemas para servidores de Minecraft.
MySQL foi utilizado para guardar as informações em massa como por exemplo os dados dos jogadores.
Redis foi utilizado somente para informações nos quais sejam fáceis de serem acessadas, rápidas, e que não necessitam de
um sistema complexo para o mesmo.
Maven utilizado para integração do Core com os projetos. Para criar um projeto novo, é necessário do Core no qual
o mesmo prover de uma grande quantidade de funcionalidades e além disso, funcional.

Workspaces.png.983d4c8b1a6c33eadabb30e6d3081c87.png

A seguir, as prints do projeto, e também um breve resumo (ou um resumão mesmo) das
classes contidas na imagem.

Imagens.png.0d938b0e0b9a2891bbedafa13b641332.png

Core

Esse é o projeto principal. Todo projeto secundário terá de ter o projeto Core integrado para que seja possível a integração
com os outros projetos. Nele, há vários conteúdos que você mesmo poderá explorar, além de modificar.

Core.png.2dc49937e0924a892ef23d41b92bf9b6.png

Conteúdo do Core
AntiCheat

AntiCheat: É um AntiCheat que primeiramente foi pensado para projetos de Minigames. Atualmente o mesmo
não está funcional nos projetos de PvP (Player Vs Player). Porém não sei como está para servidores de Minigames.

Ele bloqueia alguns tipos de Hacks, como Cringed, Fly, Glide, Speed e entre outros.

AntiCheat.png.d3ce6e9bc1e721d9c932008fa4ff1ce7.png

API

Aqui é a API que o Core disponibiliza. Há a API de Holograma,
Cooldown, Mojang, entre outros.

API.png.d963dc202eb3f61deae2523243e78371.png

Comandos

Aqui está todos os comandos que estão disponíveis no Core.

274695094_Commands(1).png.238de34b53072860234a9205b1c21786.png496312305_Commands(2).png.3d8d49b3f0fa8fff961a5f40f1102d7e.png

Data

Aqui é onde ocorrerá as operações de MySQL. Na classe 'BaseDataHandler', há uma quantidade enorme de
funções, além de ter uma forma de atualizar dados mais simples.

Data.png.0adcffd685f98d04b006f5d5274bf142.png

Networking (Conexão Proxy-Server, Server-Server, Server-Proxy)

Aqui é o conjunto de classes responsável por organizar, enviar, receber todo o tipo de dados entre os servidores.

O Proxy ficará responsável por ser o transmissor dos pacotes para todos os servidores, caso o pacote seja 'Server-Server'.
Mas, caso o pacote seja 'Server-Proxy', ele não enviará esse pacote para todos os servidores registrados no Bungee.

Para criar as classes com esses pacotes, é obrigatoriamente criar tanto na parte IN, como na parte OUT.
Para que assim, o pacote OUT seja enviado até o Proxy, e do Proxy o servidor receba o pacote sem ocorrer um problema no mesmo.

Networking.png.f1d65a99794f273f206008973c4c5b8f.png

Pacotes IN (Receber)

Os pacotes IN (Receber), trabalham com o recebimento de outros pacotes que foi enviado de um servidor. Ele primeiramente passa
pelo
Bungee, para que o Bungee faça a verificação deste pacote e no final enviará para todos os servidores para que o pacote
seja tratado. Porém, há também as opções onde o pacote seja destinado à apenas um
servidor X, e ele só será destinado
a esse servidor em específico.

Logo mais na imagem, temos todos os pacotes in criados. A exemplo de apenas um, é o 'PacketInGroup'. Ele foi criado especificamente
para atualizar o grupo de um jogador que não esteja no servidor atual de quem utilizou o comando. Ou seja, mesmo que o comando
seja executado em um servidor A - por exemplo, o jogador, no qual o grupo foi modificado, receberá o pacote no servidor B, através da
conexão com o Server-Proxy-Server (Lembrando, que caso o mesmo não esteja no servidor)

756203849_PacketsIN.png.ff144d097e762e7bb9ecd73dcb041f09.png

Pacotes Out (enviar)

Aqui é onde os dados serão enviados através da conexão Server-Proxy-Server

Você poderá selecionar qual tipo de conexão utilizará. Se é para que os servidores recebam esse pacote, ou para que apenas
o Proxy receba. 

A exemplo disso, temos o pacote 'PacketOutSendPlayerToServer'. Ele não está criado na parte dos pacotes IN, e é específico do Proxy.
Como o nome do pacote já diz, ele envia um jogador (UUID), para um servidor que no qual foi especificado dentro da função.


E esse pacote será tratado apenas no Proxy onde ele tem acesso a todos os servidores disponíveis (e criados), para que
assim seja feita a compilação do pacote sem problemas.

1745756295_PacketsOUT.png.452c504bbad412d76f0ec9d5cb709ea7.png

A seguir, outras imagens das packages do Core. Cujo o nome são auto-explicativos.

Permissions

Classes responsáveis pela permissão dos grupos.

Permissions.png.0a78e9c58b320bdef7d8b1b41be44543.png

Inventory

Classes de inventário intuitivo e funcional. Você poderá criá-los utilizando o "extend InventoryExecutor" e se houver necessidade
inserir na classe "InventoryType". Ele funciona por dois modos: Tipos e Executor.

O tipo é onde o mesmo está criado no "InventoryType" (recomendável para inventários que não necessitam receber valores)
O executor é a forma "cru" do inventário. Onde você utilizará em específico para inserção de valores.

Party.png.13352ef52a42dd69825c62a715560938.png

Player

Classe que armazena e organiza os jogadores. Nela, há a classe de grupos onde você colocará os grupos e entre outros valores.
Há também a classe de Scoreboard que contém funcionalidades para que não haja o "flick" da score.
A atualização da mesma pode ser feita em menos de 1 segundo, que não ocorrerá o "flick".

Há também os "Toggles", onde são as preferências. Há várias preferências para ser habilitadas
e desabilitadas pelo próprio jogador.

Player.png.3b0970ce0ab40a992e160a91797fbaab.png

Punishment

Classes responsáveis pelo banimentos dos jogadores. Há o Ban, BanIP e o Mute.

Punishment.png.a7a68d6d8b89d5768122c74b99f2a772.png

Utilitaries

Pacote de utilidades. Como o nome na imagem são autoexplicativos, não há
necessidade de listar o que faz cada classe.

Utilitaries.png.1bb4d28fcbe70645d54dea4ef637bcb0.png

projetos.png.846cd098e505d4f24ba197df5f3464ce.png

Esses são os projetos do MC-Dust. Além do Core, há também os seguintes projetos
que utilizaram o Core como base. Provavelmente terá alguma informação abaixo da imagem que
falará para que serve as classes, e etc.

HardcoreGames (Modo de jogo):
https://imgur.com/a/7tsFzBy

Lobby (Servidor):
https://imgur.com/a/xxOpdSU

Proxy (Bungee):
https://imgur.com/a/TIL5pUa

PvP (Modo de jogo):
https://imgur.com/a/icGpa6z

RankUP OP (Modo de jogo):
https://imgur.com/a/FtcP2Z0

funcionalidades.png.4773faa14c57fd6eb9d29387b847de85.png

VERSÃO

Jogadores das versões 1.8 até à recente versão, poderão entrar no servidor com auxílio de plugins de terceiros (como por exemplo, ViaVersion)
para que isso aconteça. Não há um sistema específico que deixe os jogadores dessa versão entrarem no servidor.

Dito isso, o projeto é feito na versão 1.8, e não tem suporte para 1.7
(Se não me engano, o ViaVersion com um plugin de addon, dá  suporte para as versões anteriores)

LOGIN

O Core possui um sistema de login já integrado. Ele tem a verificação se o jogador é original ou não
e com isso, apenas jogadores piratas registram no servidor. Há uma verificação também se o jogador não está
tentando burlar o servidor utilizando o nick de algum cargo alto.

O login utiliza o Redis para obter informações de conexão (como por exemplo, se é original ou não), e faça com que
o sistema de login identifique se é necessário registrar.

CONEXÃO RÁPIDA

O projeto tem uma funcionalidade de extrema importância. Cujo nome é "Fast Connection" - que traduzindo, "Conexão Rápida".

Ele utiliza alguns pacotes modificados na conexão para que o jogador entre no servidor no tempo mais rápido possível.
Alinhado à isso, o Core também modifica a inicialização do mundo, fazendo com que o jogador faça o download
do mesmo mais rapidamente - e, consequentemente, entre no servidor mais rapidamente.

FAKE

O projeto contém o comando /fake. Ele além de modificar o nome do jogador no próprio servidor e atualizar para os demais jogadores,
ele também é contínuo, ou seja, quando você digita o comando em um servidor, entrando em outro, você
estará com o 
nome fake digitado, ao invés do original.

Há também o comando /fakelist, onde como o próprio nome diz, mostra todos os jogadores utilizando fake na network.
Ele mostra o nome fake do jogador, nome real e servidor conectado.

A mudança do fake é rápida, feita antes mesmo da conexão total com o servidor, para que assim não tenha erros futuros em
qualquer sistema feito.

SKIN

Possui também a funcionalidade de modificar a skin do jogador ou de um jogador.
Não é necessariamente logar novamente no servidor para que a skin seja modificada. Ela já é setada no próprio servidor
e é contínua, como o fake. 

ASYNC

Todas as funcionalidades que demandam manipulação de dados, atualizações, requerimentos, e etc, são feitas em segundo plano.

Obtenção de dados, atualizações, deletes, tudo que você possa imaginar, é feito em segundo plano.
Para que assim, o servidor não tenha um desempenho péssimo, pois o projeto é grande, e ter um balanceamento
entre qualidade, funcionalidade e desempenho, é extremamente difícil, como foi no inicio do Sigma.

Com o tempo de aprimoramento, foi ficado mais estável, e mais polido chegando até esse estágio.

LOBBY

O projeto do lobby possui mais de 400 cosméticos, entre bandeiras, cabeças, emoções, engenhocas, e etc!
Um dos meus projetos mais bem desenvolvidos, o lobby conta com várias funcionalidades nessa área, e ele se destaca por causa disso.

Holograma atualizável sem precisar remover e criar a entidade do holograma. Ele atualiza modificando o nome da entidade.
Possibilidade de colocar imagens no lobby através do comando /fp. Sabe aqueles banner que os grandes servidores tem em seus lobbies?
O projeto também possui! É simples adicionar uma imagem em seu servidor.
 

VALORES.png.2d79a3048fd1a86fd106506471e8aefb.png

Os valores são meios salgados, afinal, o projeto é excelente em alguns quesitos, e você não terá trabalho adicional em criar a integração
com o
Bungee ou recriar um projeto para que atenda ao aquilo que você deseja.

Lembrando que, esse projeto é para projetos grandes, que demanda ou de uma VPS, ou um dedicado para hospedá-lo.
E motivo? É por causa de haver a necessidade de ter o
Bungee para a interconexão dos servidores.

Você pode criar o projeto apenas contendo três servidores (Proxy, Lobby e RankUP - exemplo).
 

Caso deseja adquirir, eu dou o suporte para que você tenha um entendimento do projeto sem que você se perca.
Também ensino como criar os servidores, configuração para que tenha a interconexão dos mesmos, e entre outras coisas.

 

VALOR DO CORE E PROXY: R$ 525,00.

VALOR DO CORE, PROXY E LOBBY: R$ 670,00.

VALOR DO DE TODOS OS PROJETOS: R$ 925,00.
 

Como falei no início, eu também tenho outros projetos além desses.
Caso você queira adicionar alguns deles no pacote, você poderá falar comigo através do meu discord: ViniciuszXL#6269

Valor não negociável.

PAGAMENTOS APENAS POR:

TRANSFERÊNCIA BANCÁRIA ou DEPÓSITO.
(Em raros casos eu faço por PagSeguro ou MercadoPago.)

 

Ficaste interessado? Mande-me uma solicitação no discord para conversarmos! 

Editado por ViniciuszXL
adicionando a parte das funcionalidades
Link para o comentário
Compartilhar em outros sites

13 horas atrás, WhiteStyle disse:

É um projeto bem completo porém acho que não será vendido facilmente, pelo menos aqui na gb não. Boa sorte na venda, os projetos parecem estar bem feitos.

Obrigado mano! 

 

12 horas atrás, MrDrawn disse:

Olá, não consigo lhe adicionar no discord, poderia me adicionar? O meu discord é: MrDrawn#5199

Mandei solicitação lá, só aceitar

Link para o comentário
Compartilhar em outros sites

Que tópico incrível, esse projeto eh bem grande e tá mttt bem feito, meus parabéns!

Boa sorte com as vendas mas realmente, vai ser difícil de vender, vende pra gringa q e mais fácil e se for esperto da pra lucrar mais, brasileiro eh pão duro

 

Link para o comentário
Compartilhar em outros sites

2 horas atrás, TheGeneX disse:

Que tópico incrível, esse projeto eh bem grande e tá mttt bem feito, meus parabéns!

Boa sorte com as vendas mas realmente, vai ser difícil de vender, vende pra gringa q e mais fácil e se for esperto da pra lucrar mais, brasileiro eh pão duro

 

Valeu pelos elogios mano! E pela sorte nas vendas!

E realmente, vender aqui no Brasil é dificil um projeto desses, mas... não impossível... tem gente que compra kkkkk
E está até mais barato do que realmente eu queria nele... eu tentei vender com preço full mas não deu certo, aí coloquei esses preços e vou tentar achar um comprador

Editado por ViniciuszXL
esqueci de algo
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...