Forum Liberty Basic France

Le 30/03/2011 à 23h27

Modérateur

Groupe: Modérateur

Inscrit le: 30/03/2011
Messages: 437
*

Eternal Quest, Les runes de l’apocalypse



****************************************************************



LIEN DE TELECHARGEMENT : JUSTE ICI



Caractéristiques du jeu :

Langue de développement : Français ; Anglais
Langage de développement : LibertyBasic Pro license 4.5.1
Année de développement : 2011-2023
Développeur : Lomuto Alexandre

Type de projet : OPEN SOURCE
Taille du projet : environ 60mo
Extension du fichier téléchargeable : .zip
Plateforme du projet : Windows, linux(via machine virtuelle)






************************************



Principe du jeu :

Eternal Quest est un Rpg des plus simple. Vous incarnez votre personnage dans un monde fantastique, accomplissant des quêtes et évoluant dans celui-ci. Chaque choix que vous ferez modifiera définitivement votre aventure dans ce monde. Vous êtes pour commencer dans les niveaux 0 du jeu qui sont aux alentours d'un donjon central de 100 niveaux (SAO like). Vous devez vous frayer un chemin jusqu'au donjon pour commencer, puis gravir ces 100 niveaux sans mourir.

Votre personnage peut choisir sa classe ainsi que les pouvoirs qu'il maîtrisera. Il n'y a pas de limites de compétences ainsi que de niveau; plus vous vous entraînerez et plus vous deviendrez puissants.



************************************








Edité par atomose Le 15/08/2023 à 17h54
____________________
Yo !

MSN Web    
Le 01/04/2011 à 22h57

Administrateur

Groupe: Administrateur

Inscrit le: 24/09/2010
Messages: 203
Salut et bienvenue sur le forum !

Pourrais tu poster les images de ton programme que l'on puisse le tester et voir où ça bug ?

Sinon, pour ne pas afficher un bmpbutton, tu peux utiliser la fonction hide :

Code VB :
print #handle.bnpbutton, "hide"

Mail MSN Web    
Le 02/04/2011 à 12h06

Administrateur

Groupe: Administrateur

Inscrit le: 24/09/2010
Messages: 203
Salut !
Pour "show" et "hide", voici un exemple :

Code VB :
    nomainwin
    WindowWidth = 700
    WindowHeight = 600
    UpperLeftX=int((DisplayWidth-WindowWidth)/2)
    UpperLeftY=int((DisplayHeight-WindowHeight)/2)
 
    bmpbutton #1.jouer, "bmp\jouer.bmp", [jouer], LR, 350,210
    bmpbutton #1.charger, "bmp\charger.bmp", [charger], LR, 150,45
    open "" for window as #1
    #1, "trapclose [quit]"
    wait
 
 
    [quit]
    close #1
    end
 
    [jouer]
    #1.jouer, "hide"
    #1.charger, "show"
    wait
 
    [charger]
    #1.charger, "hide"
    #1.jouer, "show"
    wait
 




Au niveau du problème d'animation, je ne suis pas un expert...
Tu as déjà regardé sur le site d'Alix ? http://www.coolprog.com/FRENCH/index.html
Il y a pas mal de contenue qui t'apprend à créer une animation etc. C'est vraiment très bien fait.
(Notamment, tu peux lire les chapitre 4, 6 puis 7 qui t'explique le principe de l'animation, mais j'ai vu que tu utilisais ce principe très bien dans ton programme.)

Sinon, je il n'y a pas toutes les images dans le zip ! Quand je sélectionne humain et que je clique sur jouer, ça ne marche pas. Je vais rajouter manuellement quelques images et on verra ce que ça donne ^^
(histoire que je puisse déboguer le programme un peu)

++
Black Templar

Mail MSN Web    
Le 16/04/2011 à 13h35

Administrateur

Groupe: Administrateur

Inscrit le: 24/09/2010
Messages: 203
Salut !

Quand tu met du code dans ton message, utilise les balises [ code=vb][ /code] pour que ça soit plus lisible :)

Sinon, il n'y aurait pas un pb ici :

Code VB :
#3b, "cyclesprite perso1d 2"


