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 Very Happy
TÓPICOS RECENTES:
Tópico:
Postado em:
Postado por:
Dúvida sobre terrenos em 3D
O que vocês acham de um jogo com formato de capitulos?
Procuro modelador e programador para projeto similar à My summer Car
Animacao da Colt
[Duvida] Problema em relação ao transform.rotate
PROCURO ANIMADOR + PROGRAMADOR
[____ADMINISTRAÇÃO____] PRECISO DE AJUDA [DICA PARA SER AJUDADO]
[ATUALIZAÇÃO] Projeto - Girl Blade
[TUTORIAL] Avião Script
Avaliem (Meu cenário)!!
Ajuda com Script
Duvida Iluminação
[TUTORIAL] FAZENDO UM SITE PROFISSIONAL COMPLETO PARA SEU JOGO GRATIS
Verificar cena anterior?
Verificar se game object está habilitado ou desabilitado
Colisão no terreno
Pontos luminosos em objeto 3D
[Duvida] - Como criar um botao de sair com mensage?
[RESOLVIDO] DUVIDA COM SCRIPT DE DANO POR TRIGER ENTER
QUER UMA PEQUENA GAMEPLAY DO MEU GAME?
[RESOLVIDO] Instanciar em Posição "Y" Especifica
Shop UI
[Duvida] Como carregar cenas aleatoriamente?
save game
Alguns modelos low poly
Fui mexer denovo na minha lixeira do mediafire e olha no que deu..
(Dúvida) Wheel Joint 2D Rodas saindo do pivo
Faculdade de jogos digitais vale a pena?
GAMEPLAY DO JOGO 171 ESTILO GTA (não sou eu que estou fazendo)
Como Criar uma Loja Virtual e WebSite para Seu Jogo Gratis
Tocar Audio ao Colidir com Tag Player
[____TÓPICO LIVRE____] FALE O QUE QUISER (Parte 2)
ESSE EO MEU JOGO QUE EU ESTOU DESENVOLVENDO (VERSAO BETA)
Survive - atualização do jogo
Formação de Equipe Battle of Worlds
Pegar coisas do chao
Site Profissional Completo Gratis para Jogos
[Votação] Melhor sistema de drag na sua opinião ;-;
Como eu faço um "Sprint" para minha nave:
Personagem "Batendo" no limite da camera em 2D
Error No Console
[DÚVIDA] APERTAR 2 VAI PRA PRÓXIMA MÚSICA, APERTAR 1 VOLTA A MÚSICA ANTERIOR
[____APOIE O FÓRUM E O CANAL E GANHE RECOMPENSAS____]
Site para Baixar Character em 3D
Cut Scene com video player
Só o networkIndetity é o suficiente para o que eu quero fazer? Como ele funciona?
O que acham dos meus modelos? (Prédios)
Como faz para colocar som nos passos do personagem?
[Pack de Modelos 3d] Kit Pau Pra Toda Obra [Low Poly]
Canvas UI
[Dúvida] tiro
Sombra preta
Transformar velocidade em forca
[DUVIDA] Shader
[RESOLVIDO] Mais scripts ou mais linhas de codigo????
Ponto na tela
Photon Duvida
(RESOLVIDO)Ajuda na animação do Mixamo
[Duvida] Como dar play e pausar uma animacao??
Como criar um timer?
Sistema de Sensibilidade Do Mouse X e Y!
Sistema multiplayer por Salas
Vender ideia de jogo para desenvolvedora
FORMAÇÃO DE EQUIPE PARA JOGO MULTIPLAYER DE SOBREVIVENCIA
eu preciso de um script de contagem para o me jogo alguem pode me ajudar?
Unity Congelando
Como pode ser feito um HUD?
Script sem erro, mas não funciona
Google VR
Ajuda sobre melhorar a Fricção no Wheel Collider
sombrancelha do mixamo
[RESOLVIDO]Oque significa "?"
Dúvida sobre jogo android...
OBJETO INSTANCIANDO EM POSIÇÃO ERRADA
[Duvida] NavMeshAgente se movendo muito rapido!
Alguma alternativa para os JOINT do unity
Projeto B
Script + Direção
Alguem quer ajudar em meu jogo???
[Resolvido] Como chamar uma void ou função, através de um botão.
[RESOLVIDO] Como subir escadas
For lista
[RESOLVIDO] Sistema de recarregamento Precário.
[Duvida] Com NavMesh;
[Duvida] Com LookAt
[Resolvido]Objeto não está sendo instanciado
[DUVIDA] - Pontuação e fim de jogo
Network Manager opção sumiu
PROBLEMA TEXTURA E TELA GAME
[Resolvido] Colisores nao colidem!!
Como colocar dano no inimigo? e vida no player?
O que falta??
QUEM AI TA DISPOSTO A DESENVOLVER UM GAME EM EQUIPE??
[TUTORIAL] FPSController nadar e mergulhar, junto com efeito submerso
Receber tiro(animação)
Limite de tela
[Resolvido]COMO CONSULTAR O PAINEL DE PREFERENÇIAS DA UNITY?
Alguém poderia me dizer o que estou fazendo de errado nesses scripts? (Vuforia SDK).
[RESOLVIDO] Como movimentar um objeto de um lado para o outro
Hoje à(s) 12:08 am
Ontem à(s) 11:05 pm
Ontem à(s) 10:35 pm
Ontem à(s) 9:19 pm
Ontem à(s) 7:17 pm
Ontem à(s) 6:15 pm
Ontem à(s) 4:21 pm
Ontem à(s) 4:15 pm
Ontem à(s) 3:59 pm
Ontem à(s) 2:54 pm
Ontem à(s) 1:56 pm
Ontem à(s) 9:43 am
Ontem à(s) 9:36 am
Ontem à(s) 9:22 am
Ontem à(s) 8:59 am
Sab Maio 27, 2017 11:46 pm
Sab Maio 27, 2017 11:28 pm
Sab Maio 27, 2017 8:50 pm
Sab Maio 27, 2017 6:49 pm
Sab Maio 27, 2017 6:45 pm
Sab Maio 27, 2017 5:54 pm
Sab Maio 27, 2017 5:39 pm
Sab Maio 27, 2017 5:28 pm
Sab Maio 27, 2017 5:08 pm
Sab Maio 27, 2017 4:52 pm
Sab Maio 27, 2017 4:46 pm
Sab Maio 27, 2017 4:21 pm
Sab Maio 27, 2017 3:05 pm
Sab Maio 27, 2017 2:50 pm
Sab Maio 27, 2017 1:59 pm
Sab Maio 27, 2017 1:45 pm
Sab Maio 27, 2017 12:54 pm
Sab Maio 27, 2017 10:38 am
Sab Maio 27, 2017 1:59 am
Sab Maio 27, 2017 1:29 am
Sab Maio 27, 2017 12:37 am
Sex Maio 26, 2017 11:57 pm
Sex Maio 26, 2017 11:36 pm
Sex Maio 26, 2017 11:13 pm
Sex Maio 26, 2017 10:42 pm
Sex Maio 26, 2017 9:00 pm
Sex Maio 26, 2017 8:56 pm
Sex Maio 26, 2017 8:51 pm
Sex Maio 26, 2017 8:24 pm
Sex Maio 26, 2017 7:53 pm
Sex Maio 26, 2017 7:30 pm
Sex Maio 26, 2017 5:27 pm
Sex Maio 26, 2017 5:17 pm
Sex Maio 26, 2017 5:15 pm
Sex Maio 26, 2017 4:28 pm
Sex Maio 26, 2017 4:13 pm
Sex Maio 26, 2017 3:53 pm
Sex Maio 26, 2017 3:27 pm
Sex Maio 26, 2017 2:42 pm
Sex Maio 26, 2017 1:57 pm
Sex Maio 26, 2017 1:57 pm
Sex Maio 26, 2017 1:50 pm
Sex Maio 26, 2017 11:59 am
Sex Maio 26, 2017 11:49 am
Sex Maio 26, 2017 11:38 am
Sex Maio 26, 2017 10:08 am
Sex Maio 26, 2017 9:26 am
Sex Maio 26, 2017 2:49 am
Sex Maio 26, 2017 2:35 am
Sex Maio 26, 2017 12:58 am
Sex Maio 26, 2017 12:54 am
Qui Maio 25, 2017 10:49 pm
Qui Maio 25, 2017 10:39 pm
Qui Maio 25, 2017 10:03 pm
Qui Maio 25, 2017 8:55 pm
Qui Maio 25, 2017 8:51 pm
Qui Maio 25, 2017 8:46 pm
Qui Maio 25, 2017 7:31 pm
Qui Maio 25, 2017 6:15 pm
Qui Maio 25, 2017 5:54 pm
Qui Maio 25, 2017 5:48 pm
Qui Maio 25, 2017 5:17 pm
Qui Maio 25, 2017 3:08 pm
Qui Maio 25, 2017 1:08 pm
Qui Maio 25, 2017 11:51 am
Qui Maio 25, 2017 10:49 am
Qui Maio 25, 2017 10:08 am
Qui Maio 25, 2017 9:39 am
Qui Maio 25, 2017 9:00 am
Qua Maio 24, 2017 11:31 pm
Qua Maio 24, 2017 10:13 pm
Qua Maio 24, 2017 9:57 pm
Qua Maio 24, 2017 9:38 pm
Qua Maio 24, 2017 8:25 pm
Qua Maio 24, 2017 8:23 pm
Qua Maio 24, 2017 8:00 pm
Qua Maio 24, 2017 6:24 pm
Qua Maio 24, 2017 5:51 pm
Qua Maio 24, 2017 5:50 pm
Qua Maio 24, 2017 4:40 pm
Qua Maio 24, 2017 3:43 pm
Qua Maio 24, 2017 3:15 pm
Qua Maio 24, 2017 2:44 pm
Qua Maio 24, 2017 2:41 pm
Marc7
marcos4503
dazentt55
DuViDoSo34
DuViDoSo34
nandekando
Mic4el
Mic4el
Mic4el
Zecandy
thiagograssi
Édipo
weslleyFx
weslleyFx
zZAndersonZz
PauloFR
Marc7
dstaroski
Unidade3d5
Gabriel César O
thiagograssi
bruxamissi
PauloFR
Callyde Jr
Mic4el
Mic4el
rafaelllsd
julioou
julioou
fecirineu
bruxamissi
marcos4503
glauco
thiagograssi
Dom3000
Mikeofcoji
fecirineu
aleksander700
rafaelllsd
Ghosthy
PauloFR
PauloFR
marcos4503
AndyShow
hrr23
thiagograssi
DuViDoSo34
Gabriel César O
DuViDoSo34
Weverton Borges da Silva
aleksander700
aleksander700
dazentt55
Xurupitinha
dazentt55
John Rambo
LuizFixa3D
Zecandy
PauloFR
Callyde Jr
bruxamissi
weslleyFx
JoelMJunior
hen000
rafaelllsd
rafaelllsd
thiagograssi
wender
Henrique Ramires
dazentt55
916anderson
Matrirxp
marcos4503
bruxamissi
DuViDoSo34
dazentt55
julioou
Madness
felipefell
DuViDoSo34
DuViDoSo34
Chilinger
DuViDoSo34
DuViDoSo34
DuViDoSo34
thiagograssi
PauloFR
thiagograssi
Miss Talon
Junim
Manawydan
MarcosSchultz
Junim
JCLEON
aleksander700
Xurupitinha
marcos4503
WolfTheZelda
Games Indie

[TUTORIAL] Como salvar dados em arquivos de texto .txt, .ini ou . qualquer coisa.

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

TUTORIAL [TUTORIAL] Como salvar dados em arquivos de texto .txt, .ini ou . qualquer coisa.

Mensagem por RenanMSV em Ter Maio 10, 2016 6:56 pm


Olá, a pouco tempo fiz um tutorial sobre como salvar dados em um banco de dados. Este método é o mais recomendado porém salvar dados em arquivos de texto talvez seja o mais recomendado para configurações do seu jogo. Assim, um usuario pode compartilhar o arquivo com outros usuarios.
Elaborei um script simples ( e quando eu digo simples é simples mesmo ).


Código:

using UnityEngine;
using System.Collections;
using System.IO;

// Padrão de nossos arquivos !

// Tela Cheia : Linha 1.
// Graficos : Linha 2.
// Resolução X : Linha 3.
// Resolucao Y : Linha 4.

public class INI : MonoBehaviour {
 public string[] CFG; // Declaramos nossa variavel que irá conter as configurações do usuario.
 private string linha; // Aqui declaramos uma variavel que irá receber o valor de cada linha do arquivo
 private StreamReader sr; // Aqui declaramos um leitor de arquivos para ser usado em todas funções
 private StreamWriter sw; // Aqui declaramos um escritor de arquivos para ser usado em todas funções

