Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
Tags
A jam submission

InkPongArcadeView game page

Pong mais il faut peindre le terrain ! || Pong but you have to paint the field!
Submitted by ImAReplicant — 1 hour, 10 minutes before the deadline
Add to collection

Play game

InkPongArcade's itch.io page

Results

CriteriaRankScore*Raw Score
Respect du thème#204.5294.529
Gameplay#373.7653.765
Overall#493.9513.951
Direction artistique#913.5593.559

Ranked from 34 ratings. Score is adjusted from raw score by the median number of ratings per game in the jam.

Leave a comment

Log in with itch.io to leave a comment.

Comments

Submitted

Très bon concept et bonne réalisation bravo ! J'ai eu un peu de mal a comprendre pour le tir chargé mais ca marche super bien aussi une fois qu'on maitrise gg !

Developer

Merci, oui il y a quelque point à améliorer pour le tir chargé : )

Submitted

Super idée de reprendre pong comme ça! A deux joueurs ça doit vraiment être amusant, mon seul petit bémol c'est sur le fait qu'il manque un petit feedback sur le moment où on tir (comme un son ou une vibration du joueur), mais en dehors ça vraiment un très chouette petit jeu, bravo!

Developer(+1)

Merci pour ton retour : )

Submitted

Au départ je me disais "oh bah tiens, bonne idée : un petit pong splatoon" :O mais c'est bieeen plus que ça !! Vraiment bravo pour l'originalité, j'ai passé un super moment ! Jeu à suivre pour ma part :D
Bravo !

Developer

Merci beaucoup : )

Submitted

Pour les instructions (qui sont bien sur la page itch) il serait une bonne idée de les mettre en jeu pour que le joueur puisse comprendre le rechargement et la frappe chargée. Honnêtement, je ne sais pas si j'ai utilisé le tir chargé comme il n'y a pas de feedback.

Sinon concept intéressant, des menus avec des options et +1 point pour le build Linux! C'est aussi une bonne chose que les crédits soient là sur la page itch.

Ah et Godot c'est la vie! :D



Petite questions:

Ppour les inputs sur le menu tu as fait comment pour avoir ZQSD? Est-ce que tu as bind dans l'input map ZQSD sur ui_left/right/up/down ?

Pour changer enter WASD and ZQSD tu as fait comment, via config file?

Developer(+1)

Merci ,

Je suis bien d'accord avec toi pour les instructions en jeu, je voulais faire un écran avec les actions possible avant que la partie se lance mais pas eu le temps : ) 

Oui j'ai bien bind ZQSD en plus sur ui_left/right/up/dow, puis W et A sur ui_up_qwerty et ui_left_qwerty. J'ai utilisé un singleton avec une variable "azerty=true" puis dans mes fonctions relatif à mes input j'ai simplement fais une conditions selon l'état de ma variable pour prendre en compte soi ui_left soi ui_left_qwerty par exemple.

Je ne connaissais pas configFile, pour le coup ça permettrai de sauvegarder la config du joueur parce qu'actuellement il faut choisir qwerty a chaque fois qu'on lance le jeu. Mais il faut, je pense, quand même utiliser un singleton pour lire le fichier de config seulement au lancement du jeu. En tous cas merci je rajouterai çà dans un version post-Jam.

Submitted (2 edits)

Ah donc ui_x_qwerty tu as dû rajouter des inputs pour te déplacer sur les boutons où tu as fait autrement pour que ce soit automatique comme le ui_x normal?

Et le singleton ouais c'est pratique en game jam! ^^

Config File ça peut être long à mettre en place en game jam, mais GDQuest a une vidéo sur ça et une autre sur "coding a save system" (truc du genre) pour gérer les fichiers de règle + générale. Une fois que tu sais te servir des 2, tu peux faire à peu près tout ce que tu veux. Ne pas oublier de mettre dans user:// et non res:// par contre! (explication dans la doc)

EDIT: Tu peux juste créer une node ou load un script avec ta classe qui gère les settings. Après ça dépend des jeux, parfois tu as besoin du singleton si tu as un système assez avancé pour les settings. Si le joueur ne peut pas vraiment modifier les settings, tu peux load au menu principal sans singleton. Sinon, singleton pour changer autant sur le menu principal quand quand tu load n'importe quelle scene.

Pas obligé d'utiliser un singleton peut-être si sur ta scène de menu principal tu load ton config file, (puisque c'est un passage obligé ça va mettre ta fonction en route de toute manière) mais tu peux faire la technique du singleton à la place oui. Ma philosophie c'est que + tu trouves des moyens de ne pas utiliser les singletons, mieux c'est niveau bonnes pratiques et performances! ^^

Developer (1 edit)

Aah je viens de comprendre que tu parlai des menus désoler, ba du coup j'avais pas fais gaffe mais le changement de bind ne marche pas pour les menus puisque godot utilise ui_up et ui_down pour eux. Une solution aurai été de bind les touches Z et W pour ui_up et d'utilisé d'autre input (p1_up avec Z et p1_up_qwerty avec W par exemple) pour la partie gameplay ou d'utiliser les fonctions listées ici.

Mais ça maintenant c’est du passé , avec godot 3.4 tu peux bind des touches physique (ça correspond à la position physique de la touche), il y a des explication sur ce lien à la rubrique Improved input handling

Submitted

Interessant (^w^).

Pas essayé en multi par contre (owo). Je serais curieux de voir quels genre de pourcentages sur plus de parties (^o^). Voir avec 4 joueurs en même temps (o_o). Ou plus de balles (^^). Comme ont dit les autres, j'étais parfois pas sur-sur de savoir si j'avais fait le super tir (o_o) Mais l'idée est bonne (^w^).

Bravo (^w^) ! Super idée de jeu (o_o), bien réalisée (^^)

Developer(+1)

Merci. 

L'idée de 4 joueurs avec deux balles pourrai être assez drôle ^^

Oui il faut un son différent pour le super tir, j'avais aussi prévu que les lumières clignotent différemment (les lumières clignotent quand la balle touche la raquette). Pour le coup, par manque de temps, la lumière reste fixe quand le super tir est effectué. J'ajouterai tous ça pour une version post-JAM : )

Submitted

Le jeu est vraiment joli et le concept est bien trouvé pour dépoussiérer pong, il manque un petit feedback sur le super tir, mais ça claque!

Developer

Merci pour le retour : )

Submitted

C'est dommage qu'il y ait pas de feedback pour le super tir j' ai du mal a piger quand je réussi a l'enclencher ou pas ! Mais en tout cas je trouve le concept super bravo :D

Developer

Merci pour le retour. En fait si tu réussi la balle est plus rapide et la surface peinte par la balle augmente légèrement, il y a aussi un léger freeze du jeu mais oui il manque peut être un effet sonore différent pour que ce soit bien clair : ) 

Submitted

Le concept est sympa. J’ai maintenu la jauge au maximum, mais je n’ai pas réussi à accélérer la balle comme le fait l’IA.

Le changement de lumière est une touche intéressante.

Tu as utilisé quoi pour peindre ? Est-ce que tu connais l’algo de Marching Squares ? Je l’ai utilisé pour mon jeu et ça semble bien se prêter à ce cas-ci également.

Developer
Merci pour le retour, en fait pour accélérer la balle il faut appuyer sur espace au moment où la balle touche la raquette.

J'ai utilisé une fonction disponible dans godot qui permet de dessiner des sprites (draw), en gros j'enregistre la position de la balle, sa taille et sa couleur à chaque frame dans un tableau. Pour chaque entrée du tableau la fonction draw dessine un cercle correspondant aux données enregistrées.

J'update la fonction draw également à chaque frame du coup j'avais des pertes de fps violent arrivé à un certain nombre d'entrer du tableau. Pour pallier à ce problème je sauvegarde l'image de la surface peinte toutes les 100 entrées du tableau puis j'affiche cette image en fond puis j'efface le tableau et ainsi de suite.

Non je ne connais pas l'algo, j’avoue que la page wikipedia ma donnée un mal de crâne xD. De ce que j'ai compris l'idée serai de faire une grille (maillage) et de colorié chaque carré du maillage au passage de la balle ? Ça aurait sûrement réglé les problèmes de perfs mais j'avoue que ça dépasse mais capacité en math. Il faut que je regarde, ça a l'air intéressant : )

Submitted

le concept est super cool, c'est hyper efficace ! Je suis un peu trop nulle pour l'IA par contre....

Developer

Merci

Haha désoler pour l'IA : )

Submitted

"Mind explose" hahaha l'idée est vraiment top! Gros taf pour faire ce systeme de peiture. Bravo!   

GO GODOT!

Developer(+1)

Merci : )

