Skip to main content

On Sale: GamesAssetsToolsTabletopComics
Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

Projet Flolak : première intrusion dans la pico 8

A topic by flolak created Nov 17, 2016 Views: 1,253 Replies: 22
Viewing posts 1 to 23
Submitted

je ne peux même pas parler de flou pour le moment car je viens de recevoir la pico aujourd'hui. Mon projet est complètement opaque!

Donc dans un premier temps s'approcher en douce de la p'tite bête, lui donner des bouts de code minuscules à digérer et tenter d'avancer dans mon apprentissage. Je pense que l'idée s'affinera avec le temps.

HostSubmitted

Excellent.

En Pico, tu as des "facilités" avec les listes.

Le thème, tu verras, est plutôt cool une fois que tu auras écris ton premier :

MALIST = {}

et appelé ton 1er :

ADD(MALISTE, MONSPRITE)

Et pour parcourir une liste :

FOR MONSPRITE IN ALL(MALISTE) DO...
END
Submitted (1 edit)

oui j'ai vu ça ! il y a un effet cosy avec pico 8 d'avoir tout au même endroit. notamment pour l'animation d"un sprite.


Mon idée s'affine. J'ai envie de créer un petit jeu où le héros serait un éboueur galactique chargé de nettoyer son secteur des parasites aliens. Dans l'idéal je voudrais faire un inventaire d'item rudimentaire. Je souhaiterais que certains aliens balancent des miasmes jusqu'à être détruits. (essai de mise en place d'un moteur de particules) Je voudrais également que chaque pixel contaminé au sol persiste jusqu'au nettoyage et endommage le héros (donc une collision avec un pixel) Aucune idée de la façon dont je vais faire ça, mais c'est l'intention...

Salut,

J'aime assez ton idée, j'ai hâte de voir ce que ca donne. Si tu as besoin d'aide pour la Pico en attendant l'atelier de David, je te conseille cette chaîne youtube :

Ca t'aidera peut être pour ton système de particules et les collisions ^^

Submitted

j'ai déjà été voir ces jours ci ;) merci

Submitted

Bon, alors première difficulté : je voulais faire un système avec des traces persistantes autour de mes aliens , genre bave d'escargot sci-fi, mais avec le rafraîchissement, ça va disparaître à chaque passage. Mon idée c'était de traiter les hits au pixel, c'est à dire que plus le héros se trouve sur une zone remplie de la couleur, plus il prend des hits. Je pense que je vais sagement oublier et contourner en utilisant des petits sprites jetés aléatoirement par l'alien qui persisteront jusqu'à leur élimination en espérant ne pas trop faire ramer le truc.

Submitted

essai de copie d'écran. Y a pas grand chose, mais faut bien commencer quelque part, hein ?

[URL=http://www.hostingpics.net/viewer.php?id=297927essai1.gif][IMG]http://img11.hostingpics.net/thumbs/mini_297927essai1.gif[/IMG][/URL]

Submitted

ça avance bien sur la pico8 ;)

Submitted

ça galère à mort, oui... je passe des heures à arriver à des petits riens... j'en ai chié pour animer un peu mes sprites et pour comprendre ce que faisait for alien in all(lst-alien) je pataugeais entre les lst.alien[alien], les alien[n]num et j'en oublie... pour changer le numéro de l'image à afficher alors qu'il suffisait de mettre alien.num=... bref le noob dans toute sa splendeur (et j'suis pas sûr d'avoir tout pigé encore) mais bon, ça fonctionne, mes limaces de l'espace se dandinent comme je le voulais et tournent la tête au changement de direction du nettoyeur. ça donne un peu de vie


[URL=http://www.hostingpics.net/viewer.php?id=274330essai2.gif][IMG]http://img11.hostingpics.net/thumbs/mini_274330essai2.gif[/IMG][/URL]

Submitted

en tout cas j accroche bien au sprites, chapeau s'ils sont de toi, ca fait que ton jeu a l'air fun

Submitted

oui.. avec le petit éditeur de la pico ;)

Submitted

Bon, ben j'ai bien fait de dire que j'étais pas sûr d'avoir tout pigé... je m'étais bien planté. Les listes, c'est pas encore ça, mais ça va finir par rentrer..

sympa le p'tit gars dans le jeu

bon courage pour la suite

Submitted

