从13.11.28升级上来的话,pre_kingdom_pass表的coin、score、type、hash字段类型改为无符号型。
何时删除pre_kingdom_siege中的过时记录? 有玩家执行“查看通关记录”(listsiege)时。不管是谁,它就会删除所有玩家30天前的记录。 何时删除pre_kingdom_pass中的过时记录? 有玩家执行“查看过关记录”(listpass)时。不管是谁,它就会删除所有玩家30天前的记录。 何时删除pre_kingdom_board中的无效过关记录? pre_kingdom_board有一部分是过关排名,一旦它对应的过关记录被删除,它就变得无效了。 有玩家执行“查看过关排名”(listboard:pass)时。不管是谁,它就会删除排名榜中无效记录。 注:上传过关记录(uploadpass)时不会删除无效记录。过关记录插入排名榜过程不会涉及到相关具体记录,它只是根据pre_kingdom_board中的积分值就可计算了,出现无效时不立即删除的确可能会造成有些本该进到排名中的不能立即进入,但希望会有玩家立即“查看过关排名”,进而删除无效记录,保证排名榜的正确性。 |
程序内向discuz注册账号 按照是否调用on_register函数,注册分调用discuz内置的on_register和自写简单的on_reister。 方式一:调用discuz内置的on_register
方式二:自写on_register(当前在用)
|
一、插件、ucenter中图像 discuz自带的是每账号三图像(small、middle、big),王国插件是每账号两图像(small、middle),不过要是插件由middle复制出big,理论上说由插件就可以替掉discuz的自带图像。理论上是如此,实际却得考虑几个问题。
当前实现方式是插件给提供个选项,由用户选择是使用王国战争设定形象还是discuz自带形象。在图像存储上,插件、ucenter中图像互不干扰,但它们在保存图像时有着一致的目录结构。针对9位的uid组织成三级目录,最高三位是一级目录,次二位是二级目录,次次二位是三级目录。举个例子,对uid=13154,它的目录结构是“avatar/000/01/31/54_avatar_small.png”。 二、存档尺寸 游戏支持录像回放,导致存档中回合数越多则存档会越大,要是不限回合那存档大小就没尽头。玩群2这种大地图剧本,玩个200回合存档就可能超过3M。这种大小对网络传输来说是有点大了,于是想过先gzip压缩再上传。要gzip另一目的是要降低存档对服务器硬盘要求,但当前实现的没进行gzip压缩。
当前实现是未压缩存档直接进行网络传输,服务器上存的也是未压缩过的。这种方式是是否可行,让运行一段时间看实际效果。 三、标准discuz插件 王国插件已符合discuz插件标准,不论是安装还是代码中使用,都要以着标准插件方式。像运行时,php代码/模板会遇到翻译语言问题,安装王国插件时会把包中语言内容写入pre_common_syscache表,php代码/模板尽可按标准去使用插件的语言翻译机制,而且应该按标准去做。 以王国插件为例简述下discuz插件
四、插件中的php如何调用discuz自带的css discuz代码中样式表文件是放在<bbs>/data/cache,而且要使用这些样式表,如果不想修改discuz头模板文件(具体是<bbs>/template/default/common/header_common.htm),那你的php必须位在和data同级的那个目录,即<bbs>根下!原因:header_common.htm形成样式表语句是“<!--{csstemplate}-->”,模板机制解析这语句是调用“this->loadcsstemplate”,this指的是类“class template”,即调用template的成员函数loadccstemplate,而loadccstemplate在指定css文件时使用了固定的相对路径。
插件目录不可能是根目录,而又不想修改discuz代码,discuz解决方案:插件php只是个子php,它的头统一是根下的plugin.php。由于plugin.php位在根下,由它启动的一系列过程就可使用discuz自带的css,这自然包括了插件目录中的那些php。 五、把插件入口放在用户状态栏 王国插件安装后,插件入口是放在导航栏,若要在右上角状态栏增加入口,可执行以下步骤。
|
命令
|