Hey, finally figured out what was going on here. Turns out it was the system language setting. Just updated version 1.1 with a fix. Let me know if it works!
Eli Vazquez
Creator of
Recent community posts
Very cute concept! Trying to weave around golf balls to get to the golfer was exciting. Being able to eat golf balls right before they explode offers a cool risk/reward twist. It also rewards you for getting to the golfer quickly before they pick up their ball, adding another layer of strategy.
I did feel like it got repetitive after a while. Wish it had some sort of escalation, like a different enemy type (different club types, sand traps popping up, caddied driving by in golf carts, lots of thematic possibilities). Maybe there is more and I just didn't make it that far? IDK. Regardless, a clever and fun little game.
Really great game! I'll admit I was frustrated into almost quitting at first, but I'm glad I stuck with it. Runs where the luck just doesn't go your way were frustrating, but it just makes getting on a good run that much more tense. The ability to control your randomness via rerolling and replacing faces of your dice gives the game a different kind of strategy, more about hedging your bets than devising the perfect plan. I also really like how you could abuse encounters to farm health if you knew what you were doing.
I will admit that I was only able to beat the game by abusing what I assume was a bug where you could reroll your number by pressing the button really quickly after the initial roll before it switches to the other die. However, I actually really like the bug and think it would make a good mechanic; it forces your to make a split second decision about whether the number is good enough, and you can potentially screw yourself over by getting a lower number.
Also, for those curious, my final winning loadout was two defends, one attack, one attack all, one double attack, and the shield which gives you +3 to your defend rolls (no sword upgrades used)
Really great art and sound! The sonic-like spin attack when jumping on enemies was also cool. My main gripe is that the controls felt a bit slugish. The fact that you don't change your facing direction when turning around until your momentum has completely stopped makes it kinda frustrating to aim when there are enemies on either side of you. But, overall, a pretty fun game!
Thanks for playing! I'm glad you enjoyed the game. You can find the devlogs on the game's store page just under the download section, though they're mostly just patch notes with some design discussion.
MonoGame is great in terms of the amount of freedom it gives you to make what you want from scratch, but that also means you have to deal with some annoying technical stuff most engines would take care of for you. The default audio API in particular isn't very good, so it's recommended that you use some type of audio middleware.
If you need help getting started, I used GameFromScratch's tutorial series on YouTube. There's also plenty of documentation of the MonoGame website.
Sorry for the late response!
I'm glad to hear it! Thanks for being patient as I fixed the game; most players wouldn't be so kinds as to submit multiple detailed bug reports. This experience has also been really enlightening. I never considered how foreign language computer settings could affect my game. I suppose this is what I get for using a custom game engine. Thanks again for your help!
Sure thing! Here's how it works:
- The environment is stored as a 2D array of pixel object, which each stores its current color (black pixels are just null, with no pixel object).
- When a blood drop hits a wall or passes over a pixel object in the background, the addColor(Color c) function is called on the pixel at that (x, y) coordinate.
- If the pixel's current color is not c, then its color gets changed to c, thus coloring it in.
- If the pixel's current color is already c, then addColor(Color c) gets called on all adjacent pixels, thus spreading the color.
- (Make sure to use a set of pixels to keep track of the ones you've already visited so you don't visit the same pixels multiple times).
- (You may also want to add a range to the maximum spread distance, or prevent color from spreading upwards depending on your needs).
That's the basic version of how it works. It gets more complicated if you want to add in color mixing like I have in Blood Pressure, but I'll leave that up to you to figure out. I should also mention that this system works well in Blood Pressure because of the simple, monochrome artstyle with a lot of negative space. IDK how well it would work with other artstyles, but feel free to experiment.
I made the engine myself using the MonoGame framework: https://www.monogame.net/
I find that having a custom engine gives me a greater degree of control, and I don't have to hunt down documentation when something goes wrong since it's all my own code. However, it can be pretty difficult building everything from scratch, so it isn't something I'd recommend for everyone.
You're right! This should be fixed in the version I just uploaded. Sorry for the hassle; I didn't realize that foreign language settings would mess with the in-game text like this.
(BTW, the "controls" menu will still display "?"s for some characters, but it shouldn't crash the game).
Hopefully that's the last of the crashes!
Okay, I figured it out. It's not the Turkish keyboard but rather the Turkish language setting. Apparently, the Turkish language setting on Windows autocorrects all of the lowercase i characters to Turkish ı characters which the game doesn't know how to handle. Since the game displays all text as uppercase anyway, I just manually changed all the text in the game to uppercase. The game shouldn't crash anymore in the version I just uploaded. Thanks for helping me fix this bug!
Thanks for the bug report! The Turkish keyboard is definitely the problem; I imagine it has characters not present in the game's font, hence it getting replaced by a "?". I hadn't considered international keyboards. The new version I just uploaded should stop the game from crashing when this happens. Although the character will still be displayed as "?", the game should function as normal. Let me know if it still doesn't work.
Thanks again for your helpful comment!
Thanks for the bug report! After reading your comment, I was finally able to fix the bug! As it turns out, it was being caused by the menu explosion effect when starting the game. If you assign jump to a button with lower case letters like "Space", the explosion effect isn't programmed to handle it. A simple one line fix. The fixed version will up shortly.
Also, thanks for suggesting an easy mode. That's definitely something I'll be looking at for the full version.
Thanks for your help!
Sorry to hear that. I haven't run into this issue myself, so I don't 100% know what's causing it. My guess is that an error is occurring when the game attempts to save, since hitting new game creates a new save file.
Try playing the new version I just uploaded. If I'm right, it should no longer crash, though saving won't work.
Sorry to hear about the save file. I've heard some other people having problems with that, but I'm not sure what causes the issue. I cannot reproduce the bug on my end, which makes it difficult to fix.
When you go to the game folder, is there a "savedata" file? If so, what does it say inside when you open it with notepad?
Sure thing! Here's how it works:
- The environment is stored as a 2D array of pixel object, which each stores its current color (black pixels are just null, with no pixel object).
- When a blood drop hits a wall or passes over a pixel object in the background, the addColor(Color c) function is called on the pixel at that (x, y) coordinate.
- If the pixel's current color is not c, then its color gets changed to c, thus coloring it in.
- If the pixel's current color is already c, then addColor(Color c) gets called on all adjacent pixels, thus spreading the color.
- (Make sure to use a set of pixels to keep track of the ones you've already visited so you don't visit the same pixels multiple times).
- (You may also want to add a range to the maximum spread distance, or prevent color from spreading upwards depending on your needs).
That's the basic version of how it works. It gets more complicated if you want to add in color mixing like I have in Blood Pressure, but I'll leave that up to you to figure out. I should also mention that this system works well in Blood Pressure because of the simple, monochrome artstyle with a lot of negative space. IDK how well it would work with other artstyles, but feel free to experiment.
Thanks for the question! The game is made with MonoGame. It's not an engine, but rather a framework which handles assets, inputs, etc. The rest is really just written by me from the ground up. I like it because it gives me a lot of freedom with how I program the game, although it does mean I have to program most of it from scratch.