Skip to content

Commit 06b1a41

Browse files
authored
Merge pull request #117 from Malkierian/dutchman-develop-1-23
Dutchman Charlie -> Develop
2 parents 4d1ec3a + 190ac0a commit 06b1a41

23 files changed

Lines changed: 542 additions & 195 deletions
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
---
2+
name: Accuracy Issue
3+
about: Report a discrepancy or inaccuracy in the game
4+
title: "Description of the inaccuracy"
5+
labels: bug
6+
assignees: ''
7+
---
8+
9+
- [ ] I have checked checked the known issues and searched Github to ensure this issue has not already been reported.
10+
11+
### Description of the inaccuracy:
12+
<!-- A clear and concise description of what the inaccuracy is and where it occurs in the game. -->
13+
14+
### Screenshots or videos of Ghostship's behavior:
15+
16+
### Screenshots or videos of the original hardware's behavior:
17+
<!-- If these were not sourced from original hardware please provide details on where they came from (Ares, Project64, etc) -->
18+
19+
### System Information:
20+
- OS:
21+
- GFX Backend: Metal, OpenGL, or DirectX
22+
- Game Version:
23+
- Rom Version:
24+
25+
### Additional Information:
26+
<!-- Add any other context about the problem here. -->
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
---
2+
name: Crash Report
3+
about: Report a crash, unexpected exit, or freeze
4+
title: "Description of the crash"
5+
labels: bug, crash
6+
assignees: ''
7+
---
8+
9+
### Description of the crash:
10+
<!-- A clear and concise description of what the crash was and what you were doing when it happened. -->
11+
12+
### Can you reproduce? If so please list the steps:
13+
- [ ] No, I cannot reproduce this crash
14+
- [ ] Yes, here are the steps to reproduce the crash:
15+
<!--
16+
1. Warp to...
17+
2. Do this...
18+
3. Crash
19+
-->
20+
21+
### Screenshots or videos:
22+
<!-- If applicable, add screenshots or videos to help explain your problem. -->
23+
24+
### Logs:
25+
<!-- Please attach the crash logs or any relevant log files. These are located in the logs/ directory next to the executable or on MacOS in the application support directory -->
26+
27+
### System Information:
28+
- OS:
29+
- GFX Backend: Metal, OpenGL, or DirectX
30+
- Game Version:
31+
- Rom Version:
32+
33+
### Additional Information:
34+
<!-- Add any other context about the problem here. -->
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
---
2+
name: General Bug
3+
about: Other bugs related to Ghostship and it's features
4+
title: "Description of the bug"
5+
labels: bug
6+
assignees: ''
7+
---
8+
9+
- [ ] I have checked the known issues and searched Github to ensure this issue has not already been reported.
10+
- [ ] This is not a feature request, I know those belong on Discord/Github Discussions.
11+
12+
### Description of the bug:
13+
<!-- A clear and concise description of what the bug or enhancement is. -->
14+
15+
### Can you reproduce? If so please list the steps:
16+
- [ ] No, I cannot reproduce this bug
17+
- [ ] Yes, here are the steps to reproduce the bug:
18+
<!--
19+
1. Go to...
20+
2. Do this...
21+
3. See the bug
22+
-->
23+
24+
### Expected behavior:
25+
<!-- A clear and concise description of what you expected to happen or what the enhancement should achieve. -->
26+
27+
### Screenshots or videos:
28+
<!-- If applicable, add screenshots or videos to help explain your problem or suggestion. -->
29+
30+
### System Information:
31+
- OS:
32+
- GFX Backend: Metal, OpenGL, or DirectX
33+
- Game Version:
34+
- Rom Version:
35+
36+
### Additional Information:
37+
<!-- Add any other context about the problem or suggestion here. -->

.github/workflows/linux.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ jobs:
3434
sudo make install
3535
- name: Build
3636
run: |
37-
cmake -H. -Bbuild-cmake -GNinja -DCMAKE_BUILD_TYPE=Debug
37+
cmake -H. -Bbuild-cmake -GNinja -DCMAKE_BUILD_TYPE=Release
3838
cmake --build build-cmake -j
3939
- name: Create Package
4040
run: |

.github/workflows/main.yml

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -61,8 +61,11 @@ jobs:
6161
- name: Create Package
6262
run: |
6363
mkdir ghostship-release
64+
mkdir ghostship-release/debug
6465
mv build/x64/Release/Ghostship.exe ghostship-release/
6566
mv build/x64/Release/ghostship.o2r ghostship-release/
67+
mv build/x64/Release/*.pdb ghostship-release/debug/
68+
mv README.md ghostship-release/readme.txt
6669
mv config.yml ghostship-release/
6770
mv assets ghostship-release/
6871
Invoke-WebRequest -Uri "https://raw.githubusercontent.com/mdqinc/SDL_GameControllerDB/master/gamecontrollerdb.txt" -OutFile "ghostship-release/gamecontrollerdb.txt"
@@ -176,10 +179,10 @@ jobs:
176179
path: ./build-cmake
177180
- name: Build
178181
run: |
179-
cmake -H. -Bbuild-cmake -GNinja -DCMAKE_BUILD_TYPE=Debug
180-
cmake --build build-cmake --config Debug -j3
182+
cmake -H. -Bbuild-cmake -GNinja -DCMAKE_BUILD_TYPE=Release
183+
cmake --build build-cmake --config Release -j3
181184
(cd build-cmake && cpack -G External)
182-
wget -O gamecontrollerdb.txt https://github.com/mdqinc/SDL_GameControllerDB/blob/master/gamecontrollerdb.txt
185+
wget -O gamecontrollerdb.txt https://raw.githubusercontent.com/mdqinc/SDL_GameControllerDB/refs/heads/master/gamecontrollerdb.txt
183186
mv README.md readme.txt
184187
mv build-cmake/*.appimage ghostship.appimage
185188
- name: Upload build
@@ -212,7 +215,7 @@ jobs:
212215
sudo sh /tmp/cmake.sh --prefix=/usr/local/ --exclude-subdir
213216
cmake -H. -Bbuild-switch -GNinja -DCMAKE_TOOLCHAIN_FILE=/opt/devkitpro/cmake/Switch.cmake
214217
cmake --build build-switch --config Release -j3
215-
wget -O gamecontrollerdb.txt https://github.com/mdqinc/SDL_GameControllerDB/blob/master/gamecontrollerdb.txt
218+
wget -O gamecontrollerdb.txt https://raw.githubusercontent.com/mdqinc/SDL_GameControllerDB/refs/heads/master/gamecontrollerdb.txt
216219
mv README.md readme.txt
217220
mv build-switch/*.nro Ghostship.nro
218221
- name: Upload build

CMakeLists.txt

Lines changed: 48 additions & 73 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
cmake_minimum_required(VERSION 3.16.0 FATAL_ERROR)
22

33
# Set the project version and language
4-
project(Ghostship VERSION 1.0.1 LANGUAGES C CXX ASM)
4+
project(Ghostship VERSION 1.0.2 LANGUAGES C CXX ASM)
55
include(FetchContent)
66

77
include(cmake/ghostship-cvars.cmake)
@@ -137,9 +137,9 @@ set(CMAKE_CXX_FLAGS_DEBUG "-g -ffast-math -DDEBUG")
137137
set(CMAKE_C_FLAGS_RELEASE "-O3 -ffast-math -DNDEBUG")
138138
set(CMAKE_CXX_FLAGS_RELEASE "-O3 -ffast-math -DNDEBUG")
139139
else()
140-
set(CMAKE_C_FLAGS_RELEASE "-O2 -DNDEBUG")
141-
set(CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG")
142-
set(CMAKE_OBJCXX_FLAGS_RELEASE "-O2 -DNDEBUG")
140+
set(CMAKE_C_FLAGS_RELEASE "-O1 -DNDEBUG")
141+
set(CMAKE_CXX_FLAGS_RELEASE "-O1 -DNDEBUG")
142+
set(CMAKE_OBJCXX_FLAGS_RELEASE "-O1 -DNDEBUG")
143143
endif()
144144

145145
# Set game compilation version
@@ -153,6 +153,7 @@ add_compile_definitions(
153153
ENABLE_RUMBLE=1
154154
F3D_OLD=1
155155
F3D_GBI=1
156+
USE_GBI_TRACE=1
156157
GBI_FLOATS=1
157158
_LANGUAGE_C
158159
_USE_MATH_DEFINES
@@ -426,75 +427,44 @@ endif()
426427
# Compile and link options
427428
################################################################################
428429
if(MSVC)
429-
if("${CMAKE_VS_PLATFORM_NAME}" STREQUAL "x64")
430-
target_compile_options(${PROJECT_NAME} PRIVATE
431-
$<$<CONFIG:Debug>:
432-
/w;
433-
/Od;
434-
/MTd
435-
>
436-
$<$<CONFIG:Release>:
437-
/Oi;
438-
/Gy;
439-
/W3;
440-
/MT
441-
>
442-
/permissive-;
443-
/MP;
444-
${DEFAULT_CXX_DEBUG_INFORMATION_FORMAT};
445-
${DEFAULT_CXX_EXCEPTION_HANDLING}
446-
)
447-
target_compile_options(${PROJECT_NAME} PRIVATE $<$<CONFIG:Debug>:/ZI;>)
448-
target_compile_options(${PROJECT_NAME} PRIVATE $<$<CONFIG:Release>:/Zi;>)
449-
elseif("${CMAKE_VS_PLATFORM_NAME}" STREQUAL "Win32")
450-
target_compile_options(${PROJECT_NAME} PRIVATE
451-
$<$<CONFIG:Debug>:
452-
/MTd
453-
>
454-
$<$<CONFIG:Release>:
455-
/O2;
456-
/Oi;
457-
/Gy;
458-
/MT
459-
>
460-
/permissive-;
461-
/MP;
462-
/w;
463-
${DEFAULT_CXX_DEBUG_INFORMATION_FORMAT};
464-
${DEFAULT_CXX_EXCEPTION_HANDLING}
465-
)
466-
endif()
467-
if("${CMAKE_VS_PLATFORM_NAME}" STREQUAL "x64")
468-
target_link_options(${PROJECT_NAME} PRIVATE
469-
$<$<CONFIG:Debug>:
470-
/INCREMENTAL
471-
>
472-
$<$<CONFIG:Release>:
473-
/OPT:REF;
474-
/OPT:ICF;
475-
/INCREMENTAL:NO;
476-
/FORCE:MULTIPLE
477-
>
478-
/MANIFEST:NO;
479-
/DEBUG;
480-
/SUBSYSTEM:WINDOWS
481-
)
482-
elseif("${CMAKE_VS_PLATFORM_NAME}" STREQUAL "Win32")
483-
target_link_options(${PROJECT_NAME} PRIVATE
484-
$<$<CONFIG:Debug>:
485-
/STACK:8777216
486-
>
487-
$<$<CONFIG:Release>:
488-
/OPT:REF;
489-
/OPT:ICF;
490-
/INCREMENTAL:NO;
491-
/FORCE:MULTIPLE
492-
>
493-
/MANIFEST:NO;
494-
/DEBUG;
495-
/SUBSYSTEM:WINDOWS
496-
)
497-
endif()
430+
target_compile_options(${PROJECT_NAME} PRIVATE
431+
$<$<CONFIG:Debug>:
432+
/w;
433+
/Od
434+
>
435+
$<$<CONFIG:Release>:
436+
/Oi;
437+
/Gy;
438+
/W3
439+
>
440+
441+
/wd4024 #different types for formal and actual parameter [x]. Usually seen along side 4047.
442+
/wd4047 #'uintptr_t' differs in levels of indirection from 'Gfx *'. Usually caused by passing a uintptr_t into a function expecting a pointer-types
443+
/wd4090 #'initializing': different 'const' qualifiers. Caused when initializing a non const struct member with a const char*.
444+
/wd4101 # unreferenced local variable. Things like stack pads.
445+
/wd4133 #incompatible types. Usually caused by passing a c string into a function that takes a pointer.
446+
/wd4244 #conversion from [a] to [b]. Used to warn when copying to smaller type without a cast.
447+
/sdl-;
448+
/permissive-;
449+
/MP;
450+
${DEFAULT_CXX_DEBUG_INFORMATION_FORMAT};
451+
${DEFAULT_CXX_EXCEPTION_HANDLING}
452+
)
453+
target_compile_options(${PROJECT_NAME} PRIVATE $<$<CONFIG:Debug>:/ZI;>)
454+
target_link_options(${PROJECT_NAME} PRIVATE
455+
$<$<CONFIG:Debug>:
456+
/INCREMENTAL
457+
>
458+
$<$<CONFIG:Release>:
459+
/OPT:REF;
460+
/OPT:ICF;
461+
/INCREMENTAL:NO;
462+
/FORCE:MULTIPLE
463+
>
464+
/MANIFEST:NO;
465+
/DEBUG;
466+
/SUBSYSTEM:WINDOWS
467+
)
498468

499469
# Remove /RTC from msvc flags
500470
foreach (fentry
@@ -662,6 +632,11 @@ if("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux")
662632
install(FILES "${CMAKE_BINARY_DIR}/config.yml" DESTINATION . COMPONENT ${PROJECT_NAME})
663633
endif()
664634

635+
if ("${CMAKE_SYSTEM_NAME}" STREQUAL "Windows")
636+
install(FILES $<TARGET_PDB_FILE:${PROJECT_NAME}> DESTINATION ./debug COMPONENT ${PROJECT_NAME})
637+
install(FILES "${CMAKE_BINARY_DIR}/ghostship.o2r" DESTINATION . COMPONENT ${PROJECT_NAME})
638+
endif()
639+
665640
if(CMAKE_SYSTEM_NAME MATCHES "Darwin")
666641
add_custom_target(CreateOSXIcons
667642
COMMAND mkdir -p ${CMAKE_BINARY_DIR}/macosx/ghostship.iconset

Torch

actors/group11.h

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,6 @@
1616
#include "assets/actors/spiny_egg.h"
1717

1818
// wiggler_body
19-
#include "assets/actors/wiggler_body.h"
20-
21-
// wiggler_head
22-
#include "assets/actors/wiggler_head.h"
19+
#include "assets/actors/wiggler.h"
2320

2421
#endif

include/assets/actors/bowser_flame.h

Lines changed: 41 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -5,31 +5,59 @@
55

66
static const ALIGN_ASSET(2) char flame_seg6_texture_06000000[] = "__OTR__actors/bowser_flame/bowser_flame_0";
77

8-
static const ALIGN_ASSET(2) char flame_seg6_texture_06002000[] = "__OTR__actors/bowser_flame/bowser_flame_1";
8+
static const ALIGN_ASSET(2) char flame_seg6_texture_06001000[] = "__OTR__actors/bowser_flame/bowser_flame_1";
99

10-
static const ALIGN_ASSET(2) char flame_seg6_texture_06004000[] = "__OTR__actors/bowser_flame/bowser_flame_2";
10+
static const ALIGN_ASSET(2) char flame_seg6_texture_06002000[] = "__OTR__actors/bowser_flame/bowser_flame_2";
1111

12-
static const ALIGN_ASSET(2) char flame_seg6_texture_06006000[] = "__OTR__actors/bowser_flame/bowser_flame_3";
12+
static const ALIGN_ASSET(2) char flame_seg6_texture_06003000[] = "__OTR__actors/bowser_flame/bowser_flame_3";
1313

14-
static const ALIGN_ASSET(2) char flame_seg6_texture_06008000[] = "__OTR__actors/bowser_flame/bowser_flame_4";
14+
static const ALIGN_ASSET(2) char flame_seg6_texture_06004000[] = "__OTR__actors/bowser_flame/bowser_flame_4";
1515

16-
static const ALIGN_ASSET(2) char flame_seg6_texture_0600A000[] = "__OTR__actors/bowser_flame/bowser_flame_5";
16+
static const ALIGN_ASSET(2) char flame_seg6_texture_06005000[] = "__OTR__actors/bowser_flame/bowser_flame_5";
1717

18-
static const ALIGN_ASSET(2) char flame_seg6_texture_0600C000[] = "__OTR__actors/bowser_flame/bowser_flame_6";
18+
static const ALIGN_ASSET(2) char flame_seg6_texture_06006000[] = "__OTR__actors/bowser_flame/bowser_flame_6";
1919

20-
static const ALIGN_ASSET(2) char flame_seg6_texture_0600E000[] = "__OTR__actors/bowser_flame/bowser_flame_7";
20+
static const ALIGN_ASSET(2) char flame_seg6_texture_06007000[] = "__OTR__actors/bowser_flame/bowser_flame_7";
2121

22-
static const ALIGN_ASSET(2) char flame_seg6_texture_06010000[] = "__OTR__actors/bowser_flame/bowser_flame_8";
22+
static const ALIGN_ASSET(2) char flame_seg6_texture_06008000[] = "__OTR__actors/bowser_flame/bowser_flame_8";
2323

24-
static const ALIGN_ASSET(2) char flame_seg6_texture_06012000[] = "__OTR__actors/bowser_flame/bowser_flame_9";
24+
static const ALIGN_ASSET(2) char flame_seg6_texture_06009000[] = "__OTR__actors/bowser_flame/bowser_flame_9";
2525

26-
static const ALIGN_ASSET(2) char flame_seg6_texture_06014000[] = "__OTR__actors/bowser_flame/bowser_flame_10";
26+
static const ALIGN_ASSET(2) char flame_seg6_texture_0600A000[] = "__OTR__actors/bowser_flame/bowser_flame_10";
2727

28-
static const ALIGN_ASSET(2) char flame_seg6_texture_06016000[] = "__OTR__actors/bowser_flame/bowser_flame_11";
28+
static const ALIGN_ASSET(2) char flame_seg6_texture_0600B000[] = "__OTR__actors/bowser_flame/bowser_flame_11";
2929

30-
static const ALIGN_ASSET(2) char flame_seg6_texture_06018000[] = "__OTR__actors/bowser_flame/bowser_flame_12";
30+
static const ALIGN_ASSET(2) char flame_seg6_texture_0600C000[] = "__OTR__actors/bowser_flame/bowser_flame_12";
3131

32-
static const ALIGN_ASSET(2) char flame_seg6_texture_0601A000[] = "__OTR__actors/bowser_flame/bowser_flame_13";
32+
static const ALIGN_ASSET(2) char flame_seg6_texture_0600D000[] = "__OTR__actors/bowser_flame/bowser_flame_13";
33+
34+
static const ALIGN_ASSET(2) char flame_seg6_texture_0600E000[] = "__OTR__actors/bowser_flame/bowser_flame_14";
35+
36+
static const ALIGN_ASSET(2) char flame_seg6_texture_0600F000[] = "__OTR__actors/bowser_flame/bowser_flame_15";
37+
38+
static const ALIGN_ASSET(2) char flame_seg6_texture_06010000[] = "__OTR__actors/bowser_flame/bowser_flame_16";
39+
40+
static const ALIGN_ASSET(2) char flame_seg6_texture_06011000[] = "__OTR__actors/bowser_flame/bowser_flame_17";
41+
42+
static const ALIGN_ASSET(2) char flame_seg6_texture_06012000[] = "__OTR__actors/bowser_flame/bowser_flame_18";
43+
44+
static const ALIGN_ASSET(2) char flame_seg6_texture_06013000[] = "__OTR__actors/bowser_flame/bowser_flame_19";
45+
46+
static const ALIGN_ASSET(2) char flame_seg6_texture_06014000[] = "__OTR__actors/bowser_flame/bowser_flame_20";
47+
48+
static const ALIGN_ASSET(2) char flame_seg6_texture_06015000[] = "__OTR__actors/bowser_flame/bowser_flame_21";
49+
50+
static const ALIGN_ASSET(2) char flame_seg6_texture_06016000[] = "__OTR__actors/bowser_flame/bowser_flame_22";
51+
52+
static const ALIGN_ASSET(2) char flame_seg6_texture_06017000[] = "__OTR__actors/bowser_flame/bowser_flame_23";
53+
54+
static const ALIGN_ASSET(2) char flame_seg6_texture_06018000[] = "__OTR__actors/bowser_flame/bowser_flame_24";
55+
56+
static const ALIGN_ASSET(2) char flame_seg6_texture_06019000[] = "__OTR__actors/bowser_flame/bowser_flame_25";
57+
58+
static const ALIGN_ASSET(2) char flame_seg6_texture_0601A000[] = "__OTR__actors/bowser_flame/bowser_flame_26";
59+
60+
static const ALIGN_ASSET(2) char flame_seg6_texture_0601B000[] = "__OTR__actors/bowser_flame/bowser_flame_27";
3361

3462
static const ALIGN_ASSET(2) char flame_seg6_vertex_0601C000[] = "__OTR__actors/bowser_flame/flame_seg6_vertex_0601C000";
3563

0 commit comments

Comments
 (0)