Créer son proto sous TTS

Je confirme pour Atom :

d’abord installer atom

puis dans le logiciel installer le plugin pour TTS

Basic Installation

The simplest way to install the plugin is to use Atom’s in-built package manager. In Atom’s Settings, click on the Install panel, and then type « tabletop » into the search box and hit enter; the top hit should be the tabletopsimulator-lua package: install it.


This will give you the newest official release of the package, and Atom will then keep it up-to-date whenever a new version becomes available.

Je n’avais pas évoqué le sujet parce que pour simplement le script des SPs l’éditeur interne suffit mais clairement si on veut aller plus loin c’est indispensable !

Par contre j’ai oublié de préciser pour les scripts :
avant de coder un script il faut impérativement faire une sauvegarde du mod et la recharger ; quand on sauvegarde le script il recharge automatiquement la dernière situation de load

2 « J'aime »

Encore un grand merci à vous tous ! Je vais lire cela à tête reposée ce soir car j’ai pas tout compris là ^^.
Les scripts sous TTS apportent un confort énorme mais semblent assez techniques pour un non informaticien comme moi.

Les scripts c’est top et pas si compliqué que ça si on sait comprendre des exemples et s’en inspirer
mais c’est pas non plus indispensable pas d’inquiétude.
Explication de mon exemple pour les snappoints :
function onLoad(save_state) : on déclare une fonction que TTS déclenche au chargement (onLoad) de l’objet (ouverture du mod ou quand on le sort d’un sac)
self.setSnapPoints(xxx) : on définit des snapPoints (setSnapPoints) pour l’objet sur lequel la fonction est écrite (self)
– Action points : les lignes qui commencent par 2 « - » sont des commentaires (le forum l’interprète comme un gros tiret mais dans le code il y en a bien 2)
{position = { 1.28588, 0.2, 0.67400}} : définit la position de chaque point avec ses coordonnées (x,z,y … c’est pas forcément l’ordre habituel mais c’est comme ça dans TTS)
on fournit à la fonction une liste de positions d’où les accolades et les virgules
end : pour indiquer que la fonction se termine là (il pourrait y avoir un autre fonction décrite ensuite)

voilà !
si on connait un peu d’anglais et qu’on sait ce que fait la fonction au final, ce n’est pas très compliqué de l’adapter en fonction de ses propres besoins (ici, on ajoute ou supprime des ",{position = {x,z,y}} et on met ses propres coordonnées)
et quand on s’est suffisamment familiarisé avec des bouts de code qu’on a copié par ci par là, on peut commencer à coder des trucs soi-même en s’appuyant sur la doc :
https://api.tabletopsimulator.com/object/

après ça me semble peut-être simple parce que je suis informaticien de formation, si ça reste du charabia pour toi tu peux te contenter de la partie jeu, il n’y a rien d’indispensable dans les scripts ça rajoute juste du confort pour certaines choses qu’on peut automatiser
et si vraiment tu penses à quelque chose qui te tient à coeur, suffit de demander sur le forum, tu devrais toujours trouver quelqu’un prêt à te proposer un peu d’aide :slight_smile:

6 « J'aime »

Bon, il faudrait que je like tous les posts de @vvedge sur ce topic (et dans ma boîte à MP). Je n’ai pas pu me plonger plus sur tes scripts, vraiment pas eu le temps ces dernières semaines, mais tu m’avais déjà bcp aidé :slight_smile:

1 « J'aime »

En attendant de tenter de comprendre quelque chose aux scripts j’ai au moins snapper ma map en utilisant ta méthode de poser un element sur chaque emplacement puis snapper l’élément. En utilisant la grid j’arrivais pas à tomber comme il faut.
Ce fut un peu long mais le résultat est concluant !
Encore une paire de token à finir puis organiser le tout. Puis les fameux scripts qui m’effraient apres avoir lu ton mail… Les coordonnées tu les as où ?
Comme beaucoup j’aurais bien intégré des scripts pour la mise en place des missions mais ça m’a l’air d’etre une bonne usine à gaz en essayant de déchiffrer ton charabia pour un non informaticien comme moi !

1 « J'aime »

Outil Gizmo > Move (cf image ci-dessous)
image

tu cliques ensuite un objet et tu obtiens une popin avec les infos que tu peux modifier
image
à noter : il s’agit de coordonnées absolues dans l’espace de jeu (à partir du centre de celui-ci)
pour obtenir des coordonnées relatives dans le référentiel d’un objet, il faut ruser (je passe par un script… mais je peux bidouiller une objet/interface pour que ce soit user friendly)

autre point génant : les snappoint ne sont pas des objets, on ne peut pas les cliquer pour obtenir leurs coordonnées :frowning:

Pour ce qui est d’automatiser une mise en place, les scripts devraient être assez simples, et si ça ne l’est pas assez pour toi, pas de problème pour aider si tu me partages ton mod et que tu m’indiques ce que tu veux

oups… il parait que j’interviens trop ici ! :rofl: :innocent:
image

5 « J'aime »

Ha ha ha, j’ai ça souvent

2 « J'aime »

Du coup juste un message pour dire que c’est très intéressant :wink:

2 « J'aime »

Pareil, même si j’y pige que dalle ça m’intéresse.

1 « J'aime »

Merci encore pour les retours et tant mieux si le sujet intéresse !
Dans le menu objet j’ai vu qu’on pouvait « saved object ». Quelle différence avec le fait de mettre les élements dans le cloud ?
Merci pour la proposition d’aide c’est cool. Je vais déjà finir de tout préparer. J’enchainerai ensuite avec l’integration des rules et un visuel de la « boite » si je trouve ça. Ensuite j’essaierais quand meme de scripter si j’y arrive. Je vais chercher des tuto là dessus.

Aucune je pense, je vois plutôt ça du genre tu te balades sur un autre mod, tu vois un truc qui t’intéresse et paf Saved objectfs. Comme ça tu peux tranquilou le re-utiliser dans le tiens

J’ai pas testé mais il me semble que ce que tu sauves dans le cloud ce sont des ressources (images, stl)
alors que quand tu sauves un objet ça sauvegarde directement l’objet en question (avec ses scripts…)

c’est donc plus facile de réutiliser un objet « complexe », tu n’as pas à le redéfinir à chaque fois

OK ! Autre question qui me passe par la tête.
Pour le moment mon proto n’est qu’une save en fait. A t on moyen de recup le mod en dur si je puis dire ou tous les mod ne sont que des saves produites à partir des jeux classiques proposés de base par TTS ?
J’ai eu la mauvaise idée de cloner pas mal d’éléments sans leur donner de nom. Je dois donc refaire une partie du stuff. Bravo champion :grin:

Tous les mods sont justes de simples fichiers json

1 « J'aime »

Notez que l’utilisation du cloud n’est pas obligatoire, on peut mettre les url qu’on veut pour les assets si on passe par l’édition du json directement.
On peut aussi mettre des fichiers en local directement (« file:////chemin/vers/mon/fichier » au lieu de « https://site.com/fichier »). Pour des tests rapides en solo, quand on édite des images, ça permet de gagner du temps).

Même sans modifier le json, l’outils propose d’utiliser les fichiers locaux

Elle sont pas envoyée au cloud à chaque fois ? Il me semblait (mais ça fait un moment que je me contente de travailler directement sur le json).

Si tu mets tes fichiers en local, tu ne pourras pas y jouer en multi. Un peu bête avec TTS ^^

Dans le but de développer son mod c’est quand même bcp mieux de pas passer par le réseau.

Mieux je ne sais pas, le but d’un proto c’est d’être testé non ?