随笔分类 - 项目分析
摘要://其他初始化init_prop();//初始化道具init_ornamemtal();//初始化装饰物init_monster_type_info();//初始化怪物基本信息这个比较重要在加载NPC时会用到这些基本信息的储存在m_monster_type_infos[mo_type_info.nB...
阅读全文
摘要:init_map(res_path)1.初始化mapbase的基本信息pos2d screen_area = {1000, 600}; //普通屏幕大小m_spBase->init(screen_area.x / 3, screen_area.y / 3 , //屏幕划分成3*3格子 hea...
阅读全文
摘要:init_timer(); //各种定时器的初始化void Map::init_timer(){ //auto tf = GetPlug(TimerFactory); auto tf = m_spTimerFactory; m_updateMovePosTimer.reset...
阅读全文
摘要:暂时有个疑问为什么这些需要这么复杂的继承
阅读全文
摘要://宠物AI流程1.刚开始添加宠物Monster被动State:EnumMonster被NULLMonsterStat:EnumPet跟随2.附近有怪物就改成攻击模式(相关的收尾工作)void PetObj::cancle_follow(){ m_trace_line.clear(); ...
阅读全文
摘要:share到底干什么的//--------------------打开GameServer,share中加载-------------------------1.加载nBodyID//玩家的nBodyID表([职业][性别][nboduid])std::vector > m_nbodyid_tabl...
阅读全文
摘要:玩家上线//------------------c2s_login-------------------------bool GameChannel::OnLogin(void* data, int len){ UserInfo* info = (UserInfo*)data; ...
阅读全文
摘要:怪物AI执行//-----------------------------------------------主动攻击------------------------------------------------------初始状态attack_style Enum攻击方式 ...
阅读全文
摘要:NPC AI驱动最基本过程NPCmgr中比较重要的是加载NPC和一个NPCAI的一个指针他利用map那个线程的定时到底做了啥呢void NPCmgr::npcAITimer(){ time_t tb = GetTickCount(); m_spNpcAI->run();//[...]测试...
阅读全文
摘要:来看看map线程到底是如何运行的很早就知道一个map是一个线程,以后有可能改成一个map一个进程,那就先来看看一个map一个线程是如何运作的其实刚开始整个服务器就是两个线程,但发现这样服务器支持的人数不多,其实我是刚来具体不太清楚到底咋回事,也没有网络进程,最开始就是将GameMap从GameSer...
阅读全文
摘要:服务器ID分配包括NPC,Monster,Pet的ID分配都是调用allocateUID然后自动保存的ID加一,pet说是通过玩家的ID移位获得的,调试一下发现还是调用allocateUID,如果通过玩家ID移位,也不是长久之计,还得分配唯一的ID,这个就需要保存数据库了
阅读全文
摘要:有段时间没看map里面的东西了,刚才看发现功能上增加了一些,在来复习了一次流程初始化每个map建立线程,这个线程有两个功能,1.处理GS发过来的包 2.驱动map里面的定时器GS发过来的包是存在m_gs2msPkts2这个无锁的单消费者,单生产者队列中,只要是GS中不处理的包都要发到MAP中然后每个...
阅读全文
摘要:channelid如何生成的/////////////////////////////////////////////////////////////////// I_TCPServer.h // Description: // ///////////...
阅读全文
摘要:plug过程1.INIT_PLUG#define INIT_PLUG Plug::InitPlug g_InitPlug(true);//共享内存数据结构struct PlugShareMemory{ void* pFirstHand; //第一个打开文件的句柄 I_Plug...
阅读全文
摘要:人物上线消息: c2s s2cc2s_login(点击登录)-------> s2c_login(验证用户名和密码的消息)c2s_select_actor(选择角色)----> s2c_local_player_info(...
阅读全文
摘要:NGPcontext之前对这个一直很疑惑,我一直认为只是在机器人方面有用处,但很有疑问,正在做这方面,我想好好看看到底是怎么运行的bool NGP::init(NGPcontext context){ _context = context; //_TcpLink = NEWSP(TcpL...
阅读全文

浙公网安备 33010602011771号