(Note: this was originally posted in my reply to Fishlicka on the currently-stickied page regarding changes to the levelling and stat system. I thought it was a little too long and was disruptive to anyone reading the thread, and would do a disservice to anyone else replying in the future, so I've moved it to its own page. To understand the context, you should read fishlicka's post about his proposed changes to the upgrade/stat system.)
I'd have to agree with some of TerraformTrent has said above me. From what I can tell, Fish, you really want to make Juice Galaxy a game where the player can, if they choose, have a silly amount of power that lets them flatten anything in their path. To me, that's fine, I don't' really mind it - if you want the player to become a destroyer of worlds if they want, then cool!
That being said, I don't think the solution to the current situation that Juice Galaxy has - where players have no more incentive to play once they hit the level cap - would get fixed by making the level cap infinite. It might do the opposite; once people finish fighting the bosses and messing around in the overworld, they won't see a need to keep playing and will move on, even if they could have leveled up more. The stat caps are a goal of sorts, and in lieu of having anything else to do players will try and fill out all their skills. To clarify, I don't think trying to max out your character's level for the sake of seeing the numbers go higher is ever the best form of game design - it's typically something that people don't feel satisfied with unless the combat itself is really gripping. Adding more rewards to combat as you suggested can help, but it might make people even more annoyed, since they could feel forced to grind for something without really enjoying what they are doing.
I think that, if you want to make people play Juice Galaxy more, you're going to have to add more quest/storyline styled content or more gameplay content, period. When I talk about the latter, I don't necessarily mean more weapons - I mean adding more mechanical depth to combat. Improving combat seems like the game's logical progression, and to that end you've been trying to do that by adding spells, onhand/offhand weapons, and your plans to add dashing (I think?).
But I think the greatest bang for your buck with improving the mechanical depth of combat is by improving enemy AI. Change nothing else about the combat except for the fact that each enemy will react to the player differently during a fight and you've made combat a million times more interesting. Diversity in enemy designs can have a similar effect on the player and you've already begun to do it, like having Stroll fiends be outlandishly tall against the rest of the roster, meaning you have to approaching hitting them differently, either going after their legs or switching to a ranged weapon. Other examples I'd give would be the Automobile (R.I.P.), whose form of locomotion makes dealing with them tantamount to bullfighting, or Wawsps that stay out of your melee range until they choose to strike. But nearly all enemies follow the same procedure of trying to close the distance on you and giving the player vicious hugs without any other strategy. I think that is combat's greatest weakness at the moment - regular encounters get stale, even when enemies are the size of buildings.
A quick example for an AI tweak with Skellytons. They're pretty weak, but their lunge attack makes them way more interesting than a lot of other basic enemies, and fighting them in the graveyard when I could barely swing a morningstar was always fun for me. When the player is even moderately powerful, Skellytons barely register as a threat at all. This could be resolved by either giving skellytons at higher levels some form of ranged attack, or having them act differently when other enemies are around. The latter is more difficult to code, of course, but way more interesting in my opinion. For instance: if the player is fighting a Dragin or another powerful enemy, Skellytons may choose to run around the player and attack from behind, rather than waddling straight into the frenzied swings of the Juice kid wailing on the Dragin and dying instantly and with no consequence. Or, maybe they could do the opposite - if the player is spamming a ranged weapon at a powerful enemy, Skellytons could "Mr. President" themselves in front of the player and block the bullets, dying but also giving the more powerful enemies a chance to actually reach the player and potentially kill them. Add a couple of these changes to each enemy and suddenly the player has to think "hmm, maybe I should get rid of those Skellytons on that hill now so I can fight the Dragin coming towards me in peace," upping the challenge without just increasing enemy health or decreasing player damage. You can take the AI changes in whatever direction you'd like, obviously, these are just my 2 cents.
Takeaway: the stat system, while basic, is fine, and might only need to be developed more rather than undergoing a total overhaul. If your goal is to increase player retention, I'd suggest that, rather than trying to overhaul the stat system that exists currently, you work on improving the basic enemy encounters with little (or not so little) AI tweaks. That alone will make combat more fun, and might make the act of grinding - the least fun task in any game - more enjoyable.
I am fully aware that AI is the hardest part of coding any game. But even adding a few meaningful interactions would go a long way. I'd look to the HALO series for examples of enemy reaction and interaction during fights done right, although you have the challenge of not having scripted areas and linear levels where you can precisely control where enemies are going to be. Still, I'd think improving basic enemy AI is a worthwhile use of your time as it comes to player enjoyment and mechanical depth. If you don't want all of the enemy AI to change, then maybe apply the advanced AI only to elite enemies, as you have suggested before.
If you don't really want to change the AI, then another way of increasing player interest and holding it is to add more plot/storyline styled content. Yes, I'm aware that Juice Galaxy isn't supposed to be a plot-heavy game, but adding little things can really hold people's interest. Add a few funny NPC's that you might be able to find in the Barns in the wilderness and maybe have them give some sort of special service or ability, or talk about lore-related things like the Juice Queen or the taste of the Juice. It could make people interested in scouring the Wilderness for barns when they would have otherwise made another trip into a Wawsp nest, with there being something of substance that they could find out there. Really, anything that gives the Wilderness more life and intrigue would help a lot, since I think it's pretty barren right now (and that's even considering how much it's been improved from the earlier versions).
And as Terra said, it's not a crime for games to end. No matter how non-linear and expansive your game is, individuals will eventually stop playing it when they feel satisfied or get bored. Not even Minecraft is immune from the fact that people will eventually move on. What you can do is make the time people spend with the game high-quality fun. I think that is why people restart the game and replay the bosses so much - they're really fun! So if you want to have people play for longer, don't increase the length of the grind: either add more fun stuff or make the grind itself more enjoyable.
Sorry for the long read. I don't want to come off as mean-spirited here, I just wanted to provide some input. Also, I'm no game designer, so you may take it with a grain of salt. Best of luck with the updates and thank you for all of your hard work so far!