Jump to content

Shahin

Banned
  • Posts

    129
  • Joined

  • Last visited

  • Feedback

    0%

Posts posted by Shahin

  1. 1. Faster and cleaner boot:

    Spoiler

    1. Reduce boot time. Standard you have 10 seconds to wait. Enter /boot/loader.conf and type:

    This is the hidden content, please

    2. We will modify the following startup scripts

    • /etc/rc.d/ldconfig
    • /etc/rc.d/netif
    • /etc/rc.d/nfsclient
    • /etc/rc.d/random
    • /etc/rc.d/routing

    Here is the summary of the changes. In most cases its just adding 1> /dev/null OR 1> /dev/null 2> /dev/null to not display unneeded information at boot process.

    This is the hidden content, please

    3. Next up is /etc/rc.d/random , search random_start() and comment the 5 lines shown below:

    45:random_start()
    46-{
    47-
    48-   # if [ ${harvest_mask} -gt 0 ]; then
    49-   #       echo -n 'Setting up harvesting: '
    50-   #       ${SYSCTL} kern.random.harvest.mask=${harvest_mask} > /dev/null
    51-   #       ${SYSCTL_N} kern.random.harvest.mask_symbolic
    52-   # fi
    53-

    4. Open /etc/rc.conf and at the end add:

    rc_startmsgs=NO
    defaultroute_delay="0"

    5. In /etc open csh.login and csh.logout and at the end add: (this clears the console after login and logout)

    clear

    6. Open /etc/gettytab and search: P|Pc|Pc console:\  and modify like down below: (this clears the console after booting)

    P|Pc|Pc console:\
        :ht:np:sp#9600:\  #the number is different for each machine. don't change this row!
        :cl=\E[H\E[2J:  #add just this line

     

    2. Alias for shortcuts such as paths and executions.

    Spoiler

    Aliases are used like this: 

    alias mycommand path
    or
    alias mycommand "path && execution"

    The idea is to build shortcuts that will help us compile or open / close the server without typing addresses and file executions, giving them only a name. They can be used ANYWHERE in the system. Personal example:

    alias server    "cd /usr/home/game/main && sh admin_panel.sh"
    alias compileall    "cd /usr/src/Server/ && gmake all -j5"
    alias compiledb    "cd /usr/src/Server/ && gmake db -j5"
    alias compilegame    "cd /usr/src/Server/ && gmake game -j5"

    these settings for me do the following:

    • server              #opens my admin panel for server start/stop/clear_logs/etc..
    • compileall        #compiles game&db
    • compiledb       #compiles db only
    • compilegame  #compiles game only

    ( That -j5 at the end is the use of 4 CPU cores at compilation execution. In your case it will be the number of cores used by your virtual machine and add +1 . Example: 8 cores? You will use -j9 )


    Aliases are retained in memory, but after reboot they are deleted, so we have to set them permanently:
    1.  We enter in the base folder of our machine user. For example, user root has /root folder.
    in there you will find .cshrc or .shrc file (depends on FreeBSD version) and search for: alias ll
    Under it add the alias you need, as shown above in the examples

    UPDATED! 12.10.2021

    3. Disable Send Mail - Credits to: @ martysama0134 (Not waiting after Send Mail Service on boot, it will reduce your boot time with 10 more seconds)

    Spoiler

    Open /etc/rc.conf and Edit/Add these options:

    # NO SENDMAIL
    sendmail_enable="NO"
    sendmail_submit_enable="NO"
    sendmail_outbound_enable="NO"
    sendmail_msp_queue_enable="NO"

    Note: on old fbsd versions, it was used "NONE" instead of "NO" for sendmail_enable

    Now, lets stop the sendmail service:

    service sendmail stop

    That's it! You can reboot and test it!

    Hope it's usefull. It was for me 🙂 
    Hope you have a great day!


    Shahin

    • Metin2 Dev 83
    • Eyes 4
    • Dislove 1
    • Confused 2
    • Good 25
    • Love 6
    • Love 36
  2. On 9/19/2021 at 7:34 PM, martysama0134 said:

    If m_DamageQueue' size() is bigger than 20 elements, you can just pop() the old one. Just 2 lines of code required.

    I suggest you to change its type from std::list to std::queue.

    Can you help us out with this one @ martysama0134?

  3. 3 hours ago, Cunoo said:

    I think can be something like this.. Because I never got black screen after fix, but if I can "get" black screen (10 hours+ in game) Im kicked.. I test it 3x and same problem just Im kicked before I can got black screen... Game is compiled clean from kraizy same as client, only for test.. I think there is something more bad.. Game is overflowed with something more.. Im not sure where is problem because I try debug and nothing happen.. I dont have too much deep knowledges for more.. But for me is this problem really strange because I use clean game for test... Today I test it on my game.. So I write feedback too late..

    if you find the problem, please leave the fix over here. it might help to improve the "black screen issue" topic, so it will be an upgrade to what @ Distraught left for us.

     

  4. Hello, i have a code but it is in a diff format and i saw a few months back that some users were offering a website for their code which was compressed in a diff line.

    Does anyone know that website?

    part of code below:

    Spoiler

     Srcs/Client/EterLib/GrpBase.cpp               |   44 +-
     Srcs/Client/EterLib/GrpBase.h                 |   19 +-
     Srcs/Client/EterLib/GrpDevice.cpp             |   83 +-
     Srcs/Client/EterLib/GrpFontTexture.cpp        |    8 +
     Srcs/Client/EterLib/GrpFontTexture.h          |    3 +
     Srcs/Client/EterLib/GrpTextInstance.cpp       | 1327 ++++++++++-------
     Srcs/Client/UserInterface/Locale_inc.h        |    1 +
     .../UserInterface/PythonApplication.cpp       |   61 +-
     8 files changed, 953 insertions(+), 593 deletions(-)

    diff --git a/Srcs/Client/EterLib/GrpBase.cpp b/Srcs/Client/EterLib/GrpBase.cpp
    index a54f8b0..320e561 100644
    --- a/Srcs/Client/EterLib/GrpBase.cpp
    +++ b/Srcs/Client/EterLib/GrpBase.cpp
    @@ -94,7 +94,12 @@ std::vector<TIndex>        CGraphicBase::ms_fillCubeIdxVector;
     LPD3DXMESH                CGraphicBase::ms_lpSphereMesh = NULL;
     LPD3DXMESH                CGraphicBase::ms_lpCylinderMesh = NULL;
     

     

  5. This is Shining System by Sanii. His website is not working atm, so here it is:

    The product is free on his website for anyone asking.

     

    This is the hidden content, please

     

    https://www.virustotal.com/gui/url/8f6124e231394ac492725761fb558df1663503eb8dab43823abd394decad7c34/detection

     

    With this you can add effects on any armor/weapon/costume etc. with one simple way:

    1. You will have a text file named shiningtable.txt in your pack/locale/xx folder, in which you add the shining path along with the item vnum. 

    Example: 

    10    "D:/ymir work/pc/common/effect/sword/sword_8_s.mse"

    Don't forget to use Tabs between vnum and path

    Also: you can set up to three effects on an item.

     

    That's it.

    No more binary and proto stress.

    • Metin2 Dev 26
    • kekw 1
    • Dislove 1
    • Scream 1
    • Good 8
    • Love 10
  6. So the easiest solution which is also not conflicting with the other time functions on update would be the :

    On 3/6/2021 at 2:34 AM, masodikbela said:
    • Calling effect update even when the client is minimized. This would make the client use somewhat more resource when its minimized, but would still use way more less resource compared to the "fix" in that topic.

    ?

    I am still benchmarking the "fix" received by @CHKRZ, but i think on a lower spec pc would run players crazy with the usage. I have 50% Gpu utilization with only one client minimized, 80% with tree clients minimized, on a i7 6700k integraded GPU "HD 630" (which is a high graded integrated PC Gpu, so the difference is huge when we talk about laptop i3/i5 integrated gpu users). 

    I am taking integrated GPUs as a measurement because 70% of players are using a laptop, and most of them have only integrated GPUs.

     

    The base idea is to Optimize, not to use more performance to fix a minor problem. (i'm still talking about the above fix)

     

    So, what would be your suggestion as the best solution, and if you can walk me through it.

  7. 63e255ae4a989a76941e8fe40be43a4a.gif

    Video down below for better understanding. It is normal recording, nothing sped up.

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

     

    Hello guys: If i leave the game in background even for 30 minutes, all the effects going on in the background are paused and resumed when window is on focus.

    It is like caching and then running everything afterwards. every effect untill the time i came back that was happening in the surrounded area, are playing all in the same time.


    Lets say if i have the game in background, the round circle around my character had to fully complete 100 cicles in the last one minute.

    When i get the Window back up, all those 100 cicles are starting on a high speed until it resumes to the actual time, and then it slows down to normal.

     

    I Know this is a known issue but i never had it on my own.

     

    How can i fix it?

     

    Thank you!

     

     

  8. Hello there, i have searched everywhere but it seem not to find any 2.8 conversion to anything.

    I have a gr2 convertor from 2.4/2.6/2.9 to 2.11, but it doesn't seem to work with 2.8

    I have even tried path changer with conversion as well, to 2.9 or 2.11 but the conversion still doesn't work.

     

    If somebody can help me, i would appreciate so much! Thank you!

     

    the files:

    This is the hidden content, please

     

    https://www.virustotal.com/gui/url/7b8d5818d1a4ab0948345d30fb9fca01803ddb3795c1e3f28a43fd0ef8c4bc71/detection

    • Metin2 Dev 6
    • Not Good 1
    • Lmao 1
    • Love 1
  9. 13 hours ago, Nino said:

    It might sound silly, but did you level up your horse level 11 before trying to attack with it ?

    You can put "/horse_level YourName 11" in game for make it.

     

     

    jesus christ.. i had level 40 set from gm command /all_skill_master and it was bugged for horse. Changing it with the standard comand, it was ok for level above 11 to 30

    Thank you so much!

  10. Hello there, i am working on martysama 4.9 extended, with costume_mount type etc. 

    I searched over the internet about this "issue" (most likely i am the dumb in question) ,but marty surely had something in his mind. 

     

    In InstanceBase.cpp i have this kind of lines:

    Spoiler
    
    enum eMountType {MOUNT_TYPE_NONE=0, MOUNT_TYPE_NORMAL=1, MOUNT_TYPE_COMBAT=2, MOUNT_TYPE_MILITARY=3};
    eMountType GetMountLevelByVnum(DWORD dwMountVnum, bool IsNew)
    {
    	if (!dwMountVnum)
    		return MOUNT_TYPE_NONE;
    
    	switch (dwMountVnum)
    	{
    		// ### YES SKILL
    		// @fixme116 begin
    		case 20107: // normal military horse (no guild)
    		case 20108: // normal military horse (guild member)
    		case 20109: // normal military horse (guild master)
    			if (IsNew)
    				return MOUNT_TYPE_NONE;
    		// @fixme116 end
    		// Classic
    		case 20110: // Classic Boar
    		case 20111: // Classic Wolf
    		case 20112: // Classic Tiger
    		case 20113: // Classic Lion
    		case 20114: // White Lion
    		// Special Lv2
    		case 20115: // Wild Battle Boar
    		case 20116: // Fight Wolf
    		case 20117: // Storm Tiger
    		case 20118: // Battle Lion (bugged)
    		case 20205: // Wild Battle Boar (alternative)
    		case 20206: // Fight Wolf (alternative)
    		case 20207: // Storm Tiger (alternative)
    		case 20208: // Battle Lion (bugged) (alternative)
    		// Royal Tigers
    		case 20120: // blue
    		case 20121: // dark red
    		case 20122: // gold
    		case 20123: // green
    		case 20124: // pied
    		case 20125: // white
    		// Royal mounts (Special Lv3)
    		case 20209: // Royal Boar
    		case 20210: // Royal Wolf
    		case 20211: // Royal Tiger
    		case 20212: // Royal Lion
    		//
    		case 20215: // Rudolph m Lv3 (yes skill, yes atk)
    		case 20218: // Rudolph f Lv3 (yes skill, yes atk)
    		case 20225: // Dyno Lv3 (yes skill, yes atk)
    		case 20230: // Turkey Lv3 (yes skill, yes atk)
    			return MOUNT_TYPE_MILITARY;
    			break;
    		// ### NO SKILL YES ATK
    		// @fixme116 begin
    		case 20104: // normal combat horse (no guild)
    		case 20105: // normal combat horse (guild member)
    		case 20106: // normal combat horse (guild master)
    			if (IsNew)
    				return MOUNT_TYPE_NONE;
    		// @fixme116 end
    		case 20119: // Black Horse (no skill, yes atk)
    		case 20214: // Rudolph m Lv2 (no skill, yes atk)
    		case 20217: // Rudolph f Lv2 (no skill, yes atk)
    		case 20219: // Equus Porphyreus (no skill, yes atk)
    		case 20220: // Comet (no skill, yes atk)
    		case 20221: // Polar Predator (no skill, yes atk)
    		case 20222: // Armoured Panda (no skill, yes atk)
    		case 20224: // Dyno Lv2 (no skill, yes atk)
    		case 20226: // Nightmare (no skill, yes atk)
    		case 20227: // Unicorn (no skill, yes atk)
    		case 20229: // Turkey Lv2 (no skill, yes atk)
    		case 20231: // Leopard (no skill, yes atk)
    		case 20232: // Black Panther (no skill, yes atk)
    			return MOUNT_TYPE_COMBAT;
    			break;
    		// ### NO SKILL NO ATK
    		// @fixme116 begin
    		case 20101: // normal beginner horse (no guild)
    		case 20102: // normal beginner horse (guild member)
    		case 20103: // normal beginner horse (guild master)
    			if (IsNew)
    				return MOUNT_TYPE_NONE;
    		// @fixme116 end
    		case 20213: // Rudolph m Lv1 (no skill, no atk)
    		case 20216: // Rudolph f Lv1 (no skill, no atk)
    		// Special Lv1
    		case 20201: // Boar Lv1 (no skill, no atk)
    		case 20202: // Wolf Lv1 (no skill, no atk)
    		case 20203: // Tiger Lv1 (no skill, no atk)
    		case 20204: // Lion Lv1 (no skill, no atk)
    		//
    		case 20223: // Dyno Lv1 (no skill, no atk)
    		case 20228: // Turkey Lv1 (no skill, no atk)
    			return MOUNT_TYPE_NORMAL;
    			break;
    		default:
    			return MOUNT_TYPE_NONE;
    			break;
    	}
    }

     

     

    But nothing useful in pvp.cpp, and i don't want to mess with what i might not find through the files.

    I don't want to add random lines just to "work", since he has something going on here already that we can use, but i don't know where to look after.

     

    Does someone have the solution for this? Pretty please! 

     

    Thank you!

     

  11. Hello there, this is my syserr

    0301 15:05:12894 :: ResourceManager::GetResourcePointer: NOT SUPPORT FILE season1\npc\backchon\mark_0
    I searched the file folder and there is no such file. I dragged the new backchon folder from retail version and still nothing changed.

    Changed the gr2 version of the file from 2.4 to 2.11 and still the same.

    I have tried the version of the file with extended hair over the ears, instead of stuck hair inside the skull (3d model design)

     

    Still nothing.. any ideas?

  12. mGJBjZL.png

    Hello devs, since i don't know how to work with databases, i have a syserr that i don't know where to start looking.. 

    Is there anyone that might be able to help me solve it?

     

    The server does work, but i took a sneak peek in db syserr finding 1kb of txt in it..

     

    Thank you!

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