En attendant la Suite de l'ouvrage précédent :
Et si on re-parlait du jeu ?
J'avais évoqué quelques solutions de jeu autour de jubeat analyser dans le premier billet, et les choses on depuis évoluées.
- En effet est disponible un clone plus performant qui se nomme jujube.
Disponible sur le github de Stepland, il s'installe facilement, j'ai ainsi procédé comme ceci :
sudo apt install git
git clone https://github.com/Stepland/jujube.git
cd jujube/
- Clonage de la librairie backward-cpp dans le dossier include :
cd include
git clone https://github.com/bombela/backward-cpp.git
cd ..
- Installation des pré-requis compilateur et librairies :
sudo apt install cmake meson libsfml-dev libdw-dev python3 python3-pip python3-setuptools python3-wheel ninja-build pkg-config-x86-64-linux-gnu qjoypad joystick
chmod +x build_linux.sh
./build_linux.sh
- L'exécutable jujube se retrouve alors dans le dossier build, prêt à jouer.
Toujours dans ce dossier, il faut créer un sous-dossier songs et y déposer les chansons en arborescence.
Les songs se présentent donc sous la forme d'un dossier portant le titre de la chanson, avec dedans une image .png, un audio .ogg et un descripteur .memon, simple fichier texte, contenant les touches et les timings.
Pour info ça ressemble à ça :
{
"version": "0.1.0",
"metadata": {
"song title": "7 Colors",
"artist": "kors k feat. 吉河順央",
"music path": "7 Colors.ogg",
"album cover path": "7 Colors.png",
"BPM": 60,
"offset": 0
},
"data": {
"ADV": {
"level": 6,
"resolution": 300,
"notes": [
{
"n": 12,
"t": 461,
"l": 0,
"p": 0
},
{
"n": 15,
"t": 576,
"l": 0,
"p": 0
},
{
"n": 5,
"t": 692,
"l": 0,
"p": 0
},
Et ainsi de suite…
Vous voici informé sur les mots clefs à utiliser pour trouver votre bonheur !
On imagine aussi la possibilité de concevoir ses propres notes sur les chansons qu'on aime.
- Le jeu est configurable via le fichier preferences.json, où l'on va pouvoir mapper les touches de notre contrôleur, mais aussi, et c'est ça que j'apprécie avec ce soft, la possibilité de modifier la disposition des éléments graphiques.
Ainsi j'ai pu ajuster la position et l'espacement entre les carrés pour correspondre à la taille de mon écran et à mon contrôleur… Excellent !
{
"key_mapping": {
"B1": "Keyboard::Num1",
"B10": "Keyboard::S",
"B11": "Keyboard::D",
"B12": "Keyboard::F",
"B13": "Keyboard::Z",
"B14": "Keyboard::X",
"B15": "Keyboard::C",
"B16": "Keyboard::V",
"B2": "Keyboard::Num2",
"B3": "Keyboard::Num3",
"B4": "Keyboard::Num4",
"B5": "Keyboard::Q",
"B6": "Keyboard::W",
"B7": "Keyboard::E",
"B8": "Keyboard::R",
"B9": "Keyboard::A"
},
"layout": {
"panel_size": 0.2083333283662796,
"panel_spacing": 0.0486111082136631,
"ribbon_x": 0.010416666977107525,
"ribbon_y": 0.7400000095367432,
"upper_part_height": 0.6041666865348816
},
"options": {
"audio_offset": 0,
"ln_marker": "classic",
"marker": "jubeat festo"
},
"screen": {
"style": "Windowed",
"video_mode": {
"bits_per_pixel": 32,
"height": 1324,
"width": 764
}
}
}
- Autre point très intéressant, avec la possibilité d'ajouter des dessins de touches différents, appelés markers, à rassembler dans un dossier et à déposer à l'endroit voulu dans l'arborescence du dossier assets.
J'ai alors passé du temps à fabriquer de nouveaux markers au look de jubeat festo, en observant comment étaient fait les markers existant du jeu, (nommés jubeat analyser)
Puis je les ai placés dans le dossier suivant :
/home/jubeat/jujube/build/assets/markers/tap/jubeat festo, et indiqué cette information dans le fichier preferences.json.
- Je fournis ces markers en annexe de ce billet :)[]
J'ai laissé la première chanson complète, puis ce sont des extraits.
Vous constaterez des artefacts façon « neige d'écran télé » sur les markers des notes longues, due à un problème avec ma carte graphique… Avec un autre ordinateur il n'y a pas ce problème…