Commit Graph
100 Commits
Author SHA1 Message Date
MeirGavish 9a4aaca399 Fixed #575 incorrect joker sell value displayed after displaying description (#576) 2026-07-02 13:26:00 +03:00
4d26f13c26 Add logging macros that include the function name (#557)
* Added function name logging to mgba_logger

* Addendum to no-op defines

* Fixed compile errors

* Added "()" to function name in log to make it clearer it's a function

* Corrected documentation

* clang-format...?

* Removed MGBA_LOG_LEVEL_MASK magic number

* Added CHECK_NULL_ARG macros

* clang-format...?

* clang-format for real

* Added documentation for CHECK_NULL_ARG_VOID and CHECK_NULL_ARG_RET

* Fixed typo

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* Fixed macro safety by wrappinh with do-while

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* Fixed format string cut risk in mgba_func_printf

* clang-format

* clang-format some more

* clang-format for real

* Fixed DEBUG -> INFO in comment

Co-authored-by: Rickey <ric@rf3.xyz>

* Moved NULL-check macros to util.h and renamed them

* Small additions - macro rename + clang-format

* Truncate the string instead of the function name

* Cleaned up code from previous commit

* clang-format

* Added mgba_logger_available check to mgba_func_printf

* Updated documentation for latest change

* Changed CHECK_NULL_ARG functions to generic RETURN_ON_ERROR_VAL functions.

* clang-format

* Changed back to specifically check NULL

* clang-format

* Changed "=" into "==" in the error message

* clang-format

* Fixed forgotten "=="

---------

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Rickey <ric@rf3.xyz>
2026-06-28 06:54:47 +03:00
MeirGavish d2cdc7af1b Fixed argument on calls to obj_unhide (#562) 2026-06-16 18:23:00 -07:00
MeirGavish 2ea3e7b19c Removed dubious sprite_object cast from long ago (#538) 2026-06-09 19:38:47 -07:00
MeirGavish 47e0e3ae0e Fixed issue #528 - incorrect joker sell value display (#529) 2026-06-02 18:34:32 -07:00
MeirGavishandRickey 21d8d912ab Replaced lose sound effect with original ripped sound effects (#522)
* Replaced lose sound effect with original ripped sound effects

* Increased lose sfx sample rate to 44.1khz - quality is better and rom size seems unaffected

* Update source/game/game_over.c

Co-authored-by: Rickey <ric@rf3.xyz>

* Fixed game over sfx constants types


---------

Co-authored-by: Rickey <ric@rf3.xyz>
2026-06-01 00:16:45 +03:00
MeirGavish 8dc96b6bbb Refactor - Moved shop data structures to shop.c/.h (#521)
* Moved shop data structures to `shop.c/.h`

* Renamed static variables and reset function
2026-05-31 12:32:27 +03:00
MeirGavish 9561e0e738 Music - The Rest of It (#443)
* Music - copied echo melodies from old branch `music_past_echo_triads`

* Music - increased volume and panning of panned echo triads

* Music - compatibility save

* Music - reduced the bolume of panned echo triads back but kept the panning

* Music - added note cut at the end of marimba climbs + increased the volume of the background drone a bit

* Music - added up to measure 54 - finished echo leads

* Music - Fixed backing error in the echo leads (missed subdominant section)

* Music - Fixed backing drone crescendo

* Music - Made the backing drone a bit more subtle

* Music - Improved last lead echoes

* Music - Finished last measures mallet arpeggios + added crash cymbal in the beginning

* Music - removed crash cymbal in the beginning, doesn't sound good compiled

* Music - Reduced first marimba arpeggios by one octave

* Music - Added subtle crescendo in dotted eighth scale walk

* Music - reduced volume and added crescendo to the drone in the beginning

* Music - Increased the last echo lead by an octave

* Music - Switched the panning of the last panned echo triad so it correctly alternates

* Music - Fixed panned echo triads panning inconsistencies
2026-05-06 09:57:12 -07:00
MeirGavish a488d523f0 Update bug report template (#447)
Added a new option for specifying builds from source in the bug report template and added issue type bug.
2026-04-26 12:52:34 -07:00
MeirGavish a3ef7b1493 Fixed blind sprite flip issue by removing affine attribute (#439) 2026-04-17 19:45:45 +03:00
MeirGavish 18f70714ce Increased number of audio channels to 14 (#409) 2026-03-29 20:04:25 -07:00
MeirGavish 34fb0b22db Fixed Shortcut joker ID for #410 (#411) 2026-03-29 11:19:09 -07:00
MeirGavish 461584b674 Music - up to measure 46 (#322)
* Music - Added portamento and note stops to the lead melody

* Added OpenMPT .bak files to .gitignore

* Music - Expanded the module 2x for more accurate quasi-triplet + added 2-3 measures

* Music - Added pitch bend and fixed decorative note

* Music - Added measures 31-32

* Fixed wrong G/D chord sample

* Music - added measures 37-38

* Music - Added echo quasi-square

* Music - layered the quasi-square with the keyboard

* Music - small reduction to quasi-square volume

* Music - more volume adjustments

* Music - added measures 39-32 (triad chords)

* Music - raised the triad chords one octave

* Added missing repetition measures 33-36

* Music - More repetition measures 43-46

* Music - fixed pitch bend in measure 30

* Music - Added tremolo to the lead synth

* Revert "Music - Added tremolo to the lead synth"

This reverts commit 3ffee4684521989501239fbfae6b1276bf713818.

* Music - reduced the triad chords by an octave

* Music - Added lead melody fade-out and reduced triad chords volume

* Music - Added channel 7, and unused channel 8

* Increased the triad chords volume back

* Music - Added panned backing chords (used all 8 channels)

* Music - Added all the panned backing chords

* Music - fixed last echo note

* Music - Added background fifth drown to triad chords

* Music - reduced panning of panned chords

* Updated music arrangement credits in README
2026-03-09 11:17:17 +02:00
MeirGavish 1d71be674d Changed the capitalization of hand names and centered them (#391) 2026-03-08 15:31:19 +02:00
MeirGavish 45b2275b68 Fixed round counter not resetting on game over + removed unused variable (#394)
* Fixed round not resetting on game over + removed unused variable
2026-03-07 11:45:49 +02:00
MeirGavish 25b706789d Updated CONTRIBUTING.md with scope and art sections (#388)
* Updated CONTRIBUTING.md with scope and art sections

Added sections on project scope and art contribution guidelines.
2026-02-26 15:47:20 +02:00
MeirGavish 37a29440de Sprite documentation addendum note (#381) 2026-02-11 23:42:10 -08:00
MeirGavishandCopilot b292d227f9 Fix round start top left blind panel animation background (#377)
* Refactored helper sides copying code in expand 3x3 code

* Implemented main_bg_se_copy_expand_3w_row()

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-31 08:13:54 +02:00
MeirGavishandCopilot 0f9ebd56f6 Changed L and R keys to play and discard respectively (#374)
* Changed L and R keys to play and discard respectively, removed sorting key in favor of on-screen buttons

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-28 19:08:47 +02:00
MeirGavish 97bf8b3efd Added sort by rank/suit buttons (#351)
* Added definitions for sorting buttons (cherry pick, does not compile)

* Re-applied changes lost in merge

* Added sort buttons functionality (cherry-pick, has issues)

* Fixed sort buttons issue

* Removed stray code from merge

* clang-format

* Removed code from merge error

* Removed unused function from merge error

* Removed "E" typo from "SUIT" button

* Changed all the 2x5 S's in the UI to be 1 pixel wider at 3x5

* Revert "Changed all the 2x5 S's in the UI to be 1 pixel wider at 3x5"

This reverts commit f70e0d5ab76dd851c564672c01ab60cd25c28b63.

* Changed the width of the "SUIT" button to be consistent with the "RANK" button
2026-01-24 10:06:51 +02:00
MeirGavish 8e1867d235 Switch example gameplay gif to updated video in README (#366) 2026-01-19 09:22:42 +02:00
MeirGavish fd2235d2f6 Update control instructions in README.md (#365) 2026-01-19 09:22:09 +02:00
MeirGavish bb82ab69af Encoded palette indexing in background pngs (#350) 2026-01-15 17:09:04 -08:00
5300846f73 Refactored to use selection grid during round (#348)
* Added wrapping to selection grid

* Added return value to on_selection_changed to allow aborting on wrap

* Extracted button code to button.c/.h

* Bounds checking changes for selection_grid_move_selection_horz()

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Rickey <ric@rf3.xyz>
2026-01-15 20:32:09 +02:00
MeirGavish b7cc3ec5d6 [Optimization] Slow score lerping from 60 to 30 FPS (#336) 2026-01-14 16:43:53 -08:00
MeirGavish d56528bc5a Changed to custom Balatro font by @MathisMartin31 (#340)
* Changed to custom Balatro font by @MathisMartin31

* Made tweaks to the font

* Tweaked F and y
2026-01-07 17:54:43 -08:00
MeirGavish db9879b5b5 Added blind score requirement and reward in blind select screen (#282)
* Added blind select requirement and rewards printing

* Broke game_blind_select_print_blinds_reqs_and_rewards() into separate functions
2026-01-06 11:06:24 +02:00
MeirGavish 34889988a9 Added documentation to get_played/hand_distribution (#343)
* Added documentation to get_played/hand_distribution

* Documented get_played_distribution() behavior
2025-12-28 11:20:30 -08:00
MeirGavishandCopilot 6575fc7f94 Update the truncate number function to use decimal point (#333)
* Fixed to truncate as "1.234M" instead of "1234K"

* Optimized by switching to strings to avoid divisions

* Changed FP constants to strings

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-12-23 07:52:30 +02:00
MeirGavish f76c25614c Change selection grid to maintain relative horizontal position when switching rows (#329)
* Change selection grid to maintain relative horizontal position when switching rows

* clang-format

* Fixed joker selling index error

* Protect against division by 0 and removed redundant fixed point conversions.
2025-12-21 22:00:08 -08:00
MeirGavish 8fb0813cf5 Fixed incorrect swapped font mapping for .2 and .3 (#332) 2025-12-19 12:18:33 -08:00
MeirGavish 34419a589f Music - Fixed wrong G/D chord sample (#321)
* Fixed wrong G/D chord sample

* Added openmpt .bak files to .gitignore
2025-12-16 22:47:58 +02:00
MeirGavish e90f23661d Sound effects for score accumulation and blind menu pop-up (#313) 2025-12-16 10:32:04 +02:00
MeirGavish 177a3a9741 Fixed bug where the mult wasn't truncated (#315) 2025-12-16 09:53:50 +02:00
MeirGavishandRickey f095bf7024 Added documentation for selection_grid.h (#309)
* Added documentation for selection_grid.h

* Fix clang-format

* Update include/selection_grid.h

Co-authored-by: Rickey <ric@rf3.xyz>

* Added NULL-checks for selection_grid_move_selection_horz/vert()

---------

Co-authored-by: Rickey <ric@rf3.xyz>
2025-12-15 21:16:25 -08:00
MeirGavish 81e6b7ab31 Button sound effect (#312)
* Removed magic number for CARD_FOCUS_SFX_PITCH_OFFSET_RANGE
2025-12-13 16:10:15 +02:00
MeirGavish 8a9750b0b3 Used proper text centering for price printing and consolidated functions for printing and erasing (#308) 2025-12-13 09:03:06 +02:00
MeirGavish ae5369b8fe Added C standard gnu23 to the makefile (#288)
* Added C standard gnu23 to the makefile

* Added gnu23 standard to all test modue makefiles

* Added installation of latest gcc version to tests workflow

* Fixed typo in previous commit

* Made GCC 14 installation conditional and moved from the workflow to the script

* Extracted GCC version check to external script for CI and created tests README

* Added #!/bin/bash

* Make check_gcc_version.sh executable
2025-12-12 18:46:03 -08:00
MeirGavish 9bffe5c9a9 Refactor - remove selected from SpriteObject (#305) 2025-12-12 18:44:26 -08:00
MeirGavish 16b24a0bf9 Updated splash screen with new organization URL (#306) 2025-12-10 23:00:46 -08:00
MeirGavish 1e1fe85b88 Merge pull request #227 from GBALATRO/music_relayer_chords
Music - Relayered chord samples
2025-12-11 07:02:20 +02:00
MeirGavish 0698d27ce9 Music - Switched to 44.1kHz chord samples 2025-12-11 07:00:38 +02:00
MeirGavish a4e1fab100 Music - Switched chords to C-based samples (+reused some frames instead of copy-pasted ones) 2025-12-11 07:00:38 +02:00
MeirGavish d22fcb0056 Music - Relayered chord samples 2025-12-11 07:00:38 +02:00
MeirGavish d96bc9b1c2 Renamed GBLA_UNUSED -> GBAL_UNUSED and updated RowOnKeyTransitFunc documentation (#292) 2025-12-10 17:17:28 -08:00
MeirGavish 5a4856ec82 Refactor - removed tile_mem obj charblock index magic number (#293) 2025-12-10 17:13:59 -08:00
MeirGavish 7bd510ee5f Update README for consistency in capitalization 2025-12-07 15:37:28 +02:00
MeirGavish cf746c597e Update README with joker swap controls
Added controls for swapping jokers in the shop.
2025-12-07 15:36:43 +02:00
MeirGavish 28ff6c81ef Fixed bug where reroll button is triggered by any key (#279) 2025-12-05 10:06:43 +02:00
MeirGavish 9f170f298d Restored removed joker shop availability check function (#276) 2025-12-04 18:21:10 -08:00
MeirGavishandCopilot 43d837571e Truncate Scores (#269)
* Fixed score truncation erasure, and centering for chips, mult, score and "temp score

* Added centering for money

* Added tests for truncate_uint_to_suffixed_str()

* Fixed u32 bug with get_digits

* Fixed score flames for large numbers

* Small change to update documentation

* Added 1 pixel on to score rect on the left to make room for full character tile + reset_top_left_panel_bottom_row() refactor

* Replaced directional defines with enums

* Updated ante_lut comment

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-12-02 08:28:36 +02:00
MeirGavish 2d7394f03e Fixed corners for Banner joker (#271) 2025-11-30 17:57:05 +02:00
MeirGavish 4a5753c068 Merge pull request #260 from ricfehr3/clang-format-splash-screen
Clang format splash screen
2025-11-24 07:58:36 +02:00
MeirGavish f51380c93c Added sound effects for chips, mult, and xmult (#229) 2025-11-22 07:27:43 +02:00
MeirGavish 4567a8e1ad Added credits to readme (#247)
* Added credits to README.md
2025-11-21 16:04:31 +02:00
MeirGavish f3f375cef1 Banner Joker art update by @GreenNinja2525 (#242) 2025-11-16 20:18:14 +02:00
MeirGavish 557e591c31 Merge pull request #223 from cellos51/integrate_photograph
Integrated Photograph joker art by @MathisMartin31
2025-11-13 08:38:28 +02:00
MeirGavish 28043bd7ca Integrated Photograph joker art by @MathisMartin31 2025-11-12 14:11:16 +02:00
d5f59e904b Fixed game stuck due to interest bug + cleanup refactor (#214)
Co-authored-by: MeirGavish <34395426+MeirGavish@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: MeirGavish <34395426+MeirGavish@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
2025-11-07 00:33:52 +02:00
MeirGavish 64dd586df8 Optimized score lerping by changing the number of steps to a power of 2 (#211) 2025-11-06 12:15:07 +02:00
MeirGavish 247d1339c0 Update Hanging Chad art (#207) 2025-11-03 08:42:10 +02:00
MeirGavish ada2650c50 New Run Button (#206)
* New Run Button

* Refactor - replaced cashout copies with main_bg_se_copy_expand_3x3_rect() - WIP (Palette still messed)
2025-11-03 07:34:46 +02:00
MeirGavish fbf8cba9db Merge pull request #203 from ricfehr3/hotfix/nightly-zip-creation
Junk directories on release zip
2025-11-02 08:34:15 +02:00
MeirGavish dfe6edad88 Refactor - Replaced magic number copies with main_bg_se_copy_rect() (#192) 2025-11-01 08:12:20 +02:00
MeirGavish b472ce2bad Changed the order of suits to match the original Balatro (#189) 2025-10-30 11:18:36 +02:00
MeirGavish 5a3e891e43 Merge pull request #178 from cellos51/allow_additional_joker_testing
Added option for a second test joker
2025-10-25 15:22:52 +03:00
MeirGavish b01e9e5f01 Added option for a second test joker 2025-10-25 15:18:23 +03:00
MeirGavish a083d3de74 Moved pool file out of external definition and replaced it with a flag (#176)
* Moved pool file out of external definition and replaced it with a flag
2025-10-22 22:43:02 +03:00
MeirGavish e45c1eeb22 Merge pull request #172 from cellos51/start_music_after_splashscreen
Changed music to start after Splash Screen
2025-10-22 06:41:29 +03:00
MeirGavish 9b568e8e1a Moved undefined game state to enum end (more xmacro idiomatic) 2025-10-21 12:50:18 +03:00
MeirGavish 9c78094399 Fixed invalid access to game state array 2025-10-21 12:49:02 +03:00
MeirGavish 0b848cd72e Merge branch 'main' into start_music_after_splashscreen 2025-10-21 12:25:07 +03:00
MeirGavish 8a4242e81e Merge pull request #132 from ricfehr3/feature/replace-malloc-with-pools
Feature/replace malloc with pools
2025-10-21 12:03:52 +03:00
MeirGavish 462c040e9a Changed the check in game_change_state() to full bounds checking 2025-10-19 11:45:48 +03:00
MeirGavish 53d2e53d78 Changed music to start after Splash Screen 2025-10-17 13:43:21 +03:00
MeirGavish f725c5e1b8 Merge pull request #155 from drewjohnson2/stateRefactor
State refactor
2025-10-17 11:51:24 +03:00
MeirGavish 6dce57e197 Merge pull request #145 from pansythoughts/main
kind of fixed how game_speed behaves
2025-10-14 13:57:40 +03:00
MeirGavish b5b7c856d6 Merge pull request #133 from ricfehr3/refactor-blinds
Cleanup, Refactor blinds into a map
2025-10-14 13:46:27 +03:00
MeirGavish f36fa5e998 Merge pull request #169 from cellos51/implement_joker_testing
Implement joker testing
2025-10-13 21:27:42 +03:00
MeirGavish 71de180871 Merge branch 'main' into implement_joker_testing 2025-10-13 20:59:17 +03:00
MeirGavish 8c25089966 Allow defining an ID for a joker to always appear in shop and be tested 2025-10-13 20:58:44 +03:00
MeirGavish d7f64d3570 Merge pull request #166 from cellos51/integrate_joker_art
Added art for Jokers Bootstraps by @MathisMartin31 and @noctowlhoot and Pareidolia by @NoWhammies10 and @MeirGavish (jokers rearranged for palette optimization)
2025-10-09 23:54:56 +03:00
MeirGavish 9d1a51884f Added art for Jokers Bootstraps by @MathisMartin31 and @noctowlhoot and Pareidolia by @NoWhammies10 and @MeirGavish (jokers rearranged for palette optimization) 2025-10-09 23:42:07 +03:00
MeirGavish 609e1f19b6 Merge pull request #159 from MathisMartin31/main
Add Pareidolia and Acrobat Jokers
2025-10-09 20:43:36 +03:00
MeirGavish 30638b65e2 Merge pull request #164 from ricfehr3/hotfix/hand-input-order
Fix softlock related to #163
2025-10-09 15:16:56 +03:00
MeirGavish 94cb898bb9 Merge pull request #134 from drewjohnson2/magic_numbers
Magic numbers
2025-10-09 11:18:02 +03:00
MeirGavish 9b6c77ea3f Merge pull request #119 from Nanrech/pr-fix
Add blueprint and brainstorm jokers
2025-10-08 22:46:01 +03:00
MeirGavish 4b35b2f7d8 Added art for jokers Blueprint and Brainstorm by @NoWhammies10 and @GreenNinja2525 2025-10-08 22:40:15 +03:00
MeirGavish f257ec03af Merge pull request #150 from ricfehr3/docs/update-docs-docker
Update docs for docker
2025-10-08 10:32:11 +03:00
MeirGavish 296c489562 Merge pull request #162 from cellos51/integrate_joker_art
Integrate joker art
2025-10-08 00:45:09 +03:00
MeirGavish ae40949008 Fixed Bull border corner transparency 2025-10-08 00:18:30 +03:00
MeirGavish 77f76bd4ef Removed "unused" attribute from integrated jokers 2025-10-08 00:05:37 +03:00
MeirGavish a0f1ef7780 Added art for xmult hand jokers The Duo The Trio, The Family, The Order, and The Tribe by @MathisMartin31 2025-10-07 23:52:49 +03:00
MeirGavish 73c2db6b69 Merge pull request #143 from ricfehr3/feature/ci-release-on-tag
Add uploading ROM on tag push
2025-10-07 23:04:19 +03:00
MeirGavish c529c4be69 Added art for jokers Abstract Joker by @MathisMartin31 and Bull by @NoWhammies10 and @GreenNinja2525 2025-10-07 21:26:43 +03:00
MeirGavish 46936c1878 Added art for jokers Raised Fist by @MathisMartin31 and Reserved Parking by @NoWhammies10 2025-10-07 21:13:31 +03:00
MeirGavish 22ddd83931 Merge pull request #138 from Seafoamm/main
Add macOS setup instructions
2025-10-07 16:20:01 +03:00
MeirGavish f7c68934f7 Merge pull request #146 from noctowlhoot/main
Added more Jokers all outside of scope, some with art available already from MathisMartin31
2025-10-07 13:01:48 +03:00
MeirGavish 4fc0fbf5a8 Merge pull request #139 from mannodermaus/wrap-hand-input-on-oob-movement
Wrap around hand selection when going out of bounds horizontally
2025-10-07 12:56:53 +03:00
MeirGavish f579c13ceb Merge pull request #149 from GreenNinja2525/main
Fix Dynamic Badges (Hopefully) [Now Safe to Merge]
2025-09-27 21:44:27 +02:00