随笔分类 -  Tlbb

关于贴图看不到。显示是白色或者其他。
摘要:0125更新后的后遗症。具体原因就不纠结了。。因此不能直接调用all.material 需要进行修改了才能正常贴图。如此,比较麻烦。用了我发的这个东西,以后就不用在补丁内加入 all.material,直接用官方就OK。。 阅读全文

posted @ 2014-05-01 11:10 DieAngel 阅读(289) 评论(0) 推荐(0)

盘点天龙历史:七年以来所有资料片
摘要:2007年5月9日《天龙八部》正式公测天龙研究走过了快七年的岁月。 资料片盘点起来实在太多,很多以前的图片也不好找,故分2次盘点完! 先来看一个宣传视频,这是小记能找到的最早的天龙宣传视频! 2007年8月15日:“仙人指路” 在此之前,游戏里面走路只能靠鼠标一直点着,这部资料片首发“自动寻路”功能,广大路痴有了一大福音。开放了有矿和药材的雪原,第一次有了手工装备这个概念。推出了高级御赐套装。 阅读全文

posted @ 2014-04-23 19:35 DieAngel 阅读(2271) 评论(0) 推荐(0)

关于一机多区的可行性分析。
摘要:111 阅读全文

posted @ 2013-10-29 20:26 DieAngel 阅读(447) 评论(1) 推荐(0)

关于掉落的详细分析。
摘要:先从OnDie事件看起:VOID Obj_Monster::OnDie_Before( ObjID_t idKiller ){ //计算怪物掉落情况(即:谁拥有掉落物品) m_DropRuler = MonsterDropRuler::GetMonsterDropRuler(this); switch(m_DropRuler) { case BDR_UNKNOW: case BDR_COMMON: case BDR_BOSS: { MonsterDropRuler::CaculateBossOwnerList(th... 阅读全文

posted @ 2013-10-19 17:57 DieAngel 阅读(451) 评论(0) 推荐(0)

关于TLBB 客户端UI界面修改几个定义了解
摘要:CEGUI文件类型.scheme它是CEGUI首先调用的一个文件,内容包括要使用的imageset文件、所对应的looknfeel文件,以及将要在looknfeel定义的控件的类型、工厂、渲染器和在looknfeel中的名字。如其中window set 指定了装载模块( .dll 等)的名称,和一组可以注册到系统中的 widget.不同版本的CEGUI里面scheme文件的结构可能会稍有不同,在新版本中想用旧版本的scheme文件的时候,只要将照新版本里面其它scheme文件的格式扒下来就可以,但是扒的时候要细心,一要扒对,二要扒全。.looknfeel它定义了控件的细节,包括该控件各部分所用 阅读全文

posted @ 2013-03-30 19:19 DieAngel 阅读(1248) 评论(0) 推荐(0)

天龙八部服务端Lua脚本系统(转)
摘要:一、Lua脚本功能接口1. LuaInterface.h/.cpp声明和实现LuaInterface。LuaInterface成员如下://脚本引擎FoxLuaScript mLua ;//注册器LuaCFuncRegister mFuncRegister;//场景关联Scene* mOwner;//已经读取的脚本表IDTable m_ScriptTable ;主要方法:VOID Init(Scene* pScene);//完成Lua脚本环境的初始化和C导出函数的注册Scene* GetOwner();执行Lua脚本的C++接口,提供多达8个参数支持。INT ExeScript( Script 阅读全文

posted @ 2012-08-21 13:12 DieAngel 阅读(2739) 评论(0) 推荐(0)

天龙八部的BillingServer
摘要:从字面上看,Billing是计费的,应该处理玩家在线时间或者包月之类。但是天龙八部是免费游戏,不需要算时间来计费。从代码中 看,BillingServer也比较简单,它有一个连接到Web服务器,并监听一个端口,接受一些客户端的连接。从该服务器处理的协议包上 看,BillingServer接受LoginServer和WorldServer的连接。BillingServer处理的主要协议包有://世界数据服务器通知游戏服务器和登陆服务器场景中的人数信息class SSScenePlayerCountHandler//Login 请求BillingSystem验证class LBAskAuthHan 阅读全文

posted @ 2012-08-21 13:05 DieAngel 阅读(608) 评论(0) 推荐(0)

天龙八部服务器端共享内存的设计
摘要:一、服务器构架一个天龙八部游戏区,主要服务器部署情况如下图所示:实 际部署可能有所不同。区角色数据库可以安装到Machine4,那么一个区有5台物理机器。LoginServer和WorldServer、 CharacterDB、BillingServer有连接。WorldServer和各个GameServer有连接。ShareMemory和 CharacterDB有连接。一台物理机器上,会启动一个ShareMemory进程和一个服务器进程,服务器进程有世界服务器和游戏服务器。天龙八部的世界是ZoneBase的,一个游戏服务器服务启动多个线程,每个线程服务若干个场景。在ShareMemory进程 阅读全文

posted @ 2012-08-21 13:05 DieAngel 阅读(572) 评论(0) 推荐(1)

TL中使用Lua脚本的过程 脚本中的Timer过程
摘要:1.首先在c++源码中添加需要注册到Lua的函数INT LuaFnSetTimer(Lua_State* L){LUA_ENTER_FUNCTIONSceneID_t sceneId = Lua_ValueToNumber(L,1);ObjID_t selfId = Lua_ValueToNumber(L,2);ScriptID_t scriptId = Lua_ValueToNumber(L,3);const CHAR* funcName = Lua_ValueToString(L,4);INT tickTime = Lua_ValueToNumber(L,5);BEGINHUMANDEFI 阅读全文

posted @ 2012-08-21 13:04 DieAngel 阅读(1199) 评论(0) 推荐(0)

游戏服务器的架构设计
摘要:游戏服务器的设计是一项颇有挑战性的工作,游戏服务器的发展也由以前的单服结构转变为多服机构,甚至出现了bigworld引擎的分布式解决方案,最近了解到Unreal的服务器解决方案atlas也是基于集群的方式。负载均衡是一个很复杂的课题,这里暂不谈bigworld和atlas的这类服务器的设计,更多的是基于功能和场景划分服务器结构。首先说一下思路,服务器划分基于以下原则:1:分离游戏中占用系统资源(cpu,内存,IO等)较多的功能,独立成服务器2:在同一服务器架构下的不同游戏,应尽可能的复用某些服务器(进程级别的复用)3:以多线程并发的编程方式适应多核处理器。4:宁可在服务器之间多复制数据,也要保 阅读全文

posted @ 2012-08-21 13:04 DieAngel 阅读(352) 评论(0) 推荐(0)

天龙源码分析 - 客户端登录流程
摘要:1 登录状态定义//登录状态enum PLAYER_LOGIN_STATUS{LOGIN_DEBUG_SETTING, //!GetAs_Int(“GameServer_ConnectDirect”) == 1){//直接切换到Change-Server流程CGameProcedure::SetActiveProc((CGameProcedure*)CGameProcedure::s_pProcChangeScene);return;}//— for debugbreak;}case LOGIN_DISCONNECT:{s_pGfxSystem->PushDebugStr... 阅读全文

posted @ 2012-08-21 13:03 DieAngel 阅读(683) 评论(0) 推荐(0)

天龙源码分析 - VariableSystem
摘要:VariableSystem是天龙的全局变量系统,使用的最大好处除了可以统一保存在文件中外,还可以统一管理全局变量,防止全局变量满天非的问题。实现方式:一变量定义structVARIABLE{STRINGvValue;//变量值BOOLbTemp;//临时变量};#ifdef__SGI_STL_PORTtypedefstd::hash_mapVARIABLE_MAP;#elsetypedefstdext::hash_mapVARIABLE_MAP;#endif可见变量是放在hash里面的,这样可以加快查找二 变量保存//当前保存的变量VARIABLE_MAPm_mapCurrent;//游戏退 阅读全文

posted @ 2012-08-21 13:02 DieAngel 阅读(311) 评论(0) 推荐(0)

天龙源码分析 – 选择角色流程
摘要:一 角色选择流程开始可能的一种情况是,客户端接到服务器发送的包(LCRetCharList)开始的,这个包里面有玩家角色的个数等信息UINT LCRetCharListHandler::Execute(LCRetCharList* pPacket, Player* pPlayer ){__ENTER_FUNCTIONif(pPacket&&(pPacket->GetResult() == ASKCHARLIST_SUCCESS)){int iCharacterCount = pPacket->GetCharNumber();// 保存角色的个数CGameProced 阅读全文

posted @ 2012-08-21 13:01 DieAngel 阅读(499) 评论(0) 推荐(0)

天龙八部源码描述
摘要:天龙八部(武侠世界)的源码很可能是天龙八部代码流出后改写的,因为在看了代码中可以找到一些证据,整个客户端分为:一个是编辑器,一个是客户端,采用OGRE+cegui+自写的简单的物理碰撞检测+FMOD+自写的网络库。服务器端代码目前没仔细关注客户端总体的描述如下:UI系统 CEGUI UI基础系统CEGUI渲染器Expat XML解析器 CEGUI依赖,估计编写者不喜欢用FreeType2 跨平台、开源的字体渲染器 用于绘制中文脚本 luaPlus3D显示引擎Ogre开源的高效渲染引擎 最新的OGRE是1.7.2碰撞检测 Opcode 开源,占用内存少 其他可考虑使用bullet,ODE或者其他 阅读全文

posted @ 2012-08-21 12:59 DieAngel 阅读(722) 评论(0) 推荐(0)

导航