 void Reset(){
 CFG = new string[4]; // Declarando o tamanho da Array, aqui deve ser colocado o tamanho de configurações que seu arquivo deve ter. No caso deste exemplo é 4.
 }
 void Start () {
 if (!File.Exists(Application.dataPath + "/CFG.ini")) CriarArquivoDeCFG(); // Se o arquivo de configuração não existir você CHAMA A FUNÇÃO que irá criar ele e ja escrever valores padroes.
 LerArquivoDeCFG (); // Iremos ler e salvar as configuracoes do arquivo
 MostrarValoresDeCFG (); // Iremos mostrar em um log essas configuracoes
 UtilizarValoresDeCFG (); // Iremos usar algumas destas configuracoes
 //Debug.Log("Pronto!");
 }
 public void CriarArquivoDeCFG(){
 //File.Create (Application.dataPath + "/CFG.ini");
 StreamWriter sw = new StreamWriter (Application.dataPath + "/CFG.ini"); // Iremos declarar qual arquivo queremos criar (escrever)
 sw.WriteLine ("true"); // Linha 1. Aqui é bem simples, apenas chamamos a funcao WriteLine. Ela irá escrever linhas embaixo de linhas. Então o arquivo será escrito na ordem que voce quiser.
 sw.WriteLine ("1"); // Linha 2. Valores padrão!
 sw.WriteLine ("1024"); // Linha 3
 sw.WriteLine ("768"); // Linha 4
 sw.Close (); // Fechamos o arquivo (o salvando). Ja poderemos encontrar o arquivo na pasta do jogo
 }
 public void LerArquivoDeCFG(){
 StreamReader sr = new StreamReader(Application.dataPath + "/CFG.ini"); // Declaramos qual arquivo queremos ler.
 int t = 0; // Declaramos um index para ser usado no while.
 while ((linha = sr.ReadLine()) != null){ // Enquanto linha for diferente de null ou seja a linha existe  iremos
 CFG[t] = linha; //  Setamos os valores em nossa array.
 t++; // Aumentamos o indice em 1.
 }
 sr.Close (); // Fechamos o arquivo.
 }
 public void MostrarValoresDeCFG(){
 Debug.Log ("Tela Cheia: " + CFG[0] + ". Graficos: " + CFG[1] + ". Resolução: " + CFG[2] + "x" + CFG[3] + ".");
 }
 public void UtilizarValoresDeCFG(){
 bool tlcheia = (CFG [0] == "true"); // Verificamos se a variavel de tela cheia está true no arquivo
 Screen.SetResolution (int.Parse (CFG [2]), int.Parse (CFG [3]), tlcheia); // Setamos a resolucao e se tem tela cheia ou não.
 }
}


Última edição por RenanMSV em Ter Maio 10, 2016 7:01 pm, editado 1 vez(es)
avatar
RenanMSV
Instrutor

Masculino PONTOS : 1741
REPUTAÇÃO : 324
Áreas de atuação : Programação em C#, PHP. SQL, JavaScript (Web)
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Como salvar dados em arquivos de texto .txt, .ini ou . qualquer coisa.

Mensagem por weslleyFx em Ter Maio 10, 2016 7:00 pm

RenanMSV escreveu:

Olá, a pouco tempo fiz um tutorial sobre como salvar dados em um banco de dados. Este método é o mais recomendado porém salvar dados em arquivos de texto talvez seja o mais recomendado para configurações do seu jogo. Assim, um usuario pode compartilhar o arquivo com outros usuarios.
Elaborei um script simples ( e quando eu digo simples é simples mesmo ).


Código:

using UnityEngine;
using System.Collections;
using System.IO;

// Padrão de nossos arquivos !

// Tela Cheia : Linha 1.
// Graficos : Linha 2.
// Resolução X : Linha 3.
// Resolucao Y : Linha 4.

public class INI : MonoBehaviour {
 public string[] CFG; // Declaramos nossa variavel que irá conter as configurações do usuario.
 private string linha; // Aqui declaramos uma variavel que irá receber o valor de cada linha do arquivo
 private StreamReader sr; // Aqui declaramos um leitor de arquivos para ser usado em todas funções
 private StreamWriter sw; // Aqui declaramos um escritor de arquivos para ser usado em todas funções

