War Maker by David Boeger

War. The world is engulfed by it. Millions have died. Millions more will starve or be killed. The global economy is in ruins. The last remaining nations on Earth have divided themselves into 2 opposing sides, each bound by ideology to conquer the other. Redania fights for law and order. Bluezbekistan fights for liberty. Many predict this will be the war to end all wars...
...which would be terrible for business! As the newest sales recruit for Freedom and Piece, Inc., the only remaining arms dealer and defense contractor large enough to supply both sides, you have been tasked with preserving the power equilibrium between Redania and Bluezbekistan through strategic pricing and contract negotiation. You are the military industrial complex's last line of defense. Now go, prolong the war, and secure this company's financial future!
And remember our company motto: Having freedom, means having a piece!!
Can you beat the developer's high score?

NOTE: I've opted out of as many categories as possible after the jam, as I should have done before, because ratings are not aligned with what I was looking to get out of this jam. I apologize for wasting the time of the people who were gracious enough to give me ratings. Thank you so much for your contributions, and I hope I can incorporate all your wonderful feedback going forward.
Ratings
| Overall | 842th | 3.197⭐ | 35🧑⚖️ |
| Fun | 820th | 3.045⭐ | 35🧑⚖️ |
| Innovation | 813th | 3.091⭐ | 35🧑⚖️ |
| Theme | 1007th | 2.924⭐ | 35🧑⚖️ |
| Graphics | 1056th | 2.297⭐ | 34🧑⚖️ |
| Humor | 467th | 3.081⭐ | 33🧑⚖️ |
| Mood | 744th | 3.094⭐ | 34🧑⚖️ |
| Given | 30🗳️ | 43🗨️ |
```
Caused by: MediaException: UNKNOWN : com.sun.media.jfxmedia.MediaException: Could not create player! : com.sun.media.jfxmedia.MediaException: Could not create player!
at javafx.scene.media.MediaException.exceptionToMediaException(MediaException.java:146)
at javafx.scene.media.MediaPlayer.init(MediaPlayer.java:511)
at javafx.scene.media.MediaPlayer.<init>(MediaPlayer.java:414)
at com.sluggames.WarMaker.audio.music.Music.<init>(Music.java:76)
at com.sluggames.WarMaker.audio.music.Music.<clinit>(Music.java:39)
... 12 more
Caused by: com.sun.media.jfxmedia.MediaException: Could not create player!
at com.sun.media.jfxmediaimpl.NativeMediaManager.getPlayer(NativeMediaManager.java:274)
at com.sun.media.jfxmedia.MediaManager.getPlayer(MediaManager.java:118)
at javafx.scene.media.MediaPlayer.init(MediaPlayer.java:467)
... 15 more
Exception running application com.sluggames.WarMaker.WarMaker
```
There are some noticable cuts in the first couple of sentences, but overall it sounds quite good. I liked the intonation change from serious tone on serious matters that affect whole humanity to "We are just making money of it" kinda tone.
In regards to gameplay it's pretty basic and you don't even need two handles most of the time. I played for a couple of minutes setting one somewhere in the middle and using just the other one. All was fine until I yawned, blinked lost my attention for a moment and suddenly the world has ended in a fire of nuclear explosion the Bluezbekistan won.
As for the feedback, I would suggest making it harder and harder as time goes to keep balance and somehow preventing players to be just fine using the single handle.
@Kobrar Thanks for your kind words! I was absolutely passionate about this game, but I spent way too long trying to fix bugs with issues that ended up going up in smoke and getting cut from the game. For example, those circles that spawn in the beginning were supposed to be defense turrets that shot down the missiles, and they were also supposed to take damage. Some day, I hope to make a sequel from scratch that actually meets my original vision, as I think this game is simple but hilarious fun.
@sirikan Thanks for the feedback! Yes, I originally planned to have a voiced tutorial that would teach the player how to play. Unfortunately, the game was extremely buggy and I just had to cut it out to save time. Hopefully the gameplay was simple enough to learn with a bit of experimentation. I apologize for any confusion, as I normally take player on-boarding pretty seriously.
@detectiveLosos Yeah, the voice work was absolutely terrible quality, but it helped to establish the setting and humor. As for balancing, the actual #1 problem I had was not with the difficulty itself, but with bugs and performance issues. This game ended up being about 10,000 times more difficult to implement than I anticipated. The game logic should have been quite trivial. But for whatever reason, the curved paths shake all over the screen, and are very sensitive to sudden load spikes, such as from triggering sound effects too frequently. I have no idea why, as I did a lot of testing, and the control points I was feeding to the paths were completely static. There must be some issues with the underlying JavaFX implementation that I'm just not aware of, as JavaFX node placement in general is kind of a dark art with all kinds of unexpected behaviors that are only learned through practice. So basically, the shiftiness of the missile paths had to be considered when adjusting difficulty. The game does actually get harder as it goes on, but it's a slow linear increase (well, sort of), which is why it wasn't immediately clear that it was getting harder. Basically, the way it works internally is that the sliders apply a direct probability to the spawn rate of a side. If you lower the price to the minimum, there is no effect. The bases just spawn units at their normal rates. If you raise the price to the maximum, it basically makes it so there's only a 25% chance that each spawn is successful. In addition to the, each base's spawn rate fluctuates randomly between a minimum of 1 unit per second, to a variable maximum. That maximum grows linearly over time at a fairly modest rate. So eventually, the possible gap between the spawn rates of both sides will overtake the player's ability to balance them. I found that in practice, because of all the randomness on both sides, they tended to be pretty balanced by themselves, so I raised the starting gap to a pretty high value, and kept the base health fairly low. I found that it made for a good length of play, although obviously, everyone will have different preferences. The sessions are certainly not as short as many other jam games, so it's understandable why the growth rate feels a bit low. I'd really have to test with a much larger sample group to get a good feel of how it should be adjusted. But yeah, just because it feels easy at first, I guarantee you, the game does get intense. My personal best score is around 430 seconds and 5,000 units, and I got that on my wife's Macbook with the touchpad. It was hectic to say the least, since it wasn't exactly easy to grab the slider each time with the touchpad!
Can anyone beat my new high score?
=)
@SHINBAXTER Sorry, I really wanted to put in a tutorial, but I just ran out of time at the end of the jam. Yes, you "play as both sides". I say that in quotes because the AI actually spawns units on its own, and you just control the "pricing", which affects spawn rates. So yeah, it's a magical game of seesaw, haha. Thanks so much for the feedback.
It looks like for the first 1500 units you can control only 1 scrollbar and another keep center. Probably that's why I can get more than 2200 =)

