Small fixes and a new cheat

This commit is contained in:
Mors 2023-08-09 05:08:18 +03:00
parent e3413197ed
commit f72da061e9
13 changed files with 42 additions and 11 deletions

View File

@ -1,10 +1,15 @@
This is the changelog for the current development commit of the game. For the changelog for the public versions please check the Wiki.
# v3.1.1 (06/05/2023):
# v3.1.1 (09/08/2023):
### Additions:
- Added the "Easy Bowser Throws" cheat.
### Changes:
- Added a fix for [Big Goombas getting marked as dead after getting punched](https://twitter.com/MarioBrothBlog/status/1651978702408876032) to the "Fix Various Bugs" setting.
- Made long jumping with the "Improved Controls" setting enabled behave exactly the same as long jumping without that setting enabled, so that performing BLJs is now much easier just like before.
### Fixes:
- Fixed King Bob-omb's eyes being rendered incorrectly.
- [Fixed compilation and audio issues on macOS](https://github.com/MorsGames/sm64plus/pull/83) thanks to [sofakng](https://github.com/sofakng).
- Fixed the modified credits text. (Hopefully!)

View File

@ -1 +1 @@
v3.1.0
v3.1.1

View File

@ -999,6 +999,14 @@
"enabled_by": -1,
"disabled_by": -1,
"name": "Moon Jump"
}, {
"internal_name": "easy_bowser_throws",
"description": "Makes throwing Bowser easier. For babies.",
"os": OS_ANY,
"type": TYPE_BOOL,
"enabled_by": -1,
"disabled_by": -1,
"name": "Easy Bowser Throws"
},{
"internal_name": "blj_everywhere",
"description": "Allows you to perform a BLJ out of thin air. Shoutouts to Kaze.",

View File

@ -154,6 +154,7 @@ debug_movement_mode = "false"
debug_cap_changer = "false"
debug_object_spawner = "false"
moon_jump = "0"
easy_bowser_throws = "false"
blj_everywhere = "0"
god_mode = "false"
hyperspeed_mode = "false"

View File

@ -154,6 +154,7 @@ debug_movement_mode = "false"
debug_cap_changer = "false"
debug_object_spawner = "false"
moon_jump = "0"
easy_bowser_throws = "false"
blj_everywhere = "0"
god_mode = "false"
hyperspeed_mode = "false"

View File

@ -154,6 +154,7 @@ debug_movement_mode = "false"
debug_cap_changer = "false"
debug_object_spawner = "false"
moon_jump = "0"
easy_bowser_throws = "false"
blj_everywhere = "0"
god_mode = "false"
hyperspeed_mode = "false"

View File

@ -1634,7 +1634,7 @@ void bowser_thrown_dropped_update(void) {
// Set throw action and vel values
cur_obj_get_thrown_or_placed(1.0f, 1.0f, BOWSER_ACT_THROWN);
// Set swing speed based of angle
swingSpd = o->oBowserHeldAngleVelYaw / 3000.0 * 70.0f;
swingSpd = o->oBowserHeldAngleVelYaw / 3000.0 * (configEasyBowserThrows ? 140.0f : 70.0f);
// If less than 0, reduce speed
if (swingSpd < 0.0f) {
swingSpd = -swingSpd;

View File

@ -131,7 +131,7 @@ const char *credits16[] = { "4SCREEN TEXT WRITER", "GERMAN TRANSLATION", "THOMAS
"THOMAS SPINDLER" };
#endif
const char *credits17[] = { "4MARIO VOICE", "PEACH VOICE", "CHARLES MARTINET", "LESLIE SWAN" };
const char *credits18[] = { "3SM64 PLUS BY", "MORS" };
const char *credits18[] = { "3SM64 PLUS BY", "MORS", "SM64 PORT TEAM", "SM64 DECOMP TEAM" };
/*const char *credits18[] = { "3SPECIAL THANKS TO", "EAD STAFF", "ALL NINTENDO PERSONNEL",
#ifdef VERSION_US
"MARIO CLUB STAFF" };

View File

@ -257,7 +257,7 @@ void update_air_without_turn(struct MarioState *m, u32 canTurn) {
intendedDYaw = m->intendedYaw - m->faceAngle[1];
intendedMag = m->intendedMag / 32.0f;
if (configImprovedControls) {
if (configImprovedControls && m->action != ACT_LONG_JUMP) {
if ((m->forwardVel > 0 && intendedMag * coss(intendedDYaw) > 0) || (m->forwardVel < 0 && intendedMag * coss(intendedDYaw) < 0)) {
if (m->action != ACT_WALL_KICK_AIR)
m->forwardVel += intendedMag * coss(intendedDYaw) * 1.5f;

View File

@ -384,6 +384,17 @@ s32 act_holding_bowser(struct MarioState *m) {
m->twirlYaw = m->intendedYaw;
m->angleVel[1] += spin;
if (configEasyBowserThrows)
{
if (m->angleVel[1] > 0x900) {
m->angleVel[1] = 0x900;
}
if (m->angleVel[1] < -0x900) {
m->angleVel[1] = -0x900;
}
}
else
{
if (m->angleVel[1] > 0x1000) {
m->angleVel[1] = 0x1000;
}
@ -391,6 +402,7 @@ s32 act_holding_bowser(struct MarioState *m) {
m->angleVel[1] = -0x1000;
}
}
}
} else {
m->actionArg = 0;
m->angleVel[1] = approach_s32(m->angleVel[1], 0, 64, 64);

View File

@ -262,6 +262,7 @@ s8 gDebugMovementMode = 0;
s8 gDebugCapChanger = 0;
s8 configDebugObjectSpawner = 0;
unsigned int configMoonJump = 0;
s8 configEasyBowserThrows = 0;
unsigned int configBLJEverywhere = 0;
s8 configGodMode = 0;
s8 configHyperspeedMode = 0;

View File

@ -111,6 +111,7 @@ extern s8 gDebugMovementMode;
extern s8 gDebugCapChanger;
extern s8 configDebugObjectSpawner;
extern unsigned int configMoonJump;
extern s8 configEasyBowserThrows;
extern unsigned int configBLJEverywhere;
extern s8 configGodMode;
extern s8 configHyperspeedMode;

View File

@ -201,6 +201,7 @@ static const struct ConfigOption options[] = {
{ .name = "debug_cap_changer", .type = CONFIG_TYPE_BOOL, .boolValue = &gDebugCapChanger },
{ .name = "debug_object_spawner", .type = CONFIG_TYPE_BOOL, .boolValue = &configDebugObjectSpawner },
{ .name = "moon_jump", .type = CONFIG_TYPE_UINT, .uintValue = &configMoonJump },
{ .name = "easy_bowser_throws", .type = CONFIG_TYPE_BOOL, .boolValue = &configEasyBowserThrows },
{ .name = "blj_everywhere", .type = CONFIG_TYPE_UINT, .uintValue = &configBLJEverywhere },
{ .name = "god_mode", .type = CONFIG_TYPE_BOOL, .boolValue = &configGodMode },
{ .name = "hyperspeed_mode", .type = CONFIG_TYPE_BOOL, .boolValue = &configHyperspeedMode },