STG Hall of Records/Database

From Shmups Wiki -- The Digital Library of Shooting Games
Jump to navigation Jump to search

Attention: This page serves as a database and is not meant to be consumed by end users. If you came here for the STG Hall of Records, follow one of these links:

Introduction

The contents of this page serve as a database and are meant to be put into a generator. The generator converts the raw data, written in YAML, into actual wiki pages for different languages.

Structure

Every section of data is enclosed in <nowiki></nowiki> tags. Everything outside outside of these tags will be ignored by the parser. The first section is named global and contains settings for the whole page, all the remaining sections each contain data about a single game.

Global settings

Values defined in this section apply to all the games in the database or the whole page in general (e.g. description, sorting of games, common translations, ...). For further information, please refer to the actual value, most of the settings are documented.

Game

Each game is defined by the following properties:

name: Name of the game
name-jp: 日本語のタイトル / Japanese title in kanji
name-kana: にほんごのたいとる / Japanese title in hiragana
company: Developer / Publisher
counterstop: Counterstop (optional, see below)

scores: Score entries (see below)

links:
  - url: https://example.org/the-link
    title: Title for the link
  - url: https://example.org/other-link
    title: Second link title

description: "Description containing notes about counterstops and other noteworthy stuff."

layout: Layout information (see below)

translations: Game-specific translations (see below)
Counterstop

If the game contains a counterstop, its type and value can be specified. Score entries reaching the counterstop will be colored automatically.

The type hard means the game itself cannot display a higher score.

counterstop:
    score: 99,999,999
    type: hard

The type soft represents an artificial counterstop for infinite games, usually imposed by a Japanese leaderboard.

counterstop:
    score: 10,000,000
    type: soft
Score

For each score the properties listed below are available. They are heavily game-dependent and usually not all of them are useful. Unnecessary properties can (and should) be omitted.

score: Score (required)
score-real: Real score if different from ''score'' (usually only necessary if the score has been tracked beyond a counterstop)
player: Name of the player (required)
ship: Selected ship / character
mode: Game mode / difficulty
weapon: Weapon / style
loop: Loop type
version: Version (1P, 2P, Japan, World, Old, New, ...)
autofire: Flag whether autofire was used or not
sources: List of information sources
comments: List of additional comments
image-urls: List of URLs pointing to screenshots of the score
added-date: Date the score was added to the HoR (YYYY-MM-DD|YYYY-MM|YYYY) (required)

Additional properties may be specified. In this case the generator will treat their values verbatim.

For every property a property with the same name and a locale suffix can be specified. Its value will be used on the page in the corresponding language instead of the value of the original property. Currently only '-jp' for Japanese is used but this can be extended to support more languages.

Layout

Most properties from the global section can be expanded or overriden.

layout:
    # Overrides the globally defined column order for this game.
    column-order:
      - sources
      - ship
      - mode
      - score
      - auto-fire
      - comments

    # Additional column definitions. They can be used to define new game-specific columns (see
    # `auto-fire`) or to override definitions for existing columns (see `mode`) for this game.
    columns:
        # Change label for existing column `mode`.
        mode:
            label: Loop
            label-jp: 2周種
        # Define new column `auto-fire`.
        - auto-fire:
            label: Auto fire
            label-jp: オート連射
            template: "{{ autofire }}"


    # Sort order can either be a direction (asc = ascending, desc = descending; see `mode`)
    # or a fixed order of values (see `ship`). These sort values will be applied *after* the
    # ones from the global section.
    sort:
        scores:
            ship: [ Type A, Type B ]
            mode: asc
Translations

Each entry takes a property and a value along with its translations. Let's look at some examples:

translations:
  - property: ship
    value: Tiger Schwert
    value-jp: TYPE-A ティーゲルシュベルト
  - property: ship
    value: Panzer Jäger
    value-jp: TYPE-B パンツァーイェーガー

Example 1: Whenever a score contains the value of `Tiger Schwert`, it is translated to `TYPE-A ティーゲルシュベルト` for the Japanese locale and left as `Tiger Schwert` for the others. Same thing for `Panzer Jäger`.

It is possible to use a simplified value for the score entries and then translate it into all the different languages.

translations:
  - property: ship
    value: Type A
    value-en: Tiger Schwert
    value-jp: TYPE-A ティーゲルシュベルト
  - property: ship
    value: Type B
    value-en: Panzer Jäger
    value-jp: TYPE-B パンツァーイェーガー

Example 2: Whenever a score contains the value of `Type A`, it is translated to `Tiger Schwert` for English and `TYPE-A ティーゲルシュベルト` for Japanese. Since there is a translation specified for all the available locales, the value `Type A` is not displayed at all and serves merely as a placeholder. Same thing for `Type B`.

Full example
<pre><nowiki>
name: "Ketsui: Kizuna Jigoku Tachi"
name-jp: ケツイ ~絆地獄たち~
name-kana: けつい ~きずなじごくたち~
company: Cave

scores:
  - score: 507,780,433
    player: SPS    
    ship: Type A
    mode: Omote
    sources:
      - name: Arcadia
        date: "2014-08"
    added-date: "2020-06-14"

  - score: 481,402,383
    player: SPS
    ship: Type B
    mode: Omote
    sources:
      - name: Arcadia
        date: "2014-11"
    comments:
      - 6L 0B remaining
      - 1st loop 276m
    added-date: "2020-06-13"

  - score: 489,893,348
    player: SPS
    ship: Type A
    mode: Omote
    sources:
      - name: Twitter
        date: "2010-04"
        url: https://example.org/twitter
    added-date: "2020-06-07"

  - score: 569,741,232
    player: GAN
    ship: Type B
    mode: Ura
    sources:
      - name: JHA
        date: "2016-03"
    comments:
      - 6L remaining
    added-date: "2020-06-21"

  - score: 583,614,753
    player: SPS
    ship: Type A
    mode: Ura
    sources:
      - name: Twitter
        date: "2014-05-27"
        url: https://example.org/twitter
      - name: Arcadia
        date: "2014-09"
    comments:
      - 6L 0B remaining
      - 1st loop 285m
    added-date: "2020-06-23"

links:
  - url: https://example.org/jha/ketsui
    title: JHA Leaderboard
    title-jp: 日本ハイスコア協会
  - url: https://example.org/farm/ketsui
    title: Shmups Forum Hi-Score Topic

layout:
    column-order:
      - ship
      - mode
      - score
      - player
      - sources
      - comments

    columns:
        mode:
            label: Loop
            label-jp: 2周種

    sort:
        scores:
            ship: [ Type A, Type B ]
            mode: asc

translations:
  - property: ship
    value: Type A
    value-en: Tiger Schwert
    value-jp: TYPE-A ティーゲルシュベルト
  - property: ship
    value: Type B
    value-en: Panzer Jäger
    value-jp: TYPE-B パンツァーイェーガー
  - property: mode
    value: Omote
    value-jp: 表
  - property: mode
    value: Ura
    value-jp: 裏
</nowiki></pre>

HOWTO

This is a series of step-by-step guides for the most common actions.

How to add a new score

Find the game which you want to enter a new score for

All games are listed here. Use Ctrl+f or the ToC to find your game and click on the edit link next to the heading.

Check whether the layout gets generated

You see a bunch of properties and their values enclosed in <pre>/<nowiki> tags. If the game still has a fixed template i.e. if there exists a property named layout.templates.game (see example below), proceed with the next step, otherwise add the new score.

layout:
    templates:
        game: |
            {% verbatim %}
            some wikitable
            {% endverbatim %}

Example: layout.templates.game

Decide whether you want to convert the fixed template

The fixed template has to be converted to be picked up by the generator. This can be done now or later, depending on the time at hand and the amount of data buried within the template.

Refer to this guide if you feel like converting the fixed template for this game right now. Continue with the next step if you converted the template, otherwise add the new score to the fixed template.

Add new score

We use the following example as the current state.

name: "Omega Fighter"
name-jp: "オメガファイター"
name-kana: "おめがふぁいたあ"
company: "UPL"
needs-work: true

scores:
  - score: 17,175,210
    player: Clover-YMN
    sources:
      - name: Arcadia
        date: "2009-07"

links:
  - url: https://shmups.system11.org/viewtopic.php?t=43829
    title: Shmups Forum Hi-Score Topic

Now to add our new score, we just create a new score entry and add it to the scores property. It does not matter where exactly you add it (above, below or somewhere in between the existing scores). Be sure to include the property added-date with the new score.
Important: Do not remove obsolete scores, they will be filtered out automatically as necessary.

name: "Omega Fighter"
name-jp: "オメガファイター"
name-kana: "おめがふぁいたあ"
company: "UPL"
needs-work: true

scores:
  - score: 17,175,210
    player: Clover-YMN
    sources:
      - name: Arcadia
        date: "2009-07"

  - score: 18,348,380
    player: Dare-Ka
    sources:
      - name: Twitter
        date: "2020-11-24"
        url: https://example.org/twitter
    added-date: "2020-11-26"

links:
  - url: https://shmups.system11.org/viewtopic.php?t=43829
    title: Shmups Forum Hi-Score Topic

If the score can be tracked beyond the counterstop, specify the real score as a separate property score-real. Otherwise the sorting might not work as expected.

  - score: 10,000,000
    score-real: 18,348,380

Add new score to fixed template

We use the following example as the current state.

name: "Phelios"
name-jp:
name-kana:
company: "Namco"
needs-work: true

layout:
    templates:
        game: |
            {% verbatim %}
            {{Anchor|Phelios}}
            {| class="wikitable" style="text-align: center"
            |-
            ! colspan="6" | [[Phelios]] (Namco)
            |-
            ! Mode !! Score !! Player !! Date / Source !! Comment !! Replay
            |-
            | Easy || {{v|a1|867,930}} || TEN || JHA June 2019 || stage 2: 127,280 ||
            |-
            | Hard || {{v|b1|1,445,240}} || TEN || JHA September 2018 || Dupon Double K.O. x4 ||
            |}
            {% endverbatim %}

If the property scores does not exist yet, create it.

name: "Phelios"
name-jp:
name-kana:
company: "Namco"
needs-work: true

scores:

layout:
    templates:
        game: |
            {% verbatim %}
            {{Anchor|Phelios}}
            {| class="wikitable" style="text-align: center"
            |-
            ! colspan="6" | [[Phelios]] (Namco)
            |-
            ! Mode !! Score !! Player !! Date / Source !! Comment !! Replay
            |-
            | Easy || {{v|a1|867,930}} || TEN || JHA June 2019 || stage 2: 127,280 ||
            |-
            | Hard || {{v|b1|1,445,240}} || TEN || JHA September 2018 || Dupon Double K.O. x4 ||
            |}
            {% endverbatim %}

Create a score entry for the current record (the one that gets obsolete by the new score) if necessary.
This step is optional. If you skip it, the previous record is not available for score progression statistics.

name: "Phelios"
name-jp:
name-kana:
company: "Namco"
needs-work: true

scores:
  - score: 867,930
    player: TEN
    mode: Easy
    sources:
      - name: JHA
        date: "2009-06"
    comments:
      - "stage 2: 127,280"

layout:
    templates:
        game: |
            {% verbatim %}
            {{Anchor|Phelios}}
            {| class="wikitable" style="text-align: center"
            |-
            ! colspan="6" | [[Phelios]] (Namco)
            |-
            ! Mode !! Score !! Player !! Date / Source !! Comment !! Replay
            |-
            | Easy || {{v|a1|867,930}} || TEN || JHA June 2019 || stage 2: 127,280 ||
            |-
            | Hard || {{v|b1|1,445,240}} || TEN || JHA September 2018 || Dupon Double K.O. x4 ||
            |}
            {% endverbatim %}

