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] Sistema de vida,morte,dano
Como Faz pra barra de vida aparecer de uma cena pra outra?
Favela Killer Mapa
[____ENQUETE____] Eleições para presidente 2018 (2º turno)
[PROJETO MOBILE] Defeat the Illuminatis
Unity + Photon 2
[TUTORIAL] Sistema de tiro com RAYCAST (várias armas, mira laser, munição, dano, etc, etc)
[RESOLVIDO] Problema com cenário infinito ou algum tipo de bug na Unity?
iniciar jogo com uma cena desativada e ativá-la ao colidir com bloco desativando as outras
Unity Remota 5, sem reação.
Procuro Equipe Para Criação de Jogo [PAGO]
Procuro Map Designer [PAGO $$$] (criador de mapas)
[TUTORIAL] Sistema de Oficina de Carros
[RESOLVIDO] Unity 2018 - Bug com a iluminação da Spotlight nos Objetos
[TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)
[TUTORIAL] Barra de VIDA / HP contínua
Salvar e carregar dados json player pref
Blander ao juntar algumas partes ficam mais escuro
Problema com Esqueleto do personagem
{Possível Projeto para Unity} Buscando membros para formar uma Equipe...
[TUTORIAL] Como spawnar inimigos [Tutorial simples]
Não consigo fazer o box collider descer junto com o personagem.
BUG UNITY 3D ROSA A SCENE E GAME
Sistema de Grau Realista - Jogo de Moto
(Dúvida) Encontrar o objeto mais próximo partindo do ponto inicial ao final.
Programação Unity android 2D
(UNITY) Erro ao compilar a Build Android
Erro na sincronização dos player no Photon
[TUTORIAL] Barra de vida usando a UI da Unity(Slider)
[Projeto] Line Battle
[TUTORIAL] Desbloqueio e Escolha de Personagens.
[RESOLVIDO] Problema com o navmesh agent
[RESOLVIDO] Registro cadrastando uma vez?
Vaga de modelador 3D, com remuneração...
Problemas com Colisores
Como criar Atlas de textura com modelos exportados do Sketchup?
Unity - Sistema de Pagamento
[RESOLVIDO] iniciar áudio ao passar por uma área da cena
[RESOLVIDO] como envia asset para asset store
[TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS
codigo não deleta prefab e não respeita o if
[TUTORIAL] Filtros de áudio para AudioListner (Low pass filter, High pass filter, etc)
[____CICLO DE TRABALHO DA UNITY____]
Meu jogo não está abrindo em outro PC
[TUTORIAL] DANO POR QUEDA e BARRA DE VIDA CONTÍNUA no mesmo script
Discord para desenvolvimento de jogos
FAB in WWII (Novo jogo na Play Storee é Free :D)
[____TÓPICO LIVRE____] FALE O QUE QUISER (Parte 2)
[TUTORIAL] Sistema de PORTAS e CHAVES
Criar uma Array ou List com as resoluções suportadas
Alguem traz esse tutorial pro forum?
Realistic fps prefab tenho esses erros ao tentar colocar um script de entrar sair do carro
[RESOLVIDO] Alguem pode me ajudar? tenho esse erro aqui em um script
[RESOLVIDO] Personagem 2d batendo na borda e voando.
[RESOLVIDO] Não consigo usar o Sphere collider.
[RESOLVIDO] Como usa o UI.Text do unity?
Como criar botão de nova tentativa
[RESOLVIDO] Duvida em Jogo de tiro 2D
[RESOLVIDO] duvida com PlayerPrefs
Iniciar animação em determinado frame
Sistema De Troca De Armas 2D
[TUTORIAL] Script de arma completo! [FREE]
[TUTORIAL] Ordenar valores de uma array[] em ordem CRESCENTE OU DECRESCENTE
Meu jogo de runner em primeira pessoa !
[RESOLVIDO] Timer pra mudar de cena na unity 2018
Atualizar Build
[TUTORIAL] 42 ÓTIMAS DICAS DE OTIMIZAÇÃO PARA JOGOS MOBILE (Android)
Como usar Vector3.Angles para detectar que algo está na frente de outro objeto?
[TUTORIAL] Como fazer porta malas do carro abrir atravez de um botão?
Script nao funciona
Como desativar scripts em objetos distantes
[RESOLVIDO] Bug Da Unity ?
[AULA] HTML - Aula 1: Introdução
Raycast
[TUTORIAL]"Morte" do personagem (Unity 5.3 ou Superior)
Problema com a unity ads
como eu faço para a camera orbitar um objeto atraves de um joystick?????
XML, suporte e utilização.
Arrastar objetos em plano 2D (ArrastarT).
[TUTORIAL] Sistema de fome, sede, barra de vida, barra de estamina, itens e dano por queda
Participe da Game Jam - Jaaj do canal Amdré Young!
Criar sistema de arrastar e soltar objetos em determinado lugar
AWM Champions I
[RESOLVIDO] Como verificar se o objeto é diferente de null
COMO FAÇO PARA FAZER UM SISTEMA DE SKIN PARA ANDROID ESTILO HEAVY BUS, PROTON BUS, ETC
[TUTORIAL] Snake com Unity + C#
Sobre Som (Ouvir som do sistema , duas caixas de som ... )
Configurar NPCs
[RESOLVIDO] Script Carta
[TUTORIAL] Texto Legenda Character Por Character Para Uso Básico
Ajuda com script movimento por Grid Tile no Navmesh
[Devlog] Lost in the world 05/10
[___COMO UTILIZAR O FÓRUM___] Principais botões e suas funções
inimigo nao persegue player
[RESOLVIDO] Build setting não entra
[RESOLVIDO] Player Sair Da animaçao
[RESOLVIDO] Erro colider
Dúvida sobre Resolução
[____APOIE O FÓRUM E O CANAL E GANHE RECOMPENSAS____]
Hoje à(s) 2:28 pm
Hoje à(s) 2:27 pm
Hoje à(s) 1:18 pm
Hoje à(s) 1:10 pm
Hoje à(s) 11:46 am
Hoje à(s) 9:19 am
Ontem à(s) 10:57 pm
Ontem à(s) 10:24 pm
Ontem à(s) 8:00 pm
Ontem à(s) 7:51 pm
Ontem à(s) 7:23 pm
Ontem à(s) 7:18 pm
Qui Out 18, 2018 7:09 pm
Qui Out 18, 2018 4:52 pm
Qui Out 18, 2018 2:57 pm
Qui Out 18, 2018 10:36 am
Qui Out 18, 2018 9:49 am
Qua Out 17, 2018 11:45 pm
Qua Out 17, 2018 11:17 pm
Qua Out 17, 2018 10:14 pm
Qua Out 17, 2018 9:49 pm
Qua Out 17, 2018 8:32 pm
Qua Out 17, 2018 5:18 pm
Qua Out 17, 2018 5:16 pm
Qua Out 17, 2018 5:13 pm
Qua Out 17, 2018 5:13 pm
Qua Out 17, 2018 5:10 pm
Qua Out 17, 2018 4:35 pm
Qua Out 17, 2018 3:13 pm
Qua Out 17, 2018 7:28 am
Ter Out 16, 2018 3:34 pm
Ter Out 16, 2018 12:41 pm
Ter Out 16, 2018 11:48 am
Seg Out 15, 2018 5:34 pm
Seg Out 15, 2018 5:03 pm
Seg Out 15, 2018 1:19 pm
Seg Out 15, 2018 12:56 pm
Seg Out 15, 2018 11:34 am
Seg Out 15, 2018 6:17 am
Seg Out 15, 2018 12:30 am
Seg Out 15, 2018 12:18 am
Dom Out 14, 2018 12:52 am
Sab Out 13, 2018 9:08 pm
Sab Out 13, 2018 5:24 pm
Sab Out 13, 2018 4:00 pm
Sex Out 12, 2018 6:00 pm
Sex Out 12, 2018 2:56 pm
Sex Out 12, 2018 2:55 pm
Sex Out 12, 2018 2:42 pm
Qui Out 11, 2018 8:59 pm
Qui Out 11, 2018 8:32 pm
Qui Out 11, 2018 3:09 pm
Qui Out 11, 2018 2:32 pm
Qui Out 11, 2018 12:15 pm
Qui Out 11, 2018 11:35 am
Qui Out 11, 2018 10:50 am
Qui Out 11, 2018 8:24 am
Qua Out 10, 2018 11:31 pm
Qua Out 10, 2018 10:43 pm
Qua Out 10, 2018 8:22 pm
Qua Out 10, 2018 4:53 pm
Qua Out 10, 2018 4:44 pm
Qua Out 10, 2018 3:48 pm
Qua Out 10, 2018 12:40 pm
Ter Out 09, 2018 9:51 pm
Ter Out 09, 2018 8:16 pm
Ter Out 09, 2018 8:16 pm
Ter Out 09, 2018 8:10 pm
Ter Out 09, 2018 8:09 pm
Ter Out 09, 2018 7:38 pm
Ter Out 09, 2018 2:55 pm
Seg Out 08, 2018 6:13 pm
Seg Out 08, 2018 4:40 pm
Seg Out 08, 2018 2:39 pm
Seg Out 08, 2018 12:52 pm
Seg Out 08, 2018 12:16 pm
Seg Out 08, 2018 10:33 am
Dom Out 07, 2018 1:59 pm
Dom Out 07, 2018 11:53 am
Dom Out 07, 2018 10:53 am
Sab Out 06, 2018 11:14 pm
Sab Out 06, 2018 10:55 pm
Sab Out 06, 2018 8:50 pm
Sab Out 06, 2018 8:41 pm
Sab Out 06, 2018 2:21 pm
Sab Out 06, 2018 1:33 pm
Sab Out 06, 2018 2:04 am
Sex Out 05, 2018 8:22 pm
Sex Out 05, 2018 7:39 pm
Sex Out 05, 2018 6:35 pm
Sex Out 05, 2018 11:27 am
Sex Out 05, 2018 11:22 am
Sex Out 05, 2018 9:35 am
Sex Out 05, 2018 12:53 am
Qui Out 04, 2018 11:40 pm
Qui Out 04, 2018 10:43 pm
Qui Out 04, 2018 6:23 pm
Qui Out 04, 2018 3:36 pm
Qui Out 04, 2018 3:12 pm
Callyde Jr
francisco barroso
zeca urubu
JohnRambo
dstaroski
hao3726
galil
FabioBRPA
MarcosSchultz
francisco barroso
SoullSec
SoullSec
leandrospp7
CaerHunter
Mourao
francisco barroso
dstaroski
DominicDK
DominicDK
NoctisLucis
francisco barroso
MayLeone
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
francisco barroso
hao3726
dstaroski
dstaroski
ismarspn
Jmspp
Callyde Jr
igorobm
conceptfac
Isabela
Callyde Jr
Daniel Dória
diegopds
MarcosSchultz
igorobm
MarcosSchultz
MarcosSchultz
Flávio
francisco barroso
SuperGamer
SoullSec
SoullSec
SoullSec
Flávio
francisco barroso
Samuelostgamer
Samuelostgamer
gurgelg752
luansantos
guimaraf
theus.mors
TecnoGames
Eduardoro39
QueriaStarMorto
QueriaStarMorto
mecjo
NyanHeavyBR
CaioItz
RodriGO3477
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
FelipeSouza11
FelipeSouza11
QueriaStarMorto
Tegh
Jmspp
Callyde Jr
Jmspp
Gabryellx007
Tegh
Tegh
SuperGamer
Luizdanhp
MarcosSchultz
TioUV
QueriaStarMorto
KAYKETHEO27
NKKF
MarcosSchultz
Callyde Jr
francisco barroso
FelipeSouza11
Nowsfeky
Mateus2583
FelipeSouza11
Callyde Jr
Daniel Dória
marcosdanielnerydasilva
francisco barroso
NKKF
dstaroski

[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)
avatar
marcos4503
Instrutor

Masculino PONTOS : 2745
REPUTAÇÃO : 531
Idade : 19
Áreas de atuação : Desenvolvimento Android
Básico de Design
Básico Blender
Unity
Programação em C#
Outras linguas.
Respeito as regras :

Ver perfil do usuário http://www.windsoft.xyz/site

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.
avatar
DuViDoSo
Modelador

Masculino PONTOS : 1516
REPUTAÇÃO : 155
Idade : 19
Áreas de atuação : Programador em C#, Desenvolvedor Indie.
Respeito as regras :

Ver perfil do usuário 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!!
avatar
marcos4503
Instrutor

Masculino PONTOS : 2745
REPUTAÇÃO : 531
Idade : 19
Áreas de atuação : Desenvolvimento Android
Básico de Design
Básico Blender
Unity
Programação em C#
Outras linguas.
Respeito as regras :

Ver perfil do usuário http://www.windsoft.xyz/site

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?
avatar
dipode
Avançado
Avançado

PONTOS : 1382
REPUTAÇÃO : 39
Respeito as regras :

Ver perfil do usuário 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
avatar
marcos4503
Instrutor

Masculino PONTOS : 2745
REPUTAÇÃO : 531
Idade : 19
Áreas de atuação : Desenvolvimento Android
Básico de Design
Básico Blender
Unity
Programação em C#
Outras linguas.
Respeito as regras :

Ver perfil do usuário http://www.windsoft.xyz/site

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?
avatar
dipode
Avançado
Avançado

PONTOS : 1382
REPUTAÇÃO : 39
Respeito as regras :

Ver perfil do usuário 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!
avatar
marcos4503
Instrutor

Masculino PONTOS : 2745
REPUTAÇÃO : 531
Idade : 19
Áreas de atuação : Desenvolvimento Android
Básico de Design
Básico Blender
Unity
Programação em C#
Outras linguas.
Respeito as regras :

Ver perfil do usuário http://www.windsoft.xyz/site

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.
avatar
dipode
Avançado
Avançado

PONTOS : 1382
REPUTAÇÃO : 39
Respeito as regras :

Ver perfil do usuário 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 ;-;
avatar
marcos4503
Instrutor

Masculino PONTOS : 2745
REPUTAÇÃO : 531
Idade : 19
Áreas de atuação : Desenvolvimento Android
Básico de Design
Básico Blender
Unity
Programação em C#
Outras linguas.
Respeito as regras :

Ver perfil do usuário http://www.windsoft.xyz/site

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
avatar
dipode
Avançado
Avançado

PONTOS : 1382
REPUTAÇÃO : 39
Respeito as regras :

Ver perfil do usuário 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!
avatar
marcos4503
Instrutor

Masculino PONTOS : 2745
REPUTAÇÃO : 531
Idade : 19
Áreas de atuação : Desenvolvimento Android
Básico de Design
Básico Blender
Unity
Programação em C#
Outras linguas.
Respeito as regras :

Ver perfil do usuário http://www.windsoft.xyz/site

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.
avatar
dipode
Avançado
Avançado

PONTOS : 1382
REPUTAÇÃO : 39
Respeito as regras :

Ver perfil do usuário 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
avatar
marcos4503
Instrutor

Masculino PONTOS : 2745
REPUTAÇÃO : 531
Idade : 19
Áreas de atuação : Desenvolvimento Android
Básico de Design
Básico Blender
Unity
Programação em C#
Outras linguas.
Respeito as regras :

Ver perfil do usuário http://www.windsoft.xyz/site

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
avatar
Dom3000
Programador

Masculino PONTOS : 2269
REPUTAÇÃO : 209
Idade : 22
Áreas de atuação : canal https://www.youtube.com/watch?v=yvmQEJUfbhQ
Page: https://www.facebook.com/BatlesofWorlds/
Ble
Respeito as regras :

Ver perfil do usuário

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!!
avatar
marcos4503
Instrutor

Masculino PONTOS : 2745
REPUTAÇÃO : 531
Idade : 19
Áreas de atuação : Desenvolvimento Android
Básico de Design
Básico Blender
Unity
Programação em C#
Outras linguas.
Respeito as regras :

Ver perfil do usuário http://www.windsoft.xyz/site

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.
avatar
Duarte
Programador

Masculino PONTOS : 1089
REPUTAÇÃO : 86
Idade : 18
Áreas de atuação : Programação
Desenvolvedor Android
Respeito as regras :

Ver perfil do usuário

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?
avatar
marcos4503
Instrutor

Masculino PONTOS : 2745
REPUTAÇÃO : 531
Idade : 19
Áreas de atuação : Desenvolvimento Android
Básico de Design
Básico Blender
Unity
Programação em C#
Outras linguas.
Respeito as regras :

Ver perfil do usuário http://www.windsoft.xyz/site

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 : 878
REPUTAÇÃO : 26
Respeito as regras :

Ver perfil do usuário

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;

}

}
avatar
marcos4503
Instrutor

