Explorator

Programmation avancée de jeux en PureBasic
Berfau
Messages : 13
Inscription : ven. 27/août/2010 9:56

Explorator

Message par Berfau »

Bonjour.
Je vous propose un petit jeu 2D sans prétention.
C'est ici:
http://www.fichier-rar.fr/2013/10/06/bf-explore/
Il ne fonctionne qu'en HD 1920x1080 et sous PB 5.20
Je souhaitais faire une version multi-résolutions mais cela devient une usine à gaz.
Bon amusement.
Avatar de l’utilisateur
Ar-S
Messages : 9540
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: Explorator

Message par Ar-S »

Salut.
Merci pour ce partage, je n'arrive cependant pas à le faire marcher en pb5.20 x86 (erreur acces mémoire au loadsprite)
Tu n'as testé qu'en x64 ?
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Avatar de l’utilisateur
blendman
Messages : 2017
Inscription : sam. 19/févr./2011 12:46

Re: Explorator

Message par blendman »

chez moi, en x86, je lance le jeu, je clique n'importe où, et ça mouline dans le vide...
G-Rom
Messages : 3641
Inscription : dim. 10/janv./2010 5:29

Re: Explorator

Message par G-Rom »

Windows 7 x64 , marche bien avec 5.20 beta 6.
cependant , je ne comprends pas trop le but, a par contrôler un hoover et essayer d'ouvrir sans succès des obstacles. :D
Berfau
Messages : 13
Inscription : ven. 27/août/2010 9:56

Re: Explorator

Message par Berfau »

Testé sur w7 64.
Pas de problème.
Je ne peut essayer en x86 vu que je n'ai que des PC sous W7 ou Vista en 64: moderne quoi. :mrgreen:
je ne comprends pas trop le but, a par contrôler un hoover et essayer d'ouvrir sans succès des obstacles.
Bah ce n'est pas un crysis, hein. :mrgreen:
Pour ouvrir il faut la clé associée ou passer par des verrous débloqués, les carré gris.
On doit utiliser le clavier pour jouer:
- flêche haut pour avancer
- flêches gauche ou droite pour faire tourner le robot
- espace pour ouvrir à condition d'avoir la clé adéquate.
- touche H pour l'aide.
-touche "echap" pour sortir

La souris ne sert que pour sortir ou cliquer sur les touches "oui" et "non" quand les fenêtres le demande.

En tous cas merci pour les retours. :wink:
Ca montre qu'il n'est pas facile de faire un jeu ou un logiciel sans testeurs. Quand on fait tout soi-même, instinctivement on le fait fonctionner comme on l'a pensé et on passe à coté des bogues éventuels.
Avatar de l’utilisateur
Ar-S
Messages : 9540
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: Explorator

Message par Ar-S »

Berfau a écrit :Testé sur w7 64.
Pas de problème.
Je ne peut essayer en x86 vu que je n'ai que des PC sous W7 ou Vista en 64: moderne quoi. :mrgreen:
:roll:
Bien sûr que si, il te suffit d'installer PB x86 et de compiler ton prog en x86.
OS x64 = PBx64 oui PBx86 oui
OS X86 = PBx64 non PBx86 oui

Pour info je suis en W8 x64 mais je n'ai pas installé la version x64 de PB5.20

Tu images tout de même pas que tous les progs installés sur ta machines sont compilés "en et pour" du 64bits ? :mrgreen:
Voilà voilà
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Avatar de l’utilisateur
blendman
Messages : 2017
Inscription : sam. 19/févr./2011 12:46

Re: Explorator

Message par blendman »

Ar-S a écrit :Pour info je suis en W8 x64 mais je n'ai pas installé la version x64 de PB5.20
tout pareil
J'ai testé sous win8 x64, en pb x86.
G-Rom
Messages : 3641
Inscription : dim. 10/janv./2010 5:29

Re: Explorator

Message par G-Rom »

Pour ouvrir il faut la clé associée
j'ai pas vu de clé.
tu peu expliqué le radar en haut à droite ?
un manuel du jeu serais pas mal. les couleurs sont importantes?
comtois
Messages : 5186
Inscription : mer. 21/janv./2004 17:48
Contact :

Re: Explorator

Message par comtois »

je viens de lire qu'il fallait aussi utiliser la touche espace, bon je reprendrai la partie demain. eh oui je me suis pris au jeu, j'aimerais bien finir la partie :)

Bravo, j'aime bien les dessins, il y a quelques sons qui finissent par être crispant à la longue, mais dans l'ensemble, je trouve que c'est abouti. Ils sont assez rares les jeux complets.

Pour info j'ai testé avec la version 5.20 x86 sous windows 7.
http://purebasic.developpez.com/
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
Berfau
Messages : 13
Inscription : ven. 27/août/2010 9:56

Re: Explorator

Message par Berfau »

