awesome-lego-universe/mythrans-bible.md
2022-01-01 16:28:40 -05:00

14 KiB

The Mythran's Bible - A Server Operator's Guide to Darkflame Universe

So you've finally setup a server instance, created an admin account, then created additional accounts using the Account Manager. You've connected to the server using your client and everything seems to be working fine.

Now that you've reached this point, there's still a lot to know about managing and maintaining a server.

Port Forwarding

The server you're running will need to open the following ports to allow for outside access to your server|

  • 1001 - Auth Server
  • 2000 - Master Server
  • 2005 - Chat Server
  • 3000-4000 -

If you're using ufw as a firewall (most firewalled Linux systems), this can be done with:

sudo ufw allow 1001/udp
sudo ufw allow 2000/udp
sudo ufw allow 2005/udp
sudo ufw allow 3000:4000/udp

GM Levels

Game moderator levels define what console commands a given account has access to in-game. To modify a player's maximum GM level, set the gm_level column in the accounts table in the MySQL database.

Players have a max GM level and a current GM level; at any time, a player can use the /setgmlevel command to raise their current GM level up to their maximum, which grants them permissions corresponding with that level, or lower their GM level down to a lower level, or 0, which limits what commands they can execute.

A player with full GM permissions can lower themselves down to 0 to play the game as though they were a normal player, then raise their level up if they need to do something like teleport or unstuck themselves. Think of it like Minecraft; if you have permissions, you can play the game in Survival, and call /gamemode creative only when you get stuck.

There are 10 total levels, as follows:

  • 0 - Civilian: This level describes all normal players of the game.
    • Players at this level still have access some commands, see the Console Commands section below.
  • 1 - Forum Moderator: This level describes forum moderators who have very few permissions.
    • NOTICE: Players with their GM level set to this level and above may experience deviations from normal gameplay.
    • Players at this level can send any messages in chat without moderation or blacklist checking.
      • This is based on your current level, not your maximum level, so if you are currently playing as a Civilian you cannot chat without filters.
    • Players at this level and above will appear as Mythrans. This cannot be toggled at this time.
  • 2 - Junior Moderator: This level describes moderators who can help regulate chat.
    • Players at this level and above can access chat logs, kick players, and mute players.
    • Players at this level and above can teleport to specific coordinates on the map.
  • 3 - Moderator: This level describes moderators who can help deal with glitches.
    • Players at this level and above can return lost items to players.
  • 4 - Senior Moderator: This level describes moderators who can help deal with problematic players.
    • Players at this level and above can ban players.
  • 5 - Lead Moderator: This level describes moderators who are trusted to manage user-generated content.
    • Players at this level and above can approve properties.
  • 6 - Junior Developer: This level describes junior developers and members of future content teams.
    • On live servers, their GM level is reset to 0 (Civilian).
  • 7 - Inactive Developer: This level describes inactive developers with limited permissions.
  • 8 - Active Developer: This level describes players who have been granted all but the most powerful permissions.
    • Players at this level and above can spawn entities, instantly smash target players, send Mythran announcements to all players, run macros, and more.
    • NOTICE: This GM level should only be granted to trusted players.
  • 9 - Server Operator: This level describes players with full access and permissions.
    • Players at this level can shut down the server.
    • NOTICE: This GM level should only be granted to system administrators.

Console Commands

Here is a list of all console commands, grouped by required permission level. Each level also has access to the commands of the levels above them. To run one of these console comands, enter them into chat.

Values in <brackets> represent necessary parameters, values in (parens) represent optional parameters.

WORK IN PROGRESS

0 - Civilian

These commands are available to ALL normal players of the game, including newly created characters and non-moderators.

/pvp

This is a custom command added by the Darkflame Server

This command toggles a flag on the current player, which enables that player to attack, damage, and smash other players who are participating in PvP.

This system functions similarly to Terraria's PvP system; you must enable PvP in order to participate in it, and can disable it at any time.

/playanimation

This command triggers the player to play an animation with the given internal name. This can look somewhat buggy, since any player animation can be played, such as attacks that don't match your current gear, but isn't that part of the fun of it?

TODO: Add a curated list of some fun animations.

/playanim

Alias for /playanimation.

/die

This command smashes the current player, prompting them to respawn.

/resurrect

This command smashes the current player and respawns them.

TODO: How does this differ from /die?

/who

This command outputs a list of all the players in the current instance.

/ping (-l)

This commands outputs your average ping level, indicating the strength of your connection to the server. Use /ping -l to output your latest ping level rather than your average ping level.

/skip-ags

This command will check if the player has been assigned mission ID 229, and will skip it if they have.

This mission ID corresponds to the required mission in which the player must survive one minute in Avant Gardens Survival. Since this minigame can sometimes be buggy, this command will allow any player to skip the mission if needed.

/fix-stats

TODO: This command's purpose is unknown.

/requestmailcount

This command will show the You have x new messages status box at the bottom right corner of your game screen.

/instanceinfo

TODO: What does this do?

/credits

Displays information about the developers of Darkflame Universe.

/info

Displays basic information about the currently connected Darkflame Universe server.

/leave-zone

TODO: This requires clarification.

Moves the current player out of an instanced zone. Such as the Block Yard or a Minigame such as Avant Garden Survival

/join

TODO: This requires clarification.

Moves the player to a private instance.

2 - Junior Moderator

/mute (days) (hours)

Mutes the target player for the target number of days plus the target number of hours.

If no duration is specified, the mute is permanent.

/kick

Kicks the target player from the server. They can still login again.

/ban

Bans the target player permanently from the server. They cannot login again.

At this time there is no easy functionality to unban a player.

/teleport (y)

Teleports to the given X and Z coordinates. If Y is specified, the player will be teleported to that height; otherwise, the player will be teleported to the height of the terrain.

/tele

Alias for /teleport.

3 - Moderator

/mailitem

Sends an item to the mailbox of the target player.

5 - Lead Moderator

/approveproperty

Approves the currently accessed user-built property for public viewing.

8 - Active Developer

/kill

https://www.youtube.com/watch?v=dyIilW_eBjc

/speedboost

Boost the player's speed by the given amount.

TODO: Does this support decimal values or only whole numbers?

/freecam

Key Description
Q/E Rotates the camera by the X axis. Left-Right
R/F Moves the camera up and down the Y axis
W/A/S/D Moves the camera by the X / Z Axis
Mouse Rotate the camera by X / Y / Z

Toggles free camera mode.

TODO: Expand description.

/setcontrolscheme

TODO: What does this do?

/list-spawns

TODO: What does this do?

/unlock-emote

TODO: What does this do?

/setuistate

TODO: What does this do?

/toggle

TODO: What does this do?

/setinventorysize

Sets the size of the current player's inventory to the specified value.

/setinvsize

Alias for /setinventorysize.

/runmacro

Runs the specified macro at the path ./res/macros/<path>.scm.

/addmission

Forces the current player to accept the mission with the specific ID.

/completemission

Immediately completes the mission with the specific ID for the current player.

/setflag

Every player has a 12,008-bit string associated with them that contains a large number of on-off switches associated with the character's status and progress. This command enables a specific flag on the current player.

List of known flags.

/clearflag

Every player has a 12,008-bit string associated with them that contains a large number of on-off switches associated with the character's status and progress. This command disables a specific flag on the current player.

List of known flags.

/resetmission

Sets a completed mission back as active.

/playeffect

Starts playing a specific effect on the given player.

/stopeffect

Stops playing a specific effect on the given player.

/setanntitle