Comment créer un serveur Onset?

Comment créer un serveur Onset?

Dans ce guide, nous allons voir comment créer et configurer un serveur Onset. Tous les sujets sont abordés, de la config au modding (plugins/packages)!

Onset est une sandbox entièrement personnalisable. Le jeu a été conçu dès le départ pour le modding, vous pouvez utiliser des scripts (packages) provenant de la communauté ou créer votre propre contenu. Un dès grand avantage de Onset est sa simplicité, le modding repose sur des langages de programmation qui ont fait leurs preuves, à savoir le langage LUA et le combo HTML/CSS/JS pour les interfaces graphiques.

Vous l'avez compris, pour personnaliser votre serveur une fois celui-ci créé, il faudra se plonger dans la notion de package (vous pouvez voir cela comme un addon). Sachez qu'il existe également une notion de plugin dont le rôle diffère du "plugin traditionnel" que vous avez peut-être rencontré sur Minecraft par exemple. Dans Onset, les plugins (développés en C++) permettent seulement d'ajouter des fonctions, qui seront utilisables par la suite dans vos scripts LUA.

Pour créer votre serveur, rendez-vous sur la page de nos services de location de serveur Onset.

Un peu de théorie

Avant d'aller plus loin dans la création de son serveur Onset, il est important de bien comprendre la notion de package et plugin.

Les plugins

Les plugins sont des librairies développés en C++. Elles permettent d'étendre le fonctionnement des scripts LUA de nos packages, en ajoutant des fonctions qui seront accessibles dans vos packages, dans vos scripts LUA.

Un exemple de plugin est le plugin mongodb inclu dès l'installation de notre serveur. Il rajoute des fonctions permettant de communiquer avec la base de donnée mongodb dans nos scripts LUA.

Les plugins sont au format .dll sur Windows, et .so pour Linux.

Pour créer votre propre plugin, consultez notre tutoriel dédié.

Les packages

Les packages permettent d'ajouter des fonctionnalités à votre serveur. Par exemple, si vous souhaitez ajouter un nouveau gamemode, vous devrez ajouter le package de celui-ci sur votre serveur.

Ils contiennent principalement du code LUA qui peut être exécute coté client ou coté serveur et des assets (HTML / JS / CSS) pour la création des interfaces in-game.

Pour créer votre premier package, consultez notre tutoriel!

Configuration du serveur

Configuration générale

Ca y est, votre serveur a été livré ? Nous allons pouvoir passer à la configuration générale du serveur.

Elle contient des paramètres comme le nom du serveur, le mot de passe de connexion, le nombre de joueurs, etc.

Pour éditer la configuration, vous pouvez utiliser votre panel de gestion ou éditer le fichier server_config.json à la racine de votre serveur.

A noter que ce fichier contient la liste des packages et plugins qui seront chargés au démarrage du serveur.

Si vous avez besoin d'aide concernant les paramètres du fichier, consultez le tutoriel: configurer son server_config.json.

Le contenu du fichier doit être au format JSON.

Les armes

La configuration des armes qui seront accessibles sur votre serveur se fait par le fichier weapons.json. situé à la racine du serveur.

Ce fichier contient la liste des armes du serveur et leurs caractéristiques.

Vous pouvez ainsi facilement modifier le recule d'une arme par exemple ;)

Pour en savoir plus sur ce fichier, consultez le tutoriel: configuration des armes Onset.

Les packages

Chaque package doit avoir son propre dossier dans le répertoire packages  du serveur. Son nom sera défini par le nom du dossier qui le contient.

Pour activer un package, ajoutez le dans la section packages du fichier server_config.json puis redémarrez votre serveur Onset.

A chaque fois que vous allez ajouter un package sur votre serveur, celui peut nécessiter une configuration. Il n'y a pas vraiment de norme établie, leur créateur étant libre d'implémenter ce qu'il veut. Consultez toujours la documentation officielle du package que vous installez ;)

Les plugins

Les plugins sont situés dans le répertoire plugins de votre serveur.

Pour activer un plugin, ajoutez le dans la section plugins du fichier server_config.json et redémarrez le serveur.

Quelques packages

Il n'existe pour l'instant aucun site qui liste les packages de la communauté. En attendant, nous mettrons à jour la liste ci-dessous, n'hésitez pas à nous envoyer vos créations!

  • whitelist
    Package pour ajouter une whitelist pour filtrer les joueurs qui peuvent se connecter à son serveur.
    https://github.com/sdieunidou/whitelist
  • i18n
    Permet de traduire facilement les messages de son package dans la langue du joueur.
    https://github.com/sdieunidou/onset-i18n
  • godfather
    Gamemode Godfather (parrain)
    https://mtxserv.com/article/12460/onset_create_a_godfather_server

Limitations

Limitations serveur

Joueurs300
Véhicules4096
Objets100 000
NPCs4096
Pickups4096
Textes 3D4096
Portes4096
Timers2 147 483 647
Dimensions4 294 967 295

Limitations client

Sons8
Web UIs32
Timers256
Collision Triggers128
Textes GUI128

Guides Onset

Discord Hytale, Minecraft, Rust, ARK, FiveM