mirror of
https://github.com/Ragora/T2-CPP.git
synced 2026-01-20 02:24:46 +00:00
Initial commit.
This commit is contained in:
parent
9538049d44
commit
44e5f33ee7
20
Mod Sources/BaseMod/BaseMod.sln
Normal file
20
Mod Sources/BaseMod/BaseMod.sln
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
|
||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
||||
# Visual C++ Express 2010
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "BaseMod", "BaseMod\BaseMod.vcxproj", "{2A498B2D-84B2-4BBF-9532-EA17E5BA51BB}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Win32 = Debug|Win32
|
||||
Release|Win32 = Release|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{2A498B2D-84B2-4BBF-9532-EA17E5BA51BB}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{2A498B2D-84B2-4BBF-9532-EA17E5BA51BB}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{2A498B2D-84B2-4BBF-9532-EA17E5BA51BB}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{2A498B2D-84B2-4BBF-9532-EA17E5BA51BB}.Release|Win32.Build.0 = Release|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
BIN
Mod Sources/BaseMod/BaseMod.suo
Normal file
BIN
Mod Sources/BaseMod/BaseMod.suo
Normal file
Binary file not shown.
13
Mod Sources/BaseMod/BaseMod/BaseMod.cpp
Normal file
13
Mod Sources/BaseMod/BaseMod/BaseMod.cpp
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
// BaseMod.cpp : Defines the exported functions for the DLL application.
|
||||
//
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "BaseMod.h"
|
||||
|
||||
extern "C"
|
||||
{
|
||||
BASEMOD_API void ModInitialize(void)
|
||||
{
|
||||
return;
|
||||
}
|
||||
}
|
||||
8
Mod Sources/BaseMod/BaseMod/BaseMod.h
Normal file
8
Mod Sources/BaseMod/BaseMod/BaseMod.h
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
// The following ifdef block is the standard way of creating macros which make exporting
|
||||
// from a DLL simpler. All files within this DLL are compiled with the BASEMOD_EXPORTS
|
||||
// symbol defined on the command line. This symbol should not be defined on any project
|
||||
// that uses this DLL. This way any other project whose source files include this file see
|
||||
// BASEMOD_API functions as being imported from a DLL, whereas this DLL sees symbols
|
||||
// defined with this macro as being exported.
|
||||
|
||||
#define BASEMOD_API __declspec( dllexport )
|
||||
100
Mod Sources/BaseMod/BaseMod/BaseMod.vcxproj
Normal file
100
Mod Sources/BaseMod/BaseMod/BaseMod.vcxproj
Normal file
|
|
@ -0,0 +1,100 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{2A498B2D-84B2-4BBF-9532-EA17E5BA51BB}</ProjectGuid>
|
||||
<Keyword>Win32Proj</Keyword>
|
||||
<RootNamespace>BaseMod</RootNamespace>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<LinkIncremental>true</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;BASEMOD_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<ClCompile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;BASEMOD_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<None Include="ReadMe.txt" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="BaseMod.h" />
|
||||
<ClInclude Include="stdafx.h" />
|
||||
<ClInclude Include="targetver.h" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="BaseMod.cpp" />
|
||||
<ClCompile Include="dllmain.cpp">
|
||||
<CompileAsManaged Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</CompileAsManaged>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
</PrecompiledHeader>
|
||||
<CompileAsManaged Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</CompileAsManaged>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
</PrecompiledHeader>
|
||||
</ClCompile>
|
||||
<ClCompile Include="stdafx.cpp">
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Create</PrecompiledHeader>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
</Project>
|
||||
42
Mod Sources/BaseMod/BaseMod/BaseMod.vcxproj.filters
Normal file
42
Mod Sources/BaseMod/BaseMod/BaseMod.vcxproj.filters
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Header Files">
|
||||
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
|
||||
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Resource Files">
|
||||
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
|
||||
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="ReadMe.txt" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="stdafx.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="targetver.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="BaseMod.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="stdafx.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="BaseMod.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="dllmain.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
3
Mod Sources/BaseMod/BaseMod/BaseMod.vcxproj.user
Normal file
3
Mod Sources/BaseMod/BaseMod/BaseMod.vcxproj.user
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
</Project>
|
||||
40
Mod Sources/BaseMod/BaseMod/ReadMe.txt
Normal file
40
Mod Sources/BaseMod/BaseMod/ReadMe.txt
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
========================================================================
|
||||
DYNAMIC LINK LIBRARY : BaseMod Project Overview
|
||||
========================================================================
|
||||
|
||||
AppWizard has created this BaseMod DLL for you.
|
||||
|
||||
This file contains a summary of what you will find in each of the files that
|
||||
make up your BaseMod application.
|
||||
|
||||
|
||||
BaseMod.vcxproj
|
||||
This is the main project file for VC++ projects generated using an Application Wizard.
|
||||
It contains information about the version of Visual C++ that generated the file, and
|
||||
information about the platforms, configurations, and project features selected with the
|
||||
Application Wizard.
|
||||
|
||||
BaseMod.vcxproj.filters
|
||||
This is the filters file for VC++ projects generated using an Application Wizard.
|
||||
It contains information about the association between the files in your project
|
||||
and the filters. This association is used in the IDE to show grouping of files with
|
||||
similar extensions under a specific node (for e.g. ".cpp" files are associated with the
|
||||
"Source Files" filter).
|
||||
|
||||
BaseMod.cpp
|
||||
This is the main DLL source file.
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
Other standard files:
|
||||
|
||||
StdAfx.h, StdAfx.cpp
|
||||
These files are used to build a precompiled header (PCH) file
|
||||
named BaseMod.pch and a precompiled types file named StdAfx.obj.
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
Other notes:
|
||||
|
||||
AppWizard uses "TODO:" comments to indicate parts of the source code you
|
||||
should add to or customize.
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
|
@ -0,0 +1,2 @@
|
|||
#v4.0:v100
|
||||
Release|Win32|C:\Users\Robert MacGregor\Desktop\BaseMod\|
|
||||
27
Mod Sources/BaseMod/BaseMod/Release/BaseMod.log
Normal file
27
Mod Sources/BaseMod/BaseMod/Release/BaseMod.log
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
Build started 7/29/2014 11:01:02 PM.
|
||||
1>Project "C:\Users\Robert MacGregor\Desktop\BaseMod\BaseMod\BaseMod.vcxproj" on node 2 (build target(s)).
|
||||
1>InitializeBuildStatus:
|
||||
Creating "Release\BaseMod.unsuccessfulbuild" because "AlwaysCreate" was specified.
|
||||
ClCompile:
|
||||
All outputs are up-to-date.
|
||||
C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\CL.exe /c /Zi /nologo /W3 /WX- /O2 /Oi /Oy- /GL /D WIN32 /D NDEBUG /D _WINDOWS /D _USRDLL /D BASEMOD_EXPORTS /D _WINDLL /D _UNICODE /D UNICODE /Gm- /EHsc /MD /GS /Gy /fp:precise /Zc:wchar_t /Zc:forScope /Yu"StdAfx.h" /Fp"Release\BaseMod.pch" /Fo"Release\\" /Fd"Release\vc100.pdb" /Gd /TP /analyze- /errorReport:prompt BaseMod.cpp
|
||||
BaseMod.cpp
|
||||
All outputs are up-to-date.
|
||||
Link:
|
||||
C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\link.exe /ERRORREPORT:PROMPT /OUT:"C:\Users\Robert MacGregor\Desktop\BaseMod\Release\BaseMod.dll" /INCREMENTAL:NO /NOLOGO kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /MANIFEST /ManifestFile:"Release\BaseMod.dll.intermediate.manifest" /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /DEBUG /PDB:"C:\Users\Robert MacGregor\Desktop\BaseMod\Release\BaseMod.pdb" /SUBSYSTEM:WINDOWS /OPT:REF /OPT:ICF /LTCG /TLBID:1 /DYNAMICBASE /NXCOMPAT /IMPLIB:"C:\Users\Robert MacGregor\Desktop\BaseMod\Release\BaseMod.lib" /MACHINE:X86 /DLL Release\BaseMod.obj
|
||||
Release\dllmain.obj
|
||||
Release\stdafx.obj
|
||||
Creating library C:\Users\Robert MacGregor\Desktop\BaseMod\Release\BaseMod.lib and object C:\Users\Robert MacGregor\Desktop\BaseMod\Release\BaseMod.exp
|
||||
Generating code
|
||||
Finished generating code
|
||||
BaseMod.vcxproj -> C:\Users\Robert MacGregor\Desktop\BaseMod\Release\BaseMod.dll
|
||||
Manifest:
|
||||
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\bin\mt.exe /nologo /verbose /outputresource:"C:\Users\Robert MacGregor\Desktop\BaseMod\Release\BaseMod.dll;#2" /manifest Release\BaseMod.dll.intermediate.manifest
|
||||
FinalizeBuildStatus:
|
||||
Deleting file "Release\BaseMod.unsuccessfulbuild".
|
||||
Touching "Release\BaseMod.lastbuildstate".
|
||||
1>Done Building Project "C:\Users\Robert MacGregor\Desktop\BaseMod\BaseMod\BaseMod.vcxproj" (build target(s)).
|
||||
|
||||
Build succeeded.
|
||||
|
||||
Time Elapsed 00:00:00.45
|
||||
15
Mod Sources/BaseMod/BaseMod/Release/BaseMod.write.1.tlog
Normal file
15
Mod Sources/BaseMod/BaseMod/Release/BaseMod.write.1.tlog
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
^C:\Users\Robert MacGregor\Desktop\BaseMod\BaseMod\BaseMod.vcxproj
|
||||
C:\Users\Robert MacGregor\Desktop\BaseMod\Release\BaseMod.lib
|
||||
C:\Users\Robert MacGregor\Desktop\BaseMod\Release\BaseMod.lib
|
||||
C:\Users\Robert MacGregor\Desktop\BaseMod\Release\BaseMod.exp
|
||||
C:\Users\Robert MacGregor\Desktop\BaseMod\Release\BaseMod.exp
|
||||
^C:\Users\Robert MacGregor\Desktop\BaseMod\BaseMod\BaseMod.vcxproj
|
||||
C:\Users\Robert MacGregor\Desktop\BaseMod\Release\BaseMod.lib
|
||||
C:\Users\Robert MacGregor\Desktop\BaseMod\Release\BaseMod.lib
|
||||
C:\Users\Robert MacGregor\Desktop\BaseMod\Release\BaseMod.exp
|
||||
C:\Users\Robert MacGregor\Desktop\BaseMod\Release\BaseMod.exp
|
||||
^C:\Users\Robert MacGregor\Desktop\BaseMod\BaseMod\BaseMod.vcxproj
|
||||
C:\Users\Robert MacGregor\Desktop\BaseMod\Release\BaseMod.lib
|
||||
C:\Users\Robert MacGregor\Desktop\BaseMod\Release\BaseMod.lib
|
||||
C:\Users\Robert MacGregor\Desktop\BaseMod\Release\BaseMod.exp
|
||||
C:\Users\Robert MacGregor\Desktop\BaseMod\Release\BaseMod.exp
|
||||
BIN
Mod Sources/BaseMod/BaseMod/Release/CL.read.1.tlog
Normal file
BIN
Mod Sources/BaseMod/BaseMod/Release/CL.read.1.tlog
Normal file
Binary file not shown.
BIN
Mod Sources/BaseMod/BaseMod/Release/CL.write.1.tlog
Normal file
BIN
Mod Sources/BaseMod/BaseMod/Release/CL.write.1.tlog
Normal file
Binary file not shown.
BIN
Mod Sources/BaseMod/BaseMod/Release/cl.command.1.tlog
Normal file
BIN
Mod Sources/BaseMod/BaseMod/Release/cl.command.1.tlog
Normal file
Binary file not shown.
BIN
Mod Sources/BaseMod/BaseMod/Release/link.command.1.tlog
Normal file
BIN
Mod Sources/BaseMod/BaseMod/Release/link.command.1.tlog
Normal file
Binary file not shown.
BIN
Mod Sources/BaseMod/BaseMod/Release/link.read.1.tlog
Normal file
BIN
Mod Sources/BaseMod/BaseMod/Release/link.read.1.tlog
Normal file
Binary file not shown.
BIN
Mod Sources/BaseMod/BaseMod/Release/link.write.1.tlog
Normal file
BIN
Mod Sources/BaseMod/BaseMod/Release/link.write.1.tlog
Normal file
Binary file not shown.
BIN
Mod Sources/BaseMod/BaseMod/Release/mt.command.1.tlog
Normal file
BIN
Mod Sources/BaseMod/BaseMod/Release/mt.command.1.tlog
Normal file
Binary file not shown.
BIN
Mod Sources/BaseMod/BaseMod/Release/mt.read.1.tlog
Normal file
BIN
Mod Sources/BaseMod/BaseMod/Release/mt.read.1.tlog
Normal file
Binary file not shown.
BIN
Mod Sources/BaseMod/BaseMod/Release/mt.write.1.tlog
Normal file
BIN
Mod Sources/BaseMod/BaseMod/Release/mt.write.1.tlog
Normal file
Binary file not shown.
19
Mod Sources/BaseMod/BaseMod/dllmain.cpp
Normal file
19
Mod Sources/BaseMod/BaseMod/dllmain.cpp
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
// dllmain.cpp : Defines the entry point for the DLL application.
|
||||
#include "stdafx.h"
|
||||
|
||||
BOOL APIENTRY DllMain( HMODULE hModule,
|
||||
DWORD ul_reason_for_call,
|
||||
LPVOID lpReserved
|
||||
)
|
||||
{
|
||||
switch (ul_reason_for_call)
|
||||
{
|
||||
case DLL_PROCESS_ATTACH:
|
||||
case DLL_THREAD_ATTACH:
|
||||
case DLL_THREAD_DETACH:
|
||||
case DLL_PROCESS_DETACH:
|
||||
break;
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
8
Mod Sources/BaseMod/BaseMod/stdafx.cpp
Normal file
8
Mod Sources/BaseMod/BaseMod/stdafx.cpp
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
// stdafx.cpp : source file that includes just the standard includes
|
||||
// BaseMod.pch will be the pre-compiled header
|
||||
// stdafx.obj will contain the pre-compiled type information
|
||||
|
||||
#include "stdafx.h"
|
||||
|
||||
// TODO: reference any additional headers you need in STDAFX.H
|
||||
// and not in this file
|
||||
16
Mod Sources/BaseMod/BaseMod/stdafx.h
Normal file
16
Mod Sources/BaseMod/BaseMod/stdafx.h
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
// stdafx.h : include file for standard system include files,
|
||||
// or project specific include files that are used frequently, but
|
||||
// are changed infrequently
|
||||
//
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "targetver.h"
|
||||
|
||||
#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers
|
||||
// Windows Header Files:
|
||||
#include <windows.h>
|
||||
|
||||
|
||||
|
||||
// TODO: reference additional headers your program requires here
|
||||
8
Mod Sources/BaseMod/BaseMod/targetver.h
Normal file
8
Mod Sources/BaseMod/BaseMod/targetver.h
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
#pragma once
|
||||
|
||||
// Including SDKDDKVer.h defines the highest available Windows platform.
|
||||
|
||||
// If you wish to build your application for a previous Windows platform, include WinSDKVer.h and
|
||||
// set the _WIN32_WINNT macro to the platform you wish to support before including SDKDDKVer.h.
|
||||
|
||||
#include <SDKDDKVer.h>
|
||||
BIN
Mod Sources/RandomMod/BaseMod.v12.suo
Normal file
BIN
Mod Sources/RandomMod/BaseMod.v12.suo
Normal file
Binary file not shown.
22
Mod Sources/RandomMod/BaseMod/BaseMod.cpp
Normal file
22
Mod Sources/RandomMod/BaseMod/BaseMod.cpp
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
// BaseMod.cpp : Defines the exported functions for the DLL application.
|
||||
//
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "BaseMod.h"
|
||||
|
||||
#include "t2api.h"
|
||||
#include "randomCmds.h"
|
||||
|
||||
extern "C"
|
||||
{
|
||||
BASEMOD_API void ModInitialize(void)
|
||||
{
|
||||
Con::addMethodS(NULL,"getRandom",&conMRandom,"Random number generation based upon the Mersenne Twister algorithm.",1,3);
|
||||
Con::addMethodS(NULL,"seedRand",&conMSeed,"Reseeds the Mersenne Twister random number generator.",2,2);
|
||||
Con::addMethodS(NULL,"getRandomFloat",&conMRandomFloat,"Random number generation based upon the Mersenne Twister algorithm.",1,3);
|
||||
Con::addMethodS(NULL,"QPCBegin",&conQPCBegin,"Begins the performance counter.",1,1);
|
||||
Con::addMethodS(NULL,"QPCEnd",&conQPCEnd,"Ends the performance counter and returns the time in seconds.",2,2);
|
||||
|
||||
return;
|
||||
}
|
||||
}
|
||||
8
Mod Sources/RandomMod/BaseMod/BaseMod.h
Normal file
8
Mod Sources/RandomMod/BaseMod/BaseMod.h
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
// The following ifdef block is the standard way of creating macros which make exporting
|
||||
// from a DLL simpler. All files within this DLL are compiled with the BASEMOD_EXPORTS
|
||||
// symbol defined on the command line. This symbol should not be defined on any project
|
||||
// that uses this DLL. This way any other project whose source files include this file see
|
||||
// BASEMOD_API functions as being imported from a DLL, whereas this DLL sees symbols
|
||||
// defined with this macro as being exported.
|
||||
|
||||
#define BASEMOD_API __declspec( dllexport )
|
||||
107
Mod Sources/RandomMod/BaseMod/BaseMod.vcxproj
Normal file
107
Mod Sources/RandomMod/BaseMod/BaseMod.vcxproj
Normal file
|
|
@ -0,0 +1,107 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{2A498B2D-84B2-4BBF-9532-EA17E5BA51BB}</ProjectGuid>
|
||||
<Keyword>Win32Proj</Keyword>
|
||||
<RootNamespace>BaseMod</RootNamespace>
|
||||
<ProjectName>RandomMod</ProjectName>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<LinkIncremental>true</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;BASEMOD_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<ClCompile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;BASEMOD_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<None Include="ReadMe.txt" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="BaseMod.h" />
|
||||
<ClInclude Include="mt.h" />
|
||||
<ClInclude Include="randomCmds.h" />
|
||||
<ClInclude Include="stdafx.h" />
|
||||
<ClInclude Include="t2api.h" />
|
||||
<ClInclude Include="targetver.h" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="BaseMod.cpp" />
|
||||
<ClCompile Include="dllmain.cpp">
|
||||
<CompileAsManaged Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</CompileAsManaged>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
</PrecompiledHeader>
|
||||
<CompileAsManaged Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</CompileAsManaged>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
</PrecompiledHeader>
|
||||
</ClCompile>
|
||||
<ClCompile Include="mt.cc" />
|
||||
<ClCompile Include="randomCmds.cpp" />
|
||||
<ClCompile Include="stdafx.cpp">
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Create</PrecompiledHeader>
|
||||
</ClCompile>
|
||||
<ClCompile Include="t2api.cpp" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
</Project>
|
||||
60
Mod Sources/RandomMod/BaseMod/BaseMod.vcxproj.filters
Normal file
60
Mod Sources/RandomMod/BaseMod/BaseMod.vcxproj.filters
Normal file
|
|
@ -0,0 +1,60 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Header Files">
|
||||
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
|
||||
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Resource Files">
|
||||
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
|
||||
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="ReadMe.txt" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="stdafx.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="targetver.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="BaseMod.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="mt.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="t2api.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="randomCmds.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="stdafx.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="BaseMod.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="dllmain.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="mt.cc">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="t2api.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="randomCmds.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
3
Mod Sources/RandomMod/BaseMod/BaseMod.vcxproj.user
Normal file
3
Mod Sources/RandomMod/BaseMod/BaseMod.vcxproj.user
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
</Project>
|
||||
40
Mod Sources/RandomMod/BaseMod/ReadMe.txt
Normal file
40
Mod Sources/RandomMod/BaseMod/ReadMe.txt
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
========================================================================
|
||||
DYNAMIC LINK LIBRARY : BaseMod Project Overview
|
||||
========================================================================
|
||||
|
||||
AppWizard has created this BaseMod DLL for you.
|
||||
|
||||
This file contains a summary of what you will find in each of the files that
|
||||
make up your BaseMod application.
|
||||
|
||||
|
||||
BaseMod.vcxproj
|
||||
This is the main project file for VC++ projects generated using an Application Wizard.
|
||||
It contains information about the version of Visual C++ that generated the file, and
|
||||
information about the platforms, configurations, and project features selected with the
|
||||
Application Wizard.
|
||||
|
||||
BaseMod.vcxproj.filters
|
||||
This is the filters file for VC++ projects generated using an Application Wizard.
|
||||
It contains information about the association between the files in your project
|
||||
and the filters. This association is used in the IDE to show grouping of files with
|
||||
similar extensions under a specific node (for e.g. ".cpp" files are associated with the
|
||||
"Source Files" filter).
|
||||
|
||||
BaseMod.cpp
|
||||
This is the main DLL source file.
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
Other standard files:
|
||||
|
||||
StdAfx.h, StdAfx.cpp
|
||||
These files are used to build a precompiled header (PCH) file
|
||||
named BaseMod.pch and a precompiled types file named StdAfx.obj.
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
Other notes:
|
||||
|
||||
AppWizard uses "TODO:" comments to indicate parts of the source code you
|
||||
should add to or customize.
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
|
@ -0,0 +1,2 @@
|
|||
#v4.0:v100
|
||||
Release|Win32|C:\Users\Robert MacGregor\Desktop\BaseMod\|
|
||||
30
Mod Sources/RandomMod/BaseMod/Release/BaseMod.log
Normal file
30
Mod Sources/RandomMod/BaseMod/Release/BaseMod.log
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
Build started 7/31/2014 6:32:18 PM.
|
||||
1>Project "C:\Users\Robert MacGregor\Desktop\RandomMod\BaseMod\BaseMod.vcxproj" on node 2 (build target(s)).
|
||||
1>InitializeBuildStatus:
|
||||
Creating "Release\RandomMod.unsuccessfulbuild" because "AlwaysCreate" was specified.
|
||||
ClCompile:
|
||||
All outputs are up-to-date.
|
||||
C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\CL.exe /c /Zi /nologo /W3 /WX- /O2 /Oi /Oy- /GL /D WIN32 /D NDEBUG /D _WINDOWS /D _USRDLL /D BASEMOD_EXPORTS /D _WINDLL /D _UNICODE /D UNICODE /Gm- /EHsc /MD /GS /Gy /fp:precise /Zc:wchar_t /Zc:forScope /Yu"StdAfx.h" /Fp"Release\RandomMod.pch" /Fo"Release\\" /Fd"Release\vc100.pdb" /Gd /TP /analyze- /errorReport:prompt BaseMod.cpp
|
||||
BaseMod.cpp
|
||||
All outputs are up-to-date.
|
||||
Link:
|
||||
C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\link.exe /ERRORREPORT:PROMPT /OUT:"C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.dll" /INCREMENTAL:NO /NOLOGO kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /MANIFEST /ManifestFile:"Release\RandomMod.dll.intermediate.manifest" /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /DEBUG /PDB:"C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.pdb" /SUBSYSTEM:WINDOWS /OPT:REF /OPT:ICF /LTCG /TLBID:1 /DYNAMICBASE /NXCOMPAT /IMPLIB:"C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.lib" /MACHINE:X86 /DLL Release\BaseMod.obj
|
||||
Release\dllmain.obj
|
||||
Release\mt.obj
|
||||
Release\randomCmds.obj
|
||||
Release\stdafx.obj
|
||||
Release\t2api.obj
|
||||
Creating library C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.lib and object C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.exp
|
||||
Generating code
|
||||
Finished generating code
|
||||
BaseMod.vcxproj -> C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.dll
|
||||
Manifest:
|
||||
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\bin\mt.exe /nologo /verbose /outputresource:"C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.dll;#2" /manifest Release\RandomMod.dll.intermediate.manifest
|
||||
FinalizeBuildStatus:
|
||||
Deleting file "Release\RandomMod.unsuccessfulbuild".
|
||||
Touching "Release\RandomMod.lastbuildstate".
|
||||
1>Done Building Project "C:\Users\Robert MacGregor\Desktop\RandomMod\BaseMod\BaseMod.vcxproj" (build target(s)).
|
||||
|
||||
Build succeeded.
|
||||
|
||||
Time Elapsed 00:00:00.71
|
||||
Binary file not shown.
BIN
Mod Sources/RandomMod/BaseMod/Release/CL.read.1.tlog
Normal file
BIN
Mod Sources/RandomMod/BaseMod/Release/CL.read.1.tlog
Normal file
Binary file not shown.
BIN
Mod Sources/RandomMod/BaseMod/Release/CL.write.1.tlog
Normal file
BIN
Mod Sources/RandomMod/BaseMod/Release/CL.write.1.tlog
Normal file
Binary file not shown.
|
|
@ -0,0 +1,37 @@
|
|||
C:\USERS\ROBERT MACGREGOR\DESKTOP\BASEMOD\BASEMOD\RELEASE\BASEMOD.DLL.INTERMEDIATE.MANIFEST
|
||||
C:\USERS\ROBERT MACGREGOR\DESKTOP\BASEMOD\BASEMOD\RELEASE\BASEMOD.OBJ
|
||||
C:\USERS\ROBERT MACGREGOR\DESKTOP\BASEMOD\BASEMOD\RELEASE\BASEMOD.PCH
|
||||
C:\USERS\ROBERT MACGREGOR\DESKTOP\BASEMOD\BASEMOD\RELEASE\DLLMAIN.OBJ
|
||||
C:\USERS\ROBERT MACGREGOR\DESKTOP\BASEMOD\BASEMOD\RELEASE\STDAFX.OBJ
|
||||
C:\USERS\ROBERT MACGREGOR\DESKTOP\BASEMOD\BASEMOD\RELEASE\VC100.PDB
|
||||
C:\USERS\ROBERT MACGREGOR\DESKTOP\BASEMOD\RELEASE\BASEMOD.DLL
|
||||
C:\Users\Robert MacGregor\Desktop\BaseMod\Release\BaseMod.exp
|
||||
C:\Users\Robert MacGregor\Desktop\BaseMod\Release\BaseMod.lib
|
||||
C:\USERS\ROBERT MACGREGOR\DESKTOP\BASEMOD\RELEASE\BASEMOD.PDB
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\BaseMod\Release\BaseMod.dll.intermediate.manifest
|
||||
C:\USERS\ROBERT MACGREGOR\DESKTOP\RANDOMMOD\BASEMOD\RELEASE\BASEMOD.OBJ
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\BaseMod\Release\BaseMod.pch
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\BaseMod\Release\BaseMod.vcxprojResolveAssemblyReference.cache
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\BaseMod\Release\BaseMod.write.1.tlog
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\BaseMod\Release\cl.command.1.tlog
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\BaseMod\Release\CL.read.1.tlog
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\BaseMod\Release\CL.write.1.tlog
|
||||
C:\USERS\ROBERT MACGREGOR\DESKTOP\RANDOMMOD\BASEMOD\RELEASE\DLLMAIN.OBJ
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\BaseMod\Release\link.command.1.tlog
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\BaseMod\Release\link.read.1.tlog
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\BaseMod\Release\link.write.1.tlog
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\BaseMod\Release\mt.command.1.tlog
|
||||
C:\USERS\ROBERT MACGREGOR\DESKTOP\RANDOMMOD\BASEMOD\RELEASE\MT.OBJ
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\BaseMod\Release\mt.read.1.tlog
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\BaseMod\Release\mt.write.1.tlog
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\BaseMod\Release\randomCmds.obj
|
||||
C:\USERS\ROBERT MACGREGOR\DESKTOP\RANDOMMOD\BASEMOD\RELEASE\RANDOMMOD.DLL.INTERMEDIATE.MANIFEST
|
||||
C:\USERS\ROBERT MACGREGOR\DESKTOP\RANDOMMOD\BASEMOD\RELEASE\RANDOMMOD.PCH
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\BaseMod\Release\RandomMod.write.1.tlog
|
||||
C:\USERS\ROBERT MACGREGOR\DESKTOP\RANDOMMOD\BASEMOD\RELEASE\STDAFX.OBJ
|
||||
C:\USERS\ROBERT MACGREGOR\DESKTOP\RANDOMMOD\BASEMOD\RELEASE\T2API.OBJ
|
||||
C:\USERS\ROBERT MACGREGOR\DESKTOP\RANDOMMOD\BASEMOD\RELEASE\VC100.PDB
|
||||
C:\USERS\ROBERT MACGREGOR\DESKTOP\RANDOMMOD\RELEASE\RANDOMMOD.DLL
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.exp
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.lib
|
||||
C:\USERS\ROBERT MACGREGOR\DESKTOP\RANDOMMOD\RELEASE\RANDOMMOD.PDB
|
||||
|
|
@ -0,0 +1,10 @@
|
|||
<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
|
||||
<assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
|
||||
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
|
||||
<security>
|
||||
<requestedPrivileges>
|
||||
<requestedExecutionLevel level='asInvoker' uiAccess='false' />
|
||||
</requestedPrivileges>
|
||||
</security>
|
||||
</trustInfo>
|
||||
</assembly>
|
||||
|
|
@ -0,0 +1,2 @@
|
|||
#v4.0:v100
|
||||
Release|Win32|C:\Users\Robert MacGregor\Desktop\RandomMod\|
|
||||
BIN
Mod Sources/RandomMod/BaseMod/Release/RandomMod.pch
Normal file
BIN
Mod Sources/RandomMod/BaseMod/Release/RandomMod.pch
Normal file
Binary file not shown.
45
Mod Sources/RandomMod/BaseMod/Release/RandomMod.write.1.tlog
Normal file
45
Mod Sources/RandomMod/BaseMod/Release/RandomMod.write.1.tlog
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
^C:\Users\Robert MacGregor\Desktop\RandomMod\BaseMod\BaseMod.vcxproj
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.lib
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.lib
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.exp
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.exp
|
||||
^C:\Users\Robert MacGregor\Desktop\RandomMod\BaseMod\BaseMod.vcxproj
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.lib
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.lib
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.exp
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.exp
|
||||
^C:\Users\Robert MacGregor\Desktop\RandomMod\BaseMod\BaseMod.vcxproj
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.lib
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.lib
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.exp
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.exp
|
||||
^C:\Users\Robert MacGregor\Desktop\RandomMod\BaseMod\BaseMod.vcxproj
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.lib
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.lib
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.exp
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.exp
|
||||
^C:\Users\Robert MacGregor\Desktop\RandomMod\BaseMod\BaseMod.vcxproj
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.lib
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.lib
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.exp
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.exp
|
||||
^C:\Users\Robert MacGregor\Desktop\RandomMod\BaseMod\BaseMod.vcxproj
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.lib
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.lib
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.exp
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.exp
|
||||
^C:\Users\Robert MacGregor\Desktop\RandomMod\BaseMod\BaseMod.vcxproj
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.lib
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.lib
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.exp
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.exp
|
||||
^C:\Users\Robert MacGregor\Desktop\RandomMod\BaseMod\BaseMod.vcxproj
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.lib
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.lib
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.exp
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.exp
|
||||
^C:\Users\Robert MacGregor\Desktop\RandomMod\BaseMod\BaseMod.vcxproj
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.lib
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.lib
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.exp
|
||||
C:\Users\Robert MacGregor\Desktop\RandomMod\Release\RandomMod.exp
|
||||
BIN
Mod Sources/RandomMod/BaseMod/Release/cl.command.1.tlog
Normal file
BIN
Mod Sources/RandomMod/BaseMod/Release/cl.command.1.tlog
Normal file
Binary file not shown.
BIN
Mod Sources/RandomMod/BaseMod/Release/link.command.1.tlog
Normal file
BIN
Mod Sources/RandomMod/BaseMod/Release/link.command.1.tlog
Normal file
Binary file not shown.
BIN
Mod Sources/RandomMod/BaseMod/Release/link.read.1.tlog
Normal file
BIN
Mod Sources/RandomMod/BaseMod/Release/link.read.1.tlog
Normal file
Binary file not shown.
BIN
Mod Sources/RandomMod/BaseMod/Release/link.write.1.tlog
Normal file
BIN
Mod Sources/RandomMod/BaseMod/Release/link.write.1.tlog
Normal file
Binary file not shown.
BIN
Mod Sources/RandomMod/BaseMod/Release/mt.command.1.tlog
Normal file
BIN
Mod Sources/RandomMod/BaseMod/Release/mt.command.1.tlog
Normal file
Binary file not shown.
BIN
Mod Sources/RandomMod/BaseMod/Release/mt.read.1.tlog
Normal file
BIN
Mod Sources/RandomMod/BaseMod/Release/mt.read.1.tlog
Normal file
Binary file not shown.
BIN
Mod Sources/RandomMod/BaseMod/Release/mt.write.1.tlog
Normal file
BIN
Mod Sources/RandomMod/BaseMod/Release/mt.write.1.tlog
Normal file
Binary file not shown.
BIN
Mod Sources/RandomMod/BaseMod/Release/vc100.pdb
Normal file
BIN
Mod Sources/RandomMod/BaseMod/Release/vc100.pdb
Normal file
Binary file not shown.
19
Mod Sources/RandomMod/BaseMod/dllmain.cpp
Normal file
19
Mod Sources/RandomMod/BaseMod/dllmain.cpp
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
// dllmain.cpp : Defines the entry point for the DLL application.
|
||||
#include "stdafx.h"
|
||||
|
||||
BOOL APIENTRY DllMain( HMODULE hModule,
|
||||
DWORD ul_reason_for_call,
|
||||
LPVOID lpReserved
|
||||
)
|
||||
{
|
||||
switch (ul_reason_for_call)
|
||||
{
|
||||
case DLL_PROCESS_ATTACH:
|
||||
case DLL_THREAD_ATTACH:
|
||||
case DLL_THREAD_DETACH:
|
||||
case DLL_PROCESS_DETACH:
|
||||
break;
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
264
Mod Sources/RandomMod/BaseMod/mt.cc
Normal file
264
Mod Sources/RandomMod/BaseMod/mt.cc
Normal file
|
|
@ -0,0 +1,264 @@
|
|||
/**
|
||||
* C++ Mersenne Twister wrapper class written by
|
||||
* Jason R. Blevins <jrblevin@sdf.lonestar.org> on July 24, 2006.
|
||||
* Based on the original MT19937 C code by
|
||||
* Takuji Nishimura and Makoto Matsumoto.
|
||||
*/
|
||||
|
||||
/*
|
||||
A C-program for MT19937, with initialization improved 2002/1/26.
|
||||
Coded by Takuji Nishimura and Makoto Matsumoto.
|
||||
|
||||
Before using, initialize the state by using init_genrand(seed)
|
||||
or init_by_array(init_key, key_length).
|
||||
|
||||
Copyright (C) 1997 - 2002, Makoto Matsumoto and Takuji Nishimura,
|
||||
All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions
|
||||
are met:
|
||||
|
||||
1. Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
|
||||
2. Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in the
|
||||
documentation and/or other materials provided with the distribution.
|
||||
|
||||
3. The names of its contributors may not be used to endorse or promote
|
||||
products derived from this software without specific prior written
|
||||
permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
Any feedback is very welcome.
|
||||
http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/emt.html
|
||||
email: m-mat @ math.sci.hiroshima-u.ac.jp (remove space)
|
||||
*/
|
||||
|
||||
#include "stdafx.h"
|
||||
#include <iostream>
|
||||
#include <cassert>
|
||||
|
||||
#include "mt.h"
|
||||
|
||||
/**
|
||||
* Constructor
|
||||
*/
|
||||
MersenneTwister::MersenneTwister(void):
|
||||
mt_(new unsigned long[N]), mti_(N+1),
|
||||
init_key_(NULL), key_length_(0), s_(0),
|
||||
seeded_by_array_(false), seeded_by_int_(false)
|
||||
{
|
||||
unsigned long init[4] = { 0x123, 0x234, 0x345, 0x456 };
|
||||
unsigned long length = 4;
|
||||
init_by_array(init, length);
|
||||
}
|
||||
|
||||
/**
|
||||
* Destructor
|
||||
*/
|
||||
MersenneTwister::~MersenneTwister(void)
|
||||
{
|
||||
assert(mt_ != NULL);
|
||||
delete[] mt_;
|
||||
mt_ = NULL;
|
||||
|
||||
assert(init_key_ != NULL);
|
||||
delete[] init_key_;
|
||||
init_key_ = NULL;
|
||||
}
|
||||
|
||||
/**
|
||||
* Initializes the Mersenne Twister with a seed.
|
||||
*
|
||||
* \param s seed
|
||||
*/
|
||||
void MersenneTwister::init_genrand(unsigned long s)
|
||||
{
|
||||
mt_[0]= s & 0xffffffffUL;
|
||||
for (mti_=1; mti_<N; mti_++) {
|
||||
mt_[mti_] =
|
||||
(1812433253UL * (mt_[mti_-1] ^ (mt_[mti_-1] >> 30)) + mti_);
|
||||
/* See Knuth TAOCP Vol2. 3rd Ed. P.106 for multiplier. */
|
||||
/* In the previous versions, MSBs of the seed affect */
|
||||
/* only MSBs of the array mt_[]. */
|
||||
/* 2002/01/09 modified by Makoto Matsumoto */
|
||||
mt_[mti_] &= 0xffffffffUL;
|
||||
/* for >32 bit machines */
|
||||
}
|
||||
// Store the seed
|
||||
s_ = s;
|
||||
seeded_by_array_ = false;
|
||||
seeded_by_int_ = true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Seed the Mersenne Twister using an array.
|
||||
*
|
||||
* \param init_key an array for initializing keys
|
||||
* \param key_length the length of \a init_key
|
||||
*/
|
||||
void MersenneTwister::init_by_array(unsigned long* init_key, int key_length)
|
||||
{
|
||||
// Store the key array
|
||||
int i, j, k;
|
||||
init_genrand(19650218UL);
|
||||
i=1; j=0;
|
||||
k = (N>key_length ? N : key_length);
|
||||
for (; k; k--) {
|
||||
mt_[i] = (mt_[i] ^ ((mt_[i-1] ^ (mt_[i-1] >> 30)) * 1664525UL))
|
||||
+ init_key[j] + j; /* non linear */
|
||||
mt_[i] &= 0xffffffffUL; /* for WORDSIZE > 32 machines */
|
||||
i++; j++;
|
||||
if (i>=N) { mt_[0] = mt_[N-1]; i=1; }
|
||||
if (j>=key_length) j=0;
|
||||
}
|
||||
for (k=N-1; k; k--) {
|
||||
mt_[i] = (mt_[i] ^ ((mt_[i-1] ^ (mt_[i-1] >> 30)) * 1566083941UL))
|
||||
- i; /* non linear */
|
||||
mt_[i] &= 0xffffffffUL; /* for WORDSIZE > 32 machines */
|
||||
i++;
|
||||
if (i>=N) { mt_[0] = mt_[N-1]; i=1; }
|
||||
}
|
||||
|
||||
mt_[0] = 0x80000000UL; /* MSB is 1; assuring non-zero initial array */
|
||||
|
||||
// Store the seed
|
||||
if (init_key_ != NULL) {
|
||||
delete[] init_key_;
|
||||
}
|
||||
init_key_ = new unsigned long[key_length];
|
||||
for (int k = 0; k < key_length; k++) {
|
||||
init_key_[k] = init_key[k];
|
||||
}
|
||||
key_length_ = key_length;
|
||||
seeded_by_int_ = false;
|
||||
seeded_by_array_ = true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Generates a random number on [0,0xffffffff]-interval
|
||||
*
|
||||
* \return random number on [0, 0xffffffff]
|
||||
*/
|
||||
unsigned long MersenneTwister::genrand_int32(void)
|
||||
{
|
||||
unsigned long y;
|
||||
static unsigned long mag01[2]={0x0UL, MATRIX_A};
|
||||
/* mag01[x] = x * MATRIX_A for x=0,1 */
|
||||
|
||||
if (mti_ >= N) { /* generate N words at one time */
|
||||
int kk;
|
||||
|
||||
if (mti_ == N+1) /* if init_genrand() has not been called, */
|
||||
init_genrand(5489UL); /* a default initial seed is used */
|
||||
|
||||
for (kk=0;kk<N-M;kk++) {
|
||||
y = (mt_[kk]&UPPER_MASK)|(mt_[kk+1]&LOWER_MASK);
|
||||
mt_[kk] = mt_[kk+M] ^ (y >> 1) ^ mag01[y & 0x1UL];
|
||||
}
|
||||
for (;kk<N-1;kk++) {
|
||||
y = (mt_[kk]&UPPER_MASK)|(mt_[kk+1]&LOWER_MASK);
|
||||
mt_[kk] = mt_[kk+(M-N)] ^ (y >> 1) ^ mag01[y & 0x1UL];
|
||||
}
|
||||
y = (mt_[N-1]&UPPER_MASK)|(mt_[0]&LOWER_MASK);
|
||||
mt_[N-1] = mt_[M-1] ^ (y >> 1) ^ mag01[y & 0x1UL];
|
||||
|
||||
mti_ = 0;
|
||||
}
|
||||
|
||||
y = mt_[mti_++];
|
||||
|
||||
/* Tempering */
|
||||
y ^= (y >> 11);
|
||||
y ^= (y << 7) & 0x9d2c5680UL;
|
||||
y ^= (y << 15) & 0xefc60000UL;
|
||||
y ^= (y >> 18);
|
||||
|
||||
return y;
|
||||
}
|
||||
|
||||
/**
|
||||
* Generates a random integer on [0,0x7fffffff].
|
||||
*
|
||||
* \return a random integer on [0,0x7fffffff]
|
||||
*/
|
||||
long MersenneTwister::genrand_int31(void)
|
||||
{
|
||||
return (long)(genrand_int32()>>1);
|
||||
}
|
||||
|
||||
/**
|
||||
* Generates a random real number on [0,1].
|
||||
*
|
||||
* \return a random real number on [0,1]
|
||||
*/
|
||||
double MersenneTwister::genrand_real1(void)
|
||||
{
|
||||
return genrand_int32()*(1.0/4294967295.0);
|
||||
/* divided by 2^32-1 */
|
||||
}
|
||||
|
||||
/**
|
||||
* Generates a random real number on [0,1).
|
||||
*
|
||||
* \return a random real number on [0,1)
|
||||
*/
|
||||
double MersenneTwister::genrand_real2(void)
|
||||
{
|
||||
return genrand_int32()*(1.0/4294967296.0);
|
||||
/* divided by 2^32 */
|
||||
}
|
||||
|
||||
/**
|
||||
* Generates a random real number on (0,1).
|
||||
*
|
||||
* \return a random real number on (0,1)
|
||||
*/
|
||||
double MersenneTwister::genrand_real3(void)
|
||||
{
|
||||
return (((double)genrand_int32()) + 0.5)*(1.0/4294967296.0);
|
||||
/* divided by 2^32 */
|
||||
}
|
||||
|
||||
/**
|
||||
* Generates a random real number on [0,1) with 53-bit precision.
|
||||
*
|
||||
* \return a random 53-bit real number on [0,1)
|
||||
*/
|
||||
double MersenneTwister::genrand_res53(void)
|
||||
{
|
||||
unsigned long a=genrand_int32()>>5, b=genrand_int32()>>6;
|
||||
return(a*67108864.0+b)*(1.0/9007199254740992.0);
|
||||
}
|
||||
/* These real versions are due to Isaku Wada, 2002/01/09 added */
|
||||
|
||||
/**
|
||||
* Print interesting information about the Mersenne Twister.
|
||||
*
|
||||
*/
|
||||
void MersenneTwister::print(void)
|
||||
{
|
||||
std::cout << "MersenneTwister (M. Matsumoto and T. Nishimura), seed = ";
|
||||
if (seeded_by_int_) {
|
||||
std::cout << s_ << std::endl;
|
||||
} else {
|
||||
std::cout << "[ ";
|
||||
for (int k = 0; k < key_length_; k++) {
|
||||
std::cout << init_key_[k] << " ";
|
||||
}
|
||||
std::cout << "]" << std::endl;
|
||||
}
|
||||
}
|
||||
60
Mod Sources/RandomMod/BaseMod/mt.h
Normal file
60
Mod Sources/RandomMod/BaseMod/mt.h
Normal file
|
|
@ -0,0 +1,60 @@
|
|||
/**
|
||||
* mt.h: Mersenne Twister header file
|
||||
*
|
||||
* Jason R. Blevins <jrblevin@sdf.lonestar.org>
|
||||
* Durham, March 7, 2007
|
||||
*/
|
||||
|
||||
#ifndef METRICS_MT_H
|
||||
#define METRICS_MT_H
|
||||
|
||||
/**
|
||||
* Mersenne Twister.
|
||||
*
|
||||
* M. Matsumoto and T. Nishimura, "Mersenne Twister: A
|
||||
* 623-dimensionally equidistributed uniform pseudorandom number
|
||||
* generator", ACM Trans. on Modeling and Computer Simulation Vol. 8,
|
||||
* No. 1, January pp.3-30 (1998).
|
||||
*
|
||||
* http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/emt.html.
|
||||
*/
|
||||
class MersenneTwister
|
||||
{
|
||||
public:
|
||||
MersenneTwister(void);
|
||||
~MersenneTwister(void);
|
||||
|
||||
double random(void) { return genrand_real1(); }
|
||||
void print(void);
|
||||
|
||||
void init_genrand(unsigned long s);
|
||||
void init_by_array(unsigned long* init_key, int key_length);
|
||||
|
||||
unsigned long genrand_int32(void);
|
||||
long genrand_int31(void);
|
||||
double genrand_real1(void);
|
||||
double genrand_real2(void);
|
||||
double genrand_real3(void);
|
||||
double genrand_res53(void);
|
||||
|
||||
private:
|
||||
static const int N = 624;
|
||||
static const int M = 397;
|
||||
// constant vector a
|
||||
static const unsigned long MATRIX_A = 0x9908b0dfUL;
|
||||
// most significant w-r bits
|
||||
static const unsigned long UPPER_MASK = 0x80000000UL;
|
||||
// least significant r bits
|
||||
static const unsigned long LOWER_MASK = 0x7fffffffUL;
|
||||
|
||||
unsigned long* mt_; // the state vector
|
||||
int mti_; // mti == N+1 means mt not initialized
|
||||
|
||||
unsigned long* init_key_; // Storage for the seed vector
|
||||
int key_length_; // Seed vector length
|
||||
unsigned long s_; // Seed integer
|
||||
bool seeded_by_array_; // Seeded by an array
|
||||
bool seeded_by_int_; // Seeded by an integer
|
||||
};
|
||||
|
||||
#endif // METRICS_MT_H
|
||||
169
Mod Sources/RandomMod/BaseMod/randomCmds.cpp
Normal file
169
Mod Sources/RandomMod/BaseMod/randomCmds.cpp
Normal file
|
|
@ -0,0 +1,169 @@
|
|||
#include "stdafx.h"
|
||||
#include <math.h>
|
||||
#include <cstdlib>
|
||||
#include <stdio.h>
|
||||
#include "mt.h"
|
||||
|
||||
#include "t2api.h"
|
||||
|
||||
// Merscenne Twister
|
||||
MersenneTwister *mt = NULL;
|
||||
const char *conMRandom(SimObject *obj, S32 argc, const char *argv[])
|
||||
{
|
||||
if (!mt)
|
||||
{
|
||||
mt = new MersenneTwister;
|
||||
mt->init_genrand(time(NULL));
|
||||
}
|
||||
|
||||
char mem[256];
|
||||
memset(mem, 0x00, 255);
|
||||
if (argc == 1)
|
||||
{
|
||||
sprintf_s(mem, 256, "%f", mt->random());
|
||||
return mem;
|
||||
}
|
||||
|
||||
char *a_c = (char*)argv[1];
|
||||
char *b_c;
|
||||
if (argc == 3)
|
||||
b_c = (char*)argv[2];
|
||||
else if (argc == 2)
|
||||
{
|
||||
b_c = a_c;
|
||||
a_c = "0";
|
||||
}
|
||||
|
||||
int a = atoi(a_c);
|
||||
int b = atoi(b_c);
|
||||
|
||||
// Check to see if we have any negative arguments
|
||||
if (a < 0)
|
||||
{
|
||||
int max = b + abs(a);
|
||||
int rand = mt->genrand_int32() % (max);
|
||||
if (rand > b)
|
||||
rand = -(rand-b);
|
||||
sprintf_s(mem, 256, "%d", rand);
|
||||
return mem;
|
||||
}
|
||||
|
||||
sprintf_s(mem, 256, "%f", floor(mt->random() * b + a));
|
||||
return mem;
|
||||
}
|
||||
|
||||
const char *conMRandomFloat(SimObject *obj, S32 argc, const char *argv[])
|
||||
{
|
||||
if (!mt)
|
||||
{
|
||||
mt = new MersenneTwister;
|
||||
mt->init_genrand(time(NULL));
|
||||
}
|
||||
|
||||
char mem[256];
|
||||
memset(mem, 0x00, 255);
|
||||
if (argc == 1)
|
||||
{
|
||||
sprintf_s(mem, 256, "%f", mt->random());
|
||||
return mem;
|
||||
}
|
||||
|
||||
char *a_c = (char*)argv[1];
|
||||
char *b_c;
|
||||
if (argc == 3)
|
||||
b_c = (char*)argv[2];
|
||||
else if (argc == 2)
|
||||
{
|
||||
b_c = a_c;
|
||||
a_c = "0";
|
||||
}
|
||||
|
||||
float a = atof(a_c);
|
||||
float b = atof(b_c);
|
||||
if (a > b)
|
||||
{
|
||||
int d = b;
|
||||
b = a;
|
||||
a = d;
|
||||
}
|
||||
|
||||
sprintf_s(mem, 256, "%f", mt->random() * b + a);
|
||||
return mem;
|
||||
}
|
||||
|
||||
const char *conMSeed(SimObject *obj, S32 argc, const char *argv[])
|
||||
{
|
||||
if (!mt)
|
||||
{
|
||||
mt = new MersenneTwister;
|
||||
mt->init_genrand(time(NULL));
|
||||
}
|
||||
const char *a_c = argv[1];
|
||||
|
||||
unsigned long a = 0;
|
||||
unsigned int len = strlen(a_c);
|
||||
for (unsigned int i = 0; i < len; i++)
|
||||
if ( a_c[i] > 57 || a_c[i] < 48)
|
||||
{
|
||||
mt->init_by_array((unsigned long*)a_c, len+1);
|
||||
return "1";
|
||||
}
|
||||
|
||||
a = atof(a_c);
|
||||
mt->init_genrand(a);
|
||||
return "1";
|
||||
}
|
||||
|
||||
|
||||
#define QPC_MAX_STOPWATCHES 20
|
||||
|
||||
static unsigned int CURRENT_STOPWATCH_COUNT = 0;
|
||||
static __int64 QPC_STOPWATCHES[QPC_MAX_STOPWATCHES];
|
||||
|
||||
__int64 STARTING_QPC_TIME;
|
||||
const char*conQPCBegin(SimObject *obj, S32 argc, const char *argv[])
|
||||
{
|
||||
if (!QueryPerformanceCounter((LARGE_INTEGER*)&QPC_STOPWATCHES[CURRENT_STOPWATCH_COUNT]))
|
||||
{
|
||||
Con::errorf(0, "QPCBegin(): Failed to start timer! (%u)", GetLastError());
|
||||
return "-1";
|
||||
}
|
||||
else if (CURRENT_STOPWATCH_COUNT >= QPC_MAX_STOPWATCHES)
|
||||
{
|
||||
Con::errorf(0, "QPCBegin(): Too many stopwatches active! (Maximum: %u)", QPC_MAX_STOPWATCHES);
|
||||
return "-1";
|
||||
}
|
||||
|
||||
unsigned int return_value = CURRENT_STOPWATCH_COUNT;
|
||||
char result[256];
|
||||
sprintf_s<256>(result, "%u", return_value);
|
||||
|
||||
CURRENT_STOPWATCH_COUNT++;
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
const char*conQPCEnd(SimObject *obj, S32 argc, const char *argv[])
|
||||
{
|
||||
__int64 ENDING_QPC_TIME;
|
||||
if (!QueryPerformanceCounter((LARGE_INTEGER*)&ENDING_QPC_TIME))
|
||||
{
|
||||
Con::errorf(0, "QPCEnd(): Failed to stop timer! (%u)", GetLastError());
|
||||
return "-1";
|
||||
}
|
||||
else if (CURRENT_STOPWATCH_COUNT == 0)
|
||||
{
|
||||
Con::errorf(0, "QPCEnd(): No stopwatches to stop!");
|
||||
return "-1";
|
||||
}
|
||||
|
||||
__int64 qpc_frequency;
|
||||
QueryPerformanceFrequency((LARGE_INTEGER*)&qpc_frequency);
|
||||
|
||||
char result[256];
|
||||
sprintf_s<256>(result, "%f", ((QPC_STOPWATCHES[CURRENT_STOPWATCH_COUNT - 1]) - ENDING_QPC_TIME) * 1.0 / qpc_frequency);
|
||||
|
||||
CURRENT_STOPWATCH_COUNT--;
|
||||
|
||||
return result;
|
||||
}
|
||||
14
Mod Sources/RandomMod/BaseMod/randomCmds.h
Normal file
14
Mod Sources/RandomMod/BaseMod/randomCmds.h
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
#include "stdafx.h"
|
||||
|
||||
const char* conGuiTsCtrlProject(SimObject *obj,S32 argc, const char* argv[]);
|
||||
bool conNetObjectSetGhostable(SimObject *obj,S32 argc, const char* argv[]);
|
||||
const char* conGetVariable(SimObject *obj,S32 argc, const char* argv[]);
|
||||
|
||||
// Merscenne Random
|
||||
const char *conMRandom(SimObject *obj, S32 argc, const char *argv[]);
|
||||
const char *conMSeed(SimObject *obj, S32 argc, const char *argv[]);
|
||||
const char *conMRandomFloat(SimObject *obj, S32 argc, const char *argv[]);
|
||||
|
||||
// Clock
|
||||
const char*conQPCBegin(SimObject *obj, S32 argc, const char *argv[]);
|
||||
const char*conQPCEnd(SimObject *obj, S32 argc, const char *argv[]);
|
||||
8
Mod Sources/RandomMod/BaseMod/stdafx.cpp
Normal file
8
Mod Sources/RandomMod/BaseMod/stdafx.cpp
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
// stdafx.cpp : source file that includes just the standard includes
|
||||
// BaseMod.pch will be the pre-compiled header
|
||||
// stdafx.obj will contain the pre-compiled type information
|
||||
|
||||
#include "stdafx.h"
|
||||
|
||||
// TODO: reference any additional headers you need in STDAFX.H
|
||||
// and not in this file
|
||||
17
Mod Sources/RandomMod/BaseMod/stdafx.h
Normal file
17
Mod Sources/RandomMod/BaseMod/stdafx.h
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
// stdafx.h : include file for standard system include files,
|
||||
// or project specific include files that are used frequently, but
|
||||
// are changed infrequently
|
||||
//
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "targetver.h"
|
||||
|
||||
#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers
|
||||
// Windows Header Files:
|
||||
#include <time.h>
|
||||
#include <windows.h>
|
||||
|
||||
|
||||
|
||||
// TODO: reference additional headers your program requires here
|
||||
86
Mod Sources/RandomMod/BaseMod/t2api.cpp
Normal file
86
Mod Sources/RandomMod/BaseMod/t2api.cpp
Normal file
|
|
@ -0,0 +1,86 @@
|
|||
#include "stdafx.h"
|
||||
#include "t2api.h"
|
||||
|
||||
SimIdDictionary* gIdDictionary = reinterpret_cast<SimIdDictionary*>(0x009E9194);
|
||||
|
||||
//439550
|
||||
namespace Sim {
|
||||
SimObject* (*findObject)(U32 id) =
|
||||
(SimObject* (_cdecl *)(U32 id) )
|
||||
0x439550;
|
||||
}
|
||||
|
||||
//hackey way to do member functions, ....
|
||||
void GuiTSCtrl_project(GuiTSCtrl *obj, const Point3F &pt, Point3F *dest) {
|
||||
typedef void (__cdecl *projFunc)(const Point3F &pt, Point3F *dest);
|
||||
static projFunc p = (projFunc)0x4d0b40;
|
||||
|
||||
__asm {
|
||||
push dest;
|
||||
push pt;
|
||||
mov ecx,obj;
|
||||
lea eax, p;
|
||||
mov eax, [eax];
|
||||
call eax;
|
||||
}
|
||||
}
|
||||
|
||||
namespace Con {
|
||||
|
||||
char* (*getReturnBuffer)(U32 bufferSize) =
|
||||
(char *(__cdecl *)(U32))
|
||||
0x42caa0;
|
||||
|
||||
void (*addMethodB)(const char *nsName, const char *name, BoolCallback cb, const char *usage, S32 minArgs, S32 maxArgs) =
|
||||
(void (__cdecl *)(const char *, const char *,BoolCallback,const char *,S32,S32))
|
||||
0x426510;
|
||||
|
||||
void (*addMethodS)(const char *, const char *,StringCallback, const char *, S32, S32) =
|
||||
(void (__cdecl *)(const char *,const char *,StringCallback,const char *,S32,S32))
|
||||
0x426410;
|
||||
|
||||
bool (*addVariable)(const char *name, S32 t, void *dp) =
|
||||
(bool (__cdecl *)(const char *name, S32 t, void *dp))
|
||||
0x4263B0;
|
||||
|
||||
const char * (*execute)(S32 argc, const char *argv[]) =
|
||||
(const char * (__cdecl *)(S32 argc, const char *argv[]))
|
||||
0x4267A0;
|
||||
|
||||
const char * (*executef)(S32 argc, ...) =
|
||||
(const char * (__cdecl *)(S32 argc, ...))
|
||||
0x4269E0;
|
||||
|
||||
const char * (*evaluate)(const char* string, bool echo, const char *fileName, bool cf) =
|
||||
(const char * (__cdecl *)(const char* string, bool echo, const char *fileName, bool cf))
|
||||
0x426690;
|
||||
|
||||
const char * (*executem)(SimObject *object, S32 argc, const char *argv[]) =
|
||||
(const char * (__cdecl *)(SimObject *object, S32 argc, const char *argv[]))
|
||||
0x426800;
|
||||
|
||||
const char * (*getVariable)(const char *name) =
|
||||
(const char * (__cdecl *)(const char *name))
|
||||
0x4261F0;
|
||||
|
||||
void (*printf)(const char* fmt,...) =
|
||||
(void (__cdecl *)(const char* fmt,...))
|
||||
0x425F30;
|
||||
|
||||
void (*errorf)(U32 type, const char* fmt,...)=
|
||||
(void (__cdecl *)(U32, const char*,...))
|
||||
0x425FB0;
|
||||
|
||||
}
|
||||
|
||||
int (*dSscanf)(const char *buffer, const char *format, ...) =
|
||||
(int (__cdecl *)(const char *,const char *,...))
|
||||
0x55b640;
|
||||
|
||||
int (*dSprintf)(char *buffer, dsize_t bufferSize, const char *format, ...) =
|
||||
(int (__cdecl *)(char *,dsize_t,const char *,...))
|
||||
0x55b5e0;
|
||||
|
||||
bool (*dAtob)(const char *str) =
|
||||
(bool (__cdecl *)(const char *str))
|
||||
0x55B490;
|
||||
109
Mod Sources/RandomMod/BaseMod/t2api.h
Normal file
109
Mod Sources/RandomMod/BaseMod/t2api.h
Normal file
|
|
@ -0,0 +1,109 @@
|
|||
#pragma once
|
||||
|
||||
void initT2Api();
|
||||
|
||||
|
||||
//api stuff
|
||||
|
||||
typedef unsigned int U32;
|
||||
typedef int S32;
|
||||
typedef float F32;
|
||||
|
||||
typedef unsigned int dsize_t;
|
||||
|
||||
//for addvariable
|
||||
#define TypeS32 1
|
||||
#define TypeBool 3
|
||||
#define TypeF32 5
|
||||
|
||||
|
||||
//dshit
|
||||
inline dsize_t dStrlen(const char *str)
|
||||
{
|
||||
return (dsize_t)strlen(str);
|
||||
}
|
||||
|
||||
class Namespace {
|
||||
const char* mName;
|
||||
};
|
||||
|
||||
|
||||
|
||||
class SimObject{
|
||||
SimObject* group;
|
||||
const char* objectName; //04h: objectName
|
||||
SimObject* nextNameObject; //8
|
||||
SimObject* nextManagerNameObject; //c
|
||||
SimObject* nextIdObject; //10h: nextIdObject
|
||||
U32 stuff; //14
|
||||
U32 mFlags; //18h
|
||||
U32 mNotifyList; //actually a pointer
|
||||
U32 mId; //20h: mId
|
||||
//more stuff
|
||||
};
|
||||
|
||||
class SimIdDictionary
|
||||
{
|
||||
enum
|
||||
{
|
||||
DefaultTableSize = 4096,
|
||||
TableBitMask = 4095
|
||||
};
|
||||
SimObject *table[DefaultTableSize];
|
||||
};
|
||||
extern SimIdDictionary* gIdDictionary;
|
||||
|
||||
class Point3F
|
||||
{
|
||||
public:
|
||||
F32 x;
|
||||
F32 y;
|
||||
F32 z;
|
||||
};
|
||||
|
||||
|
||||
//GuiTSCtrl
|
||||
class GuiTSCtrl {};
|
||||
class HoverVehicle {};
|
||||
void GuiTSCtrl_project(GuiTSCtrl *obj, const Point3F &pt, Point3F *dest); //fake
|
||||
|
||||
|
||||
namespace Sim {
|
||||
extern SimObject* (*findObject)(U32 id);
|
||||
}
|
||||
|
||||
|
||||
//console
|
||||
|
||||
typedef const char * (*StringCallback)(SimObject *obj, S32 argc, const char *argv[]);
|
||||
typedef S32 (*IntCallback)(SimObject *obj, S32 argc, const char *argv[]);
|
||||
typedef F32 (*FloatCallback)(SimObject *obj, S32 argc, const char *argv[]);
|
||||
typedef void (*VoidCallback)(SimObject *obj, S32 argc, const char *argv[]);
|
||||
typedef bool (*BoolCallback)(SimObject *obj, S32 argc, const char *argv[]);
|
||||
|
||||
|
||||
extern void (*someTest)(void);
|
||||
//functions
|
||||
namespace Con{
|
||||
|
||||
extern char * (*getReturnBuffer)(U32 bufferSize);
|
||||
|
||||
extern void (*addMethodB)(const char *nsName, const char *name, BoolCallback cb, const char *usage, S32 minArgs, S32 maxArgs);
|
||||
extern void (*addMethodS)(const char *nsName, const char *name, StringCallback cb, const char *usage, S32 minArgs, S32 maxArgs);
|
||||
|
||||
extern bool (*addVariable)(const char *name, S32 t, void *dp);
|
||||
|
||||
extern void (*printf)(const char* fmt,...);
|
||||
extern void (*errorf)(U32 type, const char* fmt,...);
|
||||
|
||||
extern const char * (*getVariable)(const char *name);
|
||||
extern const char * (*execute)(S32 argc, const char *argv[]);
|
||||
extern const char * (*executef)(S32 argc, ...);
|
||||
extern const char * (*executem)(SimObject *object, S32 argc, const char *argv[]);
|
||||
extern const char * (*evaluate)(const char* string, bool echo, const char *fileName, bool cf);
|
||||
}
|
||||
|
||||
//d-util
|
||||
extern int (*dSscanf)(const char *buffer, const char *format, ...);
|
||||
extern int (*dSprintf)(char *buffer, dsize_t bufferSize, const char *format, ...);
|
||||
extern bool (*dAtob)(const char *str);
|
||||
8
Mod Sources/RandomMod/BaseMod/targetver.h
Normal file
8
Mod Sources/RandomMod/BaseMod/targetver.h
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
#pragma once
|
||||
|
||||
// Including SDKDDKVer.h defines the highest available Windows platform.
|
||||
|
||||
// If you wish to build your application for a previous Windows platform, include WinSDKVer.h and
|
||||
// set the _WIN32_WINNT macro to the platform you wish to support before including SDKDDKVer.h.
|
||||
|
||||
#include <SDKDDKVer.h>
|
||||
20
Mod Sources/RandomMod/RandomMod.sln
Normal file
20
Mod Sources/RandomMod/RandomMod.sln
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
|
||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
||||
# Visual C++ Express 2010
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "BaseMod", "BaseMod\BaseMod.vcxproj", "{2A498B2D-84B2-4BBF-9532-EA17E5BA51BB}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Win32 = Debug|Win32
|
||||
Release|Win32 = Release|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{2A498B2D-84B2-4BBF-9532-EA17E5BA51BB}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{2A498B2D-84B2-4BBF-9532-EA17E5BA51BB}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{2A498B2D-84B2-4BBF-9532-EA17E5BA51BB}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{2A498B2D-84B2-4BBF-9532-EA17E5BA51BB}.Release|Win32.Build.0 = Release|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
BIN
Mod Sources/RandomMod/RandomMod.suo
Normal file
BIN
Mod Sources/RandomMod/RandomMod.suo
Normal file
Binary file not shown.
20
Mod Sources/TSExtension/BaseMod.sln
Normal file
20
Mod Sources/TSExtension/BaseMod.sln
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
|
||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
||||
# Visual C++ Express 2010
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "BaseMod", "BaseMod\BaseMod.vcxproj", "{2A498B2D-84B2-4BBF-9532-EA17E5BA51BB}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Win32 = Debug|Win32
|
||||
Release|Win32 = Release|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{2A498B2D-84B2-4BBF-9532-EA17E5BA51BB}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{2A498B2D-84B2-4BBF-9532-EA17E5BA51BB}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{2A498B2D-84B2-4BBF-9532-EA17E5BA51BB}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{2A498B2D-84B2-4BBF-9532-EA17E5BA51BB}.Release|Win32.Build.0 = Release|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
BIN
Mod Sources/TSExtension/BaseMod.suo
Normal file
BIN
Mod Sources/TSExtension/BaseMod.suo
Normal file
Binary file not shown.
22
Mod Sources/TSExtension/BaseMod/BaseMod.cpp
Normal file
22
Mod Sources/TSExtension/BaseMod/BaseMod.cpp
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
// BaseMod.cpp : Defines the exported functions for the DLL application.
|
||||
//
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "BaseMod.h"
|
||||
|
||||
#include "DXAPI.h"
|
||||
#include "LinkerAPI.h"
|
||||
|
||||
#include "DXConCmds.h"
|
||||
|
||||
extern "C"
|
||||
{
|
||||
BASEMOD_API void ModInitialize(void)
|
||||
{
|
||||
Con::addMethodB("Player", "isjumping", &conPlayerGetJumpingState,"Returns whether or not the player is jumping", 2, 2);
|
||||
Con::addMethodB("Player", "isjetting", &conPlayerGetJettingState,"Returns whether or not the player is jetting", 2, 2);
|
||||
|
||||
Con::addMethodB("GrenadeProjectile", "explode", &conProjectileExplode,"Explodes the given projectile", 5, 5);
|
||||
Con::addMethodB("Projectile", "explode", &conProjectileExplode,"Explodes the given projectile", 5, 5);
|
||||
}
|
||||
}
|
||||
8
Mod Sources/TSExtension/BaseMod/BaseMod.h
Normal file
8
Mod Sources/TSExtension/BaseMod/BaseMod.h
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
// The following ifdef block is the standard way of creating macros which make exporting
|
||||
// from a DLL simpler. All files within this DLL are compiled with the BASEMOD_EXPORTS
|
||||
// symbol defined on the command line. This symbol should not be defined on any project
|
||||
// that uses this DLL. This way any other project whose source files include this file see
|
||||
// BASEMOD_API functions as being imported from a DLL, whereas this DLL sees symbols
|
||||
// defined with this macro as being exported.
|
||||
|
||||
#define BASEMOD_API __declspec( dllexport )
|
||||
106
Mod Sources/TSExtension/BaseMod/BaseMod.vcxproj
Normal file
106
Mod Sources/TSExtension/BaseMod/BaseMod.vcxproj
Normal file
|
|
@ -0,0 +1,106 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{2A498B2D-84B2-4BBF-9532-EA17E5BA51BB}</ProjectGuid>
|
||||
<Keyword>Win32Proj</Keyword>
|
||||
<RootNamespace>BaseMod</RootNamespace>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<LinkIncremental>true</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;BASEMOD_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<ClCompile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;BASEMOD_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<None Include="ReadMe.txt" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="BaseMod.h" />
|
||||
<ClInclude Include="DXAPI.h" />
|
||||
<ClInclude Include="DXConCmds.h" />
|
||||
<ClInclude Include="LinkerAPI.h" />
|
||||
<ClInclude Include="stdafx.h" />
|
||||
<ClInclude Include="targetver.h" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="BaseMod.cpp" />
|
||||
<ClCompile Include="dllmain.cpp">
|
||||
<CompileAsManaged Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</CompileAsManaged>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
</PrecompiledHeader>
|
||||
<CompileAsManaged Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</CompileAsManaged>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
</PrecompiledHeader>
|
||||
</ClCompile>
|
||||
<ClCompile Include="DXAPI.cpp" />
|
||||
<ClCompile Include="DXConCmds.cpp" />
|
||||
<ClCompile Include="LinkerAPI.cpp" />
|
||||
<ClCompile Include="stdafx.cpp">
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Create</PrecompiledHeader>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
</Project>
|
||||
60
Mod Sources/TSExtension/BaseMod/BaseMod.vcxproj.filters
Normal file
60
Mod Sources/TSExtension/BaseMod/BaseMod.vcxproj.filters
Normal file
|
|
@ -0,0 +1,60 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Header Files">
|
||||
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
|
||||
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Resource Files">
|
||||
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
|
||||
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="ReadMe.txt" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="stdafx.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="targetver.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="BaseMod.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="DXConCmds.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="LinkerAPI.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="DXAPI.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="stdafx.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="BaseMod.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="dllmain.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="DXAPI.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="DXConCmds.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="LinkerAPI.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
3
Mod Sources/TSExtension/BaseMod/BaseMod.vcxproj.user
Normal file
3
Mod Sources/TSExtension/BaseMod/BaseMod.vcxproj.user
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
</Project>
|
||||
90
Mod Sources/TSExtension/BaseMod/DXAPI.cpp
Normal file
90
Mod Sources/TSExtension/BaseMod/DXAPI.cpp
Normal file
|
|
@ -0,0 +1,90 @@
|
|||
/**
|
||||
* @file DXAPI.cpp
|
||||
* @brief The DXAPI is an API that allows you to manipulate various game objects
|
||||
* in Tribes 2 from raw C++ code. It dynamically resolves the addresses of member
|
||||
* variables as you can't really trust the compiler to produce binary compatible classes,
|
||||
* especially with all the inheritance involved in the original Tribes 2 codebase.
|
||||
*
|
||||
* This code wouldn't be possible without Linker's original gift on the-construct.net forums,
|
||||
* whose files are appropriately labelled in this codebase. These files have been edited where
|
||||
* appropriate in order to make that code play better with the DXAPI.
|
||||
*
|
||||
* @copyright (c) 2014 Robert MacGregor
|
||||
*/
|
||||
|
||||
#include "DXAPI.h"
|
||||
#include "LinkerAPI.h"
|
||||
|
||||
namespace DX
|
||||
{
|
||||
Player GetPlayerPointer(UnresolvedObject obj)
|
||||
{
|
||||
// Probably some way to do all this via assembly but screw me if I know
|
||||
unsigned int base_tribes_pointer = (unsigned int)obj;
|
||||
|
||||
Player result =
|
||||
{
|
||||
0x00, // Object Name
|
||||
*(unsigned int*)(base_tribes_pointer + 32), // Object ID
|
||||
*(float*)(base_tribes_pointer + 168), // Position X
|
||||
*(float*)(base_tribes_pointer + 184), // Position Y
|
||||
*(float*)(base_tribes_pointer + 200), // Position Z
|
||||
*(bool*)(base_tribes_pointer + 735), // Jetting State
|
||||
*(bool*)(base_tribes_pointer + 734) // Jumping State
|
||||
};
|
||||
return result;
|
||||
}
|
||||
|
||||
StaticShape GetStaticShapePointer(UnresolvedObject obj)
|
||||
{
|
||||
unsigned int base_tribes_pointer = (unsigned int)obj;
|
||||
|
||||
StaticShape result =
|
||||
{
|
||||
0x00, // Object Name
|
||||
*(float*)(base_tribes_pointer + 200), // Position X
|
||||
*(float*)(base_tribes_pointer + 200), // Position Y
|
||||
*(float*)(base_tribes_pointer + 200) // Position Z
|
||||
};
|
||||
return result;
|
||||
}
|
||||
|
||||
SimGroup GetSimGroupPointer(UnresolvedObject obj)
|
||||
{
|
||||
unsigned int base_tribes_pointer = (unsigned int)obj;
|
||||
|
||||
SimGroup result =
|
||||
{
|
||||
|
||||
};
|
||||
return result;
|
||||
}
|
||||
|
||||
FlyingVehicle GetFlyingVehiclePointer(UnresolvedObject obj)
|
||||
{
|
||||
unsigned int base_tribes_pointer = (unsigned int)obj;
|
||||
|
||||
FlyingVehicle result =
|
||||
{
|
||||
*(float*)(base_tribes_pointer + 2200), // Strafing Status
|
||||
};
|
||||
return result;
|
||||
}
|
||||
|
||||
void Projectile_explode(Projectile *obj, const Point3F &position, const Point3F &normal, const unsigned int collideType)
|
||||
{
|
||||
typedef void (__cdecl *explodeFunc)(const Point3F &position, const Point3F &normal, const unsigned int collideType);
|
||||
static explodeFunc function_call = (explodeFunc)0x62DC30;
|
||||
|
||||
__asm {
|
||||
push collideType;
|
||||
push normal;
|
||||
push position;
|
||||
mov ecx,obj;
|
||||
lea eax, function_call;
|
||||
mov eax, [eax];
|
||||
call eax;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
107
Mod Sources/TSExtension/BaseMod/DXAPI.h
Normal file
107
Mod Sources/TSExtension/BaseMod/DXAPI.h
Normal file
|
|
@ -0,0 +1,107 @@
|
|||
/**
|
||||
* @file DXAPI.h
|
||||
* @brief The DXAPI is an API that allows you to manipulate various game objects
|
||||
* in Tribes 2 from raw C++ code. It dynamically resolves the addresses of member
|
||||
* variables as you can't really trust the compiler to produce binary compatible classes,
|
||||
* especially with all the inheritance involved in the original Tribes 2 codebase.
|
||||
*
|
||||
* This code wouldn't be possible without Linker's original gift on the-construct.net forums,
|
||||
* whose files are appropriately labelled in this codebase. These files have been edited where
|
||||
* appropriate in order to make that code play better with the DXAPI.
|
||||
*
|
||||
* @copyright (c) 2014 Robert MacGregor
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "LinkerAPI.h"
|
||||
|
||||
namespace DX
|
||||
{
|
||||
//! A typedef referring to some type of unresolved object in the game.
|
||||
typedef void* UnresolvedObject;
|
||||
|
||||
class Projectile {};
|
||||
|
||||
//! Structure representing a player object in the game.
|
||||
typedef struct
|
||||
{
|
||||
//! Object Name
|
||||
const char *name;
|
||||
//! Object ID
|
||||
const unsigned int &id;
|
||||
|
||||
//! X Coordinate of the position.
|
||||
float &position_x;
|
||||
//! Y Coordinate of the position.
|
||||
float &position_y;
|
||||
//! Z Coordinate of the position.
|
||||
float &position_z;
|
||||
|
||||
//! Player Object Jetting State (readonly, writing it doesn't do anything)
|
||||
const bool &is_jetting;
|
||||
//! Player Object Jumping State (readonly, writing it doesn't do anything)
|
||||
const bool &is_jumping;
|
||||
} Player;
|
||||
|
||||
/**
|
||||
* @brief Returns a usable Player structure from a void
|
||||
* pointer.
|
||||
* @param obj A void pointer to attempt to resolve from.
|
||||
* @return A usable Player structure to manipulate.
|
||||
*/
|
||||
Player GetPlayerPointer(UnresolvedObject obj);
|
||||
|
||||
//! Structure representing a static shape in the game.
|
||||
typedef struct
|
||||
{
|
||||
//! Object Name
|
||||
const char *name;
|
||||
//! X Coordinate of the position.
|
||||
float &position_x;
|
||||
//! Y Coordinate of the position.
|
||||
float &position_y;
|
||||
//! Z Coordinate of the position.
|
||||
float &position_z;
|
||||
} StaticShape;
|
||||
|
||||
/**
|
||||
* @brief Returns a usable StaticShape structure from a void
|
||||
* pointer.
|
||||
* @param obj A void pointer to attempt to resolve from.
|
||||
* @return A usable StaticShape structure to manipulate.
|
||||
*/
|
||||
StaticShape GetStaticShapePointer(UnresolvedObject obj);
|
||||
|
||||
//! Structure representing a SimGroup in the game.
|
||||
typedef struct
|
||||
{
|
||||
|
||||
} SimGroup;
|
||||
|
||||
/**
|
||||
* @brief Returns a usable SimGroup structure from a void
|
||||
* pointer.
|
||||
* @param obj A void pointer to attempt to resolve from.
|
||||
* @return A usable SimGroup structure to manipulate.
|
||||
*/
|
||||
SimGroup GetSimGroupPointer(UnresolvedObject obj);
|
||||
|
||||
|
||||
//! Structure representing a FlyingVehicle in the game.
|
||||
typedef struct
|
||||
{
|
||||
//! Strafing State. 0=Not Strafing. -1=Strafing Left. 1=Strafing Right (readonly, writing it doesn't do anything)
|
||||
const float &strafing_state;
|
||||
} FlyingVehicle;
|
||||
|
||||
/**
|
||||
* @brief Returns a usable FlyingVehicle structure from a void
|
||||
* pointer.
|
||||
* @param obj A void pointer to attempt to resolve from.
|
||||
* @return A usable FlyingVehicle structure to manipulate.
|
||||
*/
|
||||
FlyingVehicle GetFlyingVehiclePointer(UnresolvedObject obj);
|
||||
|
||||
void Projectile_explode(Projectile *obj, const Point3F &position, const Point3F &normal, const unsigned int collideType);
|
||||
}
|
||||
58
Mod Sources/TSExtension/BaseMod/DXConCmds.cpp
Normal file
58
Mod Sources/TSExtension/BaseMod/DXConCmds.cpp
Normal file
|
|
@ -0,0 +1,58 @@
|
|||
/**
|
||||
*
|
||||
*/
|
||||
|
||||
#include "LinkerAPI.h"
|
||||
#include "DXAPI.h"
|
||||
|
||||
const char *conGetAddress(SimObject *obj, S32 argc, const char *argv[])
|
||||
{
|
||||
// Hmm...
|
||||
char result[256];
|
||||
sprintf(result, "%x", obj);
|
||||
return result;
|
||||
}
|
||||
|
||||
const char *conPlayerSetZ(SimObject *obj, S32 argc, const char *argv[])
|
||||
{
|
||||
DX::Player test = DX::GetPlayerPointer(obj);
|
||||
test.position_y = 100;
|
||||
test.position_z = 300;
|
||||
test.position_x = 500;
|
||||
|
||||
char result[256];
|
||||
sprintf(result, "LOL");
|
||||
return result;
|
||||
}
|
||||
|
||||
bool conPlayerGetJumpingState(SimObject *obj, S32 argc, const char* argv[])
|
||||
{
|
||||
DX::Player operand = DX::GetPlayerPointer(obj);
|
||||
|
||||
return operand.is_jumping;
|
||||
}
|
||||
|
||||
bool conPlayerGetJettingState(SimObject *obj, S32 argc, const char* argv[])
|
||||
{
|
||||
DX::Player operand = DX::GetPlayerPointer(obj);
|
||||
|
||||
return operand.is_jetting;
|
||||
}
|
||||
|
||||
bool conProjectileExplode(SimObject *obj, S32 argc, const char* argv[])
|
||||
{
|
||||
Point3F position;
|
||||
position.x = 0;
|
||||
position.y = 0;
|
||||
position.z = 0;
|
||||
|
||||
Point3F normal;
|
||||
normal.x = 0;
|
||||
normal.y = 0;
|
||||
normal.z = 0;
|
||||
|
||||
unsigned int collideType = atoi(argv[4]);
|
||||
DX::Projectile_explode((DX::Projectile*)obj, position, normal, collideType);
|
||||
|
||||
return true;
|
||||
}
|
||||
29
Mod Sources/TSExtension/BaseMod/DXConCmds.h
Normal file
29
Mod Sources/TSExtension/BaseMod/DXConCmds.h
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
/**
|
||||
* @brief The DXAPI is an API that allows you to manipulate various game objects
|
||||
* in Tribes 2 from raw C++ code. It dynamically resolves the addresses of member
|
||||
* variables as you can't really trust the compiler to produce binary compatible classes,
|
||||
* especially with all the inheritance involved in the original Tribes 2 codebase.
|
||||
*
|
||||
* This code wouldn't be possible without Linker's original gift on the-construct.net forums,
|
||||
* whose files are appropriately labeled in this codebase.
|
||||
*
|
||||
* @copyright (c) 2014 Robert MacGregor
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "LinkerAPI.h"
|
||||
|
||||
// Returns the address of an object in memory
|
||||
const char* conGetAddress(SimObject *obj, S32 argc, const char *argv[]);
|
||||
|
||||
// Player Commands -----------------------------------
|
||||
bool conPlayerGetJumpingState(SimObject *obj, S32 argc, const char* argv[]);
|
||||
bool conPlayerGetJettingState(SimObject *obj, S32 argc, const char* argv[]);
|
||||
|
||||
// Projectile explode
|
||||
bool conProjectileExplode(SimObject *obj, S32 argc, const char* argv[]);
|
||||
|
||||
// Tests Position Z
|
||||
const char *conPlayerSetZ(SimObject *obj, S32 argc, const char *argv[]);
|
||||
86
Mod Sources/TSExtension/BaseMod/LinkerAPI.cpp
Normal file
86
Mod Sources/TSExtension/BaseMod/LinkerAPI.cpp
Normal file
|
|
@ -0,0 +1,86 @@
|
|||
#include "LinkerAPI.h"
|
||||
|
||||
SimIdDictionary* gIdDictionary = reinterpret_cast<SimIdDictionary*>(0x009E9194);
|
||||
|
||||
//439550
|
||||
namespace Sim {
|
||||
SimObject* (*findObject)(U32 id) =
|
||||
(SimObject* (_cdecl *)(U32 id) )
|
||||
0x439550;
|
||||
}
|
||||
|
||||
//hackey way to do member functions, ....
|
||||
void GuiTSCtrl_project(GuiTSCtrl *obj, const Point3F &pt, Point3F *dest) {
|
||||
typedef void (__cdecl *projFunc)(const Point3F &pt, Point3F *dest);
|
||||
static projFunc p = (projFunc)0x4d0b40;
|
||||
|
||||
__asm {
|
||||
push dest;
|
||||
push pt;
|
||||
mov ecx,obj;
|
||||
lea eax, p;
|
||||
mov eax, [eax];
|
||||
call eax;
|
||||
}
|
||||
}
|
||||
|
||||
namespace Con
|
||||
{
|
||||
|
||||
char* (*getReturnBuffer)(U32 bufferSize) =
|
||||
(char *(__cdecl *)(U32))
|
||||
0x42caa0;
|
||||
|
||||
void (*addMethodB)(const char *nsName, const char *name, BoolCallback cb, const char *usage, S32 minArgs, S32 maxArgs) =
|
||||
(void (__cdecl *)(const char *, const char *,BoolCallback,const char *,S32,S32))
|
||||
0x426510;
|
||||
|
||||
void (*addMethodS)(const char *, const char *,StringCallback, const char *, S32, S32) =
|
||||
(void (__cdecl *)(const char *,const char *,StringCallback,const char *,S32,S32))
|
||||
0x426410;
|
||||
|
||||
bool (*addVariable)(const char *name, S32 t, void *dp) =
|
||||
(bool (__cdecl *)(const char *name, S32 t, void *dp))
|
||||
0x4263B0;
|
||||
|
||||
const char * (*execute)(S32 argc, const char *argv[]) =
|
||||
(const char * (__cdecl *)(S32 argc, const char *argv[]))
|
||||
0x4267A0;
|
||||
|
||||
const char * (*executef)(S32 argc, ...) =
|
||||
(const char * (__cdecl *)(S32 argc, ...))
|
||||
0x4269E0;
|
||||
|
||||
const char * (*evaluate)(const char* string, bool echo, const char *fileName, bool cf) =
|
||||
(const char * (__cdecl *)(const char* string, bool echo, const char *fileName, bool cf))
|
||||
0x426690;
|
||||
|
||||
const char * (*executem)(SimObject *object, S32 argc, const char *argv[]) =
|
||||
(const char * (__cdecl *)(SimObject *object, S32 argc, const char *argv[]))
|
||||
0x426800;
|
||||
|
||||
const char * (*getVariable)(const char *name) =
|
||||
(const char * (__cdecl *)(const char *name))
|
||||
0x4261F0;
|
||||
|
||||
void (*printf)(const char* fmt,...) =
|
||||
(void (__cdecl *)(const char* fmt,...))
|
||||
0x425F30;
|
||||
|
||||
void (*errorf)(U32 type, const char* fmt,...)=
|
||||
(void (__cdecl *)(U32, const char*,...))
|
||||
0x425FB0;
|
||||
|
||||
}
|
||||
|
||||
int (*dSscanf)(const char *buffer, const char *format, ...) =
|
||||
(int (__cdecl *)(const char *,const char *,...))
|
||||
0x55b640;
|
||||
|
||||
int (*dSprintf)(char *buffer, dsize_t bufferSize, const char *format, ...) =
|
||||
(int (__cdecl *)(char *,dsize_t,const char *,...))
|
||||
0x55b5e0;
|
||||
|
||||
bool (*dAtob)(const char *str) =
|
||||
(bool (__cdecl *)(const char *str))
|
||||
0x55B490;
|
||||
119
Mod Sources/TSExtension/BaseMod/LinkerAPI.h
Normal file
119
Mod Sources/TSExtension/BaseMod/LinkerAPI.h
Normal file
|
|
@ -0,0 +1,119 @@
|
|||
// Linker's Tribes 2 API
|
||||
|
||||
#pragma once
|
||||
|
||||
//api stuff
|
||||
|
||||
typedef unsigned int U32;
|
||||
typedef int S32;
|
||||
typedef float F32;
|
||||
|
||||
typedef unsigned int dsize_t;
|
||||
#include <string>
|
||||
|
||||
//for addvariable
|
||||
#define TypeS32 1
|
||||
#define TypeBool 3
|
||||
#define TypeF32 5
|
||||
|
||||
//dshit
|
||||
inline dsize_t dStrlen(const char *str)
|
||||
{
|
||||
return (dsize_t)strlen(str);
|
||||
}
|
||||
|
||||
class Namespace
|
||||
{
|
||||
const char* mName;
|
||||
};
|
||||
|
||||
struct SimObject
|
||||
{
|
||||
SimObject* group;
|
||||
const char* objectName; //04h: objectName
|
||||
SimObject* nextNameObject; //8
|
||||
SimObject* nextManagerNameObject; //c
|
||||
SimObject* nextIdObject; //10h: nextIdObject
|
||||
U32 stuff; //14
|
||||
U32 mFlags; //18h
|
||||
U32 mNotifyList; //actually a pointer
|
||||
U32 mId; //20h: mId
|
||||
//more stuff
|
||||
};
|
||||
|
||||
class SimIdDictionary
|
||||
{
|
||||
enum
|
||||
{
|
||||
DefaultTableSize = 4096,
|
||||
TableBitMask = 4095
|
||||
};
|
||||
SimObject *table[DefaultTableSize];
|
||||
};
|
||||
extern SimIdDictionary* gIdDictionary;
|
||||
|
||||
class Point3F
|
||||
{
|
||||
public:
|
||||
Point3F(F32 *x, F32 *y, F32 *z)
|
||||
{
|
||||
this->x = x;
|
||||
this->y = y;
|
||||
this->z = z;
|
||||
}
|
||||
|
||||
Point3F(void)
|
||||
{
|
||||
this->x = 0;
|
||||
this->y = 0;
|
||||
this->z = 0;
|
||||
}
|
||||
|
||||
F32 *x;
|
||||
F32 *y;
|
||||
F32 *z;
|
||||
};
|
||||
|
||||
|
||||
//GuiTSCtrl
|
||||
class GuiTSCtrl {};
|
||||
void GuiTSCtrl_project(GuiTSCtrl *obj, const Point3F &pt, Point3F *dest); //fake
|
||||
|
||||
namespace Sim {
|
||||
extern SimObject* (*findObject)(U32 id);
|
||||
}
|
||||
|
||||
//console
|
||||
|
||||
typedef const char * (*StringCallback)(SimObject *obj, S32 argc, const char *argv[]);
|
||||
typedef S32 (*IntCallback)(SimObject *obj, S32 argc, const char *argv[]);
|
||||
typedef F32 (*FloatCallback)(SimObject *obj, S32 argc, const char *argv[]);
|
||||
typedef void (*VoidCallback)(SimObject *obj, S32 argc, const char *argv[]);
|
||||
typedef bool (*BoolCallback)(SimObject *obj, S32 argc, const char *argv[]);
|
||||
|
||||
|
||||
//functions
|
||||
namespace Con
|
||||
{
|
||||
|
||||
extern char * (*getReturnBuffer)(U32 bufferSize);
|
||||
|
||||
extern void (*addMethodB)(const char *nsName, const char *name, BoolCallback cb, const char *usage, S32 minArgs, S32 maxArgs);
|
||||
extern void (*addMethodS)(const char *nsName, const char *name, StringCallback cb, const char *usage, S32 minArgs, S32 maxArgs);
|
||||
|
||||
extern bool (*addVariable)(const char *name, S32 t, void *dp);
|
||||
|
||||
extern void (*printf)(const char* fmt,...);
|
||||
extern void (*errorf)(U32 type, const char* fmt,...);
|
||||
|
||||
extern const char * (*getVariable)(const char *name);
|
||||
extern const char * (*execute)(S32 argc, const char *argv[]);
|
||||
extern const char * (*executef)(S32 argc, ...);
|
||||
extern const char * (*executem)(SimObject *object, S32 argc, const char *argv[]);
|
||||
extern const char * (*evaluate)(const char* string, bool echo, const char *fileName, bool cf);
|
||||
}
|
||||
|
||||
//d-util
|
||||
extern int (*dSscanf)(const char *buffer, const char *format, ...);
|
||||
extern int (*dSprintf)(char *buffer, dsize_t bufferSize, const char *format, ...);
|
||||
extern bool (*dAtob)(const char *str);
|
||||
40
Mod Sources/TSExtension/BaseMod/ReadMe.txt
Normal file
40
Mod Sources/TSExtension/BaseMod/ReadMe.txt
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
========================================================================
|
||||
DYNAMIC LINK LIBRARY : BaseMod Project Overview
|
||||
========================================================================
|
||||
|
||||
AppWizard has created this BaseMod DLL for you.
|
||||
|
||||
This file contains a summary of what you will find in each of the files that
|
||||
make up your BaseMod application.
|
||||
|
||||
|
||||
BaseMod.vcxproj
|
||||
This is the main project file for VC++ projects generated using an Application Wizard.
|
||||
It contains information about the version of Visual C++ that generated the file, and
|
||||
information about the platforms, configurations, and project features selected with the
|
||||
Application Wizard.
|
||||
|
||||
BaseMod.vcxproj.filters
|
||||
This is the filters file for VC++ projects generated using an Application Wizard.
|
||||
It contains information about the association between the files in your project
|
||||
and the filters. This association is used in the IDE to show grouping of files with
|
||||
similar extensions under a specific node (for e.g. ".cpp" files are associated with the
|
||||
"Source Files" filter).
|
||||
|
||||
BaseMod.cpp
|
||||
This is the main DLL source file.
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
Other standard files:
|
||||
|
||||
StdAfx.h, StdAfx.cpp
|
||||
These files are used to build a precompiled header (PCH) file
|
||||
named BaseMod.pch and a precompiled types file named StdAfx.obj.
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
Other notes:
|
||||
|
||||
AppWizard uses "TODO:" comments to indicate parts of the source code you
|
||||
should add to or customize.
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
|
@ -0,0 +1,31 @@
|
|||
C:\USERS\ROBERT MACGREGOR\DESKTOP\BASEMOD\BASEMOD\RELEASE\BASEMOD.DLL.INTERMEDIATE.MANIFEST
|
||||
C:\USERS\ROBERT MACGREGOR\DESKTOP\BASEMOD\BASEMOD\RELEASE\BASEMOD.OBJ
|
||||
C:\USERS\ROBERT MACGREGOR\DESKTOP\BASEMOD\BASEMOD\RELEASE\BASEMOD.PCH
|
||||
C:\USERS\ROBERT MACGREGOR\DESKTOP\BASEMOD\BASEMOD\RELEASE\DLLMAIN.OBJ
|
||||
C:\USERS\ROBERT MACGREGOR\DESKTOP\BASEMOD\BASEMOD\RELEASE\STDAFX.OBJ
|
||||
C:\USERS\ROBERT MACGREGOR\DESKTOP\BASEMOD\BASEMOD\RELEASE\VC100.PDB
|
||||
C:\USERS\ROBERT MACGREGOR\DESKTOP\BASEMOD\RELEASE\BASEMOD.DLL
|
||||
C:\Users\Robert MacGregor\Desktop\BaseMod\Release\BaseMod.exp
|
||||
C:\Users\Robert MacGregor\Desktop\BaseMod\Release\BaseMod.lib
|
||||
C:\USERS\ROBERT MACGREGOR\DESKTOP\BASEMOD\RELEASE\BASEMOD.PDB
|
||||
C:\USERS\ROBERT MACGREGOR\DESKTOP\TSEXTENSION\BASEMOD\RELEASE\BASEMOD.DLL.INTERMEDIATE.MANIFEST
|
||||
C:\USERS\ROBERT MACGREGOR\DESKTOP\TSEXTENSION\BASEMOD\RELEASE\BASEMOD.OBJ
|
||||
C:\USERS\ROBERT MACGREGOR\DESKTOP\TSEXTENSION\BASEMOD\RELEASE\BASEMOD.PCH
|
||||
C:\Users\Robert MacGregor\Desktop\TSExtension\BaseMod\Release\BaseMod.vcxprojResolveAssemblyReference.cache
|
||||
C:\Users\Robert MacGregor\Desktop\TSExtension\BaseMod\Release\BaseMod.write.1.tlog
|
||||
C:\Users\Robert MacGregor\Desktop\TSExtension\BaseMod\Release\cl.command.1.tlog
|
||||
C:\Users\Robert MacGregor\Desktop\TSExtension\BaseMod\Release\CL.read.1.tlog
|
||||
C:\Users\Robert MacGregor\Desktop\TSExtension\BaseMod\Release\CL.write.1.tlog
|
||||
C:\USERS\ROBERT MACGREGOR\DESKTOP\TSEXTENSION\BASEMOD\RELEASE\DLLMAIN.OBJ
|
||||
C:\Users\Robert MacGregor\Desktop\TSExtension\BaseMod\Release\link.command.1.tlog
|
||||
C:\Users\Robert MacGregor\Desktop\TSExtension\BaseMod\Release\link.read.1.tlog
|
||||
C:\Users\Robert MacGregor\Desktop\TSExtension\BaseMod\Release\link.write.1.tlog
|
||||
C:\Users\Robert MacGregor\Desktop\TSExtension\BaseMod\Release\mt.command.1.tlog
|
||||
C:\Users\Robert MacGregor\Desktop\TSExtension\BaseMod\Release\mt.read.1.tlog
|
||||
C:\Users\Robert MacGregor\Desktop\TSExtension\BaseMod\Release\mt.write.1.tlog
|
||||
C:\USERS\ROBERT MACGREGOR\DESKTOP\TSEXTENSION\BASEMOD\RELEASE\STDAFX.OBJ
|
||||
C:\USERS\ROBERT MACGREGOR\DESKTOP\TSEXTENSION\BASEMOD\RELEASE\VC100.PDB
|
||||
C:\USERS\ROBERT MACGREGOR\DESKTOP\TSEXTENSION\RELEASE\BASEMOD.DLL
|
||||
C:\Users\Robert MacGregor\Desktop\TSExtension\Release\BaseMod.exp
|
||||
C:\Users\Robert MacGregor\Desktop\TSExtension\Release\BaseMod.lib
|
||||
C:\USERS\ROBERT MACGREGOR\DESKTOP\TSEXTENSION\RELEASE\BASEMOD.PDB
|
||||
|
|
@ -0,0 +1,10 @@
|
|||
<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
|
||||
<assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
|
||||
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
|
||||
<security>
|
||||
<requestedPrivileges>
|
||||
<requestedExecutionLevel level='asInvoker' uiAccess='false' />
|
||||
</requestedPrivileges>
|
||||
</security>
|
||||
</trustInfo>
|
||||
</assembly>
|
||||
|
|
@ -0,0 +1,2 @@
|
|||
#v4.0:v100
|
||||
Release|Win32|C:\Users\Robert MacGregor\Desktop\TSExtension\|
|
||||
38
Mod Sources/TSExtension/BaseMod/Release/BaseMod.log
Normal file
38
Mod Sources/TSExtension/BaseMod/Release/BaseMod.log
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
Build started 8/4/2014 9:12:36 PM.
|
||||
1>Project "C:\Users\Robert MacGregor\Desktop\TSExtension\BaseMod\BaseMod.vcxproj" on node 2 (build target(s)).
|
||||
1>InitializeBuildStatus:
|
||||
Touching "Release\BaseMod.unsuccessfulbuild".
|
||||
ClCompile:
|
||||
All outputs are up-to-date.
|
||||
C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\CL.exe /c /Zi /nologo /W3 /WX- /O2 /Oi /Oy- /GL /D WIN32 /D NDEBUG /D _WINDOWS /D _USRDLL /D BASEMOD_EXPORTS /D _WINDLL /D _UNICODE /D UNICODE /Gm- /EHsc /MD /GS /Gy /fp:precise /Zc:wchar_t /Zc:forScope /Fo"Release\\" /Fd"Release\vc100.pdb" /Gd /TP /analyze- /errorReport:prompt BaseMod.cpp DXAPI.cpp DXConCmds.cpp
|
||||
BaseMod.cpp
|
||||
DXAPI.cpp
|
||||
DXConCmds.cpp
|
||||
1>DXConCmds.cpp(12): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
|
||||
C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\stdio.h(371) : see declaration of 'sprintf'
|
||||
1>DXConCmds.cpp(13): warning C4172: returning address of local variable or temporary
|
||||
1>DXConCmds.cpp(24): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
|
||||
C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\stdio.h(371) : see declaration of 'sprintf'
|
||||
1>DXConCmds.cpp(25): warning C4172: returning address of local variable or temporary
|
||||
All outputs are up-to-date.
|
||||
Link:
|
||||
C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\link.exe /ERRORREPORT:PROMPT /OUT:"C:\Users\Robert MacGregor\Desktop\TSExtension\Release\BaseMod.dll" /INCREMENTAL:NO /NOLOGO kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /MANIFEST /ManifestFile:"Release\BaseMod.dll.intermediate.manifest" /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /DEBUG /PDB:"C:\Users\Robert MacGregor\Desktop\TSExtension\Release\BaseMod.pdb" /SUBSYSTEM:WINDOWS /OPT:REF /OPT:ICF /LTCG /TLBID:1 /DYNAMICBASE /NXCOMPAT /IMPLIB:"C:\Users\Robert MacGregor\Desktop\TSExtension\Release\BaseMod.lib" /MACHINE:X86 /DLL Release\BaseMod.obj
|
||||
Release\dllmain.obj
|
||||
Release\DXAPI.obj
|
||||
Release\DXConCmds.obj
|
||||
Release\LinkerAPI.obj
|
||||
Release\stdafx.obj
|
||||
Creating library C:\Users\Robert MacGregor\Desktop\TSExtension\Release\BaseMod.lib and object C:\Users\Robert MacGregor\Desktop\TSExtension\Release\BaseMod.exp
|
||||
Generating code
|
||||
Finished generating code
|
||||
BaseMod.vcxproj -> C:\Users\Robert MacGregor\Desktop\TSExtension\Release\BaseMod.dll
|
||||
Manifest:
|
||||
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\bin\mt.exe /nologo /verbose /outputresource:"C:\Users\Robert MacGregor\Desktop\TSExtension\Release\BaseMod.dll;#2" /manifest Release\BaseMod.dll.intermediate.manifest
|
||||
FinalizeBuildStatus:
|
||||
Deleting file "Release\BaseMod.unsuccessfulbuild".
|
||||
Touching "Release\BaseMod.lastbuildstate".
|
||||
1>Done Building Project "C:\Users\Robert MacGregor\Desktop\TSExtension\BaseMod\BaseMod.vcxproj" (build target(s)).
|
||||
|
||||
Build succeeded.
|
||||
|
||||
Time Elapsed 00:00:02.12
|
||||
BIN
Mod Sources/TSExtension/BaseMod/Release/BaseMod.pch
Normal file
BIN
Mod Sources/TSExtension/BaseMod/Release/BaseMod.pch
Normal file
Binary file not shown.
25
Mod Sources/TSExtension/BaseMod/Release/BaseMod.write.1.tlog
Normal file
25
Mod Sources/TSExtension/BaseMod/Release/BaseMod.write.1.tlog
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
^C:\Users\Robert MacGregor\Desktop\TSExtension\BaseMod\BaseMod.vcxproj
|
||||
C:\Users\Robert MacGregor\Desktop\TSExtension\Release\BaseMod.lib
|
||||
C:\Users\Robert MacGregor\Desktop\TSExtension\Release\BaseMod.lib
|
||||
C:\Users\Robert MacGregor\Desktop\TSExtension\Release\BaseMod.exp
|
||||
C:\Users\Robert MacGregor\Desktop\TSExtension\Release\BaseMod.exp
|
||||
^C:\Users\Robert MacGregor\Desktop\TSExtension\BaseMod\BaseMod.vcxproj
|
||||
C:\Users\Robert MacGregor\Desktop\TSExtension\Release\BaseMod.lib
|
||||
C:\Users\Robert MacGregor\Desktop\TSExtension\Release\BaseMod.lib
|
||||
C:\Users\Robert MacGregor\Desktop\TSExtension\Release\BaseMod.exp
|
||||
C:\Users\Robert MacGregor\Desktop\TSExtension\Release\BaseMod.exp
|
||||
^C:\Users\Robert MacGregor\Desktop\TSExtension\BaseMod\BaseMod.vcxproj
|
||||
C:\Users\Robert MacGregor\Desktop\TSExtension\Release\BaseMod.lib
|
||||
C:\Users\Robert MacGregor\Desktop\TSExtension\Release\BaseMod.lib
|
||||
C:\Users\Robert MacGregor\Desktop\TSExtension\Release\BaseMod.exp
|
||||
C:\Users\Robert MacGregor\Desktop\TSExtension\Release\BaseMod.exp
|
||||
^C:\Users\Robert MacGregor\Desktop\TSExtension\BaseMod\BaseMod.vcxproj
|
||||
C:\Users\Robert MacGregor\Desktop\TSExtension\Release\BaseMod.lib
|
||||
C:\Users\Robert MacGregor\Desktop\TSExtension\Release\BaseMod.lib
|
||||
C:\Users\Robert MacGregor\Desktop\TSExtension\Release\BaseMod.exp
|
||||
C:\Users\Robert MacGregor\Desktop\TSExtension\Release\BaseMod.exp
|
||||
^C:\Users\Robert MacGregor\Desktop\TSExtension\BaseMod\BaseMod.vcxproj
|
||||
C:\Users\Robert MacGregor\Desktop\TSExtension\Release\BaseMod.lib
|
||||
C:\Users\Robert MacGregor\Desktop\TSExtension\Release\BaseMod.lib
|
||||
C:\Users\Robert MacGregor\Desktop\TSExtension\Release\BaseMod.exp
|
||||
C:\Users\Robert MacGregor\Desktop\TSExtension\Release\BaseMod.exp
|
||||
BIN
Mod Sources/TSExtension/BaseMod/Release/CL.read.1.tlog
Normal file
BIN
Mod Sources/TSExtension/BaseMod/Release/CL.read.1.tlog
Normal file
Binary file not shown.
BIN
Mod Sources/TSExtension/BaseMod/Release/CL.write.1.tlog
Normal file
BIN
Mod Sources/TSExtension/BaseMod/Release/CL.write.1.tlog
Normal file
Binary file not shown.
BIN
Mod Sources/TSExtension/BaseMod/Release/cl.command.1.tlog
Normal file
BIN
Mod Sources/TSExtension/BaseMod/Release/cl.command.1.tlog
Normal file
Binary file not shown.
BIN
Mod Sources/TSExtension/BaseMod/Release/link.command.1.tlog
Normal file
BIN
Mod Sources/TSExtension/BaseMod/Release/link.command.1.tlog
Normal file
Binary file not shown.
BIN
Mod Sources/TSExtension/BaseMod/Release/link.read.1.tlog
Normal file
BIN
Mod Sources/TSExtension/BaseMod/Release/link.read.1.tlog
Normal file
Binary file not shown.
BIN
Mod Sources/TSExtension/BaseMod/Release/link.write.1.tlog
Normal file
BIN
Mod Sources/TSExtension/BaseMod/Release/link.write.1.tlog
Normal file
Binary file not shown.
BIN
Mod Sources/TSExtension/BaseMod/Release/mt.command.1.tlog
Normal file
BIN
Mod Sources/TSExtension/BaseMod/Release/mt.command.1.tlog
Normal file
Binary file not shown.
BIN
Mod Sources/TSExtension/BaseMod/Release/mt.read.1.tlog
Normal file
BIN
Mod Sources/TSExtension/BaseMod/Release/mt.read.1.tlog
Normal file
Binary file not shown.
BIN
Mod Sources/TSExtension/BaseMod/Release/mt.write.1.tlog
Normal file
BIN
Mod Sources/TSExtension/BaseMod/Release/mt.write.1.tlog
Normal file
Binary file not shown.
BIN
Mod Sources/TSExtension/BaseMod/Release/vc100.pdb
Normal file
BIN
Mod Sources/TSExtension/BaseMod/Release/vc100.pdb
Normal file
Binary file not shown.
19
Mod Sources/TSExtension/BaseMod/dllmain.cpp
Normal file
19
Mod Sources/TSExtension/BaseMod/dllmain.cpp
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
// dllmain.cpp : Defines the entry point for the DLL application.
|
||||
#include "stdafx.h"
|
||||
|
||||
BOOL APIENTRY DllMain( HMODULE hModule,
|
||||
DWORD ul_reason_for_call,
|
||||
LPVOID lpReserved
|
||||
)
|
||||
{
|
||||
switch (ul_reason_for_call)
|
||||
{
|
||||
case DLL_PROCESS_ATTACH:
|
||||
case DLL_THREAD_ATTACH:
|
||||
case DLL_THREAD_DETACH:
|
||||
case DLL_PROCESS_DETACH:
|
||||
break;
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
8
Mod Sources/TSExtension/BaseMod/stdafx.cpp
Normal file
8
Mod Sources/TSExtension/BaseMod/stdafx.cpp
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
// stdafx.cpp : source file that includes just the standard includes
|
||||
// BaseMod.pch will be the pre-compiled header
|
||||
// stdafx.obj will contain the pre-compiled type information
|
||||
|
||||
#include "stdafx.h"
|
||||
|
||||
// TODO: reference any additional headers you need in STDAFX.H
|
||||
// and not in this file
|
||||
12
Mod Sources/TSExtension/BaseMod/stdafx.h
Normal file
12
Mod Sources/TSExtension/BaseMod/stdafx.h
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
// stdafx.h : include file for standard system include files,
|
||||
// or project specific include files that are used frequently, but
|
||||
// are changed infrequently
|
||||
//
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "targetver.h"
|
||||
|
||||
#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers
|
||||
// Windows Header Files:
|
||||
#include <windows.h>
|
||||
8
Mod Sources/TSExtension/BaseMod/targetver.h
Normal file
8
Mod Sources/TSExtension/BaseMod/targetver.h
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
#pragma once
|
||||
|
||||
// Including SDKDDKVer.h defines the highest available Windows platform.
|
||||
|
||||
// If you wish to build your application for a previous Windows platform, include WinSDKVer.h and
|
||||
// set the _WIN32_WINNT macro to the platform you wish to support before including SDKDDKVer.h.
|
||||
|
||||
#include <SDKDDKVer.h>
|
||||
BIN
Mod Sources/TSExtension/Release/BaseMod.exp
Normal file
BIN
Mod Sources/TSExtension/Release/BaseMod.exp
Normal file
Binary file not shown.
BIN
Mod Sources/TSExtension/Release/BaseMod.pdb
Normal file
BIN
Mod Sources/TSExtension/Release/BaseMod.pdb
Normal file
Binary file not shown.
Binary file not shown.
1
ModLoader
Submodule
1
ModLoader
Submodule
|
|
@ -0,0 +1 @@
|
|||
Subproject commit 3e7e0a16cc1826031505b2d7a71e1dafa6624ca9
|
||||
Loading…
Reference in a new issue