Merge pull request #1 from nullifiedcat/master

oof
This commit is contained in:
Blackfire62 2017-08-04 16:47:05 +02:00 committed by GitHub
commit eccf8e3213
421 changed files with 58022 additions and 8485 deletions

297
.cproject
View File

@ -2,20 +2,23 @@
<?fileVersion 4.0.0?><cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
<storageModule moduleId="org.eclipse.cdt.core.settings">
<cconfiguration id="cdt.managedbuild.config.gnu.exe.debug.1168214098">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.exe.debug.1168214098" moduleId="org.eclipse.cdt.core.settings" name="TF2">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.exe.debug.1168214098" moduleId="org.eclipse.cdt.core.settings" name="Main">
<externalSettings>
<externalSetting>
<entry flags="VALUE_WORKSPACE_PATH" kind="includePath" name="/UranHack"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="includePath" name="/uran"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="includePath" name="/cathook"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="includePath" name="/kathook"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="libraryPath" name="/UranHack/Debug"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="libraryPath" name="/uran/Debug"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="libraryPath" name="/uran/TF2"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="libraryPath" name="/cathook/TF2"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="libraryPath" name="/cathook"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="libraryPath" name="/kathook"/>
<entry flags="RESOLVED" kind="libraryFile" name="UranHack" srcPrefixMapping="" srcRootPath=""/>
<entry flags="RESOLVED" kind="libraryFile" name="uran" srcPrefixMapping="" srcRootPath=""/>
<entry flags="RESOLVED" kind="libraryFile" name="cathook" srcPrefixMapping="" srcRootPath=""/>
<entry flags="RESOLVED" kind="libraryFile" name="kathook" srcPrefixMapping="" srcRootPath=""/>
</externalSetting>
</externalSettings>
<extensions>
@ -28,11 +31,11 @@
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration artifactExtension="so" artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.sharedLib" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.sharedLib,org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.gnu.exe.debug.1168214098" name="TF2" parent="cdt.managedbuild.config.gnu.exe.debug">
<configuration artifactExtension="so" artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.sharedLib" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.sharedLib,org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.gnu.exe.debug.1168214098" name="Main" parent="cdt.managedbuild.config.gnu.exe.debug">
<folderInfo id="cdt.managedbuild.config.gnu.exe.debug.1168214098." name="/" resourcePath="">
<toolChain id="cdt.managedbuild.toolchain.gnu.exe.debug.965909756" name="Linux GCC" nonInternalBuilderId="cdt.managedbuild.target.gnu.builder.exe.debug" superClass="cdt.managedbuild.toolchain.gnu.exe.debug">
<targetPlatform id="cdt.managedbuild.target.gnu.platform.exe.debug.1799148153" name="Debug Platform" superClass="cdt.managedbuild.target.gnu.platform.exe.debug"/>
<builder arguments="-e GAME=tf2" buildPath="${workspace_loc:/cathook}" command="make" id="cdt.managedbuild.target.gnu.builder.exe.debug.1548213350" keepEnvironmentInBuildfile="false" managedBuildOn="false" name="Gnu Make Builder" parallelBuildOn="true" parallelizationNumber="optimal" superClass="cdt.managedbuild.target.gnu.builder.exe.debug"/>
<builder arguments="-e GAME=tf2 NOIPC=1 BUILD_DEBUG=1 TEXTMODE=1 NO_WARNINGS=1 CC=gcc-7 CXX=g++-7" buildPath="${workspace_loc:/cathook}" command="make" id="cdt.managedbuild.target.gnu.builder.exe.debug.1548213350" keepEnvironmentInBuildfile="false" managedBuildOn="false" name="Gnu Make Builder" parallelBuildOn="true" parallelizationNumber="optimal" superClass="cdt.managedbuild.target.gnu.builder.exe.debug"/>
<tool id="cdt.managedbuild.tool.gnu.archiver.base.782611349" name="GCC Archiver" superClass="cdt.managedbuild.tool.gnu.archiver.base"/>
<tool command="g++" id="cdt.managedbuild.tool.gnu.cpp.compiler.exe.debug.883030293" name="GCC C++ Compiler" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.exe.debug">
<option id="gnu.cpp.compiler.exe.debug.option.optimization.level.908662295" name="Optimization Level" superClass="gnu.cpp.compiler.exe.debug.option.optimization.level" useByScannerDiscovery="false" value="gnu.cpp.compiler.optimization.level.none" valueType="enumerated"/>
@ -47,6 +50,10 @@
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}/source-sdk-2013/mp/src/mathlib}&quot;"/>
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}/source-sdk-2013/mp/src/public/tier0}&quot;"/>
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}/source-sdk-2013/mp/src/public/tier1}&quot;"/>
<listOptionValue builtIn="false" value="/usr/include/SDL2"/>
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/kathook/src/imgui}&quot;"/>
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/kathook/src/freetype-gl}&quot;"/>
<listOptionValue builtIn="false" value="/usr/local/include/freetype2"/>
</option>
<option id="gnu.cpp.compiler.option.other.verbose.1509393088" name="Verbose (-v)" superClass="gnu.cpp.compiler.option.other.verbose" useByScannerDiscovery="false" value="false" valueType="boolean"/>
<option id="gnu.cpp.compiler.option.preprocessor.def.116822749" name="Defined symbols (-D)" superClass="gnu.cpp.compiler.option.preprocessor.def" useByScannerDiscovery="false" valueType="definedSymbols">
@ -59,6 +66,7 @@
<listOptionValue builtIn="false" value="POSIX=1"/>
<listOptionValue builtIn="false" value="GNUC=1"/>
<listOptionValue builtIn="false" value="NO_MALLOC_OVERRIDE"/>
<listOptionValue builtIn="false" value="TEXTMODE=1"/>
</option>
<option id="gnu.cpp.compiler.option.debugging.other.1695695237" name="Other debugging flags" superClass="gnu.cpp.compiler.option.debugging.other" useByScannerDiscovery="false" value="-ggdb" valueType="string"/>
<option id="gnu.cpp.compiler.option.dialect.flags.1534861554" name="Other dialect flags" superClass="gnu.cpp.compiler.option.dialect.flags" useByScannerDiscovery="true" value="-std=gnu++11" valueType="string"/>
@ -104,258 +112,14 @@
</toolChain>
</folderInfo>
<sourceEntries>
<entry excluding="classinfo|ncc|source-sdk-2013|autogen|vtables|segvcatch|gui|copypasted|targeting|ipc|mem|hooks|sdk|src" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/>
<entry excluding="classinfo|autogen|vtables|segvcatch|gui|targeting|ipc|mem" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src"/>
<entry excluding="memory|classinfo|ncc|source-sdk-2013|autogen|vtables|segvcatch|gui|copypasted|targeting|ipc|mem|hooks|sdk|src" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/>
<entry excluding="hacks/ac|memory|imgui|classinfo|autogen|vtables|segvcatch|gui|targeting|ipc|mem" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src/classinfo"/>
<entry excluding="ncc|depr" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src/gui"/>
<entry excluding="im|ncc|depr" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src/gui"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src/gui/im"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src/gui/ncc"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src/segvcatch"/>
</sourceEntries>
</configuration>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
<storageModule moduleId="ilg.gnuarmeclipse.managedbuild.packs"/>
</cconfiguration>
<cconfiguration id="cdt.managedbuild.config.gnu.exe.release.375425953">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.exe.release.375425953" moduleId="org.eclipse.cdt.core.settings" name="Release">
<externalSettings/>
<extensions>
<extension id="org.eclipse.cdt.core.GNU_ELF" point="org.eclipse.cdt.core.BinaryParser"/>
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe,org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.gnu.exe.release.375425953" name="Release" parent="cdt.managedbuild.config.gnu.exe.release">
<folderInfo id="cdt.managedbuild.config.gnu.exe.release.375425953." name="/" resourcePath="">
<toolChain id="cdt.managedbuild.toolchain.gnu.exe.release.972609282" name="Linux GCC" superClass="cdt.managedbuild.toolchain.gnu.exe.release">
<targetPlatform id="cdt.managedbuild.target.gnu.platform.exe.release.1712088321" name="Debug Platform" superClass="cdt.managedbuild.target.gnu.platform.exe.release"/>
<builder buildPath="${workspace_loc:/UranHack}/Release" id="cdt.managedbuild.target.gnu.builder.exe.release.412402159" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Gnu Make Builder" superClass="cdt.managedbuild.target.gnu.builder.exe.release"/>
<tool id="cdt.managedbuild.tool.gnu.archiver.base.1179699190" name="GCC Archiver" superClass="cdt.managedbuild.tool.gnu.archiver.base"/>
<tool id="cdt.managedbuild.tool.gnu.cpp.compiler.exe.release.808664055" name="GCC C++ Compiler" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.exe.release">
<option id="gnu.cpp.compiler.exe.release.option.optimization.level.1265279656" name="Optimization Level" superClass="gnu.cpp.compiler.exe.release.option.optimization.level" useByScannerDiscovery="false" value="gnu.cpp.compiler.optimization.level.most" valueType="enumerated"/>
<option id="gnu.cpp.compiler.exe.release.option.debugging.level.911263777" name="Debug Level" superClass="gnu.cpp.compiler.exe.release.option.debugging.level" useByScannerDiscovery="false" value="gnu.cpp.compiler.debugging.level.none" valueType="enumerated"/>
<inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.211057237" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.c.compiler.exe.release.962907628" name="GCC C Compiler" superClass="cdt.managedbuild.tool.gnu.c.compiler.exe.release">
<option defaultValue="gnu.c.optimization.level.most" id="gnu.c.compiler.exe.release.option.optimization.level.142745962" name="Optimization Level" superClass="gnu.c.compiler.exe.release.option.optimization.level" useByScannerDiscovery="false" valueType="enumerated"/>
<option id="gnu.c.compiler.exe.release.option.debugging.level.1390527589" name="Debug Level" superClass="gnu.c.compiler.exe.release.option.debugging.level" useByScannerDiscovery="false" value="gnu.c.debugging.level.none" valueType="enumerated"/>
<inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.1869226038" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.c.linker.exe.release.1116818801" name="GCC C Linker" superClass="cdt.managedbuild.tool.gnu.c.linker.exe.release"/>
<tool id="cdt.managedbuild.tool.gnu.cpp.linker.exe.release.1647181484" name="GCC C++ Linker" superClass="cdt.managedbuild.tool.gnu.cpp.linker.exe.release">
<inputType id="cdt.managedbuild.tool.gnu.cpp.linker.input.1106939952" superClass="cdt.managedbuild.tool.gnu.cpp.linker.input">
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
<additionalInput kind="additionalinput" paths="$(LIBS)"/>
</inputType>
</tool>
<tool id="cdt.managedbuild.tool.gnu.assembler.exe.release.58483876" name="GCC Assembler" superClass="cdt.managedbuild.tool.gnu.assembler.exe.release">
<inputType id="cdt.managedbuild.tool.gnu.assembler.input.1983890464" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
</tool>
</toolChain>
</folderInfo>
<sourceEntries>
<entry excluding="classinfo|ncc|autogen|vtables|segvcatch|gui|copypasted|targeting|ipc|mem|hooks|sdk|src" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/>
<entry excluding="classinfo|autogen|vtables|segvcatch|gui|hooks|hacks|copypasted|targeting|ipc|mem|sdk" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src/classinfo"/>
<entry excluding="ncc|depr" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src/gui"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src/gui/ncc"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src/hooks"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src/segvcatch"/>
</sourceEntries>
</configuration>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
</cconfiguration>
<cconfiguration id="cdt.managedbuild.config.gnu.exe.debug.1168214098.1902522305">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.exe.debug.1168214098.1902522305" moduleId="org.eclipse.cdt.core.settings" name="HL2DM">
<externalSettings>
<externalSetting>
<entry flags="VALUE_WORKSPACE_PATH" kind="includePath" name="/uran"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="includePath" name="/cathook"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="libraryPath" name="/uran/HL2DM"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="libraryPath" name="/cathook/HL2DM"/>
<entry flags="RESOLVED" kind="libraryFile" name="uran" srcPrefixMapping="" srcRootPath=""/>
<entry flags="RESOLVED" kind="libraryFile" name="cathook" srcPrefixMapping="" srcRootPath=""/>
</externalSetting>
</externalSettings>
<extensions>
<extension id="org.eclipse.cdt.core.GNU_ELF" point="org.eclipse.cdt.core.BinaryParser"/>
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration artifactExtension="so" artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.sharedLib" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.sharedLib,org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.gnu.exe.debug.1168214098.1902522305" name="HL2DM" parent="cdt.managedbuild.config.gnu.exe.debug">
<folderInfo id="cdt.managedbuild.config.gnu.exe.debug.1168214098.1902522305." name="/" resourcePath="">
<toolChain id="cdt.managedbuild.toolchain.gnu.exe.debug.1687950157" name="Linux GCC" nonInternalBuilderId="cdt.managedbuild.target.gnu.builder.exe.debug" superClass="cdt.managedbuild.toolchain.gnu.exe.debug">
<targetPlatform id="cdt.managedbuild.target.gnu.platform.exe.debug.1664851496" name="Debug Platform" superClass="cdt.managedbuild.target.gnu.platform.exe.debug"/>
<builder buildPath="${workspace_loc:/uran}/Debug" id="cdt.managedbuild.target.gnu.builder.exe.debug.1805097636" keepEnvironmentInBuildfile="false" name="Gnu Make Builder" superClass="cdt.managedbuild.target.gnu.builder.exe.debug"/>
<tool id="cdt.managedbuild.tool.gnu.archiver.base.1282009968" name="GCC Archiver" superClass="cdt.managedbuild.tool.gnu.archiver.base"/>
<tool command="g++" id="cdt.managedbuild.tool.gnu.cpp.compiler.exe.debug.377459983" name="GCC C++ Compiler" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.exe.debug">
<option id="gnu.cpp.compiler.exe.debug.option.optimization.level.444401835" name="Optimization Level" superClass="gnu.cpp.compiler.exe.debug.option.optimization.level" useByScannerDiscovery="false" value="gnu.cpp.compiler.optimization.level.none" valueType="enumerated"/>
<option id="gnu.cpp.compiler.exe.debug.option.debugging.level.994200847" name="Debug Level" superClass="gnu.cpp.compiler.exe.debug.option.debugging.level" useByScannerDiscovery="false" value="gnu.cpp.compiler.debugging.level.default" valueType="enumerated"/>
<option id="gnu.cpp.compiler.option.dialect.std.1348318692" name="Language standard" superClass="gnu.cpp.compiler.option.dialect.std" useByScannerDiscovery="true" value="gnu.cpp.compiler.dialect.c++11" valueType="enumerated"/>
<option id="gnu.cpp.compiler.option.other.other.682426426" name="Other flags" superClass="gnu.cpp.compiler.option.other.other" useByScannerDiscovery="false" value="-c -shared -Wall -Wno-unknown-pragmas -fmessage-length=0 -m32" valueType="string"/>
<option id="gnu.cpp.compiler.option.other.pic.854897285" name="Position Independent Code (-fPIC)" superClass="gnu.cpp.compiler.option.other.pic" useByScannerDiscovery="false" value="true" valueType="boolean"/>
<option id="gnu.cpp.compiler.option.include.paths.1698459031" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" useByScannerDiscovery="false" valueType="includePath">
<listOptionValue builtIn="false" value="/home/nullifiedcat/source-sdk-2013-master/mp/src/public"/>
<listOptionValue builtIn="false" value="/home/nullifiedcat/source-sdk-2013-master/mp/src/mathlib"/>
<listOptionValue builtIn="false" value="/home/nullifiedcat/source-sdk-2013-master/mp/src/common"/>
<listOptionValue builtIn="false" value="/home/nullifiedcat/source-sdk-2013-master/mp/src/public/tier1"/>
<listOptionValue builtIn="false" value="/home/nullifiedcat/source-sdk-2013-master/mp/src/public/tier0"/>
<listOptionValue builtIn="false" value="/home/nullifiedcat/open-steamworks/osw"/>
</option>
<option id="gnu.cpp.compiler.option.other.verbose.1101234728" name="Verbose (-v)" superClass="gnu.cpp.compiler.option.other.verbose" useByScannerDiscovery="false" value="false" valueType="boolean"/>
<option id="gnu.cpp.compiler.option.preprocessor.def.1794184358" name="Defined symbols (-D)" superClass="gnu.cpp.compiler.option.preprocessor.def" useByScannerDiscovery="false" valueType="definedSymbols">
<listOptionValue builtIn="false" value="GAME_HL2"/>
</option>
<inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.1933705519" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.c.compiler.exe.debug.1250453992" name="GCC C Compiler" superClass="cdt.managedbuild.tool.gnu.c.compiler.exe.debug">
<option defaultValue="gnu.c.optimization.level.none" id="gnu.c.compiler.exe.debug.option.optimization.level.1441526338" name="Optimization Level" superClass="gnu.c.compiler.exe.debug.option.optimization.level" useByScannerDiscovery="false" valueType="enumerated"/>
<option id="gnu.c.compiler.exe.debug.option.debugging.level.1646984605" name="Debug Level" superClass="gnu.c.compiler.exe.debug.option.debugging.level" useByScannerDiscovery="false" value="gnu.c.debugging.level.max" valueType="enumerated"/>
<option id="gnu.c.compiler.option.dialect.std.851548317" name="Language standard" superClass="gnu.c.compiler.option.dialect.std" useByScannerDiscovery="true" value="gnu.c.compiler.dialect.default" valueType="enumerated"/>
<option id="gnu.c.compiler.option.misc.other.130979950" name="Other flags" superClass="gnu.c.compiler.option.misc.other" useByScannerDiscovery="false" value="-c -fmessage-length=0 -shared -m32" valueType="string"/>
<option id="gnu.c.compiler.option.misc.pic.699772682" name="Position Independent Code (-fPIC)" superClass="gnu.c.compiler.option.misc.pic" useByScannerDiscovery="false" value="true" valueType="boolean"/>
<inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.528018542" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.c.linker.exe.debug.141517221" name="GCC C Linker" superClass="cdt.managedbuild.tool.gnu.c.linker.exe.debug">
<option defaultValue="true" id="gnu.c.link.option.shared.858466780" name="Shared (-shared)" superClass="gnu.c.link.option.shared" valueType="boolean"/>
</tool>
<tool command="g++" id="cdt.managedbuild.tool.gnu.cpp.linker.exe.debug.2004012769" name="GCC C++ Linker" superClass="cdt.managedbuild.tool.gnu.cpp.linker.exe.debug">
<option id="gnu.cpp.link.option.libs.1784194570" name="Libraries (-l)" superClass="gnu.cpp.link.option.libs" useByScannerDiscovery="false" valueType="libs">
<listOptionValue builtIn="false" value="vstdlib"/>
<listOptionValue builtIn="false" value=":libc.so.6"/>
<listOptionValue builtIn="false" value=":libstdc++.so.6"/>
<listOptionValue builtIn="false" value="tier0"/>
</option>
<option defaultValue="true" id="gnu.cpp.link.option.shared.498201529" name="Shared (-shared)" superClass="gnu.cpp.link.option.shared" useByScannerDiscovery="false" valueType="boolean"/>
<option id="gnu.cpp.link.option.flags.451119206" name="Linker flags" superClass="gnu.cpp.link.option.flags" useByScannerDiscovery="false" value="-m32 -fno-gnu-unique -D_GLIBCXX_USE_CXX11_ABI=0" valueType="string"/>
<option id="gnu.cpp.link.option.paths.1006881276" name="Library search path (-L)" superClass="gnu.cpp.link.option.paths" useByScannerDiscovery="false" valueType="libPaths">
<listOptionValue builtIn="false" value="&quot;/home/nullifiedcat/.steam/steam/steamapps/common/Half-Life 2 Deathmatch/bin&quot;"/>
</option>
<option id="gnu.cpp.link.option.nodeflibs.1073691054" name="Do not use default libraries (-nodefaultlibs)" superClass="gnu.cpp.link.option.nodeflibs" useByScannerDiscovery="false" value="false" valueType="boolean"/>
<option id="gnu.cpp.link.option.nostdlibs.493909650" name="No startup or default libs (-nostdlib)" superClass="gnu.cpp.link.option.nostdlibs" useByScannerDiscovery="false" value="false" valueType="boolean"/>
<inputType id="cdt.managedbuild.tool.gnu.cpp.linker.input.523877278" superClass="cdt.managedbuild.tool.gnu.cpp.linker.input">
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
<additionalInput kind="additionalinput" paths="$(LIBS)"/>
</inputType>
</tool>
<tool id="cdt.managedbuild.tool.gnu.assembler.exe.debug.174257526" name="GCC Assembler" superClass="cdt.managedbuild.tool.gnu.assembler.exe.debug">
<option id="gnu.both.asm.option.include.paths.1471578127" name="Include paths (-I)" superClass="gnu.both.asm.option.include.paths"/>
<inputType id="cdt.managedbuild.tool.gnu.assembler.input.1386541135" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
</tool>
</toolChain>
</folderInfo>
<sourceEntries>
<entry excluding="classinfo|ncc|autogen|vtables|segvcatch|gui|copypasted|targeting|ipc|mem|hooks|sdk|src" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/>
<entry excluding="classinfo|autogen|vtables|segvcatch|gui|hooks|targeting|ipc|mem" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src/classinfo"/>
<entry excluding="ncc|depr" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src/gui"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src/gui/ncc"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src/hooks"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src/segvcatch"/>
</sourceEntries>
</configuration>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
<storageModule moduleId="ilg.gnuarmeclipse.managedbuild.packs"/>
</cconfiguration>
<cconfiguration id="cdt.managedbuild.config.gnu.exe.debug.1168214098.1070157341">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.exe.debug.1168214098.1070157341" moduleId="org.eclipse.cdt.core.settings" name="Lilac">
<externalSettings>
<externalSetting>
<entry flags="VALUE_WORKSPACE_PATH" kind="includePath" name="/cathook"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="libraryPath" name="/cathook/Lilac"/>
<entry flags="RESOLVED" kind="libraryFile" name="cathook" srcPrefixMapping="" srcRootPath=""/>
</externalSetting>
</externalSettings>
<extensions>
<extension id="org.eclipse.cdt.core.GNU_ELF" point="org.eclipse.cdt.core.BinaryParser"/>
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration artifactExtension="so" artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.sharedLib" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.sharedLib,org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.gnu.exe.debug.1168214098.1070157341" name="Lilac" parent="cdt.managedbuild.config.gnu.exe.debug">
<folderInfo id="cdt.managedbuild.config.gnu.exe.debug.1168214098.1070157341." name="/" resourcePath="">
<toolChain id="cdt.managedbuild.toolchain.gnu.exe.debug.149538905" name="Linux GCC" nonInternalBuilderId="cdt.managedbuild.target.gnu.builder.exe.debug" superClass="cdt.managedbuild.toolchain.gnu.exe.debug">
<targetPlatform id="cdt.managedbuild.target.gnu.platform.exe.debug.1147037094" name="Debug Platform" superClass="cdt.managedbuild.target.gnu.platform.exe.debug"/>
<builder buildPath="${workspace_loc:/uran}/Debug" id="cdt.managedbuild.target.gnu.builder.exe.debug.1868212600" keepEnvironmentInBuildfile="false" name="Gnu Make Builder" superClass="cdt.managedbuild.target.gnu.builder.exe.debug"/>
<tool id="cdt.managedbuild.tool.gnu.archiver.base.1785053597" name="GCC Archiver" superClass="cdt.managedbuild.tool.gnu.archiver.base"/>
<tool command="g++" id="cdt.managedbuild.tool.gnu.cpp.compiler.exe.debug.64322965" name="GCC C++ Compiler" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.exe.debug">
<option id="gnu.cpp.compiler.exe.debug.option.optimization.level.1050507477" name="Optimization Level" superClass="gnu.cpp.compiler.exe.debug.option.optimization.level" useByScannerDiscovery="false" value="gnu.cpp.compiler.optimization.level.none" valueType="enumerated"/>
<option id="gnu.cpp.compiler.exe.debug.option.debugging.level.375204967" name="Debug Level" superClass="gnu.cpp.compiler.exe.debug.option.debugging.level" useByScannerDiscovery="false" value="gnu.cpp.compiler.debugging.level.default" valueType="enumerated"/>
<option id="gnu.cpp.compiler.option.dialect.std.1137434269" name="Language standard" superClass="gnu.cpp.compiler.option.dialect.std" useByScannerDiscovery="true" value="gnu.cpp.compiler.dialect.c++11" valueType="enumerated"/>
<option id="gnu.cpp.compiler.option.other.other.837066263" name="Other flags" superClass="gnu.cpp.compiler.option.other.other" useByScannerDiscovery="false" value="-c -shared -Wall -Wno-unknown-pragmas -fmessage-length=0 -m32" valueType="string"/>
<option id="gnu.cpp.compiler.option.other.pic.1319177526" name="Position Independent Code (-fPIC)" superClass="gnu.cpp.compiler.option.other.pic" useByScannerDiscovery="false" value="true" valueType="boolean"/>
<option id="gnu.cpp.compiler.option.include.paths.29736773" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" useByScannerDiscovery="false" valueType="includePath">
<listOptionValue builtIn="false" value="/home/nullifiedcat/source-sdk-2013-master/mp/src/public"/>
<listOptionValue builtIn="false" value="/home/nullifiedcat/source-sdk-2013-master/mp/src/mathlib"/>
<listOptionValue builtIn="false" value="/home/nullifiedcat/source-sdk-2013-master/mp/src/common"/>
<listOptionValue builtIn="false" value="/home/nullifiedcat/source-sdk-2013-master/mp/src/public/tier1"/>
<listOptionValue builtIn="false" value="/home/nullifiedcat/source-sdk-2013-master/mp/src/public/tier0"/>
<listOptionValue builtIn="false" value="/home/nullifiedcat/open-steamworks/osw"/>
</option>
<option id="gnu.cpp.compiler.option.other.verbose.719533586" name="Verbose (-v)" superClass="gnu.cpp.compiler.option.other.verbose" useByScannerDiscovery="false" value="false" valueType="boolean"/>
<option id="gnu.cpp.compiler.option.preprocessor.def.134480857" name="Defined symbols (-D)" superClass="gnu.cpp.compiler.option.preprocessor.def" useByScannerDiscovery="false" valueType="definedSymbols">
<listOptionValue builtIn="false" value="TF2"/>
</option>
<inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.1161146996" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.c.compiler.exe.debug.2099147204" name="GCC C Compiler" superClass="cdt.managedbuild.tool.gnu.c.compiler.exe.debug">
<option defaultValue="gnu.c.optimization.level.none" id="gnu.c.compiler.exe.debug.option.optimization.level.2114841987" name="Optimization Level" superClass="gnu.c.compiler.exe.debug.option.optimization.level" useByScannerDiscovery="false" valueType="enumerated"/>
<option id="gnu.c.compiler.exe.debug.option.debugging.level.276347413" name="Debug Level" superClass="gnu.c.compiler.exe.debug.option.debugging.level" useByScannerDiscovery="false" value="gnu.c.debugging.level.max" valueType="enumerated"/>
<option id="gnu.c.compiler.option.dialect.std.1674393024" name="Language standard" superClass="gnu.c.compiler.option.dialect.std" useByScannerDiscovery="true" value="gnu.c.compiler.dialect.default" valueType="enumerated"/>
<option id="gnu.c.compiler.option.misc.other.1221567645" name="Other flags" superClass="gnu.c.compiler.option.misc.other" useByScannerDiscovery="false" value="-c -fmessage-length=0 -shared -m32" valueType="string"/>
<option id="gnu.c.compiler.option.misc.pic.1172078632" name="Position Independent Code (-fPIC)" superClass="gnu.c.compiler.option.misc.pic" useByScannerDiscovery="false" value="true" valueType="boolean"/>
<inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.1099428418" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.c.linker.exe.debug.658601179" name="GCC C Linker" superClass="cdt.managedbuild.tool.gnu.c.linker.exe.debug">
<option defaultValue="true" id="gnu.c.link.option.shared.2056632490" name="Shared (-shared)" superClass="gnu.c.link.option.shared" valueType="boolean"/>
</tool>
<tool command="g++" id="cdt.managedbuild.tool.gnu.cpp.linker.exe.debug.745172906" name="GCC C++ Linker" superClass="cdt.managedbuild.tool.gnu.cpp.linker.exe.debug">
<option id="gnu.cpp.link.option.libs.2026098467" name="Libraries (-l)" superClass="gnu.cpp.link.option.libs" useByScannerDiscovery="false" valueType="libs">
<listOptionValue builtIn="false" value="vstdlib"/>
<listOptionValue builtIn="false" value=":libc.so.6"/>
<listOptionValue builtIn="false" value=":libstdc++.so.6"/>
<listOptionValue builtIn="false" value="tier0"/>
</option>
<option defaultValue="true" id="gnu.cpp.link.option.shared.1181140892" name="Shared (-shared)" superClass="gnu.cpp.link.option.shared" useByScannerDiscovery="false" valueType="boolean"/>
<option id="gnu.cpp.link.option.flags.35408791" name="Linker flags" superClass="gnu.cpp.link.option.flags" useByScannerDiscovery="false" value="-m32 -fno-gnu-unique -D_GLIBCXX_USE_CXX11_ABI=0" valueType="string"/>
<option id="gnu.cpp.link.option.paths.1832522129" name="Library search path (-L)" superClass="gnu.cpp.link.option.paths" useByScannerDiscovery="false" valueType="libPaths">
<listOptionValue builtIn="false" value="&quot;/home/nullifiedcat/.steam/steam/steamapps/common/Team Fortress 2/bin&quot;"/>
</option>
<option id="gnu.cpp.link.option.nodeflibs.1742960105" name="Do not use default libraries (-nodefaultlibs)" superClass="gnu.cpp.link.option.nodeflibs" useByScannerDiscovery="false" value="false" valueType="boolean"/>
<option id="gnu.cpp.link.option.nostdlibs.1162558333" name="No startup or default libs (-nostdlib)" superClass="gnu.cpp.link.option.nostdlibs" useByScannerDiscovery="false" value="false" valueType="boolean"/>
<inputType id="cdt.managedbuild.tool.gnu.cpp.linker.input.2037163100" superClass="cdt.managedbuild.tool.gnu.cpp.linker.input">
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
<additionalInput kind="additionalinput" paths="$(LIBS)"/>
</inputType>
</tool>
<tool id="cdt.managedbuild.tool.gnu.assembler.exe.debug.1254618951" name="GCC Assembler" superClass="cdt.managedbuild.tool.gnu.assembler.exe.debug">
<option id="gnu.both.asm.option.include.paths.1287903940" name="Include paths (-I)" superClass="gnu.both.asm.option.include.paths"/>
<inputType id="cdt.managedbuild.tool.gnu.assembler.input.1988470844" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
</tool>
</toolChain>
</folderInfo>
<sourceEntries>
<entry excluding="classinfo|ncc|autogen|vtables|segvcatch|gui|copypasted|targeting|ipc|mem|hooks|sdk|src" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/>
<entry excluding="classinfo|autogen|vtables|segvcatch|gui|hooks|targeting|ipc|mem" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src/classinfo"/>
<entry excluding="ncc|depr" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src/gui"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src/gui/ncc"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src/hooks"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src/hacks/ac"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src/imgui"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src/segvcatch"/>
</sourceEntries>
</configuration>
@ -367,25 +131,13 @@
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<project id="UranHack.cdt.managedbuild.target.gnu.exe.1493648584" name="Executable" projectType="cdt.managedbuild.target.gnu.exe"/>
</storageModule>
<storageModule moduleId="scannerConfiguration">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.exe.release.375425953;cdt.managedbuild.config.gnu.exe.release.375425953.;cdt.managedbuild.tool.gnu.cpp.compiler.exe.release.808664055;cdt.managedbuild.tool.gnu.cpp.compiler.input.211057237">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.exe.release.375425953;cdt.managedbuild.config.gnu.exe.release.375425953.;cdt.managedbuild.tool.gnu.c.compiler.exe.release.962907628;cdt.managedbuild.tool.gnu.c.compiler.input.1869226038">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.exe.debug.1168214098;cdt.managedbuild.config.gnu.exe.debug.1168214098.;cdt.managedbuild.tool.gnu.c.compiler.exe.debug.1506529605;cdt.managedbuild.tool.gnu.c.compiler.input.720576197">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.exe.debug.1168214098;cdt.managedbuild.config.gnu.exe.debug.1168214098.;cdt.managedbuild.tool.gnu.cpp.compiler.exe.debug.883030293;cdt.managedbuild.tool.gnu.cpp.compiler.input.236333340">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
</scannerConfigBuildInfo>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/>
<storageModule moduleId="refreshScope" versionNumber="2">
<configuration configurationName="TF2"/>
<configuration configurationName="Lilac"/>
<configuration configurationName="Main">
<resource resourceType="PROJECT" workspacePath="/kathook"/>
</configuration>
<configuration configurationName="Release">
<resource resourceType="PROJECT" workspacePath="/UranHack"/>
</configuration>
@ -396,4 +148,13 @@
</storageModule>
<storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/>
<storageModule moduleId="org.eclipse.cdt.make.core.buildtargets"/>
<storageModule moduleId="scannerConfiguration">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.exe.debug.1168214098;cdt.managedbuild.config.gnu.exe.debug.1168214098.;cdt.managedbuild.tool.gnu.cpp.compiler.exe.debug.883030293;cdt.managedbuild.tool.gnu.cpp.compiler.input.236333340">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.exe.debug.1168214098;cdt.managedbuild.config.gnu.exe.debug.1168214098.;cdt.managedbuild.tool.gnu.c.compiler.exe.debug.1506529605;cdt.managedbuild.tool.gnu.c.compiler.input.720576197">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
</scannerConfigBuildInfo>
</storageModule>
</cproject>

255
.gitignore vendored
View File

@ -1,7 +1,254 @@
*.d
## Ignore Visual Studio temporary files, build results, and
## files generated by popular Visual Studio add-ons.
# User-specific files
*.suo
*.user
*.userosscache
*.sln.docstates
# User-specific files (MonoDevelop/Xamarin Studio)
*.userprefs
# Build results
[Dd]ebug/
[Dd]ebugPublic/
[Rr]elease/
[Rr]eleases/
[Xx]64/
[Xx]86/
[Bb]uild/
bld/
[Bb]in/
[Oo]bj/
# Visual Studio 2015 cache/options directory
.vs/
# Uncomment if you have tasks that create the project's static files in wwwroot
#wwwroot/
# MSTest test Results
[Tt]est[Rr]esult*/
[Bb]uild[Ll]og.*
# NUNIT
*.VisualState.xml
TestResult.xml
# Build Results of an ATL Project
[Dd]ebugPS/
[Rr]eleasePS/
dlldata.c
# DNX
project.lock.json
artifacts/
*_i.c
*_p.c
*_i.h
*.ilk
*.meta
*.obj
*.pch
*.pdb
*.pgc
*.pgd
*.rsp
*.sbr
*.tlb
*.tli
*.tlh
*.tmp
*.tmp_proj
*.log
*.vspscc
*.vssscc
.builds
*.pidb
*.svclog
*.scc
# Chutzpah Test files
_Chutzpah*
# Visual C++ cache files
ipch/
*.aps
*.ncb
*.opendb
*.opensdf
*.sdf
*.cachefile
*.VC.db
# Visual Studio profiler
*.psess
*.vsp
*.vspx
*.sap
# TFS 2012 Local Workspace
$tf/
# Guidance Automation Toolkit
*.gpState
# ReSharper is a .NET coding add-in
_ReSharper*/
*.[Rr]e[Ss]harper
*.DotSettings.user
# JustCode is a .NET coding add-in
.JustCode
# TeamCity is a build add-in
_TeamCity*
# DotCover is a Code Coverage Tool
*.dotCover
# NCrunch
_NCrunch_*
.*crunch*.local.xml
nCrunchTemp_*
# MightyMoose
*.mm.*
AutoTest.Net/
# Web workbench (sass)
.sass-cache/
# Installshield output folder
[Ee]xpress/
# DocProject is a documentation generator add-in
DocProject/buildhelp/
DocProject/Help/*.HxT
DocProject/Help/*.HxC
DocProject/Help/*.hhc
DocProject/Help/*.hhk
DocProject/Help/*.hhp
DocProject/Help/Html2
DocProject/Help/html
# Click-Once directory
publish/
# Publish Web Output
*.[Pp]ublish.xml
*.azurePubxml
# TODO: Un-comment the next line if you do not want to checkin
# your web deploy settings because they may include unencrypted
# passwords
#*.pubxml
*.publishproj
# NuGet Packages
*.nupkg
# The packages folder can be ignored because of Package Restore
**/packages/*
# except build/, which is used as an MSBuild target.
!**/packages/build/
# Uncomment if necessary however generally it will be regenerated when needed
#!**/packages/repositories.config
# NuGet v3's project.json files produces more ignoreable files
*.nuget.props
*.nuget.targets
# Microsoft Azure Build Output
csx/
*.build.csdef
# Microsoft Azure Emulator
ecf/
rcf/
# Windows Store app package directory
AppPackages/
BundleArtifacts/
# Visual Studio cache files
# files ending in .cache can be ignored
*.[Cc]ache
# but keep track of directories ending in .cache
!*.[Cc]ache/
# Others
ClientBin/
[Ss]tyle[Cc]op.*
~$*
*~
*.dbmdl
*.dbproj.schemaview
*.pfx
*.publishsettings
node_modules/
orleans.codegen.cs
# RIA/Silverlight projects
Generated_Code/
# Backup & report files from converting an old project file
# to a newer Visual Studio version. Backup files are not needed,
# because we have git ;-)
_UpgradeReport_Files/
Backup*/
UpgradeLog*.XML
UpgradeLog*.htm
# SQL Server files
*.mdf
*.ldf
# Business Intelligence projects
*.rdl.data
*.bim.layout
*.bim_*.settings
# Microsoft Fakes
FakesAssemblies/
# GhostDoc plugin setting file
*.GhostDoc.xml
# Node.js Tools for Visual Studio
.ntvs_analysis.dat
# Visual Studio 6 build log
*.plg
# Visual Studio 6 workspace options file
*.opt
# Visual Studio LightSwitch build output
**/*.HTMLClient/GeneratedArtifacts
**/*.DesktopClient/GeneratedArtifacts
**/*.DesktopClient/ModelManifest.xml
**/*.Server/GeneratedArtifacts
**/*.Server/ModelManifest.xml
_Pvt_Extensions
# LightSwitch generated files
GeneratedArtifacts/
ModelManifest.xml
# Paket dependency manager
.paket/paket.exe
# FAKE - F# Make
.fake/
## Ignore .o and .d files (objects and dependencies)
*.o
/bin/*
*.d
# Don't ignore binary resource files
!res/bin/*
## Ignore Data Folder symlink
Data Folder
/core
Debug/
.vs/cathook/v15/Browse.VC.db

3
.gitmodules vendored
View File

@ -4,3 +4,6 @@
[submodule "simple-ipc"]
path = simple-ipc
url = https://github.com/nullifiedcat/simple-ipc
[submodule "ucccccp"]
path = ucccccp
url = https://github.com/nullifiedcat/ucccccp

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project>
<configuration id="cdt.managedbuild.config.gnu.exe.debug.1168214098" name="TF2">
<configuration id="cdt.managedbuild.config.gnu.exe.debug.1168214098" name="Main">
<extension point="org.eclipse.cdt.core.LanguageSettingsProvider">
<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/>
<provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/>
@ -11,37 +11,4 @@
</provider>
</extension>
</configuration>
<configuration id="cdt.managedbuild.config.gnu.exe.release.375425953" name="Release">
<extension point="org.eclipse.cdt.core.LanguageSettingsProvider">
<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/>
<provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/>
<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/>
<provider class="org.eclipse.cdt.managedbuilder.language.settings.providers.GCCBuiltinSpecsDetector" console="false" env-hash="1458929643180439737" id="org.eclipse.cdt.managedbuilder.core.GCCBuiltinSpecsDetector" keep-relative-paths="false" name="CDT GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">
<language-scope id="org.eclipse.cdt.core.gcc"/>
<language-scope id="org.eclipse.cdt.core.g++"/>
</provider>
</extension>
</configuration>
<configuration id="cdt.managedbuild.config.gnu.exe.debug.1168214098.1902522305" name="HL2DM">
<extension point="org.eclipse.cdt.core.LanguageSettingsProvider">
<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/>
<provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/>
<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/>
<provider class="org.eclipse.cdt.managedbuilder.language.settings.providers.GCCBuiltinSpecsDetector" console="false" env-hash="1458926429761397309" id="org.eclipse.cdt.managedbuilder.core.GCCBuiltinSpecsDetector" keep-relative-paths="false" name="CDT GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">
<language-scope id="org.eclipse.cdt.core.gcc"/>
<language-scope id="org.eclipse.cdt.core.g++"/>
</provider>
</extension>
</configuration>
<configuration id="cdt.managedbuild.config.gnu.exe.debug.1168214098.1070157341" name="Lilac">
<extension point="org.eclipse.cdt.core.LanguageSettingsProvider">
<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/>
<provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/>
<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/>
<provider class="org.eclipse.cdt.managedbuilder.language.settings.providers.GCCBuiltinSpecsDetector" console="false" env-hash="1458926429761397309" id="org.eclipse.cdt.managedbuilder.core.GCCBuiltinSpecsDetector" keep-relative-paths="false" name="CDT GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">
<language-scope id="org.eclipse.cdt.core.gcc"/>
<language-scope id="org.eclipse.cdt.core.g++"/>
</provider>
</extension>
</configuration>
</project>

View File

@ -69,3 +69,5 @@ org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem=Warning
org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused variable declaration in file scope\\")",macro\=>true,exceptions\=>("@(\#)","$Id")}
org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem=Error
org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Symbol is not resolved\\")"}
org.eclipse.cdt.qt.core.qtproblem=Warning
org.eclipse.cdt.qt.core.qtproblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_ON_FILE_OPEN\=>true,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>null}

View File

@ -1,3 +0,0 @@
{
"CurrentProjectSetting": null
}

View File

@ -1,8 +0,0 @@
{
"ExpandedNodes": [
"",
"\\src",
"\\src\\hacks"
],
"PreviewInSolutionExplorer": false
}

Binary file not shown.

Binary file not shown.

6
CODE_OF_CONDUCT.md Normal file
View File

@ -0,0 +1,6 @@
# Contributor Code of Conduct
This project adheres to No Code of Conduct. We are all adults. We accept anyone's contributions. Nothing else matters.
For more information please visit the [No Code of Conduct](https://github.com/domgetter/NCoC) homepage.

103
README.md
View File

@ -1,44 +1,99 @@
# Discord Server
[Official Discord Server (updated link)](https://discord.gg/kvNVNSX)
# Cathook Training Software
![banner](http://i.imgur.com/w96wdtE.png)
## Discord Server
[Official Discord Server](https://discord.gg/kvNVNSX)
cathook is a training software designed for Team Fortress 2 for Linux. cathook includes some joke features like
* Backpack.TF API integration with playerlist GUI, allowing you to see players' inventory values
* Always/Never spycrab
* Ignore Hoovy
* 100% Casual/Comp coin flip
* Encrypted chat
* Emoji ESP
* Fidget Spinner crosshair
and a lot of useful features, including
* Anti Backstab with option to say "No" voice command when spy tries to backstab you
* Heal Arrows exploit (overheal an enemy for 1200 health with single huntsman arrow, you can also do it with buildings!)
* Extremely customizable spam (you can make spam lines that'll include name of random dead enemy pyro or sniper)
* Follow Bots
* Working crit hack
[FULL LIST OF FEATURES HERE](https://github.com/nullifiedcat/cathook/wiki/List-of-features)
# INSTALLATION
Ubuntu (and probably Debian) users can run this script:
You can use gcc-7 for compiling cathook if you add `-e CC=gcc-7 CXX=g++-7` to make command line
Ubuntu gcc6 installation: (check if you have gcc-6 installed already by typing `gcc-6 -v`
```bash
sudo apt update && sudo apt install build-essential software-properties-common -y && sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y && sudo apt update && sudo apt install gcc-snapshot g++-6-multilib gcc-6 g++-6 -y
```
sudo apt update && sudo apt install build-essential software-properties-common -y && sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y && sudo apt update && sudo apt install gcc-snapshot -y && sudo apt update && sudo apt install git libc6-dev gcc-6 g++-6 libc6-dev:i386 g++-6-multilib gdb -y && git clone --recursive https://github.com/nullifiedcat/cathook && cd cathook && make -j4
Ubuntu other dependencies installation:
```bash
sudo apt update && sudo apt install git libssl-dev:i386 libc6-dev:i386 gdb libsdl2-dev libglew-dev:i386 libfreetype6-dev:i386 -y
```
Arch gcc6 & dependencies installation:
```bash
sudo pacman -Syu && sudo pacman -S gdb gdb-common glew1.10 lib32-glew1.10 rsync --noconfirm && yes | sudo pacman -U https://archive.archlinux.org/packages/g/gcc-multilib/gcc-multilib-6.3.1-2-x86_64.pkg.tar.xz https://archive.archlinux.org/packages/g/gcc-libs-multilib/gcc-libs-multilib-6.3.1-2-x86_64.pkg.tar.xz https://archive.archlinux.org/packages/l/lib32-gcc-libs/lib32-gcc-libs-6.3.1-2-x86_64.pkg.tar.xz
```
If you don't use Ubuntu or Arch (or if Arch script gets outdated), here's the list of what cathook requires:
* `gcc-6`
* `g++-6`
* `gcc-6-multilib`
* `g++-6-multilib`
* `gdb` (for the injection script, you can use different injector if you want)
* `libssl-dev:i386`
* `libc6-dev:i386`
* `libsdl2-dev`
* `libglew-dev:i386`
* `libfreetype6-dev:i386`
* `rsync` (only for copying shaders/fonts to tf2 data directory, `update-data` script)
Cathook installation script:
```bash
git clone --recursive https://github.com/nullifiedcat/cathook && cd cathook && bash build-tf2 && bash update-data
```
**Errors while installing?**
`/usr/include/c++/5/string:38:28: fatal error: bits/c++config.h: No such file or directory` - You don't have g++6 or g++6 multilib installed correctly
`/usr/include/c++/5/string:38:28: fatal error: bits/c++config.h: No such file or directory`
You don't have gcc-multilib-6 installed correctly.
`src/<any file>: fatal error: mathlib/vector.h: No such file or directory` - You didn't download Source SDK. **DO NOT DOWNLOAD CATHOOK USING "DOWNLOAD .ZIP" FROM GITHUB. USE git clone --recursive**!
`src/<any file>: fatal error: mathlib/vector.h: No such file or directory`
You didn't download Source SDK. **DO NOT DOWNLOAD CATHOOK USING "DOWNLOAD .ZIP" FROM GITHUB. USE git clone --recursive!**
If you are using other distro, make sure to have g++-6, gdb, libc6 and build essentials installed.
If you are using another distro, make sure to have g++-6, gdb, libc6 and build essentials installed.
## Updating cathook
Run the `update` script in cathook folder.
## Injection
`sudo ./attach` to attach to tf2 process (can take argument number 0-N - # of tf2 instance to attach to (for bots))
Cathook requires the shader folder provided in order to launch properly. To install this, run the `update-data` script. This will create a sym-link for the required folders.
If you wish to do this manually, copy the tf-settings folder inside Cathook into your Team Fortress 2 folder and rename it to "cathook".
You will want to update these files if you wish to have an updated menu.
`sudo ./attach-backtrace` to attach and print backtrace if tf2 crashes. Some users reported that this method makes you get less FPS ingame.
## Injection
`sudo ./attach` to attach cathook into TF2. Optionally, you can provide an argument number (0-n - #) to provide the TF2 process ID (for bots).
`sudo ./attach-backtrace` to attach and print backtrace incase TF2 crashes. Some users report that this causes FPS drop in-game. This is recommended to grab a log of what went wrong if Cathook is crashing on you.
## Followbots
`cathook-ipc-server` allows you to run and control Followbots to do your evil bidding in-game. The installation for Followbots is quite complex, and will not be covered on this page. Obviously, you must have several user accounts ready to run TF2.
A guide for Followbots can be found here: [How to setup and use followbots.](https://www.youtube.com/watch?v=kns5-nw7xUg)
You may also ask someone in our discord server to help you out.
Followbot installation is quite complex and I won't cover it fully here.
You have to have several user accounts ready to run tf2 - use google for that.
You can ask someone in my discord server for help with installation.
To control followbots, you need to download and install `cathook-ipc-server`.
### Followbot server installation script
The installation script is as followed:
```bash
git clone --recursive https://github.com/nullifiedcat/cathook-ipc-server && cd cathook-ipc-server && make -j4
```
git clone --recursive https://github.com/nullifiedcat/cathook-ipc-server && \
cd cathook-ipc-server && \
make -j4
```
### Updating script is the same as updating cathook
### Running followbot server
`./bin/cathook-ipc-server` or `./bin/cathook-ipc-server &>/dev/null &` to run it in background
To run the Followbot server, run `./bin/cathook-ipc-server`. You can also use `./bin/cathook-ipc-server &>/dev/null &` to run it in background.

205
TODO
View File

@ -1,80 +1,141 @@
MULTIPLATFORM:
//==================================================================================================//
//Big TODO list for cathook //
//Organized by Julianacat //
//==================================================================================================//
Signature Scanner
Whole IPC thing | actually, no. cathook for windows WON'T have followbots/ipc.
Signatures and offsets
File handling (playerlist, spam, etc...)
CMake?
------------====-----------
alias clearcond "host_timescale 300;wait 500;host_timescale 1"
alias clearcond_taunt "taunt;wait 50;host_timescale 300;wait 500;host_timescale 1"
bind l clearcond_taunt
//----------------------------------------------------------------------------------------------------------------------//
//Aimbot/Triggerbot //
//------------------------------------------------------------------------------------------------------------------// //
// //
Hook + Aimbot FIX // //
// //
no aim sapper // //
// //
Make hacks respect Mannpower powerups and other conditions when calcuating damage, hitbox and prioritizing targets // //
Proper AutoHitbox, Isnt this already a thing?? // //
// //
Flare aim on fire // //
Improve Projectile Aimbot. A lot. // //
ProjPredOrigin // //
MAX -> MIN priority // //
// //
Hunter Rifle? // //
// //
AutoDetonator // //
// //
No AutoShoot when disguised // //
Ambassador bodyshotting // //
No Trigger Mediguns // //
More projectile weapons aimbot (wrap assassin, wrangler, stickybomb, airstrike) // //
Auto trigger DR before rockets // //
// //
Make make sentrys slightly lower priority (for getting those pesky turtle engies) // //
// //
Make building aimbot compensate for gravity on projectile weapons // //
// //
add Spectator Silent for projectile weapons // //
// //
Improve aimbot accuracy // //
// //
Add Multipoint (Take hitbox, shrink it, then use corners as points to check) // //
// //
Make ambasador check rely on wait for charge user setting // //
// //
//------------------------------------------------------------------------------------------------------------------// //
// //
//----------------------------------------------------------------------------------------------------------------------//
TF2C teams
TF2C merc
HL2DM teams
Fix Autosticky
Proj Aimbot
fullbright toggle
Hunter Rifle
inspect shit
TTS
noise spam
team name spam (pre round team name spam thing)
insta taunt (taunts for like .5 ms and then you can do it again lithium has it)
auto vacc
namesteal
autovote
voice command spam (not like 1 voice command every 1 ms but like just spamming it on the menu)
//----------------------------------------------------------------------------------------------------------------------//
//Visuals/GUI //
//------------------------------------------------------------------------------------------------------------------// //
// //
Display on the left // //
// //
make gui color change // //
// //
Cheat status menu (A gui to display enabled/disabled states of user settings for when the menu is off) // //
// //
add teleporter count down // //
add spy cloak esp // //
// //
Make ubercharge esp color RGB when fully charged // //
// //
fullbright toggle // //
// //
FLAG ESP? // //
// //
ESP Icons // //
ESP Distance sort // //
Show sapped buildings in ESP // //
halloween medkits // //
carrying esp // //
Tracers/Spy Cam // //
// //
//------------------------------------------------------------------------------------------------------------------// //
// //
//----------------------------------------------------------------------------------------------------------------------//
dominatesay assistsay worldsay
AutoDetonator
ProjPredOrigin
MAX -> MIN priority
Deflected by enemy player
Aim Stickies
FLAG ESP
no aim sapper
Improve Projectile Aimbot. A lot.
Proper AutoHitbox
Smoothe the smooth aim
Display on the left
Flare aim on fire
Aim Sticky
Proj Pred visuals
Hook + Aimbot FIX
ESP Icons
ESP Distance sort
Show sapped buildings in ESP
Make hacks respect Mannpower powerups and other conditions when calcuating damage, hitbox and prioritizing targets
Fake Lag
Engine Prediction
AutoSticky improve
No AutoShoot when disguised
Ambassador bodyshotting
No Trigger Mediguns
More projectile weapons aimbot (wrap assassin, wrangler, stickybomb, airstrike)
Auto trigger DR before rockets
Sticky vischeck
InsultSpam
Critical rifles bodyshotting
FLAG ESP
Spy alert uses angles
halloween medkits
carrying esp
Tracers/Spy Cam
Bodyshot if not zoomed
Proper medic followbot AI
Bot option for aiming at owner's prey (just for fun)
Bot pathfinding & navigation files system
SkinChanger
Proper entity classes (actually I might just use a lot of helper functions taking IClientEntity* as first arg)
Priority system optimization and testing
General optimization and refactoring
Bone ESP
XorString or something to make it harder to detect.
//----------------------------------------------------------------------------------------------------------------------//
//Chat and Related //
//------------------------------------------------------------------------------------------------------------------// //
// //
TTS // //
namesteal // //
autovote // //
// //
dominatesay assistsay worldsay // //
InsultSpam // //
// //
//------------------------------------------------------------------------------------------------------------------// //
// //
//----------------------------------------------------------------------------------------------------------------------//
//----------------------------------------------------------------------------------------------------------------------//
//Followbots //
//------------------------------------------------------------------------------------------------------------------// //
// //
Proper medic followbot AI, breadcrumb followbot is good but a nav system would be better // //
// //
Bot option for aiming at owner's prey (just for fun) // //
Bot pathfinding & navigation files system // //
Proper entity classes (actually I might just use a lot of helper functions taking IClientEntity* as first arg) // //
// //
//------------------------------------------------------------------------------------------------------------------// //
// //
//----------------------------------------------------------------------------------------------------------------------//
//----------------------------------------------------------------------------------------------------------------------//
//Misc //
//------------------------------------------------------------------------------------------------------------------// //
// //
Proper Fake Lag // //
Add auto-strafe // //
// //
Fix achievement hack getting blocked with sv_cheats // //
// //
Spy alert uses angles // //
// //
Add ignore gunslinger to melee crit hack // //
// //
Priority system optimization and testing // //
General optimization and refactoring // //
// //
XorString or something to make it harder to detect. // //
// //
TF2C teams // //
TF2C merc // //
HL2DM teams // //
// //
//------------------------------------------------------------------------------------------------------------------// //
// //
//----------------------------------------------------------------------------------------------------------------------//

31
attach
View File

@ -24,17 +24,36 @@ echo Attaching to "$proc"
#sudo ./detach $inst bin/libcathook.so
if grep -q "$(realpath bin/libcathook.so)" /proc/"$proc"/maps; then
echo already loaded
exit
fi
#if grep -q "$(realpath bin/libcathook.so)" /proc/"$proc"/maps; then
# echo already loaded
# exit
#fi
# pBypass for crash dumps being sent
# You may also want to consider using -nobreakpad in your launch options.
sudo rm -rf /tmp/dumps # Remove if it exists
sudo mkdir /tmp/dumps # Make it as root
sudo chmod 000 /tmp/dumps # No permissions
FILENAME="/tmp/.gl$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 6 | head -n 1)"
cp "bin/libcathook.so" "$FILENAME"
echo loading "$FILENAME" to "$proc"
sudo killall -19 steam
sudo killall -19 steamwebhelper
echo loading "$(realpath bin/libcathook.so)" to "$proc"
gdb -n -q -batch \
-ex "attach $proc" \
-ex "set \$dlopen = (void*(*)(char*, int)) dlopen" \
-ex "call \$dlopen(\"$(realpath bin/libcathook.so)\", 1)" \
-ex "call \$dlopen(\"$FILENAME\", 1)" \
-ex "call dlerror()" \
-ex 'print (char *) $2' \
-ex "detach" \
-ex "quit"
rm $FILENAME
sudo killall -18 steamwebhelper
sudo killall -18 steam

View File

@ -1,8 +1,9 @@
#!/usr/bin/env bash
proc=$1
echo Attaching to "$proc"
proc=${1:-$(ps $(pidof gameoverlayui) | tail -n1 | cut -d\- -f2 | cut -d\ -f2)}
if ! [[ $proc =~ ^[0-9]+$ ]]; then
echo "Couldn't find process! Are you sure a game is running?" >&2; exit 1
fi
if grep -q "$(realpath bin/libcathook.so)" /proc/"$proc"/maps; then
echo already loaded

46
attach-user Executable file
View File

@ -0,0 +1,46 @@
#!/usr/bin/env bash
user=$USER
if [ "$#" == 1 ]; then
user=$1
fi
proc="0"
for pid in $(pidof hl2_linux)
do
if sudo -H -u $user kill -0 $pid
then
proc=$pid
break
fi
done
if [ "$proc" == "0" ]
then
echo "TF2 for $user is not running"
continue
fi
echo Attaching to "$proc"
FILENAME=$(realpath "bin/libcathook.so")
echo loading "$FILENAME" to "$proc"
sudo killall -19 steam
sudo killall -19 steamwebhelper
sudo gdb -n -q -batch \
-ex "attach $proc" \
-ex "set \$dlopen = (void*(*)(char*, int)) dlopen" \
-ex "call \$dlopen(\"$FILENAME\", 1)" \
-ex "call dlerror()" \
-ex 'print (char *) $2' \
-ex "detach" \
-ex "quit"
sudo killall -18 steamwebhelper
sudo killall -18 steam

1
build-debug-tf2 Executable file
View File

@ -0,0 +1 @@
make -j4 -e GAME=tf2 BUILD_DEBUG=1

2
build-tf2 Executable file
View File

@ -0,0 +1,2 @@
make -j4 -e GAME=tf2 NO_WARNINGS=1
strip --strip-all bin/libcathook.so

View File

@ -1,6 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ShowAllFiles>true</ShowAllFiles>
</PropertyGroup>
</Project>

185
classdump-dab.txt Normal file
View File

@ -0,0 +1,185 @@
[131] CTEFireBullets
[94] CSDKTeam_Deathmatch
[95] CSDKTeam_Red
[93] CSDKTeam_Blue
[96] CSDKTeam_Unassigned
[92] CSDKTeam
[90] CSDKPlayerResource
[91] CSDKRagdoll
[89] CSDKPlayer
[143] CTEPlayerAnimEvent
[100] CSparkler
[85] CRatRaceWaypoint
[25] CBriefcaseCaptureZone
[24] CBriefcase
[0] CWeaponCubemap
[163] CWeaponCycler
[84] CRagdollPropAttached
[83] CRagdollProp
[158] CWaterBullet
[52] CFuncMonitor
[174] CWorld
[159] CWaterLODControl
[156] CVGuiScreen
[80] CPropJeep
[0] CPropVehicleChoreoGeneric
[155] CTEWorldDecal
[152] CTESpriteSpray
[151] CTESprite
[150] CTESparks
[149] CTESmoke
[147] CTEShowLine
[145] CTEProjectedDecal
[144] CTEPlayerDecal
[142] CTEPhysicsProp
[141] CTEParticleSystem
[140] CTEMuzzleFlash
[138] CTELargeFunnel
[137] CTEKillPlayerAttachments
[136] CTEImpact
[135] CTEGlowSprite
[146] CTEShatterSurface
[133] CTEFootprintDecal
[132] CTEFizz
[130] CTEExplosion
[129] CTEEnergySplash
[128] CTEEffectDispatch
[127] CTEDynamicLight
[125] CTEDecal
[124] CTEClientProjectile
[123] CTEBubbleTrail
[122] CTEBubbles
[121] CTEBSPDecal
[120] CTEBreakModel
[119] CTEBloodStream
[118] CTEBloodSprite
[117] CTEBeamSpline
[116] CTEBeamRingPoint
[115] CTEBeamRing
[114] CTEBeamPoints
[113] CTEBeamLaser
[112] CTEBeamFollow
[111] CTEBeamEnts
[110] CTEBeamEntPoint
[109] CTEBaseBeam
[108] CTEArmorRicochet
[139] CTEMetalSparks
[153] CTest_ProxyToggle_Networkable
[154] CTestTraceline
[148] CTesla
[107] CTeam
[106] CSun
[105] CSteamJet
[66] CParticlePerformanceMonitor
[101] CSpotlightEnd
[175] DustTrail
[44] CFireTrail
[181] SporeTrail
[180] SporeExplosion
[178] RocketTrail
[179] SmokeTrail
[99] CSmokeStack
[98] CSlideshowDisplay
[97] CShadowControl
[87] CSceneEntity
[86] CRopeKeyframe
[82] CRagdollManager
[81] CPropVehicleDriveable
[71] CPhysicsPropMultiplayer
[69] CPhysBoxMultiplayer
[16] CBasePropDoor
[30] CDynamicProp
[76] CPointCommentaryNode
[75] CPointCamera
[74] CPlayerResource
[73] CPlasma
[72] CPhysMagnet
[70] CPhysicsProp
[68] CPhysBox
[67] CParticleSystem
[177] ParticleSmokeGrenade
[65] CParticleFire
[176] MovieExplosion
[64] CMaterialModifyControl
[63] CLightGlow
[62] CInfoOverlayAccessor
[134] CTEGaussExplosion
[57] CFuncTrackTrain
[56] CFuncSmokeVolume
[55] CFuncRotating
[54] CFuncReflectiveGlass
[53] CFuncOccluder
[48] CFunc_LOD
[126] CTEDust
[47] CFunc_Dust
[50] CFuncConveyor
[23] CBreakableSurface
[49] CFuncAreaPortalWindow
[45] CFish
[33] CEntityFlame
[43] CFireSmoke
[41] CEnvTonemapController
[39] CEnvScreenEffect
[40] CEnvScreenOverlay
[37] CEnvProjectedTexture
[36] CEnvParticleScript
[46] CFogController
[34] CEntityParticleTrail
[32] CEntityDissolve
[38] CEnvQuadraticBeam
[31] CEmbers
[42] CEnvWind
[78] CPrecipitation
[29] CDynamicLight
[27] CColorCorrectionVolume
[26] CColorCorrection
[22] CBreakableProp
[18] CBaseTempEntity
[14] CBasePlayer
[10] CBaseFlex
[9] CBaseEntity
[8] CBaseDoor
[6] CBaseCombatCharacter
[5] CBaseAnimatingOverlay
[21] CBoneFollower
[4] CBaseAnimating
[61] CInfoLightingRelative
[0] CAI_BaseNPC
[59] CHandleTest
[0] CTeamplayRoundBasedRulesProxy
[104] CSpriteTrail
[103] CSpriteOriented
[102] CSprite
[173] CWeaponShotgun
[171] CWeaponSDKBase
[170] CWeaponMP5K
[169] CWeaponMossberg
[168] CWeaponMAC10
[167] CWeaponM1911
[166] CWeaponM16
[165] CWeaponGrenade
[164] CWeaponFAL
[162] CWeaponCrowbar
[161] CWeaponBrawl
[160] CWeaponBeretta
[17] CBaseSDKGrenade
[3] CAkimboM1911
[2] CAkimboBeretta
[1] CAkimboBase
[172] CWeaponSDKMelee
[88] CSDKGameRulesProxy
[12] CBaseGrenadeProjectile
[28] CDAViewModel
[79] CPredictedViewModel
[77] CPoseController
[58] CGameRulesProxy
[60] CInfoLadderDismount
[51] CFuncLadder
[35] CEnvDetailController
[20] CBeam
[19] CBaseViewModel
[15] CBaseProjectile
[13] CBaseParticleEntity
[11] CBaseGrenade
[7] CBaseCombatWeapon
[157] CVoteController

38
detach-backtrace Executable file
View File

@ -0,0 +1,38 @@
#!/usr/bin/env bash
line=$(pidof hl2_linux)
arr=($line)
inst=$1
if [ $# == 0 ]; then
inst=0
fi
if [ ${#arr[@]} == 0 ]; then
echo TF2 isn\'t running!
exit
fi
if [ $inst -gt ${#arr[@]} ] || [ $inst == ${#arr[@]} ]; then
echo wrong index!
exit
fi
echo Running instances: "${arr[@]}"
echo Detaching from "${arr[$1]}"
if grep -q "$(realpath bin/libcathook.so)" /proc/"${arr[$1]}"/maps; then
gdb -n -q -batch \
-ex "attach ${arr[$1]}" \
-ex "set \$dlopen = (void*(*)(char*, int)) dlopen" \
-ex "set \$dlclose = (int(*)(void*)) dlclose" \
-ex "set \$library = \$dlopen(\"$(realpath bin/libcathook.so)\", 6)" \
-ex "print \$library" \
-ex "sharedlibrary ." \
-ex "call \$dlclose(\$library)" \
-ex "call \$dlclose(\$library)" \
-ex "continue" \
-ex "backtrace"
echo "Detached"
else
echo "not found!"
fi

File diff suppressed because one or more lines are too long

View File

@ -1,14 +1,14 @@
const fs = require('fs');
const fs = require("fs");
var full_class_table = {};
try {
full_class_table = JSON.parse(fs.readFileSync('full-class-table.json').toString());
full_class_table = JSON.parse(fs.readFileSync("full-class-table.json").toString());
} catch (e) {}
const file = fs.readFileSync(process.argv[2]).toString().split('\n');
const file = fs.readFileSync(process.argv[2]).toString().split("\n");
const modname = process.argv[3];
console.log('Generating info for', modname, 'from', process.argv[2]);
console.log("Generating info for", modname, "from", process.argv[2]);
var classes = {};
for (var i in file) {
@ -19,7 +19,7 @@ for (var i in file) {
}
}
fs.writeFileSync('full-class-table.json', JSON.stringify(full_class_table));
fs.writeFileSync("full-class-table.json", JSON.stringify(full_class_table));
var header_constexpr = `/*
AUTO-GENERATED HEADER - DO NOT MODIFY
@ -50,10 +50,10 @@ namespace client_classes {
`;
for (var clz in full_class_table) {
var value = '0';
var value = "0";
if (classes[clz]) value = classes[clz];
header_constexpr += '\t\tstatic constexpr int ' + clz + ' = ' + value + ';\n';
header += '\t\tint ' + clz + ' { ' + value + ' };\n';
header_constexpr += "\t\tstatic constexpr int " + clz + " = " + value + ";\n";
header += "\t\tint " + clz + " { " + value + " };\n";
}
header += `
@ -70,8 +70,8 @@ header_constexpr += `
#endif /* $mod_CONSTEXPR_AUTOGEN_HPP */`;
fs.writeFileSync('src/classinfo/' + modname + '.gen.hpp', header.replace(/\$mod/g, modname));
fs.writeFileSync('src/classinfo/' + modname + '_constexpr.gen.hpp', header_constexpr.replace(/\$mod/g, modname));
fs.writeFileSync("src/classinfo/" + modname + ".gen.hpp", header.replace(/\$mod/g, modname));
fs.writeFileSync("src/classinfo/" + modname + "_constexpr.gen.hpp", header_constexpr.replace(/\$mod/g, modname));
console.log(classes);

View File

@ -1,11 +1,11 @@
const fs = require('fs');
const fs = require("fs");
var full_class_table = {};
try {
full_class_table = JSON.parse(fs.readFileSync('full-class-table.json').toString());
full_class_table = JSON.parse(fs.readFileSync("full-class-table.json").toString());
} catch (e) {}
console.log('Generating dummy class header');
console.log("Generating dummy class header");
var header = `/*
AUTO-GENERATED HEADER - DO NOT MODIFY
@ -22,7 +22,7 @@ namespace client_classes {
`;
for (var clz in full_class_table) {
header += '\t\tint ' + clz + ' { 0 };\n';
header += "\t\tint " + clz + " { 0 };\n";
}
header += `
@ -33,4 +33,4 @@ header += `
#endif /* DUMMY_AUTOGEN_HPP */`;
fs.writeFileSync('src/classinfo/dummy.gen.hpp', header);
fs.writeFileSync("src/classinfo/dummy.gen.hpp", header);

View File

@ -0,0 +1,73 @@
const fs = require("fs");
var full_class_table = {};
try {
full_class_table = JSON.parse(fs.readFileSync("full-class-table.json").toString());
} catch (e) {}
console.log("Generating dummy class header");
var header = `/*
AUTO-GENERATED HEADER - DO NOT MODIFY
HEADER FOR UNIVERSAL BUILD
*/
#ifndef DYNAMIC_AUTOGEN_HPP
#define DYNAMIC_AUTOGEN_HPP
namespace client_classes {
class dynamic {
public:
dynamic();
void Populate();
`;
for (var clz in full_class_table) {
header += "\t\tint " + clz + " { 0 };\n";
}
header += `
};
extern dynamic dynamic_list;
}
#endif /* DYNAMIC_AUTOGEN_HPP */`;
var POPULATED_MAP = "";
for (var clz in full_class_table) {
POPULATED_MAP += `\t\tclassid_mapping["${clz}"] = &${clz};\n`;
}
var source = `
#include "dynamic.gen.hpp"
#include "../common.h"
namespace client_classes {
std::unordered_map<std::string, int*> classid_mapping {};
dynamic::dynamic() {
${POPULATED_MAP}
}
void dynamic::Populate() {
ClientClass* cc = g_IBaseClient->GetAllClasses();
while (cc) {
std::string name(cc->GetName());
if (classid_mapping.find(name) != classid_mapping.end())
*classid_mapping[name] = cc->m_ClassID;
cc = cc->m_pNext;
}
}
dynamic dynamic_list;
}`;
fs.writeFileSync("src/classinfo/dynamic.gen.hpp", header);
fs.writeFileSync("src/classinfo/dynamic.gen.cpp", source);

View File

@ -1,16 +0,0 @@
#!/usr/bin/env bash
if [ ! -d "$HOME/.cathook" ]; then
mkdir "$HOME"/.cathook
fi
if [ ! -f "$HOME/.cathook/killsays.txt" ]; then
cp res/killsays.txt "$HOME"/.cathook
fi
if [ ! -f "$HOME/.cathook/spam.txt" ]; then
cp res/spam.txt "$HOME"/.cathook
fi
echo "Default killsay/spam files installed, EDIT THEM!"
xdg-open "$HOME"/.cathook

BIN
lib/libGLEW.so Normal file

Binary file not shown.

BIN
lib/libSDL2-2.0.so.0 Normal file

Binary file not shown.

BIN
lib/libfreetype.so Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -1 +1,2 @@
#!/bin/bash
make -j4 -e NOGUI=1

153
makefile
View File

@ -1,44 +1,136 @@
ifndef CLANG
CXX=$(shell sh -c "which g++-6 || which g++")
CXXFLAGS=-std=gnu++14 -D_GLIBCXX_USE_CXX11_ABI=0 -D_POSIX=1 -DRAD_TELEMETRY_DISABLED -DLINUX=1 -DUSE_SDL -D_LINUX=1 -DPOSIX=1 -DGNUC=1 -D_DEVELOPER=1 -DNO_MALLOC_OVERRIDE -O3 -g3 -ggdb -w -shared -Wall -Wno-unknown-pragmas -fmessage-length=0 -m32 -fvisibility=hidden -fPIC
CC=$(shell sh -c "which gcc-6 || which gcc")
LD=$(CXX)
else
CXX=clang++
CC=clang
LD=ld.lld
endif
DEFINES=_GLIBCXX_USE_CXX11_ABI=0 _POSIX=1 FREETYPE_GL_USE_VAO RAD_TELEMETRY_DISABLED LINUX=1 USE_SDL _LINUX=1 POSIX=1 GNUC=1 NO_MALLOC_OVERRIDE
WARNING_FLAGS=-pedantic -Wall -Wextra -Wcast-align -Wcast-qual -Wctor-dtor-privacy -Wdisabled-optimization -Wformat=2 -Winit-self -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnoexcept -Wold-style-cast -Woverloaded-virtual -Wredundant-decls -Wshadow -Wsign-conversion -Wsign-promo -Wstrict-null-sentinel -Wstrict-overflow=5 -Wswitch-default -Wundef
COMMON_FLAGS=-fpermissive -O3 -shared -Wno-unknown-pragmas -fmessage-length=0 -m32 -fvisibility=hidden -fPIC -march=native -mtune=native
ifdef CLANG
COMMON_FLAGS+=-Wno-c++11-narrowing
endif
ifdef BUILD_DEBUG
COMMON_FLAGS+=-g3 -ggdb
else
ifndef CLANG
COMMON_FLAGS+=-flto
endif
endif
CFLAGS=$(COMMON_FLAGS)
CXXFLAGS=-std=gnu++14 $(COMMON_FLAGS)
ifndef NO_WARNINGS
CFLAGS+=$(WARNING_FLAGS)
CXXFLAGS+=$(WARNING_FLAGS)
else
CFLAGS+=-w
CXXFLAGS+=-w
endif
SDKFOLDER=$(realpath source-sdk-2013/mp/src)
SIMPLE_IPC_DIR = $(realpath simple-ipc/src/include)
INCLUDES=-I$(SIMPLE_IPC_DIR) -I$(SDKFOLDER)/public -I$(SDKFOLDER)/mathlib -I$(SDKFOLDER)/common -I$(SDKFOLDER)/public/tier1 -I$(SDKFOLDER)/public/tier0 -I$(SDKFOLDER)
CXXFLAGS += $(INCLUDES)
INCLUDES=-Iucccccp -isystemsrc/freetype-gl -isystemsrc/imgui -isystem/usr/local/include/freetype2 -isystem/usr/include/freetype2 -I$(SIMPLE_IPC_DIR) -isystem$(SDKFOLDER)/public -isystem$(SDKFOLDER)/mathlib -isystem$(SDKFOLDER)/common -isystem$(SDKFOLDER)/public/tier1 -isystem$(SDKFOLDER)/public/tier0 -isystem$(SDKFOLDER)
LIB_DIR=lib
LDFLAGS=-m32 -fno-gnu-unique -D_GLIBCXX_USE_CXX11_ABI=0 -shared -L$(realpath $(LIB_DIR))
LDLIBS=-static -lc -lstdc++ -ltier0 -lvstdlib
LDFLAGS=-shared -L$(realpath $(LIB_DIR))
ifdef CLANG
LDFLAGS+=-melf_i386
else
LDFLAGS+=-m32 -fno-gnu-unique
endif
ifndef BUILD_DEBUG
ifndef CLANG
LDFLAGS+=-flto
endif
endif
LDLIBS=-lssl -l:libSDL2-2.0.so.0 -static -l:libc.so.6 -static -l:libstdc++.so.6 -l:libtier0.so -l:libvstdlib.so -static -l:libGLEW.so -l:libfreetype.so
OUT_NAME = libcathook.so
ifdef TEXTMODE
$(info Compiling for text mode only!)
N_LDLIBS = -lssl -l:libSDL2-2.0.so.0 -l:libGLEW.so -l:libfreetype.so
LDLIBS := $(filter-out $(N_LDLIBS),$(LDLIBS))
N_INCLUDES = -isystemsrc/freetype-gl -isystemsrc/imgui -isystem/usr/local/include/freetype2 -isystem/usr/include/freetype2
INCLUDES := $(filter-out $(N_INCLUDES),$(INCLUDES))
DEFINES += TEXTMODE=1
#OUT_NAME := libcathook-textmode.so
endif
ifdef TEXTMODE_STDIN
DEFINES+=-DTEXTMODE_STDIN
endif
SRC_DIR = src
RES_DIR = res
OUT_NAME = libcathook.so
TARGET_DIR = bin
TARGET = $(TARGET_DIR)/$(OUT_NAME)
SOURCES = $(shell find $(SRC_DIR) -name "*.cpp" -print)
SOURCES = $(shell find $(SRC_DIR) -name "*.c*" -print)
ifdef NOGUI
$(info GUI disabled)
SOURCES := $(filter-out $(shell find $(SRC_DIR)/gui -name "*.cpp" -print),$(SOURCES))
CXXFLAGS += -DNOGUI=1
DEFINES+=NOGUI=1
else
$(info GUI enabled)
endif
ifdef GAME
$(info Building for: $(GAME))
CXXFLAGS += -DBUILD_GAME=$(GAME)
DEFINES+=BUILD_GAME=$(GAME)
else
$(info GUI enabled)
endif
SOURCES += $(shell find $(SIMPLE_IPC_DIR) -name "*.cpp" -print)
OBJECTS = $(SOURCES:.cpp=.o)
OBJECTS = $(patsubst %.c,%.o, $(patsubst %.cpp,%.o, $(SOURCES)))
OBJECTS += $(shell find $(RES_DIR) -name "*.o" -print)
DEPENDS = $(SOURCES:.cpp=.d)
DEPENDS = $(patsubst %.c,%.d, $(patsubst %.cpp,%.d, $(SOURCES)))
SRC_SUBDIRS=$(shell find $(SRC_DIR) -type d -print)
GIT_COMMIT_HASH=$(shell git log -1 --pretty="%h")
GIT_COMMIT_DATE=$(shell git log -1 --pretty="%ai")
CXXFLAGS += -DGIT_COMMIT_HASH="\"$(GIT_COMMIT_HASH)\"" -DGIT_COMMIT_DATE="\"$(GIT_COMMIT_DATE)\""
DEFINES+=GIT_COMMIT_HASH="\"$(GIT_COMMIT_HASH)\"" GIT_COMMIT_DATE="\"$(GIT_COMMIT_DATE)\""
ifdef GAME
CXXFLAGS += -DGAME=$(GAME)
DEFINES+=GAME=$(GAME)
endif
ifdef NOIPC
$(info IPC disabled)
DEFINES += NO_IPC
endif
CXXFLAGS+=$(addprefix -D,$(DEFINES))
CFLAGS+=$(addprefix -D,$(DEFINES))
CXXFLAGS+=$(INCLUDES)
CFLAGS+=$(INCLUDES)
ifdef TEXTMODE
N_SOURCES := hacks/ESP.cpp hacks/SkinChanger.cpp hacks/SpyAlert.cpp hacks/Radar.cpp fidgetspinner.cpp ftrender.cpp hooks/sdl.cpp drawmgr.cpp drawgl.cpp hooks/PaintTraverse.cpp EffectChams.cpp EffectGlow.cpp
N_SOURCES := $(addprefix $(SRC_DIR)/,$(N_SOURCES))
SOURCES := $(filter-out $(shell find $(SRC_DIR)/gui -name "*.cpp" -print),$(SOURCES))
SOURCES := $(filter-out $(shell find $(SRC_DIR)/freetype-gl -name "*.c*" -print),$(SOURCES))
SOURCES := $(filter-out $(shell find $(SRC_DIR)/imgui -name "*.c*" -print),$(SOURCES))
SOURCES := $(filter-out $(N_SOURCES),$(SOURCES))
else
CXXFLAGS+=$(shell sdl2-config --cflags)
CFLAGS+=$(shell sdl2-config --cflags)
endif
.PHONY: clean directories echo
@ -48,22 +140,53 @@ all:
$(MAKE) $(TARGET)
echo:
echo $(SOURCES)
echo $(OBJECTS)
src/imgui/imgui_demo.o : CXXFLAGS+=-w
src/imgui/imgui_draw.o : CXXFLAGS+=-w
src/imgui/imgui_impl_sdl.o : CXXFLAGS+=-w
src/imgui/imgui.o : CXXFLAGS+=-w
src/freetype-gl/distance-field.o : CFLAGS+=-w
src/freetype-gl/edtaa3func.o : CFLAGS+=-w
src/freetype-gl/font-manager.o : CFLAGS+=-w
src/freetype-gl/mat4.o : CFLAGS+=-w
src/freetype-gl/platform.o : CFLAGS+=-w
src/freetype-gl/shader.o : CFLAGS+=-w
src/freetype-gl/text-buffer.o : CFLAGS+=-w
src/freetype-gl/texture-atlas.o : CFLAGS+=-w
src/freetype-gl/utf8-utils.o : CFLAGS+=-w
src/freetype-gl/texture-font.o : CFLAGS+=-w
src/freetype-gl/vector.o : CFLAGS+=-w
src/freetype-gl/vertex-attribute.o : CFLAGS+=-w
src/freetype-gl/vertex-buffer.o : CFLAGS+=-w
src/sdk/checksum_md5.o : CFLAGS+=-w
src/sdk/convar.o : CFLAGS+=-w
src/sdk/KeyValues.o : CFLAGS+=-w
src/sdk/MaterialSystemUtil.o : CFLAGS+=-w
src/sdk/tier1.o : CFLAGS+=-w
src/sdk/utlbuffer.o : CFLAGS+=-w
.cpp.o:
@echo Compiling $<
@$(CXX) $(CXXFLAGS) -c $< -o $@
.c.o:
@echo Compiling $<
@$(CC) $(CFLAGS) -c $< -o $@
%.d: %.cpp
@$(CXX) -M $(CXXFLAGS) $< > $@
$(TARGET): $(OBJECTS)
@echo Building cathook
@$(CXX) $(CXXFLAGS) $(LDFLAGS) $(OBJECTS) $(LDLIBS) -o $(TARGET)
$(LD) -o $(TARGET) $(LDFLAGS) $(OBJECTS) $(LDLIBS)
clean:
find src -type f -name '*.o' -delete
find src -type f -name '*.d' -delete
find simple-ipc -type f -name '*.o' -delete
find simple-ipc -type f -name '*.d' -delete
rm -rf ./bin
ifneq ($(MAKECMDGOALS), clean)

BIN
res/atlas Normal file

Binary file not shown.

BIN
res/atlas.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 310 KiB

BIN
res/atlas.xcf Normal file

Binary file not shown.

BIN
res/bin/atlas.o Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.9 KiB

BIN
res/flame

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 487 B

BIN
res/heart

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 307 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 45 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 258 B

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 225 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.8 KiB

4
res/shaders/v2f-c4f.frag Normal file
View File

@ -0,0 +1,4 @@
// 2D drawing shader
void main() {
gl_FragColor = gl_Color;
}

13
res/shaders/v2f-c4f.vert Normal file
View File

@ -0,0 +1,13 @@
// 2D drawing shader
uniform mat4 model;
uniform mat4 view;
uniform mat4 projection;
attribute vec2 vertex;
attribute vec4 color;
void main()
{
gl_FrontColor = color;
gl_Position = projection*(view*(model*vec4(vertex,0.0,1.0)));
}

View File

@ -0,0 +1,6 @@
// 2D drawing shader
uniform sampler2D texture;
void main()
{
gl_FragColor = texture2D(texture, gl_TexCoord[0].xy) * gl_Color;
}

View File

@ -0,0 +1,15 @@
// 2D drawing shader - modified freetype-gl shader
uniform mat4 model;
uniform mat4 view;
uniform mat4 projection;
attribute vec2 vertex;
attribute vec2 tex_coord;
attribute vec4 color;
void main()
{
gl_TexCoord[0].xy = tex_coord.xy;
gl_FrontColor = color;
gl_Position = projection*(view*(model*vec4(vertex,0.0,1.0)));
}

Some files were not shown because too many files have changed in this diff Show More