SchultzGames
Para tirar dúvidas, crie um tópico especifico na área "Dúvidas em Geral" e aguarde ser respondido. Evite comentar em tópicos não relacionados a sua dúvida :D
TÓPICOS RECENTES:
Tópico:
Postado em:
Postado por:
[TUTORIAL] Joystick vistual para mobile
trocar cor de um objeto ao apertar uma tecla
Problema com UI Texts somem entre outros problemas
Gameobject[x] ati vado e Gameobject[!x] desativado
Problema com Advertisement na Unity para monetização de Jogo
[RESOLVIDO] Rotacionar player no eixo Y da camera
Movimentaçao por SQM / UNITY 2D
Unity Hub 2.3.0 erro
Particle Emitter unity 5
[TUTORIAL] Campo de visão dos inimigos (Enemy FOV) com Raycast ou OverlapSphere
Animação de acordo com a velocidade e posição do Joystick
Como adaptar a roda do Mouse para o movimento de pinça no Smartphone
cair plataforma
EU QUERO ANDAR COM AS TECLAS JIKL
Podem me ajudar a resolver esse erro na câmera do Unity?
[DÚVIDA] Como clonar um component
Qual a função do normalize e Normalize()? E quando usar?
como faço pra deixar o movimendo da camera suave?
The King
Erro no script de Trigger
Como acessar arquivos do armazenamento?
Inventario vertical
duvida player quicando ao descer desnivel
como fazer os animais fugir no AI
Problema com Platform Effector 2D e AddForce
[RESOLVIDO] Bug no Botão de Pular
problemas com celulares android grande
Script para Inimigo DESAPARECER e TELEPORTAR para um Airpoint
Duvida sobre Array de componentes.
Baixos Brasil - Jogo de Carro Brasileiro!
Problemas no sistema rotação de um kinematic rigidbody usando MoveRotation
audio.clip unity 5
Erro com Substring
movimentação e sistema de mira bugado
Prova de Aptidão Profissional
[TUTORIAL]Efeito de balançar camera enquanto anda
Dicas de como implementar um sistema de colocação de texturas
[TUTORIAL] IA inimigo combate rodear
[TUTORIAL] Unity 2019 - Lanterna e pilhas, com UI
Como fazer sombra falsa igual do GTA 3
como fazer para arma se movimentar junto com o player
[TUTORIAL] Observer Pattern em C# - Tudo o que você precisa saber
wallrun em 1° pessoa e com rigidbody
Como verificar se o objeto esta em movimento?
CULTZONEGAMES Projeto em Andamento
Inimigo andando de forma aleatória (SEM SER TELEPORTANDO) com sensor de collider por tag
[TUTORIAL] Unity 3D - Atualizar projeto para Universal Render Pipeline (URP)
EQUIPE - Programador
Error falando que o axis vertical não está definido
Vida
Problema 'Unity Package Manager Error'
Olá, eu gostaria de saber algumas informações a respeito do unity
[TUTORIAL] Unity 5 - Como criar o próprio FPS Controller
Qual o próximo passo após o Wampserver? (banco de dados Unity)
Bug no MonoDevelop.
Como posso iniciar um contador para desativar um objeto
Erro no Realistic Car Controller
Procuro Modeladores e level Designer
[FORMAÇÃO DE EQUIPE] PERSONAGENS E ITENS PIXEL ART
Esse script precisa melhorar?
[DUVIDA] MINIMAPA
ERRO NO SCRIPT swimming!!!
Novo Projeto - Home Scared
Produzir o segundo áudio depois de um terminar o primeiro áudio usando um timer?
Salvar arquivos binário
[TUTORIAL] Script de Spawn Aleatório
Como chamar uma ação após sequência de botões?(Cheat/Manha estilo GTA)
[TUTORIAL] Como fazer um BASTÃO FLUORESCENTE com tempo e luminosidade randômica
implementar um botão para avaliação do aplicativo na playstore
Erro ao compilar apk Unity3d, me ajudem
[TUTORIAL] Sistema de tiro com RAYCAST (várias armas, mira laser, munição, dano, etc, etc)
[DUVIDA] Lights URP - É Bug?
Qual versão do JDK, NDK E SDK o Unity Hub recomenda para Unity 2019.2.12f1 (64-bit)?
Erros ao tentar build para android!
gráficos ficaram bugados no Android
Players estão criando salas diferentes com photon 2
[TUTORIAL] Mover objetos 2D e conectar em lugares específicos
Como fazer o inimigo seguir de 15 em 15 segundos
[TUTORIAL] Script de arma completo! [FREE]
[RESOLVIDO] Como colocar som na arma quando eu disparo?
Player Fica Tremendo
[TUTORIAL] Como utilizar a função " Instantiate "
(Rigidbody) altura do pulo de acordo com a força que apertamos o botão
[RESOLVIDO] Movimentação personagem 3 pessoa unity 3D Mobile
[RESOLVIDO] Estes scripts estao corretos? Podia fazer melhor?
[RESOLVIDO] Bug no Spotlight
[RESOLVIDO] Limitar rotação no eixo x
[EQUIPE] VAGAS ABERTAS
[TUTORIAL] Mira Simples
Com faz um lobby de salas no unity photon 2 ?
[RESOLVIDO] nao consigo abrir projetos na unity
[RESOLVIDO] Cena reiniciar quando o player morrer.
Keys para quem comprou o jogo poder ativa-lo
[RESOLVIDO] Analogico Virtual (Mobile input)
[RESOLVIDO] Camera Seguir Player
[duvida]conectar na nuven do xbox live
Erro de perder controle da câmera ao conectar um jogador a cena
Menu De Pause De Um FPS
[DUVIDA] Como tornar meu jogo online?
Ontem à(s) 8:22 pm
Ontem à(s) 8:15 pm
Ontem à(s) 7:55 pm
Ontem à(s) 6:03 am
Ontem à(s) 4:03 am
Ter Mar 31, 2020 9:23 pm
Ter Mar 31, 2020 9:03 pm
Ter Mar 31, 2020 8:20 pm
Ter Mar 31, 2020 8:10 pm
Ter Mar 31, 2020 6:11 pm
Ter Mar 31, 2020 5:46 pm
Ter Mar 31, 2020 2:28 pm
Ter Mar 31, 2020 8:36 am
Ter Mar 31, 2020 4:45 am
Seg Mar 30, 2020 9:53 pm
Seg Mar 30, 2020 7:36 pm
Seg Mar 30, 2020 6:08 pm
Seg Mar 30, 2020 5:12 pm
Seg Mar 30, 2020 3:45 pm
Seg Mar 30, 2020 3:11 pm
Seg Mar 30, 2020 3:02 pm
Seg Mar 30, 2020 1:35 pm
Dom Mar 29, 2020 9:36 pm
Dom Mar 29, 2020 9:26 pm
Dom Mar 29, 2020 8:08 pm
Dom Mar 29, 2020 6:54 pm
Dom Mar 29, 2020 6:45 pm
Dom Mar 29, 2020 5:00 pm
Dom Mar 29, 2020 4:21 pm
Dom Mar 29, 2020 3:54 pm
Dom Mar 29, 2020 12:23 pm
Dom Mar 29, 2020 12:07 pm
Dom Mar 29, 2020 10:28 am
Dom Mar 29, 2020 7:17 am
Sab Mar 28, 2020 8:04 pm
Sab Mar 28, 2020 2:03 pm
Sab Mar 28, 2020 1:45 pm
Sab Mar 28, 2020 12:25 pm
Sab Mar 28, 2020 12:14 pm
Sab Mar 28, 2020 10:33 am
Sab Mar 28, 2020 1:11 am
Sex Mar 27, 2020 8:00 pm
Sex Mar 27, 2020 3:40 pm
Sex Mar 27, 2020 1:09 pm
Sex Mar 27, 2020 1:10 am
Qui Mar 26, 2020 11:22 pm
Qui Mar 26, 2020 11:05 pm
Qui Mar 26, 2020 7:23 pm
Qui Mar 26, 2020 2:08 pm
Qui Mar 26, 2020 1:45 pm
Qui Mar 26, 2020 11:24 am
Qui Mar 26, 2020 11:11 am
Qui Mar 26, 2020 12:27 am
Qui Mar 26, 2020 12:15 am
Qua Mar 25, 2020 11:14 pm
Qua Mar 25, 2020 9:04 pm
Qua Mar 25, 2020 6:03 pm
Qua Mar 25, 2020 3:57 pm
Qua Mar 25, 2020 3:31 pm
Qua Mar 25, 2020 12:21 pm
Qua Mar 25, 2020 11:20 am
Qua Mar 25, 2020 7:58 am
Ter Mar 24, 2020 5:22 pm
Ter Mar 24, 2020 11:33 am
Ter Mar 24, 2020 3:35 am
Seg Mar 23, 2020 11:17 pm
Seg Mar 23, 2020 7:56 pm
Seg Mar 23, 2020 5:37 pm
Seg Mar 23, 2020 5:01 pm
Seg Mar 23, 2020 4:49 pm
Seg Mar 23, 2020 4:23 pm
Seg Mar 23, 2020 3:59 pm
Seg Mar 23, 2020 12:18 am
Seg Mar 23, 2020 12:12 am
Dom Mar 22, 2020 11:54 pm
Sab Mar 21, 2020 10:26 pm
Sab Mar 21, 2020 8:12 pm
Sab Mar 21, 2020 10:45 am
Sab Mar 21, 2020 12:17 am
Sex Mar 20, 2020 10:43 am
Sex Mar 20, 2020 7:11 am
Qui Mar 19, 2020 10:28 pm
Qui Mar 19, 2020 8:30 pm
Qui Mar 19, 2020 10:29 am
Qui Mar 19, 2020 10:18 am
Qui Mar 19, 2020 7:45 am
Qui Mar 19, 2020 12:21 am
Qua Mar 18, 2020 9:50 pm
Qua Mar 18, 2020 7:49 pm
Qua Mar 18, 2020 5:53 pm
Qua Mar 18, 2020 5:30 pm
Qua Mar 18, 2020 9:46 am
Ter Mar 17, 2020 10:15 pm
Ter Mar 17, 2020 8:18 pm
Ter Mar 17, 2020 8:01 pm
Ter Mar 17, 2020 6:48 pm
Ter Mar 17, 2020 3:05 am
Seg Mar 16, 2020 10:22 pm
Seg Mar 16, 2020 10:21 pm
verme1311
Homem do acre
poyser
juansup
LostInTheCenter01
Yuri Heinz
IssacDB
kirkjc
Wdigamer
Nekas
alefe c oliveira
teos626
giowde
iours
MarceloYBP
Arthur07422
Arthur07422
JulioWinchester
Callyde Jr
Wdigamer
JohnVitor
Arthur07422
Édipo
hendrick22
alefe c oliveira
alefe c oliveira
alefe c oliveira
MayLeone
Arthur07422
vini024
gabrimo
Wdigamer
zuziv
jackamir15
jsiilva2k
Wdigamer
gabrimo
hendrick22
Wdigamer
vicecity
B1NH0O
MayLeone
vini024
Nalfam
cultzone
gersoneson
MarcosSchultz
Wahder
Fagner
alefe c oliveira
alefe c oliveira
alefe c oliveira
MarcosSchultz
Nalfam
Arthur0742
thiagograssi
Samuelostgamer
Valakinhas
alefe c oliveira
Daniel Dória
JohnRambo
joaolibolone998
Wahder
Samuelostgamer
evandromagico
joaoguil3
WesFarias
Flag
Leandroigor
Leandroigor
yan187
SteveRogers
Daniel Dória
Daniel Dória
Daniel Dória
Diguinho
Joenilton Saturnino
Gabriel M
ALBANO
ShutUpIAmSnow
alefe c oliveira
joaoguil3
ronigleydson
andersonoliver
ShutUpIAmSnow
Edu4rdogx
alefe c oliveira
guimaraf
pgamaf
Diguinho
alangamepla7
Santiago101246
lauderson
alefe c oliveira
alefe c oliveira
diegopds
Samuelostgamer
MarcosSchultz
MarcosSchultz

Sistema de Yu-Gi-Oh! - ATT [2020]

Ir em baixo

TUTORIAL Sistema de Yu-Gi-Oh! - ATT [2020]

Mensagem por MayLeone em Qui Jun 27, 2019 1:14 am

Sistema de Yu-Gi-Oh! - ATT [2020] Tenor

Olá pessoal, como vão? Há exatamente um mês eu iniciei o desenvolvimento de um sistema de batalhas ao estilo Yu Gi Oh, mais precisadamente seguindo as regras e design do game para PS1: Yu-Gi-Oh Forbidden Memories.

O sistema foi iniciado com a adição de cartas num banco de dados SQLite, e dentro do Unity a única coisa que ele fazia era instanciar essas cartas do banco para a cena, contendo as informações de cada carta como: pontos de ataque, pontos de defesa, nome da carta, e a imagem dela que era renderizada na Unity através do componente SpriteRenderer.

O vídeo do início da proposta pode ser visualizado logo abaixo:




Porém, com o passar das semanas, o sistema foi ganhando forma e hoje conta com diversas classes para gerenciar cada aspecto do projeto.
No final das contas, o sistema está assim atualmente (27/07/19):






O sistema conta com diversas classes integradas para fazer com que todo o eco-sistema funcione, algumas delas são as seguintes:



>> Banco de dados:
- Sistema de leitura e acesso ao banco de dados para criar os decks de cartas (maiores informações no primeiro vídeo acima);


- Graças à flexibilidade do SQLite, é possível construir de forma simples e direta os decks de cada jogador, basta adicionar à tabela de 'Jogadores' um novo registro de jogador, e ir adicionando ou removendo as cartas registradas no banco de dados para cada jogador, assim é possível criar diversos decks diferentes, com as cartas que desejar!


>> Deck Manager:
Classe responsável por gerenciar tudo o que for associado aos decks dos jogadores:


- Gerenciamento dos decks através de pilhas(stacks);
- Adição de informações das cartas do banco de dados para as pilhas de decks;
- Gerenciamento da quantidade de cartas no deck;
- Embaralhamento do deck ao iniciar a partida através do algoritmo: Fisher-Yates Shuffle.


>> Draw Manager:
Classe responsável por manipular o sistema de Draw (compra) de cartas do jogo.
Essa classe é parcial e foi dividida em duas: 


- Draw Manager Amount:
- Responsável por gerenciar quantas cartas deverão ser instanciadas do deck para a mão dos jogadores, possibilitando instanciar as cinco cartas iniciais, quanto qualquer quantidade subsequente, como por exemplo, ao se utilizar de alguma carta com efeito similar ao Pot Of Greed.
Basta apenas passar como argumento da função de Draw da classe, a quantidade de cartas que deseja instanciar, que o sistema fará automaticamente a compra dessas cartas.


- Também responsável por verificar se o jogador possui cartas suficientes para comprar, e caso não, encerra a jogada fazendo com que o jogador que não tenha mais cartas para comprar, perca.


Por ser uma classe pequena, posso mostrá-la aqui de ante-mão:


Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

namespace YuGiOhManager{
 
 public static partial class DrawManager{

  private const float timeToAnimation = 0.3F;

  public static IEnumerator DrawCards(int amount, bool isMainPlayer = true){

   var currentDeck = isMainPlayer ? DeckManager.deck : DeckManager.deckAI;

   for (int i = 0; i < amount; i++) {
    if (currentDeck.Count > 0) {
     yield return new WaitForSeconds (timeToAnimation);
     InstantiateInScene (isMainPlayer);
    } else {
     DialogueUI.ShowDialogue ((isMainPlayer ? "Player 1" : "Player 2") + " doesn't have enough card to draw. Lose!");
     GameManager.gameOver = true;
     yield break;
    }
   }
  }
 }
}


- Draw Manager Instance:
Essa classe é responsável por instanciar de fato as cartas na cena, carregando as informações fornecidas do banco de dados.
São muitos processos como: Verificar se a carta a ser instanciada é uma carta do main player ou do bot, passar as informações do banco de dados para os prefabs das cartas, gerenciar o local da mão que essa carta será instanciada, e etc.

>> Hand Manager:
Essa classe fica ao encargo de gerenciar tudo o que diz respeito às cartas na mão do jogador.

- Função que retorna qual "mão" está sendo avaliada (cartas na mão do main player ou do bot);

- Função de Sort Hand (reorganizar as cartas na mão, assim que uma carta é escolhida para ser jogada no campo);

- Função que remove a carta da mão e coloca no tabuleiro, assim que a carta é escolhida.

Essa classe também é muito importante para o sistema de Inteligência Artificial escolher qual carta ela irá jogar de sua mão para o campo.

>> Board Manager:
Nesta classe estão as funções responsáveis por manipular as cartas que estão em campo (no tabuleiro).

- Verificar se o campo está vazio;

- Verificar se o campo está cheio;

- Verificar qual melhor local para colocar a carta em campo;

- Retorna qual campo está sendo analisado (de qual jogador);

- Sistema de Replace Card (substituição). Quando o campo está cheio, deve-se substituir uma carta já existente no tabuleiro por uma selecionada da mão.

>> Battle Manager:
Essa classe tem a responsabilidade de gerenciar tudo o que for relacionado ao sistema de batalha.

- Define as cartas que estão batalhando;

- Define quem está atacando e quem está sendo atacado;

- Verifica quem perdeu ou ganhou a batalha;

- Desconta os pontos de vida do perdedor;

- Verifica possíveis empates;

- Chama a classe de animação de batalha;

- Destrói do campo a carta perdedora da batalha;

- Sistema de atacar pontos de vida diretamente.

>> Battle Animation Manager:
A classe "Battle Manager", como disto acima, é responsável por gerenciar a batalha do jogo, mas a parte dofeedback visual dessa batalha fica à cargo da classe: "Battle Animation Manager". Então essa classe é responsável por ativar as animações na cena de acordo com o tipo da batalha.
Quem atacou ganhou da carta atacada? Quem atacou perdeu da carta atacada? Foi empate? Não houve nada? Ataque direto aos pontos de vida? Todas essas animações são gerenciadas através de uma enumeração de ações, de acordo com a batalha que ocorreu e as cartas envolvidas na mesma.
É através dessa classe também que são mostrados os pontos de vidas descontados na tela.

>> Change Turn Manager:
Essa classe faz o papel de gerenciar de quem é a vez, e de encerrar a mesma, quando algum jogador solicitar, chamando os eventos necessários para "reiniciar" a vez do próximo jogador.
Também é responsável por chamar a classe da Inteligência Artificial para que ela possa jogar, caso esteja na vez dela.

>> State Manager:
Aqui não se trata de uma classe em específico, mas sim de um escopo do namespace "YuGiOh System", para armazenar as enumerações que serão utilizadas em todas as classes do sistema, como as enumerações das fases do turno (Draw Phase, Main Phase, Battle Phase, End Phase), o estado atual da carta (OnHand, OnBoard), enumerações dos estados das batalhas (já citados anteriormente), delegados para gerenciar eventos do sistema, e etc.

>> UI Manager:
Essa classe gerencia as informações que serão visualizadas na UI da Unity, como as imagens da carta selecionada, seus pontos e nome.
Seu evento de mostrar essas informações na UI é disparado através de uma outra classe chamada "Mouse Manager" que é um componente do prefab das cartas, que detecta se o cursor do mouse está sobre a carta, assim, caso esteja, as informações daquela carta são mostradas em cada componente da UI, como os de ImageText.

>> Game Manager:
Essa classe é algo mais generalizada, que visa armazenar informações globais do jogo e não de algo específico como as classes Managers anteriores.

- Armazena os pontos de vida dos jogadores;
- Os turnos dos jogadores;
- Se é o primeiro turno ou não;
- A fase atual;
- Se é game over;
- Se alguma animação de batalha está sendo executada;
- Se a caixa de diálogos está ativada;
- Armazena as cartas atuais que estão sendo selecionadas para alguma ação.

>> Outras classes:
Além dessas classes que gerenciam o sistema, há outras classes mais específicas, como a classe que ativa as caixas de diálogos, o sistema de animações das compras de cartas, as ações de cada carta na mão (Set Up, Set Down e Cancel), as ações das cartas no tabuleiro (Battle, Change Mode, Cancel), inicialização das informações da partida, Mouse Manager, superclasse responsável por receber as informações do banco de dados, e etc.




>> Inteligência Artificial (I.A)


