Jump to content
Rpg²S Forum
  • 0

Si possono inserire/sostituire files in un archivio encrypted?


nihil-omen
 Share

Question

Cari ragassuoli eccomi di nuovo qui con un nuovo GRANDE problema, che se riuscissi a risolvere, potrebbe permettermi di realizzare un paio di ideine carine che ho per la testa! :D

 

Il GRANDE problema è il seguente:

Come alcuni di voi già sanno, ho creato per il mio progetto (2rA) un sistema di autoupdate online.

Come sistema funziona (più o meno) egregiamente (a volte si impalla, quando ci sono troppi aggiornamenti da fare o una linea troppo lenta, ma ho già predisposto il modo per aggiornare manualmente il tutto)...

Il problema è che smette di funzionare egregiamente, o meglio, non funziona manco per una cippa, se distribuisco il gioco con l'opzione "create encrypted archive"!

La spiegazione è ovvia, creando l'archivio, il gioco cerca le risorse dentro l'archivio e:

1) non ci sono le cartelle "Graphics" e "Data", quindi gli aggiornamenti a quelle destinazioni falliscono miseramente

2) anche aggiungendo tali cartelle, le risorse risultano comunque esterne all'archivio ed il gioco non se le fila di pezza

 

Quindi il fulcro è: esiste un modo per far sì che tali aggiornamenti vengano messi automaticamente, via script insomma, dentro l'archivio? (che dovrebbe essere "Game.rgssad", giusto? XD)

 

Se non trovo il modo per farlo, sarò costretto a disabilitare gli autoupdate (per riattivarli ESCLUSIVAMENTE nelle sessioni di betatesting, dove distribuire il gioco non criptato ai betatester mi sembra normale oltre che utile), a meno che non decida di far fare un update di TUTTO l'archivio, che ok, renderlo automatico ed evitare il doverlo scaricare installare all'utente è comodo, ma peserebbe un po' TROPPO...

 

Qualche consiglio?

Edited by nihil-omen

