Page 4 of 5

Re: Please make trains able to run over evolved aliens

Posted: Wed Dec 27, 2017 12:08 pm
by porcupine
sathill wrote: I need that info badly. I love democracy.
This made me laugh, love it, for some reason all I can picture is team America world police.

Re: Please make trains able to run over evolved aliens

Posted: Fri Jun 10, 2022 1:12 pm
by Nosferatu
*megabump*

So from this thread and even older ones I got the impression that my L4C8 Trains should be able to survive even when operated "behind enemy lines".
Now that I am getting deeper and deeper into enemy territory I start loosing more and more trains to biters.

Initially I thought that my trains were caught in a moment where they were not at full speed.
So i ran some tests: Even an insanely long train can NOT plow through groups of evolved aliens.

I think this one was stopped by the ~third alien...
Screenshot_20220605_151350.png
Screenshot_20220605_151350.png (3.55 MiB) Viewed 4871 times
My L4C8 trains slow down from 298 to 100 in speed after the first hit. So i guess even small groups of aliens can easily stop them..

Where trains nerfed at some point in the past or was my assumption always wrong?
Can we please make trains able to run over evolved aliens? (Yes artillery was introduced but that's kill them all playstyle...)

PS: The attached save game is my Alien kill test track

Re: Please make trains able to run over evolved aliens

Posted: Fri Jun 10, 2022 9:20 pm
by FuryoftheStars
Yeah, I gotta +1 this myself. It gets annoying.

I think each of the ideas suggested in this sound good to me: pushing them aside, giving them more “killing” power, and some more weapons options.

Trains feel absurdly light right now, but maybe that’s just a result of size scaling (I mean, a rl loco is many times the size of the ones in game). There is an energy_per_hit_point property which controls damage dealt in collisions. Maybe this should be tweaked?

As for weapons, I think a wagon with a short ranged mg would be good. I feel like even a range of 10 would work: short enough any worm can hit it to counter creep, but long enough a car immediately behind the lead loco can reach whatever is in front of it.

Re: Please make trains able to run over evolved aliens

Posted: Fri Jun 10, 2022 9:34 pm
by Pi-C
Nosferatu wrote:
Fri Jun 10, 2022 1:12 pm
PS: The attached save game is my Alien kill test track
Thanks for the save file! Loading it, I've found a bug in the mod I'm currently working on. However, due to the bug I couldn't try out crashing the train through the biters yet … :mrgreen:

Re: Please make trains able to run over evolved aliens

Posted: Sat Jun 11, 2022 12:48 am
by lyvgbfh
Thanks for the test save, that was quite a bit of fun. I made a mod that tweaks the damage and slowdown on impact, the code is below. I also added a slight bit of knockback so you're not as likely to end up grinding your locomotive into the side of a stubborn biter. You're welcome to download it and experiment with edits :)

Code:

Code: Select all

for _, cat in pairs({"locomotive", "cargo-wagon", "fluid-wagon", "artillery-wagon"}) do
  for _, proto in pairs(data.raw[cat]) do
    proto.energy_per_hit_point = proto.energy_per_hit_point / 5
    if not proto.crash_trigger then
      proto.crash_trigger = {{
        type = "push-back",
        distance = 2
      }}
    else
      table.insert(proto.crash_trigger, 1, {
        type = "push-back",
        distance = 2
      })
    end
  end
end

Re: Please make trains able to run over evolved aliens

Posted: Sun Jun 12, 2022 6:20 pm
by Nosferatu
lyvgbfh wrote:
Sat Jun 11, 2022 12:48 am
You're welcome to download it and experiment with edits :)
My first instinct after reading your post was I want more push back and less damage.
But no - trains are deadly with or without your mod so it doesn't change much.
I tested it and I will use it as it is. Thanks.

Re: Please make trains able to run over evolved aliens

Posted: Sun Jun 12, 2022 9:14 pm
by lyvgbfh
Nosferatu wrote:
Sun Jun 12, 2022 6:20 pm
My first instinct after reading your post was I want more push back and less damage.
Yeah that's what I had originally tried, however the pushback doesn't interpolate their position so it looks really jarring to have biters teleport back when the train nudges them.

Re: Please make trains able to run over evolved aliens

Posted: Mon Jun 13, 2022 7:23 am
by aka13
After all these years, I agree - I do not expand beyond the factorys wall-of-death. There is no way to make sure train does not stop, if it is not behind a wall.

Re: Please make trains able to run over evolved aliens

Posted: Sun Jun 19, 2022 7:48 pm
by mudcrabempire
I assume train push-back is not implemented because it is not trivial to implement properly and the effort isn't worth it.

Is there a documentation of the impact mechanism somewhere? I would have sworn to have seen it once but searching through the wiki i couldn't find it. As long as the exact mechanism is unknown it is difficult to make "balancing suggestions". At best i could come up with my own suggestion for a mechanism but obviously that mechanism would itself require carefull balancing. The impact mechanism itself is relatively easy, i'm confident i could produce a decent one (i'm not writing it now because i'm not sure if that would be appropriate for the "Balancing" directory). The actual balancing is hard work that cannot be done without extensive testing...

