Fix line endings and tabs

This commit is contained in:
ineed bots 2023-09-01 11:18:24 -06:00
parent bb216441bf
commit 30ce0ad8eb
12 changed files with 578 additions and 575 deletions

298
.gitignore vendored
View File

@ -1,150 +1,150 @@
### Windows ### Windows
version.hpp version.hpp
# Windows image file caches # Windows image file caches
Thumbs.db Thumbs.db
ehthumbs.db ehthumbs.db
# Folder config file # Folder config file
Desktop.ini Desktop.ini
# Recycle Bin used on file shares # Recycle Bin used on file shares
$RECYCLE.BIN/ $RECYCLE.BIN/
# Windows Installer files # Windows Installer files
*.cab *.cab
*.msi *.msi
*.msm *.msm
*.msp *.msp
# Shortcuts # Shortcuts
*.lnk *.lnk
### OSX ### OSX
.DS_Store .DS_Store
.AppleDouble .AppleDouble
.LSOverride .LSOverride
# Icon must end with two \r # Icon must end with two \r
Icon Icon
# Thumbnails # Thumbnails
._* ._*
# Files that might appear on external disk # Files that might appear on external disk
.Spotlight-V100 .Spotlight-V100
.Trashes .Trashes
# Directories potentially created on remote AFP share # Directories potentially created on remote AFP share
.AppleDB .AppleDB
.AppleDesktop .AppleDesktop
Network Trash Folder Network Trash Folder
Temporary Items Temporary Items
.apdisk .apdisk
### Visual Studio ### Visual Studio
# User-specific files # User-specific files
*.suo *.suo
*.user *.user
*.userosscache *.userosscache
*.sln.docstates *.sln.docstates
# User-specific files (MonoDevelop/Xamarin Studio) # User-specific files (MonoDevelop/Xamarin Studio)
*.userprefs *.userprefs
# Build results # Build results
build build
# Visual Studio 2015 cache/options directory # Visual Studio 2015 cache/options directory
.vs/ .vs/
# MSTest test Results # MSTest test Results
[Tt]est[Rr]esult*/ [Tt]est[Rr]esult*/
[Bb]uild[Ll]og.* [Bb]uild[Ll]og.*
*_i.c *_i.c
*_p.c *_p.c
*_i.h *_i.h
*.ilk *.ilk
*.meta *.meta
*.obj *.obj
*.pch *.pch
*.pdb *.pdb
*.pgc *.pgc
*.pgd *.pgd
*.rsp *.rsp
*.sbr *.sbr
*.tlb *.tlb
*.tli *.tli
*.tlh *.tlh
*.tmp *.tmp
*.tmp_proj *.tmp_proj
*.log *.log
*.vspscc *.vspscc
*.vssscc *.vssscc
.builds .builds
*.pidb *.pidb
*.svclog *.svclog
*.scc *.scc
# Visual C++ cache files # Visual C++ cache files
ipch/ ipch/
*.aps *.aps
*.ncb *.ncb
*.opendb *.opendb
*.opensdf *.opensdf
*.sdf *.sdf
*.cachefile *.cachefile
# Visual Studio profiler # Visual Studio profiler
*.psess *.psess
*.vsp *.vsp
*.vspx *.vspx
*.sap *.sap
# TFS 2012 Local Workspace # TFS 2012 Local Workspace
$tf/ $tf/
# Guidance Automation Toolkit # Guidance Automation Toolkit
*.gpState *.gpState
# Visual Studio cache files # Visual Studio cache files
# files ending in .cache can be ignored # files ending in .cache can be ignored
*.[Cc]ache *.[Cc]ache
# but keep track of directories ending in .cache # but keep track of directories ending in .cache
!*.[Cc]ache/ !*.[Cc]ache/
# Others # Others
~$* ~$*
*~ *~
*.dbmdl *.dbmdl
*.dbproj.schemaview *.dbproj.schemaview
*.pfx *.pfx
*.publishsettings *.publishsettings
# Backup & report files from converting an old project file # Backup & report files from converting an old project file
# to a newer Visual Studio version. Backup files are not needed, # to a newer Visual Studio version. Backup files are not needed,
# because we have git ;-) # because we have git ;-)
_UpgradeReport_Files/ _UpgradeReport_Files/
Backup*/ Backup*/
UpgradeLog*.XML UpgradeLog*.XML
UpgradeLog*.htm UpgradeLog*.htm
# SQL Server files # SQL Server files
*.mdf *.mdf
*.ldf *.ldf
### IDA ### IDA
*.id0 *.id0
*.id1 *.id1
*.id2 *.id2
*.nam *.nam
*.til *.til
### Custom user files ### Custom user files
# User scripts # User scripts
user*.bat user*.bat
*.code-workspace *.code-workspace

