Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 04/09/20 in all areas

  1. M2 Download Center Download Here ( Internal ) Hey, I don't want to waste your time, so let's start, it's gonna be short. src\Client EterBase\Timer.cpp | Find function: CTimer::GetElapsedMillisecond() Find this inside the function above: return 16 + (m_index & 1); Make it look like this: return 3 + (m_index & 3); EterBase\Timer.cpp | Find function: CTimer::Advance() Find this inside the function above: m_dwCurrentTime += 16 + (m_index & 1); Make it look like this: m_dwCurrentTime += 3 + (m_index & 3); GameLib\GameType.cpp | Find this (top of the file): extern float g_fGameFPS = 60.0f; Make it look like this: extern float g_fGameFPS = 250.0f; EterPythonLib\PythonWindow.cpp | Find function: CAniImageBox::CAniImageBox(PyObject * ppyObject) Find this inside the function above: m_byDelay(4), Make it look like this: m_byDelay(13), GameLib\MapOutdoorWater.cpp | Find function: CMapOutdoor::RenderWater() Find this inside the function above: STATEMANAGER.SetTexture(0, m_WaterInstances[((ELTimer_GetMSec() / 70) % 30)].GetTexturePointer()->GetD3DTexture()); Make it look like this: STATEMANAGER.SetTexture(0, m_WaterInstances[((ELTimer_GetMSec() / 30) % 30)].GetTexturePointer()->GetD3DTexture()); Since we don't want E/Q/R/F/T/G keys to be messed up, UserInterface\PythonApplication.cpp | Find these variables at the top of the file: float c_fDefaultCameraRotateSpeed = 1.5f; float c_fDefaultCameraPitchSpeed = 1.5f; float c_fDefaultCameraZoomSpeed = 0.05f; Make them look like this (you can tweak them more, these values aren't strict, just seems about right to me): float c_fDefaultCameraRotateSpeed = 0.5f; float c_fDefaultCameraPitchSpeed = 0.2f; float c_fDefaultCameraZoomSpeed = 0.007f; Client\pack\root\uitaskbar.py Find: if.constInfo.IN_GAME_SHOP_ENABLE: After: self.rampageGauge1.OnMouseOverIn = ui.__mem_func__(self.__RampageGauge_OverIn) Add: self.rampageGauge1.SetDelay(13) After: self.rampageGauge2.OnMouseLeftButtonUp = ui.__mem_func__(self.__RampageGauge_Click) Add: self.rampageGauge2.SetDelay(13) Scroll a little bit down, and then.. After: self.hpGauge = self.GetChild("HPGauge") Add: self.hpGauge.SetDelay(13) After: self.mpGauge = self.GetChild("SPGauge") Add: self.mpGauge.SetDelay(13) After: self.stGauge = self.GetChild("STGauge") Add: self.stGauge.SetDelay(13) Fast armor shining fix / UserInterface\PythonApplication.cpp (thanks @Nirray) Search on top of the file: double g_specularSpd=0.007f; Replace it with: double g_specularSpd=0.0017f; Python part simpler version by @VegaS™ That's all, compile your binary, pack your root and you are done. If you have any questions, feel free to ask it, or if you find an error, typo, anything inside this tutorial, don't hesitate to tell me, and I'll fix it ASAP. Credits goes to kespımuro and me for ghetto-fixing the rotation buttons. Cheers, xHeaven
    9 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.
    6 points
  3. std::min<int>(1,0) results in 0. You should use std::max, or, at worst, MINMAX(1, size, 3). I like this way better than filtering them via query. In here a quick&dirty patch:
    4 points
  4. With FPS increased.. - Without dogs, the lag is less.. it move better, i reached 250 fps - Spawned 500 wild dogs, after few seconds 5 seconds or fps drops to 7-8.. and start to lag a bit Wihtout FPS increased.. - Without dogs, the lag is okay.. but better with fps increased.. fps exactly 60 - Spawned 500 wild dogs, after few 5 seconds fps drops to 10-12, and don't make any lag So, with FPS increasted i guess is better when there are no soo many entitys around you.. i don't think is worth enough, it's good but it needs more adjustments.. Like effects, trees.. etc
    3 points
  5. M2 Download Center Download Here ( Internal ) Hey there, I have an Halloween gift for you all. i have been working for a few hours on official like element image on target window(See screenshots below). When you click on a mob if it is defined as elemental, it will open an element image in addition to the target window. Don't forget to hit the like button! (C) Metin2 guild wars - coded by [GA]Ruin - 27/10/2017 (I create custom metin2 systems in c++/python. if you want a custom system send me a pm and we can talk over skype). Let's begin! Server Side: Open service.h, add in the end: #define ELEMENT_TARGET Open char.cpp, search for else { p.dwVID = 0; p.bHPPercent = 0; } add below: #ifdef ELEMENT_TARGET const int ELEMENT_BASE = 11; DWORD curElementBase = ELEMENT_BASE; DWORD raceFlag; if (m_pkChrTarget && m_pkChrTarget->IsMonster() && (raceFlag = m_pkChrTarget->GetMobTable().dwRaceFlag) >= RACE_FLAG_ATT_ELEC) { for (int i = RACE_FLAG_ATT_ELEC; i <= RACE_FLAG_ATT_DARK; i *= 2) { curElementBase++; int diff = raceFlag - i; if (abs(diff) <= 1024) break; } p.bElement = curElementBase - ELEMENT_BASE; } else { p.bElement = 0; } #endif open packet.h, search for: } TPacketGCTarget; add above: #ifdef ELEMENT_TARGET BYTE bElement; #endif Client side: open locale_inc.h, add in the end: #define ELEMENT_TARGET open packet.h, search for } TPacketGCTarget; add above: #ifdef ELEMENT_TARGET BYTE bElement; #endif open PythonNetworkPhaseGame.cpp, look for: else if (pInstPlayer->CanViewTargetHP(*pInstTarget)) replace below with the following: #ifdef ELEMENT_TARGET PyCallClassMemberFunc(m_apoPhaseWnd[PHASE_WINDOW_GAME], "SetHPTargetBoard", Py_BuildValue("(iii)", TargetPacket.dwVID, TargetPacket.bHPPercent, TargetPacket.bElement)); #else PyCallClassMemberFunc(m_apoPhaseWnd[PHASE_WINDOW_GAME], "SetHPTargetBoard", Py_BuildValue("(ii)", TargetPacket.dwVID, TargetPacket.bHPPercent)); #endif open PythonApplicationModule.cpp, look for #ifdef ENABLE_ENERGY_SYSTEM add above: #ifdef ELEMENT_TARGET PyModule_AddIntConstant(poModule, "ENABLE_VIEW_ELEMENT", 1); #else PyModule_AddIntConstant(poModule, "ENABLE_VIEW_ELEMENT", 0); #endif open game.py, look for def SetHPTargetBoard(self, vid, hpPercentage): if vid != self.targetBoard.GetTargetVID(): self.targetBoard.ResetTargetBoard() self.targetBoard.SetEnemyVID(vid) self.targetBoard.SetHP(hpPercentage) self.targetBoard.Show() replace with: if app.ENABLE_VIEW_ELEMENT: def SetHPTargetBoard(self, vid, hpPercentage,bElement): if vid != self.targetBoard.GetTargetVID(): self.targetBoard.ResetTargetBoard() self.targetBoard.SetEnemyVID(vid) self.targetBoard.SetHP(hpPercentage) self.targetBoard.SetElementImage(bElement) self.targetBoard.Show() else: def SetHPTargetBoard(self, vid, hpPercentage): if vid != self.targetBoard.GetTargetVID(): self.targetBoard.ResetTargetBoard() self.targetBoard.SetEnemyVID(vid) self.targetBoard.SetHP(hpPercentage) self.targetBoard.Show() open uitarget.py, look for import background add below: if app.ENABLE_VIEW_ELEMENT: ELEMENT_IMAGE_DIC = {1: "elect", 2: "fire", 3: "ice", 4: "wind", 5: "earth", 6 : "dark"} look for: self.isShowButton = False add below: if app.ENABLE_VIEW_ELEMENT: self.elementImage = None inside Destroy method, look for: self.__Initialize() add below: if app.ENABLE_VIEW_ELEMENT: self.elementImage = None inside ResetTargetBoard method, look for: self.hpGauge.Hide() add below: if app.ENABLE_VIEW_ELEMENT and self.elementImage: self.elementImage = None look for : def SetElementImage(self,elementId): add above: if app.ENABLE_VIEW_ELEMENT: def SetElementImage(self,elementId): try: if elementId > 0 and elementId in ELEMENT_IMAGE_DIC.keys(): self.elementImage = ui.ImageBox() self.elementImage.SetParent(self.name) self.elementImage.SetPosition(-60,-12) self.elementImage.LoadImage("d:/ymir work/ui/game/12zi/element/%s.sub" % (ELEMENT_IMAGE_DIC[elementId])) self.elementImage.Show() except: pass Compile server, client source and root pack and that's it! Enjoy! Happy halloween!
    2 points
  6. Not all pc can reach these FPS, I think is better to set a new impostation on config.exe, like most famous games.
    2 points
  7. There's no 'fast cloud' related about increasing fps. So, are useless those modifications and if we talk about fix clipping what @Nirray release, that's another subject. About speed hack fix detection you didn't mentioned the source of fix. ?
    2 points
  8. Thanks for the release, but how do i change the speed from the Effects? (Armor +7 +8 +9 need to edit the mse?) and the Clouds Speed? About the Clouds i found it: For those who using @Nirray cloud clipping FIX. From: m_fCloudPositionU += m_fCloudScrollSpeedU * 0.030f; m_fCloudPositionV += m_fCloudScrollSpeedV * 0.030f To: m_fCloudPositionU += m_fCloudScrollSpeedU * 0.007f; m_fCloudPositionV += m_fCloudScrollSpeedV * 0.007f;
    2 points
  9. You can just wrap size into std::min(1, size) during protos reading process.
    2 points
  10. Hello everyone. If you play or played on gameforge servers you should to know that what is this. When you are opening more than one clients the icon of the applications (on the windows taskbar) are groupped like With this little modification you can do like this(as on gameforge clients work): Open the EterLib\MSWindow.cpp and paste this under the #include <windowsx.h> line: #define DISABLE_TASKBAR_GROUPING #ifdef DISABLE_TASKBAR_GROUPING #include <Shobjidl.h> #endif Then scroll down to the CMSWindow::Create function and search this code: if (!m_hWnd) return false; Paste the following code below of that: #ifdef DISABLE_TASKBAR_GROUPING OSVERSIONINFO v; v.dwOSVersionInfoSize = sizeof(OSVERSIONINFO); GetVersionEx(&v); if (v.dwMajorVersion == 6 && v.dwMinorVersion >= 1 || v.dwMajorVersion > 6) { WCHAR myAppID[128]; swprintf(myAppID, sizeof(myAppID) / sizeof(myAppID[0]), L"MyMetin2AppID%u", GetCurrentProcessId()); HRESULT hr = SetCurrentProcessExplicitAppUserModelID(myAppID); if (!SUCCEEDED(hr)) return false; } #endif The if-statement checks your windows version and if passed, the ungrouping will run. (6.1 is Win7SP1) P3NG3R
    1 point
  11. Download Metin2 Download Tempel Building Set hello, i hope you enjoy this pack. let comment or like left on youtube, if you like it.
    1 point
  12. Hey, I want to share a fix about the SKILL_MUYEONG, Official fixed this before some months ago, but nobody care in such details so we still have the same issue in our servers. The SKILL_MUYEONG is still attacking while you riding but doesn't make any damage. Preview with Fixed SKILL_MUYEONG while you riding: [Hidden Content]
    1 point
  13. A Possible solution from here:
    1 point
  14. #closed If you bought the system from @Sanii, do not hesitate to contact him, I am sure he will help you. Otherwise, I assume that you are using a leaked version. Best regards Raylee
    1 point
  15. This system is made from Sanii and he sell it at his Services, you must ask him for help if you have bought the system otherwise nobody can help you here.
    1 point
  16. 1 point
  17. Maybe better add default value 13 in constructor of this object and no need change in all places? Btw. Nice work! Can you share video with comparation(before/after)?
    1 point
  18. This happened because on 3ds max you should export when your weapon is on frontal view. Not at the top, bottom, back, etc. ... Only front. After this, you can export.
    1 point
  19. M2 Download Center Download Here ( Internal ) Hello There. I publish here this system i hope that this help you a bit with this you can hide your costume if you dont like it (if I forgot something just say it ) (this system is not complete yet you can hide only your costume no hairstyle,sash,weapon) (This system is not mine! i just found the source function and made the python codes and quest)
    1 point
  20. > THIS MAP IS NOT SELLABLE, TRADABLE OR DOWNLOADABLE < New 2k17 Map1 Design - Unfnished Hello guys, this is my 3rd map ever made and I want to hear your opinions and ideas related to this. Also, I'm waiting constructive criticism from you, I know this is far to be perfect, but I still like it... Note1 : This topic wil be updated. Note2 : All resources and resources`s creators below. (with links) 20/3/2017 - v1 21/3/2017 - v2 All the 3d objects are from official servers, wom2 and from iAce demo objects release : https://www.youtube.com/watch?v=b0WnIeb2fxo The download from the video may not work, here you can download them : http://www.mediafire.com/file/aiyojjmpsjpa388/iAce+-+Demo+Object+Pack+.zip All the textures are free, took from Shogun`s texture pack collection : https://metin2dev.org/board/index.php?/topic/49-collective-thread-design-resources/ No special environment or effects. Kind regards, Nero
    1 point
  21. M2 Download Center Download Here ( Internal )
    1 point
  22. Let's don't kill the source with dozens of useless lines and duplicated. const bool bAttacking = (get_dword_time() - pkAttacker->GetLastAttackTime()) < pkAttacker->IsRiding() ? 800 : 700; if (!bAttacking) return BATTLE_NONE;
    0 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.