CRACKSWORD - jeu / godot
-
Coucou, depuis l'automne dernier, j'ai remplacé mes temps de jeu/chill par l'apprentissage de GODOT à travers la création empirique d'un petit jeu de baston 2d nommé "CRACKSWORD"!
C'était aussi pour moi un prétexte pour reprendre le dessin au crayon couleur papier, avec mon trait de noob à contre-courant de l'IA générative
C'est un jeu de duel à l'épée 2d, ambiance fantasy-surréaliste qui utilise la physique pour les personnages en mode "active ragdoll". Le système de combat est directionnel, pour l'instant sur 4 angles. Les niveaux actuellement sont "infinis".
état actuel
La base du combat est en place avec une IA basique pour jouer solo, ça se joue à la manette dual stick avec les contrôles analogiques, bientôt KB/M. Il me reste pas mal de taff sur l'interface, le feedback général, les conditions de victoires qui vont s'approcher d'un smash bros, les pouvoirs particuliers de chaque personnage, les bonus/malus/pièges à récupérer ou subir dans les niveaux, un gros peaufinage sur les animations, la bande son déjà même si déjà bien entamée et tout un tas d'autres trucs comme la possibilité de jouer en ligne. C'est un taff de malade mais c'est très gratifiant de le voir évoluer!Je suis curieux d'avoir votre retour! Y'a-t-il d'autres utilisateurs de godot ou dev (amateur) de jeu sur le forum? Seriez-vous intéressé de le tester dans sa forme actuelle remplie de défauts?
Voilà quelques images des assets bruts et une petite vidéo de l'état actuel du jeu en mode solo. J'espère "bientôt" publier une version pour un playtest publique, probablement via itch.io.
gabarit de personnage
élément de niveau
-
Je me suis mis à Godot y’a une semaine suite à tes conseils
et j’aime vraiment bcp même si ça évolue très vite en ce moment et que y’a des nouvelles feature a chaque fois que je le lance!
Compte sur moi pour playtester en détail à n’importe quel stade (surtout après le temps que tu as consacré à mon propre jeu)
Plus tu feras tester et mieux ça ira, mais c’est pas toujours facile de trouver des playtester à qui ont le temps de te faire des retours pratiques ! -
Excellent! Comme il y a encore peu de doc/tuto sur godot pour l'instant, c'est cool d'avoir des camarades qui tâtent le moteur!
Pour l'instant mon dernier build force à avoir 2 manettes pour naviguer dans l'interface, je partagerai ici le lien dès que j'aurai une version qui fonctionne sans manette obligatoire.
J'ai pu faire un tout petit playtest et c'était déjà très utiles pour voir un paquet de soucis!
Je suis bien noob en programmation (savoir périmé actionscript3/web )donc mon code c'est du full spaghetti avec des petits hacks partout, j'ai commencé il y a peu de lire "game programming patterns", j'y ai trouvé beaucoup d'aide dans l'organisation de tout ce foin et j'aurais bien souhaité connaitre ces astuces logiques avant le début du projet!
D'ailleurs si vous avez d'autres références sur ce genre de lecture, en français ou anglais, je suis preneur!
-
Excellent @unas ! J'adore le design, les mouvements sont super weird, mais c'est le charme du truc ! Je serais bien curieux de tester
Il ne faut pas que je regarde les tutos de Godot, j'ai déjà trop de trucs à faire, mais j'ai une idée de jeu de plateau qui traine depuis qqs années... On peut gérer du multiplayer online en natif ? -
Cela semble assez simple d'implémenter du online sur un jeu tour par tour via godot, low/hi-level en natif.
Plus complexe sur du temps-réel avec des systèmes de prédictions. Il y a des outils communautaires pour utiliser le système de lobby Steam. Il y a des addons rollback ou d'autres formes d'architecture réseau. Je suis pas un spécialiste mais il y a un gars qui focus là dessus avec godot : https://www.youtube.com/@BatteryAcidDev/Il y a aussi des templates avec du multijoueur intégré pour débuter des projets.
-
Super, les persos sont chouettes et l'ambiance sonore hypnotique donne la sensation d'une chute sans fin !
-
Haha ! Super classe ! Hâte de tester le bouzin.
-
Le rendu crayon de couleur est bien coule, et la musique est effectivement une bonne spirale infernale
-
@unas Comment c'est cool. J'aime beaucoup l'esthétique.
-
Coucou, j'ai mis en ligne une version très très alpha spéciale R3Z0 pour windows accessible par le lien là, c'est la première version que je laisse filer en dehors de mes disques : CRACKSWORD alpha 0.03 - combat - physics - ai playtest
Je n'ai pas étudié la compilation pour Linux/macOS mais cela semble possible. Malheureusement je n'arrive pas à le faire fonctionner correctement sur un build Html5 pour le moment, j'ai un gros bug de performance avec le moteur physique alternatif que j'utilise.
Les manettes sont détectées et assignées automatiquement (joypad1 = player 1, joypad2 = player2), sans manette le jeu est jouable clavier-souris. Pour l'instant on ne peut pas jouer avec le joueur 1 au clavier/souris versus le joueur 2 à la manette.
Actuellement, on peut se fritter en solo ou à deux en local, choisir parmi les 4 niveaux pas terminés et quelques personnages. Il y a un compteur de kill mais pas de fin de partie. On peut activer/désactiver l'IA dans le menu sélection de joueur pour regarder le jeu se fritter tout seul. Random HUE et Default HUE permettent de changer la couleur du personnage.
Les personnages partagent provisoirement le même squelette / animations, ils ont juste des "poids" de partie de corps légèrement différents.
Autrement, beaucoup d'éléments provisoires..Tips en jeu / tutoriel
- c'est un jeu de bagarre "directionnel" plutôt lent, il faut bloquer dans la direction de l'attaque et bien gérer son placement.
- la barre rouge, c'est la vie
- la barre jaune, c'est l'énergie (consommée par les attaques, les sauts, les dash)
- la barre verte, c'est l'indicateur de statut du dash (rempli = can_dash)
- lorsque la barre d'énergie est rouge, on ne peut plus attaquer/sauter/dasher
- pour chaque attaque parée, on regagne un peu d'énergie
- l'énergie remonte lentement
- parer au dernier moment = perfect parry = l'adversaire est sonné + on retourne une contre-attaque automatique qui pique
- il est possible de charger son attaque, plus l'épée brille, plus les dégâts seront élevés
- plus on "superpose" l'épée sur le corps de l'ennemi + on fait de dégats
- les dégâts sont momentanément plus élevés si l'on attaque juste après une parade
- les étoiles = statut "étourdi", on ne peut pas attaquer lorsqu'on est "étourdi"
- si l'on se fait toucher pendant une attaque, on devient "étourdi"
- l'épée n'est pas "physique", les corps le sont
- l'attaque "arrière" repousse et étourdi l'adversaire, elle n'est pas bloquable
Contrôles
[ clavier souris ]
Q/A = déplacement gauche
S = se baisser
D = déplacement droit
SHIFT = dash
ESPACE = saut
SOURIS = visée attaque/défense (relative au centre du personnage (le torse))
CLIC GAUCHE = charger attaque / libérer attaque
CLIC DROIT = se protéger / annuler attaque
ESC = pause (en jeu)[ manette ]
STICK GAUCHE = déplacement + se baisser
STICK DROIT = visée attaque/défense
LT = se protéger / annuler attaque
RT = charger attaque / libérer attaque
LB = saut
RB = dash
START = valider (menus) / pause (en jeu)Bugs connus de cette version alpha:
- les personnages peuvent se coincer les pieds dans le sol dans le niveau de la forêt | solution = pause+reset
- la touche attaque ne fonctionne plus si l'adversaire à repop pendant le cycle de apply_stagger() | solution = pause+reset
- parfois la hitbox de l'épée ne s'active pas s'il on attaque trop vite après un parry
- parfois la souris ne fonctionne plus dans le menu pause | solution pour naviguer : utiliser les touches fléchées + enter
- la manette ne fonctionne pas sur le menu principal | solution : utiliser la souris
- le jeu génère un fichier de sauvegarde pour les réglages des options
- les manettes vibres même lorsque le joueur est piloté par l'IA
Je n'ai pas tester le jeu sur beaucoup de machines. C'était injouable sur mes vieux PC / laptop non équipés de carte graphique. Sur les plus vieilles machines, il peut manquer des librairies ou encore générer des messages d'erreur si incompatible avec Vulkan.
Pour les vieux PC, on peut lancer le jeu avec cette ligne d'argument qui désactive 2-3 trucs et passe de Vulkan à OpenGL, mais pour l'instant je n'ai rien optimisé et j'ai pas mal de saloperies cachées pour mes essais qui alourdissent le bordel.
--video-driver opengl3 --rendering-method gl_compatibility --disable-crash-handlerHâte d'avoir vos retours!
-
Je l'ai pété sur itch.io pour récolter un max de feedback! https://salmonellasalami.itch.io/cracksword!
-
Mon p’tit gars a l’air chaud pour tester en tt cas !(enfin après une partie de minecraft ou fortnite évidemment…)
-
Ce n' est sans doute pas très intéressant mais je le dis quand même : Cracksword ne tourne pas sous WinXP pro.
Je vais essayer avec une autre machine, un autre OS surtout, un truc un peu moins du carbonifère, zou ... -
Quoi ?! @Dave2000 n'est pas sous Windows2000 ?!
Ça va perdre des points de réputerie, y a pas -
Sous Win 8 maximum
et Win 8 me retourne ça
Je vais casser une chaise ... -
@Dave2000 Nom d'une pipe en bois!
As-tu essayé de lancer le jeu avec ces paramètres via un raccourci ou un *.bat :
--video-driver opengl3 --rendering-method gl_compatibility --disable-crash-handler*(contenu du fichier .bat (un .txt renommé en .bat) à coller dans le même répertoire que l’exécutable du jeu)
@echo off
start "" "CRACKSWORD.exe" --video-driver opengl3 --rendering-method gl_compatibility --disable-crash-handlerJ'arrive à le lancer sur un pc windows 7 (sp1) tipiak, core2duo 6600 / radeon hd 6450 / 2gb de ram, 5 fps dans les menus et 1 en partie
-