Jump to content

Full Costume Mount System


Recommended Posts

On 8/28/2016 at 12:03 PM, Qwertyu said:

How i can remove this problem? 
https://metin2.download/picture/ie89ITu4U9DIJ034tir393ex7S4W4eRU/.gif

And i don`t see time 

" When i put ITEM_COSTUME COSTUME_MOUNT....time change to 0 "

 

My problem is the same can someone help me?

Edited by Metin2 Dev
Core X - External 2 Internal
  • Metin2 Dev 1
  • Good 2
  • Love 3
Link to comment
Share on other sites

  • 3 months later...

Which tool do u use? i am asking because i saw the source extension for a tool, now i want to know which looks better than the one i use :D

 

Edit: Is there any system i need before? i did everything like in the tutotrial but i had no slots for the mount. it was under the costumes but not inside a slot just a buggy ui. 

Edited by fsfds
Link to comment
Share on other sites

  • 6 months later...

1228 18:28:08362 :: networkModule.py(line:208) SetSelectCharacterPhase system.py(line:130) pack_import system.py(line:110) _process_result introSelect.py(line:23) <module> system.py(line:130) pack_import system.py(line:110) _process_result uiAffectShower.py(line:8) <module> system.py(line:130) __pack_import networkModule.SetSelectCharacterPhase - <type 'exceptions.IndentationError'>:unexpected indent (uiToolTip.py, line 864) 1228 18:28:08362 :: ============================================================================================================ 1228 18:28:08362 :: Abort!!!!

Link to comment
Share on other sites

On 12/28/2020 at 6:30 PM, thebangerschmid22 said:

1228 18:28:08362 :: networkModule.py(line:208) SetSelectCharacterPhase system.py(line:130) pack_import system.py(line:110) _process_result introSelect.py(line:23) <module> system.py(line:130) pack_import system.py(line:110) _process_result uiAffectShower.py(line:8) <module> system.py(line:130) __pack_import networkModule.SetSelectCharacterPhase - <type 'exceptions.IndentationError'>:unexpected indent (uiToolTip.py, line 864) 1228 18:28:08362 :: ============================================================================================================ 1228 18:28:08362 :: Abort!!!!

uitooltip line 864 - you have tab error. ckeck your tabs

Link to comment
Share on other sites

  • 6 months later...

It's work perfectly, Thx

spacer.png

 

 

 

252730RedInfo.pngRegords, Rokco

 

On 2/28/2020 at 9:40 PM, tarata12 said:

My problem is the same can someone help me?

@tarata12To short that problem

https://metin2.download/picture/ie89ITu4U9DIJ034tir393ex7S4W4eRU/.gif

you shod not chenge Item_proto (Client side)

Make change just in DB (Navicat - Player - Item_Proto) (Type 28 and Subtipe 3/4/5  Depending how many things you got on your costume system)

If you whant to make change in Item_proto from client you shud put a (REAL_TIME    86400) Value on your Mount!

 

And Sorry for my bad ENG, I hope you undestend me.

Edited by Metin2 Dev
Core X - External 2 Internal
  • Metin2 Dev 3
  • Good 3
  • Love 1
  • Love 2
Link to comment
Share on other sites

  • 1 month later...

have somebody had this error in uitooltip.py ?

0829 21:20:08645 :: 
networkModule.py(line:200) SetSelectCharacterPhase
system.py(line:130) __pack_import
system.py(line:110) _process_result
introSelect.py(line:22) <module>
system.py(line:130) __pack_import
system.py(line:110) _process_result
uiAffectShower.py(line:8) <module>
system.py(line:130) __pack_import
system.py(line:110) _process_result
uiToolTip.py(line:315) <module>
uiToolTip.py(line:989) ItemToolTip

networkModule.SetSelectCharacterPhase - <type 'exceptions.NameError'>:name 'itemType' is not defined

0829 21:20:08645 :: ============================================================================================================
0829 21:20:08645 :: Abort!!!!


this is my syserr from client, now idk where to import itemType... all tabs are fixed in uitooltip.py

Link to comment
Share on other sites

  • Silver
On 8/29/2021 at 8:33 PM, Fluff99s said:

have somebody had this error in uitooltip.py ?

0829 21:20:08645 :: 
networkModule.py(line:200) SetSelectCharacterPhase
system.py(line:130) __pack_import
system.py(line:110) _process_result
introSelect.py(line:22) <module>
system.py(line:130) __pack_import
system.py(line:110) _process_result
uiAffectShower.py(line:8) <module>
system.py(line:130) __pack_import
system.py(line:110) _process_result
uiToolTip.py(line:315) <module>
uiToolTip.py(line:989) ItemToolTip

networkModule.SetSelectCharacterPhase - <type 'exceptions.NameError'>:name 'itemType' is not defined

0829 21:20:08645 :: ============================================================================================================
0829 21:20:08645 :: Abort!!!!


this is my syserr from client, now idk where to import itemType... all tabs are fixed in uitooltip.py

You can write this in line 988:

itemType = item.GetItemType()

 

Edited by V0lvox
Link to comment
Share on other sites

On 8/31/2021 at 8:51 AM, V0lvox said:

You can write this in line 988:

itemType = item.GetItemType()

 

at line 988 i have this: if app.ENABLE_COSTUME_SYSTEM:

followed by this lines also

            if item.ITEM_TYPE_COSTUME == itemType:
                isCostumeItem = 1
                isCostumeHair = item.COSTUME_TYPE_HAIR == itemSubType
                isCostumeBody = item.COSTUME_TYPE_BODY == itemSubType
                isCostumeSash = itemSubType == item.COSTUME_TYPE_SASH
                isCostumeMount = item.COSTUME_TYPE_MOUNT == itemSubType

 

i replaced my initial    if item.ITEM_TYPE_COSTUME == itemType:  with itemType = item.GetItemType() but is without success...

Link to comment
Share on other sites

  • Silver
On 9/4/2021 at 11:53 AM, Fluff99s said:

at line 988 i have this: if app.ENABLE_COSTUME_SYSTEM:

followed by this lines also

            if item.ITEM_TYPE_COSTUME == itemType:
                isCostumeItem = 1
                isCostumeHair = item.COSTUME_TYPE_HAIR == itemSubType
                isCostumeBody = item.COSTUME_TYPE_BODY == itemSubType
                isCostumeSash = itemSubType == item.COSTUME_TYPE_SASH
                isCostumeMount = item.COSTUME_TYPE_MOUNT == itemSubType

 

i replaced my initial    if item.ITEM_TYPE_COSTUME == itemType:  with itemType = item.GetItemType() but is without success...

if app.ENABLE_COSTUME_SYSTEM:

itemType = item.GetItemType()

if item.ITEM_TYPE_COSTUME == itemType:
                isCostumeItem = 1
                isCostumeHair = item.COSTUME_TYPE_HAIR == itemSubType
                isCostumeBody = item.COSTUME_TYPE_BODY == itemSubType
                isCostumeSash = itemSubType == item.COSTUME_TYPE_SASH
                isCostumeMount = item.COSTUME_TYPE_MOUNT == itemSubType

 

.gif

  • Love 2
Link to comment
Share on other sites

  • 9 months later...
  • Bronze

Nice, thanks for sharing!

 

i have a error:

networkModule.SetSelectCharacterPhase - <type 'exceptions.IndentationError'>:unexpected indent (uiToolTip.py, line 960)

 

        itemDesc = item.GetItemDescription()
        itemSummary = item.GetItemSummary()

        isCostumeItem = 0
        isCostumeHair = 0
        isCostumeBody = 0
        isCostumeMount = 0
            
        if app.ENABLE_COSTUME_SYSTEM:  #LINE 960
            if item.ITEM_TYPE_COSTUME == itemType:
                isCostumeItem = 1
                isCostumeHair = item.COSTUME_TYPE_HAIR == itemSubType
                isCostumeBody = item.COSTUME_TYPE_BODY == itemSubType
                isCostumeMount = item.COSTUME_TYPE_MOUNT == itemSubType

  • Metin2 Dev 1
Link to comment
Share on other sites

  • Premium
25 minutes ago, Ezequiel G. said:

Nice, thanks for sharing!

 

i have a error:

networkModule.SetSelectCharacterPhase - <type 'exceptions.IndentationError'>:unexpected indent (uiToolTip.py, line 960)

 

        itemDesc = item.GetItemDescription()
        itemSummary = item.GetItemSummary()

        isCostumeItem = 0
        isCostumeHair = 0
        isCostumeBody = 0
        isCostumeMount = 0
            
        if app.ENABLE_COSTUME_SYSTEM:  #LINE 960
            if item.ITEM_TYPE_COSTUME == itemType:
                isCostumeItem = 1
                isCostumeHair = item.COSTUME_TYPE_HAIR == itemSubType
                isCostumeBody = item.COSTUME_TYPE_BODY == itemSubType
                isCostumeMount = item.COSTUME_TYPE_MOUNT == itemSubType

CTRL+V error.

Link to comment
Share on other sites

  • 7 months later...

There is a new update...

to pet in uitooltip.py

Spoiler


        elif itemVnum >= 53001 and itemVnum <= 53999:
            self.AppendSpace(5)
            for g in xrange(item.ITEM_APPLY_MAX_NUM):
                (affectType, affectValue) = item.GetAffect(g)
                affectString = self.__GetAffectString(affectType, affectValue)
                if affectString:
                    affectColor = grp.GenerateColor(0.3824, 0.5804, 0.9824, 1.0) # You can play here for the text color.
                    self.AppendTextLine(affectString, affectColor)
            self.__AppendAttributeInformation(attrSlot)
            bHasRealtimeFlag = 0
            for i in xrange(item.LIMIT_MAX_NUM):
                (limitType, limitValue) = item.GetLimit(i)
                if item.LIMIT_REAL_TIME == limitType:
                    bHasRealtimeFlag = 1
            if bHasRealtimeFlag == 1:
                self.AppendMallItemLastTime(metinSlot[0])
 


for pets and to monts `use costume mount slot`

Spoiler


        elif itemVnum in self.MountVnum:
            self.AppendSpace(5)
            for g in xrange(item.ITEM_APPLY_MAX_NUM):
                (affectType, affectValue) = item.GetAffect(g)
                affectString = self.__GetAffectString(affectType, affectValue)
                if affectString:
                    affectColor = grp.GenerateColor(0.3824, 0.5804, 0.9824, 1.0) # You can play here for the text color.
                    self.AppendTextLine(affectString, affectColor)
            self.__AppendAttributeInformation(attrSlot)
            bHasRealtimeFlag = 0
            for i in xrange(item.LIMIT_MAX_NUM):
                (limitType, limitValue) = item.GetLimit(i)
                if item.LIMIT_REAL_TIME == limitType:
                    bHasRealtimeFlag = 1
            if bHasRealtimeFlag == 1:
                self.AppendMallItemLastTime(metinSlot[0])
            self.__ModelPreview(itemVnum, 5, self.MountVnum[itemVnum])
 


MountVnum =

put that part in 

serach

class ItemToolTip(ToolTip):

afeter

    CHARACTER_NAMES = ( 
        localeInfo.TOOLTIP_WARRIOR,
        localeInfo.TOOLTIP_ASSASSIN,
        localeInfo.TOOLTIP_SURA,
        localeInfo.TOOLTIP_SHAMAN 
    )

add list about mountvnum

Spoiler

    MountVnum = {
        52001:20201,
        52002:20201,
        52003:20201,
        52004:20201,
        52005:20201,
        52006:20205,
        52007:20205,
        52008:20205,
        52009:20205,
        52010:20205,
        52011:20209,
        52012:20209,
        52013:20209,
        52014:20209,
        52015:20209,
        52016:20202,
        52017:20202,
        52018:20202,
        52019:20202,
        52020:20202,
        52021:20206,
        52022:20206,
        52023:20206,
        52024:20206,
        52025:20206,
        52026:20210,
        52027:20210,
        52028:20210,
        52029:20210,
        52030:20210,
        52031:20204,
        52032:20204,
        52033:20204,
        52034:20204,
        52035:20204,
        52036:20208,
        52037:20208,
        52038:20208,
        52039:20208,
        52040:20208,
        52041:20212,
        52042:20212,
        52043:20212,
        52044:20212,
        52045:20212,
        52046:20203,
        52047:20203,
        52048:20203,
        52049:20203,
        52050:20203,
        52051:20207,
        52052:20207,
        52053:20207,
        52054:20207,
        52055:20207,
        52056:20211,
        52057:20211,
        52058:20211,
        52059:20211,
        52060:20211,
        52061:20213,
        52062:20213,
        52063:20213,
        52064:20213,
        52065:20213,
        52066:20214,
        52067:20214,
        52068:20214,
        52069:20214,
        52070:20214,
        52071:20215,
        52072:20215,
        52073:20215,
        52074:20215,
        52075:20215,
        52076:20216,
        52077:20216,
        52078:20216,
        52079:20216,
        52080:20216,
        52081:20217,
        52082:20217,
        52083:20217,
        52084:20217,
        52085:20217,
        52086:20218,
        52087:20218,
        52088:20218,
        52089:20218,
        52090:20218,
        52091:20223,
        52092:20223,
        52093:20223,
        52094:20223,
        52095:20223,
        52096:20224,
        52097:20224,
        52098:20224,
        52099:20224,
        52100:20224,
        52101:20225,
        52102:20225,
        52103:20225,
        52104:20225,
        52105:20225,
        52107:20228,
        52106:20228,
        52108:20228,
        52109:20228,
        52110:20228,
        52111:20229,
        52112:20229,
        52113:20229,
        52114:20229,
        52115:20229,
        52116:20230,
        52117:20230,
        52118:20230,
        52119:20230,
        52120:20230,
        71114:20110,
        71116:20111,
        71118:20112,
        71120:20113,
        71115:20110,
        71117:20111,
        71119:20112,
        71121:20113,
        71124:20114,
        71125:20115,
        71126:20116,
        71127:20117,
        71128:20118,
        71131:20119,
        71132:20119,
        71133:20119,
        71134:20119,
        71137:20120,
        71138:20121,
        71139:20122,
        71140:20123,
        71141:20124,
        71142:20125,
        71161:20219,
        71164:20220,
        71165:20221,
        71166:20222,
        71171:20227,
        71172:20226,
        71176:20231,
        71177:20232,
        71182:20233,
        71183:20234,
        71184:20235,
        71185:20236,
        71186:20237,
        71187:20238,
        71192:20240,
        71193:20239,
        71197:20241,
        71198:20242,
        71220:20243
    }

 

  • Metin2 Dev 1
  • Lmao 1
  • Good 1
Link to comment
Share on other sites

  • 1 month later...
  • 2 weeks later...

anyone know something about this error?

0309 12:09:20662 :: ui:2815: RuntimeWarning: tp_compare didn't return -1 or -2 for exception

0309 12:09:20663 :: 
uiInventory.py(line:68) __LoadWindow
ui.py(line:2808) LoadScriptFile
ui.py(line:2998) LoadChildren
ui.py(line:2998) LoadChildren
ui.py(line:2815) LoadChildren

CostumeWindow.LoadWindow.LoadObject - <type 'exceptions.RuntimeError'>:Failed to load image (filename: d:/ymir work/ui/costume_bg.jpg)

0309 12:09:20663 :: ============================================================================================================
0309 12:09:20663 :: Abort!!!!

i can't find any image inside the downloaded files the source that i'm using is 40250 from tmp4

Edited by Alessio
Link to comment
Share on other sites

  • 1 month later...

Here's the code with the bug fixed:

 

ACMD(do_ride) { dev_log(LOG_DEB0, "[DO_RIDE] start"); if (ch->IsDead() || ch->IsStun()) return; if (ch->IsHorseRiding()) { dev_log(LOG_DEB0, "[DO_RIDE] stop riding"); ch->StopRiding(); return; } if (ch->GetMountVnum()) { dev_log(LOG_DEB0, "[DO_RIDE] unmount"); do_unmount(ch, NULL, 0, 0); return; } if (ch->GetHorse() != NULL) { dev_log(LOG_DEB0, "[DO_RIDE] start riding"); ch->StartRiding(); return; } for (BYTE i = 0; i < INVENTORY_MAX_NUM; ++i) { LPITEM item = ch->GetInventoryItem(i); if (NULL == item) continue; if (item->IsRideItem()) { if (NULL == ch->GetWear(WEAR_UNIQUE1) || NULL == ch->GetWear(WEAR_UNIQUE2) || NULL == ch->GetWear(WEAR_COSTUME_MOUNT)) { dev_log(LOG_DEB0, "[DO_RIDE] USE UNIQUE ITEM"); ch->UseItem(TItemPos(INVENTORY, i)); return; } } switch (item->GetVnum()) { case 71114: case 71116: case 71118: case 71120: case 71122: dev_log(LOG_DEB0, "[DO_RIDE] USE QUEST ITEM"); ch->UseItem(TItemPos(INVENTORY, i)); return; } if ((item->GetVnum() > 52000) && (item->GetVnum() < 52091)) { dev_log(LOG_DEB0, "[DO_RIDE] USE QUEST ITEM"); ch->UseItem(TItemPos(INVENTORY, i)); return; } } ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("You do not have a mount.")); }

The bug was that the code was checking if the player was riding a mount or not and if the player had a mount in their inventory separately. This could lead to unexpected behavior if the player had both conditions fulfilled, as the code would only handle one of the conditions and return, instead of handling both. I combined those checks and also added a missing case in the switch statement to handle a new quest item. Lastly, I added a message to the player if they didn't have a mount.

Edited by woohoocraker
  • Good 1
Link to comment
Share on other sites

  • 10 months later...
  • Premium
Posted (edited)
On 3/9/2023 at 11:52 AM, Alessio said:

anyone know something about this error?

0309 12:09:20662 :: ui:2815: RuntimeWarning: tp_compare didn't return -1 or -2 for exception

0309 12:09:20663 :: 
uiInventory.py(line:68) __LoadWindow
ui.py(line:2808) LoadScriptFile
ui.py(line:2998) LoadChildren
ui.py(line:2998) LoadChildren
ui.py(line:2815) LoadChildren

CostumeWindow.LoadWindow.LoadObject - <type 'exceptions.RuntimeError'>:Failed to load image (filename: d:/ymir work/ui/costume_bg.jpg)

0309 12:09:20663 :: ============================================================================================================
0309 12:09:20663 :: Abort!!!!

i can't find any image inside the downloaded files the source that i'm using is 40250 from tmp4

Yeah i got the same problem... prolly coz files are old

Edited by Juki
Link to comment
Share on other sites

Announcements



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