Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.
La shoutbox n'est pas chargée par défaut pour des raisons de performances. Cliquez pour charger.

Forum Casio - Projets de programmation


Index du Forum » Projets de programmation » Just Too Many Mechanics 2 (JTMM2)
Kikoodx En ligne Ancien labélisateur Points: 3039 Défis: 11 Message

Just Too Many Mechanics 2 (JTMM2)

Posté le 22/09/2020 16:12

Dépôt du projet
cgit personnel
miroir sourcehut

Devlog quotidien
Trifouillages de Minuit #1
Trifouillages de Minuit #2
Trifouillages de Minuit #3
Trifouillages de Minuit #4
Trifouillages de Minuit #5
Trifouillages de Minuit #6
Trifouillages de Minuit #7

obsolète
Cliquez pour recouvrir
Bonjour ! JTMM2 (Just Too Many Mechanics 2) est un jeu de plateforme en cours de développement.
Je crée ce topic pour laisser une trace il n'est pas encore finalisé et un peu brouillon.

Mon objectif est de créer le meilleur jeu de plateforme jamais créé sur calculatrice(tm), avant que quelqu'un de doué ne s'y mette et grille la place x)

Cette fois-ci je tente de faire un code propre. A tout ceux qui ont lu le code de JTMM : pardonnez moi. Personne ne mérite ça

Mais surtout, je veux faire un bon jeu. Sur tous les plans. Je crois m'être amélioré en game design depuis JTMM, le futur nous le dira. Je ferai tout mon possible pour créer un jeu qui pardonne le joueur et lui donner un bon choix de mouvement (je t'ai entendu Lephé).

Je travaille entre environ 2 et 5 heures par jour sur le projet, alors attendez vous à un build décent d'ici la fin de l'année 2099

Pour suivre mon progrès, je vous recommande de lire les notes de commits sur Gitea.
J'essairai de poster ici à chaque étape importante du développement.

Si vous avez des remarques, suggestions, critiques ; que ce soit sur le code, le jeu ou ce topic : lâchez vous.
Je prend tout

Dépôt Gitea principal.
Dépôt de KBLE (en développement).

Remerciements
Cliquez pour recouvrir
Merci Lephénixnoir, merci pour gint et merci pour ton aide quand je galère sur des trucs stupides.
Merci beaucoup à Masséna pour avoir été la seule personne à s'être intéressé à JTMM premier du nom à un moment donné et m'avoir motivé à continuer. Il est aussi le graphiste principal du projet !
Merci à Tituya pour son support et les icônes.
Merci à tous les membres de Planète Casio m'ayant aidé d'une façon ou d'une autre.



Kikoodx En ligne Ancien labélisateur Points: 3039 Défis: 11 Message

Citer : Posté le 21/01/2021 22:25 | #


La souris sera peut-être supportée en basse priorité, sûrement le minimum syndical placer/effacer mais pas le reste
ouais ouais
Lephenixnoir En ligne Administrateur Points: 24573 Défis: 170 Message

Citer : Posté le 21/01/2021 22:45 | #


Bon eh ben alea jacta est du coup.
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Cakeisalie5 Hors ligne Ancien administrateur Points: 1959 Défis: 11 Message

Citer : Posté le 21/01/2021 22:49 | #


Mais achetez-lui une souris bon sang, vous ne voyez pas qu'il souffre
Respirateur d'air, BDFL de Cahute, des utilitaires de communication pour calculatrices CASIO.


Mon blogMes autres projets
Tituya Hors ligne Administrateur Points: 2156 Défis: 26 Message

Citer : Posté le 22/01/2021 01:15 | #


Pétition pour donner une souris Casio à KikooDX
Bretagne > Reste du globe
(Et de toute façon, vous pouvez pas dire le contraire)
Projet en cours : Adoranda

Mes programmes
Hésite pas à faire un test !


Lephenixnoir En ligne Administrateur Points: 24573 Défis: 170 Message

Citer : Posté le 22/01/2021 10:21 | #


Je peux lui envoyer une souris après la 1kBCJ#4 si vous voulez.
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Kikoodx En ligne Ancien labélisateur Points: 3039 Défis: 11 Message

Citer : Posté le 22/01/2021 11:21 | #


J'aime développer des outils adaptés à mes projets et mes besoins, mon projet demande un bon éditeur avec un support de l'autotiling (que Tiled ne gère pas très bien), et qui n'utilise pas Electron par pitié (LDtk). Le fonctionnement au clavier est un gros bonus pour moi, même quand j'ai une souris je préfère travailler sans si possible
Mon plan si l'éditeur final est inutilisable : j'abandonne et quémande une souris

Ajouté le 30/01/2021 à 17:28 :
Update de l'éditeur.
Salut. J'ai recommencé l'éditeur de zéro et suis parti sur Zig + raylib. Je suis très heureux de ce choix. Courte vidéo de ce que l'éditeur supporte pour le moment.
Vous pouvez voir le repo et le code par vous même : https://git.sr.ht/~kikoodx/kble
Bonne soirée
ouais ouais
Lephenixnoir En ligne Administrateur Points: 24573 Défis: 170 Message

Citer : Posté le 30/01/2021 17:33 | #


Oh nice. In other news, je te hais
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Kikoodx En ligne Ancien labélisateur Points: 3039 Défis: 11 Message

Citer : Posté le 15/12/2021 22:50 | # | Fichier joint


Salut les gens ! Je reprend JTMM2 de zéro. Euh.
Bon. Euh.
Je reviendrai quand j'aurai des trucs à montrer. Euh.
'Tain la com' c'est pas mon truc -_-'

Si vous voulez suivre les commits inexistants (chacun son délire je ne juge point) c'est ici ↓
http://kiko.ovh/cgit/jtmm2
(pas de "s" après "http", si ce fait vous dérange ne cliquez pas)

Je donnerai des infos peu avant la prochaine RDP™. Jusque là, ouste ! du balai.

“I refuse to die before I see the sun rise again.” -- VOW001
Ça me laisse jusqu'à demain matin. fuck
ouais ouais
Massena En ligne Ancien rédacteur Points: 2244 Défis: 11 Message

Citer : Posté le 16/12/2021 07:24 | #


Ok mais l'abandonne pas comme tes 3 derniers projets

