Jump to content

Filachilla

Member
  • Posts

    121
  • Joined

  • Last visited

  • Feedback

    0%

Posts posted by Filachilla

  1. 9 hours ago, Mali said:

    You will hate me but official > any pvp server all day.

    I agree with you, but if metin was open source, free to use, it would change.. The only problem is that gameforge basically holds a monopoly on copyright throughout Europe and jerks metin as such.. He is the difference in whether a small team will make a server, or a large company that can afford to invest.. In another position, I believe that a strong community with a distro, like Linux systems, could be created and it would find sponsors.

  2. If all the players of the official servers went on strike for a week, then gayforge can close all the servers.. Metin lives only on the community for so long, if there were no privates, then a good 70% of the current players of metin don't even know what metin actually is.

  3. 6 hours ago, tyzumah said:

    Hello again. How far is your home bro? Just joking xD
    But please, respond as soon as you can

    Loading new fonts when initializing the client would probably be the best option.. But I simply thought why not do it in the patcher, as a requirement to install a new font on the system when the patcher is first launched (similar to c++ runtime libraries for example)

  4. On 2/23/2023 at 1:59 AM, Owsap said:

    Here is a little update for the tooltips and a small correction for horizontal & vertical positions.

    EterLib/GrpTextInstance.cpp

      Reveal hidden contents
    /// 1.
    // Search @ WORD CGraphicTextInstance::GetTextLineCount
    	return wLineCount;
    
    // Add above
    #if defined(WJ_MULTI_TEXTLINE)
    	wLineCount += multi_text.size();
    #endif
    
    /// 4.
    // Search
    void CGraphicTextInstance::SetPosition
    
    // Replace entire function with
    void CGraphicTextInstance::SetPosition(float fx, float fy, float fz)
    {
    	m_v3Position.x = fx;
    	m_v3Position.y = fy;
    	m_v3Position.z = fz;
    
    #if defined(WJ_MULTI_TEXTLINE)
    	for (std::size_t i = 0; i < multi_text.size(); i++)
    	{
    		const auto& it = multi_text.at(i);
    		it->SetPosition(fx, fy + (i + 1) * m_textHeight, fz);
    
    		it->SetHorizonalAlign(m_hAlign);
    		it->SetVerticalAlign(m_vAlign);
    
    		it->SetOutline(m_isOutline);
    		it->SetFeather(m_fFontFeather);
    	}
    #endif
    }

     

    EterLib/GrpTextInstance.h

      Reveal hidden contents
    /// 1.
    // Search
    	WORD GetTextLineCount();
    
    // Add below
    	WORD GetLineHeight() { return m_textHeight; }
    	void SetLineHeight(const int c_iLineHeight) { m_textHeight = c_iLineHeight; }

     

    EterLib/PythonWindow.cpp

      Reveal hidden contents
    /// 1.
    // Search
    	void CTextLine::SetMultiLine(BOOL bFlag)
    	{
    		m_TextInstance.SetMultiLine(bFlag ? true : false);
    	}
    
    // Add below
    	WORD CTextLine::GetTextLineCount() { return m_TextInstance.GetTextLineCount(); }
    	WORD CTextLine::GetLineHeight() { return m_TextInstance.GetLineHeight(); }
    	void CTextLine::SetLineHeight(int iHeight) { m_TextInstance.SetLineHeight(iHeight); }

     

    EterLib/PythonWindow.h

      Reveal hidden contents
    /// 1.
    // Search
    		void GetTextSize(int* pnWidth, int* pnHeight);
    
    // Add below
    		WORD GetTextLineCount();
    		WORD GetLineHeight();
    		void SetLineHeight(int iHeight);

     

    Root/uiToolTip.py

      Reveal hidden contents
    """ 1. """
    # Search
    def SplitDescription(desc, limit):
    
    # Replace the entire method with
    def SplitDescription(desc, limit):
    	total_tokens = desc.split()
    	line_tokens = []
    	line_len = 0
    	lines = []
    
    	for token in total_tokens:
    		if "|" in token:
    			sep_pos = token.find("|")
    			line_tokens.append(token[:sep_pos])
    			lines.append(" ".join(line_tokens))
    			line_len = len(token) - (sep_pos + 1)
    			line_tokens = [token[sep_pos+1:]]
    		elif app.WJ_MULTI_TEXTLINE and "\\n" in token:
    			sep_pos = token.find("\\n")
    			line_tokens.append(token[:sep_pos])
    
    			lines.append(" ".join(line_tokens))
    			line_len = len(token) - (sep_pos + 2)
    			line_tokens = [token[sep_pos+2:]]
    		else:
    			line_len += len(token)
    			if len(line_tokens) + line_len > limit:
    				lines.append(" ".join(line_tokens))
    				line_len = len(token)
    				line_tokens = [token]
    			else:
    				line_tokens.append(token)
    
    	if line_tokens:
    		lines.append(" ".join(line_tokens))
    
    	return lines
    
    """ 2. """
    # Search
    	def AppendTextLine(self, text, color = FONT_COLOR, centerAlign = True):
    
    # Replace the entire method with
    	def AppendTextLine(self, text, color = FONT_COLOR, centerAlign = True):
    		textLine = ui.TextLine()
    		textLine.SetParent(self)
    		textLine.SetFontName(self.defFontName)
    		textLine.SetPackedFontColor(color)
    		textLine.SetText(text)
    		textLine.SetOutline()
    		textLine.SetFeather(False)
    		if app.WJ_MULTI_TEXTLINE:
    			textLine.SetLineHeight(self.TEXT_LINE_HEIGHT)
    
    		if centerAlign:
    			textLine.SetPosition(self.toolTipWidth / 2, self.toolTipHeight)
    			textLine.SetHorizontalAlignCenter()
    		else:
    			textLine.SetPosition(10, self.toolTipHeight)
    
    		textLine.Show()
    
    		self.childrenList.append(textLine)
    
    		if app.WJ_MULTI_TEXTLINE:
    			lineCount = textLine.GetTextLineCount()
    			self.toolTipHeight += self.TEXT_LINE_HEIGHT * lineCount
    		else:
    			self.toolTipHeight += self.TEXT_LINE_HEIGHT
    
    		self.ResizeToolTip()
    
    		return textLine

     

     

    ui.py?

  5. 21 hours ago, Exynox said:

    I hope you're probably aware that having (popular) Metin2-related repositories on GitHub opens you up to possible copyright infringement claims. This can lead, as it happened multiple times, to account deletions and bans. I don't see the problem with this system where M2DL automatically (?) updates with the private repository's content.

    Also, having a separate topic for each release seems better imo, as the discourse is not interfered with by having a thousand different subjects being discussed at the same time.

    I dont said anything about repo hosted in github.. M2DL is perfect platform... It would be fine reorganized it like one repo per user.. ?

    • Metin2 Dev 1
  6.  

    13 hours ago, Volvox said:

    Github link does not work.

    Its a typical, Mali just block git and share only with us friends ? (I think) you can simply see last open source version via m2d ?  (Its fine when will be updated as time is free) My little request will be make to one little repo with those things, it was more practically than seriously 1000000000000000000 links and topics.. So when Mali got some idea or brain up, we will stand up ? 

  7. On 3/18/2024 at 7:55 PM, Juki said:

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

    "Failed to load image (filename: d:/ymir work/ui/costume_bg.jpg)"

    replace simply path with one correct

    i think you have this image in locale.. (base path for costume_bg)

    • Good 1
  8. 1 hour ago, Mali said:

    1) Scroll allows you to read the book without any time limit, and a new time is determined after reading it. It is not a problem.

    2) I already shared in the upper post.

    1) Yes, but default time is 24h for book.. So when I use scroll, time is restarted to 24 as I think or no? How is possible to got 29h, when 24h is limit?

    2) Thanks, thats work fine ?

  9. 1 hour ago, Mali said:

    If you guys have this system

    Add this in __AppendSkillNextReadTime

    			if player.CheckAffect(chr.NEW_AFFECT_SKILL_BOOK_NO_DELAY, 0):
    				return

     

    what is "stackable to up - wtf?"

    Im not sure about that scroll, but I can got random times like 18 hours, 29hours etc after use that scroll ? This is right? Second think is when I use scroll so time is always showed on the book.. ? Late I can record some video to explain more problem..

  10. 15 hours ago, Juki said:

    I did everything like TMP4 in his video, changed all BIND_IP and PROXY_IP in auth,game99,ch1 etc... Server is running i can connect over winscp but i can't enter the game .... Could anyone help pls?

    here is the pic: https://metin2.download/picture/X1mAWRiUtsH6MtQF0bKG0o6m774KAZCF/.png

    As you can see, you just dont have opened ports.. (maybe your ip is not public? ask your isp)

    • Good 1
  11. On 2/26/2024 at 12:58 PM, HFWhite said:

    What does SECONDCOIN do ??

    If i write "50011" on priceVnum and on price "200" It tells me I dont have enough yang to buy the item.

    When you find SECONDARY_COIN in source, you can find something like type vnum.. So I think you just can set it like yang, but just for item (you dont need to set anything more and only count it like yang?) I asked too up for this, but nothing happen to answer.. Definetly if you dont use that, its a simple delete it (unecessary)

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