Ankhmatov - WIP

Programmation avancée de jeux en PureBasic
Avatar de l’utilisateur
Ouaf-Ouaf
Messages : 212
Inscription : dim. 11/juil./2004 9:07

Ankhmatov - WIP

Message par Ouaf-Ouaf »

Hop, j'ai [Edit] pour enlever le code de 1k lignes tout moche.. A l'avenir je mettrais le source sur mon Perso.orange.. Et içi le "Splash screen" de mon jeu ^^ avec l'explication du principe.
Le reste c'est un WIP, où je vous partage mon exp et l'évolution de mon prog, dans l'espoir de vous soutirer de précieux conseils :twisted:
Dernière modification par Ouaf-Ouaf le jeu. 28/févr./2008 8:34, modifié 5 fois.
Kayne
Messages : 157
Inscription : sam. 06/oct./2007 18:33
Contact :

Message par Kayne »

Tu pourrait nous donner tes sprites par ce que la c'est difficile de faire fonctionner ton code sans .
__________________________________________

Débutant les tutoriels de mon site sont la pour vous n'hésitez pas à aller les voir: http://tripamort.free.fr/
__________________________________________
Kayne - Webmaster de http://tripamort.free.fr/
Avatar de l’utilisateur
Ouaf-Ouaf
Messages : 212
Inscription : dim. 11/juil./2004 9:07

Message par Ouaf-Ouaf »

Ils sont dans le .rar
beauregard
Messages : 1307
Inscription : dim. 08/juil./2007 18:32
Localisation : Toulouse

Message par beauregard »

Ouaf-Ouaf a écrit :Ils sont dans le .rar
Je n'ai pas pu tester:
ligne 212:

Code : Tout sélectionner

LoadSprite(20,"Sans-titre-1.png")
et probablement cela aussi( une commande qui me semble bien compliqué):

Code : Tout sélectionner

   FileSeek(0, 5140 )
config de mon ordi: seven, directx11, Pentium(R) DualCore E5700, RadeonHD 4550 512MB, PureBasic 4.61 x86
Avatar de l’utilisateur
Ouaf-Ouaf
Messages : 212
Inscription : dim. 11/juil./2004 9:07

Message par Ouaf-Ouaf »

Haa, si tu as gardé l'ancienne version du .rar, il a été remis à jour.


Le code içi appel des fichiers et des .png qui etaient pas dans celui de l'autre jour ;)
Pi le graphisme des objets à été amelioré aussi :]
beauregard
Messages : 1307
Inscription : dim. 08/juil./2007 18:32
Localisation : Toulouse

Message par beauregard »

Ouaf-Ouaf a écrit :Haa, si tu as gardé l'ancienne version du .rar, il a été remis à jour.


Le code içi appel des fichiers et des .png qui etaient pas dans celui de l'autre jour ;)
Pi le graphisme des objets à été amelioré aussi :]
ah ok, et bien cela fonctionne bien. as-tu essayé le mode fenêtré ? -> dans ce cas, remplacer FlipBuffers() par FlipBuffers(1)
config de mon ordi: seven, directx11, Pentium(R) DualCore E5700, RadeonHD 4550 512MB, PureBasic 4.61 x86
comtois
Messages : 5172
Inscription : mer. 21/janv./2004 17:48
Contact :

Message par comtois »

beauregard a écrit :
Ouaf-Ouaf a écrit :Haa, si tu as gardé l'ancienne version du .rar, il a été remis à jour.


Le code içi appel des fichiers et des .png qui etaient pas dans celui de l'autre jour ;)
Pi le graphisme des objets à été amelioré aussi :]
ah ok, et bien cela fonctionne bien. as-tu essayé le mode fenêtré ? -> dans ce cas, remplacer FlipBuffers() par FlipBuffers(1)
tu y tiens à ton FlipBuffers() :)

regarde cet extrait de la doc
1 : active la synchronisation (mode par défaut)
FlipBuffers() et FlipBuffers(1), c'est exactement la même chose .
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.
beauregard
Messages : 1307
Inscription : dim. 08/juil./2007 18:32
Localisation : Toulouse

Message par beauregard »

comtois a écrit :FlipBuffers() et FlipBuffers(1), c'est exactement la même chose .
:) ah oui, merci( cette histoire de flip m'a un peu traumatisé, je l'avoue).
config de mon ordi: seven, directx11, Pentium(R) DualCore E5700, RadeonHD 4550 512MB, PureBasic 4.61 x86
Avatar de l’utilisateur
Ouaf-Ouaf
Messages : 212
Inscription : dim. 11/juil./2004 9:07

Message par Ouaf-Ouaf »

Le mode fenetré.. Heu proportioné sur la taille de l'ecran ? :s

J'essaye des fois. En dessous du OpenScreen(800,600, ...
Y a l'option avec ; devant :]

D'ailleur humm.. J'ai programmé et dessiné ce truc sur un ecran panoramique en 1440*900.. Là mon portable fait 1280*800, j'ai dejà un peu l'impression que ça .. amincies le dessin ( déformation en largeur )..
Et sur l ecran de ma mère, qui a un portable à ecran normal, là c'est carrement flagrant, et carrement moche :s..

Donc mui, faudrait vraiment que j utilise le mode fenetré, par ce que je preferrerais que les gens qui ont un ecran normal, le voient comme j'ai programmé.

Ha oui... et quand je créé sur mon ordi 1440, un mode fenetré en 800, l image est amaigrie comme sur un ecran normal, donc je deteste et j utilise jamais .. Par ce que ça me gavais de chercher le calcul ( tout con lol) à faire pour avoir l image comme je la voie en OpenScreen.. Brayf
Avatar de l’utilisateur
Ouaf-Ouaf
Messages : 212
Inscription : dim. 11/juil./2004 9:07

Message par Ouaf-Ouaf »

[ Edit ]

Trala laaa.. Problème reglé de lui mêêêêême..
Dernière modification par Ouaf-Ouaf le jeu. 28/févr./2008 8:36, modifié 1 fois.
Avatar de l’utilisateur
Ouaf-Ouaf
Messages : 212
Inscription : dim. 11/juil./2004 9:07

Message par Ouaf-Ouaf »

Yop yop les gens !

RarRr, j'suis vraiment desolé pour les graphs que je m etais avancé de faire :oops: , je suis débordé en ce moment, je prépare mon porte folio classique ( identités, packaging.. ) et la prog de mon jeu me bouffe pas mal de temps :?


* Bon, d'un autre côté mon prog à *relativement* lol bien evolué.. :
  • - Le corps du "milicien" n'est plus en à-plats, ce qui change pas mal le visu.
    - La couleur des items est maintenant modifiable à souhait (pas encore de possibilité de sauver le changement :s)
    - Premier squelette d'anim créé, avec juste l'animation d'un coup porté ( pour l'instant c'est tout nul : il bouge juste le bras : mais le principe est là. )
    - La taille du dossier Data passe de 3mo50 à 1 et quelques :D