 void Reset(){
 CFG = new string[4]; // Declarando o tamanho da Array, aqui deve ser colocado o tamanho de configurações que seu arquivo deve ter. No caso deste exemplo é 4.
 }
 void Start () {
 if (!File.Exists(Application.dataPath + "/CFG.ini")) CriarArquivoDeCFG(); // Se o arquivo de configuração não existir você CHAMA A FUNÇÃO que irá criar ele e ja escrever valores padroes.
 LerArquivoDeCFG (); // Iremos ler e salvar as configuracoes do arquivo
 MostrarValoresDeCFG (); // Iremos mostrar em um log essas configuracoes
 UtilizarValoresDeCFG (); // Iremos usar algumas destas configuracoes
 //Debug.Log("Pronto!");
 }
 public void CriarArquivoDeCFG(){
 //File.Create (Application.dataPath + "/CFG.ini");
 StreamWriter sw = new StreamWriter (Application.dataPath + "/CFG.ini"); // Iremos declarar qual arquivo queremos criar (escrever)
 sw.WriteLine ("true"); // Linha 1. Aqui é bem simples, apenas chamamos a funcao WriteLine. Ela irá escrever linhas embaixo de linhas. Então o arquivo será escrito na ordem que voce quiser.
 sw.WriteLine ("1"); // Linha 2. Valores padrão!
 sw.WriteLine ("1024"); // Linha 3
 sw.WriteLine ("768"); // Linha 4
 sw.Close (); // Fechamos o arquivo (o salvando). Ja poderemos encontrar o arquivo na pasta do jogo
 }
 public void LerArquivoDeCFG(){
 //string Readfile = new string[File.ReadAllLines(Application.dataPath + "/CFG.ini").Length];
 StreamReader sr = new StreamReader(Application.dataPath + "/CFG.ini"); // Declaramos qual arquivo queremos ler.
 int t = 0; // Declaramos um index para ser usado no while.
 while ((linha = sr.ReadLine()) != null){ // Enquanto linha for diferente de null ou seja a linha existe  iremos
 CFG[t] = linha; //  Setamos os valores em nossa array.
 t++; // Aumentamos o indice em 1.
 }
 sr.Close (); // Fechamos o arquivo.
 }
 public void MostrarValoresDeCFG(){
 Debug.Log ("Tela Cheia: " + CFG[0] + ". Graficos: " + CFG[1] + ". Resolução: " + CFG[2] + "x" + CFG[3] + ".");
 }
 public void UtilizarValoresDeCFG(){
 bool tlcheia = (CFG [0] == "true"); // Verificamos se a variavel de tela cheia está true no arquivo
 Screen.SetResolution (int.Parse (CFG [2]), int.Parse (CFG [3]), tlcheia); // Setamos a resolucao e se tem tela cheia ou não.
 }
}


