GL-MPRI-2014 / Ocawai

OCAWAI
8 stars 3 forks source link

Game over & brouillard de guerre #167

Closed VLanvin closed 9 years ago

VLanvin commented 9 years ago

Voici plusieurs problèmes tous adressés à @teoule17.

J'ai trouvé quelques problèmes dans la gestion du game over (et j'ai un peu de mal à les corriger) :

Il y a aussi un problème avec le brouillard de guerre, je n'affiche que les unités visibles mais apparemment elles le sont toutes... C'est normal ?

charlie-j commented 9 years ago

@VLanvin @iSheeft Il faut faire l'initialisation du brouillard de guerre en appelant la method de la classe player :+1: method init (field: Battlefield.t) (players:logicPlayer list)

Pour le game over, avant il y avait une liste dans game_engine qui ne contenait que les joueurs actifs, mais celle ci a disparu magiquement. Je répare ça.

charlie-j commented 9 years ago

pb du game_over a priori fixed

charlie-j commented 9 years ago

Pour le brouillard, cf mon dernier commit. Maintenant, le gris s'affiche correctement. Par contre, les unités enemis sont déssiné au premier tour, mais on ne les voit pas bouger après. Je suppose que je ne fais pas le player#init au bon endroit, mais aucune idée d'ou le mettre. Je vous laisse voir ?

TheoWinterhalter commented 9 years ago

Peut-être que quelque chose m'échappe, mais est-ce que ce brouillard est normal ? capture d ecran 2014-12-18 a 19 34 31 Et en effet, on dirait que les IA ne jouent plus…

VLanvin commented 9 years ago

Bon ça fait un petit moment que je suis sur le bug des IA qui ne jouent plus, et je n'ai plus trop le courage de continuer pour aujourd'hui... Tout ce que je sais, c'est que ça vient de Fog.ml, qui lance un out_of_bounds quand l'IA appelle visible_army par le biais de la fonction exposée army_of. J'ai un peu de mal à comprendre le code de Fog en détail.

Au passage, j'ai re-fixé le bug des bâtiments qui disparaissent, mon code avait lui aussi mystérieusement disparu.

charlie-j commented 9 years ago

C'était le même problème qu'avant, il faut initialiser pour chaque joueur son brouillard. Du coup, pour le jeu en local, j'ai mis ça dans le init_local de game_engine, mais pour le network, il va falloir penser à initialiser le fog quelque part dans le client.

Sinon, la minimap prend pas en compte le fog, a laisser comme ça en mode debug, c'est pratique :)

TheoWinterhalter commented 9 years ago

Super bien joué @teoule17 maintenant ça fonctionne correctement (on voit les déplacements à retardement par contre…). C'est vrai qu'il faudrait quand même mettre à jour la minimap à un moment, même si c'est sympa en debug pour l'instant.

dbusatto commented 9 years ago

il y a des problèmes de mise a jour du brouillard quand une unité meurt, et quand elle se déplace : par exemple : fogbug1 içi mon hélico viens de crever a la position du curseur, et le brouillard ne s'est pas bien remis.

De même, quand une unité avance, le brouillard ne se remet pas derrière elle.

Enfin, moins grave : quand une unité entre dans ma zone visible, a cause de l'animation je vois le chemin qu'elle emprunte dans le brouillard, c'est peut etre pas le comportement voulu

TheoWinterhalter commented 9 years ago

Pour l'animation, c'est ce que je soulève dans #173. Sinon, c'est du boulot pour @teoule17 ça non ? :p

dbusatto commented 9 years ago

Je ne sait pas si c'est l'engine ou l'interface qui déconne pour le brouillard, mais dans le même registre que la minimap on voit les unités ennemies dans l'infobulle en bas a gauche, même dans le brouillard

TheoWinterhalter commented 9 years ago

Ah, c'est en effet quelque chose à corriger pour moi ! Désolé. Et merci.

VLanvin commented 9 years ago

Tout est réglé à part un problème, qui est traité dans #187 .

TheoWinterhalter commented 9 years ago

Il faudrait peut-être ouvrir un ticket concernant le brouillard de guerre. Son comportement n'est toujours pas le bon. Et d'ailleurs plusieurs fonctions (visible_unit, visible_army_for, …) ne sont pas cohérentes avec le brouillard affiché.