(Bonne chance, si t'as besoin de graphismes tu sais à qui demander.)
Lephenixnoir En ligne Administrateur Points: 24573 Défis: 170 Message

Citer : Posté le 16/12/2021 11:26 | #


Tester squad toujours là, je prends les builds. Mais sinon une raison particulière pour recommencer ? Des problèmes de code ? Design ? Organisation ? Ou juste pas envie de reprendre du dev' trop vieux ?
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Kikoodx En ligne Ancien labélisateur Points: 3039 Défis: 11 Message

Citer : Posté le 16/12/2021 11:58 | #


Merci à vous deux

Lephenixnoir a écrit :
Mais sinon une raison particulière pour recommencer ? Des problèmes de code ? Design ? Organisation ? Ou juste pas envie de reprendre du dev' trop vieux ?

Le design principalement, le code de JTMM2 était beaucoup trop complexe pour les besoins du jeu. J'ai simplifié certains points afin d'obtenir un scope correct pour un projet de cette ampleur, je ne compte pas faire de crossplatform mono/poly ou de scrolling par exemple.

J'ai aussi pas mal progressé en C depuis : je pense pouvoir atteindre le niveau d'avancement de l'ancienne base de code en quelques jours.
ouais ouais
Kikoodx En ligne Ancien labélisateur Points: 3039 Défis: 11 Message

Citer : Posté le 17/12/2021 01:20 | # | Fichier joint


Trifouillages de Minuit #1

Salut les gens ! Je vais bosser fort sur ce jeu. JTMM2 étant un platformer de base (plutôt avancé, certes) et moi ayant un peu d'expérience dans le domaine maintenant, je me sens d'humeur à partager mes progrès et des notes en vrac. Je ne veux pas perdre trop de temps avec la rédaction, alors à partir de demain mes trifouillages seront constitués de spoilers titrés sans introduction et du git log --oneline du jour.

Si vous avez des questions et remarques, j'y répondrai dans mon épisode de Trifouillages du jour suivant.

vision
Cliquez pour recouvrir
Je vais parler rapidement de mon concept abstrait de vision.

Avant de commencer un jeu, je réfléchis généralement à l'histoire et aux sentiments que je veux transmettre. Le game design suit après. Pour JTMM2, je suis le processus inverse : je sais déjà que le jeu doit avoir beaucoup de mécaniques et être centré sur le mouvement et le level design (comme JTMM premier du nom). Je cherche donc un cadre et des sentiments qui correspondend, et je pense en être finalement proche.

Une fois que j'aurai une image mentale correcte, je contacterai Masséna pour discuter graphismes

Il n'y a pas de méthode spécifique pour construire un jeu, mais celle-ci me permet de continuer à créer en me sentant vivant. Not bad I guess.


modding
Cliquez pour recouvrir
Je comptais au début intégrer le modding au jeu. J'ai finalement réalisé que ce n'est pas la partie qui m'intéresse dans la création de jeux. J'ai plutôt choisi d'écrire le projet de la manière qui me plait le plus, j'espère que n'importe quel programmeur C de niveau débutant ou plus sera capable de lire les sources et faire des modifications. Pareil pour l'édition de niveaux, c'est cool d'avoir un éditeur on-calc mais je ne pense pas que les efforts que j'investirais dedans seraient rentables. Il faudra modifier sur PC vous même et recompiler pour obtenir un add-in. Mes jeux ne sont pas des services.


6f3eda4 platformer physics
689044f get tiles
a3c7245 draw level
7157b82 level module
c4ea9e7 remove typedefs
0135212 input module
2a5e9e2 player & main skeletons
6de3ccd base gint project
7886810 initial commit


http://kiko.ovh/cgit/jtmm2.git
N'ayez pas peur, c'est mille fois que le premier JTMM.
ouais ouais
Lephenixnoir En ligne Administrateur Points: 24573 Défis: 170 Message

Citer : Posté le 17/12/2021 07:17 | #


Cette liste de commits on dirait presque mot pour mot celle de la version précédente

(Hint : t'es sûr que les spoilers ça devrait pas être l'inverse plutôt ?)
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Kikoodx En ligne Ancien labélisateur Points: 3039 Défis: 11 Message

Citer : Posté le 17/12/2021 11:26 | #


Lephénixnoir a écrit :
Cette liste de commits on dirait presque mot pour mot celle de la version précédente

Important de poser les bases rapidement pour un platformer, ça devrait commencer à diverger Bientôt™

Lephénixnoir a écrit :
(Hint : t'es sûr que les spoilers ça devrait pas être l'inverse plutôt ?)

Je ne sais pas, peut-être. J'avais fait ça pour garder le post compact, mais les logs prennent plus de place finalement. Je testerai à l'envers.
ouais ouais
Kikoodx En ligne Ancien labélisateur Points: 3039 Défis: 11 Message

Citer : Posté le 17/12/2021 23:57 | # | Fichier joint


Trifouillages de Minuit #2 (ou presque, ne chipotez pas)

Un add-in en pièce jointe, un ! Il contient la version actuelle du jeu et deux niveaux plutôt médiocres selon mes standards, assez pour que vous puissiez le tester si vous êtes curieux

Objectif du projet

Je vais suivre la même philosophie que pour le premier JTMM : fuck it.
Si j'aime une mécanique, je la volerai de manière éhontée. JTMM2 sera porté gameplay et le game design sera un kitchen sink chaotique. Je vais tout faire pour le plaisir, ce n'est pas un jeu commercial alors fuck les menus et toutes les conventions de genre.

Dû à l'objectif « have fun » du projet et au fait que je suis devenu relativement rapide pour programmer des platformers, le jeu est déjà jouable après moins de deux jours. J'ai un code gameplay solide et la plupart des bases dont j'aurai besoin pour scope creep comme un ouf. Ce que ça pourrait signifier pour la suite :
Des mécaniques. Je veux essayer d'en implémenter au moins une nouvelle par jour
Des niveaux. Je kiffe le level design, je vais passer pas mal de temps à créer.
Des graphismes. Ou pas ? Je peux tricher avec un...

MASSÉNAAAAAAAAAAAAAA !

Euh. J'ai rien à ajouter. Déso pas déso.

git log
Cliquez pour recouvrir
05ac1bb level 'burn' & burn fix
c0d4815 level next & player death
8335324 better test level
f11eb62 replace some floats with ints
e034649 player spawn tile
a185811 jump buffer & jump grace
77a5ea7 fast vertical jump curve
ff0736f frameskip
1b3f7df variable jump height

ouais ouais
Lephenixnoir En ligne Administrateur Points: 24573 Défis: 170 Message

Citer : Posté le 18/12/2021 00:23 | #


J'ai testé. Je sens que je vais y rager pas mal sur ce jeu comme d'habitude. Tu commences bien là
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Massena En ligne Ancien rédacteur Points: 2244 Défis: 11 Message

Citer : Posté le 18/12/2021 00:39 | #


Kikoodx a écrit :
MASSÉNAAAAAAAAAAAAAA !

Hey. Ça avance vite dites donc. Heureux d'apprendre que JTMM2 sera proche de JTMM, c'est peut-être mieux au final

Sympa les tiles @ et >, j'apprécie la référence
Massena En ligne Ancien rédacteur Points: 2244 Défis: 11 Message

Citer : Posté le 18/12/2021 14:24 | # | Fichier joint


En exclusivité, un aperçu des textures finales du jeu :

Lephenixnoir En ligne Administrateur Points: 24573 Défis: 170 Message

Citer : Posté le 18/12/2021 14:37 | #


On se noie dans le Lephe' là !
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Kikoodx En ligne Ancien labélisateur Points: 3039 Défis: 11 Message

Citer : Posté le 18/12/2021 14:42 | #


Il n'y a pas de retour en arrière, je veux l'avatar de Lephé en jeu maintenant.
ouais ouais
Kikoodx En ligne Ancien labélisateur Points: 3039 Défis: 11 Message

Citer : Posté le 19/12/2021 01:14 | # | Fichier joint


Trifouillages de Minuit #3

Un add-in en pièce jointe, un !
Jouez-y ou je vous bute :3

Inspirations

En plus des snippets randoms que je compte écrire ici, je ferai un résumé chaque jour des mécaniques ajoutées au jeu. C'est un peu dans le titre, et j'espère que ça vous donnera envie de lancer le build. La ligne "Inspiration :" indique quel jeu/oeuvre a inspiré la mécanique initialement, ce ne sont que des jeux que je recommande alors essayez au moins les freewares.

JTMM2 est le jeu "je copie et j'assume", et je suis étonné de voir que mes "copies" ont finalement peu ou rien à voir avec les jeux originaux. Il faut que je me débloque sur ce genre de chose, mais ça va prendre du temps.

Mécanique : Slime Bouncer

Une mécanique star de JTMM. Je l'ai réécrit plusieurs fois avant de me rendre compte que la première version fonctionnait si j'ajoutais deux parenthèses. Le moment press F de la journée.

Inspiration : 7 (seven)

Mécanique : Blocs Polarisés

J'adore cette mécanique. Elle était centrale dans JTMM, et je continue de trouver de nouvelles utilisations pour JTMM2. Don't let your dreams be dreams. Appuyez sur Alpha.

Inspiration : Disparity

Mécanique : Gravité qu'a trop fumé

La direction de la gravitée est modifiée par des "flèches". Il est maintenant possible de marcher sur les murs, et ça c'est stylé. Jouez au build d'aujourd'hui, ce sera plus clair qu'un kikoo à une heure du matin.

Inspiration : You Have 10 Seconds 3

Nouveaux niveaux

J'ai créé trois nouveaux niveaux aujourd'hui, et modifié les niveaux existants. Ils utilisent chacun au moins une mécanique. Ils sont plutôt durs, largement faisables avec plusieurs solutions chacun mais ça reste de la précision 3 étoiles.

Noms de niveaux

Après un tip de Masséna, j'ai donné des noms customs à chaque niveau et les affiche à l'écran. Comme dans Momento, mais en mieux parce que c'est pas lié au nom du fichier. Je peux désormais faire des références obscures dans les sources et ingame (:

Difficulté

Les niveaux sont un peu durs et ça me va. Je compte réorganiser l'ordre plus tard pour que la courbe de difficulté ne donne pas envie de décéder.

Éditeur de niveau

J'ai programmé un éditeur de niveau utilisable directement en jeu, appuyez sur F3 pour le lancer. Il ne peut pas sauvegarder, mais vous pouvez l'essayer et l'utiliser pour placer les nouveaux blocs.

Commandes :
F1-F2 : changer la sélection
Replay : déplacer le curseur
Shift : place la tuile sélectionné
Alpha : efface
F3 : reprend le niveau en cours

NB : mourir perd tous vos changements, et l'UX est meh. C'est vraiment plus un outil de debug qu'autre chose pour le moment.

T'as oublié des trucs ?
100 % oui, je suis un imbécile.

git log
Cliquez pour recouvrir
e9d075 half of a level editor
01f46ce tilty tilting
7a708c2 gravity is out of their mind
0509f62 center drawing
c165e7b wormy worming
74451c9 dina font
87bfda9 level names
14e7c15 polarity
21e2a08 bouncy bouncing

ouais ouais

LienAjouter une imageAjouter une vidéoAjouter un lien vers un profilAjouter du codeCiterAjouter un spoiler(texte affichable/masquable par un clic)Ajouter une barre de progressionItaliqueGrasSoulignéAfficher du texte barréCentréJustifiéPlus petitPlus grandPlus de smileys !
Cliquez pour épingler Cliquez pour détacher Cliquez pour fermer
Alignement de l'image: Redimensionnement de l'image (en pixel):
Afficher la liste des membres
:bow: :cool: :good: :love: ^^
:omg: :fusil: :aie: :argh: :mdr:
:boulet2: :thx: :champ: :whistle: :bounce:
valider
 :)  ;)  :D  :p
 :lol:  8)  :(  :@
 0_0  :oops:  :grr:  :E
 :O  :sry:  :mmm:  :waza:
 :'(  :here:  ^^  >:)

Σ π θ ± α β γ δ Δ σ λ
Veuillez donner la réponse en chiffre
Vous devez activer le Javascript dans votre navigateur pour pouvoir valider ce formulaire.

Si vous n'avez pas volontairement désactivé cette fonctionnalité de votre navigateur, il s'agit probablement d'un bug : contactez l'équipe de Planète Casio.

Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 118 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements

Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd