mirror of
https://github.com/webbukkit/dynmap.git
synced 2024-12-28 03:27:36 +01:00
Add first pass of handling for DB config.php files
This commit is contained in:
parent
023af3676b
commit
95a91d2a89
1
.gitignore
vendored
1
.gitignore
vendored
@ -9,6 +9,7 @@
|
||||
# idea
|
||||
.idea/
|
||||
|
||||
*.launch
|
||||
|
||||
# we use maven!
|
||||
/build.xml
|
||||
|
@ -123,6 +123,7 @@ public class DynmapCore implements DynmapCommonAPI {
|
||||
private int perTickLimit = 50; // 50 ms
|
||||
private boolean dumpMissing = false;
|
||||
private static boolean migrate_chunks = false;
|
||||
public boolean isInternalWebServerDisabled = false;
|
||||
|
||||
private int config_hashcode; /* Used to signal need to reload web configuration (world changes, config update, etc) */
|
||||
private int fullrenderplayerlimit; /* Number of online players that will cause fullrender processing to pause */
|
||||
@ -530,6 +531,8 @@ public class DynmapCore implements DynmapCommonAPI {
|
||||
updateplayerlimit = configuration.getInteger("updateplayerlimit", 0);
|
||||
/* Load sort permission nodes */
|
||||
sortPermissionNodes = configuration.getStrings("player-sort-permission-nodes", null);
|
||||
// Check if we are disabling the internal web server (implies external)
|
||||
isInternalWebServerDisabled = configuration.getBoolean("disable-webserver", false);
|
||||
|
||||
perTickLimit = configuration.getInteger("per-tick-time-limit", 50);
|
||||
if (perTickLimit < 5) perTickLimit = 5;
|
||||
@ -594,7 +597,10 @@ public class DynmapCore implements DynmapCommonAPI {
|
||||
|
||||
loginRequired = configuration.getBoolean("login-required", false);
|
||||
|
||||
loadWebserver();
|
||||
// If not disabled, load and initialize the internal web server
|
||||
if (!isInternalWebServerDisabled) {
|
||||
loadWebserver();
|
||||
}
|
||||
|
||||
enabledTriggers.clear();
|
||||
List<String> triggers = configuration.getStrings("render-triggers", new ArrayList<String>());
|
||||
@ -616,26 +622,26 @@ public class DynmapCore implements DynmapCommonAPI {
|
||||
}
|
||||
Log.verboseinfo("Loaded " + componentManager.components.size() + " components.");
|
||||
|
||||
if (!configuration.getBoolean("disable-webserver", false)) {
|
||||
if (!isInternalWebServerDisabled) { // If internal not disabled, we should be using it and not external
|
||||
startWebserver();
|
||||
if(!componentManager.isLoaded(InternalClientUpdateComponent.class)) {
|
||||
if (!componentManager.isLoaded(InternalClientUpdateComponent.class)) {
|
||||
Log.warning("Using internal server, but " + InternalClientUpdateComponent.class.toString() + " is DISABLED!");
|
||||
webserverCompConfigWarn = true;
|
||||
}
|
||||
if(componentManager.isLoaded(JsonFileClientUpdateComponent.class)) {
|
||||
if (componentManager.isLoaded(JsonFileClientUpdateComponent.class)) {
|
||||
Log.warning("Using internal server, but " + JsonFileClientUpdateComponent.class.toString() + " is ENABLED!");
|
||||
}
|
||||
}
|
||||
else {
|
||||
if(componentManager.isLoaded(InternalClientUpdateComponent.class)) {
|
||||
if (componentManager.isLoaded(InternalClientUpdateComponent.class)) {
|
||||
Log.warning("Using external server, but " + InternalClientUpdateComponent.class.toString() + " is ENABLED!");
|
||||
}
|
||||
if(!componentManager.isLoaded(JsonFileClientUpdateComponent.class)) {
|
||||
if (!componentManager.isLoaded(JsonFileClientUpdateComponent.class)) {
|
||||
Log.warning("Using external server, but " + JsonFileClientUpdateComponent.class.toString() + " is DISABLED!");
|
||||
webserverCompConfigWarn = true;
|
||||
}
|
||||
}
|
||||
if(webserverCompConfigWarn){
|
||||
if (webserverCompConfigWarn) {
|
||||
Log.warning("If the website is missing files or not loading/updating, this might be why.");
|
||||
Log.warning("For more info, read this: " + CompConfigWiki);
|
||||
webserverCompConfigWarn = false;
|
||||
|
@ -195,7 +195,7 @@ public abstract class MapStorage {
|
||||
*/
|
||||
public abstract String getMarkersURI(boolean login_enabled);
|
||||
/**
|
||||
* URI to use for loading tiles (for external web server)
|
||||
* URI to use for loading tiles (for external web server only)
|
||||
*
|
||||
* @param login_enabled - selects based on login security enabled
|
||||
* @return URI
|
||||
@ -210,14 +210,14 @@ public abstract class MapStorage {
|
||||
return login_enabled;
|
||||
}
|
||||
/**
|
||||
* Get sendmessage URI
|
||||
* Get sendmessage URI (for external web server only)
|
||||
* @return URI
|
||||
*/
|
||||
public String getSendMessageURI() {
|
||||
return "standalone/sendmessage.php";
|
||||
}
|
||||
/**
|
||||
* URI to use for loading configuration JSON files (for external web server)
|
||||
* URI to use for loading configuration JSON files (for external web server only)
|
||||
* @param login_enabled - selects based on login security enabled
|
||||
* @return URI
|
||||
*/
|
||||
@ -225,7 +225,7 @@ public abstract class MapStorage {
|
||||
return login_enabled?"standalone/configuration.php":"standalone/dynmap_config.json?_={timestamp}";
|
||||
}
|
||||
/**
|
||||
* URI to use for loading update JSON files (for external web server)
|
||||
* URI to use for loading update JSON files (for external web server only)
|
||||
* @param login_enabled - selects based on login security enabled
|
||||
* @return URI
|
||||
*/
|
||||
@ -445,9 +445,11 @@ public abstract class MapStorage {
|
||||
public boolean wrapStandalonePHP() {
|
||||
return true;
|
||||
}
|
||||
// For external web server only
|
||||
public String getStandaloneLoginURI() {
|
||||
return "standalone/login.php";
|
||||
}
|
||||
// For external web server only
|
||||
public String getStandaloneRegisterURI() {
|
||||
return "standalone/register.php";
|
||||
}
|
||||
|
@ -617,11 +617,13 @@ public class FileTreeMapStorage extends MapStorage {
|
||||
}
|
||||
|
||||
@Override
|
||||
// For external web server only
|
||||
public String getMarkersURI(boolean login_enabled) {
|
||||
return login_enabled?"standalone/markers.php?marker=":"tiles/";
|
||||
}
|
||||
|
||||
@Override
|
||||
// For external web server only
|
||||
public String getTilesURI(boolean login_enabled) {
|
||||
return login_enabled?"standalone/tiles.php?tile=":"tiles/";
|
||||
}
|
||||
|
@ -304,9 +304,14 @@ public class MariaDBMapStorage extends MapStorage {
|
||||
}
|
||||
|
||||
private boolean writeConfigPHP(DynmapCore core) {
|
||||
File cfgfile = new File(baseStandaloneDir, "MySQL_config.php");
|
||||
if (!core.isInternalWebServerDisabled) { // If using internal server
|
||||
cfgfile.delete(); // Zap file (in case we left junk from last time)
|
||||
return true;
|
||||
}
|
||||
FileWriter fw = null;
|
||||
try {
|
||||
fw = new FileWriter(new File(baseStandaloneDir, "MySQL_config.php"));
|
||||
fw = new FileWriter(cfgfile);
|
||||
fw.write("<?php\n$dbname = \'");
|
||||
fw.write(WebAuthManager.esc(database));
|
||||
fw.write("\';\n");
|
||||
@ -955,26 +960,31 @@ public class MariaDBMapStorage extends MapStorage {
|
||||
}
|
||||
|
||||
@Override
|
||||
// For external web server only
|
||||
public String getMarkersURI(boolean login_enabled) {
|
||||
return "standalone/MySQL_markers.php?marker=";
|
||||
}
|
||||
|
||||
@Override
|
||||
// For external web server only
|
||||
public String getTilesURI(boolean login_enabled) {
|
||||
return "standalone/MySQL_tiles.php?tile=";
|
||||
}
|
||||
|
||||
@Override
|
||||
// For external web server only
|
||||
public String getConfigurationJSONURI(boolean login_enabled) {
|
||||
return "standalone/MySQL_configuration.php"; // ?serverid={serverid}";
|
||||
}
|
||||
|
||||
@Override
|
||||
// For external web server only
|
||||
public String getUpdateJSONURI(boolean login_enabled) {
|
||||
return "standalone/MySQL_update.php?world={world}&ts={timestamp}"; // &serverid={serverid}";
|
||||
}
|
||||
|
||||
@Override
|
||||
// For external web server only
|
||||
public String getSendMessageURI() {
|
||||
return "standalone/MySQL_sendmessage.php";
|
||||
}
|
||||
@ -1066,16 +1076,17 @@ public class MariaDBMapStorage extends MapStorage {
|
||||
return false;
|
||||
}
|
||||
@Override
|
||||
// For external web server only
|
||||
public String getStandaloneLoginURI() {
|
||||
return "standalone/MySQL_login.php";
|
||||
}
|
||||
@Override
|
||||
// For external web server only
|
||||
public String getStandaloneRegisterURI() {
|
||||
return "standalone/MySQL_register.php";
|
||||
}
|
||||
@Override
|
||||
public void setLoginEnabled(DynmapCore core) {
|
||||
writeConfigPHP(core);
|
||||
writeConfigPHP(core);
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -306,9 +306,14 @@ public class MySQLMapStorage extends MapStorage {
|
||||
}
|
||||
|
||||
private boolean writeConfigPHP(DynmapCore core) {
|
||||
File cfgfile = new File(baseStandaloneDir, "MySQL_config.php");
|
||||
if (!core.isInternalWebServerDisabled) { // If using internal server
|
||||
cfgfile.delete(); // Zap file (in case we left junk from last time)
|
||||
return true;
|
||||
}
|
||||
FileWriter fw = null;
|
||||
try {
|
||||
fw = new FileWriter(new File(baseStandaloneDir, "MySQL_config.php"));
|
||||
fw = new FileWriter(cfgfile);
|
||||
fw.write("<?php\n$dbname = \'");
|
||||
fw.write(WebAuthManager.esc(database));
|
||||
fw.write("\';\n");
|
||||
@ -956,26 +961,31 @@ public class MySQLMapStorage extends MapStorage {
|
||||
}
|
||||
|
||||
@Override
|
||||
// External web server only
|
||||
public String getMarkersURI(boolean login_enabled) {
|
||||
return "standalone/MySQL_markers.php?marker=";
|
||||
}
|
||||
|
||||
@Override
|
||||
// External web server only
|
||||
public String getTilesURI(boolean login_enabled) {
|
||||
return "standalone/MySQL_tiles.php?tile=";
|
||||
}
|
||||
|
||||
@Override
|
||||
// External web server only
|
||||
public String getConfigurationJSONURI(boolean login_enabled) {
|
||||
return "standalone/MySQL_configuration.php"; // ?serverid={serverid}";
|
||||
}
|
||||
|
||||
@Override
|
||||
// External web server only
|
||||
public String getUpdateJSONURI(boolean login_enabled) {
|
||||
return "standalone/MySQL_update.php?world={world}&ts={timestamp}"; // &serverid={serverid}";
|
||||
}
|
||||
|
||||
@Override
|
||||
// External web server only
|
||||
public String getSendMessageURI() {
|
||||
return "standalone/MySQL_sendmessage.php";
|
||||
}
|
||||
@ -1066,10 +1076,12 @@ public class MySQLMapStorage extends MapStorage {
|
||||
return false;
|
||||
}
|
||||
@Override
|
||||
// External web server only
|
||||
public String getStandaloneLoginURI() {
|
||||
return "standalone/MySQL_login.php";
|
||||
}
|
||||
@Override
|
||||
// External web server only
|
||||
public String getStandaloneRegisterURI() {
|
||||
return "standalone/MySQL_register.php";
|
||||
}
|
||||
|
@ -308,9 +308,14 @@ public class PostgreSQLMapStorage extends MapStorage {
|
||||
return writeConfigPHP(core);
|
||||
}
|
||||
private boolean writeConfigPHP(DynmapCore core) {
|
||||
File cfgfile = new File(baseStandaloneDir, "PostgreSQL_config.php");
|
||||
if (!core.isInternalWebServerDisabled) { // If using internal server
|
||||
cfgfile.delete(); // Zap file (in case we left junk from last time)
|
||||
return true;
|
||||
}
|
||||
FileWriter fw = null;
|
||||
try {
|
||||
fw = new FileWriter(new File(baseStandaloneDir, "PostgreSQL_config.php"));
|
||||
fw = new FileWriter(cfgfile);
|
||||
fw.write("<?php\n$dbname = \'");
|
||||
fw.write(WebAuthManager.esc(database));
|
||||
fw.write("\';\n");
|
||||
@ -957,26 +962,31 @@ public class PostgreSQLMapStorage extends MapStorage {
|
||||
}
|
||||
|
||||
@Override
|
||||
// External web server only
|
||||
public String getMarkersURI(boolean login_enabled) {
|
||||
return "standalone/PostgreSQL_markers.php?marker=";
|
||||
}
|
||||
|
||||
@Override
|
||||
// External web server only
|
||||
public String getTilesURI(boolean login_enabled) {
|
||||
return "standalone/PostgreSQL_tiles.php?tile=";
|
||||
}
|
||||
|
||||
@Override
|
||||
// External web server only
|
||||
public String getConfigurationJSONURI(boolean login_enabled) {
|
||||
return "standalone/PostgreSQL_configuration.php"; // ?serverid={serverid}";
|
||||
}
|
||||
|
||||
@Override
|
||||
// External web server only
|
||||
public String getUpdateJSONURI(boolean login_enabled) {
|
||||
return "standalone/PostgreSQL_update.php?world={world}&ts={timestamp}"; // &serverid={serverid}";
|
||||
}
|
||||
|
||||
@Override
|
||||
// External web server only
|
||||
public String getSendMessageURI() {
|
||||
return "standalone/PostgreSQL_sendmessage.php";
|
||||
}
|
||||
@ -1067,10 +1077,12 @@ public class PostgreSQLMapStorage extends MapStorage {
|
||||
return false;
|
||||
}
|
||||
@Override
|
||||
// External web server only
|
||||
public String getStandaloneLoginURI() {
|
||||
return "standalone/PostgreSQL_login.php";
|
||||
}
|
||||
@Override
|
||||
// External web server only
|
||||
public String getStandaloneRegisterURI() {
|
||||
return "standalone/PostgreSQL_register.php";
|
||||
}
|
||||
|
@ -915,11 +915,13 @@ public class SQLiteMapStorage extends MapStorage {
|
||||
}
|
||||
|
||||
@Override
|
||||
// External web server only
|
||||
public String getMarkersURI(boolean login_enabled) {
|
||||
return "standalone/SQLite_markers.php?marker=";
|
||||
}
|
||||
|
||||
@Override
|
||||
// External web server only
|
||||
public String getTilesURI(boolean login_enabled) {
|
||||
return "standalone/SQLite_tiles.php?tile=";
|
||||
}
|
||||
|
1
forge-1.16.2/.gitignore
vendored
1
forge-1.16.2/.gitignore
vendored
@ -1 +1,2 @@
|
||||
/build/
|
||||
/bin
|
||||
|
@ -1,3 +0,0 @@
|
||||
public net.minecraft.world.server.ChunkManager field_219251_e # loaded chunk list
|
||||
public net.minecraft.world.server.ChunkManager field_219252_f # loaded chunk list
|
||||
public net.minecraft.world.biome.BiomeAmbience field_235206_c_ # waterColor
|
@ -1,25 +0,0 @@
|
||||
modLoader="javafml"
|
||||
loaderVersion="[32,)"
|
||||
issueTrackerURL="https://github.com/webbukkit/dynmap/issues"
|
||||
[[mods]]
|
||||
modId="dynmap"
|
||||
version="${version}"
|
||||
displayName="Dynmap"
|
||||
authors="mikeprimm"
|
||||
description='''
|
||||
Dynamic, Google-maps style rendered maps for your Minecraft server
|
||||
'''
|
||||
|
||||
[[dependencies.dynmap]]
|
||||
modId="forge"
|
||||
mandatory=true
|
||||
versionRange="[32,)"
|
||||
ordering="NONE"
|
||||
# Side this dependency is applied on - BOTH, CLIENT or SERVER
|
||||
side="SERVER"
|
||||
[[dependencies.dynmap]]
|
||||
modId="minecraft"
|
||||
mandatory=true
|
||||
versionRange="[1.16.1]"
|
||||
ordering="NONE"
|
||||
side="SERVER"
|
@ -1,457 +0,0 @@
|
||||
# All paths in this configuration file are relative to Dynmap's data-folder: minecraft_server/dynmap/
|
||||
|
||||
# All map templates are defined in the templates directory
|
||||
# To use the HDMap very-low-res (2 ppb) map templates as world defaults, set value to vlowres
|
||||
# The definitions of these templates are in normal-vlowres.txt, nether-vlowres.txt, and the_end-vlowres.txt
|
||||
# To use the HDMap low-res (4 ppb) map templates as world defaults, set value to lowres
|
||||
# The definitions of these templates are in normal-lowres.txt, nether-lowres.txt, and the_end-lowres.txt
|
||||
# To use the HDMap hi-res (16 ppb) map templates (these can take a VERY long time for initial fullrender), set value to hires
|
||||
# The definitions of these templates are in normal-hires.txt, nether-hires.txt, and the_end-hires.txt
|
||||
# To use the HDMap low-res (4 ppb) map templates, with support for boosting resolution selectively to hi-res (16 ppb), set value to low_boost_hi
|
||||
# The definitions of these templates are in normal-low_boost_hi.txt, nether-low_boost_hi.txt, and the_end-low_boost_hi.txt
|
||||
# To use the HDMap hi-res (16 ppb) map templates, with support for boosting resolution selectively to vhi-res (32 ppb), set value to hi_boost_vhi
|
||||
# The definitions of these templates are in normal-hi_boost_vhi.txt, nether-hi_boost_vhi.txt, and the_end-hi_boost_vhi.txt
|
||||
# To use the HDMap hi-res (16 ppb) map templates, with support for boosting resolution selectively to xhi-res (64 ppb), set value to hi_boost_xhi
|
||||
# The definitions of these templates are in normal-hi_boost_xhi.txt, nether-hi_boost_xhi.txt, and the_end-hi_boost_xhi.txt
|
||||
deftemplatesuffix: hires
|
||||
|
||||
# Map storage scheme: only uncommoent one 'type' value
|
||||
# filetree: classic and default scheme: tree of files, with all map data under the directory indicated by 'tilespath' setting
|
||||
# sqlite: single SQLite database file (this can get VERY BIG), located at 'dbfile' setting (default is file dynmap.db in data directory)
|
||||
# mysql: MySQL database, at hostname:port in database, accessed via userid with password
|
||||
storage:
|
||||
# Filetree storage (standard tree of image files for maps)
|
||||
type: filetree
|
||||
# SQLite db for map storage (uses dbfile as storage location)
|
||||
#type: sqlite
|
||||
#dbfile: dynmap.db
|
||||
# MySQL DB for map storage (at 'hostname':'port' in database 'database' using user 'userid' password 'password' and table prefix 'prefix'
|
||||
#type: mysql
|
||||
#hostname: localhost
|
||||
#port: 3306
|
||||
#database: dynmap
|
||||
#userid: dynmap
|
||||
#password: dynmap
|
||||
#prefix: ""
|
||||
|
||||
components:
|
||||
- class: org.dynmap.ClientConfigurationComponent
|
||||
|
||||
- class: org.dynmap.InternalClientUpdateComponent
|
||||
sendhealth: true
|
||||
sendposition: true
|
||||
allowwebchat: true
|
||||
webchat-interval: 5
|
||||
hidewebchatip: false
|
||||
trustclientname: false
|
||||
includehiddenplayers: false
|
||||
# (optional) if true, color codes in player display names are used
|
||||
use-name-colors: false
|
||||
# (optional) if true, player login IDs will be used for web chat when their IPs match
|
||||
use-player-login-ip: true
|
||||
# (optional) if use-player-login-ip is true, setting this to true will cause chat messages not matching a known player IP to be ignored
|
||||
require-player-login-ip: false
|
||||
# (optional) block player login IDs that are banned from chatting
|
||||
block-banned-player-chat: true
|
||||
# Require login for web-to-server chat (requires login-enabled: true)
|
||||
webchat-requires-login: false
|
||||
# If set to true, users must have dynmap.webchat permission in order to chat
|
||||
webchat-permissions: false
|
||||
# Limit length of single chat messages
|
||||
chatlengthlimit: 256
|
||||
# # Optional - make players hidden when they are inside/underground/in shadows (#=light level: 0=full shadow,15=sky)
|
||||
# hideifshadow: 4
|
||||
# # Optional - make player hidden when they are under cover (#=sky light level,0=underground,15=open to sky)
|
||||
# hideifundercover: 14
|
||||
# # (Optional) if true, players that are crouching/sneaking will be hidden
|
||||
hideifsneaking: false
|
||||
# If true, player positions/status is protected (login with ID with dynmap.playermarkers.seeall permission required for info other than self)
|
||||
protected-player-info: false
|
||||
# If true, hide players with invisibility potion effects active
|
||||
hide-if-invisiblity-potion: true
|
||||
# If true, player names are not shown on map, chat, list
|
||||
hidenames: false
|
||||
#- class: org.dynmap.JsonFileClientUpdateComponent
|
||||
# writeinterval: 1
|
||||
# sendhealth: true
|
||||
# sendposition: true
|
||||
# allowwebchat: true
|
||||
# webchat-interval: 5
|
||||
# hidewebchatip: false
|
||||
# includehiddenplayers: false
|
||||
# use-name-colors: false
|
||||
# use-player-login-ip: false
|
||||
# require-player-login-ip: false
|
||||
# block-banned-player-chat: true
|
||||
# hideifshadow: 0
|
||||
# hideifundercover: 0
|
||||
# hideifsneaking: false
|
||||
# # Require login for web-to-server chat (requires login-enabled: true)
|
||||
# webchat-requires-login: false
|
||||
# # If set to true, users must have dynmap.webchat permission in order to chat
|
||||
# webchat-permissions: false
|
||||
# # Limit length of single chat messages
|
||||
# chatlengthlimit: 256
|
||||
# hide-if-invisiblity-potion: true
|
||||
# hidenames: false
|
||||
|
||||
- class: org.dynmap.SimpleWebChatComponent
|
||||
allowchat: true
|
||||
# If true, web UI users can supply name for chat using 'playername' URL parameter. 'trustclientname' must also be set true.
|
||||
allowurlname: false
|
||||
|
||||
# Note: this component is needed for the dmarker commands, and for the Marker API to be available to other plugins
|
||||
- class: org.dynmap.MarkersComponent
|
||||
type: markers
|
||||
showlabel: false
|
||||
enablesigns: false
|
||||
# Default marker set for sign markers
|
||||
default-sign-set: markers
|
||||
# (optional) add spawn point markers to standard marker layer
|
||||
showspawn: true
|
||||
spawnicon: world
|
||||
spawnlabel: "Spawn"
|
||||
# (optional) layer for showing offline player's positions (for 'maxofflinetime' minutes after logoff)
|
||||
showofflineplayers: false
|
||||
offlinelabel: "Offline"
|
||||
offlineicon: offlineuser
|
||||
offlinehidebydefault: true
|
||||
offlineminzoom: 0
|
||||
maxofflinetime: 30
|
||||
# (optional) layer for showing player's spawn beds
|
||||
showspawnbeds: false
|
||||
spawnbedlabel: "Spawn Beds"
|
||||
spawnbedicon: bed
|
||||
spawnbedhidebydefault: true
|
||||
spawnbedminzoom: 0
|
||||
spawnbedformat: "%name%'s bed"
|
||||
# (optional) Show world border (vanilla 1.8+)
|
||||
showworldborder: true
|
||||
worldborderlabel: "Border"
|
||||
|
||||
- class: org.dynmap.ClientComponent
|
||||
type: chat
|
||||
allowurlname: false
|
||||
- class: org.dynmap.ClientComponent
|
||||
type: chatballoon
|
||||
focuschatballoons: false
|
||||
- class: org.dynmap.ClientComponent
|
||||
type: chatbox
|
||||
showplayerfaces: true
|
||||
messagettl: 5
|
||||
# Optional: set number of lines in scrollable message history: if set, messagettl is not used to age out messages
|
||||
#scrollback: 100
|
||||
# Optional: set maximum number of lines visible for chatbox
|
||||
#visiblelines: 10
|
||||
# Optional: send push button
|
||||
sendbutton: false
|
||||
- class: org.dynmap.ClientComponent
|
||||
type: playermarkers
|
||||
showplayerfaces: true
|
||||
showplayerhealth: true
|
||||
# If true, show player body too (only valid if showplayerfaces=true
|
||||
showplayerbody: false
|
||||
# Option to make player faces small - don't use with showplayerhealth
|
||||
smallplayerfaces: false
|
||||
# Optional - make player faces layer hidden by default
|
||||
hidebydefault: false
|
||||
# Optional - ordering priority in layer menu (low goes before high - default is 0)
|
||||
layerprio: 0
|
||||
# Optional - label for player marker layer (default is 'Players')
|
||||
label: "Players"
|
||||
|
||||
#- class: org.dynmap.ClientComponent
|
||||
# type: digitalclock
|
||||
- class: org.dynmap.ClientComponent
|
||||
type: link
|
||||
|
||||
- class: org.dynmap.ClientComponent
|
||||
type: timeofdayclock
|
||||
showdigitalclock: true
|
||||
#showweather: true
|
||||
# Mouse pointer world coordinate display
|
||||
- class: org.dynmap.ClientComponent
|
||||
type: coord
|
||||
label: "Location"
|
||||
hidey: false
|
||||
show-mcr: false
|
||||
show-chunk: false
|
||||
|
||||
# Note: more than one logo component can be defined
|
||||
#- class: org.dynmap.ClientComponent
|
||||
# type: logo
|
||||
# text: "Dynmap"
|
||||
# #logourl: "images/block_surface.png"
|
||||
# linkurl: "http://forums.bukkit.org/threads/dynmap.489/"
|
||||
# # Valid positions: top-left, top-right, bottom-left, bottom-right
|
||||
# position: bottom-right
|
||||
|
||||
#- class: org.dynmap.ClientComponent
|
||||
# type: inactive
|
||||
# timeout: 1800 # in seconds (1800 seconds = 30 minutes)
|
||||
# redirecturl: inactive.html
|
||||
# #showmessage: 'You were inactive for too long.'
|
||||
|
||||
#- class: org.dynmap.TestComponent
|
||||
# stuff: "This is some configuration-value"
|
||||
|
||||
# Treat hiddenplayers.txt as a whitelist for players to be shown on the map? (Default false)
|
||||
display-whitelist: false
|
||||
|
||||
# How often a tile gets rendered (in seconds).
|
||||
renderinterval: 1
|
||||
|
||||
# How many tiles on update queue before accelerate render interval
|
||||
renderacceleratethreshold: 60
|
||||
|
||||
# How often to render tiles when backlog is above renderacceleratethreshold
|
||||
renderaccelerateinterval: 0.2
|
||||
|
||||
# How many update tiles to work on at once (if not defined, default is 1/2 the number of cores)
|
||||
tiles-rendered-at-once: 2
|
||||
|
||||
# If true, use normal priority threads for rendering (versus low priority) - this can keep rendering
|
||||
# from starving on busy Windows boxes (Linux JVMs pretty much ignore thread priority), but may result
|
||||
# in more competition for CPU resources with other processes
|
||||
usenormalthreadpriority: true
|
||||
|
||||
# Save and restore pending tile renders - prevents their loss on server shutdown or /reload
|
||||
saverestorepending: true
|
||||
|
||||
# Save period for pending jobs (in seconds): periodic saving for crash recovery of jobs
|
||||
save-pending-period: 900
|
||||
|
||||
# Zoom-out tile update period - how often to scan for and process tile updates into zoom-out tiles (in seconds)
|
||||
zoomoutperiod: 30
|
||||
|
||||
# Control whether zoom out tiles are validated on startup (can be needed if zoomout processing is interrupted, but can be expensive on large maps)
|
||||
initial-zoomout-validate: true
|
||||
|
||||
# Default delay on processing of updated tiles, in seconds. This can reduce potentially expensive re-rendering
|
||||
# of frequently updated tiles (such as due to machines, pistons, quarries or other automation). Values can
|
||||
# also be set on individual worlds and individual maps.
|
||||
tileupdatedelay: 30
|
||||
|
||||
# Tile hashing is used to minimize tile file updates when no changes have occurred - set to false to disable
|
||||
enabletilehash: true
|
||||
|
||||
# Optional - hide ores: render as normal stone (so that they aren't revealed by maps)
|
||||
#hideores: true
|
||||
|
||||
# Optional - enabled BetterGrass style rendering of grass and snow block sides
|
||||
#better-grass: true
|
||||
|
||||
# Optional - enable smooth lighting by default on all maps supporting it (can be set per map as lighting option)
|
||||
smooth-lighting: true
|
||||
|
||||
# Optional - use world provider lighting table (good for custom worlds with custom lighting curves, like nether)
|
||||
# false=classic Dynmap lighting curve
|
||||
use-brightness-table: true
|
||||
|
||||
# Optional - render specific block names using the textures and models of another block name: can be used to hide/disguise specific
|
||||
# blocks (e.g. make ores look like stone, hide chests) or to provide simple support for rendering unsupported custom blocks
|
||||
block-alias:
|
||||
# "minecraft:quartz_ore": "stone"
|
||||
# "diamond_ore": "coal_ore"
|
||||
|
||||
# Default image format for HDMaps (png, jpg, jpg-q75, jpg-q80, jpg-q85, jpg-q90, jpg-q95, jpg-q100)
|
||||
# Has no effect on maps with explicit format settings
|
||||
image-format: jpg-q90
|
||||
|
||||
# use-generated-textures: if true, use generated textures (same as client); false is static water/lava textures
|
||||
# correct-water-lighting: if true, use corrected water lighting (same as client); false is legacy water (darker)
|
||||
# transparent-leaves: if true, leaves are transparent (lighting-wise): false is needed for some Spout versions that break lighting on leaf blocks
|
||||
use-generated-textures: true
|
||||
correct-water-lighting: true
|
||||
transparent-leaves: true
|
||||
|
||||
# ctm-support: if true, Connected Texture Mod (CTM) in texture packs is enabled (default)
|
||||
ctm-support: true
|
||||
# custom-colors-support: if true, Custom Colors in texture packs is enabled (default)
|
||||
custom-colors-support: true
|
||||
|
||||
# Control loading of player faces (if set to false, skins are never fetched)
|
||||
#fetchskins: false
|
||||
|
||||
# Control updating of player faces, once loaded (if faces are being managed by other apps or manually)
|
||||
#refreshskins: false
|
||||
|
||||
# Customize URL used for fetching player skins (%player% is macro for name)
|
||||
skin-url: "http://skins.minecraft.net/MinecraftSkins/%player%.png"
|
||||
|
||||
# Control behavior for new (1.0+) compass orientation (sunrise moved 90 degrees: east is now what used to be south)
|
||||
# default is 'newrose' (preserve pre-1.0 maps, rotate rose)
|
||||
# 'newnorth' is used to rotate maps and rose (requires fullrender of any HDMap map - same as 'newrose' for FlatMap or KzedMap)
|
||||
compass-mode: newnorth
|
||||
|
||||
# Triggers for automatic updates : blockupdate-with-id is debug for breaking down updates by ID:meta
|
||||
# To disable, set just 'none' and comment/delete the rest
|
||||
render-triggers:
|
||||
- blockupdate
|
||||
#- blockupdate-with-id
|
||||
#- lightingupdate
|
||||
- chunkpopulate
|
||||
- chunkgenerate
|
||||
#- none
|
||||
|
||||
# Title for the web page - if not specified, defaults to the server's name (unless it is the default of 'Unknown Server')
|
||||
#webpage-title: "My Awesome Server Map"
|
||||
|
||||
# The path where the tile-files are placed.
|
||||
tilespath: web/tiles
|
||||
|
||||
# The path where the web-files are located.
|
||||
webpath: web
|
||||
|
||||
# The path were the /dynmapexp command exports OBJ ZIP files
|
||||
exportpath: export
|
||||
|
||||
# The network-interface the webserver will bind to (0.0.0.0 for all interfaces, 127.0.0.1 for only local access).
|
||||
# If not set, uses same setting as server in server.properties (or 0.0.0.0 if not specified)
|
||||
#webserver-bindaddress: 0.0.0.0
|
||||
|
||||
# The TCP-port the webserver will listen on.
|
||||
webserver-port: 8123
|
||||
|
||||
# Maximum concurrent session on internal web server - limits resources used in Bukkit server
|
||||
max-sessions: 30
|
||||
|
||||
# Disables Webserver portion of Dynmap (Advanced users only)
|
||||
disable-webserver: false
|
||||
|
||||
# Enable/disable having the web server allow symbolic links (true=compatible with existing code, false=more secure (default))
|
||||
allow-symlinks: true
|
||||
|
||||
# Enable login support
|
||||
login-enabled: false
|
||||
# Require login to access website (requires login-enabled: true)
|
||||
login-required: false
|
||||
|
||||
# Period between tile renders for fullrender, in seconds (non-zero to pace fullrenders, lessen CPU load)
|
||||
timesliceinterval: 0.0
|
||||
|
||||
# Maximum chunk loads per server tick (1/20th of a second) - reducing this below 90 will impact render performance, but also will reduce server thread load
|
||||
maxchunkspertick: 200
|
||||
|
||||
# Progress report interval for fullrender/radiusrender, in tiles. Must be 100 or greater
|
||||
progressloginterval: 100
|
||||
|
||||
# Parallel fullrender: if defined, number of concurrent threads used for fullrender or radiusrender
|
||||
# Note: setting this will result in much more intensive CPU use, some additional memory use. Caution should be used when
|
||||
# setting this to equal or exceed the number of physical cores on the system.
|
||||
#parallelrendercnt: 4
|
||||
|
||||
# Interval the browser should poll for updates.
|
||||
updaterate: 2000
|
||||
|
||||
# If nonzero, server will pause fullrender/radiusrender processing when 'fullrenderplayerlimit' or more users are logged in
|
||||
fullrenderplayerlimit: 0
|
||||
# If nonzero, server will pause update render processing when 'updateplayerlimit' or more users are logged in
|
||||
updateplayerlimit: 0
|
||||
# Target limit on server thread use - msec per tick
|
||||
per-tick-time-limit: 50
|
||||
# If TPS of server is below this setting, update renders processing is paused
|
||||
update-min-tps: 18.0
|
||||
# If TPS of server is below this setting, full/radius renders processing is paused
|
||||
fullrender-min-tps: 18.0
|
||||
# If TPS of server is below this setting, zoom out processing is paused
|
||||
zoomout-min-tps: 18.0
|
||||
|
||||
showplayerfacesinmenu: true
|
||||
|
||||
# Control whether players that are hidden or not on current map are grayed out (true=yes)
|
||||
grayplayerswhenhidden: true
|
||||
|
||||
# Set sidebaropened: 'true' to pin menu sidebar opened permanently, 'pinned' to default the sidebar to pinned, but allow it to unpin
|
||||
#sidebaropened: true
|
||||
|
||||
# Customized HTTP response headers - add 'id: value' pairs to all HTTP response headers (internal web server only)
|
||||
#http-response-headers:
|
||||
# Access-Control-Allow-Origin: "my-domain.com"
|
||||
# X-Custom-Header-Of-Mine: "MyHeaderValue"
|
||||
|
||||
# Trusted proxies for web server - which proxy addresses are trusted to supply valid X-Forwarded-For fields
|
||||
trusted-proxies:
|
||||
- "127.0.0.1"
|
||||
- "0:0:0:0:0:0:0:1"
|
||||
|
||||
joinmessage: "%playername% joined"
|
||||
quitmessage: "%playername% quit"
|
||||
spammessage: "You may only chat once every %interval% seconds."
|
||||
# format for messages from web: %playername% substitutes sender ID (typically IP), %message% includes text
|
||||
webmsgformat: "&color;2[WEB] %playername%: &color;f%message%"
|
||||
|
||||
# Control whether layer control is presented on the UI (default is true)
|
||||
showlayercontrol: true
|
||||
|
||||
# Enable checking for banned IPs via banned-ips.txt (internal web server only)
|
||||
check-banned-ips: true
|
||||
|
||||
# Default selection when map page is loaded
|
||||
defaultzoom: 0
|
||||
defaultworld: world
|
||||
defaultmap: flat
|
||||
# (optional) Zoom level and map to switch to when following a player, if possible
|
||||
#followzoom: 3
|
||||
#followmap: surface
|
||||
|
||||
# If true, make persistent record of IP addresses used by player logins, to support web IP to player matching
|
||||
persist-ids-by-ip: true
|
||||
|
||||
# If true, map text to cyrillic
|
||||
cyrillic-support: false
|
||||
|
||||
# Messages to customize
|
||||
msg:
|
||||
maptypes: "Map Types"
|
||||
players: "Players"
|
||||
chatrequireslogin: "Chat Requires Login"
|
||||
chatnotallowed: "You are not permitted to send chat messages"
|
||||
hiddennamejoin: "Player joined"
|
||||
hiddennamequit: "Player quit"
|
||||
|
||||
# URL for client configuration (only need to be tailored for proxies or other non-standard configurations)
|
||||
url:
|
||||
# configuration URL
|
||||
#configuration: "up/configuration"
|
||||
# update URL
|
||||
#update: "up/world/{world}/{timestamp}"
|
||||
# sendmessage URL
|
||||
#sendmessage: "up/sendmessage"
|
||||
# login URL
|
||||
#login: "up/login"
|
||||
# register URL
|
||||
#register: "up/register"
|
||||
# tiles base URL
|
||||
#tiles: "tiles/"
|
||||
# markers base URL
|
||||
#markers: "tiles/"
|
||||
# Snapshot cache size, in chunks
|
||||
snapshotcachesize: 500
|
||||
# Snapshot cache uses soft references (true), else weak references (false)
|
||||
soft-ref-cache: true
|
||||
|
||||
# Player enter/exit title messages for map markers
|
||||
#
|
||||
# Processing period - how often to check player positions vs markers - default is 1000ms (1 second)
|
||||
#enterexitperiod: 1000
|
||||
# Title message fade in time, in ticks (0.05 second intervals) - default is 10 (1/2 second)
|
||||
#titleFadeIn: 10
|
||||
# Title message stay time, in ticks (0.05 second intervals) - default is 70 (3.5 seconds)
|
||||
#titleStay: 70
|
||||
# Title message fade out time, in ticks (0.05 seocnd intervals) - default is 20 (1 second)
|
||||
#titleFadeOut: 20
|
||||
# Enter/exit messages use on screen titles (true - default), if false chat messages are sent instead
|
||||
#enterexitUseTitle: true
|
||||
# Set true if new enter messages should supercede pending exit messages (vs being queued in order), default false
|
||||
#enterReplacesExits: true
|
||||
|
||||
# Set to true to enable verbose startup messages - can help with debugging map configuration problems
|
||||
# Set to false for a much quieter startup log
|
||||
verbose: false
|
||||
|
||||
# Enables debugging.
|
||||
#debuggers:
|
||||
# - class: org.dynmap.debug.LogDebugger
|
||||
# Debug: dump blocks missing render data
|
||||
dump-missing-blocks: false
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1,6 +0,0 @@
|
||||
{
|
||||
"pack": {
|
||||
"description": "Dynmap resources",
|
||||
"pack_format": 4
|
||||
}
|
||||
}
|
@ -1,27 +0,0 @@
|
||||
#
|
||||
# Sample permissions.yml for dynmap - trivial, flat-file based permissions for dynmap features
|
||||
# To use, copy this file to dynmap/permissions.yml, and edit appropriate. File is YAML format.
|
||||
#
|
||||
# All operators have full permissions to all functions.
|
||||
# All users receive the permissions under the 'defaultuser' section
|
||||
# Specific users can be given more permissions by defining a section with their name containing their permisssions
|
||||
# All permissions correspond to those documented here (https://github.com/webbukkit/dynmap/wiki/Permissions), but
|
||||
# do NOT have the 'dynmap.' prefix when used here (e.g. 'dynmap.fullrender' permission is just 'fullrender' here).
|
||||
#
|
||||
defaultuser:
|
||||
- render
|
||||
- show.self
|
||||
- hide.self
|
||||
- sendtoweb
|
||||
- stats
|
||||
- marker.list
|
||||
- marker.listsets
|
||||
- marker.icons
|
||||
- webregister
|
||||
- webchat
|
||||
#- marker.sign
|
||||
|
||||
#playername1:
|
||||
# - fullrender
|
||||
# - cancelrender
|
||||
# - radiusrender
|
1
forge-1.16.3/.gitignore
vendored
1
forge-1.16.3/.gitignore
vendored
@ -1 +1,2 @@
|
||||
/build/
|
||||
/bin/
|
||||
|
Loading…
Reference in New Issue
Block a user