Conectar-se
Quem está conectado
30 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 30 Visitantes

Nenhum

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Ranking : Nota B
Notas recebidas : B + A + C
Data de inscrição : 29/10/2010
Número de Mensagens : 1013
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 79

Prêmios
   : 2
   : 0
   : 0
Ver perfil do usuário

Banco de Dados em arquivo externo

em Sab 23 Fev 2013, 02:48
E aí, caras? Estava criando uma base de dados por .ini, mas gostaria de impedir a edição da mesma por parte de jogadores, queria saber como criar um arquivo com uma extensão qualquer que funciona como uma .ini, que eu pudesse mandar informações para o mesmo e puxar info dele.

Até.
avatar
Ranking : Nota B
Notas recebidas : C + C + B
Data de inscrição : 28/07/2012
Número de Mensagens : 1281
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 73

Prêmios
   : 3
   : 1
   : 3
Ver perfil do usuário

Re: Banco de Dados em arquivo externo

em Seg 25 Fev 2013, 07:49
Voce pode zipar com senha, e usar uma dll de extrair zip, depois vc edita o arquivo extraido ere compacta com senha usando a dll.
Obs :me esqueci qual era
Ranking : Nota C
Notas recebidas : C+B
Data de inscrição : 26/07/2008
Número de Mensagens : 6037
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 288

Prêmios
   :
   :
   :
Ver perfil do usuário

Re: Banco de Dados em arquivo externo

em Seg 25 Fev 2013, 12:40
Você poderia usar um mapa.

map = ds_map_create()
....
Depois é só usar:

ds_map_replace(map, 'dinheiro', varDinheiro)
ds_map_replace(map, 'velocidade', varVelocidade)
....
Depois você usa isso para salvar:

str = ds_map_write(map)
file_open_read('arquivo.txt')
file_write_string(str)
file_close()
...
E para ler:
file_open_read('arquivo.txt')
str=file_read_string()
file_close()
ds_map_read(map, str)
....
Vai ficar tudo ilegível no arquivo.

Até mais!
avatar
Ranking : Nota B
Notas recebidas : B + A + C
Data de inscrição : 29/10/2010
Número de Mensagens : 1013
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 79

Prêmios
   : 2
   : 0
   : 0
Ver perfil do usuário

Re: Banco de Dados em arquivo externo

em Seg 25 Fev 2013, 12:48
E pra fazer depois ele se tornar um arquivo ineditável?
avatar
Ranking : Nota B
Notas recebidas : C + C + B
Data de inscrição : 28/07/2012
Número de Mensagens : 1281
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 73

Prêmios
   : 3
   : 1
   : 3
Ver perfil do usuário

Re: Banco de Dados em arquivo externo

em Seg 25 Fev 2013, 13:13
Eu tambem pensei nisso PedroX, pode ser com lists tbm, porem se alguem abrir o arquivo e ter ciencia que e um map do fm, podera hakear
Ranking : Nota C
Notas recebidas : C+B
Data de inscrição : 26/07/2008
Número de Mensagens : 6037
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 288

Prêmios
   :
   :
   :
Ver perfil do usuário

Re: Banco de Dados em arquivo externo

em Seg 25 Fev 2013, 13:14
Não tem como tornar ineditável. O que você pode fazer é zipar ou incluir no jogo (CTRL + SHIFT + L) e exportar para uma pasta pouco conhecida (temporariamente) e depois deletar.

Até mais!
avatar
Ranking : Nota B
Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Número de Mensagens : 2964
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 121

Prêmios
   : 1
   : 0
   : 3
Ver perfil do usuário

Re: Banco de Dados em arquivo externo

em Seg 25 Fev 2013, 16:37
Faça uma ds_list ou ds_map ou ds_grid ou... faça como o PedroX disse! Já gera uma string que não faz sentido pra olhos humanos.

Daí, antes de gravar o arquivo, encripte a string com uma senha que fica armazenada como constante dentro do jogo. Não sei como faz pra hackear um executável, mas me disseram que as constantes dos executáveis são impossíveis de serem acessadas, mesmo com todos os códigos abertos.

O arquivo continua editável, mas sem a senha, o hacker não vai saber transformar aquela string numa grid, list, map ou o que seja, porque o GM não vai conseguir fazer isso sozinho.

Cá pra nós, eu acho um exagero de segurança. O jogador comum não vai sequer tentar abrir o arquivo que ele não sabe o que faz. Um sistema desses seria viável pra um super jogo, muito acima dos padrões a que estamos acostumados. Mas um super jogo teria um sistema de cadastro e armazenamento de informações online. Nesse caso, o hacker teria que, primeiro, invadir o servidor, pra depois procurar uma forma de editar o arquivo.
avatar
Ranking : Nota B
Notas recebidas : B + A + C
Data de inscrição : 29/10/2010
Número de Mensagens : 1013
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 79

Prêmios
   : 2
   : 0
   : 0
Ver perfil do usuário

Re: Banco de Dados em arquivo externo

em Seg 25 Fev 2013, 17:02
@saim: Pior que é verdade.

Na real, eu queria criar um aplicativo pelo GM que pudesse editar a base de dados, mas na verdade, não há porquê fazer isso, e não poder também deixar editável direto pela .ini. Se o cara editar: E daí? Ele que use como der na telha, rs. Resumindo: Tópico inútil (pelo menos pra mim), podem trancar... '-'

Até mais! elephant
Ranking : Nota C
Notas recebidas : C+B
Data de inscrição : 26/07/2008
Número de Mensagens : 6037
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 288

Prêmios
   :
   :
   :
Ver perfil do usuário

Re: Banco de Dados em arquivo externo

em Seg 25 Fev 2013, 17:15
Enquanto o seu jogo for pouco jogado, pode usar um servidor (php) grátis para armazenar as informações. Precisaria de um arquivo para mandar as informações e outro para escrever. Você pode usar a NetRead.dll pra isso. Pode usar uma senha para evitar que qualquer um acesse as informações ou sobreescreva-as.

Exemplo:

netread('http://site.com/escrever.php?senha=suasenha&info='+info)
info = netread('http://site.com/ler.php?senha=suasenha')

Se você precisar mesmo disso, posso até ajudar.

Até!
Conteúdo patrocinado

Re: Banco de Dados em arquivo externo

Ver o tópico anteriorVoltar ao TopoVer o tópico seguinte
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum