Annonces Google
Serveur IRC
Serveur : irc.portlane.se
Canal : #AmigaNG
Activité du Site

Pages vues depuis 25/07/2007 : 25 277 167

  • Nb. de membres 187
  • Nb. d'articles 1 270
  • Nb. de forums 19
  • Nb. de sujets 20
  • Nb. de critiques 24

Top 10  Statistiques

Index du forum »»  Création-Développement »» projet: "player" Amiga pour les jeux conçus avec Game Maker

projet: "player" Amiga pour les jeux conçus avec Game Maker#2131

15Contributeur(s)
thellierTarzinLioElwoodCrisotCreolsastrofrazzd10hPetrolsinisrushunoppcK-LPseudaxosYesCop
3 Modérateur(s)
K-LElwoodcorto
thellier thelliericon_post

Locomalito ,l' auteur du jeu, m'a répondu à propos de mon "player" pour Amiga et de mes problèmes avec les scripts GML

"C'est une Bonne nouvelle !

Je n'ai pas encore le nouveau débogueur , mais je vais essayer de le mettre en place et d'y jeter un coup d'oeil bientôt (je suis actuellement concentré à 100% sur la finition d'un projet).
Je vous envoie ici l'info de l'objet d'intro,que vous avez mentionné, comme elle est sauvegardée dans le répertoire de travail, je ne sais pas si ça aide, mais chaque objet est stocké comme ça dans ce répertoire de travail (mais il y manque probablement le code GML interne)

Locomalito
"


Sam440 - Sam460 - X5000 - PowerBookG4 - WinUAE - MiniMig
thellier thelliericon_post
Ok ça progresse
Grace aux sources de Locomalito qui m'ont permis de comparer à mes "sources désassemblées"

J'arrive désormais à décompiler correctement des scripts entier en bytecode GML :-)

La version "originale" de "Abbaye des morts" arrive meme à se décompiler en entier :-)
(Pas la version Amiga ni la version réécrite sur Linux dont elle provient mais l'archive GameMaker originale)

Par contre sur des jeux plus gros mon "décompileur" semble se perdre en cours de route si bien que juste 80% du code est correct

Etapes suivantes:
Corriger ce problème
Créer une "machine virtuelle" pour éxecuter ce "bytecode" : genre faire des calculs, appeler une fonction GML,etc....
Implémenter une partie des fonctions du langage GML : Pour faire tourner le jeu de ma vidéo il faudra implémenter 105 fonctions :-(

Alain Thellier
Sam440 - Sam460 - X5000 - PowerBookG4 - WinUAE - MiniMig
icon_post
Bravo,
Superbe projet.

Kamelito
[addsig]
thellier thelliericon_post
OK ça marche : tout les scripts sont décompilés et 100% ok

J'ai désormais le premier désassembleur de bytecode GML (Game Maker Langage) fonctionnel :-)

Je me retrouve donc avec 1370 lignes de scripts du jeu désassemblés

Pour info:

L'opcode 13 décimal est l'instruction NEG (opcode inconnu dans la doc dispo)
Les offset de variable sont sur 24 bits (et non pas 16 comme le dis la doc dispo) les 8 premiers bits étant le "type" (?) de variable

J'ai désormais de bons espoir de voir mon jeu tourner pour l'Alchimie :-)

Alain Thellier
Sam440 - Sam460 - X5000 - PowerBookG4 - WinUAE - MiniMig
sinisrus sinisrusicon_post
Bien joué Alain !! :-)
--
Coin coin... amitheme.amiga-ng.org
Sam460 1,15Ghz - OS4.1FE - Radeon Saphir HD7750 R7 250E - 2Go de ram
Tarzin Tarzinicon_post
Tu vas beaucoup plus vite que moi, pas eu le temps cette semaine de mettre les mains dans GM.
D'ici l'Alchimie, je devrais avoir progressé!
---
A500/A600/A1200/SAM 440 OS4.1 FE upd1/WinUAE AmliKit/Amiga Forever
https://twitter.com/TarzinCDK
hunoppc hunoppcicon_post
@Alain
Je tenais à te féliciter de ce travail magnifique qui va encore nous apporté de beaux jeux sur nos amiga's
Merci merci et merci pour le temps que tu passes pour nous faire plaisir.
Il existe des jeux du style que j'aime ou je vais pouvoir passer des heures avec mon NG :-)
Bon code 
HunoPPC
AmigaOs4 Rulez
- X1000 Nemo - 1800 Mhz 4 Go de Ram - Radeon HD R9 280X Version Toxic 3GO
Soundblaster live 5.1, Siil 3114 PCIe 1X, Port Serial debug
X5000/40 RX560 4Go
thellier thelliericon_post
Grans Mercis Hugues

Enfin c'est surtout toi qui nous apporte des tonnes de jeux pour nos NG ;-)

Mon player avance lentement :
J'ai désormais une petite machine virtuelle bytecode et là j'ai réussi à faire tourner 2 scripts en bytecode GML .... sans que ça plante
Bon ça affiche juste un texte à l'écran ... mais surtout ça plante pas

Le bytecode est une espèce de pseudo-assembleur qui fait des opérations (addition,multiplication,...) des tests (supérieur, inférieur,égal,...) et des sauts (comme un if(condition) goto )
En dehors de sa fonction de "CPU" le bytecode fait aussi appel aux fonctions du langage GML (Game Maker Langage) genre dessiner un sprite, afficher un texte, etc...

Pour porter le jeu que je veux il faudra implémenter les 105 fonctions GML qu'il utilise. Heureusement certaines sont triviales comme round() abs() etc... mais d'autres de gros morceaux comme draw_sprite_tiled_ext()

>Il existe des jeux du style que j'aime
Malheureusement comme le fait qu'un jeu marche implique (+ ou -) que toutes les fonctions GML utilisé dedans soient émulées alors il y aucune chance que tout les jeux marchent d'office sur mon player

Si t'as un jeu que tu veut vraiment avoir il faudra le passer dans mon player, voir quelles fonctions lui manque, et implémenter ces nouvelles fonctions dans une nouvelle version de mon player

Voilà

Alain
Sam440 - Sam460 - X5000 - PowerBookG4 - WinUAE - MiniMig

Message édité par : thellier / 09-09-2015 10:09
Elwood Elwoodicon_post
Idée : si tu écrits une petite doc sur "comment écrire une fonction pour ton player", les autres développeurs pourraient t'aider à implémenter les fonctions du langage.
--
Philippe Ferrucci
Avec une Sam460 et AmigaOS 4.1, je suis eco-responsable. Cool !
icon_post
@Thelier

Pour quoi ne pas faire un wrapper via une library comme la SDL?

Kamelito
[addsig]
Petites Annonces

0 annonce(s) publiée(s)

Consulter

AmigaOS 4.1

Laissez-vous tenter par
AmigaOS 4.1
AmiTheme

AmiTheme