Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
35 changes: 35 additions & 0 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: Build (Windows)

on:
push:
branches:
- "**"
pull_request:
branches:
- "**"

# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:

permissions:
contents: read

jobs:
build:
runs-on: windows-latest
steps:
- uses: ilammy/msvc-dev-cmd@v1
with:
arch: x86

- uses: actions/checkout@v5
with:
submodules: recursive

- name: Build AliceModLoader
run: msbuild /p:Platform=x86 /p:Configuration=Release

- uses: actions/upload-artifact@v4
with:
name: AliceModLoader
path: AliceModLoader/bin/Win32/Release/AliceModLoader.dll
1 change: 0 additions & 1 deletion AliceModLoader/AliceLoader.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,6 @@ void AliceLoader::IdentifyApp()
case EGame::episode1: // Sonic 4 Episode I (Retail)
{
printf("Game: Episode I\n\n");
AliceLoader::skipCodeModules = true;

printf("Setting internal resolution to %.fx%.f\n", AliceLoader::ep1Width, AliceLoader::ep1Height);
WRITE_MEMORY(ASLR(0x575C9C), float, AliceLoader::ep1Height);
Expand Down
28 changes: 14 additions & 14 deletions AliceModLoader/AliceModLoader.vcxproj
Original file line number Diff line number Diff line change
Expand Up @@ -29,26 +29,26 @@
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v142</PlatformToolset>
<PlatformToolset>v143</PlatformToolset>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v142</PlatformToolset>
<PlatformToolset>v143</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v142</PlatformToolset>
<PlatformToolset>v143</PlatformToolset>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v142</PlatformToolset>
<PlatformToolset>v143</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
Expand Down Expand Up @@ -104,26 +104,26 @@
<AdditionalDependencies>detours.lib;syelog.lib;shlwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>$(ProjectDir)..\SharedSrc\Detours\lib\x86</AdditionalLibraryDirectories>
</Link>
<PostBuildEvent>
<!-- <PostBuildEvent>
<Command>xcopy "$(ProjectDir)bin\$(Platform)\$(Configuration)\AliceModLoader.dll" "E:\Games\steamapps\common\Sonic the Hedgehog 4 - EP 2\d3d9.dll" /Y /D /F
xcopy "$(ProjectDir)bin\$(Platform)\$(Configuration)\AliceModLoader.dll" "E:\Games\steamapps\common\Sonic the Hedgehog 4 EP 1\d3d9.dll" /Y /D /F</Command>
</PostBuildEvent>
</PostBuildEvent> -->
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<SDLCheck>true</SDLCheck>
<ConformanceMode>true</ConformanceMode>
<AdditionalIncludeDirectories>$(ProjectDir)Dependencies\Detours\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AdditionalIncludeDirectories>$(ProjectDir)..\dependencies\Detours\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PrecompiledHeader>Use</PrecompiledHeader>
<PrecompiledHeaderFile>Pch.h</PrecompiledHeaderFile>
<ForcedIncludeFiles>Pch.h</ForcedIncludeFiles>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<AdditionalDependencies>detours.lib;syelog.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>$(ProjectDir)Dependencies\Detours\lib\x64</AdditionalLibraryDirectories>
<AdditionalDependencies>detours.lib;syelog.lib;shlwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>$(ProjectDir)..\dependencies\Detours\lib.X64</AdditionalLibraryDirectories>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
Expand All @@ -147,11 +147,11 @@ xcopy "$(ProjectDir)bin\$(Platform)\$(Configuration)\AliceModLoader.dll" "E:\Gam
<AdditionalDependencies>detours.lib;syelog.lib;shlwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>$(ProjectDir)..\SharedSrc\Detours\lib\x86</AdditionalLibraryDirectories>
</Link>
<PostBuildEvent>
<!-- <PostBuildEvent>
<Command>xcopy "$(ProjectDir)bin\$(Platform)\$(Configuration)\AliceModLoader.dll" "E:\Games\steamapps\common\Sonic the Hedgehog 4 - EP 2\d3d9.dll" /Y /D /F
xcopy "$(ProjectDir)bin\$(Platform)\$(Configuration)\AliceModLoader.dll" "E:\Games\steamapps\common\Sonic the Hedgehog 4 EP 1\d3d9.dll" /Y /D /F
xcopy "$(ProjectDir)bin\$(Platform)\$(Configuration)\AliceModLoader.dll" "$(SolutionDir)UpdateServer\d3d9.dll" /Y /D /F</Command>
</PostBuildEvent>
</PostBuildEvent> -->
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<ClCompile>
Expand All @@ -161,7 +161,7 @@ xcopy "$(ProjectDir)bin\$(Platform)\$(Configuration)\AliceModLoader.dll" "$(Solu
<IntrinsicFunctions>true</IntrinsicFunctions>
<SDLCheck>true</SDLCheck>
<ConformanceMode>true</ConformanceMode>
<AdditionalIncludeDirectories>$(ProjectDir)Dependencies\Detours\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AdditionalIncludeDirectories>$(ProjectDir)..\dependencies\Detours\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PrecompiledHeader>Use</PrecompiledHeader>
<PrecompiledHeaderFile>Pch.h</PrecompiledHeaderFile>
<ForcedIncludeFiles>Pch.h</ForcedIncludeFiles>
Expand All @@ -170,8 +170,8 @@ xcopy "$(ProjectDir)bin\$(Platform)\$(Configuration)\AliceModLoader.dll" "$(Solu
<SubSystem>Console</SubSystem>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<AdditionalDependencies>detours.lib;syelog.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>$(ProjectDir)Dependencies\Detours\lib\x64</AdditionalLibraryDirectories>
<AdditionalDependencies>detours.lib;syelog.lib;shlwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>$(ProjectDir)..\dependencies\Detours\lib.X64</AdditionalLibraryDirectories>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
Expand Down
12 changes: 12 additions & 0 deletions README.md
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Typically this was just compiled directly through Visual Studio, so that should still hold true.

Also, I did some investigation and found that my repositories are missing the binaries detours requires... not sure if I did that intentionally or not. I'll address that soon by linking in my DLLShared repository as a submodule.

Might be a good idea to hold off including build instructions, at least in this PR. Those can be added once there's a finalized solution.

Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# To build

Note: I haven't figured out how to compile Detours on your local machine, so I took the built binaries from their GitHub. But the instructions should be as follows:

```sh
1. cd ./dependencies/Detours
2. set DETOURS_TARGET_PROCESSOR=x86
3. set DETOURS_CONFIG=Debug #or Release
3. nmake
4. cd ../..
5. msbuild /p:Platform=x86
```