• 欢迎来到Minecraft插件百科!
  • 对百科编辑一脸懵逼?帮助:快速入门带您快速熟悉百科编辑!
  • 因近日遭受攻击,百科现已限制编辑,有意编辑请加入插件百科企鹅群:223812289

Dynmap:修订间差异

来自Minecraft插件百科
跳转到导航 跳转到搜索
→‎开发者相关:​ 翻译完成
无编辑摘要
 
(未显示9个用户的101个中间版本)
第1行: 第1行:
{{待翻译}}
{{急需改进|缺少概述表|存在维基语法错误}}
来源:[https://github.com/webbukkit/dynmap/wiki/ wiki], [https://dev.bukkit.org/bukkit-plugins/dynmap/ bukkit]
Dynmap 是一个像谷歌地图一样的、为 Minecraft 服务器设计的地图插件,让你可以在浏览器查看服务器地图。


[[Category:管理]] [[Category:网页]] [[Category:信息]]
你可以使用 Dynmap 的集成的网络服务器立即上手,也可以将其部署到 Apache 等现有的网络服务器,易于使用。


Dynmap 可以使用不同的渲染器渲染你的地图,有的适用于高性能,而有的可以展示更详细的细节。


=简介=
原始的项目是由 k-red 开发。
(此行以下内容来自 [https://dev.bukkit.org/bukkit-plugins/dynmap/ bukkit])<br />
Dynmap是一个可以用网页浏览的、像谷歌地图一样的动态地图插件。Dynmap的网页结构是建立在整个MineCraft游戏之外的,非常实用和易用,Dynmap也可应用于基于Apache类软件的网页。 <br />
Dynmap可以用不同的渲染图层渲染你的服务器世界地图, 有些适合于展示, 有些有着更多的地图细节。


这个插件的原始项目是由 k-zed.开发给 hMod 的。
==支持的基于Forge的Mod==
支持以下的Mod,尽管这些Mod的老版本可能不支持,当前版本的某些方块也可能不支持:


插件的部件可供你按照自己的需要添加/删除功能,使用Dnymap支持的部件,包括聊天泡泡, 网页-游戏聊天, 和可配置的标记, 标签, 下换线。
* Advanced Machines - IC2
* Advanced Power Management - IC2
* Advanced Solar Panels - IC2
* BetterWorlds
* BuildCraft
* Charging Bench - IC2
* Compact Solars - IC2
* ComputerCraft
* Equivalent Exchange 2
* Ender Storage
* ExtraBees
* Extrabiomes XL (v2.x and v3.x)
* Extrabiomes - Bunyan
* Forestry (updated in 1.4)
* Forgotten Nature
* Greg's Lighting
* IndustrialCraft 2
* Iron Chest
* LC Trees++
* Millenaire
* MystCraft
* Metallurgy 2
* NetherOres
* RailCraft
* Red Power 2
* SuperSlopes
* TerraFirmaCraft
* ThaumCraft
* Thermal Expansion
* Tubestuff
* Twilight Forest
* XyCraft


==功能==
==支持的服务端==
* 每个游戏世界深度可设置的地图
Dynmap 包括了除了 CraftBukkit 的其他版本。其他的最新的版本可以在[http://www.minecraftforum.net/topic/1543523-dynmap-dynamic-web-based-maps-for-minecraft/ 这里]找到。目前有 3 个Dynmap主要的平台:
* 实时更新:地图总是和服务器世界实时同步,当你打开着你的网页时更新一直会显示
* 玩家和他们的头像在地图上可见
* 地图上的聊天信息可见 (显示在聊天泡泡或者聊天框里)
* 地图浏览者能和游戏内的玩家聊天
* 实时Minecraft时间在地图上可见
* 实时Minecraft季节在地图上可见
* WorldGuard, Residence, Towny 和 Factions regions 插件都能在地图上可见 (需要相应版本的 Dynmap-* 补丁)


总的来说高度可配置和可定制化
*[https://github.com/webbukkit/dynmap/ Bukkit Dynmap]
*[https://github.com/webbukkit/DynmapForge/ DynmapForge]
*[https://github.com/webbukkit/DynmapSpout/ DynmapSpout]
 
;Spigot
 
Spigot 通过 Bukkit Dynmap 被完全支持。
 
;MinecraftForge
 
很多版本的 MinecraftForge 都是支持的,可以使用 DynmapForge 项目。所有的 Forge 版本的 Dynmap 都需要特定的 Forge 版本,升级 Forge 版本也需要升级到对应的 DynmapForge 版本。你应该按照如下的方法来安装或者升级:
 
*下载对应的 ZIP 文件,对应 MC 版本。
*解压整个 ZIP 文件,包括子目录,至服务器的根目录。
*如果是升级,那么删除 'mods' 下老的 'Dynmap-x.y.zip'。
 
;MCPC+
 
目前 MCPC+ 的版本(v1.4.7 或之后) 只被 DynmapForge mods 支持对应的 Forge 版本。CraftBukkit 版本不被支持。安装请按照以下步骤。 你可以使用 DynmapCBBridge 来兼容使用的 Bukkit 的插件的数据(可以在[http://www.minecraftforum.net/topic/1543523-dynmap-dynamic-web-based-maps-for-minecraft/ 这里]找到)。这是一个 Bukkit 插件,所以应该放在 'plugins' 目录,并且只支持那些基于 Forge 的 Bukkit 服务器上。
 
;BukkitForge
 
BukkitForge mod,一个基于 Forge 的 Mod,添加了Bukkit 的 API,是不被 Dynmap 的 Bukkit 版本支持的。可以使用 DynmapForge 版本,并且搭配 DynmapCBBridge 插件。安装过程与上方的 MCPC+ 相同。
 
;Tekkit Classic
 
Tekkit Classic,和更老的 MCPC (没有+ - v1.2.5),被 DynmapBukkit 支持。
 
;Tekkit-Lite
 
Tekkit-Lite 被 DynmapForge 支持,而不是 Bukkit Dynmap。按照上方 Forge 的安装方式安装 Dynmap。
 
;Tekkit
[http://www.technicpack.net/tekkit/ Tekkit] 是一个将大量的 Minecraft Mods 整合在 Bukkit 服务器的服务端。Dynmap 支持 Tekkit,目前的 Dynmap 版本会自动检测 Mod,和他们的方块ID,渲染支持的方块。目前支持 Tekkit v3.1.3
 
;Spout
 
Spout 服务器被 DynmapSpout 的实验项目支持(Spout 进行的重构使对其进行支持不切实际)。安装至 Spout 与 Bukkit 相同(解压到 plugins 目录)。注意:这个项目是给 Spout 服务器使用而不是 Bukkit 上的 Spout 插件。Spout插件可以使用 Bukkit Dynmap。
 
;从 Bukkit Dynmap 迁移到 Forge Dynmap
 
将 Bukkit Dynmap 迁移到 Forge Dynmap 可以按照以下方式进行:
 
*将 <base>/plugins/dynmap 目录(包括所有数据和子目录)移动到 Forge 服务器上的 <base>/dynmap 目录。
*编辑 configuration.txt: 替换 'render-triggers' 为以下信息:
<pre>
    render-triggers:
      - blockupdate
      #- blockupdate-with-id
      #- lightingupdate
      - chunkpopulate
      - chunkgenerate
      #- none
</pre>
*删除 <base>/plugins/dynmap.jar
*按照安装对应 Forge 版本的方法安装。


==安装==
==安装==
见:[[Dynmap/安装]]
==配置==
见:[[Dynmap/配置]]
==命令==
见:[[Dynmap/命令]]
==权限==
见:[[Dynmap/权限]]
==网页参数==
用于启动Web界面的URL可以有多个参数,可以用于改变发送给玩家的默认界面效果。这可以用来在加载WebUI时加载指定的世界或者地图,或者一个指定的缩放大小,或者将地图的中心设置为某个指定的世界坐标。
参数由一串属性-值组成,每个的参数格式就像这样:<code>attribute-id=value</code>
基础的URL必须含有一个问号 (?) 在第一个参数之前,每个参数之间必须以这个符号间隔,所以,如果这是默认的dynmap网址:<code><nowiki>http://mygreatserver:8123/</nowiki></code>
那么,直接打开“fred”世界并且显示“surface”地图的网页,就可以像这样:<code><nowiki>http://mygreatserver:8123/?worldname=fred&mapname=surface</nowiki></code>
如果你想要使用一个外置的服务器,格式也是一样的 - 添加问号,使用 & 分隔参数:<code><nowiki>http://mycoolapacheserver.com/dynmap?worldname=fred&mapname=surface</nowiki></code>
可用的参数如下:
* worldname - 这个指定了世界的名称(不是标题)。如果没有定义,那么会显示第一个默认的世界(除非在 _configuration.txt里设置了显示哪个世界)。
* mapname - 这个指定了显示的地图的名称(不是标题),如果没有指定,那么将会显示选中的世界的第一个地图!(除非在_configuration.txt中设置了显示哪张地图)。
* zoom - 指定的缩放大小(0为最高的缩放),如果没有提供,。那么将会使用默认的缩放大小(除非在_configuration.txt中指定了默认的缩放大小)。
* x - 这个指定了X坐标(展示的世界的坐标),如果没有指定,那么将会显示center定义的x坐标(一般为0)。
* y - 这个指定了Y坐标(展示的世界的坐标),如果没有指定,那么将会显示center定义的y坐标(一般为0)。
* z - 这个指定了Z坐标(展示的世界的坐标),如果没有指定,那么将会显示center定义的z坐标(一般为0)。
* nopanel - 如果设置为true,那么地图显示的侧边栏将会移除。
* chatname - 如果设置为一个字符串,WebUI将会将其转变为发送者发送的聊天消息使用的名称。这将只有在 'trustclientname' 设置为 true时才会生效,作为 'allowurlname' 的附加。在0.28及以后的版本中支持。
* playername - 如果定义了并将其设置为玩家的账户的名称,并且玩家在线或者开启WebUI后一会儿玩家加入了服务器,WebUI将会将地图初始化在给定玩家的位置。
* hidechat - 如果设置为 'true',那么WebUI将会关闭所有的聊天输入和输出模块(气泡,输入框,聊天栏)。
* nogui - 如果设置为 'true',那么WebUI将会关闭所有的控制面板,就像只显示地图层一样。
* nocompass - 如果设置为 'true',那么UI上的指南针将会隐藏。(v2.2-alpha-1)
==地图标记==
见:[[Dynmap/地图标记]]
==自定义方块==
见:[[Dynmap/自定义方块]]
==导出世界为WavefrontOBJ格式==
在 Dynmap v1.9.3 中,我们支持了将地图生成并导出为 Wavefront OBJ 格式的文件,这个特性由 jmc-2-obj 工具启发而来,允许管理员(或控制台)选择并导出他们的部分世界为模型文件,用于其他支持 Wavefront OBJ 格式的建模软件的导入 - 包括了 Blender(一个免费开源的渲染和动画套件),Cinema 4D,Maya,3D Studio Max 和其他的软件。这些导出的模型可以用于 Dynmap 不支持的高级渲染(保举哦了更高级的光照和反射)。由于 Dynmap 导出的 OBJ 格式文件与 jmc-2-obj 软件产生的非常相似,所以针对 jmc-2-obj 的模型的导入和处理与 Dynmap 的 OBJ 导出非常相似。
导出和处理使用新的 /dynmapexp 命令完成,此命令可以设置一些属性来控制导出:
* x0, y0, z0 : 这些是最小的 X, Y, 和 Z 轴的长方体/矩形棱柱的值
* x1, y1, z1 : 这些是最大的 X, Y, 和 Z 轴的长方体/矩形棱柱的值
* world : 用于导出的世界的名称
* byChunk : 如果设置为 true,这将会生成整个区块的所有方块的对象
* byBlockID : 如果设置为 true,这将会生成所有给定方块ID的对象
* byBlockIDData : 如果设置为 true,这将会生成所有给定方块ID和方块元数据的对象
* byTexture : 如果设置为 true,这将会生成所有给定材质的方块的对象
* shader : 指定用于导出的使用的材质的着色器,默认情况下使用 stdtexture,只有基于材质包的着色器才支持
/dynmapexp 的子命令包括了:
* /dynmapexp set : 允许设置导出的属性(如上),附加的属性可以在同一个命令使用,如 /dynmapexp set x0 0 y0 0 z0 100。
* /dynmapexp radius : 只能由一个游戏中的玩家使用:此命令会指定导出的世界为玩家所在的世界,并设置半径为玩家所在位置的半径,Y 轴为 0-255 的所有方块。
* /dynmapexp info : 显示当前导出的属性
* /dynmapexp pos0 : 此命令只能由玩家在游戏中使用:设置导出范围的第一个点
* /dynmapexp pos1 : 此命令只能由玩家在游戏中使用:设置导出范围的第二个点
* /dynmapexp reset : 重置导出属性为默认值
* /dynmapexp export : 初始化一个导出,创建一个叫 .zip 的文件(默认在 dynmap 文件夹下的 export 文件夹,可以在 exportpath 中设置)。导出是异步处理的,并且会耗费几分钟完成,用时取决于选区的大小
* /dynmapexp purge : 删除上一个导出
完成后,ZIP文件中将会包含以下内容:
* 一个 minecraft.obj 文件,包含导出的模型(可能非常大)
* 一个 .mtl 文件,包含材质列表(对应每个minecraft材质)
* 一个 目录,包含使用的材质文件
解压文件并将 minecraft.obj 导入到渲染/建模软件。
==开发者==
Dynmap 项目包含了多个部分,可以支持多个服务器平台,也可以帮助我们清楚地发布API。用来构建 'dynmap'(Bukkit 的 Dynmap 插件)的有以下几部分(按照构建顺序):


复制dynmap-*.jar 进你的补丁文件夹. 如果用于更新, 删除之前安装的 dynmap-*.jar - 你不需要删除任何补丁/地图文件夹或者它的文件。
*[https://github.com/webbukkit/DynmapCoreAPI DynmapCoreAPI] - 这是无关平台的 Dynmap API:插件编写者可以使用这个接口来在任何平台使用 Dynmap(通过将插件转换为 org.dynmap.DynmapCoreAPI 示例)


如果你正在运行一个独立网页服务器 (比如 Apache) 你可能需要先复制文件'plugins/dynmap/web/' 到你的http-root的一个文件夹,里然后再执行此教程。升级时,请确保你也升级了被复制的文件。
*[https://github.com/webbukkit/DynmapCore DynmapCore] - 这个服务器平台的 Dynmap 核心:几乎所有的网页和渲染都在这里(我们尽可能多的往里放)。在这里构建的结果是不可运行的 - 他们被放入 dynmap 的其他部分(比如,DynmapSpout 支持 Spout 平台)。


==第一次使用==
*[https://github.com/webbukkit/dynmap-api dynmap-api] - Dynmap 的 Bukkit 部分的 API - 定义了 org.dynmap.DynmapAPI 接口,包括了 Bukkit 的调用,通过配合 DynmapCoreAPI(DynmapAPI 继承),将插件实例转为 org.dynmap.DynmapAPI 来使用公布的接口。


    当你开启 CraftBukkit 时, 你应该可以在浏览器里跳转到 http://yourserverip:8123/。 如果你是用你现在正在使用的PC来运行 CraftBukkit, 你可以跳转到 http://localhost:8123/。 <br />
*[https://github.com/webbukkit/dynmap dynmap] - 真正的 Dynmap Bukkit 的部分,包括了那些与服务器无关的代码。
    你应该能够看到在游戏内的玩家。 需要注意的是此时地图还未被渲染, 所以背景应该是黑色的。<br />


    如果你计划使用高清渲染, 现在你就可以着手做这件事了。开启configuration.txt顶端的 'deftemplatesuffix: hires' 。更多关于deftemplatesuffix的信息可在基础补丁设置查看。<br />
===如何编译Dynmap===
编译 Dynmap 使用 [http://maven.apache.org/ Maven]。使用 Maven 的 mvn install 命令你就可以将项目安装在你的 Maven 仓库,这样就可以用于编译其他需要用此项目作为依赖的项目。基本的方法为,使用 git clone 下载代码,使用 mvn install 编译代码。


    如果你只是想让Dynmap有效, 在游戏里使用这个命令 /dynmap fullrender. wiki上有更多关于命令和权限的内容。<br />
Dynmap 的核心系统基本不需要依赖项,核心用于实现特殊的框架,比如 Bukkit Spout。在你编译某平台的框架之前,你应该复制并按顺序编译这些项目:
    地图此时应该会显露出来,给它一些时间。程序信息之后会显示 Dynmap 正在工作 (Dynmap is working) 渲染已完成 (render is completed)。


==相关==
*DynmapCoreAPI - git://github.com/webbukkit/DynmapCoreAPI.git
(此行以下内容来自 [https://github.com/webbukkit/dynmap/wiki/ wiki]很多内容是2012-2014年发布的,年代久远很久没更新)
*DynmapCore - git://github.com/webbukkit/DynmapCore.git
    [http://forums.bukkit.org/threads/misc-dynmap-v0-12-1-realtime-minecraft-maps-314.489/ Bukkit论坛 (已失效)]
    [http://dev.bukkit.org/server-mods/dynmap/ Bukkit项目页面]
    IRC: irc://irc.esper.net/#dynmap (via web)


==如何使用==
;Dynmap for Bukkit


===不同服务器环境下的设置===
复制并按顺序编译这些项目来编译 Bukkit 的 Dynmap:
    [https://github.com/webbukkit/dynmap/wiki/Setting-up-without-the-Internal-Web-Server/ 无内部网页服务器]
    [https://github.com/webbukkit/dynmap/wiki/Setting-up-the-Dynamic-Map-plugin-under-Linux/ Linux]
    [https://github.com/webbukkit/dynmap/wiki/Setting-up-the-Dynamic-Map-plugin-under-Windows/  Windows]
    [https://github.com/webbukkit/dynmap/wiki/Setting-up-Dynmap-through-hosting-services/ 虚拟主机]


===插件设置===
*dynmap-api - git://github.com/webbukkit/dynmap-api.git
        Base Plugin Settings
*dynmap - git://github.com/webbukkit/dynmap.git
        Component Configuration
        World and Template Settings
        HD Map Configuration
        Support for MinecraftForge based mods
        Support for Minecraft Servers other than CraftBukkit
    Commands
        Configuring Maps and Worlds using dmap
    Permissions
        Web UI Login Support and Permissions
    Web UI Parameters
    Using Markers
    Custom Block Definitions
    Exporting World Data in Wavefront OBJ Format


==开发者相关==
或者将以下复制进你的终端:
<pre>
git clone git://github.com/webbukkit/DynmapCoreAPI.git && (cd DynmapCoreAPI && mvn install)
git clone git://github.com/webbukkit/DynmapCore.git && (cd DynmapCore && mvn install)
git clone git://github.com/webbukkit/dynmap-api.git && (cd dynmap-api && mvn install)
git clone git://github.com/webbukkit/dynmap.git && (cd dynmap && mvn install)
</pre>
包含 Dynmap 的 ZIP 文件位于 dynmap/target/dynmap-*-bin.zip.


Dynmap 插件由多个部件组成,用于支持多平台服务器,同时为了让我们的“已发布API”能被更好的理解。组成dynmap插件的必须部件 (用于Bukkit的Dynmap 补丁)在下文列出:
;Dynmap for 原版Spout


    DynmapCoreAPI - 这是用于Dynmap的 neutral API 平台: 插件开发者能以此作为 Dynmap与任何平台的接口(通过指向dynmap 补丁实例 org.dynmap.DynmapCoreAPI)
复制并按顺序编译这些项目来编译 Spout 原版服务器的 Dynmap:


    DynmapCore - 这是Dynmap的 server-neutral 核心: 几乎所有Dynmap的网页和渲染逻辑都在这(尽我们所能的放进去)。 这样开发的结果就是不可运行 - 他们都被放进了 'dynmap' 及其他部件开发里(例如 'DynmapSpout', 是用于 Spout 服务端的).
*[https://github.com/SpoutDev/SpoutAPI SpoutAPI] - git://github.com/SpoutDev/SpoutAPI.git
*[https://github.com/SpoutDev/Vanilla SpoutVanilla] - git://github.com/SpoutDev/Vanilla.git
*[https://github.com/webbukkit/DynmapSpout DynmapSpout] - git://github.com/webbukkit/DynmapSpout.git
或者将以下复制进你的终端:
<pre>
git clone git://github.com/webbukkit/DynmapCoreAPI.git && (cd DynmapCoreAPI && mvn install)
git clone git://github.com/webbukkit/DynmapCore.git && (cd DynmapCore && mvn install)
git clone git://github.com/SpoutDev/SpoutAPI.git && (cd SpoutAPI && mvn install)
git clone git://github.com/SpoutDev/Vanilla.git && (cd Vanilla && mvn install)
git clone git://github.com/webbukkit/DynmapSpout.git && (cd DynmapSpout && mvn install)
</pre>
包含 Dynmap 的 ZIP 文件位于 DynmapSpout/target/DynmapSpout-*-bin.zip.


    dynmap-api - 这是dynmap专用于Bukkit(Bukkit-specific)的 API 库 - 它定义了i org.dynmap.DynmapAPI 的接口,包括 Bukkit-specific 调用. 还有 DynmapCoreAPI ( DynmapAPI 的拓展), 将补丁实例为 'dynmap' 之后指向 org.dynmap.DynmapAPI 然后接  入公共接口。
==联系方式==
* [http://forums.bukkit.org/threads/misc-dynmap-v0-12-1-realtime-minecraft-maps-314.489/ Bukkit 论坛]
    dynmap - 这个部件让了 dynmap-for-Bukkit 真正的可用, 只包含了不可运行为server-neutral的代码。
* [http://dev.bukkit.org/server-mods/dynmap/ BukkitDev 项目页面]
* IRC: irc://irc.esper.net/#dynmap ([http://webchat.esper.net/?nick=Webuser&channels=dynmap&prompt=0 在线])


How to compile Dynmap
==参考==
还有许多页面没有搬运,会尽快补充请谅解
* https://github.com/webbukkit/dynmap/wiki
* https://pluginscdtribe.github.io/wiki/dynmap/
* http://www.mcbbs.net/thread-728931-1-1.html

2021年8月16日 (一) 14:01的最新版本

Minecraft插件百科提醒您,此条目或需要大幅度整改,建议新用户不要模仿此条目格式建立新条目。

原因在于:

  • 缺少概述表
  • 存在维基语法错误
若您清楚改善现状的方法,可以尝试帮忙改进

Dynmap 是一个像谷歌地图一样的、为 Minecraft 服务器设计的地图插件,让你可以在浏览器查看服务器地图。

你可以使用 Dynmap 的集成的网络服务器立即上手,也可以将其部署到 Apache 等现有的网络服务器,易于使用。

Dynmap 可以使用不同的渲染器渲染你的地图,有的适用于高性能,而有的可以展示更详细的细节。

原始的项目是由 k-red 开发。

支持的基于Forge的Mod

支持以下的Mod,尽管这些Mod的老版本可能不支持,当前版本的某些方块也可能不支持:

  • Advanced Machines - IC2
  • Advanced Power Management - IC2
  • Advanced Solar Panels - IC2
  • BetterWorlds
  • BuildCraft
  • Charging Bench - IC2
  • Compact Solars - IC2
  • ComputerCraft
  • Equivalent Exchange 2
  • Ender Storage
  • ExtraBees
  • Extrabiomes XL (v2.x and v3.x)
  • Extrabiomes - Bunyan
  • Forestry (updated in 1.4)
  • Forgotten Nature
  • Greg's Lighting
  • IndustrialCraft 2
  • Iron Chest
  • LC Trees++
  • Millenaire
  • MystCraft
  • Metallurgy 2
  • NetherOres
  • RailCraft
  • Red Power 2
  • SuperSlopes
  • TerraFirmaCraft
  • ThaumCraft
  • Thermal Expansion
  • Tubestuff
  • Twilight Forest
  • XyCraft

支持的服务端

Dynmap 包括了除了 CraftBukkit 的其他版本。其他的最新的版本可以在这里找到。目前有 3 个Dynmap主要的平台:

Spigot

Spigot 通过 Bukkit Dynmap 被完全支持。

MinecraftForge

很多版本的 MinecraftForge 都是支持的,可以使用 DynmapForge 项目。所有的 Forge 版本的 Dynmap 都需要特定的 Forge 版本,升级 Forge 版本也需要升级到对应的 DynmapForge 版本。你应该按照如下的方法来安装或者升级:

  • 下载对应的 ZIP 文件,对应 MC 版本。
  • 解压整个 ZIP 文件,包括子目录,至服务器的根目录。
  • 如果是升级,那么删除 'mods' 下老的 'Dynmap-x.y.zip'。
MCPC+

目前 MCPC+ 的版本(v1.4.7 或之后) 只被 DynmapForge mods 支持对应的 Forge 版本。CraftBukkit 版本不被支持。安装请按照以下步骤。 你可以使用 DynmapCBBridge 来兼容使用的 Bukkit 的插件的数据(可以在这里找到)。这是一个 Bukkit 插件,所以应该放在 'plugins' 目录,并且只支持那些基于 Forge 的 Bukkit 服务器上。

BukkitForge

BukkitForge mod,一个基于 Forge 的 Mod,添加了Bukkit 的 API,是不被 Dynmap 的 Bukkit 版本支持的。可以使用 DynmapForge 版本,并且搭配 DynmapCBBridge 插件。安装过程与上方的 MCPC+ 相同。

Tekkit Classic

Tekkit Classic,和更老的 MCPC (没有+ - v1.2.5),被 DynmapBukkit 支持。

Tekkit-Lite

Tekkit-Lite 被 DynmapForge 支持,而不是 Bukkit Dynmap。按照上方 Forge 的安装方式安装 Dynmap。

Tekkit

Tekkit 是一个将大量的 Minecraft Mods 整合在 Bukkit 服务器的服务端。Dynmap 支持 Tekkit,目前的 Dynmap 版本会自动检测 Mod,和他们的方块ID,渲染支持的方块。目前支持 Tekkit v3.1.3

Spout

Spout 服务器被 DynmapSpout 的实验项目支持(Spout 进行的重构使对其进行支持不切实际)。安装至 Spout 与 Bukkit 相同(解压到 plugins 目录)。注意:这个项目是给 Spout 服务器使用而不是 Bukkit 上的 Spout 插件。Spout插件可以使用 Bukkit Dynmap。

从 Bukkit Dynmap 迁移到 Forge Dynmap

将 Bukkit Dynmap 迁移到 Forge Dynmap 可以按照以下方式进行:

  • 将 <base>/plugins/dynmap 目录(包括所有数据和子目录)移动到 Forge 服务器上的 <base>/dynmap 目录。
  • 编辑 configuration.txt: 替换 'render-triggers' 为以下信息:
    render-triggers:
      - blockupdate
      #- blockupdate-with-id
      #- lightingupdate
      - chunkpopulate
      - chunkgenerate
      #- none
  • 删除 <base>/plugins/dynmap.jar
  • 按照安装对应 Forge 版本的方法安装。

安装

见:Dynmap/安装

配置

见:Dynmap/配置

命令

见:Dynmap/命令

权限

见:Dynmap/权限

网页参数

用于启动Web界面的URL可以有多个参数,可以用于改变发送给玩家的默认界面效果。这可以用来在加载WebUI时加载指定的世界或者地图,或者一个指定的缩放大小,或者将地图的中心设置为某个指定的世界坐标。

参数由一串属性-值组成,每个的参数格式就像这样:attribute-id=value

基础的URL必须含有一个问号 (?) 在第一个参数之前,每个参数之间必须以这个符号间隔,所以,如果这是默认的dynmap网址:http://mygreatserver:8123/

那么,直接打开“fred”世界并且显示“surface”地图的网页,就可以像这样:http://mygreatserver:8123/?worldname=fred&mapname=surface

如果你想要使用一个外置的服务器,格式也是一样的 - 添加问号,使用 & 分隔参数:http://mycoolapacheserver.com/dynmap?worldname=fred&mapname=surface

可用的参数如下:

  • worldname - 这个指定了世界的名称(不是标题)。如果没有定义,那么会显示第一个默认的世界(除非在 _configuration.txt里设置了显示哪个世界)。
  • mapname - 这个指定了显示的地图的名称(不是标题),如果没有指定,那么将会显示选中的世界的第一个地图!(除非在_configuration.txt中设置了显示哪张地图)。
  • zoom - 指定的缩放大小(0为最高的缩放),如果没有提供,。那么将会使用默认的缩放大小(除非在_configuration.txt中指定了默认的缩放大小)。
  • x - 这个指定了X坐标(展示的世界的坐标),如果没有指定,那么将会显示center定义的x坐标(一般为0)。
  • y - 这个指定了Y坐标(展示的世界的坐标),如果没有指定,那么将会显示center定义的y坐标(一般为0)。
  • z - 这个指定了Z坐标(展示的世界的坐标),如果没有指定,那么将会显示center定义的z坐标(一般为0)。
  • nopanel - 如果设置为true,那么地图显示的侧边栏将会移除。
  • chatname - 如果设置为一个字符串,WebUI将会将其转变为发送者发送的聊天消息使用的名称。这将只有在 'trustclientname' 设置为 true时才会生效,作为 'allowurlname' 的附加。在0.28及以后的版本中支持。
  • playername - 如果定义了并将其设置为玩家的账户的名称,并且玩家在线或者开启WebUI后一会儿玩家加入了服务器,WebUI将会将地图初始化在给定玩家的位置。
  • hidechat - 如果设置为 'true',那么WebUI将会关闭所有的聊天输入和输出模块(气泡,输入框,聊天栏)。
  • nogui - 如果设置为 'true',那么WebUI将会关闭所有的控制面板,就像只显示地图层一样。
  • nocompass - 如果设置为 'true',那么UI上的指南针将会隐藏。(v2.2-alpha-1)

地图标记

见:Dynmap/地图标记

自定义方块

见:Dynmap/自定义方块

导出世界为WavefrontOBJ格式

在 Dynmap v1.9.3 中,我们支持了将地图生成并导出为 Wavefront OBJ 格式的文件,这个特性由 jmc-2-obj 工具启发而来,允许管理员(或控制台)选择并导出他们的部分世界为模型文件,用于其他支持 Wavefront OBJ 格式的建模软件的导入 - 包括了 Blender(一个免费开源的渲染和动画套件),Cinema 4D,Maya,3D Studio Max 和其他的软件。这些导出的模型可以用于 Dynmap 不支持的高级渲染(保举哦了更高级的光照和反射)。由于 Dynmap 导出的 OBJ 格式文件与 jmc-2-obj 软件产生的非常相似,所以针对 jmc-2-obj 的模型的导入和处理与 Dynmap 的 OBJ 导出非常相似。

导出和处理使用新的 /dynmapexp 命令完成,此命令可以设置一些属性来控制导出:

  • x0, y0, z0 : 这些是最小的 X, Y, 和 Z 轴的长方体/矩形棱柱的值
  • x1, y1, z1 : 这些是最大的 X, Y, 和 Z 轴的长方体/矩形棱柱的值
  • world : 用于导出的世界的名称
  • byChunk : 如果设置为 true,这将会生成整个区块的所有方块的对象
  • byBlockID : 如果设置为 true,这将会生成所有给定方块ID的对象
  • byBlockIDData : 如果设置为 true,这将会生成所有给定方块ID和方块元数据的对象
  • byTexture : 如果设置为 true,这将会生成所有给定材质的方块的对象
  • shader : 指定用于导出的使用的材质的着色器,默认情况下使用 stdtexture,只有基于材质包的着色器才支持

/dynmapexp 的子命令包括了:

  • /dynmapexp set : 允许设置导出的属性(如上),附加的属性可以在同一个命令使用,如 /dynmapexp set x0 0 y0 0 z0 100。
  • /dynmapexp radius : 只能由一个游戏中的玩家使用:此命令会指定导出的世界为玩家所在的世界,并设置半径为玩家所在位置的半径,Y 轴为 0-255 的所有方块。
  • /dynmapexp info : 显示当前导出的属性
  • /dynmapexp pos0 : 此命令只能由玩家在游戏中使用:设置导出范围的第一个点
  • /dynmapexp pos1 : 此命令只能由玩家在游戏中使用:设置导出范围的第二个点
  • /dynmapexp reset : 重置导出属性为默认值
  • /dynmapexp export : 初始化一个导出,创建一个叫 .zip 的文件(默认在 dynmap 文件夹下的 export 文件夹,可以在 exportpath 中设置)。导出是异步处理的,并且会耗费几分钟完成,用时取决于选区的大小
  • /dynmapexp purge : 删除上一个导出

完成后,ZIP文件中将会包含以下内容:

  • 一个 minecraft.obj 文件,包含导出的模型(可能非常大)
  • 一个 .mtl 文件,包含材质列表(对应每个minecraft材质)
  • 一个 目录,包含使用的材质文件

解压文件并将 minecraft.obj 导入到渲染/建模软件。

开发者

Dynmap 项目包含了多个部分,可以支持多个服务器平台,也可以帮助我们清楚地发布API。用来构建 'dynmap'(Bukkit 的 Dynmap 插件)的有以下几部分(按照构建顺序):

  • DynmapCoreAPI - 这是无关平台的 Dynmap API:插件编写者可以使用这个接口来在任何平台使用 Dynmap(通过将插件转换为 org.dynmap.DynmapCoreAPI 示例)
  • DynmapCore - 这个服务器平台的 Dynmap 核心:几乎所有的网页和渲染都在这里(我们尽可能多的往里放)。在这里构建的结果是不可运行的 - 他们被放入 dynmap 的其他部分(比如,DynmapSpout 支持 Spout 平台)。
  • dynmap-api - Dynmap 的 Bukkit 部分的 API - 定义了 org.dynmap.DynmapAPI 接口,包括了 Bukkit 的调用,通过配合 DynmapCoreAPI(DynmapAPI 继承),将插件实例转为 org.dynmap.DynmapAPI 来使用公布的接口。
  • dynmap - 真正的 Dynmap Bukkit 的部分,包括了那些与服务器无关的代码。

如何编译Dynmap

编译 Dynmap 使用 Maven。使用 Maven 的 mvn install 命令你就可以将项目安装在你的 Maven 仓库,这样就可以用于编译其他需要用此项目作为依赖的项目。基本的方法为,使用 git clone 下载代码,使用 mvn install 编译代码。

Dynmap 的核心系统基本不需要依赖项,核心用于实现特殊的框架,比如 Bukkit 和 Spout。在你编译某平台的框架之前,你应该复制并按顺序编译这些项目:

Dynmap for Bukkit

复制并按顺序编译这些项目来编译 Bukkit 的 Dynmap:

或者将以下复制进你的终端:

git clone git://github.com/webbukkit/DynmapCoreAPI.git && (cd DynmapCoreAPI && mvn install)
git clone git://github.com/webbukkit/DynmapCore.git && (cd DynmapCore && mvn install)
git clone git://github.com/webbukkit/dynmap-api.git && (cd dynmap-api && mvn install)
git clone git://github.com/webbukkit/dynmap.git && (cd dynmap && mvn install)

包含 Dynmap 的 ZIP 文件位于 dynmap/target/dynmap-*-bin.zip.

Dynmap for 原版Spout

复制并按顺序编译这些项目来编译 Spout 原版服务器的 Dynmap:

或者将以下复制进你的终端:

git clone git://github.com/webbukkit/DynmapCoreAPI.git && (cd DynmapCoreAPI && mvn install)
git clone git://github.com/webbukkit/DynmapCore.git && (cd DynmapCore && mvn install)
git clone git://github.com/SpoutDev/SpoutAPI.git && (cd SpoutAPI && mvn install)
git clone git://github.com/SpoutDev/Vanilla.git && (cd Vanilla && mvn install)
git clone git://github.com/webbukkit/DynmapSpout.git && (cd DynmapSpout && mvn install)

包含 Dynmap 的 ZIP 文件位于 DynmapSpout/target/DynmapSpout-*-bin.zip.

联系方式

参考