IdleSpace icon indicating copy to clipboard operation
IdleSpace copied to clipboard

Reach Next Ascension.

Open darkniko opened this issue 5 years ago • 7 comments

For new players the first Ascension including the second and third maybe the fourth its not a big deal to reach the required level. But for people in Ascension 6 and up it is a big deal to reach required level. Cause it takes and absurd amount of time. Unless this part of the game is intentional. If that is the case then its ok. Nevermind.

But if it is no I would like to propose if its possible and it doesnt take you that much time in codding, a prestige skill point worth 5 points so new players dont get it right away, even an toggeable option ( hidden until u reach A5 at least or not) could be if u decide to, to make an entire battle (all 100 boxes of a level) to be done in seconds. Like the game will recognize the difference between yours and enemys fleet and modules in too and a bar will start filling according to this difference and just get the resources the map offers. If the difference is enourmous the bar would fill in a second, but if there is a difference but still for thousands the bar would progress slower.

(U could add another branch of Skill points named "spy", that could tell u how much resources ull get by defeating the enemy. Or it could be under searching.)

Cause well an A7 player that can unlock titan in the very first 10 levels its quite lets say irritating to repeat all the process all over again when in fact hse did it 7 times already. This player already knows it ,.. hse just want to reach the next ascension and get over it. But it hse cant cause there are 120 levels to pass before doing them.

Of course this could bring some momentary problems. Battles provide Habittale space resources robot c. and research which these are quite necessary for progressing. Research would bring the most problem of all i believe cause if u get all of it all of a sudden and u dont have the researches u dont want in backlog this will get researched and worst of all if its not Autosorted. A solution for this would be to "Program" which researches u want before ascending so in next ascension, once unlocked these unwanted researches will be put inmediately in backlog so they dont get researched not wasting research resources in them.

Surely there are others things to consider but i cant think of them.

darkniko avatar Jun 10 '19 11:06 darkniko

Can you explain about the filling bar? just skip the battle after x seconds or simulate the battle?

I think that i can put a skill point to fight more tile at same time, like you said, that would scale easily and won't be OP since at some point you won't be able to fight more tile of high level enemy at same time (or at least i suppose so).

Another funny option would be having more fleet (with increased naval cap price) that fight more time at time, unfortunately this cannot scale to x100. i cannot simply spawn 100 web worker threads.

scorzy avatar Jun 11 '19 19:06 scorzy

For example the filling bar would only activate if the game detects that u can easily defeat the first row of boxes. The bar would start to fill up very fast if u do the first row in less than 5 seconds and when the bar gets fully filled up u receive the entirety of the resources that enemy has to offer. The bar could be in any of these two spaces.

3

After u get the resources you would jump directly into the Next level enemy if u have a certain amount of search. This would be the main purpose of the bar, as you said it would be to skip the level faster. Because the player already knows he will defeat it very easily the first 100 levels.

More tiles at the same time would be a good solution too. Of course after 80 90 100 110 level this wont be the case because a box starts to take more than just a second to defeat. Here u can put some strategy into the game in skill points. I think it would be after the -0.3 fight time. Or only unlockable after A4 or 5 and having the fight time skill point.

More fleet would also be another option, yeah i agree but that would take the difficulty of higher levels unbalancing the game if i think of it correctly.

Another option i thought of these days was to implement a boss after the 100 boxes. So after certain amount of ascensions you would only fight the boss of every level and so skipping all the boxes if u have higher module power than the enemy level. Like just seize the entire city/planet/fleet by defeating the mothership or the central defenses.... Idk .. just a thought.

Id suggest to add the github page to kongregate in a more visible manner, so more people can come in here and post many suggestions for exapanding or adding more content to the game. Many people dont even know it was made here in github nor that it even exists this platform.

darkniko avatar Jun 11 '19 23:06 darkniko

@darkniko So basically your original request was a toggle to combine the whole enemy fleets on the map into one big fleet. Basically your 10000 ships vs their maximum 1000000 ships. Is that right?

@scorzy Having more fleet doesn't mean more web workers, it doesn't care which player fleets are battling if the player has more than one, it only care about what 2 fleets that it's given contain and simulate the battle between them.

The current web worker can handle at least 10 times more fleet on my old computer, newer modern computer probably can handle more.

Most of the time is spend on GC, having more fleet or ships would only made that worse, unless an object pool is used. (I am assuming GC is the reason why the fleet is limited to 10k ship)

With an object pool, the performance doubled on my computer with the current workload, it should perform way better if there more fleet (not ship) fighting since it wouldn't be creating and discarding 50000+ object max per fleet per fight causing major GC.

I have a branch on my repo that implement it cause I have a memory growth issue but it seem like the cause wasn't the web worker and it turns out to be an non-issue so I didn't create a pull request.

But if you intent to have more than one fleet for the player, a pull request can be created using https://github.com/scorzy/IdleSpace/compare/master...asl97:object_pool?expand=1

asl97 avatar Jun 12 '19 04:06 asl97

Just to clarify, using an object pool will improve performance for more ship too. Just not as much as more fleet (battle/fight).

asl97 avatar Jun 12 '19 05:06 asl97

@asl97 can you send a pull request? optimization is always welcome

scorzy avatar Jun 12 '19 17:06 scorzy

@scorzy since you asked, I went ahead and created it. You know, you could have done it yourself by following the branch compare link.

asl97 avatar Jun 12 '19 19:06 asl97

thanks

scorzy avatar Jun 12 '19 19:06 scorzy