Amusez-vous avec celui-ci, The Powder Toy est un défi intéressant pour le golf, en particulier avec la logique filt.
La chose qui fait du TPT un défi est la multitude de façons d'aborder un problème: Should I use Cellular Automaton rules, SWCH logic, Filt logic, subframe filt logic, and/or wall logic?
En tant que tel, un emplacement pour des conseils pour le golf TPT serait très utile, j'ai donc créé ce fil de question.
Ce fil utilisera probablement beaucoup d'abréviations. Beaucoup d'entre eux seront des éléments du jeu, donc les rechercher sur le Wiki vous apportera beaucoup d'informations à leur sujet, comme ce qu'ils sont.
Voici les plus courants que vous verrez probablement dans ce fil, avec leur description du jeu ci-jointe (et leur nom complet), pour les personnes qui ne veulent pas aller chercher:
- SPRK: électricité. La base de toute l'électronique en TPT, se déplace le long des fils et autres éléments conducteurs.
- FILT: Filtre. Filtre pour les photons, change la couleur.
- ARAY: Ray Emitter. Les rayons créent des points lorsqu'ils entrent en collision.
- BTRY: Batterie. Génère une électricité infinie.
- DRAY: Rayon duplicateur. Réplique une ligne de particules devant elle.
- CRAY: Émetteur de rayons de particules. Crée un faisceau de particules défini par son type, avec une plage définie par tmp.
- SWCH: Commutateur. Conduit uniquement lorsqu'il est allumé. (PSCN s'allume, NSCN s'éteint)
la source
Réponses:
N'utilisez la logique de sous-trame que lorsqu'elle est plus petite
Et, pour les machines plus complexes, il est souvent beaucoup plus petit.
La sous-trame impose généralement la surcharge de créer un SPRK solide (environ 3 pixels pour la plupart des directions, un pixel supplémentaire par rapport à juste un BTRY), des 'canaux' FILT (pour un transfert BRAY rapide) et minimiser la quantité de logique sans sous-trame, même si elle est plus petite , car il est plusieurs fois (4x à 20x-30x plus lent!) plus lent.
La logique de sous-trame est souvent bonne pour les opérations complexes (ce qui est la plupart des défis ici), mais pour les opérations plus simples, la logique de sous-trame n'est probablement pas optimale.
la source
Connaissez vos modes FILT
FILT est, au moins pour la logique FILT et la sous-trame, la pierre angulaire de l'informatique dans TPT. Et en tant que tel, il a un tas d'astuces pour vous faciliter la vie, sous la forme de ses différents modes. Vous définissez un mode FILT à l'aide
tmp
, mais une liste complète qui décrit les subtilités de ces modes n'est pas vraiment une chose en ce moment. FILT prend deux entrées: sa propre couleur (CTYPE) et la couleur de ce avec quoi il interagit, BRAY ou CRAY. Je vais étiqueter ces FILTC et INTRC, respectivement, pour cette liste.Mode 0:
Le mode le plus simple, il définit INTRC à la valeur de FILTC, rien de plus.
Mode 1:
Il s'agit d'un ET binaire, il est associé à INTRC et FILTC, définissant INTRC sur le résultat.
Mode 2:
Il s'agit d'un OU binaire, il combine ensemble INTRC et FILTC, définissant INTRC sur le résultat.
Mode 3:
Ce mode est légèrement plus compliqué, il combine l'inverse de FILTC et INTRC, définissant INTRC sur le résultat.
Mode 4:
Ce mode est un peu plus difficile à décrire. C'est un décalage rouge (décalage gauche binaire),
Le problème ici est que la quantité de décalage est contrôlée par sa température, avec l'équation (Température-273,0) * 0,025, par défaut un décalage de 1 si la valeur est inférieure à 1. Vous pouvez obtenir un décalage de n'importe quelle quantité requise en multipliant le nombre de bits dont vous avez besoin par 40 et en ajoutant 273,0. J'appellerai le montant décalé X.
En tant que tel, INTRC est décalé vers la gauche de X, définissant INTRC sur le résultat.
Mode 5:
Il s'agit essentiellement du mode 4, mais avec un décalage à droite à la place. Voir les informations sur le mode 4 pour savoir comment l'utiliser.
Mode 6:
Ne fait rien.
Mode 7:
Effectue un XOR binaire sur INTRC et FILTC, définissant INTRC sur le résultat.
Mode 8:
Effectue un NOT binaire sur INTRC, définissant INTRC sur le résultat.
Mode 9:
Définit INTRC sur une couleur aléatoire.
Mode 10:
Effectue une version différente d'un décalage vers le rouge.
[TODO: comprendre comment décrire]
Mode 11:
Effectue une version différente d'un décalage bleu.
[TODO: comprendre comment décrire]
la source