60

Ou en est cette excellente idée de standard des programmes ??

61

Désolé, je réponds à un vieux message là, mais je voudrais dire un truc:
godzil a écrit :
Prenon un exemple, t prend SMQ, ta le programme SMQ et des fichiers externes qui correspondent au packs de nivo pour SMQ ! Si on suit ton id kevin, il faudrait que ceux ci soit inclu dans SMQ !

Les niveaux standard (smqlvl) devraient être intégrés dans l'exécutable. Les niveaux d'auteurs tiers non, évidemment.

Et évidemment SMQ n'est pas conforme avec ma proposition de standard aussi pour d'autres raisons:
* mode kernel
* exécutable principal >8 KO
* utilisation de librairies dynamiques
* utilisation de smqlib pour les highscores au lieu de les enregistrer dans un fichier de données (J'aurais dû préciser ça dans ma proposition de standard: les highscores et les options de configuration sont à mettre dans un fichier de données, qui doit être automatiquement créé s'il n'existe pas, comme le fait TI-Chess par exemple.)
* pas de sources
avatarMes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

62

Bref, SMQ est un excellent jeu, mais ce n'en est pas moins (à mon avis strictement personnel) l'exemple exact à ne pas suivre du point de vue conventions de programmation.
avatarMes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

63

Kevin: "Les niveaux standard (smqlvl) devraient être intégrés dans l'exécutable. Les niveaux d'auteurs tiers non, évidemment."

Si tu fais une routine générale pour chrger les niveaux, tu ne vas pas faire de distinction entre ceux de base et ceux des tiers, ou ça commence à devenir très lourd pour le développeur du jeu...

L'exécutable principal >8ko...
commen veuxtu palier à ça sans utiliser de libs dynamique? Peut-être que je comprends mal ton explication, mais j'ai l'impression que tu te contredis!
avatarQue cache le pays des Dieux ? - Ximoon's Box - Forum Ghibli - Forum Littéraire

La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork.

64

Si tu fais une routine générale pour chrger les niveaux, tu ne vas pas faire de distinction entre ceux de base et ceux des tiers, ou ça commence à devenir très lourd pour le développeur du jeu...

clair !
commen veuxtu palier à ça sans utiliser de libs dynamique?

en compressant en PPG => l'exé principal deviendrait le lanceur, et non plus le jeu...
juste façon de voir les choses ou de jouer sur les mots...
le jeu deviendrai un simple fichier de données, dans ce cas/.

pas de sources> ben, ma fois... si le programmeur n'a pas envie de diffuser ses sources, laisse-le faire comme il veut !

libs dynamique> bon, on va pas repartir sur le débat... ça commence à suffir de débattre ds le vent.

smqlib pr les hscores...> c vrai que c peut-être pas absolument nécessaire... mais vu que smq nécessite déjà un kernel pr les autres libs, pkoi pas.
avatarTutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall

65

Ximoon
a écrit : Si tu fais une routine générale pour chrger les niveaux, tu ne vas pas faire de distinction entre ceux de base et ceux des tiers, ou ça commence à devenir très lourd pour le développeur du jeu...

C'est simple: on charge les niveaux internes dès le lancement du jeu, et on fait une routine de chargement de fichiers externes qui s'active quand l'utilisateur choisit "Load external level...". Et il n'y a pratiquement aucun code supplémentaire: le code de chargement principal peut être le même (il suffit de demander un pointeur, le code de chargement des données elles-mêmes n'a pas besoin de savoir d'où vient ce pointeur - du programme ou d'un fichier externe), il y a juste un LoadLVLData(internal_level_data); (ou lea internal_level_data(PC),a0; bsr LoadLVLData si tu préfères) à rajouter au début du programme.
avatarMes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

66

squale92
a écrit : smqlib pr les hscores...> c vrai que c peut-être pas absolument nécessaire... mais vu que smq nécessite déjà un kernel pr les autres libs, pkoi pas.

Parce que ça fait qu'à chaque reset, je me tape à chaque fois la copie de smqli_ archivé vers smqlib non archivé, parce que sinon on ne peut plus interrompre les jeux commencés! (Pour les highscores, peu importe, mais pour les jeux enregistrés, c'est lourd.) Il n'y a pas ce problème avec les jeux qui enregistrent la position actuelle dans un fichier de données automatiquement recréé s'il n'existe pas, comme le font tous les programmes codés proprement (TI-Chess par exemple).
avatarMes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

67

Je suis d'accord.

68

Kevin> tu as déjà cité TI-Chess 5 ou 6 posts plus haut... pas vraiment besoin de le reciter encore et encore : on a compris que tu appréciais ce jeu !
d'autant plus qu'il n'est pas le seul à avoir ce mode de sauvegarde !

la copie de l'archive vers la RAM, ma fois, c mon prog d'installation qui le fait
(ou plutôt, qui la faisait du temps où je jouais encore)
avatarTutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall