Author Topic: [TFTD][game progression] TFTD: Evolution 1.14  (Read 91274 times)

Offline Alpha Centauri Bear

  • Colonel
  • ****
  • Posts: 462
    • View Profile
[TFTD][game progression] TFTD: Evolution 1.14
« on: October 16, 2020, 10:14:12 pm »
Moved to the GitHub:
https://github.com/tnevolin/openxcomextended-tftd-rework-evolution

Releases:
https://github.com/tnevolin/openxcomextended-tftd-rework-evolution/releases



Hello fellow players.
I adored the TFTD Rework mod. It really adds a lot of sense and challenge into the game. Unfortunately, it stopped working with latest OpenXcom engine. So I took a liberty to fix it and also modify it slightly to my preferences while I can. I am still in the playtesting and some parameters would need to be adjusted. Especially interception combat. However, I think I'll start posting it here for everybody to enjoy.

I've called it "Evolution" to highlight evolutionary development of better and better weapons and to further advance in the game with their help. I.e. better craft armaments allow fight stronger enemy, receive less interceptor damage which equates to less repair time, better responsiveness, ability to knock down more USOs as game progresses and their appearance frequency increases, etc.

README is available by GitHub link above.

« Last Edit: December 23, 2023, 07:21:11 pm by Alpha Centauri Bear »

Offline BlackStaff

  • Colonel
  • ****
  • Posts: 336
    • View Profile
Re: [TFTD][BETA] TFTD Rework: Evolution
« Reply #1 on: October 17, 2020, 02:12:23 am »
I admit that not everything interests me!
But the "Aliens Sub" part interests me a lot!
Thank you and bravo for your work!  :)

Offline Alpha Centauri Bear

  • Colonel
  • ****
  • Posts: 462
    • View Profile
Re: [TFTD][BETA] TFTD Rework: Evolution
« Reply #2 on: October 18, 2020, 04:50:04 am »
Some play testing of intercept combat revealed the following.

I have measured how fast interceptor approaches UFO/USO and get 0.25 km per game second. That is exactly twice slower that in this article. I have also cross checked my interceptor damage calculation with experimental results and found them close matching my number. So, I conclude the speed in wiki article is incorrect.
https://www.ufopaedia.org/index.php/Craft_Combat_Mechanics#Closing_Range

With the above in mind it seems that weapon range is very important parameter for projectile armaments as it defines how long interceptor need to survive before it can start shooting. The combat takes much less time than closing due to quite high projectile armament firepower's. That makes firepower less important then range even when all enemy USOs now shoot from 60 km. So I decided to beef up enemy damage capacity even more and proportionally decrease their power. That would keep them equally dangerous and difficult to shoot but it would tilt air combat resolution toward actual mutual shooting rather than sacrificing interceptors one by one on a way to the enemy.

Sonic hand weapons appear quite late in TFTD Rework mod due to multiple intermediary research dependencies. Therefore, it is an imperative to use Gauss weapons against Lobstermen and Tashots. It is already effective enough against them. Not that much as Sonic weapons but pretty acceptable. Nevertheless, I was thinking to beef it up a little bit more since pre-Sonic period will last quite long. It would be a drag to waste all ammunitions on a simple USO recovery missions over and over again. From the other hand, melee weapons are readily available from the start and are quite effective against Lobstermen. Armor development is progressing quite well too. So further Gauss weapon strengthening may be not necessary. Any community suggestion on that?

Offline Meridian

  • Global Moderator
  • Commander
  • *****
  • Posts: 8597
    • View Profile
Re: [TFTD][BETA] TFTD Rework: Evolution
« Reply #3 on: October 18, 2020, 10:32:12 am »
Some play testing of intercept combat revealed the following.

I have measured how fast interceptor approaches UFO/USO and get 0.25 km per game second. That is exactly twice slower that in this article. I have also cross checked my interceptor damage calculation with experimental results and found them close matching my number. So, I conclude the speed in wiki article is incorrect.
https://www.ufopaedia.org/index.php/Craft_Combat_Mechanics#Closing_Range

You are both correct.

He calculated with 2gs cannon reload time, you have (probably) calculated with 4gs cannon reload time.

You are also both wrong.

Geoscape time doesn't pass during interceptions and the animation speed is configurable in options, so the concept of dogfight game seconds is completely arbitrary. I could say the cannon reload time is 100gs and would be equally wrong as everyone else :)

Offline Alpha Centauri Bear

  • Colonel
  • ****
  • Posts: 462
    • View Profile
Re: [TFTD][BETA] TFTD Rework: Evolution
« Reply #4 on: October 18, 2020, 04:43:57 pm »
You are right that the Geoscape second is not applicable to dogfight when Geoscape time stops. We are using different second - the ones in weapon fire rate descriptions. That is a different second but it is tied to frame rate and absolutely exactly determines dogfight behavior. Increasing and decreasing configured weapon fire rate correspondingly increases and decreases it's fire rate in dogfight relatively to other events. If you read the article you'll see that author measured everything in some craft weapon fire intervals and then just converted everything to gs using this defined weapon fire rate. And that is completely scientific approach which will produce same exactly results regardless of configured weapon fire rate used in observations and computations!

So it does not matter which weapon to use and what its configured fire rate is as long as experimenter can count number of shots and then multiply them on defined fire rate. One can use 2s cannon rate or 4s or even slower missiles - the result will be the same and correct!
What I am stating is that our results are twice as different. Which is strange as otherwise my calculations are consistent within multiple different measurement methods and interceptor damage calculation model.

What I can think of is that author maybe observed UFO game while I tested it on TFTD and they may indeed be different. So I am going to check UFO too to make sure no one of us is insane.

Offline Alpha Centauri Bear

  • Colonel
  • ****
  • Posts: 462
    • View Profile
Re: [TFTD][BETA] TFTD Rework: Evolution
« Reply #5 on: October 18, 2020, 04:57:14 pm »
I confirm that I have got the same exactly approaching speed in UFO. So I am going to amend this article.

Offline Meridian

  • Global Moderator
  • Commander
  • *****
  • Posts: 8597
    • View Profile
Re: [TFTD][BETA] TFTD Rework: Evolution
« Reply #6 on: October 18, 2020, 05:27:31 pm »
You are right that the Geoscape second is not applicable to dogfight when Geoscape time stops. We are using different second - the ones in weapon fire rate descriptions. That is a different second but it is tied to frame rate and absolutely exactly determines dogfight behavior. Increasing and decreasing configured weapon fire rate correspondingly increases and decreases it's fire rate in dogfight relatively to other events. If you read the article you'll see that author measured everything in some craft weapon fire intervals and then just converted everything to gs using this defined weapon fire rate. And that is completely scientific approach which will produce same exactly results regardless of configured weapon fire rate used in observations and computations!

So it does not matter which weapon to use and what its configured fire rate is as long as experimenter can count number of shots and then multiply them on defined fire rate. One can use 2s cannon rate or 4s or even slower missiles - the result will be the same and correct!
What I am stating is that our results are twice as different. Which is strange as otherwise my calculations are consistent within multiple different measurement methods and interceptor damage calculation model.

What I can think of is that author maybe observed UFO game while I tested it on TFTD and they may indeed be different. So I am going to check UFO too to make sure no one of us is insane.

a/ it is NOT tied to the frame rate... everything in interception GUI is independent of the frame rate

b/ I know exactly how it works to the last detail (I have read the entire source code for that many times) and I understand your arguments as well, I even started my post with "You are both correct"... really no need to explain this to me

c/ The definition of a unit matters. If your unit of measurement (for the SAME weapon) is 2gs, you will get 0.5 km/s; if your unit of measurement is 4gs, you will get 0.25 km/s.

I confirm that I have got the same exactly approaching speed in UFO. So I am going to amend this article.

Before you update it, maybe post your calculations here, so that we can show you your "mistake".
« Last Edit: October 18, 2020, 05:32:15 pm by Meridian »

Offline Alpha Centauri Bear

  • Colonel
  • ****
  • Posts: 462
    • View Profile
Re: [TFTD][BETA] TFTD Rework: Evolution
« Reply #7 on: October 18, 2020, 08:59:26 pm »
Thank you for response. I appreciate you sharing the knowledge and I didn't mean to lecture anybody. Just talk it over to myself to make sure I understand what I am doing.

a/ it is NOT tied to the frame rate... everything in interception GUI is independent of the frame rate

b/ I know exactly how it works to the last detail (I have read the entire source code for that many times) and I understand your arguments as well, I even started my post with "You are both correct"... really no need to explain this to me

c/ The definition of a unit matters. If your unit of measurement (for the SAME weapon) is 2gs, you will get 0.5 km/s; if your unit of measurement is 4gs, you will get 0.25 km/s.

Before you update it, maybe post your calculations here, so that we can show you your "mistake".

[/quote]

I bet you are right. However, all events should be computed somehow in respect to their defined values. What I meant is that if we set one weapon to fire every 5s and another one every 10s than first one will fire exactly twice as fast regardless of video configuration, computer it is running on, etc. Somehow game counts these seconds. I don't know how but this count is supposed to be the same for all objects and events during interception fight. Of course, this is an assumption as I didn't see the code to vouch for it but it is pretty solid game design assumption. It would be exceptionally weird otherwise.

If you know it to the last detail, would you mind sharing how fast interceptor approaches to enemy so we don't need to run these visual tests anymore? 😀


I am sorry, I've already posted it here.
https://www.ufopaedia.org/index.php?title=Craft_Combat_Mechanics#Alternative_closing_speed_observations
However, feel free to criticize it. I always can correct or even delete it based on feedback.

Offline Meridian

  • Global Moderator
  • Commander
  • *****
  • Posts: 8597
    • View Profile
Re: [TFTD][BETA] TFTD Rework: Evolution
« Reply #8 on: October 18, 2020, 10:32:12 pm »
If you know it to the last detail, would you mind sharing how fast interceptor approaches to enemy so we don't need to run these visual tests anymore? 😀

In OpenXcom (OXC), the approach speed is 2, a constant.
https://github.com/OpenXcom/OpenXcom/blob/master/src/Geoscape/DogfightState.cpp#L798

In OpenXcom Extended (OXCE), the approach speed can be 1, 2, 3 or 4, depending on pilot skills. If there are no pilots, it's just 2.
https://github.com/MeridianOXC/OpenXcom/blob/oxce-plus/src/Geoscape/DogfightState.cpp#L1018

You have probably noticed that I didn't mention kilometers or seconds.
That's because (Open)Xcom doesn't use either of those, it's using arbitrary "xcom distance units per xcom time units".

Xcom distance units can be with a little bit of imagination (based on ingame Ufopedia) converted into kilometers.
The conversion rate to 1:8, e.g. 640 xcom distance units = 80 km.
I have even implemented an option to show distance in the Interception window in kilometers: https://github.com/MeridianOXC/OpenXcom/blob/oxce-plus/src/Geoscape/DogfightState.cpp#L1039

Xcom time units cannot be converted into anything "meaningful":
a/ game/geocape time would be zero
b/ real world time depends on user options (not on frame rate)

But again with a little bit of imagination, we can call one "game tick" as one "game second".
OpenXcom made that assumption and that's why you see cannon reload time in OpenXcom as 4 game seconds.
Original Xcom1994 did not make that assumption and that's why you see cannon reload time in the original as 2 game seconds (even though both reload times are the same (4 ticks), they just define a game second differently... as 2 "game ticks").

So for OpenXcom:
- approach speed is 2 xcom distance units per 1 game tick = 2/8 kilometers per 1 openxcom game second (ogs) = 0.25 km/ogs

For original Xcom1994:
- approach speed is 2 xcom distance units per 1 game tick = 2/8 kilometers per 0.5 xcom1994 game seconds (xgs) = 0.5 km/xgs (= 0.25 km/ogs)

Please note that these two results are the same, there is no paradox or contradiction anywhere.

Offline Alpha Centauri Bear

  • Colonel
  • ****
  • Posts: 462
    • View Profile
Re: [TFTD][BETA] TFTD Rework: Evolution
« Reply #9 on: October 19, 2020, 12:19:40 am »
First of all, thank you for sharing all of this including code. Very explanatory and informative. I agree about your 0.25 km/ogs interpretation. I meant exactly that. Probably using confusing terms.
I should mention that I use OpenXcom but I thought this was assumed.

Obviously, I didn't mean to calculate how fast this is happening according to real world clocks. Nor that I needed to. The only thing I have started this is to match (proporionally) three parameters: UFO average firing intervals, X-Com craft armament firing intervals, and for how long craft is get clobbered by UFO until it starts shooting back (or other way around). Now they are all tied together and I can use my formulas, thanks to your confirmation.

The value 0.25 km/ogs seems to be right which means that UFO with 60 km range and 10 s firing interval will be able to fire 20 times on average until interceptor approaches at its Cannon range (10 km). That's all I needed to know.

In OpenXcom Extended (OXCE), the approach speed can be 1, 2, 3 or 4, depending on pilot skills. If there are no pilots, it's just 2.
https://github.com/MeridianOXC/OpenXcom/blob/oxce-plus/src/Geoscape/DogfightState.cpp#L1018

I just recently switched to extended version. It seems to have pile of new features but I failed to know them all. Will try to find a manual or description on how to use them.

For the above one specifically, how do I enable it? Is this an option to turn on or mod? How do I hire pilots?

So for OpenXcom:
- approach speed is 2 xcom distance units per 1 game tick = 2/8 kilometers per 1 openxcom game second (ogs) = 0.25 km/ogs

For original Xcom1994:
- approach speed is 2 xcom distance units per 1 game tick = 2/8 kilometers per 0.5 xcom1994 game seconds (xgs) = 0.5 km/xgs (= 0.25 km/ogs)

Please note that these two results are the same, there is no paradox or contradiction anywhere.

Yea. Now I understand that this article was for original XCom and not for OpenXcom. That what threw me off.

Offline Meridian

  • Global Moderator
  • Commander
  • *****
  • Posts: 8597
    • View Profile
Re: [TFTD][BETA] TFTD Rework: Evolution
« Reply #10 on: October 19, 2020, 01:24:24 am »
I just recently switched to extended version. It seems to have pile of new features but I failed to know them all. Will try to find a manual or description on how to use them.
For the above one specifically, how do I enable it? Is this an option to turn on or mod? How do I hire pilots?

Changes in game mechanics are almost always enabled by a mod and turned off by default.
You can enable pilots per craft by changing craft ruleset, attribute 'pilots': https://www.ufopaedia.org/index.php/Ruleset_Reference_Nightly_(OpenXcom)#Crafts
Pilots are just designated soldiers, they will also fight in the battlescape.

OXCE changelog is here, but early features such as pilots have evolved a lot, so there is no single documentation place: https://openxcom.org/forum/index.php/topic,4187.0.html

Yea. Now I understand that this article was for original XCom and not for OpenXcom. That what threw me off.

99% of articles on ufopaedia.org are about the original Xcom.
OpenXcom articles are specifically marked as such, and there are only very few: https://www.ufopaedia.org/index.php/OpenXcom

98% of Xcom articles of course apply to OpenXcom too... but they may be written in a slightly different language or using different numbers, etc. because of reasons... but they should be generally equivalent.

And yes, there are errors on ufopaedia.org, quite a few actually... but it's been written by volunteers, we should be grateful for what we have :)
Btw. Xcom is much more complicated inside than what it seems from the outside... most people find errors which are no errors, and don't recognize real errors when they see them.
Including myself.

Offline Alpha Centauri Bear

  • Colonel
  • ****
  • Posts: 462
    • View Profile
Re: [TFTD][BETA] TFTD Rework: Evolution
« Reply #11 on: October 19, 2020, 01:29:44 am »
1.7
-----------------------------------------------------

Carrying item weight modified. I don't like how heaviest weapon weights same as 4-6 hand grenades. That allows soldiers to carry such supposedly immensely heavy stuff by just not carrying some extra trinkets. Soldiers should become really strong to be able to even lift such stuff. Weapon weight should be an important factor of usability. The primary weapon(s) should mostly define the soldier load and carrying multiple weapons should be costly as opposed to carrying multiple different tools/trinkets.

* All hand weapons (ranged and melee) are heavier proportionally to their power/size/series/level. Pistols are about the same weight. Heavy versions are much heavier, expecially Gauss and Sonic series.
* All clips are are lighter but proportional to their respective weapon weight.
* All explosives keep their weight more or less to keep their thrown distance intact.
* All non weapon tools are significantly lighter.
* Disruptor pulse launcher ammo weight is increased since it is an actual torpedo.


Offline Alpha Centauri Bear

  • Colonel
  • ****
  • Posts: 462
    • View Profile
Re: [TFTD][BETA] TFTD Rework: Evolution
« Reply #12 on: October 19, 2020, 02:21:34 am »
I have even implemented an option to show distance in the Interception window in kilometers: https://github.com/MeridianOXC/OpenXcom/blob/oxce-plus/src/Geoscape/DogfightState.cpp#L1039

How to turn it on? Could not find it in options or standard mods.

Offline Meridian

  • Global Moderator
  • Commander
  • *****
  • Posts: 8597
    • View Profile
Re: [TFTD][BETA] TFTD Rework: Evolution
« Reply #13 on: October 19, 2020, 10:02:46 am »

Offline Alpha Centauri Bear

  • Colonel
  • ****
  • Posts: 462
    • View Profile
Re: [TFTD][BETA] TFTD Rework: Evolution
« Reply #14 on: October 19, 2020, 04:35:11 pm »
Found it. Thanks.