210

Oui ce format est bien, de souvenir je n'utilisai juste pas les stats spéciales (et pas encore le "catch rate"). Par contre il faudra coder les CT/CS (TM/HM) aussi du coup.

211

Oui, mais c'est mieux de les avoir dès le début, sinon il faudra les ajouter plus tard et ça va causer beaucoup de mal de têtes ! De mon côté j'ai ajouté les autres stats, je crois que je pourrai bientôt aborder les batailles.

EDIT : Tu connais une bonne routine de multiplication 24-bit ? Je viens d'en écrire une, mais je crois qu'elle n'est pas trop optimisée :
; stores result in AHL
mult_dhl_e:
	ld a,e
	exx
		ld e,a
		ld hl,0
		ld d,h
	exx
	ld b,24
mult_dhl_loop:
	exx
		add hl,hl
	exx
	rla
	add hl,hl
	rl d
	 jr nc,$+5
		exx
			add hl,de
		exx
	djnz mult_ade_loop
	exx
	ret
Je bosse sur les calculs d'experience, les programmeurs de Pokémon sont vraiment méchants, pourquoi utiliser des valeurs 24-bit ? mur

A propos, où as-tu trouvé les calculs d'expérience ? 6*lvl², 5*lvl², etc.? Les calculs que j'ai trouvé moi utilisent le niveau élevé au cube et dépassent deux octets. Est-ce que tu as créer tes propres calculs ? Ou les miens sont mauvais ?

Regarde le calcul du groupe "medium-slow":
Expcalc_mslow.png
Il ne fallait vraiment pas avoir un calcul aussi compliqué, non ? Je crois que j'ai fini les calculs d'expérience, mais je ne tiens pas en compte (au moins, pas encore) l'expérience actuelle du pokémon, simplement son niveau.

EDIT : kggk
Toutes ces valeurs correspondent aux valeurs de la table ici :
http://bulbapedia.bulbagarden.net/wiki/Experience#Experience_at_each_level
J'ai vérifié avec d'autres valeurs aussi (comme 99 et 49), parfois il y a une différence d'un, mais je crois que c'est pas grave smile

212

Mmh il me semble avoir vu des routines de multiplication 24-bits sur omnimaga ou ailleurs mais je n'ai pas de lien sous la main.
chickendude (./211) :
Je bosse sur les calculs d'experience, les programmeurs de Pokémon sont vraiment méchants, pourquoi utiliser des valeurs 24-bit ? mur

Oui justement c'est ce qui m'avait posé problème il me semble (même en essayant d'utiliser les OP), d'où les courbes non-officielles (car le nombre de points d'expérience était trop gros pour du 16-bits).

Sinon c'est génial, je réorganiserai sans doute quelques trucs au niveau de l'affichage mais là c'est déjà vraiment pas mal top

213

Bon, maintenant l'exp totale va être 24-bits. Je peux ajouter aussi une routine pour afficher des numéros 24-bits, mais pour le moment il ne faut pas. L'expérience nécessaire pour avancer au prochain niveau jamais atteint 24-bits (seulement l'expérience "Fluctuating", mais ça n'était pas dans la première géneration). J'avais oublié les "courbes non-officielles", maintenant on peux simplement choisir puisque j'ai déjà programmé les calculs officiels.

214

Autant garder les courbes officielles, c'est mieux d'être plus près de l'original smile

215

Je ne comprends pas la génération des pokémons sauvages, à quoi sert-il "map_pokemons" ? Ne serait-il mieux d'avoir un pointeur à la liste de pokémons trouvables dans la carte principale ?
map_table:	; ne sert pas encore (pour les transitions entre maps plus tard)
	.dw map_test

map_test:
	.db $14,$14		;map width, map height
	.dw pokemon_list	; list of pokémon you can find in this area
	.db $10,$10,$10,$10,$16,$19,$19, [...]


EDIT : Je suis en train de bosser sur/nettoyer le système de batailles smile