Muito bom
avatar
weslleyFx
Moderador

Masculino PONTOS : 2451
REPUTAÇÃO : 538
Idade : 19
Áreas de atuação : C#
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Como salvar dados em arquivos de texto .txt, .ini ou . qualquer coisa.

Mensagem por luKkaSs em Sex Maio 13, 2016 9:08 am

Muito bom msm esse script! 
mais ai vei a duvida, como ler algo assim?
Código:
id, valor
0, 15
1, 54
ou seja acessar o valor de um id dentro do arquivo, ou melhor ler(escreve) um arquivo com mais de uma coluna
avatar
luKkaSs
MembroAvançado

Masculino PONTOS : 610
REPUTAÇÃO : 16
Idade : 21
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Como salvar dados em arquivos de texto .txt, .ini ou . qualquer coisa.

Mensagem por RenanMSV em Sex Maio 13, 2016 5:46 pm

Vamos considerar que escrevemos este arquivo aqui:

Código:

fullscreen : true
graphicslevel : 1
width : 1024
height : 768

Para fazer a leitura correta basta:

Ao recuperar a linha utilizar o método Split e o Trim. Assim:

Código:

string[] value = linha.Split(':');
value [0] = value [0].Trim ();
value [1] = value [1].Trim ();
print(value[0] + value[1]);

Perceba que com o método Split separamos a string da linha de nosso arquivo pelo char ":", ou seja em cada linha de seu arquivo value[0] vai guardar o ID e value[1] vai guardar o valor!.
Perceba que usamos o método Trim. Ele vai tirar os espaços desnecessários da string. É necessário pois nosso arquivo foi salvo usando espaços entre ":" para ficar melhor pra ler e entender o arquivo.

Resultado exemplo:
Código:

value[0] = "fullscreen"; //ID
value[1] = "true"; //valor

Agora voce só precisa verificar o ID e guardar o valor em uma variavel compativel com o id.


PS: Eu usei o ID como string porque pra mim é mais amigavel. Mas voce pode usar numeros tambem, use o Parse para transformar a string em inteiro.
avatar
RenanMSV
Instrutor

Masculino PONTOS : 1741
REPUTAÇÃO : 324
Áreas de atuação : Programação em C#, PHP. SQL, JavaScript (Web)
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Como salvar dados em arquivos de texto .txt, .ini ou . qualquer coisa.

Mensagem por DuViDoSo34 em Qui Abr 20, 2017 9:53 pm

E se eu quisesse apenas salvar uma int dinheiro e usa-la sempre que a pessoa entrasse no jogo?
avatar
DuViDoSo34
Modelador

Masculino PONTOS : 745
REPUTAÇÃO : 107
Idade : 17
Áreas de atuação : Modelagem LowPoly, Cozinha Daqui de Casa.
Respeito as regras :

Ver perfil do usuário http://www.naotenho.com.br

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Como salvar dados em arquivos de texto .txt, .ini ou . qualquer coisa.

Mensagem por RenanMSV em Qui Abr 20, 2017 10:36 pm

Ai é melhor usar PlayerPrefs
avatar
RenanMSV
Instrutor

Masculino PONTOS : 1741
REPUTAÇÃO : 324
Áreas de atuação : Programação em C#, PHP. SQL, JavaScript (Web)
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Como salvar dados em arquivos de texto .txt, .ini ou . qualquer coisa.

Mensagem por DuViDoSo34 em Sex Abr 21, 2017 11:32 am

ei sei só usei "dinheiro" como exemplo são muitas variáveis para salvar no playerPrefs isso iria travar o jogo. nn tem como salvar em um arquivo de um jeito seguro e criptografado?
avatar
DuViDoSo34
Modelador

Masculino PONTOS : 745
REPUTAÇÃO : 107
Idade : 17
Áreas de atuação : Modelagem LowPoly, Cozinha Daqui de Casa.
Respeito as regras :

Ver perfil do usuário http://www.naotenho.com.br

Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

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