Godot ma beaucoup aidé pour faire ce système, il y a tous simplement une fonction draw qui permet de dessiner des sprites.
Le plus "compliqué" a  été l'optimisation surtout pour la version web.

Submitted

Ahh je ne connaissais pas cette fonction, merci !

Submitted

Au début jme suis dit : ok la balle repeint le sol, "cool, et alors ?" j'ai envie de te dire. 

Et ce que je croyais être qu'un simple artifice visuel, c'est en fait révélé être une super idée de game design ! 

Submitted

Simple et efficace , j'adore ton idée !

Developer

Merci !

Submitted(+1)

Wow, c'est excellent ! :o Pour moi c'est un sans faute complet, tout fonctionne parfaitement ! L'idée est top, le gameplay est bien équilibré et le tout est très bien réalisé avec une DA géniale. Premier 3x5* que je mets, bravo à toi ! ;)

Developer
Merci beaucoup ! 

Content que le jeu t'ai autant plus : )

Submitted

Ah, ceci dit j'ai oublié de le mentionner tout à l'heure (l'émotion sans doute x)), mais il me semble que parfois le tir chargé ne change pas correctement la couleur. Pour le tir normal je ne saurais pas trop dire, mais comme le tir chargé confirme qu'on a bien touché la balle j'ai pu voir que la couleur ne changeait pas par moment. Pour le petit point constructif quand-même ;)

Developer

Merci pour le retour.

Ça m’était arrivé pendent le développement. J'avais remarqué que lorsqu'il y avait deux collisions sur la balle au même moment (bord de l'écran et raquette) la collision ne changeais pas la couleur, je ne sais pas si c'est ce qu'il t'est arrivé mais je croyais avoir corrigé le problème.

Je viens de regarder dans mon code et effectivement je n'ai pas fait le changement, c'est ça de coder jusqu'à point d'heure xD

Çà sera pour une version post-jam : )

Submitted

Une fois qu'on a compris qu'il faut MAINTENIR la touche espace pour recharger et que le tir puissant est nécessaire pour changer la couleur de la balle, le jeu est vraiment fun !

Developer

Merci. 

Ah oui j'ai pas pensé à le préciser dans la description je vais corriger çà, merci : ) 

Par contre la balle change de couleur au contact avec la raquette, le tir puissant augmente la vitesse de la balle et la surface qu'elle peint.

Submitted(+1)

Excellent !!!

Quand splatoon rencontre PONG !

J'aime beaucoup ! Super idée !

Developer

Merci !

Submitted(+1)

Super twist sur un classique!  C'est proprement exécuté, avec une mention spéciale pour l'accessibilité, un mode qwerty, un mode 2 joueurs, un choix de la couleur etc..

Je suis curieux de savoir comment le calcul final du score fonctionne ? Est-ce que tu compte le nombre de pixel de chaque couleur sur l'écran ?

Pour un premier jeu de jam c'est impressionnant en tout cas ! Félicitations.

Developer(+1)
Merci : )

Oui c'est exactement çà, j'enregistre un "screenshot" de la surface à peindre  dans une variable puis je regarde la couleur de chaque pixel grâce à une fonction de godot (get_pixel), si çà t'intéresse je publierai sûrement le code source d'ici quelque jours/semaine le temps de faire un peu de ménage dans le code

C'est mon premier jeu de jam mais je bidouillais un peu dans mon coin sans jamais publier ni aller au bout d'un projet . Du coup la jam ma poussé à enfin en finir un.
Submitted(+1)

J'adore le concept ! Le mélange de gameplay est super bien pensé. GG

Developer

Merci : )

(+1)

Excellente idée ! Colorer la balle de sa couleur en la renvoyant pour peindre la surface ! Par contre j’ai pas l’impression que ca change beaucoup le gameplay du pong original car je pense que de toute façon si on loupe trop de balle même si on ne perd pas instant vu qu’on ne peint rien c’est dur de se refaire ^^. C’est un peu dommage que la surface de jeu soit aussi petite même si c’est pour l’ambiance (ou une histoire de performance dut a la taille de la surface ?).

Developer(+1)

Merci beaucoup.

Pour la surface de jeu c'était effectivement plus pour l'ambiance que pour des problèmes de performance (j'ai trouvé une astuce dans la façon de coder la peinture sur la surface pour que les perfs soit pas trop dégueu notamment en version web).
Je voulais aussi que les parties soit rapide à jouer, j'ai donc limiter la surface à peindre mais j'aurai peut-être dû faire un poil plus grand : )