* Je compte prochainement, rentrer dans le vif du sujet :) :
  • - Création d'une liste de 5 Miliciens, avec Nom et Infos Basiques ( Pvie, Pactions, Dmgs, % de chance de parer/porter un coup )
    - Injecter assez d'objets pour que ces 5 miliciens soient en tout points graphiquement différents (items et corps)
    - Dessiner un dragon :D et mettre le tout face à face sur un ecran de combat à la HoMM
    - Gérer le déplacement des persos (contournement d'obstacle)
Une fois que tout ça sera fait.. En théorie, je pourrais commencer à ébaucher joyeusement les possibilités de combat.
Le grand Kiff, serait de pouvoir organiser des combats Humain Vs Humain via internet. A priori, en théorie *lol*, ce n'est pas impossible. C'est en tout cas le but vers lequel je vais essayer de tendre.. :?


* Maintenant, j'ai quelques interrogations :
  1. - Dans l'inventaire, le visu du milicien est divisé (pour le moment) en 52 couches de "calques" de (486*600)octets ( + 260 pour la liste des couleurs mais bon.. )
    La liste n'est pas "dynamique", si une couche n'est pas utilisée, elle prends quand même de la place dans la RAM
    Je pense, que je vais avoir besoin au final, au grand grand maximum de.. Allez 64 couches ..
    Ce qui me donne 18.662.400 octets dans le tableau IndexC,
    Soit si je ne m'abuse : 149.299.200 bytes Ce que je trouve assez impressionnant pour m'en inquiéter :roll:

    Sur mon PC Win 2000 1Go/Hz, 512 de Ram, ou sur mon portable Vista, config idem : Tout roule. Pas de lags, pas de problèmes..
    Mais je me demandais vraiment ce qu'il pourrait en être sur une machine moins récente :oops:
    Ce tableau n'est, du reste, sensé servir que dans l'inventaire : Pour calculer les anims du Milicien (reduites, dessinés et enregistrés sur un sprite)
    ainsi que les sprites des éventuels ennemis avant un combat.


    - Heuu y avait peut etre d'autres trucs... mais j'ai oublié xD


* Bref
  • - Si ça vous dit de jeter un oeuil :D voiçi le lien : http://y3an.pagesperso-orange.fr/Ankh.rar

    Le prog demarre sur 6 vignettes (dont 3 vides) les dessins que j'ai mis sont pas finis.
    Seulement l'inventaire est accessible : c'est la vignette avec le forgeron.

    Normalement, l'animation est pas sensée se calculer dans l'inventaire, mais avant un combat, donc là pour lancer l'anim, il faut appuyer sur F1.
    Je n'ai pas encore placé le bout de code pour ameliorer le rendu de la rotation :s, mais bon, reduit ça se voit pas trop :s
Ollivier
Messages : 4190
Inscription : ven. 29/juin/2007 17:50
Localisation : Encore ?
Contact :

Message par Ollivier »

Page introuvab'

Y la disparu le ouaf-ouaf ?
Avatar de l’utilisateur
Ouaf-Ouaf
Messages : 212
Inscription : dim. 11/juil./2004 9:07

Message par Ouaf-Ouaf »

Ho non mais il trafaille.

Normalement mon premier "ankh alpha" devrait être bientôt pret et je comptais lui faire son site ses vacances.

Ces derniers temps j'ai pas mal galeré pour creer uuun "ide" pour injecter facilement des items dans le jeu ainsi que creer des mini quetes afin de donner envie a un pote d'ajouter son grain d'sel.

Je regrette pas par ce que c'est vraiment pratique.
Ces temps-çi je.. j'equipais une "milice" "bling bling" à titre d' "exemple" et d'un autre côté les items liés à la première classe d'enemis qu'on devrait rencontrer sur la première quête.. des pirates heuu .. pouilleux..

Les anims se font par rotations donc c'est pas splendide mais bon.. ça passe.

Image


Ca c'est la milice du compte "Puppet-Master" le seul sur ma BDD pour l'instant, mais normalement on commence avec des pouilleux en marcel armés de bèches et de batons..

J'ai un p'tit problème sur lequel je me suis pas encore penché pour la connexion... C'est que si le prog ne recoit pas une reponse immediatement il heuu.. il attends pas ... je sais pas trop comment expliquer.. Donc chez moi ça marche (localhost quoi) mais pas chez ma testeuse qui a une connexion vraiment pourrave.. enfin rien de grave...

Enfin bref vouala ça avance ... a son rythme .. lol

Alors y a que deux "races" de miliciens, ils ont tous exactement la même posture et le même visage mais bon.. j'compte bien qu'un jouuuuur.. ça change.


Aujourd'hui par exemple j'vais ajouter l'anim "arme à deux mains" et equiper le monsieur d'une fourche : :)

Image

Faut aussi que je créé enfin l'option pour ajouter des details sur un même calque (quand la palette et l'ordre d'appariton est identique) afin de pas a avoir à occuper de la place suplementaire en memoire pendant la generation des sprites. Par exemple pour lui des details sur le plastron et differentes armatures..


Pour l'ecran de combat les deplacement et l'ordre deeees tours est pret.. Pour le combat en lui même, je pense que ça devrait être bien moins laborieux à mettre ça en place, et surtout plus marrant. ( quelques calculs determinés par des variables..)

A priori je procederais à l'echange de données entre les deux IP sous forme de strings dont les données sont separées par un chr(182), comme en PHP avec "implode" et "explode" quoi.

Le compte "Puppet Master" pèse dans les 5 Ko sur ma BDD donc le temps de download devrait vraiment pas poser de blème :)

Pour l'instant j'ai 6 miliciens et la generation des sprites est relativement rapide ( quand seul le jeu tourne ca met dans les 4 secondes sur mon laptop et 2 sur mon nouveau pc à 600€ mais j'ai decouvert recement que je pouvais surement faire baisser ça .. )

A priori un combat ne devrait pas exeder le 5 vs 5, et le joueur enregistrerais chez lui ses propres sprites pour pas avoir a tout recalculer..

L'autre solution serait d'enregistrer les sprites déjà reduits et carrement sous les angles necessaires pour qu'y ai pratiquement pas de temps d'attente maaaaais.. Ca fairait un jeu plus lourd a telecharger et ça decouragerait ptet à le telecharger :s

Voilà où j'en suis.. Je suis pressé d'avoir une version Alpha descente à montrer avec creation d'un compte, au moins une petite quête et la possibilité de defier un autre joueur :?

J'espère que ça amuseras des gens :? En tout cas moi j'suis en plein dedans, c'est vraiment passionnant.

Ca demande bcp de boulot mais je desepere pas que ça interesse un pote d'ajouter son eau au moulin une fois que j'aurais finalisé une première version avec des outils pratiques pour enrichir le contenu. :P
Répondre