Froot by dob

In this game, you play a farmer trying to grow Froot, fight off space rats, and upgrade your farm. You have a tractor you drive around. The tractor can pick up Froot and fire Froot it is carrying at rats. It drives like a car, which means you have to be moving for the steering to work.
To earn money, bring your Froot to your shipping station at the bottom of the screen and unload it. Your truck comes by every so often and will load up any Froot in the station. You earn five credit-slash-dollars for every Froot that the truck carries to market. You also earn five credits for every space rat you bonk off the screen.
You can spend your money on upgrades to your farm. There are a lot of upgrades available, including extra plots of Froot groves, conveyor systems to carry Froot to the station, and robotic harvesters that will (slowly) pick Froot for you and take it to the station.
Use A and D to steer the tractor left and right. Remember it only turns when it's moving. Use W to give it some gas and drive forward, and S to drive in reverse.
To fire a Froot from your tractor (if you have any), hit NumPad-8 or the Shift key.
To drop a Froot on a conveyor belt, drive over it and hit NumPad-2 or the Period key.
Each level lasts until the sun crosses the sky at the top. There are ten levels of increasing difficulty. The goal is to collect the most money overall. Please share your scores!
Note: I intended this as a Compo game, but I recently learned of a prohibition on AI-generated art in the Compo, so I switched this to the Jam. I followed the Compo rules in every other way (solo, 48 hours, source code, I did everything from scratch). This also makes the bug fixes I mention in the first comment completely OK, because they were done within the Jam timeframe.

Code: JavaScript using the CraftyJS library
Art: MidJourney AI plus PowerPoint, GIMP, and Photoshop
Sounds: All made by my face via GoldWave audio
Font: Enemy Sub by Zapato Productions
| Link | https://planktongames.com/ld52 |
| Link | https://planktongames.com/ld52/game.js |
| Original URL | https://ldjam.com/events/ludum-dare/52/froot |
Ratings
| Overall | 309th | 3.621⭐ | 31🧑⚖️ |
| Fun | 286th | 3.569⭐ | 31🧑⚖️ |
| Innovation | 443th | 3.232⭐ | 30🧑⚖️ |
| Theme | 60th | 4.293⭐ | 31🧑⚖️ |
| Graphics | 400th | 3.638⭐ | 31🧑⚖️ |
| Audio | 354th | 3.185⭐ | 29🧑⚖️ |
| Humor | 282th | 3.22⭐ | 27🧑⚖️ |
| Mood | 403th | 3.463⭐ | 29🧑⚖️ |
| Given | 25🗳️ | 37🗨️ |
* The level number (11) was improperly displaying on the final screen because of a sprite carryover glitch, and I took that out.
* The costs of the market weren't being implemented as listed because of a math bug, which meant the economy was kind of broken, so I fixed the market and adjusted income a little bit to compensate for having the prices right.
* The storage bin said 'Fruit' instead of 'Froot,' so I changed that.
Original submission minus these three bug fixes is here: https://planktongames.com/ld52original
Also, if you're curious, the mega rats mentioned in the level intro text never got implemented, but adding them would be too big a change post-submission. :-)
Oh and it took me a while to figure out how to load the fruit into the truck since the "Tractor Storage" on the bottom right looked like more of an object in game space than a UI element, so I thought all fruit I collected ended up in a box on the ground.

Late game it is a battle between me and the collector, fighting for more bullets to shoot the rats XD

Also, I didn't understand how to predict the end of the level until the very last one, when I finally recognized the sun on top. If only I did it earlier, the game would be much easier. :) But such lack of clarity works well with the game like this, so no bit deal.
Here's my playthrough if you're interested:
https://youtu.be/M1Ytjwsyjt8
You did a smashing job.
I love upgrading to harvest more.
And the little baddies you shoot are funny.
Absolutely needs some subtle background music just to break up the limit sounds.
But a fantastic job. Great work :)
The only thing I can critique is the sounds. I see your description that you were otherwise aiming for compo, so generated sounds make sense, but they seemed to clash. I think you even had the same sound effect for bats dying as clicking on an upgrade that I didn't have enough money for?
That's super nitpicky, but that shows how good your game is. The only fault I can find is that the sounds weren't amazing.
Great game! Amazing that you've made this in JS - Congrats!
Sound ... I only could hear a humming thing, not much.
Controls do not fit me at all: I like simple intuitive controls and had a hard time with this.
1. felt like a random distribution of functions to the keyboard
2. I believe that the game could be done with one or two buttons/ keys (besides the steering), but here are many
3. Not everybody has a numpad nowadays (e.g. on laptops)
Your core game mechanic is nice and well implemented (grow, collect, bring to truck loader, truck moves).
The meta game is solid.
Overall an impressive result for a game jam!
P.S.: One note on AI created art. Your machines, rats, ... are very concrete. I strongly think that they fit 1:1 the art style of somebody out there who did the original art on which the AI learned. Don't forget that. Maybe one day an AI learns your games and takes bits and pieces (even larger) from your game and somebody creates a game, which fells like yours.
Controls seem a bit weird, initially missed that it said numpad 2 and kept trying to press regular 2.
Getting upgrades is nice and interesting.
Pretty quickly I ended up spending most of the time on shooting rats and delivering barely anything myself, presumably as it's meant to be.
I didn't realize until I'd seen a hint mentioning sun and wanted to avoid too much waste from delivering stuff right before end of day and looked for where the heck would that sun be that the sun is the orange ball on top of the screen that I thought was some sort of alien blob that I had tried to shoot a few times.