パウダートイでのゴルフのヒント


9

これを楽しんでください。パウダートイは、特にフィルトロジックに関して、ゴルフにとって興味深い挑戦です。

TPTが課題となるのは、問題に取り組むための多くの方法です。 Should I use Cellular Automaton rules, SWCH logic, Filt logic, subframe filt logic, and/or wall logic?

そのため、TPTゴルフのヒントの場所は非常に役立つので、この質問のスレッドを作成しました。

このスレッドは、多くの略語を使用する可能性があります。それらの多くはゲーム内の要素になるため、Wikiでそれらを検索するとそれらが何であるかなど、それらに関する多くの情報が表示されます。

以下は、このスレッドに表示される可能性が最も高いもので、検索に行きたくない人のために、ゲーム内の説明(およびフルネーム)が添付されています。

  • SPRK:電気。TPTのすべての電子機器の基礎は、ワイヤーおよびその他の導電性要素に沿って移動します。
  • FILT:フィルター。フォトンをフィルターし、色を変更します。
  • ARAY:レイエミッター。レイは、衝突したときにポイントを作成します。
  • BTRY:バッテリー。無限の電力を生成します。
  • DRAY:複製光線。その前にあるパーティクルのラインを複製します。
  • CRAY:パーティクルレイエミッタ。tmpによって設定された範囲で、ctypeによって設定されたパーティクルのビームを作成します。
  • SWCH:スイッチ。スイッチを入れたときにのみ導通します。(PSCNはオン、NSCNはオフ)

すべての要素のリスト


1
@ mbomb007リンクを追加していただきありがとうございます。私はそれを求めようとしていました。私はTPTを知りません。そして、かつてのおもちゃについての挑戦であると思いました-おそらくまだ-洗剤のパックに含まれています...:/
Arnauld

@アーノールドハハ。おっと。ありがとうmbomb007:P
moonheart08

スコアをどのように計算しますか?
12Me21

@ 12Me21現時点では、スコアは保存ファイルに基づいています。あなたはそれを議論することができ、このメタポストに
moonheart08

回答:


2

小さい場合にのみサブフレームロジックを使用する

また、より複雑なマシンの場合、多くの場合、はるかに小さくなります。

サブフレームは一般に、固体のSPRK(ほとんどの方向で約3ピクセル、BTRYに比べて追加のピクセル)、FILT 'チャネル'(高速なBRAY転送用)を作成し、それが小さい場合でも非サブフレームロジックの量を最小化するオーバーヘッドを課します、それが何度もあるため(4倍から20倍-30倍遅い!)遅くなります。

多くの場合、サブフレームロジックは複雑な操作(ここでの課題のほとんどです)に適していますが、より単純なものには、サブフレームロジックはおそらく最適ではありません。


plsは、イメージtyvmを追加します
ASCIIのみ

@ASCIIのみ家に帰ったときに行います。
moonheart08

3
あまりにも多くの略語を使用する代わりに、あなたが物事を綴ることができれば素晴らしいでしょう。誰もがゲームに精通しているわけではありませんが、面白いと思う人もいるかもしれません。
mbomb007 2018年

@ mbomb007ただ注意しておきますが、FILT、BTRY、BRAY、SPRKなどはゲーム内パーティクルの名前です。ゲーム自体はそれらの名前を使用します。代わりに、ゲームのwikiをメインの投稿に入れましょうか?人々はそこでそれらの名前を検索し、彼らが何であるかを非常に簡単に理解することができます。
moonheart08

1

FILTモードを知る

FILTは、少なくともFILTおよびサブフレームロジックにとって、TPTにおけるコンピューティングの基礎です。このように、さまざまなモードという形で、あなたの人生を楽にするためのたくさんのトリックがあります。を使用してFILTモードを設定しますtmpが、これらのモードの複雑さを説明する包括的なリストは、現在、実際のものではありません。FILTは2つの入力を受け取ります。それは独自の色(CTYPE)と相互作用するものの色(BRAYまたはCRAY)です。このリストでは、これらのFILTCとINTRCにそれぞれラベルを付けます。

  • モード0:

    最も単純なモードであり、INTRCをFILTCの値に設定します。

    INTRC = FILTC
    
  • モード1:

    これはバイナリANDであり、INTRCとFILTCを一緒にして、INTRCを結果に設定します。

    INTRC = INTRC & FILTC
    
  • モード2:

    これはバイナリORであり、INTRCとFILTCを論理和して、INTRCを結果に設定します。

    INTRC = INTRC & FILTC
    
  • モード3:

    このモードは少し複雑で、FILTCとINTRCの逆で、INTRCを結果に設定します。

    INTRC = INTRC & (~FILTC)
    
  • モード4:

    このモードは、説明するのが少し難しいです。これは赤いシフト(2進左シフト)です。

    ここでの問題は、式(Temperature-273.0)* 0.025で、シフト量は温度によって制御され、値が1未満の場合、デフォルトで1シフトすることです。必要な量のシフトを達成できます。必要なビット数を40倍し、273.0を追加します。シフト量Xと呼びます。

    そのため、INTRCはXだけ左にシフトされ、INTRCが結果に設定されます。

    X = (temperature-273.0)*0.025
    INTRC = INTRC << X
    
  • モード5:

    これは基本的にモード4ですが、代わりに右シフトを使用します。使用方法については、モード4の情報を参照してください。

    X = (temperature-273.0)*0.025
    INTRC = INTRC >> X
    
  • モード6:

    何もしません。

    INTRC = INTRC
    
  • モード7:

    INTRCとFILTCでバイナリXORを実行し、INTRCを結果に設定します。

    INTRC = INTRC ^ FILTC
    
  • モード8:

    INTRCでバイナリNOTを実行し、INTRCを結果に設定します。

    INTRC = ~INTRC
    
  • モード9:

    INTRCをランダムな色に設定します。

    INTRC = rand()
    
  • モード10:

    赤いシフトの別のバージョンを実行します。

    [TODO:記述方法を理解する]

    LSB = FILTC & (-FILTC)
    INTRC = INTRC * LSB
    
  • モード11:

    ブルーシフトの別のバージョンを実行します。

    [TODO:記述方法を理解する]

    LSB = FILTC & (-FILTC)
    INTRC = INTRC / LSB
    
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.