Configurable Beehive#1819
Conversation
|
This is nice but becca's pgm-multiloc, that many people use, does not order the hex the same way then you. 0 middle, 2 on top of it rotating clockwise. Your 2 should be a 1, and your 9 should be the 7 |
|
@drallieiv I didn't changed the way we generate hives location, they were being generated this way: counter clockwise starting from the North-East position. Currently if you use |
|
This is really awesome! :-) I acknowledge your -bwh parameter offers the most flexibility but have you thought of a parameter that just gets a list of hives to be used and in the end evenly distribute all workers among the used hives? For example Anyways, this is great and long overdue. ;) |
|
@sLoPPydrive You can achieve what you're asking with this PR. If you don't force workers-per-hive it will distribute available workers evenly across enabled hives ;) You just need to disable the hives you don't want populated and everything goes as you're thinking. |
|
You could renumber your hives. First, starting with 1 (so 0->1) might be bad programming but is probably a better user experience. Further, iirc beccasafan location hive generator orders them clock-wise so 2->2, 1->3 and so on for each leap, this feels also the most intuitive for me. |
|
How so? I have to give parameters like |
|
@aRengo Please read what I've said... it's not "my hives" and as I said in the post before: I won't change this because it affects code I didn't do and wasn't required to be modified to implement the new features. @sLoPPydrive Yes, exactly what you said... disable unwanted hives with |
|
Hope to see this soon merged, will be awesome to distribute workers more where they belong 👍 |
|
Is this still being looked at? A bunch of people are still using pgm-multiloc (including me) but this PR has some inherent benefits. neskk already mentioned the memory usage (my server uses 10GB with 35 -st 14 instances at this point) But more importantly, if #1980 or something similar gets merged, people using pgm-multiloc won't be able to use it since you'd need seperate level 30 accounts for each instance, this could be a fix. |
|
@Qualimiox, you want something done? Talk to @sebastienvercammen... he's the dictator around here. |
|
@neskk A reminder to stay professional, or at the very least not spread unnecessary lies that other people then have to correct. You were kicked out of #pr on Discord due to your rude behavior. It wasn't because "I was being rude to you" or because you "just talk about stuff". It was even put to a vote and it was unanimously agreed that it was better not to have you around anymore. You've only been behaving irrationally and you can't stay professional when confronted with a decision that disagrees with your opinions. If you find it necessary, I'm sure @FrostTheFox will confirm. His Discord bot logs all chats. As for devkat, it has been explained several times what devkat is exactly, and it's disappointing to see a fellow open source contributor react so strongly against an organization that was set up to contribute to open source in a sustainable manner. But your opinions are yours to have, I'll just have to ask you to either be more professional about them or to keep them for yourself entirely. |
|
@sebastienvercammen I would post some print screens of your "professionalism" in that discussion, but then you would probably remove them. I've already saw that you edited multiple phrases from that discussion so don't try to spin this around. I wasn't rude, you kicked me out without notice. I don't care about the poll you did, most people don't know me so why would they vouch for me and risk going against the all might, all powerful dictator Seb, knowing that their fate would probably be the same as me. |
|
@neskk Reminding you to please stay professional on GitHub (including outside this thread), otherwise I will have to prevent you access on the repository. |
'--beehive' controls the size of the beehive - number of leaps. '--beehive-workers' controls the population of each hex individually, potentially disabling certain hives or forcing a specific number of workers. If there's not enough accounts to populate the beehive RM will display a error message and exit.
This PR provides more configuration options for scanners running in beehive mode, giving the ability to disable or force a worker count in specified hives.
Description
--beehiveis now an integer representing the number of leaps desired, e.g.-bh 1produces a beehive of 7 hexes (leap 1). Default is 0 - disabled.--workers-per-hiveis now used to force the population of each hive, meaning that if it's set to a value greater than zero it will throw an error if there aren't enough workers available to ensure that each active hive gets the desired amount of workers. Default is 0 worker per hive.--beehive-workersthis is the new addition, it's a list of pairs<hive index>:<worker count>, e.g.beehive-workers: [1:0, 2:3, 3:0](config.ini) /-bhw 1:0 -bhw 2:3 -bhw 3:0will disable index 1 and 3 and force 3 workers in hive index 2. Default is[](empty list).Warning: Hive indexes start at 0.

Motivation and Context
Beehive mode is great because it saves a lot of memory when compared to using a separate instances to achieve this kind of map coverage. Currently we're unable customize the beehive worker distribution and this limits what we can do in our setups leading to some frustration and resources wasted when trying to setup a "beehive of beehives".
How Has This Been Tested?
Local server - Win7 x64 - Python 2.7.12 - Clean pull
Screenshots (if appropriate):
-st 4 --workers 7 -bh 1 -bhw 0:0 -bhw 1:0 -bhw 2:3produces:Beehive worker distribution: [0, 0, 3, 1, 1, 1, 1]
Types of changes
Checklist: