Initiate Mage
- Joined
- Sep 5, 2026
- Messages
- 3
- Reaction score
- 4
Hello everyone.
My name is W, also known as Sinful. I have been working in software development for around 10 years, and I started a project based on the original GunZ 1.5 source code.
The goal is to fix the many problems that have existed in this source code for years, improve the code structure, increase security, and make the project easier to maintain.
Most importantly, I want to do all of this without changing GunZ's original physics or K-Style gameplay.
At this point, there are already more than 1,200 commits to this source.
Some of the main changes include:
I am not trying to turn GunZ into an unnecessarily complicated project. Quite the opposite. I want to make the code simpler, cleaner, and easier to maintain.
The goal is to improve security without ruining the game experience.
I am also working on improvements to the launcher.
One of the ideas is to keep the launcher running while GunZ is open. This would allow additional checks to be performed while the player is in-game.
The old system is very simple, and there are already tools capable of working with that format.
Simply replacing a 5-digit key with a longer key while keeping the same basic system does not solve the problem.
I am working on a new format that includes:
If the game needs to use a file, the computer must eventually decrypt it. Someone with enough reverse-engineering knowledge can still try to figure out how the system works.
The difference is that the new system will be significantly harder to analyze and break than the old one.
For example, I am working on improvements to the Ladder system.
After a match ends, the player will be able to automatically return to the queue instead of having to leave the room, click multiple buttons, and repeat the entire process manually.
I am also working on:
Over the years, new features were added on top of code that already had many issues. Eventually, this made some parts of the project extremely difficult to understand and modify.
My goal is to fix these problems at their root.
Today, there are many AI tools that can help significantly with software development. I also use AI during this project.
However, simply giving the source code to an AI and asking it to "improve everything" is not enough for a project of this size.
You need to understand C++, memory management, networking, databases, security, architecture, debugging, and, most importantly, how GunZ itself works in order to know whether a change actually fixed a problem without breaking something else.
The changes also need to be tested, and the behavior before and after each change needs to be compared.
I do not want to change the K-Style physics.
I do not want to turn the game into something else.
I simply want to take an old codebase with many long-standing problems, fix those problems, and leave behind a much better foundation for anyone who wants to continue developing GunZ.
The source will eventually be released on GitHub and made available to everyone who wants to use it.
Once the project reaches a state that I consider ready for release, I intend to make the source public for the community.
This will allow other developers to study the code, contribute, fix problems, and create their own projects without having to start over with the same old issues.
There is still a lot of work to do, but the source has already gone through a huge number of changes and is now very different from the original codebase.
Note: If you have any ideas that you would like to see added to the project, please share them. I would be happy to hear your thoughts and work on them. I will soon post screenshots of the tests. The source will now have regression tests, along with screenshots showing the game running, the new folder structure, classes, and functions.
I will share the screenshots soon.
This time, there will be no excuses for not having a GunZ, and this source will become the standard for all of you.
More updates coming soon.
My name is W, also known as Sinful. I have been working in software development for around 10 years, and I started a project based on the original GunZ 1.5 source code.
The goal is to fix the many problems that have existed in this source code for years, improve the code structure, increase security, and make the project easier to maintain.
Most importantly, I want to do all of this without changing GunZ's original physics or K-Style gameplay.
At this point, there are already more than 1,200 commits to this source.
What has already been done
I have made changes to several parts of the project, including the Client, MSCommon, MatchServer, and other areas.Some of the main changes include:
- Fixed security issues found in the code.
- Fixed issues that could cause crashes.
- Improved memory management.
- Improved FPS.
- Improved overall performance.
- Fixed various logic issues.
- Improved networking and P2P.
- Removed unnecessary code.
- Separated parts of the code that were too tightly mixed together.
- Reduced coupling between different parts of the project.
- Refactored functions and classes that had become excessively large.
- Reduced unnecessary dependencies between .h files.
- Improved database communication.
- Fixed security issues found in SQL queries.
- Improved compatibility with newer versions of Windows and DirectX.
- Improved audio-related systems.
I am not trying to turn GunZ into an unnecessarily complicated project. Quite the opposite. I want to make the code simpler, cleaner, and easier to maintain.
Security and Anti-Cheat
I am also putting a lot of work into security. The client has its own protection mechanisms, and the server also performs its own checks. I did not make the server fully authoritative because doing so could significantly change the behavior of the game and negatively affect the GunZ gameplay we know.The goal is to improve security without ruining the game experience.
I am also working on improvements to the launcher.
One of the ideas is to keep the launcher running while GunZ is open. This would allow additional checks to be performed while the player is in-game.
New MRS System
Another thing I am changing is the protection system for .mrs files.The old system is very simple, and there are already tools capable of working with that format.
Simply replacing a 5-digit key with a longer key while keeping the same basic system does not solve the problem.
I am working on a new format that includes:
- Key derivation.
- Different keys depending on the version.
- File integrity verification.
- A new MRS format.
- Protection against client modification.
- Improved file protection.
- Controlled compatibility between different versions.
If the game needs to use a file, the computer must eventually decrypt it. Someone with enough reverse-engineering knowledge can still try to figure out how the system works.
The difference is that the new system will be significantly harder to analyze and break than the old one.
Game Improvements
Besides the technical work, I am also fixing some issues with the game's overall flow.For example, I am working on improvements to the Ladder system.
After a match ends, the player will be able to automatically return to the queue instead of having to leave the room, click multiple buttons, and repeat the entire process manually.
I am also working on:
- Mission improvements.
- Mission difficulty improvements.
- Better rewards.
- Daily login rewards.
- Lobby improvements.
- A redesign of Mint, since it is currently difficult to maintain.
- Launcher improvements.
- General improvements to the player experience.
Why am I doing this?
Anyone who has worked with the GunZ source knows that there are many long-standing problems.Over the years, new features were added on top of code that already had many issues. Eventually, this made some parts of the project extremely difficult to understand and modify.
My goal is to fix these problems at their root.
Today, there are many AI tools that can help significantly with software development. I also use AI during this project.
However, simply giving the source code to an AI and asking it to "improve everything" is not enough for a project of this size.
You need to understand C++, memory management, networking, databases, security, architecture, debugging, and, most importantly, how GunZ itself works in order to know whether a change actually fixed a problem without breaking something else.
The changes also need to be tested, and the behavior before and after each change needs to be compared.
The Goal
My goal is to provide a much more organized, stable, and secure GunZ 1.5 source while preserving what makes GunZ what it is.I do not want to change the K-Style physics.
I do not want to turn the game into something else.
I simply want to take an old codebase with many long-standing problems, fix those problems, and leave behind a much better foundation for anyone who wants to continue developing GunZ.
The source will eventually be released on GitHub and made available to everyone who wants to use it.
Once the project reaches a state that I consider ready for release, I intend to make the source public for the community.
This will allow other developers to study the code, contribute, fix problems, and create their own projects without having to start over with the same old issues.
There is still a lot of work to do, but the source has already gone through a huge number of changes and is now very different from the original codebase.
Note: If you have any ideas that you would like to see added to the project, please share them. I would be happy to hear your thoughts and work on them. I will soon post screenshots of the tests. The source will now have regression tests, along with screenshots showing the game running, the new folder structure, classes, and functions.
I will share the screenshots soon.
This time, there will be no excuses for not having a GunZ, and this source will become the standard for all of you.
More updates coming soon.
Last edited:

