About this mod
This is a mod for Stardew Valley which plays Jhin, the League of Legends character's, counting voiceline each time the slingshot is used. It keeps track of the last voiceline and uses the appropriate next one (ie. "One" then "Two").
- Requirements
- Permissions and credits
- Changelogs
- Donations
This is a mod for Stardew Valley which plays the Jhin counting voiceline each time the sling shot is used. It keeps track of
the last voiceline and uses the appropriate next one (ie. "One" then "Two").
Install
- Install the latest version of SMAPI.
- Download this mod and unzip it into Stardew Valley/Mods.
- Run the game using SMAPI.
Motivation
I really enjoy the game and thought it would be a fun intersection of my two favorite things. It was a good introduction to
modding in Stardew and will be a good stepping stone to a larger mod project I have in mind.
Technical Details
The selection of events raised by SMAPI left a lot to be desired. I wanted an event at least for when the player uses a tool, but I did not find that. Instead, I wrote a handler for the GameTick event and checked if the player was "Using Slingshot" and keeps track of that value. The current value is compared against the previous one to detect a falling edge (Using -> not using). That triggers the playSound method which checks what the correct sound to play is.
Challenges
- As mentioned before, the SMAPI does not offer a lot of events to bind handlers to. Whether that is a shortcoming of the extension or the
base game, I cannot say. - The soundbytes for Jhin were obtained from the League of Legends fan wiki. There is no easy way to download the sound files, but inspecting
the html source reveals the URL for each sound byte. These came in .ogg format. - Through some error of the System.IO.FileStream() constructor, it was having issues opening the .ogg files. Luckily SV accepts .wav sound
format as well. That worked fine.
- Addition of a configuration file that allows sounds to be disabled, sound activation frequency (not every use of slingshot, etc), skin sounds to use (Dark Cosmic, Vanilla, High Noon, etc).
- Custom weapon with similar mechanics to LoL's in-game.
- Visual effect change for fourth shot.