PS: Is the impact damage mechanism easily moddable or would that require access to the source (or a suitably clever workaround)?

My thoughts towards solving the problem are basically:
-Stick to the impact mechanism, no additional weapons on trains
-Ensure that the impact mechanism is good
-Adjust numbers on trains/wagons if necessary
-If adjusting the basic trains/wagons can't solve the problem, add a Train_Mk2 with improved stats or use stat-improving research -> Then Mk1 trains only need to be good (and expensive) enough for small/medium biters and some big ones while improved trains can be used to routinely deal with larger amounts of big/behemot biters (i tend to using a second type of train)

Re: Please make trains able to run over evolved aliens

Posted: Sun Jun 19, 2022 8:11 pm
by FuryoftheStars
mudcrabempire wrote:
Sun Jun 19, 2022 7:48 pm
Is there a documentation of the impact mechanism somewhere? […]

PS: Is the impact damage mechanism easily moddable or would that require access to the source (or a suitably clever workaround)?
Are you talking about this? https://wiki.factorio.com/Prototype/Veh ... _hit_point

I think that’s the closest we have access to at this time (that I’m aware of).

Re: Please make trains able to run over evolved aliens

Posted: Sun Jun 19, 2022 9:08 pm
by Hornwitser
I did some simple tests ramming a single locomotive and a double locomotive at different speeds into a behemoth biter. The damage dealt using 2 locomotives was exactly 2x the damage dealt using one locomotive, and damage/speed was very close to 1.852 hit/kmh for 100, 259.2 and 298.1 km/h. (Fun sidenote if I convert the units to hitpoints / speed in tiles per tick that works out to almost precisely 400 for one locomotive.)

In other words one locomotive at max speed does 552 units of damage to one biter and consumes all its speed. 10 locomotives would do 5520 units of damage before ending up at a standstill. And 10 behemoth biters needs 55 locomotives to ram through while loosing all of their speed.

Re: Please make trains able to run over evolved aliens

Posted: Mon Jun 20, 2022 7:19 pm
by mudcrabempire
Ok, here's my data so far, more tests depend on my mood.

velocity change of 1 locomotive hitting (killing) a medium biter (75hp)
column 1: velocity before impact , column 2: velocity after impact
L1m.txt

velocity change of 2 locomotives hitting (killing) a medium biter (75hp)
column 1: velocity before impact , column 2: velocity after impact
L2m.txt

velocity change of X locomotives hitting (killing) a medium biter (75hp)
starting velocity = 298.1
column 1: #locomotives , column 2: velocity after impact
LXm.txt

velocity change of X locomotives hitting (killing) a big biter (375hp)
starting velocity = 298.1
column 1: #locomotives , column 2: velocity after impact
LXg.txt

velocity change of different vehicles (car, tank, 1 locomotive), different conditions and extra information
column 1: velocity before impact , column 2: velocity after impact (0 means the target wasn't killed) , column 3: damage to target , column 4: energy_per_damage (from data/base/entity/prototypes) , column 5: weight (from same)
E.txt


Notably from the last entry, if one calculates:
energy = damage * energy_per_damage
and normalizes energy by weight
energy_norm = energy / weight
and only looks at the data where the target wasn't killed plotting energy_norm versus velocity_before_impact
-> car and tank data gives nearly identical curves where to good approximation
energy_norm = 2.14e-5 * velocity_before_impact^2
-> locomotive gives different curve where to good approximation
energy_norm = 4.59e-3 * velocity_before_impact

Note the different scaling of the energy with velocity, train energy scales linearly with it's velocity while car and tank energy scales with their velocity squared. Assuming that after an impact the energy is reduced according to damage dealt and velocity is adapted accordingly this means trains loose an equal amount of velocity each time they kill a certain type of biter (not perfectly comfirmed by data, but decent), while cars and tanks should loose velocity proportional to 1/sqrt(velocity) (if i calculated right; not tested so far).

Assuming i'm decently close to the truth with those results i'd love to know the reasons that lead to this difference in behavior.

Generally speaking i support neither the difference in energy<->velocity behavior between trains and cars/tanks (if it is true) nor the different energy_per_damage values for the vehicles. The former primarily because consistency, the latter because it seems like a reduntant use of parameters (one should be able to achieve the same effect without "energy_per_damage" by decently rebalancing the other parameters of the vehicles).

Speaking of rebalancing the parameters: Improving train performance against biters mainly ends up with the previously-said conclusion: Make trains longer. Because longer trains have more mass -> more energy -> more capacity for damage. From the parameter side one can reduce the need for ridiculously long trains by simply making trains (and wagons) heavier. This requires increasing energy consumption (and therefore fuel consumption) to compensate the otherwise reduced acceleration.
This means, there is a limit to how far one can go without reaching forbiddenly high (especially for early-game) fuel-consumption rates. Combining that with me not liking the idea of a cheap early-game technology easily capable of slauthering masses of behemoth biters i would (as previously said) keep trains as they are and introduce Mk2_Locomotives (locked behind appropriately high/expensive technology). Mk2_Locomotives get drastically increased weight and fuel consumption (maybe better fuel efficiency?) and probably more fuel slots to ensure they can travel long distances without running out of fuel (and more hp, just to round it off). They are also expensive.
Then one can in the late-game research Mk2_Locomotives and use them for all the dangerous long-distance lines through behemoth territory. Maybe one wants to use several of those monster engines to ensure save passage, but if they have good enough mass one does not need to use ridiculously appropriately long trains. Bonus points for the fact that heavy locomotives with more power are much better for pulling artillery wagons and not taking forever to accelerate. No reason not to keep using basic locomotives for less endangered transport lines.

Re: Please make trains able to run over evolved aliens

Posted: Mon Jun 20, 2022 8:09 pm
by ptx0
add an artillery wagon to the end of your train and it'll increase the mass and stopping distance but i'm not sure how the DPS changes.

Re: Please make trains able to run over evolved aliens

Posted: Mon Jun 20, 2022 11:57 pm
by Hornwitser
ptx0 wrote:
Mon Jun 20, 2022 8:09 pm
add an artillery wagon to the end of your train and it'll increase the mass and stopping distance but i'm not sure how the DPS changes.
I tested that and adding one artillery wagon it increased the damage equivalent to what adding 2 locomotives do. Which makes sense since an artillery wagon weighs 4000 and a locomotive weighs 2000.

Re: Please make trains able to run over evolved aliens

Posted: Wed Jun 22, 2022 1:39 am
by ptx0
Hornwitser wrote:
Mon Jun 20, 2022 11:57 pm
ptx0 wrote:
Mon Jun 20, 2022 8:09 pm
add an artillery wagon to the end of your train and it'll increase the mass and stopping distance but i'm not sure how the DPS changes.
I tested that and adding one artillery wagon it increased the damage equivalent to what adding 2 locomotives do. Which makes sense since an artillery wagon weighs 4000 and a locomotive weighs 2000.
interesting. so if they gave us a battering ram that affected acceleration but also provided killing power...

Re: Please make trains able to run over evolved aliens

Posted: Fri Jun 24, 2022 5:58 am
by ssilk
This discussion reminds me to the discovery of the laws of gravity. 8-)

Re: Please make trains able to run over evolved aliens

Posted: Wed Jul 20, 2022 12:29 pm
by Dmytrozern
Unpopular opinion: train killing power is good as it is since it requires changing your playstyle to adapt to bugs instead of "just build more locos".
Artillery, occasional turret outposts to protect tracks or even patroling spidertrons - you name it.

Re: Please make trains able to run over evolved aliens

Posted: Wed Jul 20, 2022 6:36 pm
by ptx0
Dmytrozern wrote:
Wed Jul 20, 2022 12:29 pm
Unpopular opinion: train killing power is good as it is since it requires changing your playstyle to adapt to bugs instead of "just build more locos".
Artillery, occasional turret outposts to protect tracks or even patroling spidertrons - you name it.
at least you know it is unpopular :D

i don't see "spam walls and long belts of ammo and turrets everywhere so your stuff never gets destroyed" as a good thing. it's one of the most annoying parts of playing with the Rampant mod, is how no piece of infrastructure can be considered safe, and your borders must expand to encompass all railways and power poles.

Re: Please make trains able to run over evolved aliens

Posted: Wed Jul 20, 2022 7:20 pm
by aka13
ptx0 wrote:
Wed Jul 20, 2022 6:36 pm
Dmytrozern wrote:
Wed Jul 20, 2022 12:29 pm
Unpopular opinion: train killing power is good as it is since it requires changing your playstyle to adapt to bugs instead of "just build more locos".
Artillery, occasional turret outposts to protect tracks or even patroling spidertrons - you name it.
at least you know it is unpopular :D

i don't see "spam walls and long belts of ammo and turrets everywhere so your stuff never gets destroyed" as a good thing. it's one of the most annoying parts of playing with the Rampant mod, is how no piece of infrastructure can be considered safe, and your borders must expand to encompass all railways and power poles.
Tbh even without rampant, deathworld maraton = expand with full off-walling only

Re: Please make trains able to run over evolved aliens

Posted: Thu Jul 21, 2022 11:29 am
by Dmytrozern
ptx0 wrote:
Wed Jul 20, 2022 6:36 pm
spam walls and long belts of ammo and turrets everywhere so your stuff never gets destroyed
Well, it's not the only way. though. Splitting production so more trees could absorb pollution(actually preserving the trees), using green mods. It's always a balance and preference. I do enjoy playing on hard settings DW marathons and sometimes with Rampant, but I think more killing power would make trains a bit too OP, especially considering Train defence line.

But the more I think the more I agree with you that there could be some late-game ram/battle wagon to help to get through greenies without ruining the balance for the previous mechanic. It could be very heavy to compensate for killing power and balance its usage only where it is needed.