Create a score entry for the new record.
This step is optional. If you skip it, you have to extract the information from the fixed template at a later date again.

name: "Phelios"
name-jp:
name-kana:
company: "Namco"
needs-work: true

scores:
  - score: 867,930
    player: TEN
    mode: Easy
    sources:
      - name: JHA
        date: "2009-06"
    comments:
      - "stage 2: 127,280"

  - score: 893,820
    player: Dare-Ka
    mode: Easy
    sources:
      - name: JHA
        date: "2020-11"
    added-date: "2020-11-30"

layout:
    templates:
        game: |
            {% verbatim %}
            {{Anchor|Phelios}}
            {| class="wikitable" style="text-align: center"
            |-
            ! colspan="6" | [[Phelios]] (Namco)
            |-
            ! Mode !! Score !! Player !! Date / Source !! Comment !! Replay
            |-
            | Easy || {{v|a1|867,930}} || TEN || JHA June 2019 || stage 2: 127,280 ||
            |-
            | Hard || {{v|b1|1,445,240}} || TEN || JHA September 2018 || Dupon Double K.O. x4 ||
            |}
            {% endverbatim %}

Update the fixed template with the new record.

name: "Phelios"
name-jp:
name-kana:
company: "Namco"
needs-work: true

scores:
  - score: 867,930
    player: TEN
    mode: Easy
    sources:
      - name: JHA
        date: "2009-06"
    comments:
      - "stage 2: 127,280"

  - score: 893,820
    player: Dare-Ka
    mode: Easy
    sources:
      - name: JHA
        date: "2020-11"
    added-date: "2020-11-30"

layout:
    templates:
        game: |
            {% verbatim %}
            {{Anchor|Phelios}}
            {| class="wikitable" style="text-align: center"
            |-
            ! colspan="6" | [[Phelios]] (Namco)
            |-
            ! Mode !! Score !! Player !! Date / Source !! Comment !! Replay
            |-
            | Easy || {{v|a1|893,820}} || Dare-Ka || JHA November 2020 || ||
            |-
            | Hard || {{v|b1|1,445,240}} || TEN || JHA September 2018 || Dupon Double K.O. x4 ||
            |}
            {% endverbatim %}

How to convert a fixed template

We use the following example to go through the conversion step by step.

name: "Radiant Silvergun"
name-jp:
name-kana:
company: "Treasure"
needs-work: true

