Jump to content

safademirel

Inactive Member
  • Posts

    104
  • Joined

  • Last visited

  • Feedback

    0%

Posts posted by safademirel

  1.  

    You must create new grids too.

    This bug appears only if you implement them wrong. 

    Nice post, bro! :)

     

     

    static CGrid s_grid3(5, INVENTORY_MAX_NUM/5 / 2); // inventory page 3
    static CGrid s_grid4(5, INVENTORY_MAX_NUM/5 / 2); // inventory page 4
    
    
    s_grid3.Clear();
    s_grid4.Clear();
    
    
    for (i = 0; i < INVENTORY_MAX_NUM / 4; ++i)
    {
    if (!(item = victim->GetInventoryItem(i)))
    continue;
    
    
    s_grid3.Put(i, 1, item->GetSize());
    }
    
    
    for (i = 0; i < INVENTORY_MAX_NUM / 4; ++i)
    {
    if (!(item = victim->GetInventoryItem(i)))
    continue;
    
    
    s_grid4.Put(i, 1, item->GetSize());
    }

     

     

    You're wrong

    static CGrid s_grid3(5, INVENTORY_MAX_NUM/5 / 2); // inventory page 3
    static CGrid s_grid4(5, INVENTORY_MAX_NUM/5 / 2); // inventory page 4
    

    Will cause the bugs but there is a fix for this.

     

  2. help please:

     

    0207 17:49:09956 :: CPythonNonPlayer::LoadNonPlayerData: invalid size 360825 check data format.
    0207 17:49:09956 :: LoadLocaleData - LoadMobProto(locale/es/mob_proto) Error
    0207 17:49:17839 :: CMapOutdoor::Load - LoadMonsterAreaInfo ERROR
    0207 17:49:18525 :: GRANNY: r:/granny/rt/granny_file_info.cpp(145): File has run-time type tag of 0x8000000f, which doesn't match this version of Granny (0x80000010).  Automatic conversion will be attempted.
    0207 17:49:24111 :: 
    uiInventory.py(line:312) __LoadWindow
    ui.py(line:2720) GetChild
    
    
    InventoryWindow.LoadWindow.BindObject - <type 'exceptions.KeyError'>:'Equipment_Tab_03'
    
    
    0207 17:49:24111 :: ============================================================================================================
    0207 17:49:24111 :: Abort!!!!

    Your mob_proto ia corrupted, change your mob_proto

  3. in log.cpp

    void LogManager::QuestRewardLog(const char * c_pszQuestName, DWORD dwPID, DWORD dwLevel, int iValue1, int iValue2)
    {
    	return;
    	//Query("INSERT INTO quest_reward_log%s VALUES('%s',%u,%u,2,%u,%u,NOW())", 
    			//get_table_postfix(), 
    			//c_pszQuestName,
    			//dwPID,
    			//dwLevel,
    			//iValue1, 
    			//iValue2);
    }
    
    
    void LogManager::MoneyLog(BYTE type, DWORD vnum, int gold)
    {
    	return;
    	/*if (type == MONEY_LOG_RESERVED || type >= MONEY_LOG_TYPE_MAX_NUM)
    	{
    		sys_err("TYPE ERROR: type %d vnum %u gold %d", type, vnum, gold);
    		return;
    	}
    
    	Query("INSERT DELAYED INTO money_log%s VALUES (NOW(), %d, %d, %d)", get_table_postfix(), type, vnum, gold);
    	*/
    }
    
    
    • Love 2
  4. ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<길드> 경험치 투자에 실패하였습니다."));
    

    (use google to get a translation it can be help full to you)

    well the condition if (pGuild->OfferExp(ch, offer)) seems not to be fulfilled so it pass to else wich gives you that text

     

     

    I did not touch to guild.cpp It's same as mainline

  5. Hello,

     

    I have a problem on my compiled game, when I try offer exp to my guild it's fail.

    		case GUILD_SUBHEADER_CG_OFFER:
    			{
    				DWORD offer = *reinterpret_cast<const DWORD*>(c_pData);
    
    				if (pGuild->GetLevel() >= GUILD_MAX_LEVEL)
    				{
    					ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<±æµå> ±æµå°¡ ÀÌ¹Ì ÃÖ°í ·¹º§ÀÔ´Ï´Ù."));
    				}
    				else
    				{
    					offer /= 100;
    					offer *= 100;
    
    					if (pGuild->OfferExp(ch, offer))
    					{
    						ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<±æµå> %uÀÇ °æÇèÄ¡¸¦ ÅõÀÚÇÏ¿´½À´Ï´Ù."), offer);
    					}
    					else
    					{
    						ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<±æµå> °æÇèÄ¡ ÅõÀÚ¿¡ ½ÇÆĞÇÏ¿´½À´Ï´Ù."));
    					}
    				}
    			}
    			return SubPacketLen;
    
    

    When I try offer exp I get this

    ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<±æµå> °æÇèÄ¡ ÅõÀÚ¿¡ ½ÇÆĞÇÏ¿´½À´Ï´Ù."));
    

    No sysser in game or db.

  6. When I add this part to my playersettingmodule I get this error.

        ## SKILL
    	chrmgr.SetPathName(path + "skill/")
    	for i in xrange(skill.SKILL_EFFECT_COUNT):
    		END_STRING = ""
    		if i != 0: END_STRING = "_%d" % (i+1)
    		chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_GENERAL, chr.MOTION_SKILL+(i*skill.SKILL_GRADEGAP)+1, "blue_possession" + END_STRING + ".msa")
    		chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_GENERAL, chr.MOTION_SKILL+(i*skill.SKILL_GRADEGAP)+2, "red_possesion" + END_STRING + ".msa")
    		chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_GENERAL, chr.MOTION_SKILL+(i*skill.SKILL_GRADEGAP)+3, "reef_attack" + END_STRING + ".msa")
    		chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_GENERAL, chr.MOTION_SKILL+(i*skill.SKILL_GRADEGAP)+4, "split_slash" + END_STRING + ".msa")
    		chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_GENERAL, chr.MOTION_SKILL+(i*skill.SKILL_GRADEGAP)+5, "wind_death" + END_STRING + ".msa")
    		chrmgr.RegisterCacheMotionData(chr.MOTION_MODE_GENERAL, chr.MOTION_SKILL+(i*skill.SKILL_GRADEGAP)+6, "wreckage" + END_STRING + ".msa")
    

    #Fixed

     

     

  7. There is a bug. If the item is in the 3rd or 4th inventory, you cant upgrade it. When you go to the blacksmith and you give him the item, you press ok>yes and nothing happens. If the item is in the 1st or 2nd inventory you can do it... Its problem just from the 3rd and 4th inv... any idea how to solve that?

     

    Is there any sysser after press yes?

  8.  

    I wrote the automatic quest, but it did not work Can you see the problem?

    quest auto_boss_event begin
    	state start begin
    	when 20092.chat."GM: Event Boss " with pc.is_gm() begin
    		say_title("Merhaba "..pc.get_name())
    		say("")
    	if game.get_event_flag("auto_boss") == 0 then	
    		local event = select (" Eventi Başlat "," Vazgeç ")
    		if event == 2 then
    		return end
    		say(" Eventi Başlatıldı. ")
    		chat("Zamani gelince otomatik olarak başlayacaktır. ")
    		game.set_event_flag("auto_boss",0)
    		clear_server_timer('auto_boss_timer')
    		clear_server_timer('auto_boss_bitir_timer')
    		server_timer('auto_boss_timer', 1)
    	else
    		local event = select (" Eventi Bitir "," Vazgeç ")
    		if event == 2 then
    		return end
    		game.set_event_flag("auto_boss",0)
    		clear_server_timer('auto_boss_timer')
    		clear_server_timer('auto_boss_bitir_timer')
    	end
    end
    		when auto_boss_timer.server_timer begin
    			if(os.date("%A %H %M") == "Friday 12 50" or os.date("%A %H %M") == "Saturday 12 50" or os.date("%A %H %M") == "Saturday 13 00" or os.date("%A %H %M") == "Tuesday 20 00") then
    				if game.get_event_flag("auto_boss") == 0 then
    					notice_all("[Boss Etkinliği] Ch1 Çöl Ortasında Boss ve Lastik Etkinliği Başladı. ")
    					game.set_event_flag("auto_boss",1)
    					regen_in_map(63, "data/dungeon/col.txt")
    					clear_server_timer('auto_boss_timer')
    					clear_server_timer('auto_boss_bitir_timer')
    					server_timer("auto_boss_bitir_timer",60*60)
    				end
    			end
    		end
    	when auto_boss_bitir_timer.server_timer begin
    		if game.get_event_flag("auto_boss") == 1 then
    			notice_all("[Boss Etkinliği] Boss ve Lastik Etkinliği Sona Erdi. ")
    			game.set_event_flag("auto_boss",0)
    			clear_server_timer('auto_boss_bitir_timer')
    			clear_server_timer('auto_boss_timer')
    			kill_all_in_map(63)
    			warp_all_to_village(63)
    		end
    			server_timer('auto_boss_timer', 1)
    	end
    	end --state end
    end--quest end

     

    server_timer works only once you should do it with server_loop_timer.

     

    try with this.

    quest auto_boss_event begin
    	state start begin
    		when 20092.chat."GM: Event Boss " with pc.is_gm() begin
    			say_title("Merhaba "..pc.get_name())
    			say("")
    			if game.get_event_flag("auto_boss") == 0 then	
    				local event = select (" Eventi Başlat "," Vazgeç ")
    				if event == 2 then
    				return end
    				say(" Eventi Başlatıldı. ")
    				chat("Zamani gelince otomatik olarak başlayacaktır. ")
    				game.set_event_flag("auto_boss",0)
    				clear_server_timer('auto_boss_timer')
    				clear_server_timer('auto_boss_bitir_timer')
    				server_loop_timer('auto_boss_timer', 1)
    			else
    				local event = select (" Eventi Bitir "," Vazgeç ")
    				if event == 2 then
    				return end
    				game.set_event_flag("auto_boss",0)
    				clear_server_timer('auto_boss_timer')
    				clear_server_timer('auto_boss_bitir_timer')
    			end
    		end
    		when auto_boss_timer.server_timer begin
    			if(os.date("%A %H %M") == "Friday 12 50" or os.date("%A %H %M") == "Saturday 12 50" or os.date("%A %H %M") == "Saturday 13 00" or os.date("%A %H %M") == "Tuesday 20 00") then
    				if game.get_event_flag("auto_boss") == 0 then
    					notice_all("[Boss Etkinliği] Ch1 Çöl Ortasında Boss ve Lastik Etkinliği Başladı. ")
    					game.set_event_flag("auto_boss",1)
    					regen_in_map(63, "data/dungeon/col.txt")
    					clear_server_timer('auto_boss_timer')
    					clear_server_timer('auto_boss_bitir_timer')
    					server_timer("auto_boss_bitir_timer",60*60)
    				end
    			end
    		end
    		when auto_boss_bitir_timer.server_timer begin
    			if game.get_event_flag("auto_boss") == 1 then
    				notice_all("[Boss Etkinliği] Boss ve Lastik Etkinliği Sona Erdi. ")
    				game.set_event_flag("auto_boss",0)
    				clear_server_timer('auto_boss_bitir_timer')
    				clear_server_timer('auto_boss_timer')
    				kill_all_in_map(63)
    				warp_all_to_village(63,10)
    				server_loop_timer('auto_boss_timer', 1)
    			end
    		end--when
    	end --state end
    end--quest end
×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.