Jump to content

Datheft15

Inactive Member
  • Posts

    42
  • Joined

  • Last visited

  • Feedback

    0%

Posts posted by Datheft15

  1. Hey I have a problem.

     

    0903 13:43:14056 :: Traceback (most recent call last):
    
    0903 13:43:14056 ::   File "uiInventory.py", line 1652, in OnUpdate
    
    0903 13:43:14057 ::   File "uiInventory.py", line 696, in ActualizarBonus
    
    0903 13:43:14057 ::   File "ui.py", line 3233, in GetChild
    
    0903 13:43:14057 :: KeyError
    0903 13:43:14057 :: : 
    0903 13:43:14057 :: 'bonus_1'
    0903 13:43:14057 :: 

    In uiinventory.py 

     

    self.GetChild("bonus_1").SetText(str(player.GetStatus(69)))

    In inventorywindow.py

     

    				{
    					"name" : "txt_info_defenza_espada",
    					"type" : "text",
    					"x" : 176 - 5,
    					"y" : 55,
    					"text" : "Kard véd.:"
    				},
    				{
    					"name" : "Thin_info_defenza_espada",
    					"type" : "image",
    					"x" : 176 + SPACE_BONUS_INVENTORY - 65,
    					"y" : 55 - 2,
    					"image" : IMAGE_CHELO,
    					"children" : 
    					(
    						{
    							"name" : "bonus_1",
    							"type" : "text",
    							"x" : 26,
    							"y" : 3,
    							"text" : "999",
    							"r" : 1.0,
    							"g" : 1.0,
    							"b" : 1.0,
    							"a" : 1.0,
    							"text_horizontal_align":"center"
    						},
    					),
    				},

     

  2. 			elif Type == player.SLOT_TYPE_UPGRADE_INVENTORY or\
    				Type == player.SLOT_TYPE_BOOK_INVENTORY or\
    				Type == player.SLOT_TYPE_STONE_INVENTORY:
    				item.SelectItem(self.AttachedItemIndex)
    				self.AttachedIconHandle = item.GetIconInstance()
    	
    				if not self.AttachedIconHandle:
    					self.AttachedIconHandle = 0
    					self.DeattachObject()
    					return
    	
    				(width, height) = item.GetItemSize()
    
    			elif Type == player.SLOT_TYPE_SKILL:
    				skillGrade = player.GetSkillGrade(SlotNumber)
    				self.AttachedIconHandle = skill.GetIconInstanceNew(self.AttachedItemIndex, skillGrade)

    Problem was in mousemodel.py. 

    Just i've had If Type == player.SLOT_TYPE_UPGRADE_INVENTORY I just change to elif and it works ;)

     

     

    SOLVED #

  3. You can add trought the source :  

    InstanceBase.h (Search)

    EFFECT_BODYARMOR_SPECIAL2 = 21,

    Add the effect names with number ( easier )

     

    			EFFECT_KARD = 23,
    			EFFECT_SURA= 24,
    			EFFECT_KETKEZES= 25,
    			EFFECT_TOR= 26,
    			EFFECT_IJ= 27,
    			EFFECT_HARANG= 28,
    			EFFECT_LEGYEZO= 29,		
    			EFFECT_TOR_2= 30, 
    			EFFECT_LEGYEZO_2 = 31,
    			EFFECT_IJ_2 = 38,

    InstanceBase.cpp ()

    UINT CInstanceBase::__GetRefinedEffect(CItemData* pItem)

    You need to render effect to item vnum like this ( this is a shit  code but it swork :D

    
    
    		if (pItem->GetSubType() == CItemData::WEAPON_SWORD)
    		{
    			if (vnum == 19000 || vnum == 19001 || vnum == 19002 || vnum == 19003 || vnum == 19004 || vnum == 19005 ||
    				vnum == 19006 || vnum == 19006 || vnum == 19007 || vnum == 19008 || vnum == 19009)
    				m_swordRefineEffectRight = EFFECT_REFINED+EFFECT_KARD;
    			else if (vnum >= 19010 && vnum <= 19019)
    				m_swordRefineEffectRight = EFFECT_REFINED + EFFECT_SURA;
    		}
    		else if (pItem->GetSubType() == CItemData::WEAPON_TWO_HANDED)
    		{
    			if (vnum >= 19060 && vnum <= 19069)
    				m_swordRefineEffectRight = EFFECT_REFINED + EFFECT_KETKEZES;
    		}
    		else if (pItem->GetSubType() == CItemData::WEAPON_DAGGER)
    		{
    			if (vnum >= 19020 && vnum <= 19029)
    			{
    				m_swordRefineEffectRight = EFFECT_REFINED + EFFECT_TOR;
    				m_swordRefineEffectLeft = EFFECT_REFINED + EFFECT_TOR_2;
    			}
    		}
    		else if (pItem->GetSubType() == CItemData::WEAPON_BOW)
    		{
    			if (vnum >= 19030 && vnum <= 19039)
    				m_swordRefineEffectLeft = EFFECT_REFINED + EFFECT_IJ_2;
    		}
    		else if (pItem->GetSubType() == CItemData::WEAPON_BELL)
    		{
    			if (vnum >= 19040 && vnum <= 19049)
    				m_swordRefineEffectRight = EFFECT_REFINED + EFFECT_HARANG;
    		}
    		else if (pItem->GetSubType() == CItemData::WEAPON_FAN)
    		{
    			if (vnum >= 19070 && vnum <= 19079)
    			{
    				if (CRaceMotionData::MODE_HORSE == m_GraphicThingInstance.GetMotionMode())
    				{
    					m_swordRefineEffectRight = EFFECT_REFINED + EFFECT_LEGYEZO;
    					m_swordRefineEffectLeft = EFFECT_REFINED + EFFECT_LEGYEZO_2;
    				}
    				else
    					m_swordRefineEffectRight = EFFECT_REFINED + EFFECT_LEGYEZO;
    			}
    		}
    
    		if (m_swordRefineEffectRight)
    			m_swordRefineEffectRight = __AttachEffect(m_swordRefineEffectRight);
    		if (m_swordRefineEffectLeft)
    			m_swordRefineEffectLeft = __AttachEffect(m_swordRefineEffectLeft);
    	}
    	break;

    Playersettingsmodule.py 
    Create the effect like this.

    	chrmgr.RegisterEffect(chrmgr.EFFECT_REFINED+23, "PART_WEAPON", "D:/ymir work/pc/common/effect/armor/ridack_sword.mse")
    	chrmgr.RegisterEffect(chrmgr.EFFECT_REFINED+24, "PART_WEAPON", "D:/ymir work/pc/common/effect/armor/ridack_swords.mse")
    	chrmgr.RegisterEffect(chrmgr.EFFECT_REFINED+25, "PART_WEAPON", "D:/ymir work/pc/common/effect/armor/ridack_spear.mse")
    	chrmgr.RegisterEffect(chrmgr.EFFECT_REFINED+26, "PART_WEAPON", "D:/ymir work/pc/common/effect/armor/ridack_knife.mse")	
    	chrmgr.RegisterEffect(chrmgr.EFFECT_REFINED+27, "PART_WEAPON", "D:/ymir work/pc/common/effect/armor/ridack_bow.mse")	
    	chrmgr.RegisterEffect(chrmgr.EFFECT_REFINED+28, "PART_WEAPON", "D:/ymir work/pc/common/effect/armor/ridack_bell.mse")	
    	chrmgr.RegisterEffect(chrmgr.EFFECT_REFINED+29, "PART_WEAPON", "D:/ymir work/pc/common/effect/armor/ridack_fan.mse")
    	chrmgr.RegisterEffect(chrmgr.EFFECT_REFINED+30, "PART_WEAPON_LEFT", "D:/ymir work/pc/common/effect/armor/ridack_knife.mse")
    	chrmgr.RegisterEffect(chrmgr.EFFECT_REFINED+31, "PART_WEAPON_LEFT", "D:/ymir work/pc/common/effect/armor/ridack_fan.mse")	
    	chrmgr.RegisterEffect(chrmgr.EFFECT_REFINED+38, "PART_WEAPON_LEFT", "D:/ymir work/pc/common/effect/armor/ridack_bow.mse")	

    (NOTE) char who have 2 weapon like ninja need effect EFFECT_TOR , EFFECT_TOR2

     

    Left and right hand

    				m_swordRefineEffectRight = EFFECT_REFINED + EFFECT_TOR;
    				m_swordRefineEffectLeft = EFFECT_REFINED + EFFECT_TOR_2;

     

     

    You dont need add GR2 model to item_list just put the icon like this 

    19020	WEAPON	icon/item/iconmdeknife.tga

     

    • Love 2
  4. Okay, but I edited  this

    if (GetRealAlignment() == NAME_ALIGNMENT_1)

    to 

    if (GetRealAlignment() > 1000 && GetRealAlignment() < 2000 ) 
     

    server is down recently.

    if (GetRealAlignment() < NAME_ALIGNMENT_1 )
       {
         blabla
      }
    if (GetRealAlignment() > NAME_ALIGNMENT_1)
        {
         blabla
      }

    or this isn't work

  5. Hey ! 
    I have an idea and need help to implementation

    What if the alignment give bonus for example 
    Alignment (1) > 1000  then 10k HP

    Alignment (1) > 4000  then 30k HP ..

    I found one topic on dev but this not work for me. 

    Somebody can help me ? 

     

    Thanks for reply ! :)

     

     

  6. Version of Files XXX

    Hey, I had a problem with the official Pet System, I fixed some bug what I can. 

    So first problem is the transport box.  When I put the pet into the box then box is gone. (0 minute) I saw in the source that it give socket to time (I think )

    					item2->SetForceAttribute(3, 1, item->GetAttributeValue(3));
    					item2->SetForceAttribute(4, 1, item->GetAttributeValue(4));
    					DWORD vnum1 = item->GetVnum()-55700;
    					item2->SetSocket(0, vnum1);
    					item2->SetSocket(1, item->GetSocket(1));

    Second problem is

    When the pet is summoned and you trade with other player your pet disappear. 

     

    Third problem is : 
    When I trying leveling pet he's not get exp except if I kill such mobs like my level.

     

    Sorry for my English its only B1 level -?

     

    Thanks, Sincerly,

     

    • Metin2 Dev 1
  7. Hey, someone can help ?  :D 
    I would to add to my server that I can add my guild exp from case . I did this but it doesn't work. I can't complain 

     

    #include <numeric>
    void CGuild::Doboz(int lv, LPCHARACTER ch)
    {
        case 80009:
            lv = MINMAX(m_data.level, lv, GUILD_MAX_LEVEL);
            if (lv != m_data.level)
                GuildPointChange(POINT_EXP, 10000, true);
            ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("EXP gave"));
    }

     

    And how I can do that every guild level have a bonus for example lv 1 : tp  +10%  lv2  str +10 .

  8. I have a little problem.. 

    When Auto elixir is working and I want to ride a mount  

    				pc.mount(20115, 3600)

    Elixir was turned off but the highlights is on..  If I want to use again I need reactivated..

    If I would like to use with horse this problem is not standing up

    Here is the potion's code

     

    			if constInfo.IS_AUTO_POTION(itemVnum):
    				metinSocket = [player.GetItemMetinSocket(slotNumber, j) for j in xrange(player.METIN_SOCKET_MAX_NUM)]
    				if slotNumber >= player.INVENTORY_PAGE_SIZE * self.inventoryPageIndex: ## (e.g. 47(second page) >= 45 * 2; 47 >= 90 - false = bug)
    					slotNumber -= player.INVENTORY_PAGE_SIZE * self.inventoryPageIndex ## (e.g. (third page) 93 -= 90 = 3 - true = fix)
    					
    				
    				isActivated = 0 != metinSocket[0]
    				if isActivated:
    					self.wndItem.ActivateSlot(i)
    					potionType = 0;
    					if constInfo.IS_AUTO_POTION_HP(itemVnum):
    						potionType = player.AUTO_POTION_TYPE_HP
    					elif constInfo.IS_AUTO_POTION_SP(itemVnum):
    						potionType = player.AUTO_POTION_TYPE_SP						
    					
    					usedAmount = int(metinSocket[1])
    					totalAmount = int(metinSocket[2])					
    					player.SetAutoPotionInfo(potionType, isActivated, (totalAmount - usedAmount), totalAmount, self.__InventoryLocalSlotPosToGlobalSlotPos(i))
    				else:
    					self.wndItem.DeactivateSlot(i)

     

      

  9. Anyone know how I can fix this ?

     

    SYSERR: Mar 24 12:59:24.194864 :: ChildLoop: AsyncSQL: query failed: Out of range value for column 'attack_speed' at row 1 (query: replace into mob_proto (vnum, name, locale_name, type, rank, battle_type, level, size, ai_flag, setRaceFlag, setImmuneFlag, on_click, empire, drop_item, resurrection_vnum, folder, st, dx, ht, iq, damage_min, damage_max, max_hp, regen_cycle, regen_percent, exp, gold_min, gold_max, def, attack_speed, move_speed, aggressive_hp_pct, aggressive_sight, attack_range, polymorph_item, enchant_curse, enchant_slow, enchant_poison, enchant_stun, enchant_critical, enchant_penetrate, resist_sword, resist_twohand, resist_dagger, resist_bell, resist_fan, resist_bow, resist_fire, resist_elect, resist_magic, resist_wind, resist_poison, dam_multiply, summon, drain_sp, skill_vnum0, skill_level0, skill_vnum1, skill_level1, skill_vnum2, skill_level2, skill_vnum3, skill_level3, skill_vnum4, skill_level4, sp_berserk, sp_stoneskin, sp_godspeed, sp_deathblow, sp_revive) values (2095, "??????", "Póktojás",
    SYSERR: Mar 24 12:59:24.656838 :: ChildLoop: AsyncSQL: query failed: Out of range value for column 'attack_speed' at row 1 (query: replace into mob_proto (vnum, name, locale_name, type, rank, battle_type, level, size, ai_flag, setRaceFlag, setImmuneFlag, on_click, empire, drop_item, resurrection_vnum, folder, st, dx, ht, iq, damage_min, damage_max, max_hp, regen_cycle, regen_percent, exp, gold_min, gold_max, def, attack_speed, move_speed, aggressive_hp_pct, aggressive_sight, attack_range, polymorph_item, enchant_curse, enchant_slow, enchant_poison, enchant_stun, enchant_critical, enchant_penetrate, resist_sword, resist_twohand, resist_dagger, resist_bell, resist_fan, resist_bow, resist_fire, resist_elect, resist_magic, resist_wind, resist_poison, dam_multiply, summon, drain_sp, skill_vnum0, skill_level0, skill_vnum1, skill_level1, skill_vnum2, skill_level2, skill_vnum3, skill_level3, skill_vnum4, skill_level4, sp_berserk, sp_stoneskin, sp_godspeed, sp_deathblow, sp_revive) values (50055, "??????", "Lila fert
    SYSERR: Mar 24 12:59:24.657260 :: ChildLoop: AsyncSQL: query failed: Out of range value for column 'attack_speed' at row 1 (query: replace into mob_proto (vnum, name, locale_name, type, rank, battle_type, level, size, ai_flag, setRaceFlag, setImmuneFlag, on_click, empire, drop_item, resurrection_vnum, folder, st, dx, ht, iq, damage_min, damage_max, max_hp, regen_cycle, regen_percent, exp, gold_min, gold_max, def, attack_speed, move_speed, aggressive_hp_pct, aggressive_sight, attack_range, polymorph_item, enchant_curse, enchant_slow, enchant_poison, enchant_stun, enchant_critical, enchant_penetrate, resist_sword, resist_twohand, resist_dagger, resist_bell, resist_fan, resist_bow, resist_fire, resist_elect, resist_magic, resist_wind, resist_poison, dam_multiply, summon, drain_sp, skill_vnum0, skill_level0, skill_vnum1, skill_level1, skill_vnum2, skill_level2, skill_vnum3, skill_level3, skill_vnum4, skill_level4, sp_berserk, sp_stoneskin, sp_godspeed, sp_deathblow, sp_revive) values (50056, "??????", "Sárga fer
    SYSERR: Mar 24 12:59:24.657649 :: ChildLoop: AsyncSQL: query failed: Out of range value for column 'attack_speed' at row 1 (query: replace into mob_proto (vnum, name, locale_name, type, rank, battle_type, level, size, ai_flag, setRaceFlag, setImmuneFlag, on_click, empire, drop_item, resurrection_vnum, folder, st, dx, ht, iq, damage_min, damage_max, max_hp, regen_cycle, regen_percent, exp, gold_min, gold_max, def, attack_speed, move_speed, aggressive_hp_pct, aggressive_sight, attack_range, polymorph_item, enchant_curse, enchant_slow, enchant_poison, enchant_stun, enchant_critical, enchant_penetrate, resist_sword, resist_twohand, resist_dagger, resist_bell, resist_fan, resist_bow, resist_fire, resist_elect, resist_magic, resist_wind, resist_poison, dam_multiply, summon, drain_sp, skill_vnum0, skill_level0, skill_vnum1, skill_level1, skill_vnum2, skill_level2, skill_vnum3, skill_level3, skill_vnum4, skill_level4, sp_berserk, sp_stoneskin, sp_godspeed, sp_deathblow, sp_revive) values (50057, "??????", "Kék fertô
    SYSERR: Mar 24 12:59:24.661826 :: ChildLoop: AsyncSQL: query failed: Out of range value for column 'attack_speed' at row 1 (query: replace into mob_proto (vnum, name, locale_name, type, rank, battle_type, level, size, ai_flag, setRaceFlag, setImmuneFlag, on_click, empire, drop_item, resurrection_vnum, folder, st, dx, ht, iq, damage_min, damage_max, max_hp, regen_cycle, regen_percent, exp, gold_min, gold_max, def, attack_speed, move_speed, aggressive_hp_pct, aggressive_sight, attack_range, polymorph_item, enchant_curse, enchant_slow, enchant_poison, enchant_stun, enchant_critical, enchant_penetrate, resist_sword, resist_twohand, resist_dagger, resist_bell, resist_fan, resist_bow, resist_fire, resist_elect, resist_magic, resist_wind, resist_poison, dam_multiply, summon, drain_sp, skill_vnum0, skill_level0, skill_vnum1, skill_level1, skill_vnum2, skill_level2, skill_vnum3, skill_level3, skill_vnum4, skill_level4, sp_berserk, sp_stoneskin, sp_godspeed, sp_deathblow, sp_revive) values (50080, "??????", "Sárkánykő
    

     

  10. Hy guys i write a sd3 run quest... But if i kill 2092 spider then dont start timer and dont write the msg in notice

     

     

    quest pokbaronoo begin
        state start begin
            when 30130.chat."Megölöm a pókot" begin
                if not party.is_party() then
                    say_title("Pók ölés")
                    say("Ne vagy csoportban! ")
                    say("Nem léphetsz be a Bárónõhöz")
                    return
                end
                if not party.is_leader() then
                    say_title("Pók ölés")
                    say("Nem te vagy a csoportvezetõ ")
                    say("Én csak a csoportvezetõvel tárgyalok!")
                    return
                end
                say_title("Pók ölés")
                say("A rettenetes pók már régóta bevan zárva")
                say("Csak egy síp hívhatja elo odjuából")
                say("A sípot a szolgálja örzi.")
                say("Öld meg a szolgálját ,hogy megszerezd azt")
                say_reward("Csak is csapatban engedhetlek be.")
                say_reward("A csapat vezért küldjétek színem elé ")
                say_reward("Legyen nála legalább 1 darab ")
                say_item_vnum(71095)
                local xny = select("Igen","Nem")
                if xny == 1 then
                    if pc.count_item(71095) >= 1 then
                        say_title("Pók ölés")
                        say("Rendben , látom megvan a belépod")
                        say("Máris beviszlek téged és a csapatod")
                        pc.remove_item(71095)
                        wait()
                        d.new_jump_party(217, 880, 6152)
                            d.regen_file("data/dungeon/sd3/regen.txt")
                    else
                        say_title("Pók ölés")
                        say("Szerezd be a belépot")
                        say_item_vnum(71095)
                    end
                elseif xny == 2 then
                    return
                end
            end
                
            when logout with pc.get_map_index() >= 2170000 and pc.get_map_index() < 2180000 begin
                d.kill_all()
                pc.warp(69054,610899)
            end
            when login with pc.get_map_index() >= 2170000 and pc.get_map_index() < 2180000 begin
                d.notice("Öld meg a Pók-bárót ,hogy megkapd a kulcsot")
                
            end
            
            when 2094.kill with pc.get_map_index() >= 2170000 and pc.get_map_index() < 2180000 begin
                game.drop_item_with_ownership(30327, 1)
                d.notice("Nyomd meg a földön talált kulcsot ,hogy elohívd a pókot ")
            end
            
            when 30327.use with pc.get_map_index() >= 2170000 and pc.get_map_index() < 2180000 begin
                d.mob.spawn(2092,365,597,0,0)
                d.notice("A pók kijött az odjuából")
                pc.remove_item(30327, 1)
            end
            
            when 2092.kill with pc.get_map_index() >= 2170000 and pc.get_map_index() < 2180000 begin
                notice_all(" ".. pc.get_name.." megölte a Pók-bárónot")
                d.notice("1 perc múlva ki lesztek teleportálva innen")
                d.kill_all()
                timer("successbp", 1*60)
            end
            when successbp.timer begin
                d.exit_all()
            end
        end

     

  11. Hey guys. 

    I have some problem with pet system..
    I need some help .: (

    1. My pet skills don't unlock if my pet level is 40 or 82 or 121...

    2. If i change other player my pet is hidding.

    3. If i put in the box and i give other player he dont know open ( You can not use )

    4. I change evolve items in the source ..
    But it request first item ..

     

    int it[3][7] = { 
    { 55003, 30058, 30073, 30041, 30017, 30078, 30088 }, //Here Modify Items to request for 1 evo
    { 55004, 30035, 30089, 30031, 30011, 30080, 27994 }, //Here Modify Items to request for 2 evo
    { 55005, 30083, 30086, 30077, 30550, 27993, 72992 } //Here Modify Items to request for 3 evo
    };
    int ic[3][7] = {{ 10, 10, 10, 10, 10, 5, 5 },
    { 10, 10, 10, 10, 10, 5, 2 },
    { 10, 10, 10, 10, 5, 2, 2, }
    };
    	 
    	

  12. Only loading ..... If i created new character can enter the game ..

    Syserr ( client ) 

     

    Sry i little speak eng :D 

     

    0713 18:51:23318 :: UnboundLocalError
    0713 18:51:23318 :: : 
    0713 18:51:23318 :: local variable 'metinSocket' referenced before assignment
    0713 18:51:23318 :: 

     

    Syslog ( game99 ) 

    Jul 13 19:13:43.139931 :: bgm_info.play(1, DEFAULT_BGM_NAME)
    Jul 13 19:13:43.140281 :: InputDB: player_load David 522880x632250x0 LEVEL 105 MOV_SPEED 100 JOB 0 ATG 222 DFG 108 GMLv 5

     

    1109774723N_vtelen_www.kepfeltoltes.hu_.

×
×
  • 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.