Sistema de Yu-Gi-Oh! - ATT [2020] Artificial-Intelligence




Como o projeto não é online, se fez necessário a inserção de um sistema de I.A básico para jogar contra o jogador principal.
Essa I.A foi muito inspirada no bot dos primeiros oponentes do já citado Yu-Gi-Oh Forbidden Memories do PS1, ou seja, com uma tática ofensiva, tendo a prioridade em atacar seus pontos de vida e destruir as suas cartas, apesar de ela possuir algumas cartas defensivas em seu deck.


A I.A foi dividida em dois scripts: Um que decide qual é a melhor carta para selecionar na mão e jogar no tabuleiro, de acordo com diversos fatores influenciáveis em suas decisões, tais como: A carta que desejo selecionar é capaz de vencer de alguma carta no campo do oponente? Existe alguma carta no MEU campo que já dá conta do recado? É melhor eu me defender? Descarto a carta mais fraca da mão? Ataco os pontos de vida diretamente? e etc.


O outro script é responsável por fazer a I.A decidir qual a sua melhor ação com suas cartas já em campo, como: Vai batalhar? Se sim, contra qual carta do oponente? Vai só se defender? Mudar a posição de batalha de alguma carta? E assim por diante...


No final de vários e vários testes, apesar de uma I.A básica, ela atende bem as expectativas, procurando sempre fazer a melhor jogada que a traga mais benefícios.


>> O que pretendo implementar no futuro?
O sistema está completo com tudo que planejei desde a sua concepção, mas isso não irá me impedir de implementar novos recursos posteriormente.
Alguns que tenho em mente são:


- Adição de cartas do tipo "Spell" e "Trap";


Deck Viewer, ou seja, um visualizador para as cartas do seu deck;


- Mais inimigos, com decks diferentes, ou seja, vai surgir a necessidade de criar um sistema de seleção de personagens.


>> Onde o sistema vai ser disponibilizado?
Build para jogar e testar a DEMO e código fonte: Clique aqui!


Última edição por MayLeone em Qua Jan 29, 2020 7:10 pm, editado 6 vez(es)
MayLeone
MayLeone
Instrutor

Feminino PONTOS : 1626
REPUTAÇÃO : 421
Áreas de atuação : Unity & C#
Respeito as regras : Sistema de Yu-Gi-Oh! - ATT [2020] Aad8pUi

http://compilemosfacil.blogspot.com.br

Voltar ao Topo Ir em baixo

TUTORIAL Re: Sistema de Yu-Gi-Oh! - ATT [2020]

Mensagem por Giwn em Qui Jun 27, 2019 1:44 am

Muito brabo! faz o tutorial!

Giwn
Iniciante
Iniciante

Masculino PONTOS : 1126
REPUTAÇÃO : 10
Idade : 16
Áreas de atuação : Programação e Modelagem
Respeito as regras : Sistema de Yu-Gi-Oh! - ATT [2020] WvDYdlf

Voltar ao Topo Ir em baixo

TUTORIAL Re: Sistema de Yu-Gi-Oh! - ATT [2020]

Mensagem por NKKF em Qui Jun 27, 2019 2:46 pm

Inspiração em desenvolver e programar.. :')
NKKF
NKKF
ProgramadorMaster

Masculino PONTOS : 2877
REPUTAÇÃO : 500
Idade : 15
Áreas de atuação : Resolver problemas
Respeito as regras : Sistema de Yu-Gi-Oh! - ATT [2020] Aad8pUi

Voltar ao Topo Ir em baixo

TUTORIAL Re: Sistema de Yu-Gi-Oh! - ATT [2020]

Mensagem por rafaelllsd em Sex Jun 28, 2019 3:38 am

Curto muito o jogo e gostaria de ver os tutoriais, só fiquei com dúvida em 2 coisas:
-A partir de qual versão da unity vai servir o tutorial.
-E se é necessário ter algum tipo de conhecimento em SQLite.
rafaelllsd
rafaelllsd
ProgramadorMaster

Masculino PONTOS : 3500
REPUTAÇÃO : 485
Idade : 19
Áreas de atuação : Unity, Audacity, Blender, Gimp, C#, JS, MySQL.

Respeito as regras : Sistema de Yu-Gi-Oh! - ATT [2020] Aad8pUi

Voltar ao Topo Ir em baixo

TUTORIAL Re: Sistema de Yu-Gi-Oh! - ATT [2020]

Mensagem por artplayer em Sex Jun 28, 2019 5:22 am

É divertido trabalhar com bd, mas pra ser sincero não curto a ideia de trabalhar com banco direto na unity. 
Mas é muito útil se você precisar acessar o banco externamente através de um webrequest ou alguma api pra mascarar o Sql, dados de acesso ao banco e etc.
artplayer
artplayer
Instrutor

Masculino PONTOS : 2389
REPUTAÇÃO : 396
Idade : 35
Respeito as regras : Sistema de Yu-Gi-Oh! - ATT [2020] Aad8pUi

https://artplayergames.com

Voltar ao Topo Ir em baixo

TUTORIAL Re: Sistema de Yu-Gi-Oh! - ATT [2020]

Mensagem por MayLeone em Sex Jun 28, 2019 2:46 pm

@Giwn
Farei!!

@NKKF
:')

