Jump to content

hasanmacit

Active+ Member
  • Posts

    36
  • Joined

  • Last visited

  • Feedback

    0%

About hasanmacit

  • Birthday 01/07/2000

Informations

  • Gender
    Male
  • Country
    Turkey
  • Nationality
    Turkish

Recent Profile Visitors

1761 profile views

hasanmacit's Achievements

Community Regular

Community Regular (8/16)

  • Very Popular Rare
  • Reacting Well
  • Dedicated
  • First Post
  • Collaborator Rare

Recent Badges

828

Reputation

  1. I believe this is the right section for this post. I want to issue a warning to potential users right away: while the program handles a significant portion of the system-adding process, I strongly advise against using it on any files that aren't integrated with GitHub. You should always verify the changes the program makes via GitHub. Since the program operates at a basic level, the error rate is negligible for simple instructions (like "search," "add below," or "replace"), but it can go a bit off-track with complex instructions. Therefore, it is essential to review the changes it makes. By using GitHub, you can both monitor the program's modifications and manually apply changes where necessary. This program was designed not to automate the entire installation process, but to reduce the time you spend working on the system. I hope it proves useful to everyone. Running the `build.bat` file included in the RAR archive will generate an executable (.exe) file for you. When you launch the executable, you will see the program interface. You can use the "Test" button to see how much of the code is being added, and click the "Add System" button when you are ready to apply it to your files. The button to undo the changes is clearly visible. Enjoy using it. What is it and What Does it Do? Metin2 System Installer v1 is an automated, smart integration tool that seamlessly patches Metin2 systems (e.g. Aura System, Won System, 6-7th Bonuses, Mailbox System, etc.) into your Server and Client source code with a single click. It eliminates hours of tedious manual searching, eliminates syntax errors, header class scope mismatches, and macro conflict issues. Key Features Smart Code Search & Block Matching: Automatically parses system instructions (Search, Add Below, Add Above, Replace, Add to End of File) from natural language guides, diffs, or code files. C++ Header Scope & Class Boundary Protection (}; Protection): Guarantees that member methods and variables inside header files (.h, .hpp) always remain strictly inside the class before };. Eliminates C2039: not a member of class compilation errors. Macro Boundary Isolation (#ifdef Isolation): Prevents newly inserted #ifdef blocks from getting trapped inside unrelated preceding #endif scopes. Safe Dry Run (Simulation Test): Test-runs the entire integration virtually without modifying a single file on disk. Reports all additions, skips, and potential warnings beforehand. One-Click Rollback (Undo): Creates automatic backups before applying modifications. If something goes wrong or you change your mind, undo the entire installation with one click. Built-in Visual Diff Viewer: Inspect searched code versus the closest code in your source file side-by-side in a split window. Bilingual UI ( Turkish & English): Switch between Turkish and English instantly using embedded flag buttons. Remembers your language preference. Automatic Visual Studio (.vcxproj) Registration: New .cpp and .h files included with the system are automatically placed in the correct directories and registered in .vcxproj and .filters files. What This Tool CANNOT Do (Limitations & Disclaimers) Does NOT Compile Visual Studio Solutions (.sln): The tool edits and registers source files; compiling the final binaries in Visual Studio is done by the developer. Does NOT Fix Incompatible C++ Architecture: If a system requires third-party dependencies, missing packets, or incompatible structures that don't exist in your base files, developers must adapt the underlying logic. Does NOT Modify Encrypted Pack Archives (.epk/.eix): The tool works on unpacked client scripts (root, uiscript, etc.) and C++ files, not encrypted archive packs. Does NOT Execute Live SQL Queries: Files like .sql or proto files are copied, but it does not execute queries directly against your live MySQL/MariaDB server. Does NOT Guess Beyond Completely Restructured Code: If the code you are searching for has been completely rewritten or deleted from your file, the patcher will safely skip that step rather than corrupting your source code. There is only the code, no .exe file. Download Alternative download links → Google Drive
  2. I updated the shadows to reflect the sun's position. It will be more realistic.
  3. LensFlare.cpp //search RenderBar2d(0.0f, 0.0f, 1024.0f, 1024.0f); //change RenderBar2d(0.0f, 0.0f, (float)ms_Viewport.Width, (float)ms_Viewport.Height); MapOutdoorRender.cpp //search m_LensFlare.Compute(mc_pEnvironmentData->DirLights[ENV_DIRLIGHT_BACKGROUND].Direction); //change D3DXVECTOR3 v3SunDir = mc_pEnvironmentData->DirLights[ENV_DIRLIGHT_BACKGROUND].Direction; D3DXVec3Normalize(&v3SunDir, &v3SunDir); m_LensFlare.Compute(v3SunDir); //search D3DXVECTOR3 v3Target = pCamera->GetTarget(); D3DXVECTOR3 v3LightEye(v3Target.x - 1.732f * 1250.0f, v3Target.y - 1250.0f, v3Target.z + 2.0f * 1.732f * 1250.0f); //change D3DXVECTOR3 v3SunDir = mc_pEnvironmentData->DirLights[ENV_DIRLIGHT_BACKGROUND].Direction; D3DXVec3Normalize(&v3SunDir, &v3SunDir); D3DXVECTOR3 v3Target = pCamera->GetTarget(); D3DXVECTOR3 v3LightEye = v3Target + v3SunDir * 5000.0f; MapOutdoorCharacterShadow.cpp //search D3DXVECTOR3 v3Eye(v3Target.x - 1.732f * 1250.0f, v3Target.y - 1250.0f, v3Target.z + 2.0f * 1.732f * 1250.0f); //change D3DXVECTOR3 v3SunDir = mc_pEnvironmentData->DirLights[ENV_DIRLIGHT_BACKGROUND].Direction; D3DXVec3Normalize(&v3SunDir, &v3SunDir); D3DXVECTOR3 v3Eye = v3Target + v3SunDir * 5000.0f; In the relevant map's msenv file, the value next to `enable` should be 1. result example c1.msenv ScriptType EnvrionmentData ScriptVersion 1.0000 Group DirectionalLight { Direction 0.450000 0.720000 -0.150000 Group Background { Enable 1 Diffuse 1.000000 0.972549 0.972549 1.000000 Ambient 0.000000 0.000000 0.000000 1.000000 } Group Character { Enable 1 Diffuse 1.000000 0.972549 0.972549 1.000000 Ambient 0.150000 0.150000 0.150000 1.000000 } } Group Material { Diffuse 1.000000 1.000000 1.000000 1.000000 Ambient 0.882353 0.854902 0.784314 1.000000 Emissive 0.321569 0.321569 0.411765 1.000000 } Group Fog { Enable 1 NearDistance 5000.000000 FarDistance 20000.000000 Color 0.690196 0.741176 0.839216 1.000000 } Group Filter { Enable 0 Color 0.556863 0.329412 0.329412 0.000000 AlphaSrc 1 AlphaDest 2 } Group SkyBox { Scale 3500.000000 3500.000000 3500.000000 GradientLevelUpper 4 GradientLevelLower 1 CloudScale 200000.000000 200000.000000 CloudHeight 30000.000000 CloudTextureScale 4.000000 4.000000 CloudSpeed 0.004000 0.004000 CloudTextureFileName "d:/ymir work/environment/clouds_zone01.tga" List CloudColor { 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 } List Gradient { 0.094118 0.286275 0.658824 0.000000 0.231373 0.403922 0.729412 0.000000 0.231373 0.403922 0.729412 0.000000 0.376471 0.498039 0.729412 0.000000 0.376471 0.498039 0.729412 0.000000 0.568627 0.678431 0.882353 0.000000 0.568627 0.678431 0.882353 0.000000 0.850980 0.901961 1.000000 0.000000 0.850980 0.901961 1.000000 0.000000 0.533333 0.564706 0.623529 0.000000 } } Group LensFlare { Enable 1 BrightnessColor 1.000000 0.886275 0.886275 1.000000 MaxBrightness 0.740000 MainFlareEnable 1 MainFlareTextureFileName "D:\Ymir Work\environment\sunflare.dds" MainFlareSize 0.350000 }
  4. I'll check it. Thanks for your comment. Let me know if you see anything else.
  5. Download Alternative download links → GitHub With this system, we will get rid of the hard-coded 60 fps limit of Metin2. Please comment any recommendations and improvements. Here is an example showcase from my game:
  6. cannot find the four tga files located under ymir work that should be loaded under the class board(ui.py). There is no specific error. It seems like it cannot read the contents of the ymir work directory.
  7. When entering the game in the new pack system, the files in the ymir work folder are not visible. Has anyone encountered this? Will there be any solutions offered? Or am I the only one encountering this error? @ Distraught
  8. I don't know if it's fixed, but when you try to create a new chart, you'll get a warning saying "last_play hasn't a default value." To do this, right-click the spreadsheet and select "design table" Hover over last_play and paste the following into the "Default" field to fix the problem. '0000-00-00 00:00:00'
  9. i will continue to improve it. if i encounter any errors, i will let you know. if i can solve them, i will let you know with the solution. thx again for your contribution.
  10. the github links you shared for the client src and client don't work properly and won't clone. trying to get a build gives a lib error. i bought the build as open source. your contribution to the community is significant. thx.
  11. hi bro
×
×
  • 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.