playercreateinfo表

概述

playercreateinfo表是AzerothCore中定义玩家角色创建时基础信息的核心表格。它存储了不同种族和职业组合的初始属性、位置、外观等信息,是新角色创建系统的基础数据表。

表格作用

表格结构

字段名 数据类型 默认值 说明
race TINYINT UNSIGNED 0 种族ID
详细说明:玩家种族的唯一标识符,这是复合主键的一部分。
种族对应:
  • 1 - 人类 (Human)
  • 2 - 兽人 (Orc)
  • 3 - 矮人 (Dwarf)
  • 4 - 暗夜精灵 (Night Elf)
  • 5 - 亡灵 (Undead)
  • 6 - 牛头人 (Tauren)
  • 7 - 侏儒 (Gnome)
  • 8 - 巨魔 (Troll)
  • 10 - 血精灵 (Blood Elf)
  • 11 - 德莱尼 (Draenei)
class TINYINT UNSIGNED 0 职业ID
详细说明:玩家职业的唯一标识符,这是复合主键的一部分。
职业对应:
  • 1 - 战士 (Warrior)
  • 2 - 圣骑士 (Paladin)
  • 3 - 猎人 (Hunter)
  • 4 - 盗贼 (Rogue)
  • 5 - 牧师 (Priest)
  • 7 - 萨满祭司 (Shaman)
  • 8 - 法师 (Mage)
  • 9 - 术士 (Warlock)
  • 11 - 德鲁伊 (Druid)
map SMALLINT UNSIGNED 0 地图ID
详细说明:新角色出生时所在的地图ID。
常见地图:
  • 0 - 东部王国 (Eastern Kingdoms)
  • 1 - 卡利姆多 (Kalimdor)
  • 530 - 外域 (Outland)
  • 571 - 诺森德 (Northrend)

种族对应:
  • 联盟种族:通常在东部王国 (map=0)
  • 部落种族:通常在卡利姆多 (map=1)
  • 血精灵:在外域 (map=530)
  • 德莱尼:在外域 (map=530)
zone MEDIUMINT UNSIGNED 0 区域ID
详细说明:新角色出生时所在的具体区域ID。
常见出生区域:
  • 人类:艾尔文森林 (Elwynn Forest)
  • 矮人/侏儒:丹莫罗 (Dun Morogh)
  • 暗夜精灵:泰达希尔 (Teldrassil)
  • 兽人/巨魔:杜隆塔尔 (Durotar)
  • 亡灵:提瑞斯法林地 (Tirisfal Glades)
  • 牛头人:莫高雷 (Mulgore)
  • 血精灵:永歌森林 (Eversong Woods)
  • 德莱尼:秘蓝岛 (Azuremyst Isle)
position_x FLOAT 0 X坐标
position_y FLOAT 0 Y坐标
position_z FLOAT 0 Z坐标
详细说明:新角色出生时的精确三维坐标位置。
坐标系统:
  • X轴:东西方向(正值向东)
  • Y轴:南北方向(正值向北)
  • Z轴:高度方向(正值向上)

获取坐标:可以在游戏中使用.gps命令获取当前位置坐标
orientation FLOAT 0 朝向
详细说明:新角色出生时面向的方向,以弧度为单位。
取值范围:0 - 2π (0 - 6.28)
方向对应:
  • 0 - 面向北方
  • π/2 (1.57) - 面向东方
  • π (3.14) - 面向南方
  • 3π/2 (4.71) - 面向西方

使用示例

查看所有种族职业组合

SELECT
    race,
    CASE race
        WHEN 1 THEN '人类'
        WHEN 2 THEN '兽人'
        WHEN 3 THEN '矮人'
        WHEN 4 THEN '暗夜精灵'
        WHEN 5 THEN '亡灵'
        WHEN 6 THEN '牛头人'
        WHEN 7 THEN '侏儒'
        WHEN 8 THEN '巨魔'
        WHEN 10 THEN '血精灵'
        WHEN 11 THEN '德莱尼'
    END as race_name,
    class,
    CASE class
        WHEN 1 THEN '战士'
        WHEN 2 THEN '圣骑士'
        WHEN 3 THEN '猎人'
        WHEN 4 THEN '盗贼'
        WHEN 5 THEN '牧师'
        WHEN 7 THEN '萨满'
        WHEN 8 THEN '法师'
        WHEN 9 THEN '术士'
        WHEN 11 THEN '德鲁伊'
    END as class_name,
    map, zone
FROM playercreateinfo
ORDER BY race, class;

查看特定种族的出生位置

-- 查看人类的所有职业出生位置
SELECT
    class,
    CASE class
        WHEN 1 THEN '战士'
        WHEN 2 THEN '圣骑士'
        WHEN 4 THEN '盗贼'
        WHEN 5 THEN '牧师'
        WHEN 8 THEN '法师'
        WHEN 9 THEN '术士'
    END as class_name,
    position_x, position_y, position_z, orientation
FROM playercreateinfo
WHERE race = 1;

添加新的种族职业组合

-- 添加人类德鲁伊(如果允许的话)
INSERT INTO playercreateinfo
(race, class, map, zone, position_x, position_y, position_z, orientation)
VALUES
(1, 11, 0, 12, -8949.95, -132.493, 83.5312, 0);

修改出生位置

-- 修改所有人类角色的出生位置到暴风城
UPDATE playercreateinfo
SET position_x = -8913.23,
    position_y = 554.633,
    position_z = 93.0517,
    orientation = 3.13
WHERE race = 1;

种族职业限制

联盟种族职业组合

部落种族职业组合

常见问题

如何添加新的种族职业组合?

需要在playercreateinfo表中添加对应记录,同时确保在playercreateinfo_item、playercreateinfo_skills、playercreateinfo_action等相关表中也有对应的数据。

修改出生位置后角色会在哪里?

只有新创建的角色会在新的出生位置,已存在的角色位置不会改变。

如何确定合适的出生坐标?

可以在游戏中使用GM命令.gps获取坐标,确保位置安全且符合种族背景。

相关表格