[Tutoriel]Sauvegarde avec MEM$

Page 1 sur 2 1, 2  Suivant

Voir le sujet précédent Voir le sujet suivant Aller en bas

[Tutoriel]Sauvegarde avec MEM$

Message par J8B le Jeu 3 Avr - 18:19

O)INTRODUCTION
Bienvenue dans le tutoriel de sauvegarde MEM$.
MEM$ est une variable système alphanumérique pouvant contenir 256 caractères. (merci pour la correction)
Elle est utilisée pour créer des sauvegardes et des chargements.
Mais avant de savoir comment sauvegarder votre fichier MEM$, il faut savoir le remplir.

I)MEM$ ET SAUVEGARDER
Votre jeu fonctionne grâce aux variables, et celles qui le font avancer
devront être sauvegardées. Etant donné votre place limité dans le fichier MEM$,
je vous conseille de faire attention à ne sauvegarder que les variables utiles.
Par exemple on pourra retenir les points de vie, les points d'expérience,
les repères du jeu comme le chapitre ou autre, ...
Pour résumer, MEM$ aura pour valeur toutes les variables que vous voulez à la suite
des unes des autres.
On l'écrira de cette façon :
MEM$=VARIABLE1$+VARIABLE2$+VARIABLE3$
MEM$=MEM$+VARIABLE4$+VARIABLE5$+...

Mais les variables numériques devront être transformées en alphanumériques avant
d'être intégré dans MEM$. Pour cela on utilisera la fonction STR$().
Le problème qui se pose avec STR$() c'est quand la variable aura sa valeur qui
dépassera 9. Car le nombre de chiffres maximum qu'aura la variable est très important
pour la sauvegarde. C'est à vous de déterminer le maximum de chiffres de votre variable.
Ex: STR$(10)="10" ici ça va, STR$(09)="9" là soucis on voudrait "09"
Pour régler ça, on utilise la fonction LEN() pour savoir la longueur afin de pouvoir
rajouter le 0 sous certaine condition.
On fera donc :
X=9  <--La Variable X pourra atteindre 2 chiffres au maximum (ex:99), ici elle n'en a qu'1
IF LEN(STR$(X))==2 THEN MEM$=MEM$+STR$(X)  <--Vérifie la longueur de X en condition
IF LEN(STR$(X))==1 THEN MEM$=MEM$+"0"+STR$(X)  <--Ajout d'un zéro car X n'atteint pas son maximum de chiffres.

Une fois votre valeur de MEM$ terminée, il ne vous reste plus qu'à sauvegarder dans un fichier, pour cela faites:
SAVE"MEM:NomDeFichier"

II)CHARGEMENT
Maintenant que vous savez sauvegarder, il faut savoir comment charger votre sauvegarde.
Tout d'abord il va falloir charger votre fichier de sauvegarde dans la variable MEM$, pour cela:
LOAD"MEM:NomDeFichier" <-- La Variable MEM$ prend la valeur de votre fichier de sauvegarde
Maintenant il ne reste plus qu'à associer toutes les variables à leurs valeurs contenues dans MEM$.
Pour le faire, on utilisera les fonctions VAL() (pour les variables numériques) et MID$().
VAL() sert à transformer une valeur alphanumérique en valeur numérique.
ex: VAL("009")=9
MID$(FICHIER$,positiondumot,longueurdumot) renvoie le mot (ou chaine de caractères)
contenue dans la variable FICHIER$, à la position à déterminer dans FICHIERS$ et ayant une longueur à déterminer.
Ex:
'MEM$="FirstDeuxTroisQuatro...AvantX99Fin" <--Exemple(la position commence par 0)
VARIABLE1$=MID$(MEM$,0,5) <--Sa valeur sera "First"
VARIABLE2$=MID$(MEM$,5,4) <--Sa valeur sera "Deux"
...
X=VAL(MID$(MEM$,55,2) <--Sa valeur sera 99

Voilà vous avez compris comment on charge.

III)CONCLUSION
Sauvegarder avec MEM$ reste facile à comprendre, mais si vous n'avez pas tout compris
ou que quelque chose vous paraît pas clair, n'hésitez pas à poser votre question.
Sachez qu'il existe d'autres moyens pour créer des sauvegardes comme la technique du GRP, mais ceci est une autre histoire.
Maintenant passez à la pratique !!
S'il y a une erreur, prière de me le signaler.
Merci d'avoir lu ^^.


Dernière édition par J8B le Ven 18 Avr - 20:29, édité 3 fois
avatar
J8B

Messages : 407
Date d'inscription : 27/10/2013
Localisation : Tarn

Voir le profil de l'utilisateur http://webcomics.fr/member/J8B

Revenir en haut Aller en bas

Re: [Tutoriel]Sauvegarde avec MEM$

Message par fenixelf le Jeu 3 Avr - 19:39

Merci beaucoup, ça me sera utile quand j'aurai tout assimilé.
Après l'avoir relu 10 fois et tester une centaines de commandes, je réussirais !!!

_________________
Get Ready... Twisted Evil
avatar
fenixelf

Messages : 228
Date d'inscription : 08/03/2014
Age : 18
Localisation : Île de France - La ville du bois

Voir le profil de l'utilisateur http://www.fenixelf-drawing.fr

Revenir en haut Aller en bas

Re: [Tutoriel]Sauvegarde avec MEM$

Message par S.lexis le Dim 13 Avr - 13:45

Pourquoi vous reprenez mes sous-tutos un par un...  Sad 

_________________
Plus ou moins de retour
avatar
S.lexis

Messages : 387
Date d'inscription : 24/08/2013

Voir le profil de l'utilisateur http://3dszone.netau.net

Revenir en haut Aller en bas

Re: [Tutoriel]Sauvegarde avec MEM$

Message par J8B le Dim 13 Avr - 19:48

Tes sous-tutos ? Pas au courant de ça. Faut dire que je n'ai pas lu tous les tutos du forum tant que je n'en ai pas l'utilité. Et puis on me l'a demandé, après j'ai regardé dans "Réservations des annonces de tuto" et rien de marqué, et le sujet des autres tutos ne me laissaient pas croire que quelqu'un l'avait déjà traité. Après tout ça, je me suis dis que je pouvais le faire.  Neutral 

_________________
Statut (MàJ:04 Août 2017): Sur le projet "Virtual Bébête" (avancée ~28% Démo_B3).
Mes BDs et mes dessins, c'est sur Webcomics, http://www.webcomics.fr/member/J8B

And i'm here too: http://petitcomputer.wikia.com/wiki/User:J8B
avatar
J8B

Messages : 407
Date d'inscription : 27/10/2013
Localisation : Tarn

Voir le profil de l'utilisateur http://webcomics.fr/member/J8B

Revenir en haut Aller en bas

Re: [Tutoriel]Sauvegarde avec MEM$

Message par S.lexis le Lun 14 Avr - 19:51

Yup le titre concerne les fichiers image, mais en "bonus" j'explique rapidement MEM.
On est pas d'accord sur le nombre de lettres qu'elle peut contenir...

_________________
Plus ou moins de retour
avatar
S.lexis

Messages : 387
Date d'inscription : 24/08/2013

Voir le profil de l'utilisateur http://3dszone.netau.net

Revenir en haut Aller en bas

Re: [Tutoriel]Sauvegarde avec MEM$

Message par J8B le Mar 15 Avr - 1:08

J'ai vu les deux écrit. 255 et 256 mais c'est probablement 256 qu'elle peut en contenir. Bien que 255, je l'ai vu sur le manuel de stratégie, mais je pense qu'ils ont compté en oubliant le 0.

_________________
Statut (MàJ:04 Août 2017): Sur le projet "Virtual Bébête" (avancée ~28% Démo_B3).
Mes BDs et mes dessins, c'est sur Webcomics, http://www.webcomics.fr/member/J8B

And i'm here too: http://petitcomputer.wikia.com/wiki/User:J8B
avatar
J8B

Messages : 407
Date d'inscription : 27/10/2013
Localisation : Tarn

Voir le profil de l'utilisateur http://webcomics.fr/member/J8B

Revenir en haut Aller en bas

Re: [Tutoriel]Sauvegarde avec MEM$

Message par fenixelf le Jeu 17 Avr - 20:53

Attends, y'a un truc qui n'est pas clair : dans STR$ tu mets un nombre alors que tu parles de transformer une variable numérique en variable charactère?

_________________
Get Ready... Twisted Evil
avatar
fenixelf

Messages : 228
Date d'inscription : 08/03/2014
Age : 18
Localisation : Île de France - La ville du bois

Voir le profil de l'utilisateur http://www.fenixelf-drawing.fr

Revenir en haut Aller en bas

Re: [Tutoriel]Sauvegarde avec MEM$

Message par J8B le Ven 18 Avr - 20:18

En fait STR$ transforme un nombre ou la valeur d'une variable numérique en un mot.
Quand je dis variable c'est sous entendu sa valeur.

_________________
Statut (MàJ:04 Août 2017): Sur le projet "Virtual Bébête" (avancée ~28% Démo_B3).
Mes BDs et mes dessins, c'est sur Webcomics, http://www.webcomics.fr/member/J8B

And i'm here too: http://petitcomputer.wikia.com/wiki/User:J8B
avatar
J8B

Messages : 407
Date d'inscription : 27/10/2013
Localisation : Tarn

Voir le profil de l'utilisateur http://webcomics.fr/member/J8B

Revenir en haut Aller en bas

Re: [Tutoriel]Sauvegarde avec MEM$

Message par S.lexis le Ven 18 Avr - 21:53

Autant compter le "0" en parlant du binaire je veux bien, mais quitte à faire un tableau de caractères, autant faire des puissances de 2 directement... J'essayerai en tout cas.
On a l'erreur String too long des fois, mais pour plus de 260 je pense...

fenixelf : comme il l'explique c'est la valeur qu'on convertit, pas la variable. Si tu veux avoir une variable de type nombre sous forme de variable de type chaîne, fais MYVAR$=STR$(MYVAR). Tu conserveras les deux variables, mais tu les auras sous les deux formats !

_________________
Plus ou moins de retour
avatar
S.lexis

Messages : 387
Date d'inscription : 24/08/2013

Voir le profil de l'utilisateur http://3dszone.netau.net

Revenir en haut Aller en bas

Re: [Tutoriel]Sauvegarde avec MEM$

Message par fenixelf le Lun 21 Avr - 10:54

Ooook... merci bien. Cependant, j'ai besoin d'énormément de temps pour comprendre (ce qui est bien c'est que quand j'ai compris, je retiens sur le bout des doigts). Du coup...

Si je veux stocker (imaginons) HP=120 ; NAME$=CHRIS ; X=241 ; Y=83 dans MEM$ J'écrirais :
Code:
HP$=STR$(HP):X$=STR(X):Y$=STR(Y)
MEM$=HP$+NAME$+X$+Y$
SAVE "MEM:CHRPERS"
Et pour les déstocker :
Code:
LOAD "MEM:CHRPERS"
HP$=MID$(MEM$,0,3):NAME$=MID$(MEM$,3,5):X$=MID$(MEM$,8,3):Y$=MID$(MEM$,10,3)

HP=VAL(HP$):X=VAL(X$):Y=VAL(Y$)
J'espère que ça marche, ça me permet de contourner LEN (que j'apprécie pas du tout 0_0 )
Si c'est pas ça, pourrais tu me corriger?

_________________
Get Ready... Twisted Evil
avatar
fenixelf

Messages : 228
Date d'inscription : 08/03/2014
Age : 18
Localisation : Île de France - La ville du bois

Voir le profil de l'utilisateur http://www.fenixelf-drawing.fr

Revenir en haut Aller en bas

Re: [Tutoriel]Sauvegarde avec MEM$

Message par S.lexis le Lun 21 Avr - 15:36

De 1 :
NAME$="CHRIS"
De 2 : dans HP$=STR$(HP):X$=STR*(X):Y$=STR*(Y) il te manque des $ aux astérisques
De 3 : Si HP<100 ou <10, la taille va changer, il faudra utiliser la technique décrite dans le tuto. Donc LEN est le seul moyen de faire ce boulot. Et sache que mesurer des chaînes de caractères est très fréquent en programmation Wink
Sinon bah tu peux retenir ça, c'est à peu près correct.

_________________
Plus ou moins de retour
avatar
S.lexis

Messages : 387
Date d'inscription : 24/08/2013

Voir le profil de l'utilisateur http://3dszone.netau.net

Revenir en haut Aller en bas

Re: [Tutoriel]Sauvegarde avec MEM$

Message par fenixelf le Lun 21 Avr - 18:52

Quel serait le bout de code exact?
Ca me donnera beaucoup d'indications pour comprendre et généraliser à mes autres programmes.

_________________
Get Ready... Twisted Evil
avatar
fenixelf

Messages : 228
Date d'inscription : 08/03/2014
Age : 18
Localisation : Île de France - La ville du bois

Voir le profil de l'utilisateur http://www.fenixelf-drawing.fr

Revenir en haut Aller en bas

Re: [Tutoriel]Sauvegarde avec MEM$

Message par J8B le Lun 21 Avr - 20:21

LEN est super simple à comprendre, il te donne le nombre de caractère que comporte un mot.

HP=120 comporte 3 caractères, pour le savoir LEN(STR$(HP))
Le problème est si tes HP=99, il comporte que 2 caractères ce qui va décaler tout dans MEM$. C'est pour cela que tu dois ajouter un zéro.
HP$=STR$(HP):X$=STR(X):Y$=STR(Y)
IF LEN(HP$)==3 THEN MEM$=HP$
IF LEN(HP$)==2 THEN MEM$="0"+HP$
IF LEN(HP$)==1 THEN MEM$="00"+HP$
MEM$=MEM$+NAME$+X$+Y$
Bien sûr si les variables NAME$, X$ et Y$ peuvent avoir une longueur de caractères différents, faudra le vérifier et agir en conséquence.


_________________
Statut (MàJ:04 Août 2017): Sur le projet "Virtual Bébête" (avancée ~28% Démo_B3).
Mes BDs et mes dessins, c'est sur Webcomics, http://www.webcomics.fr/member/J8B

And i'm here too: http://petitcomputer.wikia.com/wiki/User:J8B
avatar
J8B

Messages : 407
Date d'inscription : 27/10/2013
Localisation : Tarn

Voir le profil de l'utilisateur http://webcomics.fr/member/J8B

Revenir en haut Aller en bas

Re: [Tutoriel]Sauvegarde avec MEM$

Message par fenixelf le Mar 22 Avr - 10:04

OOOOOOOk... Tout s'éclaire, mais c'est vrai que j'ai souvent besoin qu'on me réexplique plusieurs fois sous des coutures différentes. Merci encore.
avatar
fenixelf

Messages : 228
Date d'inscription : 08/03/2014
Age : 18
Localisation : Île de France - La ville du bois

Voir le profil de l'utilisateur http://www.fenixelf-drawing.fr

Revenir en haut Aller en bas

Re: [Tutoriel]Sauvegarde avec MEM$

Message par fenixelf le Mar 22 Avr - 10:10

C'est dingue, grâce à vous, je comprends tout le tutoooooo ! bounce bounce bounce sunny cheers 
 bom                            sunny 
PSCHHHH.........BOOM !
Bref... Embarassed Trop content.
avatar
fenixelf

Messages : 228
Date d'inscription : 08/03/2014
Age : 18
Localisation : Île de France - La ville du bois

Voir le profil de l'utilisateur http://www.fenixelf-drawing.fr

Revenir en haut Aller en bas

Re: [Tutoriel]Sauvegarde avec MEM$

Message par S.lexis le Mar 22 Avr - 21:54

Je suis ravi d'avoir résolu cette énigme. :hap:

_________________
Plus ou moins de retour
avatar
S.lexis

Messages : 387
Date d'inscription : 24/08/2013

Voir le profil de l'utilisateur http://3dszone.netau.net

Revenir en haut Aller en bas

Re: [Tutoriel]Sauvegarde avec MEM$

Message par Woni le Sam 15 Nov - 15:41

Comment on fait les patch ?
avatar
Woni

Messages : 13
Date d'inscription : 11/11/2014

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: [Tutoriel]Sauvegarde avec MEM$

Message par J8B le Sam 15 Nov - 17:18

Ce n'est pas possible de faire des patch sur Petit computer.

_________________
Statut (MàJ:04 Août 2017): Sur le projet "Virtual Bébête" (avancée ~28% Démo_B3).
Mes BDs et mes dessins, c'est sur Webcomics, http://www.webcomics.fr/member/J8B

And i'm here too: http://petitcomputer.wikia.com/wiki/User:J8B
avatar
J8B

Messages : 407
Date d'inscription : 27/10/2013
Localisation : Tarn

Voir le profil de l'utilisateur http://webcomics.fr/member/J8B

Revenir en haut Aller en bas

Re: [Tutoriel]Sauvegarde avec MEM$

Message par Woni le Sam 15 Nov - 19:19

Raah zut.
avatar
Woni

Messages : 13
Date d'inscription : 11/11/2014

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: [Tutoriel]Sauvegarde avec MEM$

Message par fenixelf le Mar 18 Nov - 14:25

C'est quoi un patch ? Raconte Smile !

_________________
Get Ready... Twisted Evil
avatar
fenixelf

Messages : 228
Date d'inscription : 08/03/2014
Age : 18
Localisation : Île de France - La ville du bois

Voir le profil de l'utilisateur http://www.fenixelf-drawing.fr

Revenir en haut Aller en bas

Re: [Tutoriel]Sauvegarde avec MEM$

Message par J8B le Mar 18 Nov - 20:02

Un patch est un petit programme qui sert à corriger les bugs ou à modifier une langue d'un autre programme spécifique. C'est très courant sur PC, mais impossible à faire sur PetitComputer.

_________________
Statut (MàJ:04 Août 2017): Sur le projet "Virtual Bébête" (avancée ~28% Démo_B3).
Mes BDs et mes dessins, c'est sur Webcomics, http://www.webcomics.fr/member/J8B

And i'm here too: http://petitcomputer.wikia.com/wiki/User:J8B
avatar
J8B

Messages : 407
Date d'inscription : 27/10/2013
Localisation : Tarn

Voir le profil de l'utilisateur http://webcomics.fr/member/J8B

Revenir en haut Aller en bas

Re: [Tutoriel]Sauvegarde avec MEM$

Message par fenixelf le Mer 19 Nov - 12:05

Ah et oui, impossible de faire réagir un programme sur un autre dans PTC...

_________________
Get Ready... Twisted Evil
avatar
fenixelf

Messages : 228
Date d'inscription : 08/03/2014
Age : 18
Localisation : Île de France - La ville du bois

Voir le profil de l'utilisateur http://www.fenixelf-drawing.fr

Revenir en haut Aller en bas

Re: [Tutoriel]Sauvegarde avec MEM$

Message par CounterClockWize le Dim 23 Nov - 22:43

Mut mut! scratch
hmmm! Il existe bien une commande pour effacer tout une ligne grace à son numéro?! Et ensuite la réécrire!
Donc... Ce serais possible d'appeler avec une ligne de code en "édite" un fichier qui contient les nouvelles lignes de codes et le numéro des anciennes à effacer...
Menfin vous voyez!
Une sorte de patch quoi avec quelque manip en édite!
Non?

_________________
If dindon =troue and marron =farce then ?"Chaud les marrons!" clown
avatar
CounterClockWize

Messages : 69
Date d'inscription : 23/08/2013

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: [Tutoriel]Sauvegarde avec MEM$

Message par Adriendu92 le Lun 24 Nov - 17:03

a bon c'est quoi cette commande ?

_________________
Le monde se partage en 10 ! Ceux qui connaissent le binaire et ceux qui ne le connaissent pas ! study
avatar
Adriendu92

Messages : 164
Date d'inscription : 07/12/2013
Age : 16
Localisation : Colombes

Voir le profil de l'utilisateur http://www.ptc-qr-code.sitew.fr/

Revenir en haut Aller en bas

Re: [Tutoriel]Sauvegarde avec MEM$

Message par J8B le Lun 24 Nov - 23:40

Non elle n'existe pas cette commande sur Petit Computer. C'est dommage mais c'est comme ça.

_________________
Statut (MàJ:04 Août 2017): Sur le projet "Virtual Bébête" (avancée ~28% Démo_B3).
Mes BDs et mes dessins, c'est sur Webcomics, http://www.webcomics.fr/member/J8B

And i'm here too: http://petitcomputer.wikia.com/wiki/User:J8B
avatar
J8B

Messages : 407
Date d'inscription : 27/10/2013
Localisation : Tarn

Voir le profil de l'utilisateur http://webcomics.fr/member/J8B

Revenir en haut Aller en bas

Re: [Tutoriel]Sauvegarde avec MEM$

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Page 1 sur 2 1, 2  Suivant

Voir le sujet précédent Voir le sujet suivant Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum