Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix wall sidling with negative speed. #762

Merged
merged 1 commit into from
Feb 3, 2024

Conversation

YoshiMilkman
Copy link
Contributor

This fixes a bizarre interaction introduced into HackerSM64 some time in 2021. In vanilla SM64, Mario pushes or sidles walls just fine at negative speed. However in Hacker when this happens, Mario freezes in his running animation and turns around, which looks quite bad. This PR should restore the intended vanilla interaction.

@gheskett gheskett added the bug Something isn't working label Feb 3, 2024
@gheskett gheskett added this to the 2.2 milestone Feb 3, 2024
@gheskett
Copy link
Collaborator

gheskett commented Feb 3, 2024

Introductory commit: 8d51484

@gheskett gheskett merged commit 88c2cdb into HackerN64:develop/2.2.0 Feb 3, 2024
@gheskett gheskett linked an issue Feb 3, 2024 that may be closed by this pull request
Blakeoramo added a commit to Blakeoramo/More-Objects-Patch-5 that referenced this pull request Jun 15, 2024
commit 3e5d14e65004fffa0353843a125b4350ef7374e2
Merge: 05bbe16e2 197d8074e
Author: Gregory Heskett <[email protected]>
Date:   Sat Mar 2 08:16:09 2024 -0500

    Merge pull request #772 from HackerN64/develop/2.2.0

    Release: HackerSM64 2.2.0

commit 197d8074e335b9937f5ac4b96a1b2a3cd50a3f85
Author: Gregory Heskett <[email protected]>
Date:   Fri Mar 1 17:47:05 2024 -0500

    Vanilla bugfix: obj_init_animation referencing o instead of obj

commit c5d9f535eec102952e8403f467341116a0dfcbd8
Author: Gregory Heskett <[email protected]>
Date:   Fri Mar 1 17:03:30 2024 -0500

    HackerSM64 v2.2.0

commit 8257f77c575eb3ae3938b50f838d5de3d79339ab
Author: Gregory Heskett <[email protected]>
Date:   Fri Mar 1 17:00:46 2024 -0500

    A few various Puppyprint bugfixes (#770)

commit 78747e98363e309dbfc0b83f0f829d91e8dd499e
Author: arthurtilly <[email protected]>
Date:   Fri Mar 1 13:03:43 2024 +1300

    Toggle the default status of a few defines to avoid confusing new people (#740)

    * define toggles

    * disable blue preview

commit c96118bcd8641231f0cb7ccc9fe826aa3c87a75e
Author: arthurtilly <[email protected]>
Date:   Fri Mar 1 13:03:08 2024 +1300

    Fix objects using throwmatrix having incorrect rotation when paused (#769)

    * throwmatrix fix

    * ok fixed it and removed some cringe matching

    * happy bitch

commit 4c8233fe6a93ceefab16a5aefddedddf1ba9bd96
Author: Gregory Heskett <[email protected]>
Date:   Tue Feb 27 10:29:47 2024 -0500

    Fix automatic libpl cloning (#771)

commit 524e35c97452b3a5b0eb76fcca02a3d793716bae
Author: Gregory Heskett <[email protected]>
Date:   Thu Feb 22 00:38:19 2024 -0500

    Add `-falign-functions=32` to makefile flags (#745)

    Seemingly provides minor performance benefit and should more importantly reduce perf lotto substantially (hopefully)

commit fc5ffa74386a37a2e818a7698e71a4dc63426038
Author: Matt Pharoah <[email protected]>
Date:   Fri Feb 16 12:45:29 2024 -0500

    Update libpl (#767)

    * Update libpl

    * Update libpl again

    * would you believe its another libpl update

commit d07e6383f62e2cbc50bd72a59b1a0cf4f72663dc
Author: arthurtilly <[email protected]>
Date:   Sat Feb 10 15:07:31 2024 +1300

    Fixed bugs relating to objects dying in lava (#766)

    • Changed the generic object death function to now also check that an object has landed and is over lava before killing it. Previously it would die instantly if it was above lava which resulted in objects randomly dying above lava

    • Also changed the same function to kill a non-buoyant and killable object (e.g. goombas) right when it touches water. Previously it would slowly sink to the bottom and then instantly die upon touching the floor underwater which is strange.

    • Changed where lava checks are done so they are done in the same place as other object flag checks. This avoids bugs where e.g. objects die when touching the edge of a platform that is over lava, because the ground flags are updated, then the object's floor is updated to be over the lava, and then the lava move flags are updated causing the object to think it is over lava and touching ground at the same time (making it die)

    • Fixed the coin flicker define for regular non-bully coins because apparently it just never worked and no-one noticed? Only the coins that come from bullies worked with this define and I guess people only ever tested coins in lava with bullies. I rewrote the coin behavior to be a little closer to the bully one. I think in the future the two types of moving coins could easily be merged into one object, they don't act visibly different at all.

    Tested the PR with a lot of goombas being dropped into lava/water and also this stuff is in Mario Builder so I've been testing it there too. Feel free to test more.

commit 1de4b9144b83cae16bd6261372157fe194092b8f
Author: Gregory Heskett <[email protected]>
Date:   Sun Feb 4 02:29:38 2024 -0500

    Fix floating point crash with pitch bend table + various audio optimizations (#746)

    * Move audio TTLs to improve dcache

    Saves over 100us even when audio is idle

    * Improve additional audio runtime by reducing some unnecessary float math

    * Pause channel/layer processing on sfx channels when idle

    * Fix possible floating point UB/crash with gPitchBendFrequencyScale

commit 88c2cdb0a0f5a85ba46c47cf0ade96fb0fb2acce
Author: YoshiMilkman <[email protected]>
Date:   Fri Feb 2 22:52:10 2024 -0500

    Fix wall sidling with negative speed (#762)

commit 3a5a2f14dd07d371fe6d2e2b84204082adc7da82
Author: Gregory Heskett <[email protected]>
Date:   Fri Feb 2 22:27:48 2024 -0500

    Missed a comma

commit b9ba17a4d6d52c3e0174117f9a6dc06c0a848146
Author: Gregory Heskett <[email protected]>
Date:   Fri Feb 2 22:08:34 2024 -0500

    Add libpl submodule (#753)

    * Add libpl submodule

    * Clone libpl submodule automatically while building (if enabled)

commit 5064fcfb698b0c4f58c9fd78ecca1dbeb3f623c4
Merge: bf924a8ec 05bbe16e2
Author: Gregory Heskett <[email protected]>
Date:   Wed Jan 31 01:23:18 2024 -0500

    Merge pull request #757 from HackerN64/master

    Merge HackerSM64 2.1.3 release into 2.2.0

commit 05bbe16e291a8e493e1cfea8d3b54341e51b096a
Merge: 7de18d10f 9cf3753d6
Author: Gregory Heskett <[email protected]>
Date:   Sat Jan 27 12:45:43 2024 -0500

    HackerSM64 Release: 2.1.3

    * Preserve vanilla reverb downsampling behavior whenever BETTER_REVERB isn't in use (#727)

    * Disable unrelated buttons controlling S&Q menu and pausing (#728)

    * Update Dockerfile to Ubuntu 22.04 as 18.04 is EOL (#731)

    * Update Dockerfile to Ubuntu 22.04 as 18.04 is EOL

    * Dockerfile: Use modern syntax for mounting

    * Add gcc-mips-linux-gnu to dockerfile

    * Add DEBUG_ASSERTIONS define and enable it by default (#730)

    * Add relevant model ID asserts to level script load commands (#722)

    Co-authored-by: someone2639 <[email protected]>

    * Define changes for transitions, two bug fixes (#739)

    * Fixed one or two bugs, cleaned up a few things, put every non vanilla styled change into POLISHED_TRANSITIONS

    And renamed set_and_reset_transition_fade_timer

    * Undid the renaming of set_and_reset_transition_fade_timer as suggested

    * Fix silhouette occlusion layers rendering twice (#748)

    * Fix Boo's Accelerating Upwards During Textbox (Vanilla Bug) (#742)

    * Add assert for beginning geo layout command (#738)

    * geo layout assert

    * new idea

    * Change assert message, add crash screen newline support, and change debug safeguards

    * Fix weird text on Project64 GLideN64 (#715)

    * Update version to 2.1.3 (#754)

    * Fix rumble Issues (#756)

    * Missed important use of thread6 stack define

    * Fix build issues with rumble

    ---------

    Co-authored-by: Gregory Heskett <[email protected]>
    Co-authored-by: Denis Kopyrin <[email protected]>
    Co-authored-by: MisterSheeple <[email protected]>
    Co-authored-by: someone2639 <[email protected]>
    Co-authored-by: someone2639 <[email protected]>
    Co-authored-by: Lilaa3 <[email protected]>
    Co-authored-by: Arceveti <[email protected]>
    Co-authored-by: 1ted59 <[email protected]>
    Co-authored-by: arthurtilly <[email protected]>
    Co-authored-by: iProgramInCpp <[email protected]>

commit 9cf3753d6e4b8ae4cc671082ae754447caa3a5aa
Author: Gregory Heskett <[email protected]>
Date:   Sun Jan 21 13:54:40 2024 -0500

    Update version to 2.1.3 (#754)

commit 325ee7c5eceea2e8a92b1e5103ff72db0095c055
Author: Gregory Heskett <[email protected]>
Date:   Sat Jan 27 00:20:35 2024 -0500

    Fix rumble Issues (#756)

    * Missed important use of thread6 stack define

    * Fix build issues with rumble

commit bf924a8ec32422cb83eeb3f4678bdf559e085b1b
Author: DNVIC <[email protected]>
Date:   Sun Jan 21 14:11:32 2024 -0500

    Added a define for slope fix (#749)

    * implemented a form of slope fix

    * fixed the slope fix to not allow for hyper cheese

    * implemented gheskett's suggestions

    * Added space between comment and define

    Co-authored-by: Gregory Heskett <[email protected]>

    ---------

    Co-authored-by: dnvic <[email protected]>
    Co-authored-by: Gregory Heskett <[email protected]>

commit c39b2894412047b59bc80f9104b4cb4b49399273
Author: iProgramInCpp <[email protected]>
Date:   Sun Jan 21 20:42:50 2024 +0200

    * Fix weird text on Project64 GLideN64 (#715)

    Included in the PR will be a list of comparisons.

    This does two things:
    1. Restores the `dl_ia_text_tex_settings` from the original Super Mario 64. Not sure why this was changed.
    2. Changes the S coordinate of two vertices from `vertex_ia8_char` from 480 to 512. This is an error from the original game.

commit 5ba00edf20806613a4532f2c009f332a277b195f
Author: arthurtilly <[email protected]>
Date:   Mon Jan 22 07:38:00 2024 +1300

    Add assert for beginning geo layout command (#738)

    * geo layout assert

    * new idea

    * Change assert message, add crash screen newline support, and change debug safeguards

    ---------

    Co-authored-by: Gregory Heskett <[email protected]>

commit 15a81037efda69f8bf37bf0a80423908c49fccce
Author: 1ted59 <[email protected]>
Date:   Sat Jan 20 13:07:45 2024 -0500

    Fix Boo's Accelerating Upwards During Textbox (Vanilla Bug) (#742)

    If a `Go On A Ghost Hunt` Boo is killed while it has a gravity of -1 (at the bottom of its oscillation), and does not hit a wall, it will keep the same negative gravity and continue moving until the textbox is closed. Boo Y speed isn't capped in this scenario, so the constant -1 gravity leads to the boo moving upwards at an increasing rate.

    This leads to issues in `boo_act_4`. The distance eventually increases to a point where the boo object is too far to be returned in `cur_obj_nearest_object_with_behavior`.

    This can have 2 buggy effects:

    - the wrong dialog box being brought up if the textbox is delayed (easiest to do by hanging on a ledge).
    - the puzzle solved jingle being played incorrectly if you wait in the textbox long enough

    This doesn't actually cause issues with King Boo, it just brings up the wrong text box. King Boo spawning is unaffected by this bug.

    The fix is to stop the boo after the death animation has finished playing, stopping the boo from accelerating upwards. I don't believe this to cause any other issues (the boo is already dead after all!)

    Thanks to Kyman for finding this bug.

commit b2707990f25e58ec3d14452fa5338c8f9af69036
Author: Arceveti <[email protected]>
Date:   Mon Jan 1 15:44:41 2024 -0800

    Fix silhouette occlusion layers rendering twice (#748)

commit 1d7a690361057f55afa6de99cd2ea37f87f0be92
Author: Gregory Heskett <[email protected]>
Date:   Sat Dec 30 22:22:05 2023 -0600

    Optimize BETTER_REVERB lightweight by an additional ~20% CPU, while also cutting memory requirements for it by ~30% (#744)

commit 08f0e3efa4a6a90f2b8f1bbcc340bd4c50f4a093
Author: Lilaa3 <[email protected]>
Date:   Fri Dec 29 23:32:19 2023 +0000

    Define changes for transitions, two bug fixes (#739)

    * Fixed one or two bugs, cleaned up a few things, put every non vanilla styled change into POLISHED_TRANSITIONS

    And renamed set_and_reset_transition_fade_timer

    * Undid the renaming of set_and_reset_transition_fade_timer as suggested

commit 6148582f5e363e6cc13c4731d6cc06a463b82463
Author: arthurtilly <[email protected]>
Date:   Sun Dec 17 17:26:31 2023 +1300

    remove puppylights (#736)

commit 913cda93b80cd1686181d6ab29d00ea9a1ba179a
Author: Gregory Heskett <[email protected]>
Date:   Fri Dec 15 23:57:19 2023 -0500

    Audio cleanup checkpoint: Large portion of synthesis.c taken care of + occasional audio optimizations (#710)

commit d7c840b8f1b9efb7028ca99c1e81c8ad1e12ec89
Author: someone2639 <[email protected]>
Date:   Fri Dec 15 23:56:40 2023 -0500

    Cache master displaylist on "hot" code paths (#724)

    * add displaylist macros

    * implement displaylist macro in memory.c

    * API update

    * implement displaylist macro on all 'hot' code paths

    * Remove the macro entirely

    * rename tmpDL

    * remove the other two macros

    * catch the last 2 missing statements

    ---------

    Co-authored-by: someone2639 <[email protected]>

commit b73d8dd178ecbd306f9b0e08cb981c88c198ed94
Author: arthurtilly <[email protected]>
Date:   Sat Dec 16 17:44:06 2023 +1300

    Math util cleanup (#566)

    * math util cleanup

    * clean up min/max 3 and also distance and angle functions

    * improve pipelining and make macros safe

    * macros safer and cleaned approaches

    * fix build

    * made sure puppycam builds (and fixed unused var warnings)

    * added 32 bit mins and maxs

commit 9fc928ed70303d101714ca76fa1dbf9888d6f86d
Author: arthurtilly <[email protected]>
Date:   Sat Dec 16 02:48:32 2023 +1300

    Remove OBJECTS_REJ and clean up core render func (By Fazana) (#735)

    * crowd pleaser

    * Fix debug boxes

    * fix comments

    * renamed temp graphics head to be consistent

    ---------

    Co-authored-by: Fazana <[email protected]>

commit 76dae5e8dd2c2d3b59478a96ba8f1278c32a9be7
Author: someone2639 <[email protected]>
Date:   Thu Dec 14 23:27:50 2023 -0500

    Add file select skip define (#723)

    * add config define to skip file select

    * implement file select skip

    * Add more coverage to the skip file select tweak

    ---------

    Co-authored-by: someone2639 <[email protected]>

commit 7df16608a77b478d9414b2cb90604f9d6facfa8b
Author: someone2639 <[email protected]>
Date:   Thu Dec 14 23:26:43 2023 -0500

    Add relevant model ID asserts to level script load commands (#722)

    Co-authored-by: someone2639 <[email protected]>

commit 16467023937b3bbc786181a5e8d9efbf4d52f718
Author: arthurtilly <[email protected]>
Date:   Fri Dec 15 17:24:35 2023 +1300

    shorten call_native command (#733)

commit dcfcf50a802a6e2635cd694f14a11e718f51dd67
Author: arthurtilly <[email protected]>
Date:   Fri Dec 15 17:24:03 2023 +1300

    wall fix (#734)

commit 4f2c48c733d71fa41ae8865d0fbbde5a57dd75cd
Author: Gregory Heskett <[email protected]>
Date:   Mon Dec 11 01:58:30 2023 -0500

    Add DEBUG_ASSERTIONS define and enable it by default (#730)

commit 72f8ea130ff21d13bcaf1c54d1dc3776148ec8a3
Author: MisterSheeple <[email protected]>
Date:   Sun Dec 10 22:40:34 2023 -0500

    Update Dockerfile to Ubuntu 22.04 as 18.04 is EOL (#731)

    * Update Dockerfile to Ubuntu 22.04 as 18.04 is EOL

    * Dockerfile: Use modern syntax for mounting

    * Add gcc-mips-linux-gnu to dockerfile

commit 36c98b6cd1b590d05bf09d5eac2875d109d07975
Author: Denis Kopyrin <[email protected]>
Date:   Sun Dec 10 15:28:08 2023 +0800

    Disable unrelated buttons controlling S&Q menu and pausing (#728)

commit 78cc957d31373e487749a643d13a72b7d567384e
Author: Gregory Heskett <[email protected]>
Date:   Tue Oct 31 18:23:15 2023 -0400

    Preserve vanilla reverb downsampling behavior whenever BETTER_REVERB isn't in use (#727)

commit 7de18d10fc2f7fca4e59e815fe8837d77e2f9644
Merge: b8f770ae4 01c3f20c6
Author: thecozies <[email protected]>
Date:   Wed Sep 27 16:54:38 2023 -0500

    Merge pull request #714 from HackerN64/develop/2.1.2

    Release: v2.1.2

commit 01c3f20c6f1cbc98eac513f230f0f053b61cfd4a
Author: Gregory Heskett <[email protected]>
Date:   Wed Sep 27 12:13:53 2023 -0400

    v2.1.2

commit 38f25d2b8304a3b6e158b51ab969469c80d942ba
Author: thecozies <[email protected]>
Date:   Wed Sep 27 10:55:14 2023 -0500

    rename flips src dir (#711)

commit 48bea330525ed4f795cd9fd4928292904800671e
Author: someone2639 <[email protected]>
Date:   Wed Sep 27 11:54:00 2023 -0400

    spawn lakitu at the origin (#712)

    Co-authored-by: someone2639 <[email protected]>

commit b8f770ae4822e303f04968f25c217e611b4a4668
Author: thecozies <[email protected]>
Date:   Tue Sep 26 13:05:46 2023 -0500

    Release/2.1.1 (#709)

    * removed extraneous mat stack index decrement in geo_process_camera (#708)

    * Fixed typo in FCR enums (#707)

    * v2.1.1

    ---------

    Co-authored-by: Matt Pharoah <[email protected]>

commit 31d46d44797ad6cd2bafb2327025b6d5bf77bde5
Merge: b6d83b329 5d45c1d46
Author: thecozies <[email protected]>
Date:   Mon Sep 25 18:40:02 2023 -0500

    Merge pull request #692 from HackerN64/develop/2.1.0

    Release/2.1.0

commit 5d45c1d46f14a7232e3b24a10f64150655733188
Author: thecozies <[email protected]>
Date:   Mon Sep 25 18:22:46 2023 -0500

    v2.1.0

commit 37093031dae43e1e22b02c4ba0657c79afaf8c47
Author: thecozies <[email protected]>
Date:   Mon Sep 25 14:41:51 2023 -0500

    Cpp support (#705)

    * remove unused typedefs

    * support for building c++ files

commit af3b538ed92d9e87c86fdede957a1639189dec05
Author: Lilaa3 <[email protected]>
Date:   Mon Sep 25 14:26:31 2023 +0100

    Remove sharp transitions (#702)

    * Cannon render mode fix

    Slipped past me.

    * Removed sharp transitions

    I like the idea but it really isn´t vanilla and causes issues.
    Might be worth revisiting but for now lets just get rid of it.

    * fixes

    Missing render mode set for transitions, reduced display list alloc for cannon
    tested more this time

commit e5bcf95703a2b6e4fa20b6dca62f2b6cfb62bdbd
Author: Gregory Heskett <[email protected]>
Date:   Sat Sep 23 17:40:07 2023 -0400

    Fix camera issues with NON_STOP_STARS (#700)

    * Fix camera issues with NON_STOP_STARS

    * Throw early return into stardance cutscene instead

commit c39fb6f3335a80febf02fe49702c79885e289890
Author: Lilaa3 <[email protected]>
Date:   Sat Sep 23 22:32:21 2023 +0100

    Small texture type fix for the cannon (#696)

    * Small texture type fix for transitions

    * Moved texture type define above other declarations

commit ed1465247a6e1d4e077337ecdd370f8347fd711d
Merge: b6ba2b58a 3545b4658
Author: thecozies <[email protected]>
Date:   Sat Sep 23 15:26:37 2023 -0500

    Merge pull request #695 from gheskett/remove-puppylights

    Remove Puppylights define from config file

commit b6ba2b58ad27821a2003993d09ce8075d2417bfb
Merge: 00b447542 b1ef06fcd
Author: thecozies <[email protected]>
Date:   Sat Sep 23 15:13:41 2023 -0500

    Merge pull request #698 from HackerN64/perspective_fov_scale

    remap scale with fov and avoid copy when world scale is 1

commit b1ef06fcd15627dc4169ff809bb7fae943da1463
Author: thecozies <[email protected]>
Date:   Sat Sep 23 15:05:30 2023 -0500

    remap scale with fov and avoid copy when world scale is 1

commit 3545b4658c90f3a04f932bbbd55246d83f0dc91b
Author: Gregory Heskett <[email protected]>
Date:   Sat Sep 23 00:35:48 2023 -0400

    Remove Puppylights define from config file, since it doesn't work anymore

commit 00b4475427e92bf33d37562d2f8f8236d09fad2d
Merge: cd2e63920 bf1cd9091
Author: thecozies <[email protected]>
Date:   Fri Sep 22 17:18:31 2023 -0500

    Merge pull request #694 from Arceveti/develop/2.1.0-four-controllers-base

    Fix controller type checking (GCN false positive)

commit bf1cd9091f1227aa400ac19d06be27c7ed80e5a0
Author: Arceveti <[email protected]>
Date:   Fri Sep 22 15:12:55 2023 -0700

    Fix controller type checking (GCN false positive)

commit cd2e6392061111cb0ea5e547913e0aacfa8e6cb1
Merge: 5f8c17ca7 4397811b9
Author: thecozies <[email protected]>
Date:   Fri Sep 22 16:56:23 2023 -0500

    Merge pull request #595 from Arceveti/develop/2.1.0-four-controllers-base

    4 controllers support + osContCh optimization

commit 4397811b928b52bd8704ed7fa42841efae819413
Author: Arceveti <[email protected]>
Date:   Fri Sep 22 14:47:07 2023 -0700

    Simplify controller type checking + fix controller swapping

commit c890838b24262200f1092f3e4bf175435ddcd749
Author: Arceveti <[email protected]>
Date:   Fri Sep 22 14:25:20 2023 -0700

    Fix controllers on ports other than 0

commit 5f8c17ca747a86483115c9dc51e1ef746d72bab2
Merge: f29fe4413 ff953bea6
Author: thecozies <[email protected]>
Date:   Fri Sep 22 14:15:31 2023 -0500

    Merge pull request #693 from thecozies/revert_frustratio

    added USE_FRUSTRATIO2 define

commit ff953bea632f5af1b38fd9750e9bde7e693e651d
Author: thecozies <[email protected]>
Date:   Fri Sep 22 13:16:34 2023 -0500

    added USE_FRUSTRATIO2 define

commit f29fe44135a2fbc597208120166bf1efca1558b0
Merge: c9533d18f 48fed9878
Author: thecozies <[email protected]>
Date:   Fri Sep 22 12:41:56 2023 -0500

    Merge pull request #691 from HackerN64/develop/2.1.0_pull_master

    Develop/2.1.0 pull master

commit 48fed9878eb5dfc7dac04f9f8d96737acf86bdac
Merge: c9533d18f b6d83b329
Author: thecozies <[email protected]>
Date:   Fri Sep 22 12:38:53 2023 -0500

    Merge branch 'master' of github.com:HackerN64/HackerSM64 into develop/2.1.0_pull_master

commit c9533d18ff50a039129b535d2f95f4243d910e01
Author: Matt Pharoah <[email protected]>
Date:   Fri Sep 22 13:09:32 2023 -0400

    Future proof console check (closes #663) (#690)

commit 544fcaf0387c7242c566d26c8087cb9fe026f07b
Author: someone2639 <[email protected]>
Date:   Fri Sep 22 13:06:39 2023 -0400

    remove dependency on script exec permissions (#683)

    * make fixlights.py and make_version.sh independent of exec perms

    * add mips64-elf-ld warning

    ---------

    Co-authored-by: someone2639 <[email protected]>

commit 3a312e101c8d4b8babfeb9f3a0fb5d961986ec9a
Author: Matt Pharoah <[email protected]>
Date:   Fri Sep 22 13:05:53 2023 -0400

    Improved WiiVC check to avoid false positives & added functions to read and manipulate fcr31 (#669)

    * Added functions to access and manipulate the fcr31 register

    * Improved WiiVC emulator check to avoid false positives

    * Updated comments

    * Moved float.h to include directory

commit 42cbaed6318edd7fb3ce1d178520f53874ebd8ce
Author: someone2639 <[email protected]>
Date:   Fri Sep 22 09:35:17 2023 -0400

    Track whether the RCP hang timer has started to prevent double setting (#689)

    * Track whether the RCP hang timer has started to prevent double setting

    * removed single letter struct field

    * remove debug lines

    ---------

    Co-authored-by: someone2639 <[email protected]>

commit e61bf8fbc1daadd251c33d099f87167fed45e0f2
Author: Gregory Heskett <[email protected]>
Date:   Thu Sep 21 15:23:03 2023 -0400

    Fix STAR_DANCE_USES_STARS_MODEL define (#688)

commit 60bb21693bea7562a78a94a317f791838af6a6b1
Author: thecozies <[email protected]>
Date:   Thu Sep 21 14:13:58 2023 -0500

    fix tile scrolled light materials (#687)

commit da3a7e826a4ffc4e9b6d8e633141f585636b7b3e
Author: Gregory Heskett <[email protected]>
Date:   Wed Sep 20 00:29:19 2023 -0400

    Add missing JRB vanilla level check (#685)

commit a64be21db87b025144890cfb3a34c40430298d01
Author: Gregory Heskett <[email protected]>
Date:   Mon Sep 18 18:21:39 2023 -0400

    Added config option for previewable blue coins (#507)

    * Added config option for previewable blue coins

    * Clean up previewable blue coin implementation to only be a couple lines

    ---------

    Co-authored-by: Colin Tong <[email protected]>

commit 44b48ffacd36107a810695b02b214e9de0a86342
Author: Lilaa3 <[email protected]>
Date:   Mon Sep 18 15:18:35 2023 +0100

    Important Culling Fixes (#666)

    * Culling fix

    Precison of half fov horizontal being equal to or above 2 leads to many issues. using 1.5 would break rt64 and other emulators with ultra widescreen.
    Vertical culling will be disabled by default until 3.0

    * Improved emu checks and naming

    * Comment changes

    * Small typo fix

commit c3f300be9f6d2eab21a63ae2cbe1f070ba8440db
Author: thecozies <[email protected]>
Date:   Mon Sep 18 08:40:37 2023 -0500

    Wiseguy's fixed raycast traversal (#681)

    * wiseguy's fixed raycast traversal

    * Use while (TRUE) { for the sake of repo consistency

commit 63ddb28641646b6179600209d12f6062b2262696
Author: thecozies <[email protected]>
Date:   Mon Sep 18 08:36:53 2023 -0500

    only set rooms while in a new room (#682)

commit 0a7e44de0eafabb2b1231af237f9b103360d27e3
Author: thecozies <[email protected]>
Date:   Mon Sep 18 08:18:03 2023 -0500

    restore mips-n64 (#680)

commit ab0cebab7afb72835d6f1dc10d7a68a56909749b
Author: Gregory Heskett <[email protected]>
Date:   Mon Sep 18 09:10:56 2023 -0400

    Rotate envmaps to be consistent with vanilla (#636)

    * Start work on envmap rotation stuff

    * n64graphic envmap rotation working

    * Add comment to rotation function

    * Fix DLs of non 32x32 env maps, fix envmap rotation

    * fix metal flying vanish cap

    * fix metal mario's medium poly butt

    * new asset version for flipped env maps

    * added missing env textures to extract script

    * restore asset_needs_update

    * Skip asset_needs_update calls if local version matches new version

    * removed the goddard textures from envmap rotation

    ---------

    Co-authored-by: mineqwerty <[email protected]>
    Co-authored-by: thecozies <[email protected]>

commit 8a83359ed14d874712c14cbeaa016c24c9bee70e
Author: Gregory Heskett <[email protected]>
Date:   Mon Sep 18 08:17:31 2023 -0400

    Add functional changes to inertia to support only specific directions specified in the config (#671)

    * Add functional changes to inertia to support only specific directions specified in the config (needs cleanup)

    * Reduce number of inertia defines

    * Update Platform Displacement 2 define description

    * comment adjustments

commit 973eec3c93a0caa4d80ba01cf86ccd5ff741b62b
Merge: 8105fde1f db8588629
Author: Arceveti <[email protected]>
Date:   Sun Sep 17 19:46:42 2023 -0700

    Merge branch 'develop/2.1.0' of https://github.com/Arceveti/HackerSM64 into develop/2.1.0-four-controllers-base

commit db85886294c86bac508403595ff0a7e2c0490fab
Author: someone2639 <[email protected]>
Date:   Sun Sep 17 21:54:37 2023 -0400

    Global folder integration for all features that need a baserom (#677)

    * Look for shared baserom directory using XDG_DATA_DIR instead of polluting the home directory

    * move global baserom folder detection to a new file that the makefile can use

    * ignore __pycache__ in tools

    * edit make patch to use global baserom detector

    * Extract jp/sh/eu from global folder too

    * genericize asset extraction for all versions

    * force at least US to extract

    ---------

    Co-authored-by: Matt Pharoah <[email protected]>
    Co-authored-by: someone2639 <[email protected]>

commit 620b7cdded27f2e50e13b4e03fddc9a73dc5bd99
Author: Gregory Heskett <[email protected]>
Date:   Sun Sep 17 14:37:08 2023 -0400

    Fix typo describing BETTER_REVERB parameters (#678)

commit c21fd019775f26e0cb1f7b0f6403a6789d12f97e
Author: Matt Pharoah <[email protected]>
Date:   Sun Sep 17 11:00:18 2023 -0400

    Look for shared baserom directory using XDG_DATA_DIR instead of polluting the home directory (#670)

commit 90d313b4e28065abb03d55bdd8dbf1425cb443e1
Author: CowQuack <[email protected]>
Date:   Tue Sep 12 14:44:21 2023 -0400

    fixed fading warps not downwarping (#675)

commit 8f9c1856a76612a4438a71a293a175e8e2293bb7
Author: Arceveti <[email protected]>
Date:   Mon Sep 11 14:15:22 2023 -0700

    Add make rebuildtools (#674)

commit ca4757639e46c72119160b599fa9fa74a652d5f1
Author: Gregory Heskett <[email protected]>
Date:   Mon Sep 11 12:06:37 2023 -0400

    Bugfix: Selecting headset audio and then disabling stereo headset effects define leads to game crash in sound select (#672)

    * Bugfix: Selecting headset audio and then disabling stereo headset effects define leads to game crash in sound select

    * More involved modifications

commit 8105fde1f55c1bc396b9cd8c0dadec1ac76940d3
Author: Arceveti <[email protected]>
Date:   Wed Sep 6 13:15:29 2023 -0700

    Updates from main input branch

commit 50b4ebf0513fbf72debc1ef780a253d8244ad2ed
Merge: 16f1dc41b d105eff49
Author: Arceveti <[email protected]>
Date:   Tue Sep 5 12:57:54 2023 -0700

    Merge branch 'develop/2.1.0' of https://github.com/HackerN64/HackerSM64 into develop/2.1.0-four-controllers-base

commit d105eff491389d0c6ab4713eb34ebbc398cd2893
Author: Matt Pharoah <[email protected]>
Date:   Fri Sep 1 15:08:24 2023 -0400

    Fixed broken build (#668)

commit 90a9e978ccce4c474047ae70f91c0b14b031d38c
Author: CowQuack <[email protected]>
Date:   Wed Aug 30 21:53:04 2023 -0400

    Fix the stationary action and ledgegrab downwarps when pushed off a ledge, and added a special downwarp for grabbing Bowser (#664)

    * fix stationary/ledge downwarp, special bowser case

    * Comment clarity

    Co-authored-by: thecozies <[email protected]>

    ---------

    Co-authored-by: thecozies <[email protected]>

commit d13f0cb2fcb0fee69f6dddf081308988a4aa22e8
Author: FConnuli <[email protected]>
Date:   Tue Aug 29 22:08:45 2023 +0000

    Create compile_flags.txt (#653)

    Added compile_flags.txt for the clangd lsp to work for the project

commit 683bb80c7252a5414967e6ed1dea20a05f941997
Author: someone2639 <[email protected]>
Date:   Tue Aug 29 10:06:41 2023 -0400

    file purge + extract_assets revamp (#644)

    * remove gen_asset_list (frozen)

    * move format.sh

    * remove rasm2armips (decompilation helper)

    * remove patch_libmalloc (IDO exclusive)

    * remove unnecessary sha1's and makefile definitions

    * remove libultra math script (IDO exclusive)

    * remove patch_elf_32bit

    * actually remove bitwidth tool

    * remove the need for all the sha1 files

    * extract_assets can now find a baserom named anything

    * added error handling and some more graceful error handling

    * formatting the error message

    * more relevant error info

    * add a check for a roms folder

    * fix gitignore to prevent patch_elf from being re-committed

    * naming clarity; change to baseroms/; feedback addressed

    * skip rom verification if assets have been extracted

    * changes addressed

    ---------

    Co-authored-by: someone2639 <[email protected]>

commit 5e9f8c7ee09e44c42bcea95bebb2419da97d1723
Author: Lilaa3 <[email protected]>
Date:   Tue Aug 29 14:57:32 2023 +0100

    Improved transitions (#642)

    * Improved transitions

    Code quality improvements.
    Shape transitions now all scale down to 0 instead of 16 (mario and bowser).
    Ease in was added which leads to far smoother transitions.
    HD_TRANSITIONS define added, makes use of the tex edge render mode to deliver smooth transition textures.
    lerpf was added to math utils.

    * Cleaner textures, rounding only during vertex creation

    * Another attempt

    * cozies naming suggestion

    * Improvements and suggestions

    SHARP_TRANSITION_TEXTURES is now off by default (I still think the textures for it could be improved).
    lerpf, to_smoothstop, smoothstart, smoothstop and smoothstep have all been added.
    make_vertex has been inlined.
    make_simple_vertex has been added (colourless vertex).
    Transition colors (and canon colors) are now defined using primative colour instead of setting individual vertices color´s.
    Transition´s now use smoothstep (ease-in-out) instead of ease out only.
    Naming has been improved.

    * Proper function inling and removal of GBI_FLOATS variant of make_vertex and make_simple_vertex

    * More requested changes

    * Accidental final new line removal fixed

    * Comment about pop in fix.

    * Comment fix

    The issue with writing comments for stuff is when you want to change code later on.

commit 1e0498ba68b5296425fa7b75aebf2aceeab20359
Author: Gregory Heskett <[email protected]>
Date:   Tue Aug 29 09:11:50 2023 -0400

    Fix Puppyprint compiler warning (#661)

    lol

commit ca0e373a2c4ea20c3f00b6b35cc7a20b734860e9
Author: Fazana <[email protected]>
Date:   Tue Aug 29 13:55:21 2023 +0100

    remove decompression heap (#660)

commit 1fd893088129a8eb396dc0ec2f1e1a64136c7222
Author: Gregory Heskett <[email protected]>
Date:   Tue Aug 29 08:49:40 2023 -0400

    Remove singular version ifdef from sounds.h (#655)

    Makes tooling more difficult but also just hard to look at

commit febcb71ea365dc7a27ef5e03db766c94291c7113
Author: Matt Pharoah <[email protected]>
Date:   Mon Aug 28 18:03:26 2023 -0400

    Added emulator detection (#651)

    * Added emulator detection

    * Fixed missing assignments

    * Disable interrupts around the count factor test

    * Added more comments to emutest

    * Changed PJ64 enum values so the versions work as a bitfield

    * Updated README

    * Fixed comments

    * Updated enum values so you can safely AND and OR all emulator version flags together

    * Remove redundant gIsConsole, gIsVC, and gCacheEmulated global variables

    * Changed console check to be more future proof against Ares

    * Use assembly file instead of casting to a function pointer

    * Moved round_double_to_float back to its own compilation unit

    * Moved the ParallelN64 check before the Ares check for better future-proofing

    * Align pj64_get_count_factor_asm with cache lines... not that it actually matters for pj64

    * Adjusted some comments

    * Made emulator check thread-safe on emulators that emulate PI timings

    * Added gIsConsole macro for backwards compatibility

    * Added cen64 to INSTANT_INPUT_BLACKLIST

    * Updated comment

commit 0138b8ea5340c599e5bf6568ddf95d064903b567
Author: Gregory Heskett <[email protected]>
Date:   Wed Aug 23 20:11:42 2023 -0400

    Revert dialogue scrolling to behave like vanilla (#658)

commit d0e5bf665b31529103cab9dcc852b449a1f9730e
Author: Fazana <[email protected]>
Date:   Tue Aug 1 17:48:00 2023 +0100

    Bugfix: Puppyprint question mark (#654)

commit 7c32cf8b63d3297d1055634e6203174c4fe9d372
Author: Lilaa3 <[email protected]>
Date:   Thu Jun 29 23:25:54 2023 +0100

    Dynamic collision fixes + actual OR_LONG (#648)

    * Dynamic collision fixes + actual OR_LONG

    Dynamic collision will now check Mario´s vertical distance seperately, this is done to implement a check for when mario is above an object, in which case the collision distance is expanded by 2000 units to avoid shadows not appearing.
    Or long works correctly now, replaces the behaviour command NOP_1.

    * Micro optimzation

    Avoids sqrtf by using the squared lateral distance and squaring the the collision distance for the comparison.

    * Requested changes

    * minor change

    * Re ordering

    * How

commit 4dc17a32a2cc9a00d220c2f3fcc6645a28ef5a47
Author: Gregory Heskett <[email protected]>
Date:   Thu Jun 29 10:09:32 2023 -0400

    Slice BETTER_REVERB memory requirements in half (#649)

    which also improves performance by almost 10%

commit 37787dffc950307d4e981e6e8d1b1fa547ed7a08
Author: Gregory Heskett <[email protected]>
Date:   Wed Jun 28 15:15:38 2023 -0400

    Add SET_ECHO level script command + minor BETTER_REVERB refactoring (#591)

    * Add SET_ECHO level script command + minor BETTER_REVERB refactoring

    * Add Puppyprint debug page for trying out different BETTER_REVERB presets and configurations

    Also fix a missing Puppyprint enum that was causing issues

    * Modify Puppyprint BETTER_REVERB page + other minor improvements

    * Swap order of RSP commands to allow reverb downsampling to sound more similar to that of without downsampling

commit e2cf2d51192f41039c0b18d62c7a20dd83569919
Author: someone2639 <[email protected]>
Date:   Mon Jun 26 13:35:52 2023 -0400

    IPL3 documentation; undefined_syms.txt finally deleted (#545)

    * yeet undefined_syms; IPL3 documentation; theoretical addition of checksum skip and initial DMA length/location change

    * another comment about how to set dma len

    * comment is now correct in ultratypes

    * do the rename

    * remove insinuations that ipl3 can be modified

    ---------

    Co-authored-by: someone2639 <[email protected]>

commit 1eba347c0770c8b9c856c7aa9a253c6603a0224c
Author: someone2639 <[email protected]>
Date:   Sun Jun 25 23:57:21 2023 -0400

    replace abs with c macro; replace round with asm extern function (#647)

    Co-authored-by: someone2639 <[email protected]>

commit 13b833956024e8c48a14bac18972892c61318dc4
Author: someone2639 <[email protected]>
Date:   Sun Jun 25 23:56:43 2023 -0400

    pack including static symbols using 'nm' (#646)

    Co-authored-by: someone2639 <[email protected]>

commit 823101164ddf0f10b7bc9166e720092f398c3517
Author: someone2639 <[email protected]>
Date:   Sun Jun 25 23:12:04 2023 -0400

    import new flips + flags (#645)

    Co-authored-by: someone2639 <[email protected]>

commit 16e55ad95232e496f0c948c0664b716f5dc86203
Author: Lilaa3 <[email protected]>
Date:   Fri Jun 23 16:06:24 2023 +0100

    Culling improvements + GRAPH_RENDER_INVISIBLE check change (#590)

    * Culling improvements + earlier GRAPH_RENDER_INVISIBLE check

    GRAPH_RENDER_INVISIBLE is now checked during geo_process_object before any uncessesary transformation is applied to
    the object, translation is still calculated for sound even if the object is invisible.
    Half fov is now computed during geo_process_perspective.
    Vertical culling has been added (only when bellow the screen to prevent shadow´s being culled).
    Emulators have basically infinite culling aspect ratio to prevent early culling with widescreen viewport hacks.
    Default culling radius is now a define.
    This was written by both me and Kaze Emanuar, he provided the suggestion to use absf and informed me of
    integer division being remarkably slow (although it´s only used once during geo_process_perspective).

    * Badly placed new line (major fix)

    * integer

    Co-authored-by: thecozies <[email protected]>

    * parenthesis

    doesn´t affect order of operation, just for code quality

    Co-authored-by: thecozies <[email protected]>

    * uncessary whitespace

    Co-authored-by: thecozies <[email protected]>

    ---------

    Co-authored-by: thecozies <[email protected]>

commit 73fad6195dc2c838428efccdd89b5e0e15fa1d0f
Author: Gregory Heskett <[email protected]>
Date:   Tue Jun 20 21:24:20 2023 -0400

    Bugfix: fix profiler freeze (hopefully) (#640)

commit 8240262c078266326e99901aba6537ec300a219e
Author: someone2639 <[email protected]>
Date:   Sat Jun 17 16:51:03 2023 -0400

    Update S2DEX Text Engine to latest version; fix build issues (#532)

    Now its just part of HackerSM64 entirely, and HackerSM64 will be the source of all changes (as long as said changes can reasonably apply to homebrew games)

commit fffebd106513bdc1db4c38482e9b33f2cc293b69
Author: Reonu <[email protected]>
Date:   Sat Jun 17 01:57:33 2023 +0100

    add death on exit course define (#564)

    if the define is enabled, exiting course is the same as dying (warps to failure warp node)

commit 7f08d3d96340d38e6a2de4ca78cc62eca6f0a751
Author: Gregory Heskett <[email protected]>
Date:   Tue Jun 13 12:57:33 2023 -0400

    Revert floor sorting optimizations (#639)

    They cause some weird collision bugs, and are thus not worth keeping until properly investigated.

commit 5764ae0ece01b803976a5ff8ca568a530521381d
Author: Fazana <[email protected]>
Date:   Fri Jun 9 16:13:57 2023 +0100

    Puppy Camera for 2.1 (#554)

commit 4c9a91c2bed0cac3fdce739abb36077fb8abfb63
Author: CowQuack <[email protected]>
Date:   Wed Jun 7 15:56:56 2023 -0400

    Improved the extended inst names and added missing (#634)

    * Improved the extended inst names and added missing

    * Added percussion loop and renamed cowbell

commit 8f6fde697fbc3537026392845756930648db35f6
Author: Gregory Heskett <[email protected]>
Date:   Wed Jun 7 13:58:59 2023 -0400

    Disable Stereo Headset Effects and stub out all known code references via define (#633)

    * Disable stereoheadseteffects and stub out all known code references via define

    By effect this also completely removes Headset sound options from the game config, as it serves no purpose whatsoever compared to stereo.
    Because it's stubbed out everywhere rather than only the necessary locations to prevent it, this should boost audio runtime slightly for everything, not just the stuff that actively used it.

    * Rename DISABLE_HEADSET_STEREO_EFFECTS to ENABLE_HEADSET_STEREO_EFFECTS

    * Reorganize and reduce audio Note struct

    * Add performance to define description

    * Rename ENABLE_HEADSET_STEREO_EFFECTS to ENABLE_STEREO_HEADSET_EFFECTS

commit 0c7f44a51a32216dbd3d1cea620f400cb2bdd479
Merge: 57f7338e6 91af40e72
Author: CowQuack <[email protected]>
Date:   Wed Jun 7 12:42:09 2023 -0400

    Merge pull request #629 from HackerN64/develop/2.1.0-red-coin-count-increase

    Develop/2.1.0 red coin count increase

commit 91af40e72ad45e6bbe688ac73d0b635b71414690
Author: CowQuack <[email protected]>
Date:   Wed Jun 7 12:26:27 2023 -0400

    Update src/game/behaviors/red_coin.inc.c

    Co-authored-by: thecozies <[email protected]>

commit 7cdb0764a58d9e153e6f5a94121cc7f3badb2da6
Author: CowQuack <[email protected]>
Date:   Wed Jun 7 12:24:20 2023 -0400

    le comment

    Co-authored-by: thecozies <[email protected]>

commit 57f7338e6aebbc8242545c617571c450285fc74b
Author: Fazana <[email protected]>
Date:   Wed Jun 7 12:58:22 2023 +0100

    Change puppyprint log function calls to defines (#632)

commit 42cf450ba83728cfadea9d636577eb4b948be4e4
Author: Gregory Heskett <[email protected]>
Date:   Wed Jun 7 06:46:25 2023 -0400

    Increase size/configurability of volume ramping tables (#623)

    Vanilla's ramping table sounds absolutely horrendous, most noticeably when it comes to slow volume fade-ins/outs. By default, precision has been increased by 4x vanilla US, which overall has an insignificant impact on performance. This is still half as precise as EU's volume ramping table, that's about the point where additional memory and performance aspects are impacted more significantly.

commit 50b023ef21d5549526c1c7ff5d7a61d9c57bf6e6
Author: Gregory Heskett <[email protected]>
Date:   Wed Jun 7 06:46:12 2023 -0400

    Allow envelopes with delay values of 0 on init (#625)

    This allows sounds to start instantly without any fade-in. Using new soundbanks with delay values of 0 will not compile with base decomp, but old decomp-compliant soundbanks will work with this commit.

commit 3fc7b5048862da191c078254888f040890fbe87e
Author: mineqwerty <[email protected]>
Date:   Mon Jun 5 19:33:04 2023 -0400

    Readme red coin star clarity

commit d1c56b60a322f3ea08af3188680f4a8384eb80fd
Author: mineqwerty <[email protected]>
Date:   Mon Jun 5 18:28:13 2023 -0400

    fixed spawning bug with level red coin stars

commit dde6e7da1a4ba7a5ce6a9dde9ed4eb07ed3f762d
Author: CowQuack <[email protected]>
Date:   Mon Jun 5 18:26:28 2023 -0400

    condition that forces level reload on exit course (#630)

    * condition that forces level reload on exit course

    * Changed exit course to use a specific warp flag

commit 81c0a8ae615e6291de7d5a56466ba67c174dfd06
Author: Gregory Heskett <[email protected]>
Date:   Mon Jun 5 18:09:03 2023 -0400

    Improve BETTER_REVERB runtime by about 15-20% overall (#619)

    Refactored everything to be more memory efficient and execute fewer function calls than prior

    Also accidentally discovered a significant bug with the audio modes always being forced to stereo so this is definitely 2.1 scope lmao

commit 580fd4507968f30a4bea19cb7abc228f07028e3d
Author: Arceveti <[email protected]>
Date:   Mon Jun 5 18:06:37 2023 -0400

    Use FillRectangle for shade_screen (#611)

commit 351f6f8961bab9b67906dac267e59de219b9dda0
Author: thecozies <[email protected]>
Date:   Mon Jun 5 17:02:58 2023 -0500

    added make_patch and flips (#628)

commit aabad79e4673506d5f57c5f6f05941ccf502e416
Author: thecozies <[email protected]>
Date:   Mon Jun 5 16:54:03 2023 -0500

    removed denorm col tri in wdw (#631)

commit ea818c2ec0c9241e7864c6fb6293fb62ce1e8bd9
Author: mineqwerty <[email protected]>
Date:   Mon Jun 5 16:37:39 2023 -0400

    added support for multi area red coin stars in bp2

commit daf53f85aa46c0520669cfe2ab51a0dd7636e2c1
Author: mineqwerty <[email protected]>
Date:   Mon Jun 5 10:59:44 2023 -0400

    fixed nitpicks and dialog trigger number

commit c4441e8ee6aeab0e25665189c0516d7a92f143d0
Author: mineqwerty <[email protected]>
Date:   Sun Jun 4 22:34:16 2023 -0400

    forgot to cap red coins in the menu

commit af53a42b0b01f876cd8f12d395145ccf0dad652f
Author: mineqwerty <[email protected]>
Date:   Sun Jun 4 22:29:37 2023 -0400

    pause screen red coins

commit 0d14f6bb58ea99604ea6b4ee494b89b35f35a0b9
Author: mineqwerty <[email protected]>
Date:   Sun Jun 4 21:21:45 2023 -0400

    revert testing changes

commit f80acbbefcf520f9fdc589b48da275535b16ed6f
Author: mineqwerty <[email protected]>
Date:   Sun Jun 4 21:20:39 2023 -0400

    testing changes

commit 62772067d5293357cd9af1dd712394ff1e8606a7
Author: mineqwerty <[email protected]>
Date:   Sun Jun 4 21:19:51 2023 -0400

    added support for up to 99 red coins in an area

commit e9054a6b6bc4dd96e77cd09e921d24b6b2ce7c91
Author: Gregory Heskett <[email protected]>
Date:   Fri May 12 02:47:25 2023 -0400

    Bugfix: Enabling silhouettes with OBJECTS_REJ disabled does not compile (#627)

commit 34b97c9249dff9e85749cfd6a37097ed29b3a8b4
Author: thecozies <[email protected]>
Date:   Fri May 5 11:21:53 2023 -0500

    v2.0.9

commit 23e01e712b85cd483e45e6002a1f8890ffa56b07
Author: thecozies <[email protected]>
Date:   Wed Apr 12 18:07:49 2023 -0500

    copied new unf usb lib

commit a34c2f4cb0931c8f41ad35841e7fe76473a5b9b7
Author: thecozies <[email protected]>
Date:   Fri May 5 11:16:57 2023 -0500

    Aligned gfx buffers to 32

commit b6d83b32910625e1e5a98745c6600c648e00641d
Merge: 7ef207735 9717d89fb
Author: Gregory Heskett <[email protected]>
Date:   Wed May 10 19:24:01 2023 -0400

    Merge pull request #624 from HackerN64/v2.0.9

    Release/2.0.9

commit 9717d89fb81efd4d2309a972b839e10a78906b2d
Author: thecozies <[email protected]>
Date:   Fri May 5 11:21:53 2023 -0500

    v2.0.9

commit 38e9b086952eae246a1e9539b6b8cdd415b2af76
Author: someone2639 <[email protected]>
Date:   Mon Mar 6 23:19:15 2023 -0500

    Fix builds on Make 4.4 (#588)

    * Fix builds on Make 4.4

    * oops

    ---------

    Co-authored-by: someone2639 <[email protected]>

commit f79517317623d0db8cdbb7ee39abf6c5270b88a2
Author: Gregory Heskett <[email protected]>
Date:   Fri May 5 18:10:26 2023 -0400

    Start samples at full velocity when using envelopes that start with a delay of 1 (#576)

    * Start samples at full velocity when using envelopes that start with a delay of 1

    This can help eliminate sample artifacting that happens during a transition between a sudden fade-in into normal volume. It's not completely eliminated due to some processing weirdness, but it's a massive improvement.

    * Fix vanilla issue causing misalignment when samples are initialized and played back with low attack values

    NOW the artifacting is actually gone for real

    * Improve artifacting bugfix

    The first solution would've honestly been satisfactory, but this one seems to be slightly more accurate while actually removing code rather than adding it

commit 312496d769b70b6fbd531b87925fcd69b1dddadf
Author: thecozies <[email protected]>
Date:   Wed Apr 12 18:07:49 2023 -0500

    copied new unf usb lib

commit d68233a1c0df5cdb4bbd04b3dfad245284a8c623
Author: thecozies <[email protected]>
Date:   Fri May 5 11:16:57 2023 -0500

    Aligned gfx buffers to 32

commit 93b5832d8c39674c0dec1ac84ad4616b10990642
Author: Gregory Heskett <[email protected]>
Date:   Thu Apr 20 21:40:25 2023 -0400

    Bugfix: Klepto holding transparent star doesn't spawn star (#622)

commit 6317475853776272b2bf4735782df6d23ae6c0be
Author: Gregory Heskett <[email protected]>
Date:   Wed Apr 19 17:03:49 2023 -0400

    Bugfix (Kind of): Fix incorrect comments for the sound IDs defined in sounds.h (#609)

    Not ultra important for decomp but otherwise makes binary hacking a massive pain when referencing sounds here

commit 7348ba89769c639180de546f4d53a499f430e67c
Author: Gregory Heskett <[email protected]>
Date:   Wed Apr 19 17:00:26 2023 -0400

    Clear all references to every object's oFloor each frame when using with dynamic collision (#616)

commit 18d8c51e3d221a5568db850f47059030db2f1b17
Author: Arceveti <[email protected]>
Date:   Tue Mar 21 12:25:19 2023 -0400

    Prevent transition looping fix (#608)

commit 16f1dc41b469a829086e5913bd35aee77c140a96
Merge: 97f7e7817 51fb2d9e9
Author: Arceveti <[email protected]>
Date:   Fri Mar 17 12:20:28 2023 -0400

    Merge branch 'develop/2.1.0' of https://github.com/Arceveti/HackerSM64 into develop/2.1.0-four-controllers-base

commit 51fb2d9e937a8c65d756655eeb12d54134ebaf02
Author: Arceveti <[email protected]>
Date:   Fri Mar 17 12:07:04 2023 -0400

    Make only shells from boxes despawn + cleanup exclamation_box.inc.c (#604)

    Fixes #583 and cleans up exclamation_box.inc.c so that it doesn't loop through the entire contents list

commit 171f3774122c710a237c5dd2aafd06bfda27ce54
Author: Arceveti <[email protected]>
Date:   Fri Mar 17 12:05:57 2023 -0400

    Fix rooms and doors (#601)

    * Fix rooms and doors

    * Update object_helpers.c

    * Update object_list_processor.h

    * Update object_list_processor.c

    * Fix formatting

    * Revert a formatting

    * Clean up geo_switch_area

    * Clean up geo_switch_area (more)

    * Move TransitionRoomData struct

    * Revert star door collision check optimization

    * Move load_object_collision_model and bhv_door_rendering_loop back out of star_door.inc.c

    * Combine metal door model IDs

    * Revert metal door sound fixes

commit f7bdca7533c4318af91b27d44cf445d033513f3e
Author: Arceveti <[email protected]>
Date:   Fri Mar 17 12:03:58 2023 -0400

    Fix end cake screen crash & flickering (#606)

commit 851ba192f6f27dda3abd21d30fe9ca7bb749d3b7
Author: Gregory Heskett <[email protected]>
Date:   Wed Mar 15 10:52:05 2023 -0400

    Add lightweight configuration settings to BETTER_REVERB (#602)

    * Add light configuration settings to BETTER_REVERB

    This can reduce runtime demand down to ~75% of the standard demand, at the cost of the configurability of generally more advanced parameters

    * Reformat the BETTER_REVERB preset entries to be easier to look at

    * :peterVOID:

    * haha lol formatting change definitely related to reverb yes this isn't unwarranted at all lmao hehe hoho

commit c09103d4560777ebfc185538687e1d50bcfe36f5
Author: thecozies <[email protected]>
Date:   Wed Mar 15 09:49:07 2023 -0500

    Invert skip room proc obj (#605)

    * Invert functionality of obj room proc to be opt-in

    * Fixed comment for enabling profiler

commit 17498e081d77c6c4ffee3fe880b3769715a1b723
Author: Fazana <[email protected]>
Date:   Sun Mar 12 16:29:08 2023 +0000

    2.1.0 Puppyprint Changes (#362)

    * Puppyprint text size

    * Update puppyprint.c

    * Revert broken render_multi_image changes

    * revert multi image tweak

    parallel momento

    * Update puppyprint debug colors to work with new hexadecimal system

    * Puppyprint color reversion to currEnv + some bugfixes

    * Remove a pointless color array

    * Add forgotten comment

    * i can type yes definitely

    * Fix some puppyprint formatting edge cases

    * Missed one last puppyprint edge case

    * Additional strLen check

    * Variable length fix + command ignoring strlen

    * type changes

    * Update puppyprint.c

    * Box clamping

    * Revamped profiling, fixed right alignment

    * Update puppycam2.c

    * Deferred printing

    * Update puppyprint.c

    * Fixed negatives being stupid

    * Puppyprint Memory view rework

    * Update level_script.c

    * tweaks

    * Fix new line spacing with different scales

    also small bit of optimisation

    * Spacing fixes

    * Lightweight text option

    * puppyprint debug now using light text where applicable

    * Update puppyprint.c

    * Update puppyprint.c

    * level select menu

    * merge profilers into one WIP

    * Fully ascii compliant

    * Finishing touches hopefully

    * Update puppyprint.c

    * new font

    * vanilla font

    * o

    * Update hud.c

    * last kerning fixes

    * Requested changes

    * requested changes

    * fix the j

    * requested changes

    * change ur clothes

    * Update surface_collision.c

    * requested changes

    * Update puppyprint.h

    * Update camera.c

    * .

    * Update puppyprint.c

    * Update puppyprint.c

    * Update puppyprint.c

    * fix J

    * font

    * font system rework

    * ia4 outline font

    * pain

    * fix deferred printing

    * fix format change

    * Add audio profiling to Puppyprint Debug

    * Optimize audio profiling substantially

    * Minor audio optimizations

    * requested changes

    * oops accidentally commited 6 lmfao

    * Update game_init.c

    * Update puppyprint.c

    * Update puppyprint.c

    * Improve Puppyprint deferred prints

    This is safer, more readable, and more runtime efficient all in the same package

    * change return type

    * fix building with profiler only

    * Update profiling.c

    * fix upscaled texture rectangles from multi image

    ---------

    Co-authored-by: gheskett <[email protected]>

commit f85b0c6946f05109f383b29640a91fdc4db91d9c
Author: Fazana <[email protected]>
Date:   Fri Mar 10 15:20:55 2023 +0000

    I think github are gonna give me badges for all these PR's (#597)

    * Update game_init.c

    * fuck you nintendo fuck you nintendo fuck you nintendo fuck you nintendo fuck you nintendo fuck you nintendo

    * Update segment2.c

    * Update model.inc.c

commit a3eaccedd47c1cc417d41720c60d5f48c620678d
Author: Fazana <[email protected]>
Date:   Fri Mar 10 15:04:01 2023 +0000

    Frustratio funny fix part 3 (#596)

    * Update game_init.c

    * fuck you nintendo fuck you nintendo fuck you nintendo fuck you nintendo fuck you nintendo fuck you nintendo

    * Update segment2.c

commit ef38abb1c0c2b39536e2a1a04003bc10556f5cb1
Author: Fazana <[email protected]>
Date:   Fri Mar 10 03:39:26 2023 +0000

    Frustratio funny fix 2 (#593)

    * Update game_init.c

    * fuck you nintendo fuck you nintendo fuck you nintendo fuck you nintendo fuck you nintendo fuck you nintendo

commit 97f7e781758e9e506a73d6f7434c0252ccb6a335
Author: Arceveti <[email protected]>
Date:   Thu Mar 9 16:06:53 2023 -0500

    Fix gControllers

commit 397e687a6c513778472d67fde9563da463b40123
Author: Arceveti <[email protected]>
Date:   Thu Mar 9 16:02:48 2023 -0500

    Add MAX_NUM_PLAYERS

commit 169e9cff2e26e96c3390cad79f01d3d79ce08ba2
Author: Arceveti <[email protected]>
Date:   Sun Oct 23 00:40:24 2022 -0700

    Support using 4 controllers at once

commit c76c5824e3d849656edfcd7d07c546a27238ec92
Author: Fazana <[email protected]>
Date:   Wed Mar 8 14:34:43 2023 +0000

    Update game_init.c (#592)

commit 81e1cb38da58ae34e7e4ac9e150181e8fa298fcb
Author: Gregory Heskett <[email protected]>
Date:   Tue Mar 7 00:32:19 2023 -0500

    Bugfix: Fix reference to missing function (#589)

commit 8d8812ab1bc0d6d7c5720de4ce7dab7af356eb4b
Author: someone2639 <[email protected]>
Date:   Mon Mar 6 23:19:15 2023 -0500

    Fix builds on Make 4.4 (#588)

    * Fix builds on Make 4.4

    * oops

    ---------

    Co-authored-by: someone2639 <[email protected]>

commit 4c67e48456a9071ddce569fc49b503b0ecf86a12
Author: Gregory Heskett <[email protected]>
Date:   Mon Mar 6 20:53:08 2023 -0500

    Add define for wiping save data if existing save data from vanilla or another hack exists (#579)

commit be753ae2200e91429df79963c782467677e8222f
Author: axollyon <[email protected]>
Date:   Mon Mar 6 20:49:39 2023 -0500

    Small improvements to object loading within rooms (#580)

    * Small improvements to object loading within rooms
    * Only check if Mario is in the same room as the object once
    * Implement object render distance within rooms (from thecozies)

    * Remove sLevelsWithRooms (also from thecozies)
    Honestly surprised this wasn't already in Hacker

    * Remove comment for sLevelsWithRooms in config_game

    * Make compatible with the painting objects PR
    Move room detection to get_room_at_pos (from Arceveti)

    * address enum comment

commit 337dac828f694d3362a071e2a9926b2dac25ce71
Author: Arceveti <[email protected]>
Date:   Tue Jan 31 15:50:19 2023 -0500

    Update macros.h + allow ALIGN macros to be used anywhere (#574)

    * Update macros.h + allow ALIGN macros to be used anywhere

    * Fix wrong alignment in synthesis_sh.c

    * Revert bitmask in VIRTUAL_TO_PHYSICAL macro

commit 1fadb78632869e4afe589651a53028cf08f8a99f
Author: Gregory Heskett <[email protected]>
Date:   Sun Jan 29 14:29:39 2023 -0500

    Prevent UB that can happen when using more than 64 total soundbanks (#575)

commit 52a7aedaf47b1a4f09f8423ea6598fd807886f0e
Author: Gregory Heskett <[email protected]>
Date:   Thu Jan 26 10:03:07 2023 -0500

    Replace debug libultra builds with their ido counterparts (#572)

    * Replace debug libultra builds with their ido counterparts

    This is necessary because GameCube controllers apparently rely on the IDO build, also the release build is IDO anyway

    * Remove fallthrough warnings from usb/debug.c

    * remove need for debug libultra with unf and use lib define in ld

    Co-authored-by: thecozies <[email protected]>

commit 7fdb5af8fd506661dd3663e039dd24576cfadf14
Author: Gregory Heskett <[email protected]>
Date:   Tue Jan 24 09:22:49 2023 -0500

    Add support for preset options to be used with BETTER_REVERB (#508)

    * Bugfix: BETTER_REVERB starts before buffers are ready

    * Add support for preset options to be used with BETTER_REVERB

    * Some BETTER_REVERB cleanup

    * The funny whoops

    * Address suggested level script change

    * Bugfix: useReverb crashes when disabled

    * Allow window size override for vanilla-esque BETTER_REVERB presets

    * Remove unnecessary downsampling limit check

    * Fix up a few things + some slight reformatting

    * Add light documentation to the BETTER_REVERB parameters

    * Adjust BETTER_REVERB preset types to make more sense

    * Reset BETTER_REVERB data buffer to be unallocated when not in use

    * Properly disable BETTER_REVERB when disabling all reverb processing

    * Remove an unnecessary BETTER_REVERB ifdef

    * Remove D_80332108

    * Revise BETTER_REVERB config description

commit d702f188c6f3c9efd6a7ce1c1225864dfeb9c27e
Author: Gregory Heskett <[email protected]>
Date:   Tue Jan 24 09:19:53 2023 -0500

    Bugfix: Stack sizes moved to main.h (#573)

    Crash screen does not enjoy importing buffers/buffers.h

commit 35dffd9b4e517bad0febb6d659ee761d44df73b8
Author: Fazana <[email protected]>
Date:   Tue Jan 24 02:13:49 2023 +0000

    Random epic tweaks (#568)

    * various tweaks to tackle redundancy

    * Update collision.inc.c

    * inline the function

    * fix surface denorms

    * oops forgot to remove a comment that I just proved false lol

    * stack asserts

    * Update main.c

    * Update main.c

    * fix bug plural s

    * Update main.c

    * comment

commit dc71aef024b1a0bf4ffbaacce36d5b346fa4bbdc
Author: Gregory Heskett <[email protected]>
Date:   Fri Jan 20 17:45:53 2023 -0500

    Vibrato optimizations (#530)

    Optimize vibrato to even exceed vanilla's implementation, all without restricting usability from the current implementation. This should save up to about 1ms of audio runtime.

commit 65d29dc33702ac590f1c78a2791ebe5937e0c221
Author: Gregory Heskett <[email protected]>
Date:   Fri Jan 20 10:31:30 2023 -0500

    Increase max number of concurrent layers and channels (#527)

    At worst, this eats up a few KB of memory. Runtime difference should be negligible when the extra data is not being used.

commit 683ac0b2bf3a3dcfe9982a7894b2fa9087b8265e
Author: Reonu <[email protected]>
Date:   Fri Jan 20 15:36:19 2023 +0100

    Added (emu-only) RCVI hack. (#425)

    * Added emu-only RCVI hack

    * newline moment

    * Changed the value to *20

    hi arthur

    * RCVI hack compiler warning

    * Revise BETTER_REVERB comments to better reflect RCVI hack's existence

    * Fix potentially confusing comment

    * More BETTER_REVERB typos :peterVOID:

    * Address requested PR changes for RCVI Hack

    Co-authored-by: gheskett <[email protected]>

commit 818da65ae678c608d4d2c8166100b18eea66b6d8
Author: arthurtilly <[email protected]>
Date:   Fri Jan 20 19:06:06 2023 +1300

    Fix huge stack allocation in surface loading functions (#569)

commit 7551748a3582ee1edf4bb552c596a3be0c92d469
Author: Arceveti <[email protected]>
Date:   Fri Jan 20 00:59:18 2023 -0500

    Remove GRAPH_NODE_TYPE_FUNCTIONAL define & restore functionality using an alternative method. (#557)

    Fixes Mirror Mario and similar things.

commit 9bec16d2f026f7f013409ab5f2cfeeda208362d9
Author: someone2639 <[email protected]>
Date:   Tue Dec 13 15:55:31 2022 -0500

    rendering_graph_node layer table updated with gcc extensions for legibility (#467)

    * rendering_graph_node layer table updated with gcc extensions for legibility

    * side effect removed

    Co-authored-by: someone2639 <[email protected]>

commit 8043823cce7ac6039d23bae8bb3bdb13f798655f
Author: Arceveti <[email protected]>
Date:   Mon Dec 12 14:40:55 2022 -0500

    Merge master/2.0.8 into 2.1.0 (#551)

    * Imminent fixes for bugs found on master branch (#512)

    * The vanilla level checks define for Yoshi is inverted, causing him to require 120 stars when it is off and appear at 0 stars when it's on

    *  The downwarp fix results in Mario levitating in midair when grabbing Bowser midair. While downwarps should still be fixed, the change should be reverted immediately until a better fix is made.

    *  Some checks of Mario's floor class were using the wrong defines, which can lead to unexpected behavior in the event anyone wants to reorder surface types. By default the SURFACE_CLASS_SLIPPERY and SURFACE_SLIPPERY defines have the same value, which is why this mistake is hard to notice.

    *  The firsty frames define was implemented poorly, not allowing for vanilla firsty behavior no matter what the values were set to. This has been reverted, while avoiding the UB in the original vanilla code.

    *  Removed the ledge grab changes that fix QSLGs and change the false ledgegrab define since Arceveti wanted to in his PR

    * Update version to 2.0.4 (#515)

    * HackerSM64 2.0.5 (#517)

    * Bugfix: race condition with accessing cleared audio memory pools

    * Bugfix: skyboxes access tiles out of range when looking straight down (#518)

    * Vscode fixes (#516)

    * Revert s32 angles and remove Angle t…
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Turning Around on Super Slippery Surfaces is Broken
2 participants