50
.gitmodules vendored
View File

@ -1,25 +1,25 @@
[submodule "deps/minhook"] [submodule "deps/minhook"]
path = deps/minhook path = deps/minhook
url = https://github.com/TsudaKageyu/minhook.git url = https://github.com/TsudaKageyu/minhook.git
[submodule "deps/GSL"] [submodule "deps/GSL"]
path = deps/GSL path = deps/GSL
url = https://github.com/microsoft/GSL.git url = https://github.com/microsoft/GSL.git
[submodule "deps/zlib"] [submodule "deps/zlib"]
path = deps/zlib path = deps/zlib
url = https://github.com/madler/zlib.git url = https://github.com/madler/zlib.git
[submodule "deps/asmjit"] [submodule "deps/asmjit"]
path = deps/asmjit path = deps/asmjit
url = https://github.com/asmjit/asmjit.git url = https://github.com/asmjit/asmjit.git
[submodule "deps/json"] [submodule "deps/json"]
path = deps/json path = deps/json
url = https://github.com/nlohmann/json.git url = https://github.com/nlohmann/json.git
branch = develop branch = develop
[submodule "deps/curl"] [submodule "deps/curl"]
path = deps/curl path = deps/curl
url = https://github.com/curl/curl.git url = https://github.com/curl/curl.git
[submodule "deps/libtomcrypt"] [submodule "deps/libtomcrypt"]
path = deps/libtomcrypt path = deps/libtomcrypt
url = https://github.com/libtom/libtomcrypt.git url = https://github.com/libtom/libtomcrypt.git
[submodule "deps/libtommath"] [submodule "deps/libtommath"]
path = deps/libtommath path = deps/libtommath
url = https://github.com/libtom/libtommath.git url = https://github.com/libtom/libtommath.git

View File

@ -1,18 +1,21 @@
# T4SP-Server-Plugin # T4SP-Server-Plugin
A server plugin that has code that hopefully compiles and the game will load it to do things. Stability not guaranteed. A plugin that has code that hopefully compiles and the game will load it to do things. Stability not guaranteed.
Requires Git (https://git-scm.com/), Premake5 (https://premake.github.io/), and MSVC 2022 (https://visualstudio.microsoft.com/vs/features/cplusplus/) to build. Requires Git (https://git-scm.com/), Premake5 (https://premake.github.io/), and MSVC 2022 (https://visualstudio.microsoft.com/vs/features/cplusplus/) to build.
# Installation # What does it do?
Move the `t4sp-server-plugin.dll` to `%LOCALAPPDATA%\Plutonium\storage\t4\plugins\`, the plugin will be loaded when you start up a dedicated server for Plutonium T4SP. Nothing really right now, just detours and reimplements the entire GSC VM, for research purposes.
# Credits # Installation
- momo5502 (https://github.com/momo5502) Move the `t4sp-server-plugin.dll` to `%LOCALAPPDATA%\Plutonium\storage\t4\plugins\`, the plugin will be loaded when you start up a dedicated server for Plutonium T4SP.
- xensik (https://github.com/xensik/gsc-tool)
- fedddddd (https://github.com/fedddddd/t6-gsc-utils) # Credits
- VoroN (https://github.com/voron00/CoD2rev_Server) - momo5502 (https://github.com/momo5502)
- CoD4x team (https://github.com/callofduty4x/CoD4x_Server) - xensik (https://github.com/xensik/gsc-tool)
- id Software (https://github.com/id-Software/Quake-III-Arena) - fedddddd (https://github.com/fedddddd/t6-gsc-utils)
- Treyarch - VoroN (https://github.com/voron00/CoD2rev_Server)
- Infinity Ward - CoD4x team (https://github.com/callofduty4x/CoD4x_Server)
- Activision - id Software (https://github.com/id-Software/Quake-III-Arena)
- Treyarch
- Infinity Ward
- Activision

View File

@ -1,34 +1,34 @@
asmjit = { asmjit = {
source = path.join(dependencies.basePath, "asmjit"), source = path.join(dependencies.basePath, "asmjit"),
} }
function asmjit.import() function asmjit.import()
links { "asmjit" } links { "asmjit" }
asmjit.includes() asmjit.includes()
end end
function asmjit.includes() function asmjit.includes()
includedirs { includedirs {
path.join(asmjit.source, "src") path.join(asmjit.source, "src")
} }
defines { defines {
"ASMJIT_STATIC" "ASMJIT_STATIC"
} }
end end
function asmjit.project() function asmjit.project()
project "asmjit" project "asmjit"
language "C++" language "C++"
asmjit.includes() asmjit.includes()
files { files {
path.join(asmjit.source, "src/**.cpp"), path.join(asmjit.source, "src/**.cpp"),
} }
warnings "Off" warnings "Off"
kind "StaticLib" kind "StaticLib"
end end
table.insert(dependencies, asmjit) table.insert(dependencies, asmjit)

144
deps/premake/curl.lua vendored
View File

@ -1,73 +1,73 @@
curl = { curl = {
source = path.join(dependencies.basePath, "curl"), source = path.join(dependencies.basePath, "curl"),
} }
function curl.import() function curl.import()
links { "curl" } links { "curl" }
filter "toolset:msc*" filter "toolset:msc*"
links { "Crypt32.lib" } links { "Crypt32.lib" }
filter {} filter {}
curl.includes() curl.includes()
end end
function curl.includes() function curl.includes()
filter "toolset:msc*" filter "toolset:msc*"
includedirs { includedirs {
path.join(curl.source, "include"), path.join(curl.source, "include"),
} }
defines { defines {
"CURL_STRICTER", "CURL_STRICTER",
"CURL_STATICLIB", "CURL_STATICLIB",
"CURL_DISABLE_LDAP", "CURL_DISABLE_LDAP",
} }
filter {} filter {}
end end
function curl.project() function curl.project()
if not os.istarget("windows") then if not os.istarget("windows") then
return return
end end
project "curl" project "curl"
language "C" language "C"
curl.includes() curl.includes()
includedirs { includedirs {
path.join(curl.source, "lib"), path.join(curl.source, "lib"),
} }
files { files {
path.join(curl.source, "lib/**.c"), path.join(curl.source, "lib/**.c"),
path.join(curl.source, "lib/**.h"), path.join(curl.source, "lib/**.h"),
} }
defines { defines {
"BUILDING_LIBCURL", "BUILDING_LIBCURL",
} }
filter "toolset:msc*" filter "toolset:msc*"
defines { defines {
"USE_SCHANNEL", "USE_SCHANNEL",
"USE_WINDOWS_SSPI", "USE_WINDOWS_SSPI",
"USE_THREADS_WIN32", "USE_THREADS_WIN32",
} }
filter "toolset:not msc*" filter "toolset:not msc*"
defines { defines {
"USE_GNUTLS", "USE_GNUTLS",
"USE_THREADS_POSIX", "USE_THREADS_POSIX",
} }
filter {} filter {}
warnings "Off" warnings "Off"
kind "StaticLib" kind "StaticLib"
end end
table.insert(dependencies, curl) table.insert(dependencies, curl)

38
deps/premake/gsl.lua vendored
View File

@ -1,19 +1,19 @@
gsl = { gsl = {
source = path.join(dependencies.basePath, "GSL"), source = path.join(dependencies.basePath, "GSL"),
} }
function gsl.import() function gsl.import()
gsl.includes() gsl.includes()
end end
function gsl.includes() function gsl.includes()
includedirs { includedirs {
path.join(gsl.source, "include") path.join(gsl.source, "include")
} }
end end
function gsl.project() function gsl.project()
end end
table.insert(dependencies, gsl) table.insert(dependencies, gsl)

38
deps/premake/json.lua vendored
View File

@ -1,19 +1,19 @@
json = { json = {
source = path.join(dependencies.basePath, "json"), source = path.join(dependencies.basePath, "json"),
} }
function json.import() function json.import()
json.includes() json.includes()
end end
function json.includes() function json.includes()
includedirs { includedirs {
path.join(json.source, "single_include/*") path.join(json.source, "single_include/*")
} }
end end
function json.project() function json.project()
end end
table.insert(dependencies, json) table.insert(dependencies, json)

View File

@ -1,31 +1,31 @@
minhook = { minhook = {
source = path.join(dependencies.basePath, "minhook"), source = path.join(dependencies.basePath, "minhook"),
} }
function minhook.import() function minhook.import()
links { "minhook" } links { "minhook" }
minhook.includes() minhook.includes()
end end
function minhook.includes() function minhook.includes()
includedirs { includedirs {
path.join(minhook.source, "include") path.join(minhook.source, "include")
} }
end end
function minhook.project() function minhook.project()
project "minhook" project "minhook"
language "C" language "C"
minhook.includes() minhook.includes()
files { files {
path.join(minhook.source, "src/**.h"), path.join(minhook.source, "src/**.h"),
path.join(minhook.source, "src/**.c"), path.join(minhook.source, "src/**.c"),
} }
warnings "Off" warnings "Off"
kind "StaticLib" kind "StaticLib"
end end
table.insert(dependencies, minhook) table.insert(dependencies, minhook)

View File

@ -1,43 +1,43 @@
minizip = { minizip = {
source = path.join(dependencies.basePath, "zlib/contrib/minizip"), source = path.join(dependencies.basePath, "zlib/contrib/minizip"),
} }
function minizip.import() function minizip.import()
links { "minizip" } links { "minizip" }
zlib.import() zlib.import()
minizip.includes() minizip.includes()
end end
function minizip.includes() function minizip.includes()
includedirs { includedirs {
minizip.source minizip.source
} }
zlib.includes() zlib.includes()
end end
function minizip.project() function minizip.project()
project "minizip" project "minizip"
language "C" language "C"
minizip.includes() minizip.includes()
files { files {
path.join(minizip.source, "*.h"), path.join(minizip.source, "*.h"),
path.join(minizip.source, "*.c"), path.join(minizip.source, "*.c"),
} }
removefiles { removefiles {
path.join(minizip.source, "miniunz.c"), path.join(minizip.source, "miniunz.c"),
path.join(minizip.source, "minizip.c"), path.join(minizip.source, "minizip.c"),
} }
defines { defines {
"_CRT_SECURE_NO_DEPRECATE", "_CRT_SECURE_NO_DEPRECATE",
} }
warnings "Off" warnings "Off"
kind "StaticLib" kind "StaticLib"
end end
table.insert(dependencies, minizip) table.insert(dependencies, minizip)

78
deps/premake/zlib.lua vendored
View File

@ -1,39 +1,39 @@
zlib = { zlib = {
source = path.join(dependencies.basePath, "zlib"), source = path.join(dependencies.basePath, "zlib"),
} }
function zlib.import() function zlib.import()
links { "zlib" } links { "zlib" }
zlib.includes() zlib.includes()
end end
function zlib.includes() function zlib.includes()
includedirs { includedirs {
zlib.source zlib.source
} }
defines { defines {
"ZLIB_CONST", "ZLIB_CONST",
} }
end end
function zlib.project() function zlib.project()
project "zlib" project "zlib"
language "C" language "C"
zlib.includes() zlib.includes()
files { files {
path.join(zlib.source, "*.h"), path.join(zlib.source, "*.h"),
path.join(zlib.source, "*.c"), path.join(zlib.source, "*.c"),
} }
defines { defines {
"_CRT_SECURE_NO_DEPRECATE", "_CRT_SECURE_NO_DEPRECATE",
} }
warnings "Off" warnings "Off"
kind "StaticLib" kind "StaticLib"
end end
table.insert(dependencies, zlib) table.insert(dependencies, zlib)

View File

@ -1,3 +1,3 @@
@echo off @echo off
call git submodule update --init --recursive call git submodule update --init --recursive
premake5.exe vs2022 premake5.exe vs2022

View File

@ -1,125 +1,125 @@
dependencies = { dependencies = {
basePath = "./deps" basePath = "./deps"
} }
function dependencies.load() function dependencies.load()
dir = path.join(dependencies.basePath, "premake/*.lua") dir = path.join(dependencies.basePath, "premake/*.lua")
deps = os.matchfiles(dir) deps = os.matchfiles(dir)
for i, dep in pairs(deps) do for i, dep in pairs(deps) do
dep = dep:gsub(".lua", "") dep = dep:gsub(".lua", "")
require(dep) require(dep)
end end
end end
function dependencies.imports() function dependencies.imports()
for i, proj in pairs(dependencies) do for i, proj in pairs(dependencies) do
if type(i) == 'number' then if type(i) == 'number' then
proj.import() proj.import()
end end
end end
end end
function dependencies.projects() function dependencies.projects()
for i, proj in pairs(dependencies) do for i, proj in pairs(dependencies) do
if type(i) == 'number' then if type(i) == 'number' then
proj.project() proj.project()
end end
end end
end end
dependencies.load() dependencies.load()
workspace "t4sp-server-plugin" workspace "t4sp-server-plugin"
location "./build" location "./build"
objdir "%{wks.location}/obj/%{cfg.buildcfg}" objdir "%{wks.location}/obj/%{cfg.buildcfg}"
targetdir "%{wks.location}/bin/%{cfg.buildcfg}" targetdir "%{wks.location}/bin/%{cfg.buildcfg}"
targetname "%{prj.name}" targetname "%{prj.name}"
configurations { "Debug", "Release", } configurations { "Debug", "Release", }
language "C++" language "C++"
cppdialect "C++20" cppdialect "C++20"
architecture "x86" architecture "x86"
systemversion "latest" systemversion "latest"
symbols "On" symbols "On"
staticruntime "On" staticruntime "On"
editandcontinue "Off" editandcontinue "Off"
warnings "Extra" warnings "Extra"
characterset "ASCII" characterset "ASCII"
defines { "_CRT_SECURE_NO_WARNINGS" } defines { "_CRT_SECURE_NO_WARNINGS" }
flags flags
{ {
"NoIncrementalLink", "NoIncrementalLink",
"MultiProcessorCompile", "MultiProcessorCompile",
} }
filter "configurations:Release" filter "configurations:Release"
optimize "Full" optimize "Full"
defines { "NDEBUG" } defines { "NDEBUG" }
flags { flags {
"FatalCompileWarnings", "FatalCompileWarnings",
} }
filter {} filter {}
filter "configurations:Debug" filter "configurations:Debug"
optimize "Debug" optimize "Debug"
defines { "DEBUG", "_DEBUG" } defines { "DEBUG", "_DEBUG" }
filter {} filter {}
startproject "t4sp-server-plugin" startproject "t4sp-server-plugin"
project "t4sp-server-plugin" project "t4sp-server-plugin"
kind "SharedLib" kind "SharedLib"
language "C++" language "C++"
files files
{ {
"./src/**.h", "./src/**.h",
"./src/**.hpp", "./src/**.hpp",
"./src/**.cpp", "./src/**.cpp",
"./src/**.c", "./src/**.c",
"./src/**.asm" "./src/**.asm"
} }
includedirs includedirs
{ {
"%{prj.location}/src", "%{prj.location}/src",
"./src", "./src",
} }
resincludedirs resincludedirs
{ {
"$(ProjectDir)src" "$(ProjectDir)src"
} }
pchheader "stdinc.hpp" pchheader "stdinc.hpp"
pchsource "src/stdinc.cpp" pchsource "src/stdinc.cpp"
buildoptions { "/Zm100 -Zm100" } buildoptions { "/Zm100 -Zm100" }
dependencies.imports() dependencies.imports()
exceptionhandling ("Off") exceptionhandling ("Off")
if _OPTIONS["copy-to"] then if _OPTIONS["copy-to"] then
postbuildcommands {"copy /y \"$(TargetPath)\" \"" .. _OPTIONS["copy-to"] .. "\""} postbuildcommands {"copy /y \"$(TargetPath)\" \"" .. _OPTIONS["copy-to"] .. "\""}
else else
filter "configurations:Release" filter "configurations:Release"
postbuildcommands { postbuildcommands {
"if \"%COMPUTERNAME%\" == \"NEW-BUILT\" ( copy /y \"$(TargetPath)\" \"$(CODWAW_PATH)\\t4\\plugins\\\" )" "if \"%COMPUTERNAME%\" == \"NEW-BUILT\" ( copy /y \"$(TargetPath)\" \"$(CODWAW_PATH)\\t4\\plugins\\\" )"
} }
filter {} filter {}
filter "configurations:Debug" filter "configurations:Debug"
postbuildcommands { postbuildcommands {
"if \"%COMPUTERNAME%\" == \"NEW-BUILT\" ( copy /y \"$(TargetPath)\" \"$(CODWAW_PATH)\\t4staging\\plugins\\\" )" "if \"%COMPUTERNAME%\" == \"NEW-BUILT\" ( copy /y \"$(TargetPath)\" \"$(CODWAW_PATH)\\t4staging\\plugins\\\" )"
} }
filter {} filter {}
end end
group "Dependencies" group "Dependencies"
dependencies.projects() dependencies.projects()