Code Monkey home page Code Monkey logo

formiko's People

Contributors

actions-user avatar hydrolienf avatar jerryh2-0 avatar mistis0 avatar

Stargazers

 avatar  avatar  avatar

formiko's Issues

ombre sur les Creature

Pour un dessin d’ombre on pourrait mettre une image très transparente avec des zones plus claire et des zones plus foncé

taille élément textuel

Utiliser les bibliothèques java pour trouver la taille idéale de la police ou la taille idéale de l'espace occupé par un champs de texte.

  • replace the use of addParMorceaux() by a JTextArea (text with only 1 font)
  • setText() of Desc should update size of Desc (By Creating a new JLabel or calling a gui update for size).

end turn buton & continues autos modes

Les modes auto pour les fourmis sont permanants tant qu'on coupe pas le mode auto.(L'action des boutons mettre en mode auto fait l'inverse si il est activé).
Une options permet de finir le tour si toutes les fourmis ont jouées (a condition qu'au moins une fourmi soit en mode manuel).
Par défaut il faut valider la fin du tour avec la touche associée("entrer" par défaut) Ou en cliquant sur un petit bouton vert quand des fourmis joue, rouge sinon.
Un clic sur le bouton de fin de tour provoque la fin du tour meme si certaines fourmis n'ont pas jouer. C a d fait jouer les fourmis en mode auto puis mettre les actions a 0 si certaines fourmi en on encore de dispo puis les faire jouer une a 1.(leur tour permet de les faire viellir et manger et tt les actions obligatoire par tour)
La touche associée a "fin de tour" parcours les fourmis qui ont encore des actions disponible tant qu'il en reste puis fini le tour si elles ont toutes jouées.


  • red or green circle on a Bouton
  • wait before ending turn
  • clic on button end turn
  • clic on button force end turn
  • option to auto end turn
  • only if there is minimum 1 ant not in auto mode turn can be end auto.
  • Save auto mode
  • be able to clic on an ant in auto mode
  • be able to disable auto mode
  • show auto mode enable
  • auto end turn is disable every time player haven't done any action during a turn.
  • button is still red when we clic on a non action aviable ant.
  • when playingAnt==null we use queen of the playingPlayer to show icon.
  • endTurn auto for other action than ZZZ

  • end turn button can be remove by command line (without error)
  • end turn button is remove in tuto
  • fix return to main menu
  • add Option annimationEnable
  • if animationEnable button turn red in 0,5s

%age & type oeuf

Tant que la fourmilière ne compte pas un certain nombre d’individus les reine et male ne peuvent pas être pondu.
Les joueurs peuvent définir un %age de chaque type d’oeuf a pondre.
Les ia on un %age de type d’oeuf défini pour chaque espèce.
Si le %age est fixé, au lieu de demander le type de l’oeuf le jeu choisi de façon a ce que la catégorie auquel il manque le plus de % en gagne.
Les ia ont un %age pour les petites colonies, les moyennes et les géantes. Ces %age sont défini dans les espèces

web site

Faire un site web de type formiko.fr/langue/telechargement/
Y mettre la bande annonce du jeu, un lien vers le Discord avec le module tt fait de Discord et une page de téléchargement du jeu avec un bouton "la dernière version fiable pour vous" (avec un lien vers le bon OS) et une liste des autre versions disponible en fonction des plateformes

quantité de végétaux sur une case visible.

  • Blade extends Point { double direction, byte length}
  • Every case have a GBlade that extends Liste
  • adding grass (= insect food) add random blades at the end of the GBlade.
  • removing grass remove blades (create sub list from GBlade by removing the x fisrt Blade).
  • Blade can be draw with a grass green line.
  • for each Case : for(Blade blade : GBLade) { blade.draw(g, xCaseOfset, yCaseOfset);}
  • addBLade(Case c, int quantity) & removeBlade(Case c, int quantity) are in view with default do nothing.
  • test that addBLade(Case c, int quantity) & removeBlade(Case c, int quantity) influ over quantity of the blade on the Case c.
  • blade are in big quantity at the start of the game
  • blade are null if bladeByTurn==0
  • bladeGrass & bladeMoss dont have the same color
  • foodInsecteParTourTemp depend of getPartie().getCarte().getAbondanceHerbe()
  • bladeMoss are curved.

  • low graphics mod with a green fiter insted of each Blade.
  • graphics option to represent grass as the filter or Blade.
  • Draw Blade on an image & draw the image over FPanelCarte
  • redraw Blade only when a boolean have been update in ViewGui.

La quantité de végétaux sur une case peut-être représentée par un niveau de remplissage sur une feuille.
Si la feuille est rempli a <25% elle en rouge si <50% orange sinon verte sauf si elle n’as pas de végétation dans ce cas soit pas de feuille soit feuille grise.
La feuille est plus ou moins grande en fonction de la quantité max de végétation.

ChasserHerbivore

transformer la façon dont mange les Insectes pour que ce soit comme ChasseFourmi, mais avec un truc de type MangerInsecte. Permettre au fourmi de manger les graines avec MangerFourmi.

add test for java file

Ajouter des test pour les packages (plus facile) pour math par exemple c'est facile.
et des test pour les autre .class
on peu mimer les actions des boutons des fourmis pour des exemple préci et vérifier que la fourmi a bien les nouvelles stats voulue.

ant interaction with map

Ajouter la possibilité de cliquer sur une case pour jouer la fourmi qui y ait.
Ajouter la possibilité de clic droit pour déplacer la fourmi actuelle d’autant que possible vers la case.

placement élément sur une case

Une options permet au créature et au graine de ce placer de façon légèrement aléatoire sur une case. (Tant qu’il sont encore 100% sur la case)
Une option permet de décaler les éléments d’1 case pour pouvoir en afficher jusqu’à 5 sans qu’il ne ce cache trop (1 par coin et un au centre)

key to moove ant

Les touches de déplacement peuvent être utiliser pour déplacer la fourmi actuelle

An image for every map

  • Certaines carte on une image d’arrière plan qui dépend de la carte (dans un sous dossier carte de image)

  • Remove unplayable map of the aviable map (exept tuto, desert, tiers, mini world)
  • 1 New big map (underTheTree) a centered round of moss & grass everywere else
  • 1 New small map (sandBox) (10x6) only sand

All map have an Image :

  • desert.csv
  • miniWorld.csv (a small planet)
  • sandBox.csv
  • thirds.csv
  • tuto.csv (Lili with a book in 1 hand, on a Formiko map background + a buble of text in Esperanto, or in emoji, maybe ending with "..." as an ant eating an insect)
  • underTheTree.csv

équité au démarrage de la partie avec recherche de phéromone différent au début.

Par mesure d’équité le choix des phéromones des fourmis pourrait être ré-effectué tant qu’il faut de façon a ce qu’aucune fourmilière (ni les phéromones des insectes) ne soit considéré comme alliés. (Options qui peu être décoché dans les partis libre mais pas les niveaux de la campagne ou la couleur des ia devrait être fixée par mesure de sécurité).

  • checkbox option in personalized game "allow team"
  • this option is false by default in Partie.java
  • when option is false color are choose different enoth to avoid team.
  • if allow team==true add a team number for each player in personalized game. If team number is swap, player or AI take the color of an other team member

Script de partie

faire des fichiers .txt qui ligne par ligne font des commandes triches.

Ajouter des commande triches pour attendre un certain nombre de tour & finir la partie.

public score

Stats de score public avec les pseudo des joueurs.
Stats de score dépendante de la carte.
Ses info sont disponible sur le site web

les touches peuvent être modifier dans un Panneau.

le nom de la touche dans la langue choisi est afficher a gauche, la touche associer de type 'e' est afficher a droite.
En cliquant sur la touche a modifier, l'écoute des touches s’enclenche. La prochaine tout pressé devient la touche sélectionnée pour cette action (si la touche n'est pas déjà attribuée)

écran échap

Ajouter l'écran échap qui permette de changer la langue, sauvegarder, quitter le jeu, revenir au menu principal

Déplacement des fourmis non instantané avec mouvement des pattes

  • legs needs to be turned from x° depending of the pivot point.
  • legs needs to be place under the ant so that the pivot point is the same than the end of the leg.
  • multiple Case move
  • rotation for multiple Case move
  • micro-glitch when moving. (at the begining of a move)
  • move code to this own function
  • after a bit of moving, creature move instantaneously, we need to fix it

retour au menu

Pouvoir lancer une autre partie depuis le menu principal une fois qu'on est revenu au menu principale.

caractéristiques pour ajout d'insecte

/* il faudrait prendre en compte 3 caractéristiques pour ajouter des insectes :
- ceux qui tombe mort du ciel. (bcp en facil)
- ceux qui naisse a partir d'insecte vivant. (idéelement lors de leur tour les insectes on une chance de pondre. il leur faudrait aussi une quantité de nourriture a eux qui baisserait de façon concéquente lors d'une naissance).
- ceux qui arrive dans la carte (uniquement via les bordures) (bcp en facile.)
en fonction des type d'insectes certains devrait avoir la possibilité de s'envoler et d'être dans une liste d'insecte protégé de la case. (liste qui ne s'afficherai pas sur la carte.) (s'envoler ou s'enfouir.)
Sur une très grande carte les insectes devrais etre en mesure de ce reproduire beaucoup dans les zones peut peuplé en fourmi.
Donc tout les insectes sont représenter sur la carte et des échange terre ciel on lieux.
Certains insectes devrait être inmangable comme les cocinelles.
*/
//tant que les insectes ne sont pas trop nombreux, leur nombre augmente de 10
// idéalement il ne faudrait pas qu'il dépace le nombre maximum...

ant sound ~ actions

Un son ce déclenche a chaque action d’une fourmi déclenché par un joueur.

multi icone pour plusieurs élément sur une case.

  • Create an Image with the great dim to be print as an Icon.
  • Use g.fillArc(area.x, area.y, area.width, area.height, startAngle, arcAngle) to draw on an image the slice with the Color of the Icon.
  • replace the color of the Icon by the corresponding image, slice by slice.

add data base for player score and general information

  • Base de données MySQL avec les info générale des joueurs dans un tableau et leurs score dans un autre.
  • Accès a la base de donnée depuis Java.
  • Panneau d'inscription
  • Panneau de connexion.

  • ajouter un champ mdp sauvegardé encripté.
  • ajouter une lien "j'ai oublié mon mdp qui envoie un mél de modification de mdp (avec le champ pseudo rempli mais pas le champ mdp)

insectes volants ( fly )

Les insectes volants pourrait disposer d'un interface vole contenant s’envoler et atterrir. tant qu'ils sont en vol il apparaissent en translucide sur la carte. Il on un nombre de tour de vol maximum.

Tuto

Faire un tuto qui fait réaliser les étape élémentairs du jeu, a partir d'un fichier de commande ou chaque étape du tuto est décrite.

Le tuto ce lance si le fichier temps n’existe pas encore .

graphique de l'avancement du jeu en fonction des dates.

  • Use git log to execute a fct for every day with the last commit of every day. It is save in a .csv.
  • this function return a csv line with date, numberOfLine, numberOfClass, numberOfFunction (pu-po-pr-1lineFct), totalFct&Class totalFct&ClassCommented

ajouter un outils de graphique sur le journalDesMaj qui compte le nombre d'occurence de chaque date (en partant de la 1a date trouvé dans JMD) en suposant qu'a chaque fonctionalité ajouté la date est indiquée 1 fois.
En suite on peu ajouter chaque date et sont nombre de fonctionalité ajouter dans un .csv qui peut ensuite être transformer en graphique ou en stat en fonction des mois ou des jours de la semaine.

save a game

Une sauvegarde peu être charger en plusieurs étapes : la carte
Les informations à placer sur la carte : graines, insectes, fourmis et les joueurs qui y sont lié.
Les autres informations de la partie

autant sauvegarder dans le même ordre.

Home page with movent