http://i30.tinypic.com/xehois.gif

} 2rA - web site {

E' disponibile il primo capitolo completo di 2rA!

} 2rA: Capitolo I {

Link to comment
Share on other sites

Recommended Posts

  • 0
Oh! Figo! *___*

Grazie! Ora ho capito molto di più!

 

Però non ho ancora capito come funziona la funzione versione ù____ù""

Cioè in base a cosa legge che versione del gioco è? :O

Non lo capisci perché è una funzione di libKeroro.dll, dll che è stata creata da zero...Solo l'autore può dirti come usarla :P

http://i1141.photobucket.com/albums/n597/RazakGik/New-age-retro-hippie-psy_zpsde262717.gif

 

 

 

Sei un figo! *_____________*

Auguri Hash! Sempre nell'ombra a spiare e uno dei pochi che tentanto di tenere la Chat viva.
Non tutti sanno che è uno dei migliori programmatori/scripter di Rpg2s. ;D

The Tao gave birth to machine language. Machine language gave
birth to the assembler.
The assembler gave birth to the compiler. Now there are ten
thousand languages.
Each language has its purpose, however humble. Each language
expresses the Yin and Yang of software. Each language has its
place within the Tao.
But do not program in COBOL if you can avoid it.

Prince Wang's programmer was coding software. His fingers
danced upon the keyboard. The program compiled without an
error message, and the program ran like a gentle wind.
"Excellent!" the Prince exclaimed, "Your technique is faultless!"
"Technique?" said the programmer turning from his terminal,
"What I follow is Tao -- beyond all techniques! When I first
began to program I would see before me the whole problem in
one mass. After three years I no longer saw this mass. Instead, I
used subroutines. But now I see nothing. My whole being exists
in a formless void. My senses are idle. My spirit, free to work
without plan, follows its own instinct. In short, my program
writes itself. True, sometimes there are difficult problems. I see
them coming, I slow down, I watch silently. Then I change a
single line of code and the difficulties vanish like puffs of idle
smoke. I then compile the program. I sit still and let the joy of
the work fill my being. I close my eyes for a moment and then
log off."
Prince Wang said, "Would that all of my programmers were as
wise!

 



Mi spiace Apo
http://i1141.photobucket.com/albums/n597/RazakGik/Apo.png

 

http://i1141.photobucket.com/albums/n597/RazakGik/No-plastic-forks-2.gif
(Nono approves)

L'inizio di tutto:

 

[22:46] <TioBrando> Penso che le forchette di plastica siano una grande invenzione per il nuovo ordine mondiale...Il fatto che si rompano spesso le rende i catalizzatori perfetti di rabbia e frustrazione, le cose più importanti per rendere manipolabile la mente umana...
[22:46] <TioBrando> Le logge massoniche le hanno inventate chiaramente per questo scopo

 


Il mio credo:

 

E di più vi dico francamente, châio non mi sottometto alla mia infelicità , né piego il capo al destino, o vengo seco a patti, come fanno gli altri uomini; e ardisco desiderare la morte, e desiderarla sopra ogni cosa, con tanto ardore e con tanta sincerità , con quanta credo fermamente che non sia desiderata al mondo se non da pochissimi. Né vi parlerei così se non fossi ben certo che, giunta lâora, il fatto non ismentirà le mie parole; perché quantunque io non vegga ancora alcun esito alla mia vita, pure ho un sentimento dentro, che quasi mi fa sicuro che lâora châio dico non sia lontana. Troppo sono maturo alla morte, troppo mi pare assurdo e incredibile di dovere, così morto come sono spiritualmente, così conchiusa in me da ogni parte la favola della vita, durare ancora quaranta o cinquantâanni, quanti mi sono minacciati dalla natura. Al solo pensiero di questa cosa io rabbrividisco. Ma come ci avviene di tutti quei mali che vincono, per così dire, la forza immaginativa, così questo mi pare un sogno e unâillusione, impossibile a verificarsi. Anzi se qualcuno mi parla di un avvenire lontano come di cosa che mi appartenga, non posso tenermi dal sorridere fra me stesso: tanta confidenza ho che la via che mi resta a compiere non sia lunga. E questo, posso dire, è il solo pensiero che mi sostiene. Libri e studi, che spesso mi maraviglio dâaver tanto amato, disegni di cose grandi, e speranze di gloria e dâimmortalità , sono cose delle quali è anche passato il tempo di ridere. Dei disegni e delle speranze di questo secolo non rido: desidero loro con tutta lâanima ogni miglior successo possibile, e lodo, ammiro ed onoro altamente e sincerissimamente il buon volere: ma non invidio però i posteri, né quelli che hanno ancora a vivere lungamente. In altri tempi ho invidiato gli sciocchi e gli stolti, e quelli che hanno un gran concetto di se medesimi; e volentieri mi sarei cambiato con qualcuno di loro. Oggi non invidio più né stolti né savi, né grandi né piccoli, né deboli né potenti. Invidio i morti, e solamente con loro mi cambierei. Ogni immaginazione piacevole, ogni pensiero dellâavvenire, châio fo, come accade, nella mia solitudine, e con cui vo passando il tempo, consiste nella morte, e di là non sa uscire. Né in questo desiderio la ricordanza dei sogni della prima età , e il pensiero dâesser vissuto invano, mi turbano più, come solevano. Se ottengo la morte morrò così tranquillo e così contento, come se mai nullâaltro avessi sperato né desiderato al mondo. Questo è il solo benefizio che può riconciliarmi al destino. Se mi fosse proposta da un lato la fortuna e la fama di Cesare o di Alessandro netta da ogni macchia, dallâaltro di morir oggi, e che dovessi scegliere, io direi, morir oggi, e non vorrei tempo a risolvermi.

 



Citazioni memorabili:


Maratona di Metal Gear: arrivato allo scontro con il Metal Gear Rex di MGS mi squilla il telefono e metto in pausa:

[18:41] <hashakgik> telefono ç.ç
[18:42] <@SeraphAndrew> rispondigli che stai fermando un attacco nucleare
[18:42] <@SeraphAndrew> e che non puoi stare al telefono
[18:42] <sarde> lol
[18:42] <hashakgik> lol
[18:42] <hashakgik> Detto
[18:42] <sarde> che detto da hasha nn è cosi strano
[18:43] <@SeraphAndrew> xDDD

[22:37] <HashakGik> Uno dei misteri della vita...
[22:37] <HashakGik> Come "Come nascono i bambini?"
[22:38] <SpeedHunter> scusa
[22:38] <SpeedHunter> ma se i bambini
[22:38] <SpeedHunter> nascono dalle pance delle madri
[22:38] <SpeedHunter> la rpima donna
[22:38] <SpeedHunter> come cazzo è nata
[22:38] <SpeedHunter> ?
[22:38] <SpeedHunter> e chi cazzo l'ha penetrata?
[22:38] <SpeedHunter> la don inesistente
[22:38] <SpeedHunter> che ancora nonera nata
[22:39] <SpeedHunter> perchè non esisteva
[22:39] <SpeedHunter> oddio
[22:40] <HashakGik> Ti perdi in inutili dettagli, dovresti accontentarti del fatto che i bambini nascono ricorsivamente e che la vita crea nuove fork dello stesso processo
[22:41] <SpeedHunter> ma io mi riprdouco per scissione
[22:41] <HashakGik> Dovresti chiederti piuttosto perché non siamo ancora andati in stack overflow
[22:41] <SpeedHunter> intanto che vado
[22:41] <SpeedHunter> come le meduse
[22:42] <HashakGik> Quindi non è un tuo problema la fine dell'umanità causata da un errore di memoria...
[22:42] <SpeedHunter> nono
[22:42] <SpeedHunter> asd
[22:42] <HashakGik> Buon per te

Gli inconvenienti di essere il boss finale, ovvero: "Perché due membri del party spariscono inspiegabilmente e ciò fa arrabbiare il boss finale?"

[14:16] <HashakGik> E se fossero finiti proprio dentro al covo del boss finale?
[14:16] <HashakGik> Mandati a loro insaputa a combattere
[14:16] <HashakGik> O come diversivo per un attacco frontale
[14:16] <Macha> ahaha, e lo beccano mentre si fa la doccia? XD
[14:16] <HashakGik> lol
[14:16] <Macha> questo giustificherebbe l'incazzatura, sisi
[14:17] <HashakGik> Purtroppo è un gioco serio e il boss finale se ne è accorto ed è già a terrorizzare i saggi di persona
[14:17] <Macha> oppure per sbaglio gli ammazzano l'animaletto domestico preferito per mangiare
[14:17] <Macha> o anche sì, si tratta di un terreno di sua proprietÃ
[14:17] <Macha> o il protagonista rischia di scoprire qualche segreto sul posto che poi andrebbe a vantaggio dei residenti del villaggio
[14:18] <Macha> un segreto non necessariamente legato ad armi o artefatti leggendari eh
[14:18] <HashakGik> Il codice del suo bancomat
[14:19] <HashakGik> Per mobilitare eserciti i boss finali devono essere molto ricchi
[14:19] <Macha> AHAHAHAH
[14:19] <Macha> bellissimo
[14:20] <Macha> nascondere il codice del bancomat in una noce
[14:20] <HashakGik> lol

 




In Psyche we trust!
(Galleria pissichedelica)

http://img691.imageshack.us/img691/66/fishandlove.gif
http://i1141.photobucket.com/albums/n597/RazakGik/Psy-Mayo_zps5bda44c8.gif
http://i1141.photobucket.com/albums/n597/RazakGik/Psychedelic-Mantis.gif
http://img263.imageshack.us/img263/385/nonopsichedelica.gif
http://img19.imageshack.us/img19/2960/cassatapsichedelica.gif
http://img815.imageshack.us/img815/2467/pollooooooooooooopsiche.gif
http://img253.imageshack.us/img253/1517/blueshoesofpsichedelia.gif
http://i1141.photobucket.com/albums/n597/RazakGik/Psyhieroglyphfish.gif
http://i1141.photobucket.com/albums/n597/RazakGik/Santaspsy.gif


Chicken of Bodom

http://img440.imageshack.us/img440/9769/chickenofbodom.png


Gifts from R2s:


Testament:
http://img263.imageshack.us/img263/385/nonopsichedelica.gif
Sadico:
http://img196.imageshack.us/img196/5707/pescepsichedelico.png


 

 

 

Link to comment
Share on other sites

  • 0

La funzione version restituisce una stringa fissata da me e serve solo a distinguere una dll da una più aggiornata, perché prevedo di aggiungere nuove funzioni e potrà essere utile controllare di avere la dll "compatibile".

Ho aggiornato la dll, mi ero scordato di togliere la creazione del file debug.txt, e ho aggiunto una classe che la gestisce =)

 

Download aggiornato

 

#==============================================================================# ** Kerolib Class#------------------------------------------------------------------------------#  This class handles the libKeroro.dll. Its functions include the md5#  hash of a file. Add this class before Game_Temp.#  Version 01#============================================================================== class Kerolib  #--------------------------------------------------------------------------  # * Object Initialization  #--------------------------------------------------------------------------  def initialize	@kero_md5 = Win32API.new('libKeroro.dll','file_md5',['P','P'],'V')	@kero_ver = Win32API.new('libKeroro.dll','version',['P'],'V')	@md5 = ' '*32 #buffer di 32 byte	@buffer = ' '*8 #buffer di 8 byte  end  #--------------------------------------------------------------------------  # * Get the md5 hash of the file given by filename  #--------------------------------------------------------------------------  def hash(filename)	@md5 = ' '*32  #crea un nuovo buffer	@kero_md5.call(filename,@md5)	return @md5  end  #--------------------------------------------------------------------------  # * Get the Version of the DLL  #--------------------------------------------------------------------------  def version	@buffer = ' '*8 #crea un nuovo buffer	@kero_ver.call(@buffer)	return @buffer  endend

 

test code:

  kerolib = Kerolib.new  a = kerolib.hash('Game.exe')  b = kerolib.hash('Game.ini')  c = kerolib.version()  p a  p b  p c

Edited by Keroro

I Miei Script:
Salva Schermata (3 Aprile 2012)
Attacco Personalizzabile (2 Aprile 2012)
Keyboard Input (Porting) (17 Marzo 2012)
Continua...

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...