@rafaelllsd
- A partir do Unity 5
- Na verdade não precisa saber muito não, basta ter uma noção básica de banco de dados (query e construção de tabelas) porque o resto eu vou explicar tudo com detalhes no tutorial.

@artplayer
Sim. Eu apenas queria um local para registrar as cartas sem ter que fazer isso com milhões de prefabs pela Unity.
Pensei em usar JSON para armazenar as informações das cartas, mas percebi que ia escrever bem mais, por isso optei pelo SQLite, mas só com o propósito de guardar as propriedades das cartas do jogo.
MayLeone
MayLeone
Instrutor

Feminino PONTOS : 1626
REPUTAÇÃO : 421
Áreas de atuação : Unity & C#
Respeito as regras : Sistema de Yu-Gi-Oh! - ATT [2020] Aad8pUi

http://compilemosfacil.blogspot.com.br

Voltar ao Topo Ir em baixo

TUTORIAL Re: Sistema de Yu-Gi-Oh! - ATT [2020]

Mensagem por Callyde Jr em Sex Jun 28, 2019 9:17 pm

Parabens MayLeone muito bom
Claro que um tutorial vai ser bom por que desse modo ou outros modo de jogo teremos ideias inovadoras.
Callyde Jr
Callyde Jr
Programador

Masculino PONTOS : 3341
REPUTAÇÃO : 410
Idade : 41
Áreas de atuação : Iniciante em modelagem Blender,Sketchup
Programador
Idealista

Meu Canal
https://www.youtube.com/ch
Respeito as regras : Sistema de Yu-Gi-Oh! - ATT [2020] WvDYdlf

http://unnygames.000webhostapp.com/

Voltar ao Topo Ir em baixo

TUTORIAL Re: Sistema de Yu-Gi-Oh! - ATT [2020]

Mensagem por MayLeone em Sab Jun 29, 2019 8:19 pm

@Callyde Jr escreveu:Parabens MayLeone muito bom
Claro que um tutorial vai ser bom por que desse modo ou outros modo de jogo teremos ideias inovadoras.
 Estou pensando em fazer sim!!
MayLeone
MayLeone
Instrutor

Feminino PONTOS : 1626
REPUTAÇÃO : 421
Áreas de atuação : Unity & C#
Respeito as regras : Sistema de Yu-Gi-Oh! - ATT [2020] Aad8pUi

http://compilemosfacil.blogspot.com.br

Voltar ao Topo Ir em baixo

TUTORIAL Re: Sistema de Yu-Gi-Oh! - ATT [2020]

Mensagem por MayLeone em Dom Jun 30, 2019 4:56 pm

Update:

1. Coloquei pra instanciar as cartas da AI viradas pra baixo;
2. Refatorei o código pra caramba, pra ficar melhor no tutorial e para ter suporte para mais decks futuros;
3. Animação da compra das cartas mais dinâmica;
4. + Cartas adicionadas ao jogo (incluindo pro deck da AI):

MayLeone
MayLeone
Instrutor

Feminino PONTOS : 1626
REPUTAÇÃO : 421
Áreas de atuação : Unity & C#
Respeito as regras : Sistema de Yu-Gi-Oh! - ATT [2020] Aad8pUi

http://compilemosfacil.blogspot.com.br

Voltar ao Topo Ir em baixo

TUTORIAL Re: Sistema de Yu-Gi-Oh! - ATT [2020]

Mensagem por MayLeone em Sab Jul 27, 2019 4:21 pm

Tópico atualizado.
MayLeone
MayLeone
Instrutor

Feminino PONTOS : 1626
REPUTAÇÃO : 421
Áreas de atuação : Unity & C#
Respeito as regras : Sistema de Yu-Gi-Oh! - ATT [2020] Aad8pUi

http://compilemosfacil.blogspot.com.br

Voltar ao Topo Ir em baixo

TUTORIAL Re: Sistema de Yu-Gi-Oh! - ATT [2020]

Mensagem por SteveRogers em Sab Jul 27, 2019 5:24 pm

Simplesmente perfeito! obrigado por compartilhar.
ps: você fica muito bem de laranja.
SteveRogers
SteveRogers
ProgramadorMaster

Masculino PONTOS : 867
REPUTAÇÃO : 101
Respeito as regras : Sistema de Yu-Gi-Oh! - ATT [2020] Aad8pUi

Voltar ao Topo Ir em baixo

TUTORIAL Re: Sistema de Yu-Gi-Oh! - ATT [2020]

Mensagem por MayLeone em Seg Jul 29, 2019 12:47 am

@SteveRogers escreveu:Simplesmente perfeito! obrigado por compartilhar.
ps: você fica muito bem de laranja.
Olá! Que bom que gostou tanto assim! Amanhã estarei postando o código no Git!!
E eu também me gostei de laranja xD
MayLeone
MayLeone
Instrutor

Feminino PONTOS : 1626
REPUTAÇÃO : 421
Áreas de atuação : Unity & C#
Respeito as regras : Sistema de Yu-Gi-Oh! - ATT [2020] Aad8pUi

http://compilemosfacil.blogspot.com.br

Voltar ao Topo Ir em baixo

TUTORIAL Re: Sistema de Yu-Gi-Oh! - ATT [2020]