Yeah, not gonna lie. I love my own game too much!
Does this mean I beat you?
It's surprisingly fun for something so simple. It's too bad you had to struggle so much with bugs, since the turret feature sounds cool.
But, during my second game I understood all the principles (well, I think...) and I did a score of 6001!

But, well, I don't see the two incompatibles genres, i suppose it's strategy but the second...
Well, after all, it's not obligatory to respect the theme.
And, why don't you want people to rate you in "audio" category? The music is just very good!
Very good game!
As for genres, it was supposed to tower defense and playing both sides (not that playing both sides is a genre, but it is a different take, haha). Unfortunately, because of all the features I ended up cutting out, it doesn't really feel like much of a tower defense anymore. I originally planned to have defense turrets, different units with different stats, etc. So yeah, the actual execution doesn't fit the theme quite as well as the original concept. But I'm glad you enjoyed it!
I love the core idea. It felt like there was not much strategy though, just have them both on `$$$` and just make it a bit cheaper for whoever happens to fall behind. That made the game quite not enough interactive.
Voice acting was nice, and loved the story! The graphics were a bit too... abstract.
I would love for example if there were multiple resource types that I sell to the guys, and have to think strategically what to give them cheap to boost certain aspects of their force.
The idea is suspiciously similar to Ludum Dare 18 winning entry [Fail-Deadly](http://ludumdare.com/compo/ludum-dare-18/?uid=2073), about prolonging war between two sides, but with a bit different idea in mind. Maybe you wanna check it out.
I left my rating of your game, if you can leave your feedback in our game, Witch's Escape.
I hope you continue with the project.
https://ldjam.com/events/ludum-dare/41/witchs-escape