xP3NG3Rx

Honorable Member
  • Content Count

    562
  • Joined

  • Last visited

  • Days Won

    160

xP3NG3Rx last won the day on July 19

xP3NG3Rx had the most liked content!

Community Reputation

1,650 Godlike

About xP3NG3Rx

  • Rank
    Chivalric

Profile Information

  • Gender
    Male
  • Location
    Wien

Contact Methods

  • Website URL
    https://www.youtube.com/channel/UCWGBT3HQ0fWCXmUsJI06UXQ

Recent Profile Visitors

10,917 profile views
  1. v19.4.5 MPacks v19.4.5 eterPacks Special thanks to @metin2team
  2. I think that file is a mistake only. Have a look at the attaching code:
  3. xP3NG3Rx

    Gameforge sucks

    Karma is the biggest b**ch in life .
  4. New pet, mount and new aura system parts: DL1 - Pet and Mount DL2 - Aura stuff
  5. xP3NG3Rx

    c++ [C++] Small RE for mss sound scripts

    @ReFresh You're welcome, and all good.
  6. Hi everyone. I'd like to share a small guide for the official .mss file. It is a new Token in the sound script files which is controlling the volume, if the Token has been set of course. Couple of sound scripts are using this option: 0.0.) Make a backup of your files. 0.1.) Copying the codes from the board brings some invisible white characters with it, paste first into notepad++ and remove all the "?" characters. 1.0.) Open MilesLib/Type.h. 1.1.) Add the following variable to the two structured types by name: TSoundData and TSoundInstance. float fSoundVolume; 2.0.) Open MilesLib/Type.cpp. 2.1.) In the function by name "NSound::LoadSoundInformationPiece" look for the following code: int iCount; if (!rkTextFileLoader.GetTokenInteger("sounddatacount", &iCount)) { SetResultString((strResult + " File format error, SoundDataCount Unable to find.").c_str()); return false; } 2.2.) Paste the following below of it: float fVolume = 0.0f; if (rkTextFileLoader.GetTokenFloat("soundpositionenable", &fVolume)) { SetResultString((strResult + " SoundPosition has checked.").c_str()); } else { SetResultString((strResult + " SoundPosition has not checked.").c_str()); } 2.3.) Bit scrolled down extend the for cycle like this: for (DWORD i = 0; i < rSoundDataVector.size(); ++i) { //Some random stuff //{} rSoundDataVector[i].fSoundVolume = fVolume; } 2.4.) At the bottom of the file you will find this function: "NSound::DataToInstance", extend the for cycle with this line: rSoundInstance.fSoundVolume = c_rSoundData.fSoundVolume; 3.0.) Open the MilesLib/SoundManager.h. 3.1.) Add a new argument to the definition of the "PlaySound2D" function: void PlaySound2D(const char * c_szFileName, float fVolume = 0.0f); 4.0.) Open the MilesLib/SoundManager.cpp. 4.1.) Replace the function "PlaySound2D" with this: void CSoundManager::PlaySound2D(const char * c_szFileName, float fVolume) { if (0.0f == GetSoundVolume()) return; ISoundInstance * pInstance; if (!GetSoundInstance2D(c_szFileName, &pInstance)) return; float fNewVolume = fVolume; if (fVolume == 0.0f) fNewVolume = GetSoundVolume(); pInstance->SetVolume(fNewVolume); pInstance->Play(1); } 4.2.) Replace this function "CSoundManager::UpdateSoundInstance" with this: <!> Attention: Of this function you will find two, be sure you will replace the correct one, check the arguments! I think the second one is not in used at all <!> void CSoundManager::UpdateSoundInstance(float fx, float fy, float fz, DWORD dwcurFrame, const NSound::TSoundInstanceVector * c_pSoundInstanceVector, BOOL bCheckFrequency) { for (DWORD i = 0; i < c_pSoundInstanceVector->size(); ++i) { const NSound::TSoundInstance & c_rSoundInstance = c_pSoundInstanceVector->at(i); if (c_rSoundInstance.dwFrame == dwcurFrame) { if (0.0f == c_rSoundInstance.fSoundVolume) { //Tracenf("PLAY SOUND %s", c_rSoundInstance.strSoundFileName.c_str()); PlayCharacterSound3D(fx, fy, fz, c_rSoundInstance.strSoundFileName.c_str(), bCheckFrequency); } else { PlaySound2D(c_rSoundInstance.strSoundFileName.c_str(), c_rSoundInstance.fSoundVolume); } } } } Any problem occurs, post a comment below.
  7. Hi @xP3NG3Rx can you help me? 

    Do you have skype address, Don't worry, easy question :))

    If you want to add my skype address:

    live: recor_ding 

    1. xP3NG3Rx

      xP3NG3Rx

      Hey, I'm not using skype so often, ask it via PM, but mostly I'm out of any offers right now. Have no time for metin2 section, but I'm not closed either, yet.

    2. ismailapa42
  8. Patch v19.3.9 Contains: New costumes with hairstyles New weapon set New armor set New shining for the weapons and armors at level +15 Locales(de,en,hu), with new login and loading backgrounds Map copys via 'ParentMapName' A new pet Redesigned monsters "Awakened" Download locale_ae locale_tr PS.: I am not able to unpack the proto files, sorry.
  9. xP3NG3Rx

    open System details

    foa the bumping is allowed every 48 hrs. soa any syserr?
  10. Some locales have been added to the release topic.
  11. Hello guys! After job, before sleep here is the latest patch, the v19.2. Have fun Ramadan costumes, hairstyles, pets New minigame "samemonster" gui elements 6th7th attribute gui elements Download locale_de locale_en locale_hu
  12. xP3NG3Rx

    [RLS] Quiver-System

    This one is not happening to me. Put some debug message everywhere where the CalcMeleeDamage has been called and figure it out why it called with bow combined with quiver.
  13. xP3NG3Rx

    [RLS] Quiver-System

    Oh yes, I made an extra modification for that, because of the quivers gave me some meaningless errors in syserr. The remain time is stored in the sockets so basically the game recognised as a stone into it so I've put this: And @anagonda1 which errors you got?
  14. Don't give them ideas 2019 easter pet, costumes + hairs: Download Download(icons)
  15. xP3NG3Rx

    c++ [RLS]RenderTarget

    Have you tried in debug mode?