cx235 发表于 2022-11-4 08:56:47

如何获取服务器中玩家关于技能使用方面的一些基础数据

对于任何一个魔域私服gm来说最想知道的事情莫过于服务器中的玩家每天都在做些什么,比如我们知道了魔域私服战士职业玩家在游戏中使用之多的技能,使用最少的技能最喜欢打的怪物最不喜欢打的怪物。知道这些信息之后我们就能够针对他们的喜好制定一系列的修改来优化我们服务器中的玩法。说起来这个方法似乎很简单但是对于大多数魔域私服gm来说都是非常难做到的,因为很多新手gm在这之前完全没有做过相关的事情。

#type -
enum NPCTYPE{
_NPC_NONE = 0, // 通用NPC
_SHOPKEEPER_NPC = 1, // 商店NPC
_TASK_NPC = 2, // 任务NPC
_STORAGE_NPC = 3, // 寄存处NPC
_TRUNCK_NPC = 4, // 箱子NPC
_FACE_NPC = 5, // 变头像NPC   
_FORGE_NPC = 6, // 锻造NPC
_STATUARY_NPC = 7, // 雕像NPC
_WEAPONGOAL_NPC = 8, // 武器靶子NPC   
_MAGICGOAL_NPC = 9, // 武器靶子NPC
_BOWGOAL_NPC = 10, // 武器靶子NPC
_SYNFLAG_NPC = 11, // 帮派标记NPC
};
#sort -
enum NPCSORT{
NPCSORT_TASK = 1, // 任务类
NPCSORT_RECYCLE = 2, // 可回收类
NPCSORT_SCENE = 4, // 场景类(带地图物件,LookFace为地图物件的TYPE)
NPCSORT_LINKMAP = 8, // 挂地图类(使用LINKID,与其它使用LINKID的互斥)
NPCSORT_DIEACTION = 16, // 带死亡任务(使用LINKID,与其它使用LINKID的互斥)
NPCSORT_DELENABLE = 32, // 可以手动删除(不是指通过任务)
};
#maxlife - 0: can not be attack
#base - npc type in "TerrainNpc.ini".


DROP TABLE IF EXISTS cq_goods;
CREATE TABLE cq_goods (
id int(4) unsigned zerofill NOT NULL default '0000',
ownerid int(4) unsigned NOT NULL default '0',
itemtype int(4) unsigned NOT NULL default '0',
PRIMARY KEY (id),
KEY ownerid(ownerid)
) TYPE=MyISAM;   


#
# Table structure for table 'cq_task'
#

DROP TABLE IF EXISTS cq_task;
CREATE TABLE cq_task (
id int(4) unsigned zerofill NOT NULL default '0000',
id_next int(4) unsigned zerofill NOT NULL default '0000',
id_nextfail int(4) unsigned zerofill NOT NULL default '0000',
itemname1 char(15) binary NOT NULL default '',
itemname2 char(15) binary NOT NULL default '',
money int(4) unsigned NOT NULL default '0',
profession int(4) unsigned NOT NULL default '0',
edu int(4) unsigned NOT NULL default '0',
min_pk int(4) NOT NULL default '0',
max_pk int(4) NOT NULL default '0',
team int(4) unsigned zerofill NOT NULL default '0',
metempsychosis int(4) unsigned zerofill NOT NULL default '0',
query tinyint(1) unsigned zerofill NOT NULL default '0',
marriage tinyint(1) NOT NULL default '0',
client_active tinyint(1) unsigned zerofill NOT NULL default '0',
PRIMARY KEY (id)
) TYPE=MyISAM;

#
# Table structure for table 'cq_action'
#

DROP TABLE IF EXISTS cq_action;
CREATE TABLE cq_action (
id int(4) unsigned zerofill NOT NULL default '0000',
id_next int(4) unsigned zerofill NOT NULL default '0000',
id_nextfail int(4) unsigned zerofill NOT NULL default '0000',
type int(4) unsigned zerofill NOT NULL default '0000',
data int(4) NOT NULL default '0',
param char(127) binary NOT NULL default '',
PRIMARY KEY (id)
) TYPE=MyISAM;


DROP TABLE IF EXISTS cq_user;
CREATE TABLE cq_user (
name varchar(15) binary NOT NULL default '',
mate varchar(15) binary NOT NULL default '',
lookface int(4) unsigned NOT NULL default '0',
hair smallint(2) unsigned NOT NULL default '0',
money int(4) unsigned NOT NULL default '0',
money_saved int(4) unsigned NOT NULL default '0',
task_data int(4) unsigned NOT NULL default '0',
level tinyint(1) unsigned NOT NULL default '0',
exp int(4) NOT NULL default '0',
force smallint(2) unsigned NOT NULL default '0',
physique smallint(2) unsigned NOT NULL default '0',


Speed smallint(2) unsigned NOT NULL default '0',
health smallint(2) unsigned NOT NULL default '0',
soul smallint(2) unsigned NOT NULL default '0',
additional_point smallint(2) unsigned NOT NULL default '0',
auto_allot tinyint(1) unsigned NOT NULL default '0',
life smallint(2) unsigned NOT NULL default '0',
mana smallint(2) unsigned NOT NULL default '0',
profession tinyint(2) unsigned NOT NULL default '0',
deed int(4) NOT NULL default '0',
pk smallint(2) NOT NULL default '0',
nobility tinyint(1) unsigned NOT NULL default '0000',
medal varchar(64) binary NOT NULL default '',
medal_select tinyint(4) unsigned NOT NULL default '0000',
metempsychosis tinyint(1) unsigned NOT NULL default '0000',
syndicate_id int(4) unsigned NOT NULL default '0000',
recordmap_id int(4) unsigned NOT NULL default '0000',
recordx smallint(2) unsigned NOT NULL default '0000',
recordy smallint(2) unsigned NOT NULL default '0000',
account_id int(4) unsigned NOT NULL default '0000',
id int(4) unsigned NOT NULL auto_increment,
last_login int(8) unsigned NOT NULL default '0',
task_mask int(4) unsigned NOT NULL default '0000',
time_of_life int(4) unsigned NOT NULL default '0000',
virtue int(4) unsigned NOT NULL default '0000',
home_id int(4) unsigned NOT NULL default '0000',
title varchar(64) binary NOT NULL default '',
title_select tinyint(4) unsigned NOT NULL default '0000',
lock_key int(4) unsigned NOT NULL default '0000',
PRIMARY KEY (id),
KEY index_account_id(account_id),
KEY index_name(name),
KEY index_level(level)
) TYPE=MyISAM;
INSERT cq_user SET id=1000000,name='RESERVE_ID_SPACE',account_id=4111222333;

DROP TABLE IF EXISTS cq_weapon_skill;
CREATE TABLE cq_weapon_skill (
type int(4) unsigned zerofill NOT NULL default '0000',
level tinyint(2) unsigned zerofill NOT NULL default '0000',
exp int(4) unsigned zerofill NOT NULL default '0000',
old_level tinyint(2) unsigned zerofill NOT NULL default '0000',
owner_id int(4) unsigned zerofill NOT NULL default '0000',
id int(4) unsigned zerofill NOT NULL auto_increment,
unlearn tinyint(1) unsigned zerofill NOT NULL default '0',
PRIMARY KEY (id),
KEY owner_id(owner_id)
) TYPE=MyISAM;   

#
# Table structure for table 'cq_levexp'
#

DROP TABLE IF EXISTS cq_levexp;
CREATE TABLE cq_levexp (
level int(4) unsigned zerofill NOT NULL default '0000',
exp int(4) unsigned NOT NULL default '0',
PRIMARY KEY (level)
) TYPE=MyISAM;

#
# Dumping data for table 'cq_levexp'
#

INSERT INTO cq_levexp VALUES (0001,36);
INSERT INTO cq_levexp VALUES (0002,51);
INSERT INTO cq_levexp VALUES (0003,71);
INSERT INTO cq_levexp VALUES (0004,100);
INSERT INTO cq_levexp VALUES (0005,164);
INSERT INTO cq_levexp VALUES (0006,357);
INSERT INTO cq_levexp VALUES (0007,523);
INSERT INTO cq_levexp VALUES (0008,765);
INSERT INTO cq_levexp VALUES (0009,1115);
INSERT INTO cq_levexp VALUES (0010,2705);
INSERT INTO cq_levexp VALUES (0011,2841);
INSERT INTO cq_levexp VALUES (0012,3052);
INSERT INTO cq_levexp VALUES (0013,3275);
INSERT INTO cq_levexp VALUES (0014,3511);
INSERT INTO cq_levexp VALUES (0015,2461);
INSERT INTO cq_levexp VALUES (0016,3156);
INSERT INTO cq_levexp VALUES (0017,4213);
INSERT INTO cq_levexp VALUES (0018,5397);
INSERT INTO cq_levexp VALUES (0019,6396);
INSERT INTO cq_levexp VALUES (0020,4712);
INSERT INTO cq_levexp VALUES (0021,6036);
INSERT INTO cq_levexp VALUES (0022,8049);
INSERT INTO cq_levexp VALUES (0023,10300);
以上就是一为原创分享给大家的如何获取服务器中玩家关于技能使用方面的一些基础数据,其实魔域私服中玩家技能方面的相关数据收集还是比较简单的,想要做到这一点对并不需要gm们做太多的操作,以前他们之所以不去做主要是不知道应该如何下手,通过这篇攻略中的思路想必大家也有了一个简单的思路来统计魔域私服相关数据了。


mhikak 发表于 2022-11-4 12:58:59

强烈支持楼主ing……

lili2725 发表于 2022-11-4 22:02:03

真是难得给力的帖子啊。

108426382 发表于 2022-11-6 22:07:18

我只是路过打酱油的。

tt656592 发表于 2022-11-7 11:30:32

我只是路过打酱油的。

babyset 发表于 2022-11-8 00:53:17

强烈支持楼主ing……

yaosine 发表于 2022-11-8 05:39:21

我只是路过打酱油的。

dc80 发表于 2022-11-10 22:23:41

感恩无私的分享与奉献 :)

w0x0000w0x 发表于 2022-11-12 03:26:33

感恩无私的分享与奉献 :)

qtve 发表于 2022-11-12 07:44:19

感恩无私的分享与奉献 :)
页: [1] 2
查看完整版本: 如何获取服务器中玩家关于技能使用方面的一些基础数据