GithubHelp home page GithubHelp logo

rosaserver / rosaservercore Goto Github PK

View Code? Open in Web Editor NEW
4.0 2.0 13.0 428 KB

The standard implementation of RosaServer including a plugin/gamemode system.

License: MIT License

Lua 100.00%
lua subrosa rosaserver

rosaservercore's Introduction

RosaServerCore

The standard implementation of RosaServer including a plugin/gamemode system.

Requires RosaServer.

Getting Started

Configuration

Copy config.sample.yml to config.yml and modify to your heart's content.

Scripting

The easiest way to start working is to create either a plugin or a gamemode. They work the same, except only one gamemode can be enabled at a time.

Types

If you use VS Code, you can get IntelliSense working using this Lua extension.

IntelliJ IDEA also has better support, using this plugin.

All the RosaServer types/globals are laid out in .meta/template for this reason. It's also useful as documentation.

Standard Plugins

Admin

Useful commands for server administrators, with logs.

plugin.defaultConfig = {
	-- Logs admin actions in Discord rich embeds.
	webhookEnabled = false,
	webhookHost = 'https://discord.com',
	webhookPath = '/api/webhooks/xxxxxx/xxxxxx'
}

Most Notable Commands

  • /resetlua - Reset the Lua state and the game.
  • /mode <mode> - Change the enabled mode.

Moderators

  • /mod <phoneNumber/name> - Add a moderator.
  • /unmod <phoneNumber/name> - Remove a moderator.

Punishment

  • /kick <phoneNumber/name> [reason] - Kick a player.
  • /punish <phoneNumber/name> [reason] - Ban an account based on previous bans.
  • /unpunish <phoneNumber/name> [reason] - Remove a punishment from an account.
  • /ban <phoneNumber/name> <minutes> [reason] - Ban an account.
  • /unban <phoneNumber/name> [reason] - Unban an account.
  • /kill <phoneNumber/name> - Kill a player.

Spawning

  • /item <name/id> - Spawn an item.
  • /car [type] [color] - Spawn a vehicle.
  • /cash [amount] - Give yourself money.
  • /give <phoneNumber> <amount> - Give a player money.
  • /del - Delete an object you're looking at.

Teleportation

  • /find <phoneNumber/name> - Teleport to a player.
  • /fetch <phoneNumber/name> - Teleport a player to you.
  • /hide - Teleport to an inaccessible room.

Utility

  • /message <message> - Announce a message.
  • /say <message> - Announce a message prepended by (Moderator).
  • /name <name> - Set the server name.
  • /time <hour/hour:minute> - Set the solar time.
  • /pos - Get your current position.
  • /skip - Skip the round timer.
  • /who <name> - Search players by name.

Warnings

  • /warn <phoneNumber/name> <reason> - Warn a player.
  • /warned - Acknowledge a warning.

Ban Messages

Adds more useful ban messages.

plugin.defaultConfig = {
	formatString = 'You are still banned for %im!',
	permaFormatString = 'You are permanently banned!'
}

Console Commands

Adds some useful console commands.

Most Notable Commands

  • eval <code> - Evaluate a Lua string.
  • list - List all current players.
  • listplugins - List all plugins.
  • enableplugin <plugin> - Enable a plugin (persists after a restart).
  • disableplugin <plugin> - Disable a plugin (persists after a restart).
  • reloadplugin <plugin> - Reload a plugin.
  • reloadconfig - Reload the configuration file.
  • listbans - List all current bans.

Help

Adds the /help command.

Logs

Logs a bunch of useful events in the console and in daily files.

plugin.defaultConfig = {
	-- Writes log lines in Discord code blocks.
	webhookEnabled = false,
	webhookHost = 'https://discord.com',
	webhookPath = '/api/webhooks/xxxxxx/xxxxxx'
}

Short Chat

Rejects very wide chat messages.

Shutdown

Adds the /shutdown [minutes/"now"] command.

Title Info

Adds useful information to the console window title.

plugin.defaultConfig = {
	updateSeconds = 10
}

Also, adds the /tps command.

Web Uploader

Streams player info to a web server.

plugin.defaultConfig = {
	host = 'https://oxs.international',
	path = '/api/v1/players',
	-- Seconds allowed between requests even if nothing has changed (default 10 min)
	maximumWaitTime = 10 * 60
}

Where

Locates players relative to streets.

Most Notable Commands

  • /where <phoneNumber/name> - Locate a player.

Whitelist

Only let in certain players.

plugin.defaultConfig = {
	-- How many people can be let in regardless of if they're whitelisted
	maxPublicSlots = 0
}

Most Notable Commands

  • listwhitelist - List all whitelisted players.
  • /whitelist <phoneNumber> - Add a player to the whitelist.
  • /unwhitelist <phoneNumber> - Remove a player from the whitelist.

rosaservercore's People

Contributors

jdbool avatar noche-x avatar ol1vver avatar sammy-0 avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

rosaservercore's Issues

Seg Fault

Tried to use RosaServer stuff
Have RosaServer and RosaServerCore
Stuff from RosaServer Compiled fine
running subrosadedicated.x64 opens fine alone
Running the way detailed on the RosaServerCore readme alwas results in a Segmentation Fault

Screenshot (100)

Lack of Documentation

There is no documentation on hook types for plugins; not even any code available that uses them. Are they in the decompiled game code or something? Having that reference seems like an integral component in developing with this api.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.