layout:
    templates:
        game: |
            {% verbatim %}
            {{Anchor|Radiant Silvergun}}
            {| class="wikitable" style="text-align: center"
            |-
            ! colspan="6" | [[Radiant Silvergun]] (Treasure)
            |-
            ! Route !! Score !! Player !! Date / Source !! Comment !! Replay
            |-
            | Stage 2 || {{v|a1|23,101,650}} || T³-CYR-WIZ || August 26th, 2008 (Arcadia December 2008) || after 3E: 4.80m, after 2E: 10.05m; in 5A: 12.22m || [https://youtu.be/j-AACK9hvgs Youtube]
            |-
            | Stage 4 || {{v|b1|27,550,780}} || T³-CYR-WIZ || November 15th, 2008 (Arcadia February 2009) || after 3E: 4.79m, after 4E: 14.33m; in 5A: 12.28m || [https://youtu.be/gJDCcK-zjWI Youtube]
            |}
            
            Note: There have not been any updates for more than 10 years!
            
            * [https://wiki.denfaminicogamer.jp/highscore/1998_024_%E3%83%AC%E3%82%A4%E3%83%87%E3%82%A3%E3%82%A2%E3%83%B3%E3%83%88%E3%82%B7%E3%83%AB%E3%83%90%E3%83%BC%E3%82%AC%E3%83%B3 JHA Leaderboard]
            * [https://shmups.system11.org/viewtopic.php?t=45677 Shmups Forum Hi-Score Topic]
            {% endverbatim %}

Fill in the Japanese name

Set the Japanese name of the game into the properties name-jp and name-kana if they are not translated yet. name-kana is always in Hiragana.

name: "Radiant Silvergun"
name-jp: "レイディアントシルバーガン"
name-kana: "れいでぃあんとしるばーがん"
company: "Treasure"
needs-work: true

layout:
    templates:
        game: |
            {% verbatim %}
            {{Anchor|Radiant Silvergun}}
            {| class="wikitable" style="text-align: center"
            |-
            ! colspan="6" | [[Radiant Silvergun]] (Treasure)
            |-
            ! Route !! Score !! Player !! Date / Source !! Comment !! Replay
            |-
            | Stage 2 || {{v|a1|23,101,650}} || T³-CYR-WIZ || August 26th, 2008 (Arcadia December 2008) || after 3E: 4.80m, after 2E: 10.05m; in 5A: 12.22m || [https://youtu.be/j-AACK9hvgs Youtube]
            |-
            | Stage 4 || {{v|b1|27,550,780}} || T³-CYR-WIZ || November 15th, 2008 (Arcadia February 2009) || after 3E: 4.79m, after 4E: 14.33m; in 5A: 12.28m || [https://youtu.be/gJDCcK-zjWI Youtube]
            |}
            
            Note: There have not been any updates for more than 10 years!
            
            * [https://wiki.denfaminicogamer.jp/highscore/1998_024_%E3%83%AC%E3%82%A4%E3%83%87%E3%82%A3%E3%82%A2%E3%83%B3%E3%83%88%E3%82%B7%E3%83%AB%E3%83%90%E3%83%BC%E3%82%AC%E3%83%B3 JHA Leaderboard]
            * [https://shmups.system11.org/viewtopic.php?t=45677 Shmups Forum Hi-Score Topic]
            {% endverbatim %}

Create score entries

Create a score entry for each score buried in the template. If the property scores is not present yet, create it first. The order of the score entries does not matter.

name: "Radiant Silvergun"
name-jp: "レイディアントシルバーガン"
name-kana: "れいでぃあんとしるばーがん"
company: "Treasure"
needs-work: true

scores:
  - score: 23,101,650
    player: T³-CYR-WIZ
    mode: Stage 2
    sources:
      - name: Arcadia
        date: "2008-12"
      - name: Youtube
        date: "2008-08-26"
        url: https://example.org/youtube/1
    comments:
      - "after 3E: 4.80m"
      - "after 2E: 10.05m"
      - "in 5A: 12.22m"
            
  - score: 27,550,780
    player: T³-CYR-WIZ
    mode: Stage 4
    sources:
      - name: Arcadia
        date: "2009-02"
      - name: Youtube
        date: "2008-11-15"
        url: https://example.org/youtube/2
    comments:
      - "after 3E: 4.79m"
      - "after 4E: 14.33m"
      - "in 5A: 12.28m"

layout:
    templates:
        game: |
            {% verbatim %}
            {{Anchor|Radiant Silvergun}}
            {| class="wikitable" style="text-align: center"
            |-
            ! colspan="6" | [[Radiant Silvergun]] (Treasure)
            |-
            ! Route !! Score !! Player !! Date / Source !! Comment !! Replay
            |-
            | Stage 2 || {{v|a1|23,101,650}} || T³-CYR-WIZ || August 26th, 2008 (Arcadia December 2008) || after 3E: 4.80m, after 2E: 10.05m; in 5A: 12.22m || [https://example.org/youtube/1 Youtube]
            |-
            | Stage 4 || {{v|b1|27,550,780}} || T³-CYR-WIZ || November 15th, 2008 (Arcadia February 2009) || after 3E: 4.79m, after 4E: 14.33m; in 5A: 12.28m || [https://example.org/youtube/2 Youtube]
            |}
            
            Note: There have not been any updates for more than 10 years!
            
            * [https://wiki.denfaminicogamer.jp/highscore/1998_024_%E3%83%AC%E3%82%A4%E3%83%87%E3%82%A3%E3%82%A2%E3%83%B3%E3%83%88%E3%82%B7%E3%83%AB%E3%83%90%E3%83%BC%E3%82%AC%E3%83%B3 JHA Leaderboard]
            * [https://shmups.system11.org/viewtopic.php?t=45677 Shmups Forum Hi-Score Topic]
            {% endverbatim %}

Add game properties

Create properties for game links and description if they are present in the template. If the game contains a counterstop, add that property as well.

name: "Radiant Silvergun"
name-jp: "レイディアントシルバーガン"
name-kana: "れいでぃあんとしるばーがん"
company: "Treasure"
needs-work: true

scores:
  - score: 23,101,650
    player: T³-CYR-WIZ
    mode: Stage 2
    sources:
      - name: Arcadia
        date: "2008-12"
      - name: Youtube
        date: "2008-08-26"
        url: https://example.org/youtube/1
    comments:
      - "after 3E: 4.80m"
      - "after 2E: 10.05m"
      - "in 5A: 12.22m"
            
  - score: 27,550,780
    player: T³-CYR-WIZ
    mode: Stage 4
    sources:
      - name: Arcadia
        date: "2009-02"
      - name: Youtube
        date: "2008-11-15"
        url: https://example.org/youtube/2
    comments:
      - "after 3E: 4.79m"
      - "after 4E: 14.33m"
      - "in 5A: 12.28m"

description: "Note: There have not been any updates for more than 10 years!"

links:
  - url: https://wiki.denfaminicogamer.jp/highscore/1998_024_%E3%83%AC%E3%82%A4%E3%83%87%E3%82%A3%E3%82%A2%E3%83%B3%E3%83%88%E3%82%B7%E3%83%AB%E3%83%90%E3%83%BC%E3%82%AC%E3%83%B3
    title: JHA Leaderboard
  - url: https://shmups.system11.org/viewtopic.php?t=45677
    title: Shmups Forum Hi-Score Topic

layout:
    templates:
        game: |
            {% verbatim %}
            {{Anchor|Radiant Silvergun}}
            {| class="wikitable" style="text-align: center"
            |-
            ! colspan="6" | [[Radiant Silvergun]] (Treasure)
            |-
            ! Route !! Score !! Player !! Date / Source !! Comment !! Replay
            |-
            | Stage 2 || {{v|a1|23,101,650}} || T³-CYR-WIZ || August 26th, 2008 (Arcadia December 2008) || after 3E: 4.80m, after 2E: 10.05m; in 5A: 12.22m || [https://example.org/youtube/1 Youtube]
            |-
            | Stage 4 || {{v|b1|27,550,780}} || T³-CYR-WIZ || November 15th, 2008 (Arcadia February 2009) || after 3E: 4.79m, after 4E: 14.33m; in 5A: 12.28m || [https://example.org/youtube/2 Youtube]
            |}
            
            Note: There have not been any updates for more than 10 years!
            
            * [https://wiki.denfaminicogamer.jp/highscore/1998_024_%E3%83%AC%E3%82%A4%E3%83%87%E3%82%A3%E3%82%A2%E3%83%B3%E3%83%88%E3%82%B7%E3%83%AB%E3%83%90%E3%83%BC%E3%82%AC%E3%83%B3 JHA Leaderboard]
            * [https://shmups.system11.org/viewtopic.php?t=45677 Shmups Forum Hi-Score Topic]
            {% endverbatim %}

Add columns and sort

Add the properties layout.sort and layout.columns to define sorting and columns if necessary. This step is necessary only if the scores are divided into different categories (i.e. whenever one of the following properties is set: version, autofire, mode, ship, weapon or loop).

name: "Radiant Silvergun"
name-jp: "レイディアントシルバーガン"
name-kana: "れいでぃあんとしるばーがん"
company: "Treasure"
needs-work: true

scores:
  - score: 23,101,650
    player: T³-CYR-WIZ
    mode: Stage 2
    sources:
      - name: Arcadia
        date: "2008-12"
      - name: Youtube
        date: "2008-08-26"
        url: https://example.org/youtube/1
    comments:
      - "after 3E: 4.80m"
      - "after 2E: 10.05m"
      - "in 5A: 12.22m"
            
  - score: 27,550,780
    player: T³-CYR-WIZ
    mode: Stage 4
    sources:
      - name: Arcadia
        date: "2009-02"
      - name: Youtube
        date: "2008-11-15"
        url: https://example.org/youtube/2
    comments:
      - "after 3E: 4.79m"
      - "after 4E: 14.33m"
      - "in 5A: 12.28m"

description: "Note: There have not been any updates for more than 10 years!"

links:
  - url: https://wiki.denfaminicogamer.jp/highscore/1998_024_%E3%83%AC%E3%82%A4%E3%83%87%E3%82%A3%E3%82%A2%E3%83%B3%E3%83%88%E3%82%B7%E3%83%AB%E3%83%90%E3%83%BC%E3%82%AC%E3%83%B3
    title: JHA Leaderboard
  - url: https://shmups.system11.org/viewtopic.php?t=45677
    title: Shmups Forum Hi-Score Topic

layout:
    columns:
        mode:
            label: Route
            label-jp: ステージ選択

    sort:
        scores:
            mode: asc

    templates:
        game: |
            {% verbatim %}
            {{Anchor|Radiant Silvergun}}
            {| class="wikitable" style="text-align: center"
            |-
            ! colspan="6" | [[Radiant Silvergun]] (Treasure)
            |-
            ! Route !! Score !! Player !! Date / Source !! Comment !! Replay
            |-
            | Stage 2 || {{v|a1|23,101,650}} || T³-CYR-WIZ || August 26th, 2008 (Arcadia December 2008) || after 3E: 4.80m, after 2E: 10.05m; in 5A: 12.22m || [https://example.org/youtube/1 Youtube]
            |-
            | Stage 4 || {{v|b1|27,550,780}} || T³-CYR-WIZ || November 15th, 2008 (Arcadia February 2009) || after 3E: 4.79m, after 4E: 14.33m; in 5A: 12.28m || [https://example.org/youtube/2 Youtube]
            |}
            
            Note: There have not been any updates for more than 10 years!
            
            * [https://wiki.denfaminicogamer.jp/highscore/1998_024_%E3%83%AC%E3%82%A4%E3%83%87%E3%82%A3%E3%82%A2%E3%83%B3%E3%83%88%E3%82%B7%E3%83%AB%E3%83%90%E3%83%BC%E3%82%AC%E3%83%B3 JHA Leaderboard]
            * [https://shmups.system11.org/viewtopic.php?t=45677 Shmups Forum Hi-Score Topic]
            {% endverbatim %}

Remove the fixed template

Remove the fixed template from the property layout.

name: "Radiant Silvergun"
name-jp: "レイディアントシルバーガン"
name-kana: "れいでぃあんとしるばーがん"
company: "Treasure"
needs-work: true

scores:
  - score: 23,101,650
    player: T³-CYR-WIZ
    mode: Stage 2
    sources:
      - name: Arcadia
        date: "2008-12"
      - name: Youtube
        date: "2008-08-26"
        url: https://example.org/youtube/1
    comments:
      - "after 3E: 4.80m"
      - "after 2E: 10.05m"
      - "in 5A: 12.22m"
            
  - score: 27,550,780
    player: T³-CYR-WIZ
    mode: Stage 4
    sources:
      - name: Arcadia
        date: "2009-02"
      - name: Youtube
        date: "2008-11-15"
        url: https://example.org/youtube/2
    comments:
      - "after 3E: 4.79m"
      - "after 4E: 14.33m"
      - "in 5A: 12.28m"

description: "Note: There have not been any updates for more than 10 years!"

links:
  - url: https://wiki.denfaminicogamer.jp/highscore/1998_024_%E3%83%AC%E3%82%A4%E3%83%87%E3%82%A3%E3%82%A2%E3%83%B3%E3%83%88%E3%82%B7%E3%83%AB%E3%83%90%E3%83%BC%E3%82%AC%E3%83%B3
    title: JHA Leaderboard
  - url: https://shmups.system11.org/viewtopic.php?t=45677
    title: Shmups Forum Hi-Score Topic

layout:
    columns:
        mode:
            label: Route
            label-jp: ステージ選択

    sort:
        scores:
            mode: asc

Congratulations, the conversion is complete! Save your changes if you have not yet.

How to update the HoR pages with the newest data from the database

  1. Go to the generator page.
  2. Load the database page into the input field by pressing the button Load input from database or copy the contents manually.
  3. If you just want to generate a single game, select it from the dropdown and press Filter input. The dropdown appears only after the database has been loaded into the input field.
  4. Press Generate.
  5. Copy the English output (Output for locale `en`) from the textfield.
  6. Go to the English HoR page and hit edit.
  7. Paste the content into the page, replacing the old content.
  8. Use Show preview and Show changes to make sure the output looks as expected.
  9. Save the changes to the HoR page.
  10. Repeat steps 5 - 9 for the Japanese output (Output for locale `jp`) and its HoR page.

Global settings

name: global

# Main description in wiki syntax, available as variable `description` within the templates.
description: |
    [[File:Micomlogo.jpg|800px|center]]
    
    
    Welcome to the STG Hall of Records!
    
    In the following page you will find a list of all world record scores for arcade shmups. The list is a major revision of the [https://shmups.system11.org/viewtopic.php?f=2&t=38524 long-standing topic on the Shmups Forum] under the same name, which was maintained by the user NTSC-J from September 2011 to July 2020. This list takes the Japanese score keeping traditions as a basis, primarily the uninterrupted combined tradition of Gamest magazine (1986 to 1999), Arcadia magazine (1999 to 2015) and the [http://www.jha-arcade.com website] of the Japan Highscore Association a.k.a. JHA (2016 to the present). For the current revision of the STG Hall of Records, several more scores have been retrieved from other sources such as Micom Basic magazine (1984 to 1999) but also private Twitter accounts, forums, and other websites. To read more about the tracking of arcade highscores in Japan, please check [http://electricunderground.io/guest-article-introduction-to-scorekeeping-for-japanese-arcade-games/ this short article].
    [[File:MICB.jpg|400px|right]]
    The STG Hall of Records in its current form would have been an unthinkable project without the meticulous work carried out by Marco “Gemant” Frattino who has been spreading information about Japanese arcade highscores with tireless enthusiasm within the english-speaking community for over a decade. Gemant’s work culminates in the latest publication of his monumental project ARCA (started in 2007), a document providing information on a selection of 600 arcade games (not only shmups), which can be [https://www.mameretroavengers.com/documenti/arca-general-dei-record-arcade/ accessed here]. However, the STG Hall of Records is not merely a copy of Gemant’s document. Whenever possible, the records have been double checked and verified. Furthermore, you will notice two fundamental departures from the ARCA project. First, while non-shmups have been excluded, the STG Hall of Records aims to cover every arcade shmup and is constantly growing, not limited to a specific number of games. Second, games from the so-called “Golden Era” (pre 1985 and therefore prior to the first issue of Gamest) are also considered.
    
    As an additional innovation, the STG Hall of Records also lists scores for various categories that otherwise do not exist within the Japanese tradition, e.g. a more in-depth and specific recordkeeping of subtypes of ships (e.g. including shot and laser types in [[DoDonPachi]]). Scores from particularly accurate ports (e.g. [[Battle Garegga]] on PS4 or [[Crimzon Clover]] on Steam) or scores achieved on emulators (e.g. Mame or GOTVG) can also be found on the list. These scores are not meant to replace the current arcade scores and are but seen as a supplement. Geographically speaking, scores from all over the world are considered.
    
    Mostly limited to a number of older games, Japanese scorekeeping sometimes sets a goal score of 10,000,000 points and closes the game for competition once this threshold is achieved regardless of whether the score counter would continue normally or roll over back to 0. These scores are marked by the notation of "+α", e.g. "10,000,000+α" and are then marked in green color to indicate that the ranking is officially closed under JHA rules. The STG Hall of Records likewise lists these +α-scores and indicates the first player(s) to reach this score (players achieving the same goal score later on are not considered). Moreover, the highest score beyond this arbitrary threshold is also listed. Only when a true counterstop is achieved, the game or category will be closed for competition as long as no special rules apply as is the case with Ultra Mode in [[Mushihimesama Futari]] 1.5. In the case of a counterstop, the ranking will be marked in grey color to indicate that it is closed.
    
    

# Layout information applicable to the whole page or all the games in the database.
layout:

    # Sort order for the games within the page or the scores within each game respectively.
    sort:
        games:
            name: asc
        scores:
            score: desc

    # Properties to group scores by. Every combination of these properties forms a category within a game.
    # Example: If grouped by ship only, all the scores achieved with the same ship are put into the same
    # category no matter the mode, weapon or any property.
    group:
        scores:
          - version
          - autofire
          - platform
          - game
          - mode
          - difficulty
          - ship
          - weapon
          - loop

    # Default order for the columns (see next property). For each game, only columns that have been set
    # will be displayed.
    column-order:
      - version
      - autofire
      - game
      - mode
      - difficulty
      - ship
      - weapon
      - loop
      - score
      - player
      - sources
      - comments

    # Available columns. Columns specified here can be used for all games.
    columns:
        player:
            label: Player
            label-jp: プレイヤー
            template: "{{ score.player }}"

        score:
            label: Score
            label-jp: スコア
            template: |
                {{ score.score }}{% if attribute(score, 'score-real') and attribute(score, 'score-real') != score.score %} [{{ attribute(score, 'score-real') }}]{% endif %}

        ship:
            label: Ship
            label-jp: 自機
            template: "{{ score.ship }}"
            attributes:
                is-category: true
                is-mergeable: true
        game:
            label: Game
            label-jp: ゲーム
            template: "{{ score.game }}"
            attributes:
                is-category: true
                is-mergeable: true

        mode:
            label: Mode
            label-jp: モード
            template: "{{ score.mode }}"
            attributes:
                is-category: true
                is-mergeable: true

        difficulty:
            label: Difficulty
            label-jp: 難易度
            template: "{{ score.difficulty }}"
            attributes:
                is-category: true
                is-mergeable: true

        loop:
            label: Loop
            label-jp: 2周種
            template: "{{ score.loop }}"
            attributes:
                is-category: true
                is-mergeable: true

        weapon:
            label: Weapon
            label-jp: ショット
            template: "{{ score.weapon }}"
            attributes:
                is-category: true
                is-mergeable: true

        comments:
            label: Comment
            label-jp: 備考
            template: "{{ score.comments|join(', ') }}"

        version:
            label: Version
            label-jp: バージョン
            template: "{{ score.version }}"
            attributes:
                is-category: true
                is-mergeable: true

        autofire:
            label: Autofire
            label-jp: オート連射
            template: "{{ score.autofire }}"
            attributes:
                is-category: true
                is-mergeable: true

        platform:
            label: Platform
            label-jp: プラットフォーム
            template: "{{ score.platform }}"

        sources:
            label: Source
            label-jp: 情報元
            template: |
                {% for source in score.sources %}{% if source.url %}[{{ source.url }} {{ source.name }}]{% else %}{{ source.name|formatDate }}{% endif %}{% if source.date %} ({{ source.date|formatDate }}){% endif %}{% if not loop.last %}<br>{% endif %}{% endfor %}

    # Wiki templates. The one named `main` is the entry point, everything else gets included from there.
    templates:
        main: |
            {{ description|raw }}
            {{ include('toc') }}
            {{ include('games') }}
        toc: |
            <table class="wikitable">
              <tr>
            {% set numNonEmptyGroups = 0 %}
            {% for group in games.grouped.byInitials %}
            {% if group.games %}
                <th class="{% for game in group.games %}mw-customtoggle-{{ game.properties.id }} {% endfor %}" style="padding-left:10px;padding-right:10px;">{{ group.title }}</th>
            {% set numNonEmptyGroups = numNonEmptyGroups + 1 %}
            {% endif %}
            {% endfor %}
              </tr>
            {% for group in games.grouped.byInitials %}
            {% for game in group.games %}
              <tr id="mw-customcollapsible-{{ game.properties.id }}" class="mw-collapsible mw-collapsed">
                <td colspan="{{ numNonEmptyGroups }}">[[#{{ game.properties.name }}|{{ game.properties.name }}]]</td>
              </tr>
            {% endfor %}
            {% endfor %}
            </table>
            __NOTOC__
        games: |
            {% for game in games.all %}
            {# Use custom game template where available. #}
            {% set customTemplate = "game-#{game.properties.id}" %}
            {{ include([customTemplate, 'game']) }}
            {% endfor %}
        game: |
            {# Always us an array for counterstops #}
            {% set counterstops = [] %}
            {% if game.properties.counterstop.score %}{# Single counterstop defined #}
            {% set counterstops = [game.properties.counterstop] %}
            {% elseif game.properties.counterstop %}{# Multiple counterstops defined #}
            {% set counterstops = game.properties.counterstop %}
            {% endif %}
            {{ '{{' }}Anchor|{{ game.properties.name }}{{ '}}' }}
            {| class="wikitable" style="text-align: center"
            |-
            ! colspan="{{ game.headers|length }}" | {{ game.properties.name }} ({{ game.properties.company }})
            {# Current records #}
            {% set scores = [] %}
            {% for score in game.scores %}
            {% if score.properties['is-current-record'] %}
            {% set scores = scores|merge([score]) %}
            {% endif %}
            {% endfor %}
            |-
            ! {{ game.headers|join(' !! ') }}
            {% for scoreIndex,score in scores %}
            {{ include('score') }}
            {% endfor %}
            {# Previous records #}
            {% set scores = [] %}
            {% for score in game.scores %}
            {% if not score.properties['is-current-record'] %}
            {% set scores = scores|merge([score]) %}
            {% endif %}
            {% endfor %}
            {# Set guard to false to prevent previous records from being included in the output. #}
            {% if true and scores %}
            {% set gameId = game.properties.name|md5 %}
            {% set scoreCssAttrs = {
                'id': "mw-customcollapsible-#{gameId}",
                'class': 'mw-collapsible mw-collapsed',
                'style': "background-color:#eee; color:#999;"
            } %}
            <!-- Remove table rows below if you do NOT want previous records to be displayed. -->
            
            |- id="mw-customcollapsible-{{ gameId }}" class="mw-customtoggle-{{ gameId }} mw-collapsible"
            | colspan="{{ game.headers|length }}" style="{{ scoreCssAttrs['style'] }} font-size: smaller; padding: 2px;" | {% if locale == 'jp' %}過去の記録を表示する{% else %}Show previous records{% endif %} 
            |- id="mw-customcollapsible-{{ gameId }}" class="mw-customtoggle-{{ gameId }} mw-collapsible mw-collapsed"
            | colspan="{{ game.headers|length }}" style="{{ scoreCssAttrs['style'] }} font-size: smaller; padding: 2px;" | {% if locale == 'jp' %}過去の記録を隠す{% else %}Hide previous records{% endif %} 
            |- {% for name,value in scoreCssAttrs %}{{ name }}="{{ value }}" {% endfor %} 
            ! {{ game.headers|join(' !! ') }}
            {% for scoreIndex,score in scores %}
            {{ include('score') }}
            {% endfor %}
            {% endif %}
            |}

            {% if game.properties.description %}
            {{ game.properties.description }}

            {% endif %}
            {% if game.properties.links %}
            {% for link in game.properties.links %}
            * [{{ link.url}} {{link.title}}]
            {% endfor %}
            {% endif %}
        score: |
            {% set prevScore = scores[scoreIndex - 1] %}
            {% set nextScore = scores[scoreIndex + 1] %}
            {# Check for counterstops #}
            {% set isCounterstop = false %}
            {% set counterstopType = null %}
            {% for counterstop in counterstops %}
            {% if counterstop.score and score.properties.score == counterstop.score %}
            {% set isCounterstop = true %}
            {% set counterstopType = counterstop.type %}
            {% endif %}
            {% endfor %}
            |- {% for name,value in scoreCssAttrs %}{{ name }}="{{ value }}" {% endfor %} 
            | {% for columnIndex,column in score.columns %}
            {% set cellValue = column.value %}
            {% set classes = '' %}
            {% if isCounterstop and not column.attributes['is-category'] %}
            {% set classes = "hor-counterstop-#{counterstopType} #{classes}" %}
            {% endif %}
            {# Merge counterstop score values as well #}
            {% if column.attributes['is-mergeable']
               or column.name == 'score'
               and isCounterstop
               and score.properties.score == score.properties['score-real'] %}
            {% set mergeWithTopCell = true %}
            {% set mergeWithBottomCell = true %}
            {% for i in 0..columnIndex %}
            {% if not prevScore or prevScore.columns[i].value != score.columns[i].value %}
            {% set mergeWithTopCell = false %}
            {% endif %}
            {% if not nextScore or nextScore.columns[i].value != score.columns[i].value %}
            {% set mergeWithBottomCell = false %}
            {% endif %}
            {% endfor %}
            {% if mergeWithTopCell and mergeWithBottomCell %}
            {% set cellValue = '' %}
            {% set classes = "hor-merged-cell #{classes}" %}
            {% elseif mergeWithTopCell %}
            {% set cellValue = '' %}
            {% set classes = "hor-merged-cell-last #{classes}" %}
            {% elseif mergeWithBottomCell %}
            {% set classes = "hor-merged-cell-first #{classes}" %}
            {% endif %}
            {% endif %}
            {% if classes %}class="{{ classes }}" | {% endif %}
            {{ cellValue|raw }}{% if not loop.last %} || {% endif %}
            {% endfor %}

# Common translations applicable to all games in the database.
translations:
  # Translations for companies.
  - property: company
    value: ADK
    value-jp: エーディーケイ
  - property: company
    value: Afega
    value-jp: アフェーガ
  - property: company
    value: A.I.
    value-jp: エーアイ
  - property: company
    value: Aicom / Yumekobo
    value-jp: エイコム / 夢工房
  - property: company
    value: Alfa System
    value-jp: アルファ・システム
  - property: company
    value: Allumer
    value-jp: アルュメ
  - property: company
    value: Athena
    value-jp: アテナ
  - property: company
    value: Atlus
    value-jp: アトラス
  - property: company
    value: Banpresto
    value-jp: バンプレスト
  - property: company
    value: Capcom
    value-jp: カプコン
  - property: company
    value: CAVE
    value-jp: ケイブ
  - property: company
    value: Coreland
    value-jp: コアランド
  - property: company
    value: Crux
    value-jp: クラックス
  - property: company
    value: Data East
    value-jp: データイースト
  - property: company
    value: Dooyong
    value-jp: ドーヤン
  - property: company
    value: DORAGON
    value-jp: ドラゴン
  - property: company
    value: East Technology
    value-jp: イーストテクノロジー
  - property: company
    value: exA-Arcadia
    value-jp: exA-Arcadia
  - property: company
    value: Face
    value-jp: フェイス
  - property: company
    value: Gazelle
    value-jp: ガゼル
  - property: company
    value: G.Rev
    value-jp: グレフ
  - property: company
    value: Hot-B
    value-jp: ホット・ビィ
  - property: company
    value: Hudson
    value-jp: ハドソン
  - property: company
    value: IGS
    value-jp: IGS
  - property: company
    value: Irem
    value-jp: アイレム
  - property: company
    value: Jaleco
    value-jp: ジャレコ
  - property: company
    value: Jorudan
    value-jp: ジョルダン
  - property: company
    value: Kaneko
    value-jp: カネコ
  - property: company
    value: Konami
    value-jp: コナミ
  - property: company
    value: M2
    value-jp: エムツー
  - property: company
    value: Mebius
    value-jp: メビウス
  - property: company
    value: Metro
    value-jp: メトロ
  - property: company
    value: Milestone
    value-jp: マイルストーン
  - property: company
    value: Mitchell
    value-jp: ミッチェル
  - property: company
    value: Namco
    value-jp: ナムコ
  - property: company
    value: Neotro
    value-jp: ネオトロ
  - property: company
    value: Nichibutsu
    value-jp: ニチブツ
  - property: company
    value: Nihon System
    value-jp: 日本システム
  - property: company
    value: NMK
    value-jp: NMK
  - property: company
    value: Psikyo
    value-jp: 彩京
  - property: company
    value: Raizing / 8ing
    value-jp: ライジング / エイティング
  - property: company
    value: RIKI
    value-jp: RIKI
  - property: company
    value: Sammy
    value-jp: サミー
  - property: company
    value: Sega
    value-jp: セガ
  - property: company
    value: Seibu Kaihatsu / Moss
    value-jp: セイブ開発 / モス
  - property: company
    value: Seta
    value-jp: セタ
  - property: company
    value: Skonec
    value-jp: スコーネック
  - property: company
    value: SNK
    value-jp: SNK
  - property: company
    value: Studio Siesta
    value-jp: スタジオシエスタ
  - property: company
    value: Success
    value-jp: サクセス
  - property: company
    value: Taito
    value-jp: タイトー
  - property: company
    value: Takumi
    value-jp: タクミ
  - property: company
    value: Tanoshimasu
    value-jp: タノシマス
  - property: company
    value: Tecmo
    value-jp: テクモ
  - property: company
    value: Tecnosoft
    value-jp: テクノソフト
  - property: company
    value: Tehkan
    value-jp: テーカン
  - property: company
    value: Toaplan
    value-jp: 東亜プラン
  - property: company
    value: Touhou FDF
    value-jp: 東方FDF
  - property: company
    value: Treasure
    value-jp: トレジャー
  - property: company
    value: Triangle Service / Oriental Soft
    value-jp: トライアングル・サービス / オリエンタルソフト
  - property: company
    value: UPL
    value-jp: UPL
  - property: company
    value: Video System
    value-jp: ビデオシステム
  - property: company
    value: Visco
    value-jp: ビスコ
  - property: company
    value: Warashi
    value-jp: 童
  - property: company
    value: Yang Chen
    value-jp: ヤンチェン
  - property: company
    value: Yotsubane
    value-jp: 四ツ羽根

  # Translations for magazines.
  - property: sources
    value: Arcadia
    value-jp: アルカディア
    fuzzy-match: true
  - property: sources
    value: Gamest
    value-jp: ゲーメスト
    fuzzy-match: true
  - property: sources
    value: Micom Basic
    value-jp: マイコンBASIC
    fuzzy-match: true
  - property: sources
    value: Twitter
    value-jp: ツイッター
    fuzzy-match: true
  - property: sources
    value: niconico
    value-jp: ニコニコ
    fuzzy-match: true

  # Translations for links.
  - property: links
    value: JHA Leaderboard
    value-jp: 日本ハイスコア協会
    fuzzy-match: true

Games