Thread Rating:
  • 1 Vote(s) - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Major "Real Time" Processing Causes Issues
#5
Quote:Before, you could take a ton of damage in a short duration if there were catchup ticks, but now it being per second it's easier to determine the end result over a period of time than it was before so if anything it's MORE transparent.

Not really, no.

As is, it's incredibly transparent how much damage a reagent does, when it runs (or how much damage you take from missing a breath).

As an example, take simple old "toxin", which deals 2 damage every time it processes. It's really easy to determine how much that is. You swallow a pill, take note of what your current tox is, then note when the amount in you changes and take note of how much damage it did each time it updates.

That's now impossible from my experience; even with only 4-10 players on under (presumably) low load, how much damage it deals is all over the place---and this is for a simple chemical like toxin. I'm sure you could hypothetically time an arbitrary duration of, say, 60 seconds, and get an estimate, but even that will be difficult to determine, since you stated things could tick every "2-4 seconds".

Throw in something advanced like Initro, Sarin, histamine, or what have you--things that are RNG based? It's now impossible to even *guess* at thresholds or amounts. You could kinda guess it before, if you were patient and wanted to test on monkeys. But now? Won't really be possible.

Quote:Life() ticks were and are not sorted, and never will be.

Well, when it ticks, and in what order is determined by the order in which human mobs get added to the mobs list, in part; you could definitely do sorting of that list to insert things at the proper ordering to get them to process at specific times; TG's `addtimer` system (which replaces spawn) does something like this.

Another alternative is reworking the Process Scheduler so that it keeps track of how long it takes to run, then fires early if it slept, before; obviously, not all scheduled processes need to do this (I doubt anyone will care if solars is delayed by 10 seconds, nor is it of any impact), but if certain tasks need precise timing, like mobs, then this would allow you to effectively keep reagent processing the same, without funky number adjustments.

I more than understand what you're aiming for; I just find it to be an odd way to go about it, I guess (albeit, it's definitely easier to go about the way you've done it than a more involved list sorting and having dynamic schedule intervals for the Process Scheduler).

Thanks for your time though. I appreciate all the hard work you guys put into Goon to make it better.


Messages In This Thread
RE: "Real Time" Processing Causes Issues - by mbc - 04-04-2019, 02:03 PM
RE: "Real Time" Processing Causes Issues - by Fox McCloud - 04-04-2019, 08:29 PM

Forum Jump:


Users browsing this thread: 1 Guest(s)