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:
Maximizar view da cam
Tem como fazer o inimigo andar até dar de cara com o player?
Tirar foto e exportar pro jogo
Trocar de cena ao matar inimigo
Mudar qualidade das texturas por código?
[Projeto] Jogo Ambientado no Brasil para Android
Como criar um botãoUI que liga e desliga uma lista de objetos?
Unity - Imagem no formato de um triângulo?
Gráficos estilo Genshin
level system problema
Como calcular distância entre dois pontos
Posicao do objeto diferente do setado no codigo
Sistema de pulo 3D
Procuro programador Unity para jogo 2D
Pessoal saiu a versão de testes do meu novo jogo, o Sanatório Macabro
Cinemachine - trocar de camera usando uma tecla e mouse 'lockScreen'
Sistema completo de nivel com XP + PayTime
Limitar arrays e fazer sortear um valor apenas uma vez
Como faço para variável voltar para o valor inicial
Duvida com getAxis
Fazer um detetive para sair apenas 1 vez o resultado do sorteio
Jogos NTFs
Salvar variável temporária com PlayerPrefs!?
Alguém sabe fazer uma AI para o inimigo seguir o Player em um jogo Top Down
Bug com modelo ficando invisível
Erro em sistema de dialogo...
Terreno Procedural
sistema de estamina,vida,fome e sede
Posição do object diferente do código quando está em tempo real!?
FORMACAO DE EQUIPE
sistema de câmera + movimentação do player
Erro no Photon Pun 2 (InvalidCastException: Specified cast is not valid)
Procuro modelador 3D para futuro Game
A procura de um MODELADOR pra desenvolver jogo pra estudo.
Script do marcos (Como colocar um limite de Spawn)
Multiplayer
Photon 2 outros Players
QR Code + Unity + KinderOvo (Opinião)
Colisão 2d
Câmera Primeira pessoa / Movimentação
Polígonos do modelo são destorcidos ao importar na unity, como resolver?
Ativar luz e objeto sumir
duvida sobre servidor
Como converter um projeto da Unity para o PlayCanvas?
Sistema de inventario
Alguem me ajuda, minha animaçao depois de um tempo congela
COMO TROCAR FORMA DE ATAQUE DO (CLICK DO MOUSE para BOTÃO UI MOBILE)
problemas com rotacao da camera!!
Dúvida com Procedural mesh e Bezier Curves
Sols Like Projeto iniciando!
[TUTORIAL] AI Enemy 2.0 + animações ( Jogos de terror )
crowdfunding para jogos
Colisão realista?
Sobreposição de mapa de luz, gerar mapa de luz?
Script único para todos os veículos no jogo?
Como procurar um lugar vazio para spawnar monstro
Como eu posso fazer uma cutscene ilustrada com imagens?
Erro com rotacao de objeto
Veiculos Para o Unity!
Objetos de outras cenas
Como alterar a Speed da anim por código?
Verificar espaco se ocupado ou nao e limitar as instancias!!
pegar fiho de objeto instanciado!!!
alterar cor via script
[DÚVIDA] Câmera estilo FNAF
instanciar com rotacao!!
Problema com canvas/panel e objetos
ANIMAL fugir
Seguir ponto por trigger
Novo input system
Procuro programador para Sistema de Pets na Unity
[TUTORIAL] Sistema de tiro com RAYCAST (várias armas, mira laser, munição, dano, etc, etc)
Dúvidas em geral - Como faço para colocar os gráficos estilo jogos antigos?
Movimentação PointerDown e PointerUp em peças spawn com botões UI
points linerenderer
Problemas em dividir controles em multiplayer
Jogador salvar controle
[TUTORIAL] State Machine mas simples do universo kkkk
Procuro programador para JOGO DE TERROR
Fazer pontuação aparecer momentaneamente e sumir dando erro
Alguém sabe reproduzir esse efeito do video na Unity?
Multiplayer com Unity + NOde
Clique duplo em um botão?
Como criar um objeto só quando colider com outro?
[TUTORIAL] Agachar, correr e sistema de estamina ( C# )
Objetos de outras cenas
O jogo bugou e os sliders e o joystick não estão funcionando, apenas botões
Component Cloth unity
Como reproduzir efeito "respirar" ao parar a camera
[TUTORIAL] Reconhecimento de dinheiro
Informações que ficam salvas para chamar em outras cenas (Idioma, Nick)
Limitar movimento da camera com imput android!!
Como fazer texto do Script entrar no UI
SOU MODELADOR DE MODELOS LOW POLY MEDIUM PRECISANDO E SO CHAMAR
jogo de corrida
[SCRIPT] Ler Texto em .TXT Por Chave
ajuda com sincronização jogo de botão
IA para multiplos inimigos
Como fazer um modo multiplayer em um jogo que está off-line?
Hoje à(s) 7:19 pm
Hoje à(s) 6:42 pm
Hoje à(s) 4:19 pm
Ontem à(s) 9:02 pm
Ontem à(s) 10:17 am
Ontem à(s) 8:21 am
Qui Dez 02, 2021 8:38 pm
Qui Dez 02, 2021 4:39 pm
Qui Dez 02, 2021 12:00 pm
Ter Nov 30, 2021 3:52 pm
Ter Nov 30, 2021 12:14 pm
Seg Nov 29, 2021 5:18 pm
Seg Nov 29, 2021 5:17 pm
Seg Nov 29, 2021 1:17 pm
Dom Nov 28, 2021 11:52 am
Dom Nov 28, 2021 1:30 am
Sab Nov 27, 2021 4:57 am
Sex Nov 26, 2021 5:53 pm
Sex Nov 26, 2021 12:16 pm
Qui Nov 25, 2021 6:15 pm
Qui Nov 25, 2021 3:31 pm
Qua Nov 24, 2021 2:01 am
Ter Nov 23, 2021 5:11 pm
Ter Nov 23, 2021 3:48 pm
Ter Nov 23, 2021 1:12 pm
Ter Nov 23, 2021 12:38 pm
Seg Nov 22, 2021 3:20 pm
Seg Nov 22, 2021 2:29 am
Dom Nov 21, 2021 12:52 pm
Dom Nov 21, 2021 11:02 am
Dom Nov 21, 2021 3:36 am
Sab Nov 20, 2021 10:35 pm
Sex Nov 19, 2021 11:54 pm
Sex Nov 19, 2021 11:51 pm
Sex Nov 19, 2021 11:08 pm
Sex Nov 19, 2021 7:08 pm
Sex Nov 19, 2021 5:23 pm
Sex Nov 19, 2021 12:57 pm
Qui Nov 18, 2021 7:12 pm
Qui Nov 18, 2021 10:37 am
Qui Nov 18, 2021 10:17 am
Seg Nov 15, 2021 11:18 pm
Seg Nov 15, 2021 11:15 pm
Seg Nov 15, 2021 10:13 am
Seg Nov 15, 2021 9:48 am
Qui Nov 11, 2021 8:49 pm
Qui Nov 11, 2021 1:31 pm
Qui Nov 11, 2021 7:31 am
Qua Nov 10, 2021 8:19 pm
Ter Nov 09, 2021 7:05 pm
Ter Nov 09, 2021 5:05 pm
Ter Nov 09, 2021 4:11 pm
Ter Nov 09, 2021 1:07 pm
Seg Nov 08, 2021 7:36 pm
Dom Nov 07, 2021 8:44 pm
Sab Nov 06, 2021 10:51 pm
Sex Nov 05, 2021 10:04 pm
Sex Nov 05, 2021 7:50 pm
Sex Nov 05, 2021 3:48 pm
Sex Nov 05, 2021 10:24 am
Sex Nov 05, 2021 2:13 am
Qui Nov 04, 2021 6:48 pm
Qui Nov 04, 2021 6:09 pm
Qui Nov 04, 2021 5:39 pm
Qui Nov 04, 2021 5:00 pm
Qui Nov 04, 2021 3:55 pm
Qui Nov 04, 2021 2:45 pm
Qui Nov 04, 2021 4:56 am
Qua Nov 03, 2021 4:04 pm
Qua Nov 03, 2021 3:54 pm
Qua Nov 03, 2021 11:48 am
Qua Nov 03, 2021 8:18 am
Ter Nov 02, 2021 6:02 pm
Ter Nov 02, 2021 5:42 pm
Ter Nov 02, 2021 10:55 am
Ter Nov 02, 2021 10:44 am
Seg Nov 01, 2021 9:40 pm
Seg Nov 01, 2021 7:32 pm
Seg Nov 01, 2021 1:01 pm
Seg Nov 01, 2021 11:21 am
Dom Out 31, 2021 2:39 pm
Sab Out 30, 2021 3:05 pm
Sab Out 30, 2021 2:43 pm
Sab Out 30, 2021 2:40 pm
Sab Out 30, 2021 11:23 am
Qui Out 28, 2021 12:04 pm
Qua Out 27, 2021 7:49 pm
Qua Out 27, 2021 7:47 pm
Qua Out 27, 2021 3:11 pm
Qua Out 27, 2021 2:51 pm
Ter Out 26, 2021 6:01 pm
Ter Out 26, 2021 5:49 pm
Seg Out 25, 2021 8:53 pm
Seg Out 25, 2021 8:17 pm
Seg Out 25, 2021 7:33 pm
Seg Out 25, 2021 1:57 am
Dom Out 24, 2021 8:10 pm
Dom Out 24, 2021 5:36 pm
Dom Out 24, 2021 12:48 pm
Joana
ryanmorj16
giowde
MayLeone
stratengine
Crash Psycho
verme1311
MayLeone
Gabriel M
Valakinhas
Xavier
JãoArts
JãoArts
joaozinpedrin
Patrick
jeronimo Collares
M4x
EricknhYT
Charlesoff
capim22
EricknhYT
artplayer
M4x
M4x
Charlesoff
NoctisDregon
SgtMatuto
Pkneves
M4x
classicandsimple
Pkneves
EricknhYT
SeTk
SeTk
verme1311
Gamergame
claudiano2020
heyviic
joaozinpedrin
Gamergame
Crash Psycho
Zack2
Zack2
Atho
igorobm
Fzinx
igorobm
capim22
AgrrgA
hellside
Zack2
Zack2
igorobm
NoctisDregon
ProBrStalker
igorobm
brunort1
Zack2
Herovine Hl
Zack2
igorobm
capim22
Zack2
Zack2
Zack2
Zack2
joaozinpedrin
MadCow
eduardonog30
Zack2
Etoeu
junio132sj
Pedro432Joao
HugoTavares
Charlesoff
Charlesoff
Zack2
hendrick22
Cristhofer Marques
eduardonog30
AmazingDeliciano
Vorzoolvan
M4x
FelipeSouza11
Herovine Hl
joaozinpedrin
JulioWinchester
capim22
Zack2
Zack2
TIKO
capim22
EricknhYT
claudiano2020
TIKO
FelipeSouza11
claudiano2020
Zack2
Dom3000

[TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado!

+7
Weslley
Cezar2016
Duarte
Dom3000
dipode
DuViDoSo
marcos4503
11 participantes

Ir para baixo

TUTORIAL [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado!

Mensagem por marcos4503 Qui Jun 15, 2017 1:08 pm

Bom. Marcos estava em mais uma de suas andanças pela internet, ele procurava conhecer mais da classe System.IO do unity.. Ele queria aprender a manipular arquivos na memoria do dispositivo.. Acidentalmente (ele derrubou o elemento X) ele encontrou um link nos fóruns em inglês da Unity, que ensinava como fazer um Save persistente de jogo, o sisteminha salva os dados do jogo no formato DAT, na memoria do dispositivo, com criptografia, para evitar de usuarios mais leigos editarem o arquivo e adicionar umas moedinhas a mais..


Bom! Achei isso fantastico, e hoje to resolvendo trazer pra vocês esse sisteminha.


Prós
- Possui criptografia
- Funciona em Android, PC, IOs etc..
- Salva tudo num arquivo externo, com a estrutura de um arquivo DAT, mais você pode alterar o formato pra dar aquela enganada, para que ninguem manipule o arquivo, assim possibilitando para que o jogador faça backup do seu progresso!
- É 10000000000X mais prático do que o PlayerPrefs
- Pode salvar variaveis String, Bool, Int, Float, Double etc.. (Isso mesmo, Booleanas!!)

Contras
- Não conheço bem esse sistema (Vi várias pessoas falando bem dele no fórum em ingles da Unity, ele parece ser bem útil, pratico e seguro)
- A criptografia talvez possa ser quebrada por usuarios mais avançados. Talvez algum usuario mais avançado possa usar um programa para editar o arquivo do jogo, mais fiz várias pesquisas por isso e não encontrei nada. Fora que esse tal usuario teria que dedicar muito tempo pra descobrir que se trata de um arquivo DAT.
- O jogador pode perder todo seu progresso em caso de corrupção do arquivo, ou até mesmo em caso do jogo ser encerrado durante o salvamento (se seu jogo é mais complexo, você pode criar um sisteminha de backup e restauração pro arquivo de save.)

Nível do tutorial: Intermediário

Bom. Dito isso tudo, vamos pra diversão..

(Eu empacotei tudo em um asset que você pode baixar e usar para estudar. Só possui 1 script, e uma cena com alguns botões pra você manipular e testar o esqueminha, o script esta totalmente comentado.)


Download:
http://www.mediafire.com/file/bmck7dk601wh4gk/exemploSaveGame.unitypackage

Para importar para seu projeto, é só ir na Aba "Assets" > "Import Package" > "Custom Package" e selecionar o local onde esta o arquivo do asset, que voce acabou de baixar.

Observação rápida: Em caso de PC, o arquivo é salvo na pasta "AppData", no Android, o arquivo é salvo na pasta "Data", no mesmo diretorio da "Obb".


Tem uma dúvida? Comente aqui e eu vou tentar te responder!!


PS: Tentei editar o arquivo de algumas formas, alterando os valores das variaveis e tal. Sempre que editei o arquivo o Unity dava erro. Resumindo, sempre que eu tento editar o arquivo, o arquivo é corrompido.


Última edição por marcos4503 em Qui Jun 15, 2017 10:29 pm, editado 1 vez(es)
marcos4503
marcos4503
Instrutor

Masculino PONTOS : 3986
REPUTAÇÃO : 578
Idade : 22
Áreas de atuação :
Programação, Mobile, Web e Design.

Veja meus assets para Unity!
https://windsoft.xyz/mtassets


Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! Aad8pUi

http://windsoft.xyz

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado!

Mensagem por DuViDoSo Qui Jun 15, 2017 7:51 pm

Maravilhoso, lindo... Cara eu te amo!! e nois vlw. isso me ajudar pacas.
DuViDoSo
DuViDoSo
Modelador

Masculino PONTOS : 2696
REPUTAÇÃO : 169
Idade : 22
Áreas de atuação : Programador em C#, Desenvolvedor Indie.
Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! WvDYdlf

http://www.naotenho.com.br

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado!

Mensagem por marcos4503 Qui Jun 15, 2017 10:28 pm

Opa!! Achei isso super interessante e útil e resolvi compartilhar com vocês! Sucesso!!
marcos4503
marcos4503
Instrutor

Masculino PONTOS : 3986
REPUTAÇÃO : 578
Idade : 22
Áreas de atuação :
Programação, Mobile, Web e Design.

Veja meus assets para Unity!
https://windsoft.xyz/mtassets


Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! Aad8pUi

http://windsoft.xyz

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado!

Mensagem por dipode Qui Jun 15, 2017 10:44 pm

sabe que criptografia utiliza?
dipode
dipode
Avançado
Avançado

PONTOS : 2523
REPUTAÇÃO : 39
Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! WvDYdlf

https://github.com/perdugames

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado!

Mensagem por marcos4503 Qui Jun 15, 2017 10:56 pm

Então, tipo, não sei se é beeem uma criptografia, eu utlizei este termo, porque eu dei uma pesquisada e o Unity monta o arquivo com uma estrutura do tipo DAT, que é um arquivo usado por programas para salvar dados. Mais é aí que ta.. Cada programa (no caso a Unity) salva o DAT da sua propria forma ou seja, com uma estrutura propria, o que faz o arquivo ter uma certa criptografia. Por isso não sei bem qual é a criptografia do Unity, só sei que é DAT. Posso estar errado, mais isso foi o que eu aprendi pesquisando e tals
marcos4503
marcos4503
Instrutor

Masculino PONTOS : 3986
REPUTAÇÃO : 578
Idade : 22
Áreas de atuação :
Programação, Mobile, Web e Design.

Veja meus assets para Unity!
https://windsoft.xyz/mtassets


Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! Aad8pUi

http://windsoft.xyz

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado!

Mensagem por dipode Qui Jun 15, 2017 11:39 pm

@marcos4503 escreveu:Então, tipo, não sei se é beeem uma criptografia, eu utlizei este termo, porque eu dei uma pesquisada e o Unity monta o arquivo com uma estrutura do tipo DAT, que é um arquivo usado por programas para salvar dados. Mais é aí que ta.. Cada programa (no caso a Unity) salva o DAT da sua propria forma ou seja, com uma estrutura propria, o que faz o arquivo ter uma certa criptografia. Por isso não sei bem qual é a criptografia do Unity, só sei que é DAT. Posso estar errado, mais isso foi o que eu aprendi pesquisando e tals
Entendi, e aqui:

Código:
DiretorioDoArquivo = Application.persistentDataPath + "/" + NomeDoArquivo + "." + FormatoDoArquivo;

Porque a linha acima está no update?
dipode
dipode
Avançado
Avançado

PONTOS : 2523
REPUTAÇÃO : 39
Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! WvDYdlf

https://github.com/perdugames

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado!

Mensagem por marcos4503 Qui Jun 15, 2017 11:42 pm

O ideal é que ela vá no Start, mais no meu projeto eu só coloquei ela no update em caso de um de voces mudar algum detalhe como nome ou formato, o diretorio na UI se atualizar! Só isso mesmo!
marcos4503
marcos4503
Instrutor

Masculino PONTOS : 3986
REPUTAÇÃO : 578
Idade : 22
Áreas de atuação :
Programação, Mobile, Web e Design.

Veja meus assets para Unity!
https://windsoft.xyz/mtassets


Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! Aad8pUi

http://windsoft.xyz

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado!

Mensagem por dipode Qui Jun 15, 2017 11:56 pm

@marcos4503 escreveu:O ideal é que ela vá no Start, mais no meu projeto eu só coloquei ela no update em caso de um de voces mudar algum detalhe como nome ou formato, o diretorio na UI se atualizar! Só isso mesmo!

De boa, vou dar uma estudada nisso aqui.
dipode
dipode
Avançado
Avançado

PONTOS : 2523
REPUTAÇÃO : 39
Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! WvDYdlf

https://github.com/perdugames

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado!

Mensagem por marcos4503 Sex Jun 16, 2017 12:01 am

Tranquilo! Se tiver mais alguma duvida, é só perguntar, eu acho que não expliquei direito no script.. Sou pessimo para explicar ;-;
marcos4503
marcos4503
Instrutor

Masculino PONTOS : 3986
REPUTAÇÃO : 578
Idade : 22
Áreas de atuação :
Programação, Mobile, Web e Design.

Veja meus assets para Unity!
https://windsoft.xyz/mtassets


Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! Aad8pUi

http://windsoft.xyz

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado!

Mensagem por dipode Sex Jun 16, 2017 1:05 am

@marcos4503 escreveu:Tranquilo! Se tiver mais alguma duvida, é só perguntar, eu acho que não expliquei direito no script.. Sou pessimo para explicar ;-;

Valeu, eu estava utilizando um sistema próprio, já tinha lido sobre isso, e visto esse aqui uns tempo atrás(é o video explicando como faz o script, é a mesma logica do seu, muda nada não, vou deixar aqui para quem quiser ver):

https://unity3d.com/pt/learn/tutorials/topics/scripting/persistence-saving-and-loading-data

mas ainda não estava na hora de criar o sistema de salve geral, ai nem liguei em usar o próprio, só para salvar onde estava sendo necessário, mas daqui uns dias vou ter que criar, vou ver se desse modo vai mais rápido kkkkk
dipode
dipode
Avançado
Avançado

PONTOS : 2523
REPUTAÇÃO : 39
Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! WvDYdlf

https://github.com/perdugames

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado!

Mensagem por marcos4503 Sex Jun 16, 2017 1:13 am

Belezura!
marcos4503
marcos4503
Instrutor

Masculino PONTOS : 3986
REPUTAÇÃO : 578
Idade : 22
Áreas de atuação :
Programação, Mobile, Web e Design.

Veja meus assets para Unity!
https://windsoft.xyz/mtassets


Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! Aad8pUi

http://windsoft.xyz

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado!

Mensagem por dipode Sex Jun 16, 2017 1:52 am

@marcos4503 escreveu:Belezura!

Mudei aqui para esse jeito, bem mais rápido que o meu criar string com variáveis, salvar em linha no arquivo, depois carregar dando um split nas linhas etc kkkkkkk agora vai rapidim, queria saber o que o método "Serialize" faz.
dipode
dipode
Avançado
Avançado

PONTOS : 2523
REPUTAÇÃO : 39
Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! WvDYdlf

https://github.com/perdugames

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado!

Mensagem por marcos4503 Sex Jun 16, 2017 9:33 am

Bom, pelo que eu aprendi pesquisando e lendo as documentações e tal, é que basicamente o serialization é um comando que o Unity usa pra meio que compactar dados num arquivo que ele possa editar, salvar e ler mais tarde. E por ai vai.. Aqui ta o link se quiser dar uma aprofundada:

https://docs.unity3d.com/Manual/script-Serialization.html
marcos4503
marcos4503
Instrutor

Masculino PONTOS : 3986
REPUTAÇÃO : 578
Idade : 22
Áreas de atuação :
Programação, Mobile, Web e Design.

Veja meus assets para Unity!
https://windsoft.xyz/mtassets


Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! Aad8pUi

http://windsoft.xyz

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado!

Mensagem por Dom3000 Sex Jun 16, 2017 11:59 am

cara vlw mesmo por compartilhar isso Smile
Dom3000
Dom3000
Programador

Masculino PONTOS : 3491
REPUTAÇÃO : 232
Idade : 26
Áreas de atuação : canal https://www.youtube.com/watch?v=yvmQEJUfbhQ
Page: https://www.facebook.com/BatlesofWorlds/

Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! WvDYdlf

https://www.instagram.com/battlesofworlds/?hl=pt-br

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado!

Mensagem por marcos4503 Sex Jun 16, 2017 12:15 pm

De nada man! Sempre que acho algo daora assim eu tento trazer pra galera aqui!!
marcos4503
marcos4503
Instrutor

Masculino PONTOS : 3986
REPUTAÇÃO : 578
Idade : 22
Áreas de atuação :
Programação, Mobile, Web e Design.

Veja meus assets para Unity!
https://windsoft.xyz/mtassets


Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! Aad8pUi

http://windsoft.xyz

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado!

Mensagem por Duarte Ter Fev 27, 2018 6:54 pm

Ola amigo, eu estou utilizando esse método para salvar meu game esta funcionando perfeitamente na Unity no Android ele não esta salvando.
Duarte
Duarte
Programador

Masculino PONTOS : 2270
REPUTAÇÃO : 97
Idade : 21
Áreas de atuação : Programação
Desenvolvedor Android
Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado!

Mensagem por marcos4503 Ter Fev 27, 2018 10:47 pm

Voce fez algum tipo de alteração no script?
marcos4503
marcos4503
Instrutor

Masculino PONTOS : 3986
REPUTAÇÃO : 578
Idade : 22
Áreas de atuação :
Programação, Mobile, Web e Design.

Veja meus assets para Unity!
https://windsoft.xyz/mtassets


Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! Aad8pUi

http://windsoft.xyz

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado!

Mensagem por Cezar2016 Ter Fev 27, 2018 11:12 pm

Muito bom o script amigo, mas tenho uma duvida. Podemos criar uma class dentro de outro ? e por que foi feito essa manobra.


Código:
[Serializable] //Nessa parte nós meio que formatamos o nosso arquivo, criando uma classse para isso. Aqui criamos as variaveis que serão adicionadas ao arquivo, e vale notar que você pode repetir nome de variaveis, desde que uma delas esteja fora dessa classe.
    class DadosDoJogo
    {
        public int Int;
        public float Float;
        public string String;
        public bool Bool;
    }

Cezar2016
Avançado
Avançado

Masculino PONTOS : 2021
REPUTAÇÃO : 28
Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado!

Mensagem por marcos4503 Qua Fev 28, 2018 6:21 am

Olha, nunca testei amigo, mais acredito que sim. Algo como:

Código:
[Serializable]
public class DadosDoJogo{

public bool Teste;

public class NovaClasse{

public bool Teste;

}

}
marcos4503
marcos4503
Instrutor

Masculino PONTOS : 3986
REPUTAÇÃO : 578
Idade : 22
Áreas de atuação :
Programação, Mobile, Web e Design.

Veja meus assets para Unity!
https://windsoft.xyz/mtassets


Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! Aad8pUi

http://windsoft.xyz

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado!

Mensagem por Dom3000 Qua Fev 28, 2018 8:28 am

@Cezar2016 escreveu:Muito bom o script amigo, mas tenho uma duvida. Podemos criar uma class dentro de outro ? e por que foi feito essa manobra.


Código:
[Serializable] //Nessa parte nós meio que formatamos o nosso arquivo, criando uma classse para isso. Aqui criamos as variaveis que serão adicionadas ao arquivo, e vale notar que você pode repetir nome de variaveis, desde que uma delas esteja fora dessa classe.
    class DadosDoJogo
    {
        public int Int;
        public float Float;
        public string String;
        public bool Bool;
    }

cara não da, ja tentei ,tem que colocar so na classe e separar por comentarios
Dom3000
Dom3000
Programador

Masculino PONTOS : 3491
REPUTAÇÃO : 232
Idade : 26
Áreas de atuação : canal https://www.youtube.com/watch?v=yvmQEJUfbhQ
Page: https://www.facebook.com/BatlesofWorlds/

Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! WvDYdlf

https://www.instagram.com/battlesofworlds/?hl=pt-br

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado!

Mensagem por Cezar2016 Qua Fev 28, 2018 11:04 am

@marcos4503 escreveu:Olha, nunca testei amigo, mais acredito que sim. Algo como:

Código:
[Serializable]
public class DadosDoJogo{

public bool Teste;

public class NovaClasse{

public bool Teste;

}

}

O que estou querendo dizer é, por que a class " DadosDoJogo " esta dentro da class " ScriptDeSave " por que não esta fora da class, tem alguma diferencia isso ? Seria algo novo para mim.

Cezar2016
Avançado
Avançado

Masculino PONTOS : 2021
REPUTAÇÃO : 28
Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado!

Mensagem por Weslley Qua Fev 28, 2018 11:24 am

Isso se chama Nested Types ou tipos aninhados! que também pode ser acessada por outras classes de acordo com seu modificador de acesso.


Última edição por Weslley em Qua Fev 28, 2018 1:01 pm, editado 1 vez(es)
Weslley
Weslley
Moderador

Masculino PONTOS : 4592
REPUTAÇÃO : 725
Idade : 23
Áreas de atuação : https://play.google.com/store/apps/dev?id=4937415175307699867
http://blurred.com.br/
Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! Aad8pUi

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado!

Mensagem por Cezar2016 Qua Fev 28, 2018 11:38 am

@Weslley escreveu:Isso se chama Nested Types ou tipos aninhados! que também pode ser acessada por outras variáveis de acordo com seu modificador de acesso.
hunnn valeu agora compreendo.

Cezar2016
Avançado
Avançado

Masculino PONTOS : 2021
REPUTAÇÃO : 28
Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado!

Mensagem por Samuelsk Qua Fev 28, 2018 12:28 pm

@marcos4503 escreveu:Bom. Marcos estava em mais uma de suas andanças pela internet, ele procurava conhecer mais da classe System.IO do unity.. Ele queria aprender a manipular arquivos na memoria do dispositivo.. Acidentalmente (ele derrubou o elemento X) ele encontrou um link nos fóruns em inglês da Unity, que ensinava como fazer um Save persistente de jogo, o sisteminha salva os dados do jogo no formato DAT, na memoria do dispositivo, com criptografia, para evitar de usuarios mais leigos editarem o arquivo e adicionar umas moedinhas a mais..


Bom! Achei isso fantastico, e hoje to resolvendo trazer pra vocês esse sisteminha.


Prós
- Possui criptografia
- Funciona em Android, PC, IOs etc..
- Salva tudo num arquivo externo, com a estrutura de um arquivo DAT, mais você pode alterar o formato pra dar aquela enganada, para que ninguem manipule o arquivo, assim possibilitando para que o jogador faça backup do seu progresso!
- É 10000000000X mais prático do que o PlayerPrefs
- Pode salvar variaveis String, Bool, Int, Float, Double etc.. (Isso mesmo, Booleanas!!)

Contras
- Não conheço bem esse sistema (Vi várias pessoas falando bem dele no fórum em ingles da Unity, ele parece ser bem útil, pratico e seguro)
- A criptografia talvez possa ser quebrada por usuarios mais avançados. Talvez algum usuario mais avançado possa usar um programa para editar o arquivo do jogo, mais fiz várias pesquisas por isso e não encontrei nada. Fora que esse tal usuario teria que dedicar muito tempo pra descobrir que se trata de um arquivo DAT.
- O jogador pode perder todo seu progresso em caso de corrupção do arquivo, ou até mesmo em caso do jogo ser encerrado durante o salvamento (se seu jogo é mais complexo, você pode criar um sisteminha de backup e restauração pro arquivo de save.)

Nível do tutorial: Intermediário

Bom. Dito isso tudo, vamos pra diversão..

(Eu empacotei tudo em um asset que você pode baixar e usar para estudar. Só possui 1 script, e uma cena com alguns botões pra você manipular e testar o esqueminha, o script esta totalmente comentado.)


Download:
http://www.mediafire.com/file/bmck7dk601wh4gk/exemploSaveGame.unitypackage

Para importar para seu projeto, é só ir na Aba "Assets" > "Import Package" > "Custom Package" e selecionar o local onde esta o arquivo do asset, que voce acabou de baixar.

Observação rápida: Em caso de PC, o arquivo é salvo na pasta "AppData", no Android, o arquivo é salvo na pasta "Data", no mesmo diretorio da "Obb".


Tem uma dúvida? Comente aqui e eu vou tentar te responder!!


PS: Tentei editar o arquivo de algumas formas, alterando os valores das variaveis e tal. Sempre que editei o arquivo o Unity dava erro. Resumindo, sempre que eu tento editar o arquivo, o arquivo é corrompido.



Compatível com qual versão da uUnity ?
Samuelsk
Samuelsk
Membro
Membro

Masculino PONTOS : 1569
REPUTAÇÃO : 17
Idade : 22
Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado!

Mensagem por NKKF Qua Fev 28, 2018 2:12 pm

Estou na Unity 2018 e funciona normalmente. (Eu acho que não funciona na 4.6)
NKKF
NKKF
ProgramadorMaster

Masculino PONTOS : 3648
REPUTAÇÃO : 542
Idade : 17
Áreas de atuação : Desenvolvedor na Unity, NodeJS, React, ReactJS, React Native, MongoDB e Firebase.
Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! Aad8pUi

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado!

Mensagem por marcos4503 Qua Fev 28, 2018 2:13 pm

@Samuelsk escreveu:


Compatível com qual versão da uUnity ?

Provavelmente é compatível com todas as versões da Unity..
marcos4503
marcos4503
Instrutor

Masculino PONTOS : 3986
REPUTAÇÃO : 578
Idade : 22
Áreas de atuação :
Programação, Mobile, Web e Design.

Veja meus assets para Unity!
https://windsoft.xyz/mtassets


Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! Aad8pUi

http://windsoft.xyz

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado!

Mensagem por Samuelsk Qua Fev 28, 2018 6:39 pm

Tentei abri  a "Cena de Exemplo" na Unity 5.3 e dizia que o Serialize não era compatível 
achei bem interessante sua explicação sobre ele, me interessei..mas n consegui abrir o exemplo e fico um pouco sem entender ele...
Samuelsk
Samuelsk
Membro
Membro

Masculino PONTOS : 1569
REPUTAÇÃO : 17
Idade : 22
Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado!

Mensagem por NKKF Qua Fev 28, 2018 6:51 pm

Eae Samuel, também tive um problema, porém, tem algumas coisas que não podem Serializar mesmo. Você baixou a cena padrão sem modificar nada?
NKKF
NKKF
ProgramadorMaster

Masculino PONTOS : 3648
REPUTAÇÃO : 542
Idade : 17
Áreas de atuação : Desenvolvedor na Unity, NodeJS, React, ReactJS, React Native, MongoDB e Firebase.
Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! Aad8pUi

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado!

Mensagem por Samuelsk Qua Fev 28, 2018 7:02 pm

Souris escreveu:Eae Samuel, também tive um problema, porém, tem algumas coisas que não podem Serializar mesmo. Você baixou a cena padrão sem modificar nada?

Sim, abri um New Project na 5.3 importei o Assets..e tentei abrir o exemplo e bang.. nada ._.
Samuelsk
Samuelsk
Membro
Membro

Masculino PONTOS : 1569
REPUTAÇÃO : 17
Idade : 22
Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! WvDYdlf

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado!

Mensagem por NKKF Sex Maio 25, 2018 6:05 pm

Pessoal, salvar o arquivo como TXT não seria a mesma coisa? Pois é possível uma leitura através do Notepad.
(É porque eu estou lendo dados através de um website, que retorna apenas texto UTF-Cool
Então, daria problemas?
NKKF
NKKF
ProgramadorMaster

Masculino PONTOS : 3648
REPUTAÇÃO : 542
Idade : 17
Áreas de atuação : Desenvolvedor na Unity, NodeJS, React, ReactJS, React Native, MongoDB e Firebase.
Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! Aad8pUi

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado!

Mensagem por Magnatah Sex Maio 25, 2018 7:39 pm

Vou Fazer Uns Testes Pra Ver Se é Bom.
Magnatah
Magnatah
Instrutor

Masculino PONTOS : 2271
REPUTAÇÃO : 151
Idade : 26
Áreas de atuação : Dєรєиvσlvєdσя Wєb(Fяσит-єиd), Blєиdєя, υиiтy, C#, ρнρ є Jαvαรcяiρт.
Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! Aad8pUi

https://www.instagram.com/ampercygames/

Ir para o topo Ir para baixo

TUTORIAL Re: [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado!

Mensagem por danielPedra90 Qui Nov 28, 2019 10:19 pm

Galera boa noite! Sou iniciante e estou desenvolvendo um projeto que já conta com sistema de fases e pontuação, baixei esse script e estou tentando adaptá-lo. Para tal, estou tentando usar o comando Get.Component<>(). para tentar trazer os valores das variáveis dos meus scprits... Alguém poderia me dar um apoio? Eu vou ter quer criar novas variáveis mesmo? Sendo que eu já as tenho num jogo que já roda pontuação?
Estou fazendo o seguinte: 

Código:
void Update () {


        VariavelDecimal = GetComponent<Tempo4>().segundos;
        VariavelInteira = GetComponent<Tempo4>().resultado2;


No editor não da erro, mas no inspector da NullReferenceException: Object reference not set to an instance of an object.

Antecipadamente agradeço!
Valeu!

danielPedra90
Membro
Membro

PONTOS : 998
REPUTAÇÃO : 4
Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! WvDYdlf

Ir para o topo Ir para baixo

Ir para o topo


 
Permissões neste fórum
Você não pode responder aos tópicos