Logicielsmoto.com

Nous sommes le 21 Oct 2019, 03:25

Heures au format UTC + 1 heure




Poster un nouveau sujet Répondre au sujet  [ 13 messages ] 
Auteur Message
MessagePosté: 12 Sep 2013, 09:12 
Hors ligne

Inscription: 27 Juil 2013, 21:32
Messages: 40
Localisation: South of France
Voici le plan du niveau 00 (niveau défaut) du jeu "Le 5ème Axe" (Loriciels - D. & O. Guillion) :

Image

Taille réelle : Plan, map en taille réelle pour Le 5ème Axe (Niv.00 défaut), jeu TO8(D)/TO9 pour LogicielsMOTO.com (Dropbox)

Je précise cela, car ce niveau défaut n'est accessible que lorsqu'on a fait le choix "1" au lancement du jeu (et donc, aucune spécification de son personnage n'a été faite au préalable).
La structure du niveau ne change pas d'une partie et d'un niveau à l'autre, mais les objets, les clés et les monstres varient.

Comme je pense qu'il s'agit d'un cycle de 4 (voire 10) disposition pour les objets et clés, je pense pouvoir réaliser ces dispositions (matérialisées par des contours de différentes couleurs).

L'inventaire, le bestiaire et les prochaines dispositions arriveront bientôt.

_________________
Windob XP Pro sur Notebook d'Asus X61S, Proc.Intel Core 2 Duo T6500, C.G. Nvidia GeForce GT 220M, RAM: 4Go


Haut
 Profil  
Répondre en citant le message  
 Sujet du message:
MessagePosté: 12 Sep 2013, 13:57 
Hors ligne

Inscription: 27 Juin 2006, 19:44
Messages: 1054
Localisation: France (24)
Mis en ligne à la rubrique logiciels http://www.logicielsmoto.com/viewsoftware.php?softid=1


Haut
 Profil  
Répondre en citant le message  
 Sujet du message:
MessagePosté: 01 Oct 2013, 11:57 
Hors ligne

Inscription: 27 Juil 2013, 21:32
Messages: 40
Localisation: South of France
Re / Bonjour,

Mon inventaire + bestiaire étant toujours en cours, j'aurais besoin d'une astuce pour mesurer correctement la vitesse de déplacements des ennemis et montres du jeu.
Je ne sais pas trop ce qui m'a pris de vouloir à tout prix mesurer la vitesse de déplacement de ces monstres, mais à faire quelque chose de complet... cela me semblait pertinent.

Bon il est vrai que je ne sais pas si beaucoup de Thomsonnistes ici, ont encore le temps, l'envie (ou le besoin) de jouer encore sur des émulateurs TO ou vraies machines, mais dans le doute, je préférai demander.

Pour en revenir à mon problème originel, la seule technique que j'ai pu réellement élaborer, est une estimation de l'ordre de la seconde près :
- grosso modo, je me place sur le 2nd plateau du jeu (en partant du bas) et j'attends que le monstre observé sur le niveau le plus bas fasse le tour complet du niveau (celui-ci étant bouclé). Je peux aloer relever la durée, comprise entre 0 et 27 sec. (27 sec. étant la durée mise par le monstre le plus lent).
- connaissant le nombre de pas exact à effectuer par le héros du 5ème axe, pour en faire lui aussi le tour, je peux estimer la vitesse de déplacement par seconde...

Pour l'exemple :
- 258 petits pas (noté pp. en abrégé : correspond à la marche du héros, vitesse la plus lente et la plus précise) pour le tour complet du niveau
- 27 sec. (approximation) pour la durée du monstre le plus lent

ce qui nous donne 258 pp. / 27 s. = 9,56 pp./s.

Sur une échelle de 1 à 10 (8 modes de déplacement ennemis et 2 vitesses de déplacement pour le héros), j'attribuerai donc le score de 1/10 pour les monstres montés sur "tripodes mécaniques *"

Voilà je n'ai pas trouvé mieux. Le seul petit problème, c'est que certains monstres "volants" sont si rapides que la durée mise par celle-ci pour faire le tour est très approximative (~ 4 sec. pour faire le tour avec une tolérance de +/- 1 secondes, cela nous fait 25% de marge d'erreur, ce qui est énorme).

En conclusion, s'il n'y a pas de meilleure solution pour relever ces valeurs de déplacement par secondes, je me contenterai de cela. D'autre part, si rares sont les joueurs qui relancent leur TO ou leur TEOw, je pense qu'ils me pardonneront aussi ces valeurs approximatives :langue:

Cordialement

_________________
Windob XP Pro sur Notebook d'Asus X61S, Proc.Intel Core 2 Duo T6500, C.G. Nvidia GeForce GT 220M, RAM: 4Go


Haut
 Profil  
Répondre en citant le message  
 Sujet du message:
MessagePosté: 01 Oct 2013, 14:22 
Hors ligne
M. DCMOTO

Inscription: 06 Juin 2004, 08:23
Messages: 591
Localisation: Provence (France)
Pour mesurer les vitesses, le plus précis est de désassembler le programme et de compter les cycles. Ce n'est pas forcément très simple, car certains traitements doivent utiliser les interruptions, mais c'est faisable.


Haut
 Profil  
Répondre en citant le message  
 Sujet du message:
MessagePosté: 01 Oct 2013, 14:40 
Hors ligne

Inscription: 27 Juin 2006, 19:44
Messages: 1054
Localisation: France (24)
... ou mettre un compteur en interruption utilisateur.


Haut
 Profil  
Répondre en citant le message  
 Sujet du message:
MessagePosté: 01 Oct 2013, 14:41 
Hors ligne

Inscription: 27 Juil 2013, 21:32
Messages: 40
Localisation: South of France
Ok, merci je pensais bien qu'une telle solution devait exister. Je vais essayer de trouver cette procédure sur les moteurs de recherche.

Encore merci pour cette réponse, je vais voir ce que je peux faire seul de mon côté :cool:

_________________
Windob XP Pro sur Notebook d'Asus X61S, Proc.Intel Core 2 Duo T6500, C.G. Nvidia GeForce GT 220M, RAM: 4Go


Haut
 Profil  
Répondre en citant le message  
 Sujet du message:
MessagePosté: 01 Oct 2013, 14:55 
Hors ligne

Inscription: 27 Juin 2006, 19:44
Messages: 1054
Localisation: France (24)
Si c'est de ma solution dont tu parles, à la louche :

- Engager l'interruption avec un :
Code:
        ...
        ldx   $6027    |
        ldb   $6019    | Protège les registres
        pshs  cc,b,x   |
        ldx   #inter  | Initialise le pointeur
        stx   $6027   | d'interruption
        ldb   $6019    |
        orb   #$20     | Active l'interruption utilisateur
        stb   $6019    |
        andcc $FF-$50  Autorise les interruptions
        ...


- L'interruption en elle-même (compteur 24 bits initialisé à $000000 en cpt) :
Code:
inter   inc   cpt+2
        bne   exit
        inc   cpt+1
        bne   exit
        inc   cpt
exit    jmp   $e830


- En sortie :

Code:
        ...
        puls  cc,b,x   |
        stb   $6019    | Restaure les registres
        stx   $6027    |
        ...



L'interruption se déclenche tous les 10èmes de seconde.

L'ennui, c'est que si le programme de jeu interdit les interruptions par le registre CC, ça va être problématique pour les relevés...


Haut
 Profil  
Répondre en citant le message  
 Sujet du message:
MessagePosté: 01 Oct 2013, 15:43 
Hors ligne

Inscription: 27 Juil 2013, 21:32
Messages: 40
Localisation: South of France
Merci encore, je vais tester tout cela.
Si les interruptions sont désactivées / non autorisées je le ferai au chrono : ce n'est, certes, pas très précis mais cela suffira amplement dans un premier temps.
Et cela me permettra de passer à la suite surtout...

_________________
Windob XP Pro sur Notebook d'Asus X61S, Proc.Intel Core 2 Duo T6500, C.G. Nvidia GeForce GT 220M, RAM: 4Go


Haut
 Profil  
Répondre en citant le message  
 Sujet du message:
MessagePosté: 01 Oct 2013, 16:00 
Hors ligne

Inscription: 27 Juil 2013, 21:32
Messages: 40
Localisation: South of France
En fait, non ! Je ne sais même pas programmer...
En passant par TEOw je ne parviens même pas à obtenir un écran tel que le propose l'émulateur DCmoto dans la partie "Mise au point" *rofl*.

Mis à part un peu de BASIC, je suis pire qu'un novice. C'est le problème des "joueurs" : on ne s'invente pas programmateur du jour au lendemain, sans une réelle expérience dans ce domaine. C'est si indigeste sans une approche par les bases...

Donc, même si je comprends le principe d'édition dans les grandes lignes, à part mettre un sacré foutoir dans le code des émulateurs (et tout casser par la même occasion), il me faudrait repasser impérativement par les bases de programmation.
Dès qu'il s'agit de code et compagnie, j'ai beau garder les yeux ouverts, c'est aussi explicite que les idéogrammes chinois pour un maya...

Je me vois donc un peu condamné à ressortir mon chronomètre...

_________________
Windob XP Pro sur Notebook d'Asus X61S, Proc.Intel Core 2 Duo T6500, C.G. Nvidia GeForce GT 220M, RAM: 4Go


Haut
 Profil  
Répondre en citant le message  
 Sujet du message:
MessagePosté: 01 Oct 2013, 17:05 
Hors ligne

Inscription: 27 Juin 2006, 19:44
Messages: 1054
Localisation: France (24)
Veux-tu un programme en Basic ?

Pour ce qui est de casser l'émulateur, il faudrait quand même y aller fort.


Haut
 Profil  
Répondre en citant le message  
 Sujet du message:
MessagePosté: 01 Oct 2013, 17:25 
Hors ligne

Inscription: 27 Juil 2013, 21:32
Messages: 40
Localisation: South of France
Re,

Je répondrai positivement à ta proposition.

Merci encore pour toutes ces réponses. Je ne suis vraiment pas contre me remettre à bucher du BASIC.

Donc volontiers, j'accepte de me servir d'un programme en BASIC.

_________________
Windob XP Pro sur Notebook d'Asus X61S, Proc.Intel Core 2 Duo T6500, C.G. Nvidia GeForce GT 220M, RAM: 4Go


Haut
 Profil  
Répondre en citant le message  
 Sujet du message:
MessagePosté: 01 Oct 2013, 18:22 
Hors ligne

Inscription: 27 Juin 2006, 19:44
Messages: 1054
Localisation: France (24)
C'est un jeu en assembleur, qui s'implante par boot, en plus. Donc a priori, même en assembleur, l'interruption ne va pas être facile à implanter. Il faudrait désassembler le programme pour voir où on pourrait mettre le programme d'interruption, puis brancher un JSR sur la routine d'initialisation de l'interruption. Qui plus est, je vois mal comment gérer le top départ et l'arrêt du compteur, à moins de connaître le programme du jeu, et donc de l'avoir désassemblé et commenté (ce qui peut être long).

L'idéal serait que l'émulateur lui-même compte le total des cycles d'un breakpoint à l'autre (hé! pas bête, comme option!) et le convertisse éventuellement en secondes ou en millisecondes. Mais même pour ça, il faudrait repérer les endroits où les breakpoints seraient mis.

Finalement, je pense aussi, pour ce que tu as à faire, que le chronomètre est la meilleure solution :L


Haut
 Profil  
Répondre en citant le message  
 Sujet du message:
MessagePosté: 01 Oct 2013, 18:34 
Hors ligne

Inscription: 27 Juil 2013, 21:32
Messages: 40
Localisation: South of France
Ok, option à tester sur un programme plus simple à désassembler déja, pour que je puisse me familiariser avec ces manipulations.

On en revient au chrono du coup, qu'importe aussi, si c'est le plus simple et le plus rapide à mettre en place. Le résultat final conviendra totalement.

Mais dans tous les cas, ces quelques dernières explications me montrent déjà pas mal le genre de procédure à envisager pour le futur.

Affaire à suivre donc.

_________________
Windob XP Pro sur Notebook d'Asus X61S, Proc.Intel Core 2 Duo T6500, C.G. Nvidia GeForce GT 220M, RAM: 4Go


Haut
 Profil  
Répondre en citant le message  
Afficher les messages postés depuis:  Trier par  
Poster un nouveau sujet Répondre au sujet  [ 13 messages ] 

Heures au format UTC + 1 heure


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 4 invités


Vous ne pouvez pas poster de nouveaux sujets
Vous ne pouvez pas répondre aux sujets
Vous ne pouvez pas éditer vos messages
Vous ne pouvez pas supprimer vos messages
Vous ne pouvez pas joindre des fichiers

Rechercher:
Aller à:  
cron
Développé par phpBB® Forum Software © phpBB Group
Traduction par phpBB-fr.com