-
Notifications
You must be signed in to change notification settings - Fork 355
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
First patient takes too long to appear #649
Comments
I could confirm that the first patient in TH is coming shortly after opening the hospital. In CorsixTH it takes much to long. |
How long it takes for the first patient to arrive can depend on where on the map they spawn as some points are further away from the entrance than others |
Perhaps spawn the first patients preferably closer to the entrance? |
Sounds good to me |
Is it just the spawn that causes this, because it's months later than in the original on the first campaign level. If someone can verify side by side? (If not then eventually I will) |
One idea I had just now is that maybe the spawn rate is so low in the beginning that sometimes the number of patients for that month is simply 0? As it has a certain amount of randomness in it. Maybe we should have some kind of lower limit, like at least one patient per month, or that the likelihood of at east one patient increases for each "0" month? |
It is consistent that the patient enters the hospital a lot later in CorsixTH than Theme Hospital at the start of level 1. I don't think that comes down to a random 0 spawn. |
I've also found the spawn_rate calculation to be off. When the popn.Change value takes affect is at the end of that index month, not the end of the next month.
With the above example, start of level, 3 spawns will occur in Jan, at the end of month processing for Jan, the calculation currently takes the '1' value and adds to 3 totalling 4 spawns in Feb, when it should take the '0' value again, and have a total of 6 spawns for Feb, then when end of month for Feb, comes in, add 1 for 7 total spawns in Mar. The original TH has potentially less spawns in Feb, as the spawn interval is calculated from a static 30 days - 1500 ticks, and there is only 1400 in Feb and likewise on the 31 day months, 1550, you can get extra spawns in depending on the calculations. |
Another point is that a patient spawned when the hospital is still closed is discarded. At low rates of spawning it may take a long time before the next spawn. One trick could be to move the arrival to the next day in that case, so a patient will be spawned close after a player opened the hospital. |
A simpler solution is to spawn a patient the first day that a hospital is open. Technically we should then also remove a planned patient. We could do that immediately or the next month or so, although I am not sure it's worth the trouble. |
Probably not worth the trouble. Just pop a patient on open. |
|
|
What steps will reproduce the problem?
What is the expected output? What do you see instead?
In the original TH the first patient would come to the hospital around 11th of Jan
In CorsixTH it may take forever for the first patient to appear. Initially I thought the game was broken as no one was coming for two months.
I have comapred the date when the first patient appears in the lower left corner as shown on the screenshot (this is the furthest spot i can obsrerve in the original)
Original:
12 Jan; 11 Jan; 11 Jan; 11 Jan
CorsixTH:
21 Jan; 2 Feb; 8 Mar; 8 Feb; 28 Jan
What version of CorsixTH are you using (e.g. "0.30", "4c66e39985")?
9cc1254
What operating system / compile settings are you using?
Win7 x64, buit with MSVC2013CE, SDL 2.0.3, SDL_mixer 2.0.0, Lua 5.1.5, all defaults
What level was this on (e.g. "Demo level", "Full game level 12")?
Full level 1
The text was updated successfully, but these errors were encountered: