Racelink
Шаги руководства · 01 / 08
  1. 00Перед началом
  2. 01Создайте проект
  3. 02Запустите оверлей
  4. 03Выведите живые данные
  5. 04Добавьте настройки
  6. 05Доведите вид
  7. 06Соберите и проверьте
  8. 07Опубликуйте в Мастерской
  9. 08Выпускайте обновления

// Руководство по оверлеям · 01

Создайте проект

Одна команда создаёт готовый проект с работающим оверлеем. Разберём, что она спрашивает и какие файлы появляются. Около 10 минут.

Выберите папку для проектов

Заведите одну папку, где будут жить все ваши оверлеи, например Документы\racelink-overlays. Каждый проект станет в ней отдельной папкой.

Откройте эту папку в VS Code: File → Open Folder…, затем откройте терминал — Terminal → New Terminal или Ctrl + `. Терминал сразу откроется в этой папке. Можно и без редактора: перейдите в папку командой cd в любом терминале.

Создайте проект

Выполните в терминале:

$ npm create @racelink/overlay@latest

Команда задаст несколько вопросов. Ответьте так:

  1. Ok to proceed? — npm спрашивает это только в первый раз, перед тем как скачать программу создания проектов. Нажмите y и Enter.
  2. Project name — введите My HUD. Из имени получаются папка и id оверлея my-hud (строчные буквы, цифры и дефисы), а название My HUD увидят игроки. Название потом можно поменять, id — нет.
  3. Description — описание для игроков. Можно оставить пустым и нажать Enter: подставится описание шаблона, поменяете его позже.
  4. Template — выберите 1 (vanilla-ts, TypeScript без фреймворка). По нему идёт всё руководство.

Терминал покажет примерно такое (версия и путь у вас будут свои):

Терминал
Need to install the following packages:
@racelink/create-overlay@2.9.0
Ok to proceed? (y) y

? Project name (my-overlay): My HUD
? Description (optional):
? Template:
  1) vanilla-ts  TypeScript, no framework
  2) react-ts    React
  Choose 1 or 2 (1): 1
Created My HUD in C:\Users\you\Documents\racelink-overlays\my-hud

Next steps:
  cd my-hud
  npm install
  npm run dev        # live preview; the project appears in Racelink Studio
  npm run build      # package for the Workshop

Установите зависимости

Перейдите в папку проекта и установите пакеты, от которых он зависит:

$ cd my-hud
$ npm install

npm скачает SDK Racelink, Vite и TypeScript в папку node_modules и запишет точные версии в package-lock.json. Это займёт до минуты. В конце будет строка вроде added 17 packages и found 0 vulnerabilities; строки про npm fund и предупреждения npm warn не мешают работе, ошибка выглядит как npm error.

Теперь откройте в редакторе саму папку проекта my-hud: File → Open Folder…. Дальше все команды выполняются в ней.

Что внутри проекта

racelink.overlay.json
Манифест: id, название, версия, категория, игры, размер окна и настройки. Racelink читает его первым. Подробно разберём в шаге про настройки.
index.html
Страница оверлея. В ней только пустой контейнер #root и подключение src/main.ts.
src/main.ts
Код оверлея: подключается к Racelink, рисует полосы газа и тормоза, передачу и скорость. Основная работа будет здесь.
src/style.css
Стили оверлея.
src/racelink-settings.ts
Типы и значения настроек по умолчанию. Создаётся из манифеста автоматически — не редактируйте его руками, изменения пропадут.
preview/
Картинки для страницы оверлея в Мастерской Steam. preview/preview.png — главная картинка, без неё оверлей не опубликовать. В preview/screenshots/ можно положить до 9 дополнительных картинок: игроки листают их на странице оверлея, чтобы увидеть его в работе. Пока в папке только README — картинки добавим в шаге про публикацию: их можно сделать в любом графическом редакторе, а главную ещё и снять в Racelink Studio.
package.json
Имя проекта, зависимости и команды: dev, build, validate.
vite.config.ts, tsconfig.json
Настройки Vite и TypeScript. Плагин racelinkOverlay() в vite.config.ts связывает проект с Racelink. Трогать их обычно не нужно.
README.md, AGENTS.md, CLAUDE.md
README — короткая памятка по командам. AGENTS.md и CLAUDE.md — инструкции для ИИ-ассистентов; если вы их не используете, просто не обращайте на них внимания.
node_modules/
Установленные пакеты. Не редактируйте и не публикуйте: npm install всегда создаст её заново.

Если что-то пошло не так

  • already exists and is not empty — папка с таким именем уже есть и не пуста. Введите другое имя или удалите старую папку.
  • EACCES или EPERM — нет прав на запись в эту папку. Выберите папку в своём профиле, например в «Документах».
  • ENOTFOUND, ETIMEDOUT — npm не достучался до интернета. Проверьте подключение, VPN или прокси и повторите команду.
  • Ошибка посреди npm install — удалите папку node_modules и выполните npm install ещё раз.

Что должно получиться

  • Есть папка my-hud с файлами из таблицы выше, включая src/racelink-settings.ts.
  • npm install закончился без npm error, в проекте появилась папка node_modules.
  • Папка my-hud открыта в редакторе, а терминал редактора открыт в ней.