Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation since 04/18/21 in all areas

  1. PLEASE NOTE: THIS GUIDE WAS MADE BY @TokiSan AND @arves100 The DungeonBlock is a type assigned to specific objects that are used in dungeons on metin2, are characterized by a lightmap that is associated with the basic texture, giving particular effects, have their own extension in the property and are not interchangeable with the gr2 present in the Building. 1. Foreword I start by saying that the following procedure seems to be very expensive: I will introduce about the DungeonBlock, explaining how it is used in the objects of metin2 and what's
    17 points
  2. Btw, instead of adding a .SetDelay() to all objects, you could do do a simple change. for all visual ani_image from screen. root/ui.py Search for: if True == value.has_key("delay"): window.SetDelay(value["delay"]) Replace with: [Hidden Content] So, you don't have to any part of python from tutorial, just this.
    15 points
  3. M2 Download Center Download Here ( Internal ) Download Here ( GitHub ) https://github.com/blackdragonx61/Metin2-Minimap-Party-Member-Tracking If you have a better icon, share with us. If you have a bug, comment section below.
    14 points
  4. M2 Download Center Download Here ( Internal ) By default, the GM mark in the envelope only appears when the GM writes to us or writes back. This modification will improve this and add a new special envelope. The solution comes from KoYGeR, a user of this forum. ///SERVER 1. Open cmd.cpp and add (intuitively, among other acmd lines): ACMD(do_get_gmlist); Find this: { "\n", NULL, 0, POS_DEAD, GM_IMPLEMENTOR } And add above: { "get_gmlist", do_get_gmlist, 0, POS_DEAD, GM_PLAYER }, 2. Open cmd_gm.cpp and at the end of the file add: ACM
    14 points
  5. M2 Download Center Download Here ( Internal ) Download Here ( GitHub ) [Hidden Content]
    11 points
  6. Hello, This tutorial is intended to help beginner who don’t know how to configure regeneration files for specific maps. It may seem obvious to some but some don’t know how it works completely. That is, choose the correct location of your Monsters, Metins, Bosses and NPC’s as well as their coordinates, direction and spawn time. Information. The tutorial presents the 4 files (regen.txt, boss.txt, stone.txt, npc.txt) at the same time because they work particular the same way. These files are located in your server files at “share/locale/country/map/name_of_your_map
    10 points
  7. M2 Download Center Download Here ( Internal ) Hello, this script is available for some time already, but i didnt find time to do this earlier. I won't describe everything step by step, all you need to know is in the video. What software do you need? - 3Ds max - Noesis Only thing you need to do is download and paste gr2 script into noesis plugin/python folder, that's it. Download: Video: Original topic (on Xentax) All credits goes to jayn23 from xentax!!
    8 points
  8. Python version. Work in both ways. From inventory to safebox and from safebox to inventory. [Hidden Content]
    8 points
  9. M2 Download Center Download Here ( Internal ) Hello since i was looking for this system and it was "hard" to find it because Sanii's page is gone, i had to put it together taking bits of code from here and there. It is full with all the fixes and working with armor and weapon costumes. With this system you can assign an .mse file to a Vnum via 1 single .txt file It is a nice system so everyone should be able to use it. Only thing left is to adapt it for Sash's/Wing's if someone want's to do that i can post it here. Have fun.
    7 points
  10. M2 Download Center Download Here ( Internal ) hello people i wanted to publish something small. You can see icons that I modded at the end of 2013. The idea is or was that skills jump directly from m1 to G1 through a soul book. it was intended for an oldschool server. I think the icons are very beautiful and that's why I'm happy to share them with you. If you want to create a quest for it, you are welcome to do it. I'll adjust these later and add them here. Have fun with it Kind regards Ace Bookindow
    7 points
  11. M2 Download Center Download Here ( Internal ) Download Here ( GitHub ) [Hidden Content]
    7 points
  12. M2 Download Center Download Here ( Internal ) Download Here ( GitHub ) [Hidden Content]
    7 points
  13. I would do it like this, in a simple way, without useless code, as i said in another forum too. [Hidden Content]
    7 points
  14. You're right, but if you really want to use something like this, you should do a customizable class, like: [Hidden Content]
    7 points
  15. M2 Download Center Download Here ( Internal ) More than one of you has probably noticed crooked legs in a Suraman novice. This condition is not genetic and does not occur in other armours. I performed a small operation and the Suraman can enjoy straight legs. Download: https://mega.nz/file/ik8WBACK#mTTnQx2sx7oJBUD5l1OKI4_s_RzzIamzr2J6aU4_CEU
    6 points
  16. Warrioruscentaurus
    6 points
  17. Thanks for sharing, as always! You could also check the position realtime while the player is in range so it updates faster. /// 1. @ UserInterface/PythonMiniMap.cpp // Search @ void CPythonMiniMap::RenderAtlas const auto& PartyInfo = it->second; __GlobalPositionToAtlasPosition(PartyInfo->lX - m_dwAtlasBaseX, PartyInfo->lY - m_dwAtlasBaseY, &PartyInfo->fScreenX, &PartyInfo->fScreenY); // Replace with long xPos = PartyInfo->lX; long yPos = PartyInfo->lY; CInstanceBase* pkInst = CPythonCharacterManager::Instance().GetInstancePtrB
    6 points
  18. There is no legal difference. Just people think stealing from Webzen (Creator of Metin2) is totally ok and stealing from Owsap is Baaaaad. Also Owsap or even Marty's code contains ~90% of Webzen code so they actually illegally sells Webzen's property. Again do not get me wrong, still not supporting using other's leaked files, it's all about the ridiculos behavior what I explained above.
    5 points
  19. M2 Download Center Download Here ( Internal ) Download Here ( GitHub ) Original system forked from Mali61 Link Adapted by ASIKOO
    5 points
  20. M2 Download Center Download Here ( Internal ) Ingame video: Download: Password:
    5 points
  21. M2 Download Center Download Here ( Internal ) Hi I'd like to release my small project of hairs [Hidden Content] 46kid [Hidden Content] 47kid [Hidden Content] 48kid [Hidden Content]
    5 points
  22. M2 Download Center Download Here ( Internal ) Download: [Hidden Content]
    5 points
  23. Version 2014.1 only offers an upgrade of sources to the x64-bit platform, MySQL 8 compatibility and ready to use CLang-LLVM 11 compiler. No particular optimization, this version may contain bugs... Please contact me and send to me the dysfunctions that you can detect so that I can correct them... Only the baguette language is available, I will soon add the translations within the server and the client... Introduction Kraizy Updated Edition allows you to run a private Metin2 Server with the 2014 version of the Kraizy sources, the year in which the s
    4 points
  24. M2 Download Center Download Here ( Internal ) It is my own production. I hope you will be satisfied using it. Download VT
    4 points
  25. New Icon From Owsap: https://i.imgur.com/b6fwdOd.mp4
    4 points
  26. ( //cmd.cpp //Search struct command_info cmd_info[] = //Add Before ACMD(do_online); //Search { "\n", NULL, 0, POS_DEAD, GM_IMPLEMENTOR } //Add Before { "online", do_online, 0, POS_DEAD, GM_LOW_WIZARD }, ) ( //cmd_gm.cpp //Search ACMD(do_who) //Add After ACMD(do_online) { /// Phase 1 - Count Local Core const DESC_MANAGER::DESC_SET& c_set_desc = DESC_MANAGER::instance().GetClientSet(); DESC_MANAGER::DESC_SET::const_iterator it = c_set_desc.begin(); DWORD dwLoginCount = 0; while (it != c_set_desc.end()) { LPDESC d = *(it++); if (d->GetCharacter()) ++dwLoginCount; // co
    4 points
  27. M2 Download Center Download Here ( Internal ) Download Here ( GitHub ) [Hidden Content]
    4 points
  28. M2 Download Center Download Here ( Internal ) Download Here ( GitHub ) [Hidden Content]
    4 points
  29. good luck with it it costed me an about 35-40 euros to get these back so good luck with it hairdyes [Hidden Content] 46kid [Hidden Content] 47kid [Hidden Content] 48kid [Hidden Content] PS: yes i made these for dany but somehow he didn't really wanted to make a server with wolfman.
    4 points
  30. The idea is good, but the code is bugged and unreadable, here're the bugs: text = '1kks' ValueError: invalid literal for int() with base 10: '1000000s' text = '1kk500' 1000000500 text = '1abcd' '1abcd' If I'm the one who do this, i would do it more extendable and using a proficient way. [Hidden Content] At least, keep the copyright.
    4 points
  31. ../Srcs/Client/UserInterface/PythonPlayerInput.cpp Replace the whole function void CPythonPlayer::__SetAutoAttackTargetActorID(DWORD dwVID) with: [Hidden Content]
    4 points
  32. The idea isn't so bad, but the code has too many useless lines, here's what you can do to improve it. [Hidden Content]
    4 points
  33. Curse of a pirate! I chose this theme for this summer! I will do my best to make as many stuff as i can in the best qualitty i can do! This is first preview of one of the dungeon floors (still not done).
    3 points
  34. I saw this feature on a romanian private server. To avoid the spam you could do a countdown timer to disable the button for 10 seconds or whatever. Demo: https://gyazo.com/c13c9a687d5f4885154b692c0b384c76 uiinventory.py: self.wndBeltInventoryLayer = None self.wndBeltInventorySlot = None self.expandBtn = None self.minBtn = None ##activateall self.UseItemBelt = None self.expandBtn = self.GetChild("ExpandBtn") self.minBtn = self.GetChild("MinimizeBtn") ##activateall self.UseItemBelt = self.GetChild("UseBeltItemsButton") self.expandBtn.
    3 points
  35. 3 points
  36. Topic updated. Other known accounts: @Olteanu @Mt2Services Reasons: reselling scamming bypass a ban multi-account
    3 points
  37. This tutorial is going to teach you how to compile, run and configure a server on Windows. I needed something like this a few days ago and since it doesn't exist, I decided to make it There is no addition or modification in the source or client (except for small bonuses). 0. Beginning At the end of the topic there will be two links where you will need to download: Client + Server + Source MySQL The client is based on the Metin2 Client fur r40250, I just edited it to have the classic format. Regardless the Server and Client
    3 points
  38. Continuation of the warriorcart haha
    3 points
  39. GF v21.1.3.0 patch Contents: root-meta, dumped binary, protos New chat filter GUI resources New pet, new costume(Ramadan) + Hairstyle All files unpacked in a folder Soon comes the Looting System resources. Well.. They are so geniuses.
    3 points
  40. Hello, I started a project at the end of 2020, to create a video game of RPG type. My goal is to learn video game development and at the same time have fun so I decided to use the assets of metin2 and to recreate some gameplay mechanics. my goal is not to recreate metin2 entirely but I still want to share the development of this project for people who might be interested. there will be updates from time to time on this post.
    3 points
  41. M2 Download Center Download Here ( Internal ) As the title says, here's how you can synchronize your skill_table from client with skill_proto from server. [1]. First of all we've to rewrite the enum part of tokens (which is used in CPythonSkill::RegisterSkillTable), that means we change the order of index-tab-line with a new order, because ymir didn't used all columns. In that way we keep the file much cleaner and just with necessary columns (9 columns instead of 27). Srcs/Client/UserInterface/PythonSkill.h Search for the next enum: Replac
    3 points
  42. You don't need server source for this, you can do it directly via source client. For being in real time you'll need to do a boolean variable inside of CInstanceBase class which is updated from RecvAffectAddPacket, RecvAffectRemovePacket for each instance. So with that you could do a function like chrmgr.IsPoisoned(self.GetTargetVID()) which will result the status of poison for specific vid and check it in OnUpdate. Btw, the implementation is very bad, if i would want to do this, i don't touch the hpGauge, just add a new gauge bar over the hpGauge and hide/show it, that's all, co
    3 points
  43. I don't see the reason why you would do that, but it's fine, here's the python version if someone wants it. [Hidden Content]
    3 points
  44. @cjunior2011 @Syriza @nonnorulez [Hidden Content]
    3 points
  45. M2 Download Center Download Here ( Internal ) Download Here ( GitHub ) Metin2 Color Formatter A simple class writted for Python and C++ which convert the param-values into an string by a specific color rgb as hexadecimals. Color constants module: https://www.webucator.com/blog/2015/03/python-color-constants-module/ https://www.color-hex.com/color/ccffff Python: from cff import CFF text = CFF.format('Metin2', 'green') text = CFF.format(8000, 'banana') text = CFF.format(412.55, 'red') text = CFF.format('Pending', '#113355') text = CFF.fo
    3 points
  46. M2 Download Center Download Here ( Internal ) Download Here ( GitHub ) There's just a smart python module which i did for fun, for a friend, no support for implementation. Enjoy. Github repository: [Hidden Content]
    3 points
  47. M2 Download Center Download Here ( Internal ) GitHub repository: [Hidden Content]
    3 points
  48. You too? You want to create a server of our favorite MMORPG?! You will finally be able to make your dream come true ! This guide is exclusively compatible with Metin2 Project. You are ready? Gooo! Are you a beginner? I suggest you start by creating a server on your computer How to create à Metin2 private server on virtual machine. Summary FreeBSD Environment (Required) Web Environment (Optional) Windows Environment (Optional) This part is essential, it allows you to prepare, configure your Metin2 Project environment on your FreeBSD Serv
    2 points
  49. Here're the references to understand how it's working step-by-step: char.cpp [Hidden Content] constants.cpp #define MAX_EXP_DELTA_OF_LEV 31 #define PERCENT_LVDELTA(me, victim) aiPercentByDeltaLev[MINMAX(0, (victim + 15) - me, MAX_EXP_DELTA_OF_LEV - 1)] #define PERCENT_LVDELTA_BOSS(me, victim) aiPercentByDeltaLevForBoss[MINMAX(0, (victim + 15) - me, MAX_EXP_DELTA_OF_LEV - 1)] constants.cpp const int aiPercentByDeltaLevForBoss_euckr[MAX_EXP_DELTA_OF_LEV] = { 1, // -15 0 [...] 180 // 15 30 }; const int aiPercentByDeltaLev_e
    2 points
  50. Thanks for release, the idea isn't bad, but there're some bad things. I'll show you the problems part and how can be improved, there're just advices, i hope you'll get them. def __del__(self): if len(self.eventList) > 0: self.eventList.clear() If you're using Python 2+ or Python 3.2 and below, you can't use the clear() method (allowed on 3.3+), also as i said in the second message you don't need to check the length of the list, already the clear() method doing that inside and there's no reason to put it to __del__ method, it will be called when the object is garbage colle
    2 points
×
×
  • 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.