About this mod
Want to collect all the enemy cards easily without resorting to just unlocking them all immediately? This mod changes the enemy card drop rate to 100% in most situations. Read description for exceptions.
- Requirements
- Permissions and credits
- Changelogs
If you're curious, I've noticed enemy cards do not always drop in roulette rooms, but I imagine this is because those rooms handle enemy card spawning slightly differently.
This mod is only compatible with the Steam Global, Steam JP, and Epic Global versions of the game
HOW TO ACTIVATE
You must press and hold the left stick button (L3) (or your button of choice, details below) while defeating the final enemy in the fight to activate the mod - otherwise the game will behave as intended / enemies will only have a chance of dropping an enemy card. Unfortunately the game is hard coded to only drop one reward at the end of the fight. If enemy cards are always dropped then you'll never obtain map cards. Another thing worth noting is that not holding L3 down will mean there will still be a chance (2%, 3%, or 4% chance in normal rooms) that enemies will drop their enemy card. I was considering making it a 0% chance if L3 wasn't held down but that doesn't seem necessary given how rare it normally is that enemy cards are dropped.
Button Mapping Modification
If you want to set your own button combo (or singular button) to activate this all you have to do is modify the "buttonMask" value in line 8. It needs to always be "0x" followed by 4 digits in Hexadecimal. Hexadecimal is a numbering system where you can fit 16 numbers into one digit. It goes from 0-F, or in other words:
0 1 2 3 4 5 6 7 8 9 A B C D E F
By default the button mask is set to 0x0002, which means only the left analog stick button needs to be pressed.
If you want it to be a different button you will need the values the other buttons are equivalent to (keyboard and mouse actions are sometimes bound to 2 separate buttons - if they do the same thing as what's described it should give the same value):
Order for buttons in parenthesis is Xbox/PlayStation/Keyboard+Mouse (I use a PlayStation controller primarily so if this doesn't work on an Xbox controller for some reason let me know). If there isn't a Keyboard+Mouse button I either don't know the equivalent or it doesn't have one (like in the case of L3)
Interact Button (Y/Triangle/F):0x1000
Jump Button (B/Circle/Space Bar):0x2000
Attack Button (A/Cross/Left Click):0x4000
Dodge Button (X/Square/Right Click):0x8000
Unstock Cards/Sleight: (LT/L2/C):0x0100
Lock On to Enemy (R/R2/E):0x0200
Shuffle Left (Left Bumper/L1/Shift):0x0400
Shuffle Right (Right Bumper/R1/R):0x0800
Shuffle Left (D-Pad / Arrow Key Up):0x0010
Shortcut Card (D-Pad /Arrow Key Right):0x0020
Shuffle Right (D-Pad / Arrow Key Down):0x0040
Start of Deck (D-Pad / Arrow Key Left):0x0080
Enemy Cards / Map (Select/Share/N): 0x0001
Left Stick Click/L3 (seemingly no KB+M equivalent, as this button does nothing in-game): 0x0002
Center Camera (Right Stick Click/R3/Click Middle Mouse):0x0004
Pause Menu (Start/Options/M):0x0008
If you want to make a combined button combo - say Y+LT+D-Pad Up+Select for instance - you'd have to combine their values into one. This would give you a Hex value of 0x1111. Pretty easy so far. If you wanted all buttons at once for some reason that'd be 0xFFFF. If you wanted no buttons (and therefore it would always drop enemy cards, but never any Map Cards) it'd be 0x0000.
So in order to get the combo you want if they're on the same row you just need to add them. Attack and Dodge buttons at the same time would give you a value of 0xC000 (0xC is 0x8 and 0x4 added together - AKA 0xC is equivalent to 12). If you're worried about getting the number right yourself, no worries - windows comes with a built in Hex Calculator.
Simply open the built-in Windows Calculator, Select the hamburger button menu on the top left (the 3 lines next to the word "Standard"), select Programmer, Select HEX, and then just add Hex values you want together.
For the programming nerds - fun fact I learned while crying over this mod for a few days: This game calculates enemy card drops wayyyy differently than I expected. I was searching for the drop chance in every way I could conceive. I saw on the wiki that some rooms would increase the odds by 2.5x and that the values at base ranged from 2% to 4%. I tried scanning for those values in memory but couldn't find anything for the life of me. I even tried doing some asm scanning for all types of 2.5 multiplications but considering I'm new to this side of modding it was not successful and I had to painstakingly track it down via some breakpoints and steps for hours at a time :(
Anyway, what I ended up finding out is this game calculates enemy drops by taking a hex value and directly converting it to a float. And I mean directly. 0x0004 becomes 00.04. That's super backwards to everything I know about hex but maybe it's the norm in some games - regardless it was news to me!