-
Notifications
You must be signed in to change notification settings - Fork 6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Phantom Changes(ReducedTasks) #96
base: mainline
Are you sure you want to change the base?
Phantom Changes(ReducedTasks) #96
Conversation
a fix to add a setting for reducing the phantoms tasks.. 100% = normal tasks, 50% = half tasks, 5% increments inbetween, currently only random tasks are removed.
Can you pull out the Phantom vent spawn stuff and make this just the reduced tasks? |
sure, ill try to do it right now, was just using my limited time on the game summary so wasnt looking at this. |
vent changes were fixed in another commit so are no longer needed.
missed these.
felt i should make it clear with a comment, i removed the vent parts and all the unnessecery lines, just the task setting and calculations/etc left so this should work now. |
not working yet, but in comments is the new method, just need to commit to work on something else.
re:- the WIP commit i just made, the problem im having is that removing the task then doesnt allow removing of another task, will work on this shortly so we can remove the right tasks. |
i think i have this working... here is the log output from my last test... sorry that this is really long, but a lot of output for my testing :) 5 short tasks, 2 long, 2 common = 9 tasks this is the % of tasks for the phantom.. 75%.. so in an unweighted world... this would be 75% of 9.. which would be 7 tasks remain. i have valued common tasks as 6, long tasks as 3, and short tasks as 1... leading to 6+6+3+3+1+1+1+1+1 = 23 total task weight 23 * 75% = 17.25.. so this is actually calculating wrong.. i will fix this the above is ceiling'ed.. so this should actually be 18, but we will use 17 for the purpose of checking the rest of this output now looping through the weighting calculation... w = current weight used, CTB/STB/LTB = if false, this task type is allowed on this pass... it always attempts common, then long, then short... and so basically, the order is common/long, then short, then common/long then short, until it reaches the new weight value. this shows the old task counts, vs the new task counts, as you can see, 1 shorts and 2 long's are removed. this step now loops through the total difference in tasks the phantom has.. it checks each task type based off how many of each task type should be removed, and removes one task if it finds a matching task of that type, then loops again, this will probably lead to the same tasks being removed sometimes, so maybe a shuffle is required on the tasks. below is just a list of all tasks (tasks for the map + the phantom's tasks listed as "MyTasks") |
change of task weighting can come in a future update if we feel the weights are wrong, but for now this works 100%
as title.
this should now work. |
Removing reactor as its not needed, only used for debugging log lines in phantom task update which can be later removed.
on the new among us version, this is bugged. tasks are reduced (for example, from 10 to 7 tasks).. 7 tasks get completed, but the game does not end... end game summary says 7/10 tasks completed for the phantom. |
a fix to add a setting for reducing the phantoms tasks.. 100% = normal tasks, 50% = half tasks, 5% increments inbetween, currently only random tasks are removed, but i have tried to put in a framework calculation for take a balanced amount of tasks from short, long and common tasks, so if someone knows how to remove a specific task type, then changing it to that will be the final piece to the puzzle.
Also fixed the Polus Admin Phantom Vent Spawn bug by shifting the location up on the Y axis by 1 point.
I have limited this change to only this vent, but using the same change i have made for this, it can be applied to other vents, just needs further if-statements.