Langsung ke konten
MLBBDex

Tulis analisis hero

Pembaruan data game dengan sendirinya; komentarnya ditulis. Berikut cara menulis analisis hero dan mengirimkannya ke situs.

Hero dianalisis
38
Menunggu analisis
96

Apa yang Anda tulis

Peran, posisi, skill, skin, statistik, dan build yang dimainkan tiba melalui sinkronisasi otomatis wiki dan API komunitas. Analisis hanya memberikan apa yang tidak dihasilkan oleh ekstraksi: apa yang sebenarnya dilakukan hero, kekuatan dan kelemahannya, serangan baliknya, dan penjelasan buildnya.

Analisisnya ditulis dalam bahasa Perancis, bahasa asli situs ini. Masing-masing adalah entri TypeScript, ditambahkan ke file peran hero di src/data/heros/.

Ladang

Analisis mengikuti tipe AnalyseHeros dari src/lib/types.ts. Skill dan build miliknya masing-masing memiliki bentuknya masing-masing.

Analisis — AnalisisHeros

slugstring
ID hero yang tepat, seperti yang tercantum di src/data/jeu/heros.json.
summarystring
Sebuah kalimat yang menyatakan apa yang unik dari sang hero. Ini juga berfungsi sebagai deskripsi meta.
analysisstring
Dua paragraf dipisahkan oleh baris kosong: apa yang sebenarnya dilakukan sang hero, lalu batasannya.
skillsSkill[]
Skill dalam urutan permainan: pasif, skill 1, skill 2, ultimat. Ini adalah urutan yang mengaitkan setiap deskripsi dengan keahlian wiki.
strengthsstring[]
Tiga sampai lima titik pendek, dapat diamati sebagian.
weaknessesstring[]
Tiga sampai lima poin pendek, dengan apa yang mengeksploitasinya.
strongAgainststring[]
Siput hero yang nyaman dia hadapi.
weakAgainststring[]
Siput dari para hero yang membuatnya mendapat masalah.
buildsBuild[]
Satu atau lebih build, masing-masing dengan konteksnya.

Sebuah skill – Skill

type"Passive" | "Skill 1" | "Skill 2" | "Ultimate"
Lokasi skill.
namestring
Nama Inggris, seperti dalam game. Situs ini menampilkan wiki.
descriptionstring
Skill apa yang diperbolehkan dan kapan menggunakannya, tanpa nilai damage.
cooldownnumber[] · opsional
Cooldown per level, dalam hitungan detik. Absen untuk pasif.
costnumber[] · opsional
Biaya per tingkat. Absen jika hero tidak menggunakan mana.

Sebuah build — Membangun

namestring
Nama pendek build tersebut.
contextstring
Kapan harus memilih build ini. Sebuah build tanpa konteks tidak akan mengajarkan apa pun kepada siapa pun.
itemsstring[]
Enam item, dengan nama bahasa Inggrisnya, sesuai urutan pembelian.
emblemstring
Emblem yang direkomendasikan, diberi nama sesuai dengan analisis yang ada (“Mage Emblem”).
talentstring
Bakat emblem utama, nama Inggris.
spellstring
Battle Spell, nama Inggris.

Model beranotasi

Salin templat ini di akhir daftar file peran, lengkapi, lalu hapus komentarnya. npm run typecheck memeriksanya setiap kali: selalu mengikuti tipe saat ini.

import type { HeroAnalysis } from "@/lib/types";

/**
 * Hero analysis template.
 *
 * Copy it into the file of the hero's role (`src/data/heroes/tanks.ts`,
 * `fighters.ts`, `assassins.ts`, `mages.ts`, `marksmen.ts` or `supports.ts`),
 * fill it in, then strip its comments. It is imported nowhere:
 * `npm run typecheck` only checks it, which keeps it in line with the
 * `HeroAnalysis` type.
 *
 * Displayed text is written in French, with its accents. Item, skill, talent
 * and spell names stay in English, as in the game.
 * Nothing is copied from another site. Full guide: /fr/contribute.
 */
export const template: HeroAnalysis = {
  // Exact slug, as it appears in src/data/game/heroes.json.
  slug: "slug-du-heros",

  // One sentence: what sets the hero apart. Reused as the meta description.
  summary: "Une phrase qui dit ce que le héros a de singulier.",

  // Two paragraphs separated by a blank line: what the hero actually does,
  // then its limits. Observable facts, no superlatives.
  analysis:
    "Premier paragraphe : le plan de jeu du héros, ce qu'il fait réellement en partie.\n\n" +
    "Second paragraphe : ses limites, et ce qui les expose.",

  // Game order: passive, skill 1, skill 2, ultimate. The order is what pairs
  // each description with the wiki skill, whose name is the one that is
  // displayed.
  skills: [
    {
      type: "Passive",
      // English name, as in the game.
      name: "Passive Name",
      // The effect and how to use it, without damage values: they change
      // almost every patch. No cooldown or cost for a passive.
      description: "Ce que le passif change à la façon de jouer le héros.",
    },
    {
      type: "Skill 1",
      name: "First Skill Name",
      description: "Ce que la compétence permet, et quand s'en servir.",
      // Cooldown per level, in seconds.
      cooldown: [8, 7.5, 7, 6.5, 6, 5.5],
      // Cost per level; omit it if the hero does not use mana.
      cost: [60, 65, 70, 75, 80, 85],
    },
    {
      type: "Skill 2",
      name: "Second Skill Name",
      description: "Ce que la compétence permet, et ce qui la rend dangereuse ou fragile.",
      cooldown: [12, 11, 10, 9, 8, 7],
      cost: [70, 75, 80, 85, 90, 95],
    },
    {
      type: "Ultimate",
      name: "Ultimate Name",
      description: "Ce que l'ultime change à un combat, et le bon moment pour le lancer.",
      cooldown: [40, 35, 30],
      cost: [120, 140, 160],
    },
  ],

  // Three to five short points, observable in a match.
  strengths: ["Une force concrète, visible en partie"],
  // Three to five short points, with what exploits them.
  weaknesses: ["Une faiblesse concrète, et ce qui la punit"],

  // Slugs, not names: heroes it is comfortable against…
  strongAgainst: ["slug-adverse"],
  // … and heroes that give it trouble.
  weakAgainst: ["autre-slug"],

  builds: [
    {
      name: "Nom court du build",
      // When to pick this build: a build without context teaches nothing.
      context: "La situation dans laquelle ce build s'impose, et ce qu'il sacrifie.",
      // Six items, English in-game names, in purchase order.
      items: ["Item One", "Item Two", "Item Three", "Item Four", "Item Five", "Item Six"],
      // Emblems named as in the existing analyses.
      emblem: "Emblème de mage",
      // Main talent and battle spell, English names.
      talent: "Lethal Ignition",
      spell: "Flicker",
    },
  ],
};
Lihat modelnya di GitHub

Aturan gaya

  • Aksen di mana pun bahasa Prancis memerlukannya: teks analisis ditampilkan kepada pengunjung, meskipun kode proyek tidak memerlukannya.
  • Ketentuan permainan tetap dalam bahasa Inggris: item, skill, bakat, dan spell menyimpan nama yang sebagian ditemukan pemain (“Mahkota Musim Dingin”, “Flicker”).
  • Tidak ada yang disalin: tidak ada wiki, tidak ada panduan, tidak ada video. Analisis yang diambil dari tempat lain, bahkan jika dirumuskan ulang dengan cermat, akan ditolak.
  • Tidak ada nilai damage: nilai tersebut berubah hampir di setiap patch. Jelaskan dampaknya, bukan jumlahnya.
  • Konkret daripada superlatif: “dia memenangkan pertarungan panjang selama lawan tidak membeli pengurangan penyembuhan” lebih baik daripada “dia sangat kuat”.

Proofreading, berdasarkan permintaan tarik

  1. Cabangkan repositori GitHub dan buat cabang untuk analisis Anda.
  2. Tambahkan entri ke file peran: tanks.ts, fighters.ts, assassins.ts, mages.ts, marksmen.ts atau supports.ts.
  3. Gulung npm run lint, npm run typecheck dan npm test. Pemeriksaan otomatis akan tetap menjalankannya lagi.
  4. Buka permintaan tarik dengan judul eksplisit, dalam perintah: "tambahkan analisis Ling".
  5. Pengelola mengoreksi konten dan bentuk — kebenaran patch saat ini, gaya, orisinalitas — dan mengomentari permintaan penarikan jika ada yang perlu diubah.
  6. Setelah digabungkan, pemindaian akan ditayangkan pada penerapan berikutnya, dan nama Anda tetap ada dalam riwayat repositori.