Asuka Tables

フェイの問題 as Code (β)

「風来のシレン外伝 女剣士アスカ見参!」の「フェイの問題」ファイル(.fei2)をコード化するための CLI ツールです。

Download

Loading...

Quick Start

フェイの問題ファイルをコード化

fei2 ファイルから yaml 形式へ変換します。

  1. フェイの問題ファイル(*.fei2)を用意します。

  2. exportコマンドで、フェイの問題ファイルをテキストファイル(YAML 形式)に変換します。

    ./feicode.exe export --fei <フェイの問題ファイル> --out <出力先YAML ファイル>

    例:

     > .\feicode.exe export --fei .\example\sample.fei2 --out .\example\sample_export.yaml
     Successfully exported : .\example\sample_export.yaml

    .\example\sample_export.yamlに、以下のようなフェイの問題のコードが出力されます。

    # yaml-language-server: $schema=./feicode-schema.json
    version: 0.1.0
    book:
      title: お試し
      floors:
        - title: お試し問題1
          difficulty: 1
          rooms:
            - [6, 5, 9, 8]
            - [15, 5, 18, 8]
          asuka:
            position: [16, 7]
            direction: 0
            level: 1
            hp: 15
          stairs:
            position: [7, 6]
          characters:
            - position: [18, 7]
              direction: 4
              id: マムル系
              level: 1
              state: 0
          items:
            - position: [16, 6]
              id: こんぼう
              quantity: 0
              cursed: false
              blessed: false
            - position: [15, 7]
              id: 青銅甲の盾
              quantity: 0
              cursed: false
              blessed: false
          traps:
            - position: [12, 7]
              id: 一方通行のワナ-          unpickable: false
              invisible: false
              forced: false
          floormap:
            # '[0         1         2         3         4         5         6     ]'
            # '[012345678901234567890123456789012345678901234567890123456789012345]'
            - '[##################################################################]' # 00
            - '[##################################################################]' # 01
            - '[##################################################################]' # 02
            - '[##################################################################]' # 03
            - '[##################################################################]' # 04
            - '[######....#####....###############################################]' # 05
            - '[######....#####....###############################################]' # 06
            - '[######.............###############################################]' # 07
            - '[######....#####....###############################################]' # 08
            - '[##################################################################]' # 09
            - '[##################################################################]' # 10
            - '[##################################################################]' # 11
            - '[##################################################################]' # 12
            - '[##################################################################]' # 13
            - '[##################################################################]' # 14
            - '[##################################################################]' # 15
            - '[##################################################################]' # 16
            - '[##################################################################]' # 17
            - '[##################################################################]' # 18
            - '[##################################################################]' # 19
            - '[##################################################################]' # 20
            - '[##################################################################]' # 21
            - '[##################################################################]' # 22
            - '[##################################################################]' # 23
            - '[##################################################################]' # 24
            - '[##################################################################]' # 25
            - '[##################################################################]' # 26
            - '[##################################################################]' # 27
            - '[##################################################################]' # 28
            - '[##################################################################]' # 29
            - '[##################################################################]' # 30
            - '[##################################################################]' # 31
            - '[##################################################################]' # 32
            - '[##################################################################]' # 33
            - '[##################################################################]' # 34
            - '[##################################################################]' # 35
            - '[##################################################################]' # 36
            - '[##################################################################]' # 37
            - '[##################################################################]' # 38
            - '[##################################################################]' # 39
            - '[##################################################################]' # 40
            - '[##################################################################]' # 41
  3. 出力された yaml ファイルは、テキストエディタで編集が可能です。

コードからフェイの問題ファイルを生成

yaml ファイルから fei2 ファイルへ変換します。

  1. buildコマンドで、テキストファイル(YAML 形式)からフェイの問題ファイル(*.fei2)へ変換します。

    .\feicode.exe build --src <生成元YAML ファイル> --out <出力先フェイの問題ファイル>

    例:

    > .\feicode.exe build --src .\example\sample.yaml --out .\example\sample_build.fei2
    Build successful : .\example\sample_build.fei2

    .\example\sample_build.fei2に、フェイの問題ファイルが出力されます。

  2. 生成したフェイの問題ファイルはアスカ見参でプレイすることが可能です。

フロアごとにファイルを分割する

以下のような手順で、フロアごとに別の yaml ファイルに分割して出力することも可能です。

  1. フェイの問題ファイル(*.fei2)を用意します。

  2. exportコマンドに--splitオプションを指定して、フェイの問題ファイルをテキストファイルに変換します。

    ./feicode.exe export --fei <フェイの問題ファイル> --split --out <出力先YAML ファイル>

    例:

    > .\feicode.exe export --fei .\example\feiSample.fei2 --split --out .\example\feiSample_export.yaml
    exported: .\example\feiSample_export.yaml
    exported: example\feiSample_export\f01.yaml
    exported: example\feiSample_export\f02.yaml
    exported: example\feiSample_export\f03.yaml
    exported: example\feiSample_export\f04.yaml
    exported: example\feiSample_export\f05.yaml
    exported: example\feiSample_export\f06.yaml
    exported: example\feiSample_export\f07.yaml
    exported: example\feiSample_export\f08.yaml
    exported: example\feiSample_export\f09.yaml
    exported: example\feiSample_export\f10.yaml
    
    Successfully exported

    以下のように各フロアが別のファイルに分割して出力されます。

    └─example
        │  feiSample_export.yaml
        └─feiSample_export
                f01.yaml
                f02.yaml
                f03.yaml
                f04.yaml
                f05.yaml
                f06.yaml
                f07.yaml
                f08.yaml
                f09.yaml
                f10.yaml

    example\feiSample_export.yaml に、以下のような内容が出力されます。
    floors配下の各フロアの情報は、別のファイルを参照($ref)しています。

    # yaml-language-server: $schema=./feicode-schema.json
    version: 0.1.0
    book:
      title: feiSample.fei2
      floors:
        - $ref: feiSample_export/f01.yaml
        - $ref: feiSample_export/f02.yaml
        - $ref: feiSample_export/f03.yaml
        - $ref: feiSample_export/f04.yaml
        - $ref: feiSample_export/f05.yaml
        - $ref: feiSample_export/f06.yaml
        - $ref: feiSample_export/f07.yaml
        - $ref: feiSample_export/f08.yaml
        - $ref: feiSample_export/f09.yaml
        - $ref: feiSample_export/f10.yaml

    f01.yamlなどのファイルに、各フロアのコードが出力されます。

  3. 出力された 各 yaml ファイルは、テキストエディタで編集が可能です。

  4. buildコマンドでフェイの問題ファイルへ変換可能です。

    例:

    > .\feicode.exe build --src .\example\feiSample_export.yaml --out .\example\feiSample_build.fei2
    Build successful : .\example\feiSample_build.fei2

Usage

コマンドの使用方法はhelpコマンドで確認してください。

.\feicode.exe help
v0.10.9+b7aedf2