- Регистрация
- 27.04.2024
- Сообщения
- 28
- Реакции
- 2
- Баллы
- 3
У кого возникли трудности/ошибки при создании/сборке/запуске проекта, используйте подробную инструкцию ниже!
Для начала создать папку с проектом под названием Project и открыть её в VS Code.
Все последующие команды будут вводиться в консоль из текущей директории проекта, а также не забываем про "Запустить от имени администратора"!!!
Например:
Инициализация package.json в директории проекта Project
Скрипты (и не только) вставить (а что-то с заменой) в Project\package.json
ЕСЛИ ОШИБКА ПРИ ВЫПОЛНЕНИИ 'ALTV-SRV INSTALL …'
Установка зависимостей
Для использования PostgreSQL
или MySQL
ОПИСАНИЕ КОМАНД
Эта команда использует NPM для установки нескольких пакетов и добавляет их как зависимости разработки (флаг -D) в проект.
Вот что делает каждый пакет:
@swc/cli и @swc/core - это компиляторы TypeScript / JavaScript, которые стремятся быть быстрее других популярных компиляторов, таких как Babel или сам TypeScript.
altv-pkg - пакет для создания и управления ресурсами сервера для многопользовательской игровой серверной платформы Alt:V.
nodemon - инструмент, который автоматически перезапускает приложение Node.js при каждом изменении файлов в проекте.
rimraf - инструмент для удаления файлов и каталогов, аналогичный команде Unix rm -rf.
typescript - популярный язык, добавляющий статическую типизацию в JavaScript.
typeorm - популярная библиотека Object Relational Mapping (ORM) для TypeScript и JavaScript.
@altv/types-client, @altv/types-natives, @altv/types-server, @altv/types-shared и @altv/types-webview - это определения типов для платформы многопользовательского игрового сервера Alt:V. Эти пакеты определяют типы функций и объектов, которые могут быть использованы в скриптах Alt:V.
Эта команда устанавливает пакет pg с помощью NPM. pg - это популярный пакет Node.js для работы с базами данных PostgreSQL. После установки этот пакет можно использовать для выполнения различных операций, таких как подключение к базе данных, выполнение SQL-запросов и т.д.
Создать файл конфигурации Project/.swcrc
Cоздать файл конфигурации Project/tsconfig.json (C РАСШИРЕНИЕМ .cfg МОЖЕТ НЕ ЗАРАБОТАТЬ TypeScript!!!)
Скопировать в Project/server.cfg
Создание директорий и файлов в папке Project
Файл конфигураций Project/src/core/resource.cfg
Добавить в файл конфигураций altv.toml в директории клиента Alt:V
(ЧТОБЫ МОЖНО БЫЛО ИСПОЛЬЗОВАТЬ КОМАНДУ reconnect В КОНСОЛИ ALT:V (КЛАВИША [F8])
Для начала создать папку с проектом под названием Project и открыть её в VS Code.
Все последующие команды будут вводиться в консоль из текущей директории проекта, а также не забываем про "Запустить от имени администратора"!!!
Например:
Код:
C:\Users\User\Desktop\Project> ваша_команда_будет_тут
Код:
npm init -y
Код:
"type": "module", "scripts": { "clean": "rimraf ./resources", "update": "altv-pkg d release", "build": "npm run clean && swc ./src -d ./resources --copy-files --only /*.ts --quiet", "dev": "nodemon --watch \\"./src/\\" --ext \\"ts\\" --exec \\"npm run build && altv-server.exe\\"" }
При попытке запустить сервер (файлы JavaScript), использующий синтаксис модулей ES, с помощью Node.js может возникнуть ошибка.
Чтобы не допустить этого, вам нужно либо установить "type": "module" в вашем файле package.json, или использовать расширение .mjs для вашего файла.
В противном случае Node.js будет рассматривать ваш файл как модуль CommonJS и выдаст синтаксическую ошибку, когда встретит оператор import!!!
Установка стартовой оболочки сервера
Чтобы не допустить этого, вам нужно либо установить "type": "module" в вашем файле package.json, или использовать расширение .mjs для вашего файла.
В противном случае Node.js будет рассматривать ваш файл как модуль CommonJS и выдаст синтаксическую ошибку, когда встретит оператор import!!!
Установка стартовой оболочки сервера
Код:
npm i -g altv-srv
Эта команда устанавливает пакет altv-srv глобально с помощью NPM (Node Package Manager).
Флаг -g указывает на то, что пакет должен быть установлен глобально, то есть будет доступен в любой директории
Флаг -g указывает на то, что пакет должен быть установлен глобально, то есть будет доступен в любой директории
Код:
altv-srv install release -d . -m server data js -o
После установки команда запускает пакет altv-srv для установки релизной версии игрового сервера Alt:V в текущий каталог (-d .). Флаг -m указывает, какие модули устанавливать, в данном случае server, data и js.
Флаг -o указывает, что операция должна перезаписать все существующие файлы.
Флаг -o указывает, что операция должна перезаписать все существующие файлы.
ЕСЛИ ОШИБКА ПРИ ВЫПОЛНЕНИИ 'ALTV-SRV INSTALL …'
Пример ошибки:
Исправление ошибки:
1. Откройте консоль PowerShell от имени администратора.
2. Выполните следующую команду, чтобы проверить текущую политику выполнения:
Эта команда выведет текущую политику выполнения для PowerShell.
3. Если политика выполнения установлена на Restricted, что является значением по умолчанию, вам необходимо изменить его, чтобы разрешить выполнение сценариев. Это можно сделать, выполнив следующую команду:
Эта команда устанавливает политику выполнения на RemoteSigned, что позволяет запускать локально созданные сценарии без требования цифровой подписи, но требует цифровой подписи для всех сценариев, загруженных из интернета.
4. После установки политики выполнения попробуйте снова запустить команду altv-srv и проверьте, решена ли проблема.
Код:
altv-srv install release -d . -m server data js -o altv-srv : Невозможно загрузить файл C:\Users\User\AppData\Roaming\npm\altv-srv.ps1, так как выполнение сценариев отключено в этой системе. Для получения дополнительных сведений см. about_Execution_Policies по адресу https:/go.microsoft.com/fwlink/?LinkID=135170. строка:1 знак:1 - altv-srv install release -d . -m server data js -o - `+ CategoryInfo : Ошибка безопасности: (:) [], PSSecurityException + FullyQualifiedErrorId : UnauthorizedAccess`
1. Откройте консоль PowerShell от имени администратора.
2. Выполните следующую команду, чтобы проверить текущую политику выполнения:
Код:
Get-ExecutionPolicy
3. Если политика выполнения установлена на Restricted, что является значением по умолчанию, вам необходимо изменить его, чтобы разрешить выполнение сценариев. Это можно сделать, выполнив следующую команду:
Код:
Set-ExecutionPolicy RemoteSigned
4. После установки политики выполнения попробуйте снова запустить команду altv-srv и проверьте, решена ли проблема.
Установка зависимостей
Код:
npm i -D @swc/cli @swc/core altv-pkg nodemon rimraf typescript typeorm @altv/types-client @altv/types-natives @altv/types-server @altv/types-shared @altv/types-webvie
Для использования PostgreSQL
Код:
npm i pg
Код:
npm i mysql
ОПИСАНИЕ КОМАНД
Код:
npm i -D @swc/cli @swc/core altv-pkg nodemon rimraf typescript typeorm @altv/types-client @altv/types-natives @altv/types-server @altv/types-shared @altv/types-webview
Эта команда использует NPM для установки нескольких пакетов и добавляет их как зависимости разработки (флаг -D) в проект.
Вот что делает каждый пакет:
@swc/cli и @swc/core - это компиляторы TypeScript / JavaScript, которые стремятся быть быстрее других популярных компиляторов, таких как Babel или сам TypeScript.
altv-pkg - пакет для создания и управления ресурсами сервера для многопользовательской игровой серверной платформы Alt:V.
nodemon - инструмент, который автоматически перезапускает приложение Node.js при каждом изменении файлов в проекте.
rimraf - инструмент для удаления файлов и каталогов, аналогичный команде Unix rm -rf.
typescript - популярный язык, добавляющий статическую типизацию в JavaScript.
typeorm - популярная библиотека Object Relational Mapping (ORM) для TypeScript и JavaScript.
@altv/types-client, @altv/types-natives, @altv/types-server, @altv/types-shared и @altv/types-webview - это определения типов для платформы многопользовательского игрового сервера Alt:V. Эти пакеты определяют типы функций и объектов, которые могут быть использованы в скриптах Alt:V.
Код:
npm i pg
Эта команда устанавливает пакет pg с помощью NPM. pg - это популярный пакет Node.js для работы с базами данных PostgreSQL. После установки этот пакет можно использовать для выполнения различных операций, таких как подключение к базе данных, выполнение SQL-запросов и т.д.
Создать файл конфигурации Project/.swcrc
Код:
{ "jsc": { "parser": { "syntax": "typescript", "dynamicImport": true, "functionBind": true, "decorators": true }, "target": "es2022", "transform": { "decoratorMetadata": true } } }
Код:
{ "compilerOptions": { "typeRoots": ["./node_modules/@types", "./node_modules/@altv"], "removeComments": true, "target": "es2022", "module": "commonjs", "moduleResolution": "node", "outDir": "./resources", "rootDir": "./src", "noEmit": true, "emitDecoratorMetadata": true, "experimentalDecorators": true, "sourceMap": true }, "include": ["src/**/*.ts"] }
Код:
name:'My awesome server', host:'127.0.0.1', port:'7788', description:'Genetared by altv-srv', players:'1024', modules:[ 'js-module', ], resources:[core], debug: true
Код:
Project └── src └── core ├── client │ └── index.ts ├── resource.cfg ├── server │ └── index.ts └── shared └── index.ts Project/src/core/server/index.ts Project/src/core/client/index.ts Project/src/core/shared/index.ts Project/src/core/resource.cfg
Код:
type: js, main: server/index.js, client-main: client/index.js, client-files: [ client/* shared/* ], deps: []
(ЧТОБЫ МОЖНО БЫЛО ИСПОЛЬЗОВАТЬ КОМАНДУ reconnect В КОНСОЛИ ALT:V (КЛАВИША [F8])
Код:
debug = true