Masculino PONTOS : 2745
REPUTAÇÃO : 531
Idade : 19
Áreas de atuação : Desenvolvimento Android
Básico de Design
Básico Blender
Unity
Programação em C#
Outras linguas.
Respeito as regras :

Ver perfil do usuário http://www.windsoft.xyz/site

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
avatar
Dom3000
Programador

Masculino PONTOS : 2269
REPUTAÇÃO : 209
Idade : 22
Áreas de atuação : canal https://www.youtube.com/watch?v=yvmQEJUfbhQ
Page: https://www.facebook.com/BatlesofWorlds/
Ble
Respeito as regras :

Ver perfil do usuário

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 : 878
REPUTAÇÃO : 26
Respeito as regras :

Ver perfil do usuário

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)
avatar
Weslley
Moderador

Masculino PONTOS : 3196
REPUTAÇÃO : 628
Idade : 20
Áreas de atuação : C#
Respeito as regras :

Ver perfil do usuário

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 : 878
REPUTAÇÃO : 26
Respeito as regras :

Ver perfil do usuário

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 ?
avatar
Samuelsk
Membro
Membro

Masculino PONTOS : 428
REPUTAÇÃO : 17
Idade : 19
Respeito as regras :

Ver perfil do usuário

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)
avatar
NKKF
ProgramadorMaster

