diff --git a/DynmapCore/src/main/java/org/dynmap/DynmapMapCommands.java b/DynmapCore/src/main/java/org/dynmap/DynmapMapCommands.java index 7130898a..70363d18 100644 --- a/DynmapCore/src/main/java/org/dynmap/DynmapMapCommands.java +++ b/DynmapCore/src/main/java/org/dynmap/DynmapMapCommands.java @@ -90,6 +90,7 @@ public class DynmapMapCommands { mapSetArgs.put("mapzoomin", emptySupplier); mapSetArgs.put("mapzoomout", emptySupplier); mapSetArgs.put("boostzoom", emptySupplier); + mapSetArgs.put("tilescale", emptySupplier); mapSetArgs.put("tileupdatedelay", emptySupplier); tabCompletions = new HashMap<>(); @@ -695,7 +696,7 @@ public class DynmapMapCommands { sb.append(", lighting=").append(hdmt.getLighting().getName()).append(", mapzoomin=").append(hdmt.getMapZoomIn()).append(", mapzoomout=").append(hdmt.getMapZoomOutLevels()); sb.append(", img-format=").append(hdmt.getImageFormatSetting()).append(", icon=").append(hdmt.getIcon()); sb.append(", append-to-world=").append(hdmt.getAppendToWorld()).append(", boostzoom=").append(hdmt.getBoostZoom()); - sb.append(", protected=").append(hdmt.isProtected()); + sb.append(", protected=").append(hdmt.isProtected()).append(", tilescale=").append(hdmt.getTileScale()); if(hdmt.tileupdatedelay > 0) { sb.append(", tileupdatedelay=").append(hdmt.tileupdatedelay); } @@ -913,6 +914,18 @@ public class DynmapMapCommands { } did_update |= mt.setBoostZoom(mzi); } + else if(tok[0].equalsIgnoreCase("tilescale")) { + int mzi = -1; + try { + mzi = Integer.valueOf(tok[1]); + } catch (NumberFormatException nfx) { + } + if((mzi < 0) || (mzi > 4)) { + sender.sendMessage("Invalid tilescale value: " + tok[1]); + return true; + } + did_update |= mt.setTileScale(mzi); + } else if(tok[0].equalsIgnoreCase("tileupdatedelay")) { int tud = -1; try { diff --git a/DynmapCore/src/main/java/org/dynmap/MapManager.java b/DynmapCore/src/main/java/org/dynmap/MapManager.java index 7930f803..533f0040 100644 --- a/DynmapCore/src/main/java/org/dynmap/MapManager.java +++ b/DynmapCore/src/main/java/org/dynmap/MapManager.java @@ -60,6 +60,7 @@ public class MapManager { private int progressinterval = 100; private int tileupdatedelay = 30; private int savependingperiod = 15 * 60; // every 15 minutes, by default + private int defaulttilescale = 0; private boolean saverestorepending = true; private boolean pauseupdaterenders = false; private boolean hideores = false; @@ -190,6 +191,10 @@ public class MapManager { return tileupdatedelay; } + public int getDefaultTileScale() { + return defaulttilescale; + } + private static class OurThreadFactory implements ThreadFactory { @Override public Thread newThread(Runnable r) { @@ -1147,7 +1152,9 @@ public class MapManager { if(progressinterval < 100) progressinterval = 100; saverestorepending = configuration.getBoolean("saverestorepending", true); tileupdatedelay = configuration.getInteger("tileupdatedelay", 30); - + defaulttilescale = configuration.getInteger("defaulttilescale", 0); + if (defaulttilescale < 0) defaulttilescale = 0; + if (defaulttilescale > 4) defaulttilescale = 4; tpslimit_updaterenders = configuration.getDouble("update-min-tps", 18.0); if (tpslimit_updaterenders > 19.5) tpslimit_updaterenders = 19.5; tpslimit_fullrenders = configuration.getDouble("fullrender-min-tps", 18.0); diff --git a/DynmapCore/src/main/java/org/dynmap/MapTile.java b/DynmapCore/src/main/java/org/dynmap/MapTile.java index bbe93e08..da70b7cd 100644 --- a/DynmapCore/src/main/java/org/dynmap/MapTile.java +++ b/DynmapCore/src/main/java/org/dynmap/MapTile.java @@ -12,6 +12,7 @@ public abstract class MapTile { public abstract boolean render(MapChunkCache cache, String mapname); public abstract List getRequiredChunks(); public abstract MapTile[] getAdjecentTiles(); + public abstract int getTileSize(); public DynmapWorld getDynmapWorld() { return world; diff --git a/DynmapCore/src/main/java/org/dynmap/hdmap/HDMap.java b/DynmapCore/src/main/java/org/dynmap/hdmap/HDMap.java index 71c31c2a..265ea8ef 100644 --- a/DynmapCore/src/main/java/org/dynmap/hdmap/HDMap.java +++ b/DynmapCore/src/main/java/org/dynmap/hdmap/HDMap.java @@ -34,6 +34,7 @@ public class HDMap extends MapType { private MapType.ImageFormat imgformat; private int bgcolornight; private int bgcolorday; + private int tilescale; private String title; private String icon; private String bg_cfg; @@ -140,6 +141,9 @@ public class HDMap extends MapType { this.mapzoomin = configuration.getInteger("mapzoomin", 2); this.mapzoomout = configuration.getInteger("mapzoomout", this.mapzoomout); this.boostzoom = configuration.getInteger("boostzoom", 0); + this.tilescale = configuration.getInteger("tilescale", core.getMapManager().getDefaultTileScale()); // 0 = 128, 1 = 256, ... + if (this.tilescale <= 0) this.tilescale = 0; + if (this.tilescale >= 4) this.tilescale = 4; // Limit to 2k x 2k if(this.boostzoom < 0) this.boostzoom = 0; if(this.boostzoom > 3) this.boostzoom = 3; // Map zoom in must be at least as big as boost zoom @@ -167,6 +171,7 @@ public class HDMap extends MapType { cn.put("mapzoomin", mapzoomin); cn.put("mapzoomout", mapzoomout); cn.put("boostzoom", boostzoom); + cn.put("tilescale", tilescale); if(bg_cfg != null) cn.put("background", bg_cfg); if(bg_day_cfg != null) @@ -185,15 +190,17 @@ public class HDMap extends MapType { public final HDPerspective getPerspective() { return perspective; } public final HDLighting getLighting() { return lighting; } public final int getBoostZoom() { return boostzoom; } + public final int getTileSize() { return 128 << tilescale; } + public final int getTileScale() { return tilescale; } @Override public List getTileCoords(DynmapWorld w, int x, int y, int z) { - return perspective.getTileCoords(w, x, y, z); + return perspective.getTileCoords(w, x, y, z, tilescale); } @Override public List getTileCoords(DynmapWorld w, int minx, int miny, int minz, int maxx, int maxy, int maxz) { - return perspective.getTileCoords(w, minx, miny, minz, maxx, maxy, maxz); + return perspective.getTileCoords(w, minx, miny, minz, maxx, maxy, maxz, tilescale); } @Override @@ -270,6 +277,7 @@ public class HDMap extends MapType { s(o, "mapzoomout", (world.getExtraZoomOutLevels()+mapzoomout)); s(o, "mapzoomin", mapzoomin); s(o, "boostzoom", boostzoom); + s(o, "tilescale", tilescale); s(o, "protected", isProtected()); s(o, "image-format", imgformat.getFileExt()); if(append_to_world.length() > 0) @@ -403,6 +411,13 @@ public class HDMap extends MapType { } return false; } + public boolean setTileScale(int mzi) { + if(mzi != this.tilescale) { + this.tilescale = mzi; + return true; + } + return false; + } public boolean setPerspective(HDPerspective p) { if(perspective != p) { perspective = p; @@ -450,7 +465,7 @@ public class HDMap extends MapType { @Override public void addMapTiles(List list, DynmapWorld w, int tx, int ty) { - list.add(new HDMapTile(w, this.perspective, tx, ty, boostzoom)); + list.add(new HDMapTile(w, this.perspective, tx, ty, boostzoom, tilescale)); } private static final ImageVariant[] dayVariant = { ImageVariant.STANDARD, ImageVariant.DAY }; diff --git a/DynmapCore/src/main/java/org/dynmap/hdmap/HDMapTile.java b/DynmapCore/src/main/java/org/dynmap/hdmap/HDMapTile.java index e2e3852d..18bd5b33 100644 --- a/DynmapCore/src/main/java/org/dynmap/hdmap/HDMapTile.java +++ b/DynmapCore/src/main/java/org/dynmap/hdmap/HDMapTile.java @@ -12,29 +12,32 @@ public class HDMapTile extends MapTile { public final HDPerspective perspective; public final int tx, ty; /* Tile X and Tile Y are in tile coordinates (pixels/tile-size) */ public final int boostzoom; + public final int tilescale; - public HDMapTile(DynmapWorld world, HDPerspective perspective, int tx, int ty, int boostzoom) { + public HDMapTile(DynmapWorld world, HDPerspective perspective, int tx, int ty, int boostzoom, int tilescale) { super(world); this.perspective = perspective; this.tx = tx; this.ty = ty; this.boostzoom = boostzoom; + this.tilescale = tilescale; } - public HDMapTile(DynmapWorld world, String parm) throws Exception { - super(world); - - String[] parms = parm.split(","); - if(parms.length < 3) throw new Exception("wrong parameter count"); - this.tx = Integer.parseInt(parms[0]); - this.ty = Integer.parseInt(parms[1]); - this.perspective = MapManager.mapman.hdmapman.perspectives.get(parms[2]); - if(this.perspective == null) throw new Exception("invalid perspective"); - if(parms.length > 3) - this.boostzoom = Integer.parseInt(parms[3]); - else - this.boostzoom = 0; - } +// public HDMapTile(DynmapWorld world, String parm) throws Exception { +// super(world); +// +// String[] parms = parm.split(","); +// if(parms.length < 3) throw new Exception("wrong parameter count"); +// this.tx = Integer.parseInt(parms[0]); +// this.ty = Integer.parseInt(parms[1]); +// this.perspective = MapManager.mapman.hdmapman.perspectives.get(parms[2]); +// if(this.perspective == null) throw new Exception("invalid perspective"); +// if(parms.length > 3) +// this.boostzoom = Integer.parseInt(parms[3]); +// else +// this.boostzoom = 0; +// this.tilescale = 0; +// } @Override protected String saveTileData() { @@ -63,6 +66,9 @@ public class HDMapTile extends MapTile { return world.getName() + ":" + perspective.getName() + "," + tx + "," + ty + ":" + boostzoom; } + @Override + public int getTileSize() { return 128 << tilescale; } + @Override public boolean isBiomeDataNeeded() { return MapManager.mapman.hdmapman.isBiomeDataNeeded(this); } diff --git a/DynmapCore/src/main/java/org/dynmap/hdmap/HDPerspective.java b/DynmapCore/src/main/java/org/dynmap/hdmap/HDPerspective.java index 7bcfabf4..cc277415 100644 --- a/DynmapCore/src/main/java/org/dynmap/hdmap/HDPerspective.java +++ b/DynmapCore/src/main/java/org/dynmap/hdmap/HDPerspective.java @@ -14,9 +14,9 @@ public interface HDPerspective { /* Get name of perspective */ String getName(); /* Get tiles invalidated by change at given location */ - List getTileCoords(DynmapWorld w, int x, int y, int z); + List getTileCoords(DynmapWorld w, int x, int y, int z, int tilescale); /* Get tiles invalidated by change at given volume, defined by 2 opposite corner locations */ - List getTileCoords(DynmapWorld w, int minx, int miny, int minz, int maxx, int maxy, int maxz); + List getTileCoords(DynmapWorld w, int minx, int miny, int minz, int maxx, int maxy, int maxz, int tilescale); /* Get tiles adjacent to given tile */ MapTile[] getAdjecentTiles(MapTile tile); /* Get chunks needed for given tile */ diff --git a/DynmapCore/src/main/java/org/dynmap/hdmap/IsoHDPerspective.java b/DynmapCore/src/main/java/org/dynmap/hdmap/IsoHDPerspective.java index 006d77b8..f008055c 100644 --- a/DynmapCore/src/main/java/org/dynmap/hdmap/IsoHDPerspective.java +++ b/DynmapCore/src/main/java/org/dynmap/hdmap/IsoHDPerspective.java @@ -63,10 +63,6 @@ public class IsoHDPerspective implements HDPerspective { /* Scale for default tiles */ private final int basemodscale; - /* dimensions of a map tile */ - public static final int tileWidth = 128; - public static final int tileHeight = 128; - /* Maximum and minimum inclinations */ public static final double MAX_INCLINATION = 90.0; public static final double MIN_INCLINATION = 20.0; @@ -1055,13 +1051,14 @@ public class IsoHDPerspective implements HDPerspective { } @Override - public List getTileCoords(DynmapWorld world, int x, int y, int z) { + public List getTileCoords(DynmapWorld world, int x, int y, int z, int tilescale) { HashSet tiles = new HashSet(); Vector3D block = new Vector3D(); block.x = x; block.y = y; block.z = z; Vector3D corner = new Vector3D(); + int tileSize = 128 << tilescale; /* Loop through corners of the cube */ for(int i = 0; i < 2; i++) { double inity = block.y; @@ -1069,7 +1066,7 @@ public class IsoHDPerspective implements HDPerspective { double initz = block.z; for(int k = 0; k < 2; k++) { world_to_map.transform(block, corner); /* Get map coordinate of corner */ - tiles.add(new TileFlags.TileCoord(fastFloor(corner.x/tileWidth), fastFloor(corner.y/tileHeight))); + tiles.add(new TileFlags.TileCoord(fastFloor(corner.x/tileSize), fastFloor(corner.y/tileSize))); block.z += 1; } block.z = initz; @@ -1082,7 +1079,7 @@ public class IsoHDPerspective implements HDPerspective { } @Override - public List getTileCoords(DynmapWorld world, int minx, int miny, int minz, int maxx, int maxy, int maxz) { + public List getTileCoords(DynmapWorld world, int minx, int miny, int minz, int maxx, int maxy, int maxz, int tilescale) { ArrayList tiles = new ArrayList(); Vector3D blocks[] = new Vector3D[] { new Vector3D(), new Vector3D() }; blocks[0].x = minx - 1; @@ -1098,6 +1095,7 @@ public class IsoHDPerspective implements HDPerspective { int maxtilex = Integer.MIN_VALUE; int mintiley = Integer.MAX_VALUE; int maxtiley = Integer.MIN_VALUE; + int tileSize = 128 << tilescale; /* Loop through corners of the prism */ for(int i = 0; i < 2; i++) { corner.x = blocks[i].x; @@ -1106,8 +1104,8 @@ public class IsoHDPerspective implements HDPerspective { for(int k = 0; k < 2; k++) { corner.z = blocks[k].z; world_to_map.transform(corner, tcorner); /* Get map coordinate of corner */ - int tx = fastFloor(tcorner.x/tileWidth); - int ty = fastFloor(tcorner.y/tileWidth); + int tx = fastFloor(tcorner.x/(tileSize << tilescale)); + int ty = fastFloor(tcorner.y/(tileSize << tilescale)); if(mintilex > tx) mintilex = tx; if(maxtilex < tx) maxtilex = tx; if(mintiley > ty) mintiley = ty; @@ -1131,14 +1129,14 @@ public class IsoHDPerspective implements HDPerspective { int x = t.tx; int y = t.ty; return new MapTile[] { - new HDMapTile(w, this, x - 1, y - 1, t.boostzoom), - new HDMapTile(w, this, x + 1, y - 1, t.boostzoom), - new HDMapTile(w, this, x - 1, y + 1, t.boostzoom), - new HDMapTile(w, this, x + 1, y + 1, t.boostzoom), - new HDMapTile(w, this, x, y - 1, t.boostzoom), - new HDMapTile(w, this, x + 1, y, t.boostzoom), - new HDMapTile(w, this, x, y + 1, t.boostzoom), - new HDMapTile(w, this, x - 1, y, t.boostzoom) }; + new HDMapTile(w, this, x - 1, y - 1, t.boostzoom, t.tilescale), + new HDMapTile(w, this, x + 1, y - 1, t.boostzoom, t.tilescale), + new HDMapTile(w, this, x - 1, y + 1, t.boostzoom, t.tilescale), + new HDMapTile(w, this, x + 1, y + 1, t.boostzoom, t.tilescale), + new HDMapTile(w, this, x, y - 1, t.boostzoom, t.tilescale), + new HDMapTile(w, this, x + 1, y, t.boostzoom, t.tilescale), + new HDMapTile(w, this, x, y + 1, t.boostzoom, t.tilescale), + new HDMapTile(w, this, x - 1, y, t.boostzoom, t.tilescale) }; } private static final int corners_by_side[][] = { @@ -1160,6 +1158,7 @@ public class IsoHDPerspective implements HDPerspective { int max_chunk_x = Integer.MIN_VALUE; int min_chunk_z = Integer.MAX_VALUE; int max_chunk_z = Integer.MIN_VALUE; + int tileSize = tile.getTileSize(); /* Make corners for volume: * 0 = bottom-lower-left (xyz), @@ -1177,8 +1176,8 @@ public class IsoHDPerspective implements HDPerspective { for(int y = t.ty; y <= (t.ty+1); y++) { for(int z = 0; z <= 1; z++) { corners[idx] = new Vector3D(); - corners[idx].x = x*tileWidth + dx; - corners[idx].y = y*tileHeight + dy; + corners[idx].x = x*tileSize + dx; + corners[idx].y = y*tileSize + dy; corners[idx].z = (z == 1) ? t.getDynmapWorld().worldheight : t.getDynmapWorld().minY; map_to_world.transform(corners[idx]); /* Compute chunk coordinates of corner */ @@ -1232,8 +1231,9 @@ public class IsoHDPerspective implements HDPerspective { Color rslt = new Color(); MapIterator mapiter = cache.getIterator(0, 0, 0); DynmapWorld world = tile.getDynmapWorld(); + int tileSize = tile.getTileSize(); int scaled = 0; - if ((tile.boostzoom > 0) && MarkerAPIImpl.testTileForBoostMarkers(cache.getWorld(), this, tile.tx * tileWidth, tile.ty * tileHeight, tileWidth)) { + if ((tile.boostzoom > 0) && MarkerAPIImpl.testTileForBoostMarkers(cache.getWorld(), this, tile.tx * tileSize, tile.ty * tileSize, tileSize)) { scaled = tile.boostzoom; } int sizescale = 1 << scaled; @@ -1256,10 +1256,10 @@ public class IsoHDPerspective implements HDPerspective { for(int i = 0; i < numshaders; i++) { HDLighting lighting = shaderstate[i].getLighting(); - im[i] = DynmapBufferedImage.allocateBufferedImage(tileWidth * sizescale, tileHeight * sizescale); + im[i] = DynmapBufferedImage.allocateBufferedImage(tileSize * sizescale, tileSize * sizescale); argb_buf[i] = im[i].argb_buf; if(lighting.isNightAndDayEnabled()) { - dayim[i] = DynmapBufferedImage.allocateBufferedImage(tileWidth * sizescale, tileHeight * sizescale); + dayim[i] = DynmapBufferedImage.allocateBufferedImage(tileSize * sizescale, tileSize * sizescale); day_argb_buf[i] = dayim[i].argb_buf; } isjpg[i] = shaderstate[i].getMap().getImageFormat() != ImageFormat.FORMAT_PNG; @@ -1279,8 +1279,8 @@ public class IsoHDPerspective implements HDPerspective { ps.top = new Vector3D(); ps.bottom = new Vector3D(); ps.direction = new Vector3D(); - double xbase = tile.tx * tileWidth; - double ybase = tile.ty * tileHeight; + double xbase = tile.tx * tileSize; + double ybase = tile.ty * tileSize; boolean shaderdone[] = new boolean[numshaders]; boolean rendered[] = new boolean[numshaders]; double height = maxheight; @@ -1295,9 +1295,9 @@ public class IsoHDPerspective implements HDPerspective { miny = tile.getDynmapWorld().minY; } - for(int x = 0; x < tileWidth * sizescale; x++) { + for(int x = 0; x < tileSize * sizescale; x++) { ps.px = x; - for(int y = 0; y < tileHeight * sizescale; y++) { + for(int y = 0; y < tileSize * sizescale; y++) { ps.top.x = ps.bottom.x = xbase + (x + 0.5) / sizescale; /* Start at center of pixel at Y=height+0.5, bottom at Y=-0.5 */ ps.top.y = ps.bottom.y = ybase + (y + 0.5) / sizescale; ps.top.z = height + 0.5; ps.bottom.z = miny - 0.5; @@ -1327,19 +1327,19 @@ public class IsoHDPerspective implements HDPerspective { int c_argb = rslt.getARGB(); if(c_argb != 0) rendered[i] = true; if(isjpg[i] && (c_argb == 0)) { - argb_buf[i][(tileHeight*sizescale-y-1)*tileWidth*sizescale + x] = bgnight[i]; + argb_buf[i][(tileSize*sizescale-y-1)*tileSize*sizescale + x] = bgnight[i]; } else { - argb_buf[i][(tileHeight*sizescale-y-1)*tileWidth*sizescale + x] = c_argb; + argb_buf[i][(tileSize*sizescale-y-1)*tileSize*sizescale + x] = c_argb; } if(day_argb_buf[i] != null) { shaderstate[i].getRayColor(rslt, 1); c_argb = rslt.getARGB(); if(isjpg[i] && (c_argb == 0)) { - day_argb_buf[i][(tileHeight*sizescale-y-1)*tileWidth*sizescale + x] = bgday[i]; + day_argb_buf[i][(tileSize*sizescale-y-1)*tileSize*sizescale + x] = bgday[i]; } else { - day_argb_buf[i][(tileHeight*sizescale-y-1)*tileWidth*sizescale + x] = c_argb; + day_argb_buf[i][(tileSize*sizescale-y-1)*tileSize*sizescale + x] = c_argb; } } } diff --git a/DynmapCore/src/main/resources/extracted/web/js/hdmap.js b/DynmapCore/src/main/resources/extracted/web/js/hdmap.js index ecd9b208..8940a073 100644 --- a/DynmapCore/src/main/resources/extracted/web/js/hdmap.js +++ b/DynmapCore/src/main/resources/extracted/web/js/hdmap.js @@ -5,13 +5,13 @@ var HDProjection = DynmapProjection.extend({ lng = wtp[0] * location.x + wtp[1] * location.y + wtp[2] * location.z; return new L.LatLng( - -((128 - lat) / (1 << this.options.mapzoomout)) + -(((128 << this.options.tilescale) - lat) / (1 << this.options.mapzoomout)) , lng / (1 << this.options.mapzoomout) , location.y); }, fromLatLngToLocation: function(latlon, y) { var ptw = this.options.maptoworld, - lat = 128 + latlon.lat * (1 << this.options.mapzoomout), + lat = (128 << this.options.tilescale) + latlon.lat * (1 << this.options.mapzoomout), lng = latlon.lng * (1 << this.options.mapzoomout), x = ptw[0] * lng + ptw[1] * lat + ptw[2] * y, z = ptw[6] * lng + ptw[7] * lat + ptw[8] * y; @@ -25,12 +25,12 @@ var HDMapType = DynmapTileLayer.extend({ options: { minZoom: 0, errorTileUrl: 'images/blank.png', - tileSize: 128, zoomReverse: true, }, initialize: function(options) { options.maxZoom = options.mapzoomin + options.mapzoomout; options.maxNativeZoom = options.mapzoomout; + options.tileSize = 128 << (options.tilescale || 0); this.projection = new HDProjection($.extend({map: this}, options)); diff --git a/fabric-1.14.4/src/main/resources/configuration.txt b/fabric-1.14.4/src/main/resources/configuration.txt index ef9addad..49bc0515 100644 --- a/fabric-1.14.4/src/main/resources/configuration.txt +++ b/fabric-1.14.4/src/main/resources/configuration.txt @@ -15,6 +15,10 @@ # 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 +# Set default tile scale (0 = 128px x 128x, 1 = 256px x 256px, 2 = 512px x 512px, 3 = 1024px x 1024px, 4 = 2048px x 2048px) - 0 is default +# Note: changing this value will result in all maps that use the default value being required to be fully rendered +#defaulttilescale: 0 + # 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) diff --git a/fabric-1.15.2/src/main/resources/configuration.txt b/fabric-1.15.2/src/main/resources/configuration.txt index 088c13e1..349a91b2 100644 --- a/fabric-1.15.2/src/main/resources/configuration.txt +++ b/fabric-1.15.2/src/main/resources/configuration.txt @@ -15,6 +15,10 @@ # 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 +# Set default tile scale (0 = 128px x 128x, 1 = 256px x 256px, 2 = 512px x 512px, 3 = 1024px x 1024px, 4 = 2048px x 2048px) - 0 is default +# Note: changing this value will result in all maps that use the default value being required to be fully rendered +#defaulttilescale: 0 + # 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) diff --git a/fabric-1.16.4/src/main/resources/configuration.txt b/fabric-1.16.4/src/main/resources/configuration.txt index 5c595b48..3814101c 100644 --- a/fabric-1.16.4/src/main/resources/configuration.txt +++ b/fabric-1.16.4/src/main/resources/configuration.txt @@ -15,6 +15,10 @@ # 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 +# Set default tile scale (0 = 128px x 128x, 1 = 256px x 256px, 2 = 512px x 512px, 3 = 1024px x 1024px, 4 = 2048px x 2048px) - 0 is default +# Note: changing this value will result in all maps that use the default value being required to be fully rendered +#defaulttilescale: 0 + # 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) diff --git a/fabric-1.17.1/src/main/resources/configuration.txt b/fabric-1.17.1/src/main/resources/configuration.txt index 5c595b48..3814101c 100644 --- a/fabric-1.17.1/src/main/resources/configuration.txt +++ b/fabric-1.17.1/src/main/resources/configuration.txt @@ -15,6 +15,10 @@ # 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 +# Set default tile scale (0 = 128px x 128x, 1 = 256px x 256px, 2 = 512px x 512px, 3 = 1024px x 1024px, 4 = 2048px x 2048px) - 0 is default +# Note: changing this value will result in all maps that use the default value being required to be fully rendered +#defaulttilescale: 0 + # 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) diff --git a/fabric-1.18/src/main/resources/configuration.txt b/fabric-1.18/src/main/resources/configuration.txt index 392d7c0c..6facc34b 100644 --- a/fabric-1.18/src/main/resources/configuration.txt +++ b/fabric-1.18/src/main/resources/configuration.txt @@ -15,6 +15,10 @@ # 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 +# Set default tile scale (0 = 128px x 128x, 1 = 256px x 256px, 2 = 512px x 512px, 3 = 1024px x 1024px, 4 = 2048px x 2048px) - 0 is default +# Note: changing this value will result in all maps that use the default value being required to be fully rendered +#defaulttilescale: 0 + # 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) diff --git a/forge-1.13.2/src/main/resources/configuration.txt b/forge-1.13.2/src/main/resources/configuration.txt index 27fccfd4..29a2f80d 100644 --- a/forge-1.13.2/src/main/resources/configuration.txt +++ b/forge-1.13.2/src/main/resources/configuration.txt @@ -15,6 +15,10 @@ # 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 +# Set default tile scale (0 = 128px x 128x, 1 = 256px x 256px, 2 = 512px x 512px, 3 = 1024px x 1024px, 4 = 2048px x 2048px) - 0 is default +# Note: changing this value will result in all maps that use the default value being required to be fully rendered +#defaulttilescale: 0 + # 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) diff --git a/forge-1.14.4/src/main/resources/configuration.txt b/forge-1.14.4/src/main/resources/configuration.txt index 6c3900ba..b720ffb3 100644 --- a/forge-1.14.4/src/main/resources/configuration.txt +++ b/forge-1.14.4/src/main/resources/configuration.txt @@ -15,6 +15,10 @@ # 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 +# Set default tile scale (0 = 128px x 128x, 1 = 256px x 256px, 2 = 512px x 512px, 3 = 1024px x 1024px, 4 = 2048px x 2048px) - 0 is default +# Note: changing this value will result in all maps that use the default value being required to be fully rendered +#defaulttilescale: 0 + # 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) diff --git a/forge-1.15.2/src/main/resources/configuration.txt b/forge-1.15.2/src/main/resources/configuration.txt index 6c3900ba..b720ffb3 100644 --- a/forge-1.15.2/src/main/resources/configuration.txt +++ b/forge-1.15.2/src/main/resources/configuration.txt @@ -15,6 +15,10 @@ # 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 +# Set default tile scale (0 = 128px x 128x, 1 = 256px x 256px, 2 = 512px x 512px, 3 = 1024px x 1024px, 4 = 2048px x 2048px) - 0 is default +# Note: changing this value will result in all maps that use the default value being required to be fully rendered +#defaulttilescale: 0 + # 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) diff --git a/forge-1.16.5/src/main/resources/configuration.txt b/forge-1.16.5/src/main/resources/configuration.txt index 27af8cb1..05cc179c 100644 --- a/forge-1.16.5/src/main/resources/configuration.txt +++ b/forge-1.16.5/src/main/resources/configuration.txt @@ -15,6 +15,10 @@ # 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 +# Set default tile scale (0 = 128px x 128x, 1 = 256px x 256px, 2 = 512px x 512px, 3 = 1024px x 1024px, 4 = 2048px x 2048px) - 0 is default +# Note: changing this value will result in all maps that use the default value being required to be fully rendered +#defaulttilescale: 0 + # 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) diff --git a/forge-1.17.1/src/main/resources/configuration.txt b/forge-1.17.1/src/main/resources/configuration.txt index 0d2cb5c0..ec572378 100644 --- a/forge-1.17.1/src/main/resources/configuration.txt +++ b/forge-1.17.1/src/main/resources/configuration.txt @@ -15,6 +15,10 @@ # 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 +# Set default tile scale (0 = 128px x 128x, 1 = 256px x 256px, 2 = 512px x 512px, 3 = 1024px x 1024px, 4 = 2048px x 2048px) - 0 is default +# Note: changing this value will result in all maps that use the default value being required to be fully rendered +#defaulttilescale: 0 + # 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) diff --git a/forge-1.18/src/main/resources/configuration.txt b/forge-1.18/src/main/resources/configuration.txt index 27af8cb1..05cc179c 100644 --- a/forge-1.18/src/main/resources/configuration.txt +++ b/forge-1.18/src/main/resources/configuration.txt @@ -15,6 +15,10 @@ # 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 +# Set default tile scale (0 = 128px x 128x, 1 = 256px x 256px, 2 = 512px x 512px, 3 = 1024px x 1024px, 4 = 2048px x 2048px) - 0 is default +# Note: changing this value will result in all maps that use the default value being required to be fully rendered +#defaulttilescale: 0 + # 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) diff --git a/spigot/src/main/resources/configuration.txt b/spigot/src/main/resources/configuration.txt index 1ae14b64..9712bf72 100644 --- a/spigot/src/main/resources/configuration.txt +++ b/spigot/src/main/resources/configuration.txt @@ -15,6 +15,10 @@ # 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 +# Set default tile scale (0 = 128px x 128x, 1 = 256px x 256px, 2 = 512px x 512px, 3 = 1024px x 1024px, 4 = 2048px x 2048px) - 0 is default +# Note: changing this value will result in all maps that use the default value being required to be fully rendered +#defaulttilescale: 0 + # Map storage scheme: only uncomment 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)