摘要:0125更新后的后遗症。具体原因就不纠结了。。因此不能直接调用all.material 需要进行修改了才能正常贴图。如此,比较麻烦。用了我发的这个东西,以后就不用在补丁内加入 all.material,直接用官方就OK。。
        
阅读全文
 
        
     
    
        
        
摘要:2007年5月9日《天龙八部》正式公测天龙研究走过了快七年的岁月。
资料片盘点起来实在太多,很多以前的图片也不好找,故分2次盘点完!
先来看一个宣传视频,这是小记能找到的最早的天龙宣传视频!
2007年8月15日:“仙人指路”
在此之前,游戏里面走路只能靠鼠标一直点着,这部资料片首发“自动寻路”功能,广大路痴有了一大福音。开放了有矿和药材的雪原,第一次有了手工装备这个概念。推出了高级御赐套装。
        
阅读全文
 
        
     
    
        
        
摘要:先从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...
        
阅读全文
 
        
     
    
        
        
摘要:CEGUI文件类型.scheme它是CEGUI首先调用的一个文件,内容包括要使用的imageset文件、所对应的looknfeel文件,以及将要在looknfeel定义的控件的类型、工厂、渲染器和在looknfeel中的名字。如其中window set 指定了装载模块( .dll 等)的名称,和一组可以注册到系统中的 widget.不同版本的CEGUI里面scheme文件的结构可能会稍有不同,在新版本中想用旧版本的scheme文件的时候,只要将照新版本里面其它scheme文件的格式扒下来就可以,但是扒的时候要细心,一要扒对,二要扒全。.looknfeel它定义了控件的细节,包括该控件各部分所用
        
阅读全文
 
        
     
    
        
        
摘要:一、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
        
阅读全文
 
        
     
    
        
        
摘要:从字面上看,Billing是计费的,应该处理玩家在线时间或者包月之类。但是天龙八部是免费游戏,不需要算时间来计费。从代码中 看,BillingServer也比较简单,它有一个连接到Web服务器,并监听一个端口,接受一些客户端的连接。从该服务器处理的协议包上 看,BillingServer接受LoginServer和WorldServer的连接。BillingServer处理的主要协议包有://世界数据服务器通知游戏服务器和登陆服务器场景中的人数信息class SSScenePlayerCountHandler//Login 请求BillingSystem验证class LBAskAuthHan
        
阅读全文
 
        
     
    
        
        
摘要:一、服务器构架一个天龙八部游戏区,主要服务器部署情况如下图所示:实 际部署可能有所不同。区角色数据库可以安装到Machine4,那么一个区有5台物理机器。LoginServer和WorldServer、 CharacterDB、BillingServer有连接。WorldServer和各个GameServer有连接。ShareMemory和 CharacterDB有连接。一台物理机器上,会启动一个ShareMemory进程和一个服务器进程,服务器进程有世界服务器和游戏服务器。天龙八部的世界是ZoneBase的,一个游戏服务器服务启动多个线程,每个线程服务若干个场景。在ShareMemory进程
        
阅读全文
 
        
     
    
        
        
摘要: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
        
阅读全文
 
        
     
    
        
        
摘要:游戏服务器的设计是一项颇有挑战性的工作,游戏服务器的发展也由以前的单服结构转变为多服机构,甚至出现了bigworld引擎的分布式解决方案,最近了解到Unreal的服务器解决方案atlas也是基于集群的方式。负载均衡是一个很复杂的课题,这里暂不谈bigworld和atlas的这类服务器的设计,更多的是基于功能和场景划分服务器结构。首先说一下思路,服务器划分基于以下原则:1:分离游戏中占用系统资源(cpu,内存,IO等)较多的功能,独立成服务器2:在同一服务器架构下的不同游戏,应尽可能的复用某些服务器(进程级别的复用)3:以多线程并发的编程方式适应多核处理器。4:宁可在服务器之间多复制数据,也要保
        
阅读全文
 
        
     
    
        
        
摘要: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...
        
阅读全文
 
        
     
    
        
        
摘要:VariableSystem是天龙的全局变量系统,使用的最大好处除了可以统一保存在文件中外,还可以统一管理全局变量,防止全局变量满天非的问题。实现方式:一变量定义structVARIABLE{STRINGvValue;//变量值BOOLbTemp;//临时变量};#ifdef__SGI_STL_PORTtypedefstd::hash_mapVARIABLE_MAP;#elsetypedefstdext::hash_mapVARIABLE_MAP;#endif可见变量是放在hash里面的,这样可以加快查找二 变量保存//当前保存的变量VARIABLE_MAPm_mapCurrent;//游戏退
        
阅读全文
 
        
     
    
        
        
摘要:一 角色选择流程开始可能的一种情况是,客户端接到服务器发送的包(LCRetCharList)开始的,这个包里面有玩家角色的个数等信息UINT LCRetCharListHandler::Execute(LCRetCharList* pPacket, Player* pPlayer ){__ENTER_FUNCTIONif(pPacket&&(pPacket->GetResult() == ASKCHARLIST_SUCCESS)){int iCharacterCount = pPacket->GetCharNumber();// 保存角色的个数CGameProced
        
阅读全文
 
        
     
    
        
        
摘要:天龙八部(武侠世界)的源码很可能是天龙八部代码流出后改写的,因为在看了代码中可以找到一些证据,整个客户端分为:一个是编辑器,一个是客户端,采用OGRE+cegui+自写的简单的物理碰撞检测+FMOD+自写的网络库。服务器端代码目前没仔细关注客户端总体的描述如下:UI系统 CEGUI UI基础系统CEGUI渲染器Expat XML解析器 CEGUI依赖,估计编写者不喜欢用FreeType2 跨平台、开源的字体渲染器 用于绘制中文脚本 luaPlus3D显示引擎Ogre开源的高效渲染引擎 最新的OGRE是1.7.2碰撞检测 Opcode 开源,占用内存少 其他可考虑使用bullet,ODE或者其他
        
阅读全文