1
0
forked from metin2/server

5 Commits

Author SHA1 Message Date
mq1n
418ecc5c24 change line endings to LF for .py files
Changed line endings from CRLF to LF for all .py files to solve issues with pre_qc.py and other potential problems on windows
2024-07-11 10:03:57 +03:00
6616009e92 Merge pull request 'Pin Dockerfile Ubuntu version.' (#24) from halil/server:master into master
Reviewed-on: metin2/server#24
2024-05-01 07:57:36 +03:00
1ada609020 Pin Dockerfile Ubuntu version. 2024-05-01 01:10:02 +03:00
0101618d89 Fixed sectree not found while loading guild buildings 2024-03-25 07:01:22 +02:00
8579828ca6 Implemented official level update fix 2024-03-11 18:08:24 +02:00
6 changed files with 11 additions and 4 deletions

1
.gitattributes vendored
View File

@@ -2,6 +2,7 @@
# Set default behavior to automatically normalize line endings.
###############################################################################
* text=auto
*.py eol=lf
###############################################################################
# Set default behavior for command prompt diff.

View File

@@ -1,4 +1,4 @@
FROM ubuntu:latest as build
FROM ubuntu:22.04 as build
WORKDIR /app
# Update the system and install various dependencies
@@ -21,7 +21,7 @@ RUN mkdir build/
RUN cd build && cmake -DCMAKE_TOOLCHAIN_FILE=vcpkg/scripts/buildsystems/vcpkg.cmake ..
RUN cd build && make -j $(nproc)
FROM ubuntu:latest as app
FROM ubuntu:22.04 as app
WORKDIR /app
RUN apt-get update && apt-get install -y python2 libdevil-dev libbsd-dev && apt-get clean

View File

@@ -89,6 +89,7 @@ This is a very serious security risk and one of the reasons this project is stil
### Gameplay
- Fixed invisibility bug on login/respawn/teleport etc.
- Fixed player level not updating [(thread)](https://metin2.dev/topic/30612-official-level-update-fix-reversed/)
### Exploits
- See the warning above :(

View File

@@ -815,6 +815,11 @@ CLand * CManager::FindLandByGuild(DWORD GID)
bool CManager::LoadObject(TObject * pTable, bool isBoot) // from DB
{
// Skip loading if the target map is not available on this core
// Source: https://metin2.dev/topic/23614-solving-a-very-old-problem-what-most-people-ignore/#comment-163073
if (!map_allow_find(pTable->lMapIndex))
return false;
CLand * pkLand = FindLand(pTable->dwLandID);
if (!pkLand)

View File

@@ -5851,7 +5851,7 @@ void CHARACTER::ResetPoint(int iLv)
{
BYTE bJob = GetJob();
PointChange(POINT_LEVEL, iLv - GetLevel());
PointChange(POINT_LEVEL, iLv - GetLevel(), false, true);
SetRealPoint(POINT_ST, JobInitialPoints[bJob].st);
SetPoint(POINT_ST, GetRealPoint(POINT_ST));

View File

@@ -862,7 +862,7 @@ namespace quest
ch->PointChange(POINT_SUB_SKILL, newLevel < 10 ? 0 : newLevel - std::max(ch->GetLevel(), 9));
ch->PointChange(POINT_STAT, ((std::clamp(newLevel, 1, 90) - ch->GetLevel()) * 3) + ch->GetPoint(POINT_LEVEL_STEP));
//<2F><><EFBFBD><EFBFBD>
ch->PointChange(POINT_LEVEL, newLevel - ch->GetLevel());
ch->PointChange(POINT_LEVEL, newLevel - ch->GetLevel(), false, true);
//HP, SP
ch->SetRandomHP((newLevel - 1) * Random::get(JobInitialPoints[ch->GetJob()].hp_per_lv_begin, JobInitialPoints[ch->GetJob()].hp_per_lv_end));
ch->SetRandomSP((newLevel - 1) * Random::get(JobInitialPoints[ch->GetJob()].sp_per_lv_begin, JobInitialPoints[ch->GetJob()].sp_per_lv_end));