Mensagem por MayLeone em Ter Ago 13, 2019 4:26 pm

Como prometido, link de download para jogar a DEMO (64 bits):

https://mega.nz/#!lawUGSJa!9UtT2OEqbuTisNxzZMaoJY-DshpNBUXDFm1VVNch9To

Código open source no github (ainda vou melhorar algumas coisas no code, usem para estudos):

https://github.com/mayleone1994/YuGiOh-System/tree/master/YuGiOh_System/Assets/Scripts

Essas são as versões que tem no vídeo, em breve adiconarei as spells e traps, o deck viewer e o character select.
MayLeone
MayLeone
Instrutor

Feminino PONTOS : 1626
REPUTAÇÃO : 421
Áreas de atuação : Unity & C#
Respeito as regras : Sistema de Yu-Gi-Oh! - ATT [2020] Aad8pUi

http://compilemosfacil.blogspot.com.br

Voltar ao Topo Ir em baixo

TUTORIAL Re: Sistema de Yu-Gi-Oh! - ATT [2020]

Mensagem por MayLeone em Ter Dez 03, 2019 6:55 pm

ATUALIZAÇÕES - 03/12

E aí pessoal, como vão? Depois de muitos meses sem mexer no projeto, hoje finalmente eu pude dar aquela atualizada que eu mais gostaria de dar (agora com PC novo é só alegria). Confira abaixo as novidades:

