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

DragonTravel

From Minecraft插件百科
Revision as of 00:42, 18 February 2018 by Qsefthuopq (talk | contribs)
Jump to: navigation, search
Icon-info.png
本条目已有一定量的内容,但仍需完善

欢迎参与本条目的完善工作

你可以从以下几个方面入手

  • 参阅格式化手册,并对该页面进行相应格式排版工作;
  • 日常检查是否内容有更新版本并更新该页面;
  • 修复该页面中已出现/潜在的问题

插件介绍

DragonTravel让玩家有机会骑在龙上,这也给服务器添加了一种新的旅行方式.

插件特点

  • 允许管理员设置末影龙的目的地.
  • 允许拥有特定权限的玩家骑上末影龙并...
    • ...前往不同的航点
    • ...前往管理员已经设置好的航线.
    • ...前往指定的坐标.
    • ...飞到指定的玩家面前.
    • ...飞到你的派系之家 (需要Factions)
    • ..飞到你的城镇传送点 (需要Towny)
    • ...飞到你已经设置的家.
  • 允许管理员设置航线并限制末影龙数 (或指定半径内的末影龙).
  • 可以让玩家需要特定物品才能骑龙 (例如一个龙蛋)
  • 航线牌子.
  • 支持权限节点
  • 支持Vault!
  • 管理员可以设置不同的传送费用!
  • 管理员可以在配置内设置末影龙是否会破坏方块.
  • 所有的信息完全可自定义! 默认的messages.yml是英语,但是插件作者在wiki提供了一些其他语言版本的文件.
  • API允许其他插件通过 DragonTravel 来运送旅客. 查看 API页面 获得详情.

旅行 & 航线

  • 一趟旅行会把玩家带到目的地,只有一个目的地.
  • 而航线则是管理员设置的固定路线,可拥有多个站点.

安装

  1. 从BukkitDev下载最新版本的 DragonTravel
  2. 把JAR放到你的plugins文件夹内
  3. 可选: 配置 DragonTravel

指令

总指令

指令 描述
/dt dismount 下龙.
/dt sethome 设置你的末影龙的家.
/dt ptoggle 是否允许其他玩家使用飞龙骑脸.

旅行

指令 描述
/dt travel <站点名> 带你到指定的站点.
/dt ctravel <x> <y> <z> [世界名] 带你到指定位置.
/dt ptravel <playername> 带你到指定玩家面前.
/dt home 带你到你的末影龙家.
/dt fhome 带你到派系之家 (需要Factions)
/dt tspawn 带你到城镇之家 (需要Towny)
/dt showstats 列出可用站点.

航线

指令 描述
/dt flight <航线名> [player] 带你或指定的玩家登上航线.
/dt showflights 列出可用航线.
/dt showflight <航线名> 列出航线的航点.

管理员

权限 描述
/dt addstatdragon <name> [displayname] 在玩家的位置创建一条静止的龙 (并显示自定义名称)
/dt remstatdragon <name> 移除静止的龙 (可以是特定ID的龙)
/dt setstat <stationname> 在你当前位置设置新的站点.
/dt remstat <playername> 移除特定站点.
/dt remdragons 移除所有空龙 (除了有玩家骑乘和静止的龙)
/dt rembugdragon 暂时的 workaround for无人骑乘的出错的末影龙. 移除距你距离最短的末影龙 (在10格方块内).
/dt createflight <flightname> 创建航线并把你置入创建航线模式
/dt setwp 设置新的航点 (只在创建航线模式中有用)
/dt remlastwp 移除最近设置的航点 (只在创建航线模式中有用).
/dt saveflight 保存当前编辑的航线并退出创建航线模式.
/dt remflight <flightname> 移除航线.

牌子

用法

牌子可以让你的玩家不输入指令就能骑龙. 通过牌子,你可以让玩家:

  • 骑乘启程前往目的地
  • 登上航线
  • 前往派系之家
  • 前往城镇之家

格式如下:

[DragonTravel]
<行为>
<目标>
[花费]

其中花费可选填,如果您启动了经济支付并且第四行为空,即便您通过物品使用付款,玩家仍会被收取默认费用,(例如,向一个玩家收取10金粒来登上航班,在第四行中填写“10.0”)

旅行牌

这种牌子将会带点击该牌子的玩家到指定的目的地. 以下例子将带玩家到 “MyExampleStat”站点并收取10元的费用.

Error creating thumbnail: Unable to save thumbnail to destination
Error creating thumbnail: Unable to save thumbnail to destination

航线牌

这种牌子将使点击该牌子的玩家登上指定的航线. 以下例子将带玩家到 “TestyFlight”站点并收取20元的费用.

Error creating thumbnail: Unable to save thumbnail to destination
Error creating thumbnail: Unable to save thumbnail to destination

派系牌

点击这个牌子的玩家将会被带到 “MyFaction” 这个派系,如果玩家不是这个派系的人则无法上龙.

Error creating thumbnail: Unable to save thumbnail to destination
Error creating thumbnail: Unable to save thumbnail to destination

常见问题

  • 问:可不可以移除末影龙的血条?
  • 答: 不能

详细解释:

At the moment this is not possible because the health-bar is rendered by the client and the server has no influence on that if we do not use third 
party APIs which we do not want to rely on. Should it ever be possible to remove the health-bar, we will remove it!
  • 问:能不能改变末影龙扇翅膀的频率?
  • 答: 不能

详细解释:

The problem about this is that the dragon’s wings are rendered client-side, so the plugin (which is only run on the server) does not have any chance 
to modify the speed of the wings. For some players, the wings a flapping too fast, for some players the wings a flapping in a perfect speed, but we 
cannot change this speed.
  • 问: 我能不能手动控制末影龙飞行?
  • 答: 不能

详细解释:

When this project started, there was the project RideThaDragon by V10lator which enabled you to do exactly that, so we decided that this does not fit 
into DragonTravel, because, like the name already says, Dragontravel is about “travels”, not free-riding. During the past months we thought about 
this topic again, because the project RideThaDragon has been abandoned by the author and we came to the point that we might implement this feature as 
soon as we have enough time.

简译:
请找其他插件

  • 问: 能不能让乘龙者坐得更低点?
  • 答: 不能

详细解释:

The dragon has a hitbox which is a bit bigger than the actual dragon. The player cannot sit “inside” this hitbox because the server doesn’t want a 
player to sit inside a monster (seems legit, right? ;) ), so we cannot move the player closer to the dragon. -.- Other players do not see the rider 
floating as far above the dragon as the rider sees himself. This difference is caused by the client-side rendering of the player models.

简译:
末影龙碰撞体积太大了,玩家不能撞到末影龙

  • 问:我不能上龙,出了什么问题?
  • 答:我怎么知道?把你的服务器日志发给我.

详细解释:

There are several possible reasons for this and I cannot give an exact answer to this question. The most common reasons are listed below:
1.One of the most common reasons for this is that users updated their server’s version of DragonTravel and the new version contains new options in the config.yml or the messages.yml. If DragonTravel then tries to start and recognizes that the existing config-/messages-file is outdated, it states that in the server-log and requires the admin to delete the old config (backup it before!) to create a new one at start-up. Afterwards, the admin can change the new config the way he likes to.
2.Of course there is also the possibility that there is an error which was caused by a corrupted database, configy.ml, messages.yml, a dumb admin or one of us developers. You normally see this directly when taking a look at the server.log. In this case, we can best help you if you simply paste your server.log at pastebin.com and create a ticket linking to it, telling us some important things about the moment the problem occured (What did you do? What did you expect to happen? What did actually happen? ...?). We will then try to help you as soon as possible.

简译:
使用最新版本的插件,检查你的配置有没有出错

权限节点

权限 描述
dt.home 向一个地方旅行并设置家
dt.sethome 只设置自己的家
dt.travelhome 只向自己的家旅行
dt.ctravel 旅行的坐标
dt.ptravel 向一个玩家飞去
dt.fhome 传送到派系的传送点 (需要Factions)
dt.tspawn 传送到城镇传送点 (需要Towny)
dt.travel.* 飞行到所有站点
dt.travel.<stationname> 飞行到某个站点
dt.flight.* 使用所有航线
dt.flight.<flightname> 示例
dt.admin.* 所有管理员指令
dt.admin.reload

重载插件

dt.admin.signs

所有可用管理员的牌子指令

dt.admin.stations

所有可用管理员的站点指令

dt.admin.flights

所有可用管理员的航线指令

dt.admin.statdragon

创建或移除静止的龙

dt.admin.remdragons

移除附近的空龙

dt.nocost.*

玩家不需要花费任何东西

dt.nocost.travel.*

玩家不需要花费旅费

dt.nocost.travel.command

玩家用指令旅行不需旅费

dt.nocost.travel.sign

玩家用牌子旅行不需旅费

dt.nocost.randomtravel.*

玩家前往随机地点不需旅费

