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:
Dúvida com botoes
Simulador de policia [C#] [Jogo em andamento] [Procurando Equipe]
Ajuda simples no trigger
preciso de ajuda
Como faço pra interagir com objeto ao olhar pra ele?
Alguém tem ideia de como posso fazer a movimentação do Lampião?
Busco alguem pra fazer algumas programações basicas (PAGO EM DINHEIRO)
Realidade Virtual e Aumentada - onde tem?
Ativar animação ao se mover
[TUTORIAL] GameObject.FindWithTag ( Achar objetos na cena pelas Tags )
Colocar contagem regressiva
[TUTORIAL] Script de arma completo! [FREE]
Como faço pro carro só se mover quando eu engra no carro?
Como criar um cabo e realizar conexões
PLATAFORMA/COR ALEATORIA + AUMENTO DE VELOCIDADE
PRECISO DE UMA PESSOA QUE SAIBA MECHER COM ONLINE NO UNITY
Mudar cor ?
Ajuda com Colisão na Camera
Como limitar o ângulo que um objeto pode atingir com Quaternion.LookRotation?
The freddy krueger's pie (Game)
Como programar animações de fade in e fade out para botão no Unity
Iniciar script sem anexá-lo a um GameObject
IDLE game tutorial, alguem?
Unity3D - Realistic Fps Prefab 1.44,1.45 - Sistema de Veículos - EVP5
Como reduzir tamanho do .APK ?
nao consigo publicar um asset, me ajudem
Não Consigo salvar ao sair, se puderem ajudar
Duvida sobre animações
Efeito realista em textura
Salvar as auterações de um prefab em modo de jogo.
[TUTORIAL] Sistema de Suspenção a Ar para carros (WheelCollider)
Sistema de Escolher Frases no Dialogo
Como transformo a posição de um objeto em outra posição?
Como posso girar a câmera envolta do player com touch
[TUTORIAL] Salvar SCORE e substituir caso faça mais pontos.
Sistema de backup local "semi-automático".
[TUTORIAL] Sistema de DIA E NOITE completo, com luzes noturnas e SISTEMA DE NUVENS
Ofereço-me é diferente de formar equipes
[TUTORIAL] Unity 5 - Skid Marks (marcas de derrapagem)
[TUTORIAL] Sistema de FPS com Corpo
COMO MUDAR GETKEY WASD PARA GETBUTTON HORIZONTAL E VERTICAL ???
BLENDER SNAP COM PROBLEMA
Dúvida sobre o Aleatório
objeto voando
PlayerPrefab
movimentar a camera com o mouse estilo jogo RTS
[TUTORIAL] AI Enemy ( Jogos de terror )
Unity - Como eu desativo e ativo uma hierarquia ao apertar um botão?
Problema na iluminação do shader Diffuse
[TUTORIAL] Limitar casas decimais sem arredondar
Erros atualização de versão da Unity
Erro no SDK - unity
Arquivos em Nuvem
Como faz para salvar as escalas dos arquivos no TilePallets?
[RESOLVIDO] To precisando de ajuda em um script pra fazer uma malha dinamica
Sistema de teletransporte em Python
[____SUGESTÕES PARA O FÓRUM____]
[RESOLVIDO] Como consigo uma conexão local?
Problema em Saber Qual Objeto vai ser Spawnado
Procuro ROTEIRISTA
[RESOLVIDO] Colocar limite de cliques em button
Número Aleatório Unity C#
Comsegui terminar um jogo, Agradeço a todos
Ajuda com recursos do unity.
[RESOLVIDO] Dicas de Otimização
Multiplayer - Por onde começar?
MENU DE SELEÇÃO DE FASES
DOTS - ECS + JOBS + Burst!
Salvar informação de loja
[TUTORIAL] Observer Pattern em C# - Tudo o que você precisa saber
Procura-Se Modelador e Programador, Com Futura Remuneraçao
Programe seus jogos mesmo sem saber C# (BOLT ⚡)
Como mudar a direção do tiro usando o controle analógico?
duvida navmesh
[RESOLVIDO] Problema na câmera com Realidade aumentada
vamos formar uma equipe pra lançar um jogo
Alterações indo para os prefabs e não para os clones.
Jogo de Terror com imagem pixelada
problemas com celulares android grande
Abrir Porta Malas Simples
grid unity
como interagir com os objetos somente se o mouse não estiver sobre o canvas
[RESOLVIDO] Carro Indo Para Tras Quando Aperta *W* e Indo Para Frente Quando Aperta *S*
Jogo para Android, testem por favor
Como fazer um script salvar o estado de um gameobject
[RESOLVIDO] Fechar todos aplicativos abertos.
talvez você goste disso (Cursos)
[RESOLVIDO] Unity - Como fechar o jogo ao clicar em um botão
[RESOLVIDO] Alterar área de click (mira) no touchscreen
Tocar no gameobject e ativar um canvas
Jogo Maria Bella
[TUTORIAL] Unity 2019 - Lanterna e pilhas, com UI
Rodas Saem do carro e da moto
Pegar o valor salvo no começo do jogo!
Compiler error sem eu ter colocado nada no game.
[TUTORIAL] Unity 5 - Wheel Collider, veículos, suspensão realista.
[TUTORIAL] Unity 3D - OnDrawGizmos e OnDrawGizmosSelected
como mudar a cor de uma imagem via script
Animações Bugando ao trocar Ajuda aqui na moral
Hoje à(s) 1:15 am
Ontem à(s) 10:39 pm
Ontem à(s) 9:28 pm
Ontem à(s) 8:32 pm
Ontem à(s) 8:28 pm
Ontem à(s) 7:58 pm
Ontem à(s) 7:38 pm
Ontem à(s) 6:04 pm
Ontem à(s) 3:41 pm
Ontem à(s) 9:39 am
Ontem à(s) 1:40 am
Dom Ago 02, 2020 5:53 pm
Dom Ago 02, 2020 5:44 pm
Dom Ago 02, 2020 2:28 pm
Dom Ago 02, 2020 1:14 pm
Dom Ago 02, 2020 12:57 pm
Dom Ago 02, 2020 12:41 pm
Dom Ago 02, 2020 4:40 am
Sab Ago 01, 2020 11:57 pm
Sab Ago 01, 2020 2:10 pm
Sab Ago 01, 2020 11:37 am
Sab Ago 01, 2020 8:31 am
Sab Ago 01, 2020 12:26 am
Sex Jul 31, 2020 9:02 pm
Sex Jul 31, 2020 3:59 pm
Sex Jul 31, 2020 3:58 pm
Qui Jul 30, 2020 7:18 pm
Qui Jul 30, 2020 4:54 pm
Qui Jul 30, 2020 10:55 am
Qui Jul 30, 2020 8:47 am
Qui Jul 30, 2020 4:42 am
Qua Jul 29, 2020 3:29 pm
Qua Jul 29, 2020 10:56 am
Qua Jul 29, 2020 12:30 am
Seg Jul 27, 2020 5:45 pm
Seg Jul 27, 2020 6:28 am
Seg Jul 27, 2020 6:22 am
Seg Jul 27, 2020 6:16 am
Seg Jul 27, 2020 4:00 am
Dom Jul 26, 2020 7:15 pm
Dom Jul 26, 2020 5:53 pm
Dom Jul 26, 2020 4:33 pm
Dom Jul 26, 2020 4:10 pm
Dom Jul 26, 2020 4:02 am
Dom Jul 26, 2020 3:58 am
Dom Jul 26, 2020 3:58 am
Dom Jul 26, 2020 3:52 am
Dom Jul 26, 2020 3:48 am
Dom Jul 26, 2020 12:04 am
Sab Jul 25, 2020 11:46 pm
Sab Jul 25, 2020 11:38 pm
Sab Jul 25, 2020 11:02 pm
Sab Jul 25, 2020 10:27 pm
Sab Jul 25, 2020 10:26 pm
Sab Jul 25, 2020 10:09 pm
Sab Jul 25, 2020 10:06 pm
Sab Jul 25, 2020 9:50 pm
Sab Jul 25, 2020 8:03 pm
Sex Jul 24, 2020 11:51 pm
Sex Jul 24, 2020 5:45 pm
Sex Jul 24, 2020 3:04 pm
Sex Jul 24, 2020 7:03 am
Qui Jul 23, 2020 6:15 pm
Qui Jul 23, 2020 5:31 pm
Qui Jul 23, 2020 5:27 pm
Qui Jul 23, 2020 1:58 pm
Qui Jul 23, 2020 1:51 pm
Qui Jul 23, 2020 1:43 pm
Qui Jul 23, 2020 12:48 pm
Qui Jul 23, 2020 11:58 am
Qui Jul 23, 2020 11:43 am
Qui Jul 23, 2020 8:18 am
Qua Jul 22, 2020 8:48 pm
Qua Jul 22, 2020 8:22 pm
Qua Jul 22, 2020 7:40 pm
Qua Jul 22, 2020 7:17 pm
Qua Jul 22, 2020 4:52 pm
Qua Jul 22, 2020 2:33 pm
Qua Jul 22, 2020 1:34 pm
Ter Jul 21, 2020 9:49 pm
Ter Jul 21, 2020 5:16 pm
Ter Jul 21, 2020 4:13 pm
Ter Jul 21, 2020 3:35 pm
Ter Jul 21, 2020 9:05 am
Ter Jul 21, 2020 5:13 am
Seg Jul 20, 2020 9:30 pm
Seg Jul 20, 2020 9:28 pm
Dom Jul 19, 2020 11:59 pm
Dom Jul 19, 2020 11:52 pm
Dom Jul 19, 2020 9:08 pm
Dom Jul 19, 2020 6:50 pm
Dom Jul 19, 2020 5:39 pm
Dom Jul 19, 2020 5:32 pm
Dom Jul 19, 2020 5:24 pm
Dom Jul 19, 2020 5:06 pm
Dom Jul 19, 2020 4:49 pm
Dom Jul 19, 2020 4:46 pm
Sab Jul 18, 2020 6:22 pm
Sab Jul 18, 2020 6:08 pm
garrito
Giwn
CShar
Magnatah
Magnatah
glauco
MayLeone
Fagner
BoraAprender15
NKKF
JohnRambo
maxwellvale
maxwellvale
CShar
NKKF
SeTk
NKKF
JulioWinchester
BigCouve
Callyde Jr
TheusReis
BRGC
speedluk
Samuelostgamer
JohnRambo
Yuri Heinz
joaoguil3
DhanielBrandão2
Édipo
Antônio T
garrito
EricknhYT
BigCouve
g2013santtos@gmail.com
raphaelperez
fabricadegame
fabricadegame
fabricadegame
garrito
SamonBR
CShar
IOOI
pdsimulador
iToddy
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
VaiPraLá123
Magnatah
JoelMJunior
KurotamaXIII
MarcosSchultz
MarcosSchultz
diegopds
MarcosSchultz
MarcosSchultz
NinjalaranjaTV
CShar
Ele paiva
Agoraaae3432
CShar
Yuri Heinz
sabbath
VaiPraLá123
artplayer
herisson07
artplayer
undertakerbr
sabbath
EricknhYT
Fagner
Fagner
Fagner
orph
Yuri Heinz
NKKF
VaiPraLá123
Fagner
Zer3301
bionics
JulioWinchester
EricknhYT
thales.ulisses
JoelMJunior
iToddy
iToddy
Hiyuzo
JoelMJunior
CShar
thales.ulisses
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
Encracker
Encracker

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

Ir em baixo

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

Mensagem por marcos4503 em 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 : 3494
REPUTAÇÃO : 573
Idade : 21
Á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

Voltar ao Topo Ir em baixo

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

Mensagem por DuViDoSo em 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 : 2199
REPUTAÇÃO : 163
Idade : 21
Á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

Voltar ao Topo Ir em baixo

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

Mensagem por marcos4503 em 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 : 3494
REPUTAÇÃO : 573
Idade : 21
Á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

Voltar ao Topo Ir em baixo

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

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

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

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

https://github.com/perdugames

Voltar ao Topo Ir em baixo

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

Mensagem por marcos4503 em 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 : 3494
REPUTAÇÃO : 573
Idade : 21
Á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

Voltar ao Topo Ir em baixo

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

Mensagem por dipode em 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 : 2036
REPUTAÇÃO : 39
Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! WvDYdlf

https://github.com/perdugames

Voltar ao Topo Ir em baixo

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

Mensagem por marcos4503 em 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 : 3494
REPUTAÇÃO : 573
Idade : 21
Á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

Voltar ao Topo Ir em baixo

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

Mensagem por dipode em 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 : 2036
REPUTAÇÃO : 39
Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! WvDYdlf

https://github.com/perdugames

Voltar ao Topo Ir em baixo

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

Mensagem por marcos4503 em 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 : 3494
REPUTAÇÃO : 573
Idade : 21
Á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

Voltar ao Topo Ir em baixo

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

Mensagem por dipode em 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 : 2036
REPUTAÇÃO : 39
Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! WvDYdlf

https://github.com/perdugames

Voltar ao Topo Ir em baixo

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

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

Belezura!
marcos4503
marcos4503
Instrutor

Masculino PONTOS : 3494
REPUTAÇÃO : 573
Idade : 21
Á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

Voltar ao Topo Ir em baixo

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

Mensagem por dipode em 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 : 2036
REPUTAÇÃO : 39
Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! WvDYdlf

https://github.com/perdugames

Voltar ao Topo Ir em baixo

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

Mensagem por marcos4503 em 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 : 3494
REPUTAÇÃO : 573
Idade : 21
Á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

Voltar ao Topo Ir em baixo

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

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

cara vlw mesmo por compartilhar isso Smile
Dom3000
Dom3000
Programador

Masculino PONTOS : 3001
REPUTAÇÃO : 232
Idade : 24
Á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

Voltar ao Topo Ir em baixo

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

Mensagem por marcos4503 em 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 : 3494
REPUTAÇÃO : 573
Idade : 21
Á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

Voltar ao Topo Ir em baixo

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

Mensagem por Duarte em 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 : 1783
REPUTAÇÃO : 97
Idade : 20
Á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

Voltar ao Topo Ir em baixo

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

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

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

Masculino PONTOS : 3494
REPUTAÇÃO : 573
Idade : 21
Á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

Voltar ao Topo Ir em baixo

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

Mensagem por Cezar2016 em 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 : 1533
REPUTAÇÃO : 27
Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! WvDYdlf

Voltar ao Topo Ir em baixo

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

Mensagem por marcos4503 em 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 : 3494
REPUTAÇÃO : 573
Idade : 21
Á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

Voltar ao Topo Ir em baixo

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

Mensagem por Dom3000 em 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 : 3001
REPUTAÇÃO : 232
Idade : 24
Á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

Voltar ao Topo Ir em baixo

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

Mensagem por Cezar2016 em 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 : 1533
REPUTAÇÃO : 27
Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! WvDYdlf

Voltar ao Topo Ir em baixo

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

Mensagem por Weslley em 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 : 4042
REPUTAÇÃO : 704
Idade : 22
Áreas de atuação : https://exitside.com.br/
Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! Aad8pUi

Voltar ao Topo Ir em baixo

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

Mensagem por Cezar2016 em 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 : 1533
REPUTAÇÃO : 27
Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! WvDYdlf

Voltar ao Topo Ir em baixo

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

Mensagem por Samuelsk em 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 : 1082
REPUTAÇÃO : 17
Idade : 21
Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! WvDYdlf

Voltar ao Topo Ir em baixo

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

Mensagem por NKKF em 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 : 3057
REPUTAÇÃO : 511
Idade : 15
Á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

Voltar ao Topo Ir em baixo

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

Mensagem por marcos4503 em 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 : 3494
REPUTAÇÃO : 573
Idade : 21
Á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

Voltar ao Topo Ir em baixo

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

Mensagem por Samuelsk em 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 : 1082
REPUTAÇÃO : 17
Idade : 21
Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! WvDYdlf

Voltar ao Topo Ir em baixo

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

Mensagem por NKKF em 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 : 3057
REPUTAÇÃO : 511
Idade : 15
Á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

Voltar ao Topo Ir em baixo

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

Mensagem por Samuelsk em 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 : 1082
REPUTAÇÃO : 17
Idade : 21
Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! WvDYdlf

Voltar ao Topo Ir em baixo

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

Mensagem por NKKF em 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 : 3057
REPUTAÇÃO : 511
Idade : 15
Á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

Voltar ao Topo Ir em baixo

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

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

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

Masculino PONTOS : 1616
REPUTAÇÃO : 122
Idade : 25
Á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/

Voltar ao Topo Ir em baixo

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

Mensagem por danielPedra90 em 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 : 499
REPUTAÇÃO : 2
Respeito as regras : [TUTORIAL] Método simples de salvar progresso do jogo em um arquivo separado! WvDYdlf

Voltar ao Topo Ir em baixo

Voltar ao Topo

- Tópicos similares

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