Masculino PONTOS : 1991
REPUTAÇÃO : 405
Idade : 14
Áreas de atuação : Error 404 Not Found.
Respeito as regras :

Ver perfil do usuário http://www.projetounity.esy.es

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..
avatar
marcos4503
Instrutor

Masculino PONTOS : 2745
REPUTAÇÃO : 531
Idade : 19
Áreas de atuação : Desenvolvimento Android
Básico de Design
Básico Blender
Unity
Programação em C#
Outras linguas.
Respeito as regras :

Ver perfil do usuário http://www.windsoft.xyz/site

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...
avatar
Samuelsk
Membro
Membro

Masculino PONTOS : 428
REPUTAÇÃO : 17
Idade : 19
Respeito as regras :

Ver perfil do usuário

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?
avatar
NKKF
ProgramadorMaster

Masculino PONTOS : 1991
REPUTAÇÃO : 405
Idade : 14
Áreas de atuação : Error 404 Not Found.
Respeito as regras :

Ver perfil do usuário http://www.projetounity.esy.es

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 ._.
avatar
Samuelsk
Membro
Membro

Masculino PONTOS : 428
REPUTAÇÃO : 17
Idade : 19
Respeito as regras :

Ver perfil do usuário

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?
avatar
NKKF
ProgramadorMaster

Masculino PONTOS : 1991
REPUTAÇÃO : 405
Idade : 14
Áreas de atuação : Error 404 Not Found.
Respeito as regras :

Ver perfil do usuário http://www.projetounity.esy.es

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.
avatar
Magnatah
Avançado
Avançado

Masculino PONTOS : 306
REPUTAÇÃO : 15
Idade : 23
Áreas de atuação : Desenvolvedor Web(Front-end e Back-End), Blender, Unity, C#, Java, PHP, MySql e JavaScript.
Respeito as regras :

Ver perfil do usuário

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