Skip to content

Commit

Permalink
Merge pull request #115 from mir-diablo-ii-tools/develop
Browse files Browse the repository at this point in the history
Merge develop into master for 3.0.3.1
  • Loading branch information
IAmTrial authored Oct 27, 2022
2 parents bb32bfd + 83006c4 commit 14ffbcf
Show file tree
Hide file tree
Showing 378 changed files with 3,740 additions and 1,580 deletions.
133 changes: 102 additions & 31 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,46 +1,117 @@
# Visual C++ 6.0 Data Files
*.ncb
*.opt
*.positions
*.wwdb

# Binaries
*.a
*.dll
*.exe
*.lib
*.o
*.obj
*.lib
*.def
*.dep
*.bin
*.so

# CMake
build/
out/
_deps/
CMakeSettings.json
*.dll.embed.manifest
*.dll.intermediate.manifest
*.exe.intermediate.manifest
*.lastbuildstate
*.vcxprojResolveAssemblyReference.cache
*_manifest.rc

BuildLog.htm
CMakeASM_NASMCompiler.cmake
CMakeCCompiler.cmake
CMakeCCompilerId.c
CMakeCXXCompiler.cmake
CMakeCXXCompilerId.cpp
CMakeDetermineCompilerABI_C.bin
CMakeDetermineCompilerABI_CXX.bin
CMakeDirectoryInformation.cmake
CMakeRCCompiler.cmake
CMakeSystem.cmake
CMakeCache.txt
DependInfo.cmake
INSTALL_force.rule
Makefile.cmake
RC.includecache
TargetDirectories.txt
VCTargetsPath.txt

build.make
cmake.check_cache
cmake_clean.cmake
cmake_install.cmake
compiler_depend.make
compiler_depend.ts
depend.internal
depend.make
feature_tests.bin
feature_tests.cxx
flags.make
generate.stamp
generate.stamp.depend
generate.stamp.list
generate.stamp.rule
link.txt
linklibs.rsp
nasm.props
mt.dep
objects1.rsp
progress.make
progress.marks

*.cfg
*.json
# Debug / Intermediate Files
*.ipch
*.idb
*.ilk
*.iobj
*.ipdb
*.exp
*.pch
*.pdb
*.recipe
*.vcxproj.FileListAbsolute.txt

# Resource Files
*.aps
*.res

# Logs
*.log
*.plg
*.tlog
*.vcxproj.FileListAbsolute.txt

*.cbp
*.layout
*.depend
*.mk
*.project
*.workspace
Makefile
# Thumbnails
*.DS_STORE
*.db

*.sln
*.vcxproj
*.vcxproj.filters
*.vcxproj.user
# MinGW Makefiles
*.cpp.obj.d

*.vcxproj
*.filters
*.sdf
*.sln
*.suo
Makefile
Makefile2

*/CMakeFiles/*
CMakeCache.txt
*.cmake
# Visual Studio 2010 Solution / Project Files
.vs

# Visual Studio Code Files
.vscode/

.build-debug/*
.codelite/*
# Visual Studio Code Analysis
CodeAnalysisResultManifest.txt
*.lastcodeanalysissucceeded
*.nativecodeanalysis.all.xml
*.nativecodeanalysis.sarif
*.nativecodeanalysis.xml

.vs/
Debug/
Release/
# Compression Formats
*.7z
*.rar
*.zip
6 changes: 6 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,12 @@
- Remove requirement to install C/C++ runtime files, as they are
included with every Windows since Windows 95 OSR 2.

## SGD2FreeRes 3.0.3.1 (October 27, 2022)
- Extended the tile culling even more, to lessen the tile culling
problem in D2DX with motion prediction enabled.
- Fix issue preventing Windows 7 from loading the library.
- Add Diablo2Online server to the supported server list.

## SGD2FreeRes 3.0.3.0 (October 17, 2022)
- Add support for 1.10 and 1.12A. Credits to Jarcho for the ports.
- Fix a New Stats and New Skill button 800x600 alignment issue in
Expand Down
197 changes: 4 additions & 193 deletions CMakeLists.txt

Large diffs are not rendered by default.

44 changes: 44 additions & 0 deletions SlashGaming-Diablo-II-Free-Resolution/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
# SlashGaming Diablo II Free Resolution
# Copyright (C) 2019-2022 Mir Drualga
#
# This file is part of SlashGaming Diablo II Free Resolution.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published
# by the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
# Additional permissions under GNU Affero General Public License version 3
# section 7
#
# If you modify this Program, or any covered work, by linking or combining
# it with Diablo II (or a modified version of that game and its
# libraries), containing parts covered by the terms of Blizzard End User
# License Agreement, the licensors of this Program grant you additional
# permission to convey the resulting work. This additional permission is
# also extended to any combination of expansions, mods, and remasters of
# the game.
#
# If you modify this Program, or any covered work, by linking or combining
# it with any Graphics Device Interface (GDI), DirectDraw, Direct3D,
# Glide, OpenGL, or Rave wrapper (or modified versions of those
# libraries), containing parts not covered by a compatible license, the
# licensors of this Program grant you additional permission to convey the
# resulting work.
#
# If you modify this Program, or any covered work, by linking or combining
# it with any library (or a modified version of that library) that links
# to Diablo II (or a modified version of that game and its libraries),
# containing parts not covered by a compatible license, the licensors of
# this Program grant you additional permission to convey the resulting
# work.

add_subdirectory(src)
8 changes: 4 additions & 4 deletions SlashGaming-Diablo-II-Free-Resolution/resource/resource.rc
Original file line number Diff line number Diff line change
Expand Up @@ -55,8 +55,8 @@ SLASH_ICON ICON "slashgaming_game_loader.ico"
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US

VS_VERSION_INFO VERSIONINFO
FILEVERSION 3,0,3,0
PRODUCTVERSION 3,0,3,0
FILEVERSION 3,0,3,1
PRODUCTVERSION 3,0,3,1
FILEFLAGSMASK 0x3fL // VS_FFI_FILEFLAGSMASK
#ifdef _DEBUG
FILEFLAGS 0x1L // VS_FF_DEBUG|VS_FF_PRIVATEBUILD|VS_FF_PRERELEASE
Expand All @@ -71,7 +71,7 @@ VS_VERSION_INFO VERSIONINFO
{
BLOCK "040904E4" // Lang=US English, CharSet=Windows Multilingual
{
VALUE "Build", "2022-10-17\0"
VALUE "Build", "2022-10-27\0"
VALUE "Comments", "Licensed under Affero GPL v3+.\0"
VALUE "CompanyName", "SlashGaming\0"
VALUE "Developer", "Mir Drualga\0"
Expand All @@ -81,7 +81,7 @@ VS_VERSION_INFO VERSIONINFO
VALUE "LegalTrademarks", "All rights reserved.\0"
VALUE "PrivateBuild", "\0"
VALUE "ProductName", "Diablo II Free Resolution\0"
VALUE "ProductVersion", "3.0.3.0\0"
VALUE "ProductVersion", "3.0.3.1\0"
VALUE "SpecialBuild", "\0"
VALUE "Support", "reddit.com/r/SlashDiablo\0"
} // BLOCK "040904E4"
Expand Down
44 changes: 44 additions & 0 deletions SlashGaming-Diablo-II-Free-Resolution/src/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
# SlashGaming Diablo II Free Resolution
# Copyright (C) 2019-2022 Mir Drualga
#
# This file is part of SlashGaming Diablo II Free Resolution.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published
# by the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
# Additional permissions under GNU Affero General Public License version 3
# section 7
#
# If you modify this Program, or any covered work, by linking or combining
# it with Diablo II (or a modified version of that game and its
# libraries), containing parts covered by the terms of Blizzard End User
# License Agreement, the licensors of this Program grant you additional
# permission to convey the resulting work. This additional permission is
# also extended to any combination of expansions, mods, and remasters of
# the game.
#
# If you modify this Program, or any covered work, by linking or combining
# it with any Graphics Device Interface (GDI), DirectDraw, Direct3D,
# Glide, OpenGL, or Rave wrapper (or modified versions of those
# libraries), containing parts not covered by a compatible license, the
# licensors of this Program grant you additional permission to convey the
# resulting work.
#
# If you modify this Program, or any covered work, by linking or combining
# it with any library (or a modified version of that library) that links
# to Diablo II (or a modified version of that game and its libraries),
# containing parts not covered by a compatible license, the licensors of
# this Program grant you additional permission to convey the resulting
# work.

add_subdirectory(patches)
18 changes: 10 additions & 8 deletions SlashGaming-Diablo-II-Free-Resolution/src/dll_main.cc
Original file line number Diff line number Diff line change
Expand Up @@ -56,16 +56,18 @@ BOOL WINAPI DllMain(
DWORD fdwReason,
LPVOID lpvReserved
) {
BOOL is_disable_thread_library_calls_success;

is_disable_thread_library_calls_success =
DisableThreadLibraryCalls(hinstDLL);
if (!is_disable_thread_library_calls_success) {
return FALSE;
}

switch (fdwReason) {
case DLL_PROCESS_ATTACH: {
#if 0 /* Windows 7 fails to load the DLL with this code enabled. */
BOOL is_disable_thread_library_calls_success;

is_disable_thread_library_calls_success =
DisableThreadLibraryCalls(hinstDLL);
if (!is_disable_thread_library_calls_success) {
return FALSE;
}
#endif

Sgd2fml_Mod_OnLoadMpqs();

return TRUE;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@ const std::vector<std::tuple<int, int>>& GetResolutionsFromIpV4(
// Warning: This needs to be sorted lexicographically!
static const ::std::array<
Ipv4HashResolutionTableEntry,
16
17
> kSortedIpv4ResolutionTable = {{

// timer's server (old)
Expand Down Expand Up @@ -229,6 +229,16 @@ const std::vector<std::tuple<int, int>>& GetResolutionsFromIpV4(
}
),

// Diablo2Online
Ipv4HashResolutionTableEntry(
"B754F27105498EACFAFE10B5B4C48C2C572B64F1",
{
kResolution640x480,
kResolution800x600,
// Do not add 856x480, by WOLF's request
std::make_tuple(1068, 600)
}),

// play.slashdiablo.net
Ipv4HashResolutionTableEntry(
"C311F388012034C4ACB91AC573965302CF5711E0",
Expand Down
47 changes: 47 additions & 0 deletions SlashGaming-Diablo-II-Free-Resolution/src/patches/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
# SlashGaming Diablo II Free Resolution
# Copyright (C) 2019-2022 Mir Drualga
#
# This file is part of SlashGaming Diablo II Free Resolution.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published
# by the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
# Additional permissions under GNU Affero General Public License version 3
# section 7
#
# If you modify this Program, or any covered work, by linking or combining
# it with Diablo II (or a modified version of that game and its
# libraries), containing parts covered by the terms of Blizzard End User
# License Agreement, the licensors of this Program grant you additional
# permission to convey the resulting work. This additional permission is
# also extended to any combination of expansions, mods, and remasters of
# the game.
#
# If you modify this Program, or any covered work, by linking or combining
# it with any Graphics Device Interface (GDI), DirectDraw, Direct3D,
# Glide, OpenGL, or Rave wrapper (or modified versions of those
# libraries), containing parts not covered by a compatible license, the
# licensors of this Program grant you additional permission to convey the
# resulting work.
#
# If you modify this Program, or any covered work, by linking or combining
# it with any library (or a modified version of that library) that links
# to Diablo II (or a modified version of that game and its libraries),
# containing parts not covered by a compatible license, the licensors of
# this Program grant you additional permission to convey the resulting
# work.

add_subdirectory(draw)
add_subdirectory(interface_bar)
add_subdirectory(inventory)
add_subdirectory(required)
Loading

0 comments on commit 14ffbcf

Please sign in to comment.