Forum d'entraide à la création de jeux d'aventure
 
PortailPortail  AccueilAccueil  RechercherRechercher  S'enregistrerS'enregistrer  Connexion  
-45%
Le deal à ne pas rater :
WHIRLPOOL OWFC3C26X – Lave-vaisselle pose libre 14 couverts – ...
339 € 622 €
Voir le deal

 

 Faire une sauvegarde

Aller en bas 
3 participants
AuteurMessage
Gob
Adepte de la Grande Tasse Bleue
Adepte de la Grande Tasse Bleue
Gob


Nombre de messages : 108

Date d'inscription : 08/10/2021


Faire une sauvegarde Empty
MessageSujet: Faire une sauvegarde   Faire une sauvegarde EmptySam 30 Oct 2021 - 9:54

Bonjour, est-ce-que quelqu'un pourrait me dire la façon la plus simple de sauvegarder et recharger une room ?

J'utilise ça à l'entrée de la room:

-----------------------------------------------
if (Game.DoOnceOnly("Save level 1"))

SaveGameSlot (1," room 1 initial state ");
-----------------------------------------------

Quand je met ça pour reloader le niveau:
--------------------------
RestoreGameSlot(1);
----------------------------

... il ne veux pas y aller, il ne doit pas trouver où est mon player, et si je rajoute l'info, il voit un conflit.
Revenir en haut Aller en bas
Shai-la
Ouvrière en Chef de la Grande Tasse Bleue
Ouvrière en Chef de la Grande Tasse Bleue
Shai-la


Nombre de messages : 6018

Age : 45

Localisation : Montpellier

Date d'inscription : 17/04/2006


Faire une sauvegarde Empty
MessageSujet: Re: Faire une sauvegarde   Faire une sauvegarde EmptySam 30 Oct 2021 - 18:10

En fait, avec la fonction SaveGameSlot, tu ne sauvegardes pas une room, mais une progression du jeu sourire Et qui dépend donc de l'emplacement du joueur à ce moment.
Si tu souhaites réinitialiser une room à son état initial, utilise plutôt la commande "RestartRoom".
Revenir en haut Aller en bas
http://marionpoinsot.fr/video
Gob
Adepte de la Grande Tasse Bleue
Adepte de la Grande Tasse Bleue
Gob


Nombre de messages : 108

Date d'inscription : 08/10/2021


Faire une sauvegarde Empty
MessageSujet: Re: Faire une sauvegarde   Faire une sauvegarde EmptyMer 3 Nov 2021 - 17:13

Hello, en fait je n'ai même pas besoin de sauver, j'ai juste besoin de relancer une room dans son état initial. Ca devrait être simple.

Apparemment "RestartRoom" n'existe pas. Il y a "RestartGame" mais on ne peut pas lui dire de relancer une room particulière. J'ai essayé avec "ResetRoom(1)" mais ça ne reset que dalle.
Revenir en haut Aller en bas
Shai-la
Ouvrière en Chef de la Grande Tasse Bleue
Ouvrière en Chef de la Grande Tasse Bleue
Shai-la


Nombre de messages : 6018

Age : 45

Localisation : Montpellier

Date d'inscription : 17/04/2006


Faire une sauvegarde Empty
MessageSujet: Re: Faire une sauvegarde   Faire une sauvegarde EmptyJeu 4 Nov 2021 - 6:11

Hello ! Oui, autant pour moi, je voulais bien parler de la fonction ResetRoom sourire
Normalement c'est bien celle-là que tu dois utiliser, mais tu ne peux pas l'utiliser si le personnage joueur est dans cette pièce actuellement. Par exemple, si tu veux réinitialiser la Room 1, tu dois l'indiquer dans le script quand le joueur est dans la Room 2 (ou autre tant que ce n'est pas la Room 1). Et par la suite, quand il retournera dans la Room 1, elle sera alors réinitialisée.
Revenir en haut Aller en bas
http://marionpoinsot.fr/video
Gob
Adepte de la Grande Tasse Bleue
Adepte de la Grande Tasse Bleue
Gob


Nombre de messages : 108

Date d'inscription : 08/10/2021


Faire une sauvegarde Empty
MessageSujet: Re: Faire une sauvegarde   Faire une sauvegarde EmptyJeu 4 Nov 2021 - 9:29

Sauf qu'avec cette fonction, il ne réinitialise pas grand chose, juste l'inventaire. Je crois qu'il n'y a pas de solution, il faut que je fasse ma sauvegarde à la main, et c'est très compliqué car j'ai beaucoup de choses par niveau et source de bugs.

Du coup j'essaye de revenir à l'autre système où il sauvegarde tout à l'entrée du niveau. J'ai numéroté ma page de load à 301, ce qui devrait résoudre déjà un certain problème de disparition de sauvegarde.

Mais je n'arrive plus à lancer la sauvegarde, j'ai un conflit "Cannot run this command (cGob1.ChangeRoom(1,129,171) since there was aRestoreGameSlot command already queued to run in "room301.asc", line 6

Je n'y comprend rien, je ne dois pas mettre le RestoreGameSlot ? Je le met où alors ?
Revenir en haut Aller en bas
Shai-la
Ouvrière en Chef de la Grande Tasse Bleue
Ouvrière en Chef de la Grande Tasse Bleue
Shai-la


Nombre de messages : 6018

Age : 45

Localisation : Montpellier

Date d'inscription : 17/04/2006


Faire une sauvegarde Empty
MessageSujet: Re: Faire une sauvegarde   Faire une sauvegarde EmptyVen 5 Nov 2021 - 7:06

Le souci avec le RestoreGameSlot, c'est que ça va revenir à un état précédent de tout le jeu, et pas seulement de la Room. Ce qui peut être problématique en fonction de ce qu'a fait le joueur après cette sauvegarde, car il risque alors de devoir tout recommencer.

Normalement la fonction ResetRoom ne réinitialise pas l'inventaire, ça ne touche qu'une Room en particulier.
Revenir en haut Aller en bas
http://marionpoinsot.fr/video
Shai-la
Ouvrière en Chef de la Grande Tasse Bleue
Ouvrière en Chef de la Grande Tasse Bleue
Shai-la


Nombre de messages : 6018

Age : 45

Localisation : Montpellier

Date d'inscription : 17/04/2006


Faire une sauvegarde Empty
MessageSujet: Re: Faire une sauvegarde   Faire une sauvegarde EmptyVen 5 Nov 2021 - 8:11

Tu peux nous rejoindre sur Discord, on pourra te répondre plus rapidement sourire
https://discord.com/channels/877172357377175602/877172357377175605
Revenir en haut Aller en bas
http://marionpoinsot.fr/video
Shai-la
Ouvrière en Chef de la Grande Tasse Bleue
Ouvrière en Chef de la Grande Tasse Bleue
Shai-la


Nombre de messages : 6018

Age : 45

Localisation : Montpellier

Date d'inscription : 17/04/2006


Faire une sauvegarde Empty
MessageSujet: Re: Faire une sauvegarde   Faire une sauvegarde EmptyVen 5 Nov 2021 - 12:52

Voici une solution proposée par Globul sur le Discord sourire

Une solution serait de créer une room bidon vers laquelle on envoie le joueur quand on veut réinitialiser une room. Le script de la room bidon se charge de faire un resetRoom de la room d'où on vient et de nous y renvoyer avec la fonction Character.PreviousRoom.
Revenir en haut Aller en bas
http://marionpoinsot.fr/video
Asraroth
Disciple de la Grande Tasse Bleue
Disciple de la Grande Tasse Bleue
Asraroth


Nombre de messages : 1450

Age : 49

Date d'inscription : 20/10/2006


Faire une sauvegarde Empty
MessageSujet: Re: Faire une sauvegarde   Faire une sauvegarde EmptyDim 7 Nov 2021 - 10:41

Hello !
Je n'avais pas testé... c'est chose faite, et ça a l'air de fonctionner (en tous cas, avec les objets).

La room "bidon" a la fonction suivante pour son lancement (before fadein) :

function room_Load()
{
 ResetRoom(cEgo.PreviousRoom);
 cEgo.ChangeRoom(cEgo.PreviousRoom);
}

Par contre, ça n’empêche pas le fadin/fadout (je pensais que l'opération serait instantanée), mais il y a surement moyen de le faire sauter si besoin.

_________________
Ma vie, mon œuvre
Faire une sauvegarde Banner10
Revenir en haut Aller en bas
Contenu sponsorisé





Faire une sauvegarde Empty
MessageSujet: Re: Faire une sauvegarde   Faire une sauvegarde Empty

Revenir en haut Aller en bas
 
Faire une sauvegarde
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Sauvegarde F5/F7
» Système de sauvegarde...
» [résolu]Récupération/sauvegarde/exportation zones décors?
» Un label Scrollable où serait sauvegardé tous les textes du jeu ?
» Sauvegarde et Chargement : problème de sprite

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Adventure Games Studio fr :: CREATION DE JEUX :: Questions / Réponses-
Sauter vers: