game_tele 表
game_tele表存储游戏中所有预设传送点,是.tele命令的数据源,包含名称和精确坐标。
表概述
game_tele表属于Tele Command系统,存储了游戏中所有的预设传送坐标点。GM可以通过 .tele 名称 命令快速传送到表中的任意位置。
主键为 id,每个传送点有唯一的名称和精确的地图ID、XYZ坐标和朝向。
表结构
| 字段名 | 数据类型 | 默认值 | 说明 |
|---|---|---|---|
| id | INT UNSIGNED | NOT NULL | 传送点唯一ID(主键) |
| position_x | FLOAT | 0 | 传送目标X坐标 |
| position_y | FLOAT | 0 | 传送目标Y坐标 |
| position_z | FLOAT | 0 | 传送目标Z坐标(高度) |
| orientation | FLOAT | 0 | 传送后玩家朝向角度 |
| map | SMALLINT UNSIGNED | 0 | 目标地图ID |
| name | VARCHAR(100) | '' | 传送点名称(.tele命令参数) |
重要字段详解
name (传送点名称)
用于.tele命令的定位名称。支持中文。常见传送点包括各大主城、副本入口和重要地标。
常见传送点名称示例:
stormwind/暴风城- 暴风城orgrimmar/奥格瑞玛- 奥格瑞玛dalaran/达拉然- 达拉然shattrath/沙塔斯- 沙塔斯城
map (目标地图)
传送目标所在的地图编号:
- 0 - 东部王国
- 1 - 卡利姆多
- 530 - 外域
- 571 - 诺森德
position_x/y/z & orientation (位置与朝向)
精确定义传送目标位置。orientation为弧度值,定义传送后玩家的面朝方向。
实战案例
查询所有暴风城相关的传送点:
SELECT id, name, position_x, position_y, position_z, map
FROM game_tele
WHERE name LIKE '%stormwind%' OR name LIKE '%暴风%'
ORDER BY id;
查询外域所有传送点:
SELECT id, name, position_x, position_y, position_z
FROM game_tele
WHERE map = 530
ORDER BY name;
添加自定义传送点:
INSERT INTO game_tele (id, position_x, position_y, position_z, orientation, map, name)
VALUES (9999, -9000.0, 500.0, 100.0, 1.5, 0, '自定义传送点');
常见问题
Q: 执行.tele命令提示"没有找到该位置",如何排查?
检查game_tele表中是否存在对应名称的记录。注意.tele命令的模糊匹配规则。
Q: 如何批量导入传送点?
可以使用SQL INSERT INTO...SELECT或LOAD DATA命令从其他数据源批量导入坐标数据。