dt.nocost.randomtravel.command

玩家用指令前往随机地点不需旅费

dt.nocost.randomtravel.sign

玩家用牌子前往随机地点不需旅费

dt.nocost.ptravel

玩家飞到其他玩家位置不需旅费

dt.nocost.ctravel

玩家飞到指定位置不需旅费

dt.nocost.fhome

玩家不需要花费就可以到派系之家

dt.nocost.flight.*

免费航线

dt.nocost.flight.command

指令航线免费

dt.nocost.flight.sign

牌子航线免费

dt.nocost.home.*

玩家不需要花费回家

dt.nocost.home.travel

玩家不需要花费回家

dt.nocost.home.set

玩家不需要花费设置家

dt.ptoggle

允许玩家开关其他玩家飞龙骑脸

dt.notrequireitem.*

玩家不需要 “特定物品” 来上龙

dt.notrequireitem.travel

玩家不需要 “特定物品” 来旅行

dt.notrequireitem.flight

玩家不需要 “特定物品” 来使用航线

dt.ignoreusestations.*

玩家不需在站点就可以使用任何指令

dt.ignoreusestations.travels

玩家不需在站点就可以旅行

dt.ignoreusestations.flights

玩家不需在站点就可以使用航线

dt.ignoredragonlimit

允许玩家骑龙,无视配置内的末影龙上限

dt.ignoreminheight

允许玩家骑龙,无视配置内的末影龙骑乘最低高度

dt.ignoredamagerestriction

允许玩家骑龙,无视配置内的冷却

配置

File:
    Version: 0.8
#Send usage statistics to mcstats.org
UseMetrics: true
#Automatically update to the latest version on BukkitDev
UseAutoUpdater: false
    
################################
####### General Settings #######
################################

# <<< Choose which dragon-entities can't destroy blocks >>>
AntiGriefDragons:
    bypassWorldGuardAntiSpawn: true
    ofDragonTravel: false
    all: true

# <<< Choose which messages-file DragonTravel should use >>>
# Possible values are:
# 'en' - English
# 'de' - German
# 'fr' - French
# 'custom' - leads to the use of the file named "messages-custom.yml"
# Default: 'en'
Language: 'en'
    
# <<< Set the dragon's flying-speed >>>
# The number represents the blocks in 1 server tick, 20 ticks = 1 second
# Do not set it above 1.0 or your server will lag like hell and/or crash!
# Default: 0.5
DragonSpeed: 0.5

# <<< Set the maximum amount of dragons on your server >>>
# Use this if you encounter lags on your server which are caused
# by too many dragons travelling at the same time.
# This only limits DragonTravel-dragons and does not
# handle stationary dragons spawned by DragonTravel!
# Default: -1 (disabled)
DragonLimit: -1

# <<< Set the maximum distance a player is allowed to travel >>>
# Use this if you encounter lags on your server which are caused
# by too many chunks being loaded due to too many long-distance travels.
# This distance is in blocks.
# Default: -1 (no limit)
MaxTravelDistance: -1

# <<< Teleport a player who dismounts back to the point he started from >>>
# Some players use flights or travels to a location to "jump off" during the
# flight an that way get to other places.
# If set to true, those players will be teleported back to the point they started from.
# If set to false, those players will just be dismounted where they are and teleported to the ground.
# Default: true
TeleportToStartOnDismount: true

# <<< Toggles vulnerability of players >>>
# If set to true, dragon-riders take damage (players can also be killed by the environment when travelling through mountains!)
# If set to false, dragon-riders do not take damage at all.
# Default: false
VulnerableRiders: false

# <<< Choose the commands which can't be executed while being on a dragon >>>
# Make sure to list all commands which could teleport a player away from the dragon!
# You must only define the first word with the "/", in this list!
CommandPrevent:
- /spawn
- /f
- /kill
- /home
- /tp

# <<< The Random Destination >>>
# When traveling to a destination with this name (Default: _random_) will start a travel
# to a random destination within the borders you can set below.
RandomDest:
    Name: '_random_'
    Limits:
        X-Axis:
            Min: -100
            Max: 100
        Z-Axis:
            Min: -100
            Max: 100
            
# <<< Limit mounting to stations >>>
# You can limit the mounting of dragons to stations (and a specified radius around it)
# Defaults:
#   EnableForTravels: false
#   EnableForFlights: false
#   Radius: 5
#   ExcludeSigns: false
MountingLimit:
    EnableForTravels: false
    EnableForFlights: false
    Radius: 5
    ExcludeSigns: false
            
################################
####### Payment-Settings #######
################################

Payment:
    usePayment: false
    byResources: false
    byEconomy: false
    Economy:
        Prices:
            toStation: 5.0
            toRandom: 5.0
            toPlayer: 5.0
            toCoordinates: 5.0
            toHome: 5.0
            toFactionhome: 5.0
            toTownSpawn: 5.0
            setHome: 5.0
            Flight: 5.0
    Resources:
        ItemType: GOLD_INGOT
        ItemName: '<default>'
        Prices:
            toStation: 5
            toRandom: 5
            toPlayer: 5
            toCoordinates: 5
            toHome: 5
            toFactionhome: 5
            toTownSpawn: 5
            setHome: 5
            Flight: 5


            
################################            
####### Travel-Settings #######
################################

# <<< Choose how high the dragon flys during a travel >>>
# The number represents blocks Numbers over sky-height are allowed
# Default: 100
TravelHeight: 100

# <<< Does a player need to have a special item in hand to use DragonTravel? >>>
# Choose the item a player needs to have in his hands to use DragonTravel.
# Default: 122 (Dragon-Egg which can be obtained by killing the Enderdragon)     
RequiredItem:
    Item: 122
    For:
        toStation: false
        toRandom: false
        toPlayer: false
        toCoordinates: false
        toFactionhome: false
        toTownSpawn: false
        toHome: false
        Flight: false
    
# <<< Limit the use of the normal travels to signs >>>
# This disables the command /dt travel for all players with the admin-permissions.
# Default: false
OnlySigns: false

# <<< Default setting for the ptoggle-flag of a player >>>
# Choose whether travels to a player are allowed (true) or denied (false) by default
# Default: true
PToggleDefault: true

# <<< Toggles if riders are dismounted when pressing shift while riding the dragon. >>>
# If set to 'true', riders are dismounted on pressing shift.
# If set to 'false', riders are not dismounted on pressing shift.
# Default: false
DismountOnShift: false

# <<< Toggles where riders are dismounted when reaching their target location. >>>
# If set to 'true', riders are dismounted at their exact location.
# If set to 'false', riders are dismounted to the next blocks below them.
# Default: false
DismountAtExactLocation: false

# <<< Minimum height required to mount a dragon >>>
# To prevent players from escaping mines by using dragons, you can use this option.
# Set it to the Y value the players must have at least to mount a dragon.
# Set it to -1 to disable the check
# Default: -1
MinimumMountHeight: -1

# <<< Damage cooldown time >>>
# To prevent players from escaping fights by using dragons, you can use this option.
# Set it to the number of seconds a player must wait before mounting a dragon after he received damage.
# Set it to -1 to disable the check
# Default: -1
DamageCooldown: -1

# <<< Sky Light Limits >>>
# If this is true, the player must mount and dismount in places with direct access to skylight.
# This only applies to travels. Flights are exempt of this rule.
RequireSkyLight: false

# <<< World blacklist travel TO >>>
# If a world is on this list, players are not able to travel there.
# If a player already is in this world, he is still allowed to travel within this world
# or to any other world.
WorldBlacklistTravelTo:
- ExampleWorld1
- ExampleWorld2

# <<< World blacklist travel FROM >>>
# If a world is on this list, players are not able to start a travel.
WorldBlacklistTravelFrom:
- ExampleWorld3
- ExampleWorld4

信息

API

DragonTravel提供了一个可以被其他插件访问的API。目前,API仍然功能有限,但会随着时间的推移而完善. 目前的功能有:

  • 创建和移除静止的末影龙
  • 把玩家送上旅途

导入RyeDragonAPI:

import eu.phiwa.dragontravel.api.RyeDragonAPI;

用它来做一些东西:

Player player = ...; # Get player object
Location loc = ...; # Get location object

RyeDragonAPI api = RyeDragonAPI.getAPI();

# 把玩家送上旅途
try {
    api.sendOnTravel(player, loc);
} catch (DragonException e1) {
    // Handle problem
    e1.printStackTrace();
}

# 创建静止龙
try {
    api.makeStationaryDragon(loc, "statdragon", "Fancy Dragon Name", player.getUniqueId());
} catch (DragonException e2) {
    // Handle problem
    e2.printStackTrace();
}

# 移除静止龙
try {
    api.removeStationaryDragon("statdragon");
} catch (DragonException e3) {
    // Handle problem
    e3.printStackTrace();
}

更新记录

在此查看

协议

这个插件使用BSD协议.