Bon, ça avance un peu. collisions, incrémentation et affichage d'un score, d'une barre de vie et jet de vomi de limace...

C'est pas très beau, pas très intéressant, mais ça commence à ressembler à une mécanique de jeu.

Submitted

[URL=http://www.hostingpics.net/viewer.php?id=1328022016112310h0059.gif][IMG]http://img4.hostingpics.net/thumbs/mini_1328022016112310h0059.gif[/IMG][/URL]

Submitted

ça commence à donner quelque chose, tu devrais ajouter une animation pour le jet d'eau.

Et petit tuto pour ajouter une image ou un gif:

Submitted

ah ok merci ;)

Submitted

j'ai un peu galéré pour intégrer le "jeu" sur itch.io mais normalement ça fonctionne. Bon, ben voilà pour mon premier essai sur pico 8 ... 100% codé à la porc :)

HostSubmitted

On pourra dire que ça a été un bon exercice pour toi ! Bravo d'être allé au bout.

Pour les pixels de bave, le principe aurait été de créer un petit générateur de particules (comme celui de Jelpi, l'exemple fournit avec la pico), et aussi celui de l'atelier Shooter de Gamecodeur. L'idée est la même : une liste de pixels avec une position (un mouvement ou pas) et une durée de vie.

N'hésite pas à partager ton expérience : difficultés, bénéfices que tu en tires, etc.

Submitted

Oui c'était un excellent exercice même si le résultat est peu convaincant au final. Mon shooter est plus joli, mais je n'ai pas fait grand chose dessus. c'était juste une implémentation de ton tutoriel . J'ai pas été chercher du code ailleurs à part pour la gestion des collisions, j'ai voulu tout faire moi-même et non coller des bouts de codes piqués à droite à gauche. Donc j'ai eu des variables inutiles, des tests de conditions sans doute foireux pour certains, des compteurs évitables. c'est pas élégant quoi.

Mes principales difficultés : l'éditeur de la pico 8. On a une petite surface de visibilité et c'est pas évident pour un débutant d'avoir une vision d'ensemble du code. Quand on oublie un "end" quelque part et qu'il faut retrouver où le placer etc. La bave a été un problème aussi. Mon idée de départ était de faire ça par un générateur de particules statiques mais je ne voyais pas comment après gérer la collision et je me suis dit que ça allait multiplier les données dans le jeu au point de le rendre injouable si je mémorisais tous les points rejetés à l'écran. Des difficultés aussi pour l'animation de mes sprites. J'ai essayé plusieurs choses avant de trouver un truc qui me convenait pour passer d'une image à l'autre. Si j'avais choisi des sprites en 8x8 c'eût été plus simple, les numéros se suivent dans ce cas sur la pico 8, j'aurais pu faire des boucles directes, là j'ai dû faire une liste pour chaque séquence et appeler l'élément de la liste dans ma boucle . En gros, j'ai galéré souvent. je me suis dit finalement , la pico 8 c'est pas forcément pour un débutant parce que l'éditeur manque de repères. le côté immédiat des fabrications de sprites , des sons et de la map, par contre, ça c'est très sympa.

La compréhension des listes c'était le but de la jam, et je pense que c'est là que j'ai pas mal progressé justement. Je les ai utilisées juste avant mais avec un certain brouillard et des zones carrément sombres parfois. ça s'est éclairci à force d'échecs. j'ai progressé aussi dans la compréhension de Lua en général aussi et peu à peu, ce qui semblait sortir d'une autre planète devient cohérent. Bref voilà...

Submitted (1 edit)

et pour la collision, j'ai repris ce modèle qui est semblable à celui que tu proposais dans l'atelier Lua,https://www.youtube.com/watch?v=OxpDGPJ5N2g

HostSubmitted

Merci pour ce retour !!

Submitted

c'est cool, pour ton filet de bave je pense que tu pourrais faire des projectiles classiques et les utiliser pour les collisions avec tes ennemies tout en évitant de les afficher et donc au lieu d'afficher les projectiles tu affiche les particules de baves.

C'est vrai que l'éditeur est le point faible sur la pico-8, c'est difficile à lire quand on fait des instructions un peu longue sur une ligne par exemple et la lisibilité pas top je trouve.

Mais dans l'ensemble, je trouve ça super pour tester un projet global, la gestion du son est cool aussi je trouve d'ailleurs je vais essayer de faire une musique pour tester ça ;)