Merci pour tous vos commentaires. C'est comme ça que l'on fait avancer les choses. :wink:
@G-Rom
Les clé se trouvent dans les cellules.
Il faut le type de clé (4 types ou carte):
- carte à mémoire
- carte à processeur
- carte SD
- carte à puce.
de plus la couleur est indispensable.
Seules les verrous blanc (carré blanc) sont accessibles au début.
Pour ouvrir une cellule, il faut le bon type et la bonne couleur et appuyer sur la barre espace robot face à la cellule.
La probabilité que l'on ne puisse pas finir le jeu est quasi nulle.
L'objectif est, comme expliqué dans l'aide, touche H ou clic sur le bouton ?, l'explique, il faut trouver les 16 fioles et avoir le code de 8 chiffres.
Quand on a tous ces items, il suffit d'aller dans la cellules objectif (protégée) et d'entrée le code. Le tout en moins de 99 mn.
Hormis les commandes, que j'ai totalement oublié d'expliquer, tout le reste est dans l'aide.
Le radar sert à indiquer les cellules contenant des dangers:
- destruction de clé (ou carte)
- destruction de code
- destruction de fioles
Si cela arrive, pas de panique: tous les items sont à ce moment réinstallés dans des cellules vides.
Les cellules ouvertes le resteront jusqu'à la fin et donc leur contenu toujours visible.
Dans la version que j'ai mis en téléchargement j'ai malheureusement oublié de remettre les records à 0. :mrgreen:
En analysant le code, il est facile de le faire. :wink:
Ce jeu a été développé pour donner une idée de ce que l'on peut faire en PB de façon simple.
Le programme est certainement améliorable: c'est aussi l'objectif.
Il est évident que si j'avais fait un code au top, je l'aurais commercialisé à 50€. ah, ah, ah.
Du reste tous les commentaires à ce sujet seront les biens venus. :wink:
A+
G-Rom
Messages : 3641
Inscription : dim. 10/janv./2010 5:29

Re: Explorator

Message par G-Rom »

Je viens de re-testé, c'est mieux avec quelques explications.
le jeu manque de fluidité, dans ta procedure Animation()
tu devrais rajouté un float en paramètre et géré la vitesse de cette manière :

Code : Tout sélectionner

procedure Animation(timer.f)
 var = var + #Vitesse * timer
endprocedure
le float que tu passe en paramètre et le temps calculé par une boucle de ton programme :

Code : Tout sélectionner

timer.f = 0.0

Repeat
  timerStart.i = ElapsedMilliseconds()
  
  ; ...
  ; ...
  ; ...
  ; ... ton code
  ; ...
  ; ...
  ; ...
  
  timer = (ElapsedMilliseconds() - timerStart) / 1000
ForEver
cela permet d'avoir une vitesse constante peu importe le pc , pour la résolution , tu pourrais utilisé la résolution du bureau de l'utilisateur et géré ta gui avec des % au lieu de valeur absolue.
Berfau
Messages : 13
Inscription : ven. 27/août/2010 9:56

Re: Explorator

Message par Berfau »

le jeu manque de fluidité
Euh sur quelle machine fais-tu tourner le programme ?
J'ai testé ton exemple de code mais ça ne marche pas avec /1000.
J'ai essayé avec:
/1000 ça n'avance pas
/100 c'est trop lent
/10 c'est mieux mais ça saccade.
direct (/1) c'est trop rapide
je n'est pas essayé avec des valeurs intermédiaire

Les saccades sont dues au fait qu'à chaque changement de bloc, je test des routines. Suivant la rapidité du PC, ce temps de test devient long et visible. Le déplacement par sa nature dans le jeu ne peut être fluide dans l'absolue.

A tous:
Pour remettre à 0 les records, il suffit de supprimer le fichier "Record.dat".
Je fais quelques modifications et je vous le remet à disposition.
G-Rom
Messages : 3641
Inscription : dim. 10/janv./2010 5:29

Re: Explorator

Message par G-Rom »

un i7 8x3.40ghz, 8go & nvidia gtxxx


code :

Code : Tout sélectionner

InitSprite() : InitKeyboard()

OpenWindow(0,0,0,800,600,"")
OpenWindowedScreen(WindowID(0),0,0,800,600,1,0,0,#PB_Screen_NoSynchronization)


x.f = 0
y.f = 300
speed.f = 64
timer.f = 0

While 1
  
  startTimer = ElapsedMilliseconds()
  
  x + speed * timer
  
  
  If x > 800
    x = -128
  EndIf 
  
  WindowEvent()
  
  ExamineKeyboard()
  If KeyboardPushed(#PB_Key_Escape)
    Break
  EndIf 
  
  ClearScreen(0)
    StartDrawing(ScreenOutput())
      Circle(x,y,64,$FF)
    StopDrawing()
  FlipBuffers()
  
  timer = (ElapsedMilliseconds() - startTimer) / 1000
Wend 

End 
peu importe le pc , la boule se déplacera à la même vitesse sur n'importe quel bécane. il ne faut pas non plus trop de disparité en les prises de temps ( programme en arrière plan ) sinon le mouvement saccadera quand même.
Berfau
Messages : 13
Inscription : ven. 27/août/2010 9:56

Re: Explorator

Message par Berfau »

Merci pour ces astuces. :wink:
Avatar de l’utilisateur
SPH
Messages : 4945
Inscription : mer. 09/nov./2005 9:53

Re: Explorator

Message par SPH »

si tu pouvais donner le code du jeu, ce serait bien (car je n'ai pas su telecharger ton jeu)

!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.12LTS- 64 bits
Répondre