Normalement, la seconde option de cyclesprite, c'est 1 ou -1 pour jouer l'animation à l'endroit ou à l'envers.
(Ton problème ne vient peut être pas de là, mais comme je ne peux pas tester le code, c'est pas évident à débugger ^^)

Mail MSN Web    
Le 18/04/2011 à 22h28

Administrateur

Groupe: Administrateur

Inscrit le: 24/09/2010
Messages: 203
atomose:
je peux essayer d'envoyer le code en plusieurs parties si cela t’intéresse a toi de me dire =).


Bah, le mieux, c'est que tu zip ton code et tes images et que tu l'upload sur un hébergeur de fichier comme par exemple :


Mail MSN Web    
Le 19/04/2011 à 13h38

Modérateur

Groupe: Modérateur

Inscrit le: 30/03/2011
Messages: 437
Nouvelle version ! j'ai mis un peu de temps mais ça en vaut le coup ^^; voici les changements !
-Système plus stable ( on peut passer d'une fenêtre a une autres sans AUCUNS plantage ( normalement ^^).
-De nombreuses images refaites ( le forgeron, l'inventaire, et quelques détails sur d'autres ).
-Le personnage du forgeron est animé mtn =) en plus d'être refait entièrement .
-L'inventaire a été totalement refait pour simplifier son utilisation et éviter des bugs.
-Le personnage utilisé marche mieu( il n'est pas encore parfait mais c déjà mieux)
remarque* : plus le processeur de l'ordinateur est puissant et plus ses mouvements sont "fluides"
-Plein de petits bugs et d'amélioration en plus à découvrir ;) .


Version 1.7 :
http://www.megaupload.com/?d=UJCGXJKO

suis-je le dernier survivant de ce forum ? ^^

version 1.8 en court de réalisation .... ça va être une.... révolution ! ;)



Edité par atomose Le 14/06/2011 à 17h04
____________________
Yo !

MSN Web    
Le 01/06/2011 à 10h56

Modérateur

Groupe: Modérateur

Inscrit le: 30/03/2011
Messages: 437
bientôt 2 mois sans réponse =( ...
le site est mort ? parce que sur d'autre site de just basic j'ai 5 réponses par jours ....
enfin bon j'attend ^^
____________________
Yo !

MSN Web    
Le 01/06/2011 à 23h29

Administrateur

Groupe: Administrateur

Inscrit le: 24/09/2010
Messages: 238
Bah pour être honnête on a pas trop de visiteurs, mais bon je passe sur le site tous les jours (quand je peux) pour voir s'il y a de nouveau messages.
En général je passe mais je ne dépose pas de message, surtout ces derniers temps, partiels oblige :p Mais promis dès que j'ai le temps je l'essaie ;)
____________________

MSN Yahoo Web    
Le 02/06/2011 à 11h31

Administrateur

Groupe: Administrateur

Inscrit le: 24/09/2010
Messages: 203
Oo !! Vraiment pas mal du tout !!! :D:D

En plus avec la musique du 13ème guerrier !! J'adore XD


Il y a juste l'animation du perso qui n'a pas l'air de marcher... Je vais regarder pk lundi :)
Bravo en tout cas :)

Mail MSN Web    
Le 02/06/2011 à 14h40

Modérateur

Groupe: Modérateur

Inscrit le: 30/03/2011
Messages: 437
merci a toi =) !
je ne sais pas pourquoi l'animation du perso ne marche plus... dans les premières version c t impeccable et après c parti sans savoir pourquoi -_-'
ça serai sympa a toi si tu arrivé a trouver le problème et a le réglé ^^ c'est le seul gros bug du jeu =( .

bonne chance a toi, pour ton site ainsi que pour l'animation ;)
____________________
Yo !

MSN Web    
Le 08/06/2011 à 12h32

Modérateur

Groupe: Modérateur

Inscrit le: 30/03/2011
Messages: 437
alors ??? as tu trouvé ??? ^^
____________________
Yo !

MSN Web    
Le 08/06/2011 à 19h11

Administrateur

Groupe: Administrateur

Inscrit le: 24/09/2010
Messages: 203
Hum... pas sur, je n'utilise presque jamais ces fonctions ...
A mon avis, tu dois faire un drawsprite à chaque fois que tu veux passer à l'image suivante dans ton animation !!


Exemple : Dans ton code, remplace les timers de [for] et [for2] par 100ms :

Code VB :
[for]
    #3b,"SpriteVisible p1 off"
    #3b,"addsprite p1b p1b"
    #3b,"SpriteVisible p1b on"
    p1bx=p1x:p1by=p1y
    #3b,"spritexy p1b ";p1bx;" ";p1by
    #3b,"drawsprites"
    timer 100, [for2]
    wait
 
    [for2]
    #3b,"SpriteVisible p1b off"
    #3b,"addsprite p1 p1"
    #3b,"SpriteVisible p1 on"
    p1x=p1bx:p1y=p1by
    #3b,"spritexy p1 ";p1x;" ";p1y
    #3b,"drawsprites"
    timer 100, [for]
    wait
 


Maintenant, lance le programme, commence à marcher puis relache la touche ! Tu vois le problème ?? L'animation du perso est correcte !! (même si en théorie, il ne doit plus marcher !)
C'est peut être une piste ...

++

Mail MSN Web    
Le 08/06/2011 à 19h24

Administrateur

Groupe: Administrateur

Inscrit le: 25/09/2010
Messages: 362
Super ton jeu.
Un petit problème, quand le joueur et bloqué (un arbre par exemple), le point jaune sur la minicarte continu d'avancé :)
C'est du bon bouleau, bravo.

Cordialement
Jagang
____________________
J'ai toujours raison ! Sauf quand j'ai tort ...

Web    
Le 08/06/2011 à 23h21

Modérateur

Groupe: Modérateur

Inscrit le: 30/03/2011
Messages: 437
merci de vos réponse =)
Black Templar tu t un peu tromper de perso ^^ en faite le code que tu as sélectionner c pour le forgeron o_o... le personnage c un peu plus bas ;) mais je vois ton principe je lavai d'ailleurs tester avant et javai presque cru avoir réussi XD !
pour l'histoire du curseur ca m’étonne o_o ! tu as test quel version ??? parce que la dernière (1.9) le curseur ne peut pas sortir de la mini carte ... a confirmer donc ^^
j'ai testé une nouvelle piste et c'est très étonnant je crois d'ailleurs que c'est la clé mais la encore je bloque :
si j'enlève tous les timer le perso marche normalement avec fluidité ! par contre si je réduit le jeu et que je le réouvre et ben l'image disparaît =(....
est ce qu'il y a un moyen de stopper un timer ? parce que même en fermant une fenêtre et en la réouvrant le timer marche toujours -_-'' .
si vous pouviez trouver la commande pour que le timer ne fonctionne qu'une seule fois et non en boucle la quasi totalité des bugs seront corriger .... encore faut-il trouver ^^ !
____________________
Yo !

MSN Web    
Le 09/06/2011 à 18h06

Administrateur

Groupe: Administrateur

Inscrit le: 25/09/2010
Messages: 362
Tu mets :
Code VB :
timer 0


Ça arrête le timer.
Car en fait, en LB, il n'y a qu'un seul timer. Si tu mets :
Code VB :
timer 100, [time1]

Puis plus loin dans ton code
Code VB :
timer 200, [time2]

Et bien il n'y a que [time2] qui est appelé toute les 200ms, [time1] n'est plus appelé.
Après, j'ai pas très bien regarder ton code, donc je sais pas si le problème viens de là.

Je vais y jeter un coups d'oeil, mais j'ai que la version 1.7, où as-tu mis la 1.9 ?

Cordialement
Jagang

EDIT : Arg !!
Je viens de regarder ton code correctement (un peu :P ). J'ai halluciné. J'espère que tu as changer d'organisation dans ton code dans la 1.9 ? Faire 50 teste pour chaque obstacle de la map, c'est pas du tout bien...
Je te conseil de créé un fichier par carte, que tu charge dans un tableau. Dedans le tableau (donc le fichier) tu met des 0 et de 1, pour dire si dans cette case, le joueur peut passer. Tu peux choisir la taille d'une case en fonction de ce que tu veux, je verrais bien des case de 15*15px. Comme ça, tu prend la position du joueur, tu fait un petit calcule (une division avec un Int() et peut-être une addition :P ), et tu obtiens si la case ou le joueur veux aller n'est pas un obstacle.
C'est beaucoup plus souple que tes conditions, images si tu as 100 cartes !

Tu as fait un gros bouleau, c'est bien, mais si tu veux y arriver, il faut que tu structure ton code. Désolé de te le dire mais là, c'est le foutoir. C'est pas méchant hein, le prend pas mal, je suis là pour t'aider.
Donc pour le moment, je pense que l’animation de ton personnage n'est pas la chose la plus importante.

Voila, c'est pas pour que tu parts en courant hein ? Ton jeu semble prometteur, il me semble simplement qu'il manque de réflexion avec que tu te mettes à le coder, mais ça peut se rattraper.

Cordialement
Jagang

PS : Ne prend pas en compte ce que je dit ci dessus si tu as déjà fait tout cela dans la 1.9 :)
____________________
J'ai toujours raison ! Sauf quand j'ai tort ...

Web    
Le 09/06/2011 à 21h15

Modérateur

Groupe: Modérateur

Inscrit le: 30/03/2011
Messages: 437
hey enfin de laide !
le fait de stoper le timer c deja une grande aide ! merci !!!!
pour la carte avec les 0 et 1 je suis deja aux courant ^^ pour te donner une idée j'avai dans les anciennes version 1 ligne de condition pour chaque ( 2pixel ) de la map soit environ 500 lignes en abscisse et 300 en ordonné XD.
je me suis mis a imaginer des codes inimaginable pour réduira ce code pour une bonne raison : 5 classe de joueur avec 3 spécialisation par classe et 200 map par spécialisation soit 3x200x5 = 3000 map ^^... j'ai réussi a combiner plusieurs ligner et la surprise je suis passer de plusieurs centaine de lignes pour une map a près de 40 lignes plus ou moins =).
je pense passer a la technique des 0 et 1 dans les version a venir mais je t’avoue que je ne sais pas du tout comment mi prendre =(....
une fois un exemple sous les yeux je peu le faire mais sinon je galère ^^.
pourais tu me donner un exemple ???
merci a toi deja et j'accept trés bien les critiques ;)

voici la version 1.8 le temps que je poste la 1.9 !
http://www.megaupload.com/?d=81UUCJYS

a oui aussi est ce que vous savez la ligne de commande pour une music en .mid ???? parceque les .wav sont tro lourd ^^. merci



Edité par atomose Le 09/06/2011 à 21h32
____________________
Yo !

MSN Web    
Le 09/06/2011 à 22h39

Administrateur

Groupe: Administrateur

Inscrit le: 25/09/2010
Messages: 362
Voici un exemple pas du tout optimisé pour l'affichage, ok ;) ?
Code VB :
nomainwin
 
dim p(10,10)
p(0,0)=1:p(0,1)=0:p(0,2)=0:p(0,3)=0:p(0,4)=0:p(0,5)=0:p(0,6)=0:p(0,7)=0:p(0,8)=0:p(0,9)=0
p(1,0)=0:p(1,1)=1:p(1,2)=0:p(1,3)=0:p(1,4)=0:p(1,5)=0:p(1,6)=0:p(1,7)=1:p(1,8)=0:p(1,9)=0
p(2,0)=0:p(2,1)=0:p(2,2)=1:p(2,3)=0:p(2,4)=0:p(2,5)=0:p(2,6)=0:p(2,7)=0:p(2,8)=0:p(2,9)=0
p(3,0)=0:p(3,1)=0:p(3,2)=0:p(3,3)=1:p(3,4)=0:p(3,5)=1:p(3,6)=0:p(3,7)=0:p(3,8)=0:p(3,9)=1
p(4,0)=0:p(4,1)=0:p(4,2)=0:p(4,3)=0:p(4,4)=1:p(4,5)=0:p(4,6)=0:p(4,7)=0:p(4,8)=1:p(4,9)=0
p(5,0)=0:p(5,1)=0:p(5,2)=1:p(5,3)=0:p(5,4)=0:p(5,5)=1:p(5,6)=0:p(5,7)=0:p(5,8)=0:p(5,9)=0
p(6,0)=0:p(6,1)=1:p(6,2)=0:p(6,3)=0:p(6,4)=0:p(6,5)=0:p(6,6)=1:p(6,7)=0:p(6,8)=0:p(6,9)=0
p(7,0)=0:p(7,1)=0:p(7,2)=0:p(7,3)=0:p(7,4)=0:p(7,5)=0:p(7,6)=0:p(7,7)=1:p(7,8)=0:p(7,9)=0
p(8,0)=0:p(8,1)=0:p(8,2)=0:p(8,3)=0:p(8,4)=0:p(8,5)=0:p(8,6)=0:p(8,7)=0:p(8,8)=1:p(8,9)=0
p(9,0)=1:p(9,1)=0:p(9,2)=0:p(9,3)=0:p(9,4)=0:p(9,5)=0:p(9,6)=0:p(9,7)=0:p(9,8)=0:p(9,9)=0
 
 
tailleDuneCase = 50
 
 
WindowHeight = tailleDuneCase*10 + 40
WindowWidth = tailleDuneCase*10 + 18
 
open "Graph" for graphics_nsb as #g
#g, "trapclose [quit]"
#g, "when mouseMove [move]"
 
#g, "down"
 
for x=0 to 9
    for y=0 to 9
        if p(x,y) = 1 then
            #g, "color red; backcolor yellow"
        else
            #g, "color green; backcolor white"
        end if
 
        #g, "place ";x*tailleDuneCase;" ";y*tailleDuneCase
        #g, "boxfilled ";(x+1)*tailleDuneCase;" ";(y+1)*tailleDuneCase
    next
next
 
#g, "Flush"
wait
 
 
[move]
 
for x=0 to 9
    for y=0 to 9
        if p(x,y) = 1 then
            #g, "color red; backcolor yellow"
        else
            #g, "color green; backcolor white"
        end if
 
        #g, "place ";x*tailleDuneCase;" ";y*tailleDuneCase
        #g, "boxfilled ";(x+1)*tailleDuneCase;" ";(y+1)*tailleDuneCase
    next
next
 
if MouseX >= 0 and MouseX < 10*tailleDuneCase and MouseY >= 0 and MouseY < 10*tailleDuneCase then
    if p(int(MouseX/tailleDuneCase),int(MouseY/tailleDuneCase)) = 1 then
        #g, "color blue; backcolor red"
    else
        #g, "color blue; backcolor green"
    end if
else
    #g, "color white; backcolor white"
end if
 
#g, "place ";MouseX;" ";MouseY
#g, "circlefilled 5"
 
#g, "Flush"
wait
 
 
[quit]
 
close #g
end
 


La partie principale, c'est ceci :
Code VB :
if MouseX >= 0 and MouseX < 10*tailleDuneCase and MouseY >= 0 and MouseY < 10*tailleDuneCase then
    if p(int(MouseX/tailleDuneCase),int(MouseY/tailleDuneCase)) = 1 then

La première ligne de teste sert à éviter d'aller regarder des cases qui ne sont pas dans le tableau, autrement, ça fait un truc du genre erreur :p
Le second teste te permet de savoir si la sourie est dans une case 1 (jaune) ou une case 0 (blanche).
Voila, j'ai mis une taille de case de 50, mais pour ton jeu je te conseille 15, c'est la taille de la base de ton petit perso.
En gros, en même temps que le fond de carte, tu charges un fichier où il y a plein de 1 et de 0, puis, pour savoir si tu peux avancer ton perso, tu crées une fonction à qui tu donnes la futur position du perso. Je dis la futur position, car si la fonction te renvoie 0 (ou comme tu veux hein ;) ), tu n'ajoutes pas le déplacement et le héros reste en place.

Une fois que tu auras fais ça, il faudra que je regarde la minicarte, parce que le point jaune se balade toujours même si on est bloqué :lol

Voila,
Cordialement
Jagang


PS : Si possible, essais d'éviter au maximum le langage SMS stp. Par exemple, "c" => "c'est", et "laide" => "l'aide"
Merci, A++
____________________
J'ai toujours raison ! Sauf quand j'ai tort ...

Web    
Le 09/06/2011 à 23h04

Administrateur

Groupe: Administrateur

Inscrit le: 25/09/2010
Messages: 362
Code VB :
 
playmidi "misc.mid", len
 

Dans la variable len, tu auras la longueur de la musique, je pense.
J'ai eut beaucoup de problème avec cette fonction. Elle ne répète pas en boucle la musique, donc, je pense, qu'au bout de len temps (en seconde surement), il faut relancer la musique.
N'oublis pas :
Code VB :
stopmid

Car des fois, quand tu fermes le programme, la musique continue ( :heink )

Cordialement
Jagang
____________________
J'ai toujours raison ! Sauf quand j'ai tort ...

Web    
Le 11/06/2011 à 21h57

Modérateur

Groupe: Modérateur

Inscrit le: 30/03/2011
Messages: 437
je poste la version 1.9 la semaine prochaine maintenant que je suis en vacance =) !
question : pourquoi dit tu que mon code n'est pas structuré ? je mis retrouve très bien, chaque parties est délimités et claires non ?

pour la commande .mid ça ne marche pas =(, il me met syntaxe error ....

merci pour votre aide, reste l'animation du perso a régler maintenant ^^ !



Edité par atomose Le 11/06/2011 à 21h59
____________________
Yo !

MSN Web    
Le 12/06/2011 à 00h01

Administrateur

Groupe: Administrateur

Inscrit le: 25/09/2010
Messages: 362
En fait, ça viens de moi si je trouve que ton code et pas très bien structuré. Je code en C++ maintenant et pouvoir faire plusieurs fichiers (donc pas des pavé de 600 lignes) c'est le pied. Maintenant, avec LB, on peut pas, donc...
Par contre, il manque quand même les commentaires...
Bref...

Et, chez moi, cette commande midi fonctionne...
Fais voir la partie de ton code où tu la mets stp.

Avant l'animation du perso, fait le système de collision, une chose à la fois.

De rien

Cordialement
Jagang
____________________
J'ai toujours raison ! Sauf quand j'ai tort ...

Web    

 |  |

1 Utilisateur en ligne : 0 Administrateur, 0 Modérateur, 0 Membre et 1 Visiteur
Utilisateur en ligne : Aucun membre connecté
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie