Jump to content

AKUROS

Inactive Member
  • Posts

    21
  • Joined

  • Last visited

  • Feedback

    0%

Posts posted by AKUROS

  1. Can you help me insert the fix in great's offline shop please?

     

    I didn't understand what to put in bool CHARACTER :: CanWarp () const

     

    my char.h define:

     

    #ifdef OFFLINE_SHOP
    	public:
    		void			OpenMyShop(const char * c_pszSign, TShopItemTable * pTable, BYTE bItemCount, DWORD days);
    		void			SendShops(bool isGm = false);
    		void			OpenShop(DWORD id, const char *name, bool onboot = false);
    		void			SetPrivShop(DWORD shop_id) { bprivShop = shop_id; }
    		BOOL			IsPrivShop(void)  const { return bprivShop>0; }
    		DWORD			GetPrivShop()  const { return bprivShop; }
    		void			SetPrivShopOwner(DWORD id) { bprivShopOwner = id; }
    		DWORD			GetPrivShopOwner()  const { return bprivShopOwner; }
    		void			DeleteMyShop();
    		DWORD			GetShopTime()  const { return dw_ShopTime; }
    		void			SetShopTime(DWORD time) { dw_ShopTime = time; }
    		void			SetShopSign(const char * name);
    		void			LoadPrivShops();
    		TPrivShop		GetPrivShopTable(DWORD id);
    		void			RemovePrivShopTable(DWORD id);
    		void			UpdatePrivShopTable(DWORD id, TPrivShop shop);
    		void			UpdateShopItems();
    		void			SendShopCost();
    	private:
    		PSHOP_MAP		m_mapshops;
    		DWORD			bprivShop;
    		DWORD			bprivShopOwner;
    		DWORD			dw_ShopTime;
    	public:
    		void			StartRefreshShopEvent();
    	protected:
    		LPEVENT			m_pkRefreshShopEvent;
    	public:
    		void			StartShopEditModeEvent();
    		void			SetShopEditMode(bool val);
    		bool			GetShopEditMode() { return m_bShopEditMode; }
    		void			SetShopEditModeTick();
    		DWORD			GetShopEditModeTick() { return m_dwShopEditModeTick; }
    	protected:
    		LPEVENT			m_pkEditShopEvent;
    		bool			m_bShopEditMode;
    		DWORD			m_dwShopEditModeTick;
    #endif	
    
    #ifdef GIFT_SYSTEM
    	protected:
    		void			AddGiftGrid(int page);
    		int				AddGiftGridItem(int page, int size);
    		GIFT_MAP		m_mapGiftGrid;
    		LPEVENT			m_pkGiftRefresh;
    		DWORD			m_dwLastGiftPage;
    	public:
    		void			StartRefreshGift();
    		void			LoadGiftPage(int page);
    		void			RefreshGift();
    		int				GetGiftPages() { return m_mapGiftGrid.size(); }
    		int				GetLastGiftPage() { return m_dwLastGiftPage; }
    #endif

     

  2. 2 hours ago, Ikarus_ said:

    try by replacing this:
     

    
    
    if self.interface.BUILD_OnMouseLeftButtonUp():  //1357
    	return

     

    with this:

    
    
    if self.interface and self.interface.BUILD_OnMouseLeftButtonUp():  //1357
    	return

     

     

    It's strange to got an error where self.interface is None, you should invastigate to find the real case of this.

     

    Thanks it works!

    how can i find the real problem?

     

  3. Hi, 

    i have this crash syserr error:

     

    1101 00:10:34518 :: Traceback (most recent call last):
    
    1101 00:10:34518 ::   File "game.py", line 1357, in OnMouseLeftButtonUp
    
    1101 00:10:34518 :: AttributeError
    1101 00:10:34519 :: : 
    1101 00:10:34519 :: 'NoneType' object has no attribute 'BUILD_OnMouseLeftButtonUp'
    1101 00:10:34519 :: 
    

     

    game.py

     

    def OnMouseLeftButtonUp(self):
    
    		if self.interface.BUILD_OnMouseLeftButtonUp():  //1357
    			return
    
    		if mouseModule.mouseController.isAttached():
    
    			attachedType = mouseModule.mouseController.GetAttachedType()
    			attachedItemIndex = mouseModule.mouseController.GetAttachedItemIndex()
    			attachedItemSlotPos = mouseModule.mouseController.GetAttachedSlotNumber()
    			attachedItemCount = mouseModule.mouseController.GetAttachedItemCount()
    
    			## QuickSlot
    			if player.SLOT_TYPE_QUICK_SLOT == attachedType:
    				player.RequestDeleteGlobalQuickSlot(attachedItemSlotPos)
    
    			elif player.SLOT_TYPE_INVENTORY == attachedType:
    
    
    				if player.ITEM_MONEY == attachedItemIndex:
    					self.__PutMoney(attachedType, attachedItemCount, self.PickingCharacterIndex)
    				elif player.ITEM_CHEQUE == attachedItemIndex:
    					self.__PutCheque(attachedType, attachedItemCount, self.PickingCharacterIndex)
    				else:
    					self.__PutItem(attachedType, attachedItemIndex, attachedItemSlotPos, attachedItemCount, self.PickingCharacterIndex)
    
    			## DragonSoul
    			elif player.SLOT_TYPE_DRAGON_SOUL_INVENTORY == attachedType:
    				self.__PutItem(attachedType, attachedItemIndex, attachedItemSlotPos, attachedItemCount, self.PickingCharacterIndex)
    			
    			elif player.SLOT_TYPE_INVENTORY == attachedType or\
    				player.SLOT_TYPE_SKILL_BOOK_INVENTORY == attachedType or\
    				player.SLOT_TYPE_UPGRADE_ITEMS_INVENTORY == attachedType or\
    				player.SLOT_TYPE_STONE_INVENTORY == attachedType or\
    				player.SLOT_TYPE_BOX_INVENTORY == attachedType or\
    				player.SLOT_TYPE_EFSUN_INVENTORY == attachedType or\
    				player.SLOT_TYPE_CICEK_INVENTORY == attachedType:
    				self.__PutItem(attachedType, attachedItemIndex, attachedItemSlotPos, attachedItemCount, self.PickingCharacterIndex)
    			
    			mouseModule.mouseController.DeattachObject()
    
    		else:
    			hyperlink = ui.GetHyperlink()
    			if hyperlink:
    				if app.IsPressed(app.DIK_LALT):
    					link = chat.GetLinkFromHyperlink(hyperlink)
    					ime.PasteString(link)
    				else:
    					self.interface.MakeHyperlinkTooltip(hyperlink)
    				return
    			else:
    				player.SetMouseState(player.MBT_LEFT, player.MBS_CLICK)
    				
    		#player.EndMouseWalking()
    		return True

     

    interfacemodule.py

     

    def BUILD_OnMouseLeftButtonUp(self):
    		if not self.wndGuildBuilding:
    			return
    
    		if not self.wndGuildBuilding.IsPreviewMode():
    			return True
    
    		return False

     

    Could you help me solve this error? Thanks.

  4. 21 minutes ago, Lufbert said:

    Because as it names said it's "smart". 

    When function execution ends pointer is automatically deallocated and ram is freed (of course only in this simple example with unique_ptr, normally that topic is more complicated for global variables, variables added to vectors etc.).

    That's right! Thanks ❤️

  5. Great offline shop -> 

    This is the hidden content, please

     

    VirusTotal: 

    This is the hidden content, please

     

    Fix 1:

    https://paste2.org/Bv0APE95

     

    Fix 2:

    https://paste2.org/ajLImBNf

     

    Fix 3:

    #include "../libgame/include/grid.h"
    
    // Aratılır.
    
    #include "../../libgame/include/grid.h"
    
    //Şeklinde değiştirilir.

     

    #ifdef SHOP_ONLY_ALLOWED_INDEX
            bool block = (shop_max > 0 ? (get_offline_shops_count() >= shop_max): false);
    #else 
            bool block = (get_offline_shops_count() >= shop_max);
    #endif
            if (block)
            {
                ChatPacket(CHAT_TYPE_INFO, LC_TEXT("SHOP_MAP_MAX"));
                return;
            }
        }
    
    // Aratılır. {char.cpp}
    
            bool block = false;
    
    #ifdef SHOP_ONLY_ALLOWED_INDEX
            if (shop_max > 0)
            {
    #else
            if (shop_max == 0)
                block = true;
            else {
    #endif
                std::auto_ptr <SQLMsg> pkMsg(DBManager::instance().DirectQuery("SELECT map_index from player_shop WHERE channel=%d and status='OK' and map_index=%d", g_bChannel, GetMapIndex()));
                SQLResult* pRes = pkMsg->Get();
                if (pRes->uiNumRows >= shop_max)
                    block = true;
            }
            if (block)
            {
                ChatPacket(CHAT_TYPE_INFO, LC_TEXT("SHOP_MAP_MAX"));
                return;
            }
            }
    
    // Şeklinde değiştirilir.

    I advise against other systems. They will ask you for money for this shop specially only aesthetically by adding some functions.

    I use this system in my server since 2018.

    • Metin2 Dev 14
    • Think 1
    • Lmao 1
    • Good 8
    • Love 2
  6. Hello guys,
    i have a newly opened server and i have a big problem.
    Many players use the dmg hack on my server, most likely the lalaker.
    I have also tried changing packets but the hack continues to work.
    I also followed Rankacito's guide but it gives me problems, when I give mobs swords I don't always deal damage ... without using hacks.

    I also tried to contact svside.com, but I don't like having to use an external library on my server.

    Is it possible that you can't fix this hack?

    Please help me.

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