1. Seleção de Personagens:
Com a seleção de personagens agora é possível jogar contra outros oponentes além daquele de testes! Isso significa que você terá mais possibilidades de jogadores para desafiar, decks diferentes e cartas novas!!
O sistema te possibilita criar decks diferentes para cada jogador, dessa forma, você pode ter vários oponentes diferentes para duelar contra, pois a AI é genérica e vai saber lidar com qualquer deck que ela tiver disponível.
Os personagens adicionados na versão DEMO foram:




  • Shade (O jogador padrão de AI do primeiro teste
  • Rex Raptor e seu deck de zumbi + dinossauros
  • Weevil Underwood e seu deck de insetos
  • Mai Valentine e seu deck de Harpias e Fadas
  • Bandit Keith e seu deck de feras
  • Yami Bakura e seu deck defensivo e dark
  • Pegasus e seu deck apelativo xD
  • Isis Ishtar e seu deck de água
  • Seto Kaiba e seu deck dragão (sim, tem o Blue Eyes)
  • Heishin e seu deck imbatível (não dá pra ganhar dele, que sacanagem né)



Screenshoot da seleção de personagens:
Spoiler
Sistema de Yu-Gi-Oh! - ATT [2020] V3kpOwm






2. Mais opções de ações:
Além de setar suas cartas para cima ou para baixo e cancelar a ação na DrawPhase, o jogador também pode agora ler a descrição da carta selecionada e o mais legal de tudo: Descartar a carta também!  Sistema de Yu-Gi-Oh! - ATT [2020] Capitarickas
Com o sistema de descarte é possível eliminar cartas da sua mão que você julgue "inúteis" e na próxima vez que você comprar, você ganhará novas cartas referente à quantidade de cartas descartas. Por exemplo: Se descartar 3 cartas, na próxima rodada você comprará novas 3 cartas.
Esse sistema é similar do que já temos no Yu-Gi-Oh Forbbiden Memories, mas nesse caso o jogador descarta as cartas fundido elas erradamente de propósito.

Para abrir a janela das novas opções, clique na carta com o lado direito do mouse!

Screenshoot das novas opções:
Spoiler
Sistema de Yu-Gi-Oh! - ATT [2020] DUpJFzw






3. Cartas de Spells!!
Essa sem dúvidas era a notícia que eu mais gostaria de anunciar para vocês! Agora o sistema conta com cartas mágicas (spells) para serem jogadas e terem seus efeitos ativados, mudando totalmente o rumo da partida!
Todo o sistema já está pronto pra receber as spells (adição ao board, ativação do seu respectivo efeito, prefab da carta e etc).
Para testes eu já criei duas spells: Raigeki e Dark Hole e elas já estão com seus efeitos criados e funcionando ingame!!  Sistema de Yu-Gi-Oh! - ATT [2020] Wow Sistema de Yu-Gi-Oh! - ATT [2020] Wow
Por enquanto apenas o player principal pode ativar spells, pois para a AI ainda preciso fazer um algoritmo para ela "pensar" qual o melhor momento para ativar a spell na partida, mas em breve estarei fazendo isso.

Screenshoots da spell no jogo:

Sistema de Yu-Gi-Oh! - ATT [2020] 3vlV6VE

Dark Hole ativado:
Sistema de Yu-Gi-Oh! - ATT [2020] C6xJWeR






O que tem por vir:
Mas as novidades não param por aí! Ainda pretendo melhorar algumas decisões da AI para deixar ela mais precisa, adicionar outras cartas spells além dessas duas, colocar a possibilidade de cartas Traps e Fields, fazer um sistema de Deck Viewer e possibilitar a AI de jogar cartas mágicas e descartar cartas da mão.

Em breve mais atualizações e links para download.
MayLeone
MayLeone
Instrutor

Feminino PONTOS : 1626
REPUTAÇÃO : 421
Áreas de atuação : Unity & C#
Respeito as regras : Sistema de Yu-Gi-Oh! - ATT [2020] Aad8pUi

http://compilemosfacil.blogspot.com.br

Voltar ao Topo Ir em baixo

TUTORIAL Re: Sistema de Yu-Gi-Oh! - ATT [2020]

Mensagem por MayLeone em Sex Dez 20, 2019 8:41 pm



Olá pessoal, quanto tempo que não posto nada por aqui, não?
Pois bem, hoje trago a vocês um novo vídeo do meu sistema de YGO na Unity, dessa vez com um novo personagem (Rex Raptor e seu deck Zombie/Dinosaur/Rock) e com a adição das cartas mágicas, equipamentos e fields! Também uma pequena reformulação no layout de batalha: agora mostra-se a descrição das cartas na interface gráfica abaixo da imagem da carta, o nome do Field ativo, o botão de "End Turn" está num local mais apropriado, e o Tipo da carta é mostrado na interface gráfica agora ("Dragon", "Pyro" e etc).
Também foi adicionado um sistema de descarte caso você queira se livrar de cartas que julga ser "inúteis no momento" e assim, na próxima rodada você terá cartas novas referente a quantidade de cartas descartadas anteriormente.
A inteligência artificial também foi melhorada com relação a algumas escolhas, ficou mais rápida para "pensar", ela também pode jogar cartas mágicas, fields ou equipar seus monstros (então cuidado!), agora ela também ataca com cartas defensivas se achar necessário
e vários bugs foram corrigidos em torno dela (assim espero).
No momento da batalha, os pontos de ataque ou defesa dos monstros são mostrados atualizados, ou seja, conforme os acrescimos e decrescimos devido a cartas de fields, equipamentos ou outras cartas mágicas. Monstros que tiveram seus pontos aumentados aparecem com os mesmos em VERDE na interface gráfica, e decrementados aparecem em VERMELHO.
Além de Rex Raptor, foram adicionados outros personagens ao sistema com decks diferentes: Weevil Underwood, Mai Valentine, Bandit Keith, Yami Bakura, Isis Ishtar, Seto Kaiba, Max Pegasus e Heishin. Portanto, agora temos um sistema simples de seleção de personagens.
Em breve irei adicionar as cartas armadilhas (Traps) e um Deck Viewer, portanto aguarde por atualizações e links para download!
MayLeone
MayLeone
Instrutor

Feminino PONTOS : 1626
REPUTAÇÃO : 421
Áreas de atuação : Unity & C#
Respeito as regras : Sistema de Yu-Gi-Oh! - ATT [2020] Aad8pUi

http://compilemosfacil.blogspot.com.br

Voltar ao Topo Ir em baixo

TUTORIAL Re: Sistema de Yu-Gi-Oh! - ATT [2020]

Mensagem por MayLeone em Qua Jan 29, 2020 7:09 pm

Novidades - 2020

Alô! Como tem passado? Primeiramente um feliz ano novo super atrasado.
Hoje trago novidades para o projeto, não andei trabalhando muito nele nesses últimos dias por conta de uns problemas pessoais, mas temos atualizações mesmo assim:

1. Cartas traps (armadilhas) adicionadas ao projeto, finalmente   Sistema de Yu-Gi-Oh! - ATT [2020] Rd4l6h9
Agora é possível jogar essas cartas para impedir o ataque do seu inimigo ou que alguma carta dele venha a campo!
A AI também pode jogar cartas de armadilha, então redobre o cuidado!
Assim como no Forbbiden Memories, as armadilhas se ativam automaticamente na ordem em que elas foram colocadas em campo.

Traps adicionadas ao banco de dados:

Sistema de Yu-Gi-Oh! - ATT [2020] J86C2v1Sistema de Yu-Gi-Oh! - ATT [2020] BnMxktaSistema de Yu-Gi-Oh! - ATT [2020] O9yj69oSistema de Yu-Gi-Oh! - ATT [2020] 1l44NEUSistema de Yu-Gi-Oh! - ATT [2020] Lyc40sESistema de Yu-Gi-Oh! - ATT [2020] KXqZtcb

2. Também fiz com que as cartas que estejam batalhando fiquem em evidência antes que a animação de batalha ocorra ou as traps sejam ativadas, dessa forma o jogador terá noção de quais cartas foram selecionadas pela AI para batalhar, por exemplo.

3.  Sistema de Yu-Gi-Oh! - ATT [2020] Headphones Músicas e efeitos sonoros adicionados, chega de ficar tudo mudo!

4. Também adicionei um scrollbar na interface gráfica onde mostra a descrição da carta, caso o texto da mesma fique muito grande:

Sistema de Yu-Gi-Oh! - ATT [2020] I4colfv

5. Sem dizer os bugs corrigidos e refatorações no código que eu fiz, então acho que por hoje está bom! :D
MayLeone
MayLeone
Instrutor

Feminino PONTOS : 1626
REPUTAÇÃO : 421
Áreas de atuação : Unity & C#
Respeito as regras : Sistema de Yu-Gi-Oh! - ATT [2020] Aad8pUi

http://compilemosfacil.blogspot.com.br

Voltar ao Topo Ir em baixo

Voltar ao Topo


 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum