Skip to content

Math-Man/samurai-blade-continued

Repository files navigation

Samurai's Blade Mod for Binding of Isaac Repentance

samurai-blade is a mod for The Binding of Isaac: Repentance, written in TypeScript using the IsaacScript framework.

A familiar sword from a well-known samurai can now be found in the basement

(Yes, it is Muramasa from Metal Gear Rising)
This mod is still in early stages, it works but there are many features and synergies I want to eventually add, there might also be BUGS. Also it's possible that the item might be severely unbalanced, I haven't had enough time to play test sadly.

Steam Workshop Link: https://steamcommunity.com/sharedfiles/filedetails/?id=2925374699

This mod only adds a single item called Samurai's Blade which can be found as a boss drop. Picking up This item changes Isaac's attack to a unique melee weapon.

Samurai's Blade has direct and indirect synergies with most of vanilla and dlc items, so there is a lot to discover.

Although Samurai's Blade has stats of its own, all of its stats are modified by player's own stats.

Player stats and what they effect (Spoilers?)
  • Damage: Directly modifies damage by a factor of player's damage.
  • Fire Delay: Higher fire rate reduces delay between swings.
  • Shot speed: Higher shot speed reduces time required for blade to be charged.
  • Range, Shot height etc.: Increases blade's arc size.
  • Luck : Increases critical hit chance. (For now this is a simple damage increase)

All current synergies (Spoilers?)
  • All items/trinkets that give tear flags works!
  • Items that increase tear count increases the number of hits done by blade each swing.
  • Player's stats have direct impact on blade's behavior.

Known Issues

  • Pretty much all complex synergies are missing apart from ones that increase tear count.

Implementation Notes

This was my first attempt at modding BOI. It started out in LUA and I made the switch after discovering that isaac-script exists. If the code looks strange that is the reason, also I was not familiar with Typescript before this project so, yeah 😄.

Synergy Mechanics

BOI has a lot items and I mean A LOT OF ITEMS. Unfortunately I don't have time or patience to implement synergy for all of these items at once. So, I've taken a shortcut.

Tearflag Synergies

Every instance of damage done by the blade spawns a hidden tear with all tearflags of the player and with a reduced base damage multiplier, essentially unevenly splitting all damage dealt between the blade itself and tear and tearflag effects. Although this is extremely hacky, pretty much all tear flags are successfully handled by doing this.

The only problem remaining is the VFX and SFX of the tear. To handle this I've simply switched tear type to the tear that is spawned by the spirit sword which has very minimal amount of effects and doesn't look out of place when combined with items like Cricket's Body.

Complex Synergies

To handle complex synergies, the behavior needs to be injected into the flow of the game without breaking the unique behavior of the item. One such complex synergy is with the items that increase the number of shots isaac shoots every attack. There is no 'right' way of handling this synergy so I've simply increased the number of hits the blade attack can do to an enemy for every hit, this doesn't just effect the damage but the things such as knockback as well. I think this simulates the mechanical multiplier of these items almost perfectly.

Credits

  • Base sound effects are from Ultimate Sound FX Bundle.
  • Art by Von Duckling.
  • Terrible Programming by me.
  • Metal Gear series and Metal Gear Rising owned by Konami Holdings Corporation

About

A mod for Binding of Isaac and a tribute to MGSR.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published