Faire bouger les nuages dans le ciel de l'écran d’accueil et ajouter des oiseaux qui bouge aussi.

  • make a ladybug image in side view
  • make the ladybug go from a side to the other in menu (with a Thread that edit location)
  • ladybug move a bit randomly up or down (with a max up & a max down)
  • ladybug follow the mouse of the user when distance between the 2 are <0.2*frame.getWhidth()
  • ladybug is over button
  • ladybug is draw turned when following user mouse.

other ant species

Une autre espèce insectivores est disponible. Elle est plus grosse ou plus petite.

redimensionnement de la Fenetre

actualiser a chaque redimensionnement de la fenêtre la totalité des éléments graphique.
OU bloquer le redimensionnement sauf au lancement du jeu.

Idéalement il faudrait avoir une méthode pour redimensionner les graphiques qui ne s'active que si la fenêtre perçoit un redimensionnement.

Collect d'info pendant le jeu et utilisation

La méthode de classement peut ce décliner avec d'autre variable (a collecter pendant le jeu)

Idéalement il faudrait pouvoir faire des graphes avec ses donnée dans la page de fin de partie.

add options Panel

  • Créer la page de modification des options.
  • La page de modification des options récupère un tableau de String du fichier Option.txt et affiche les info a gauche (dans tt les langues) et les valeur a droite.
  • Classer les options en ajoutant au début du nom la catégorie. (ex graphics_buttonSizeTX=...)
  • Utiliser les catégories pour faire plusieurs onglet de page d’option
  • Ajouter une colonne à droite pour faire monter ou descendre les pages d’option si elles sont trop grandes

méthode de tri de String

Ajout d'une méthode de tri d'un tableau de String.
Utilisation de celle ci dans le jeu de façon a trier les import, de la 1a ligne après celle qui commence par"//def" a la dernière (inclu) qui contient "import ".

Coccinelle

Surclass d'insecte les Coccinelle ont une méthode de chasse d'implémenté et chasse seulement les puceron. (et ne mange rien d'autre.)

carte avec des bouton pour qu'elle soit cliquable OU Pannel transparent au 1a plan

La carte possède un bouton transparent par case visible. Cela permet le clic de sélection, celui de déplacement et l’aff des info de la case.
Autre solution on fait un Pannel transparent au dessus de tt les autres et si il y a bien des cases de la cartes en dessous on les décrit au survole
& on change la fourmi qui joue actuellement en cas de clic.
& on déplace la fourmi actuel en cas de clic droit

zoom ~ sounds

Si le niveau de zoom de la carte est dans les 20% les moins zoomé on entend le vent, si il est dans les 20% les plus zoomé on entend des bruits de mandibules et de pâtes.

Les bruit d'insecte dépendent des insectes afficher sur la carte.

Windows and transparent Panel

Peut être que Windows pourrait redessiner toute la fenêtre lors du survole d’un élément transparent pour régler ça.

indicateur de faim

Si une créature alliée du joueur a faim ou besoin d’être nétoyer on l'affiche avec une icone en bas a gauche de la case. (Icone avec une pointe comme dans civ 4)

  • charger les icones de faim, santé et age de PanneauInfoCreature
  • Déplacer les fonctions getcolor de faim / santé et vasEvoluerAuProchainTour() dans Creature
  • Si getColorFaim() ou getColorSanté() renvoie autre chose que vert, afficher l'icône
  • remove weard black circle print when heal & food icon are print
  • Si une créature vas évoluer au prochain tour, afficher l'icone d'évolutions d'age en bleu
  • Une option activée par défaut permet d’activer ou pas cet affichage.
  • cette options s'active et ce désactive dans les options graphiques au dessus de la carte.
  • L'icône avec le plus haut niveau de gravité s'affiche toujours sur le dessus d'une case (les autres ne sont pas affichés)
  • Lorsque la fourmi qui joue (lors du tour d'un joueur humain) fait une action, les icones sont actualisés & les barres d'info de la fourmi sont actualisés

adjustable music volume

Le volume de la musique est présent dans les Options est accessible avec Main.getOp() reste plus qu'as ce qu'il ai un impacte sur le volume réel de la musique.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.