17
0
mirror of https://github.com/MaSzyna-EU07/maszyna.git synced 2026-10-29 03:27:30 +01:00
Commit Graph

91 Commits

Author SHA1 Message Date
5a5bb15fa5 multiplayer: hold the authority's readings between updates, and hear the brakes
Two complaints, one cause underneath them.

The brake and squeal sounds came out in shreds as a train got going. Both are
shaped from UnitBrakeForce and Vel, and both of those are results of a physics
step. An update arrives ten times a second; in the twenty-odd frames between
them the local physics carries on computing its own speed and its own brake
force for a train it has no business simulating, they fall away, and the next
update snaps them back. rsBrake pitches on Vel and rsPisk gains on the brake
force ratio, so what the ear got was that sawtooth.

So the physics outputs of somebody else's train are now put back after every
local step, not only on the frame an update lands: speed, brake force, wheel
and engine revolutions, engine power, wheelslip, sand, and the running flags of
the converter and the compressors, which the local physics kept switching off
because the conditions it evaluates are not the ones the owner is evaluating.

The relays are the same problem wearing a different hat. MainCtrlActualPos - the
notch the resistors are actually on, as opposed to the one the handle is at -
was being stepped by the local automatic notching, off its own guesses, so the
clicks either fired at the wrong moment or never fired at all. It travels now,
together with ScndCtrlActualPos and StLinFlag, which stops the local notching
inventing anything, and every relay heard here is one that operated over there.

The brake unit keeps a sound bitfield of its own, and that is where the
accelerator and the cylinder venting live. Reading it clears it, so watching it
had to be done without consuming it: TBrake grows PeekSoundFlag(), and only the
flags that have just come up count as an event - the vehicle only clears them
when it has an accelerator sound to play, so a bit that stays lit is one event,
not one per frame. RaiseSoundFlag() hands them to the far end.

Snapshot version 5.
2026-09-07 09:24:47 +00:00
jerrrrycho
d85096f64d reformat: remove redundant parentheses 2026-06-30 21:19:46 +02:00
docentYT
59347af5a0 Replace some std::min and std::max combinations with std::clamp 2026-05-02 19:38:14 +02:00
docentYT
d1f16411a1 Replace clamp with std::clamp 2026-05-01 22:14:29 +02:00
docentYT
337e750ed1 Replace Max0R and Min0R with std::max and std::min 2026-04-30 23:47:32 +02:00
129924315d Cleanup hamulce.cpp/h with Mover.cpp/h 2026-04-27 18:21:55 +02:00
copilot-swe-agent[bot]
7e49aa8740 Rewrite #includes to use explicit subdirectory paths
Co-authored-by: Hirek193 <23196899+Hirek193@users.noreply.github.com>
2026-03-14 19:16:48 +00:00
xwizard
943b32e023 Removes unnecessary assert() and caps "sg" at 1.0 2022-07-15 16:00:15 +02:00
milek7
eb5908bf08 Merge remote-tracking branch 'youby/master' into sim 2022-01-14 16:39:20 +01:00
Królik Uszasty
3edc5dd216 Added increased flow factor for filling stroke positions for handles K5P and 6P 2022-01-11 19:39:41 +01:00
milek7
5bafa31f9d Merge commit 'd8170c932b448ba6888e702746b5ae22632062d8' into sim 2022-01-05 22:21:05 +01:00
Królik Uszasty
5775493b2d Poprawka asymilacji w K5P i 6P, ograniczenie interwencji automanewrowego w luzowanie pojazdów, zaliczanie pozycji utrzymania ciśnienia jako jazda 2022-01-01 20:50:30 +01:00
tmj-fstate
2e86b3a5e9 ai braking test, motor overload relay threshold logic enhancement, vehicle max load parameter 2021-06-05 21:30:53 +02:00
Królik Uszasty
fa9136e333 Repair of St133 drivers' valve for both player and AI 2021-05-03 02:02:53 +02:00
milek7
810b7ad074 Position offset to Knorr EP TSt113 valve 2021-01-30 13:31:59 +01:00
Królik Uszasty
40cc1cf083 AI uses pneumatic brake in EMUs when pulling non-ep-brake vehicles 2020-10-24 17:30:09 +02:00
Królik Uszasty
0261f30448 mergi with tmj 2020-10-09 21:11:25 +02:00
stele
635d9d68a3 Parametrisation of maximum brake overload pressure and pressure decrease speed after it. 2020-06-22 21:39:17 +02:00
tmj-fstate
ad1a14082c load visualization submodel visibility selection tweak, passenger train acceleration ai logic enhancement, brake code enhancement, cab control label tweak 2020-06-05 16:43:07 +02:00
tmj-fstate
c457ffe05d basic power circuits simulation, vehicle device presence definition, automatic coupling tweaks, minor vehicle simulation logic enhancements, minor brake simulation logic fixes, pantograph control enhancements, ai logic enhancements 2020-04-30 03:08:37 +02:00
Królik Uszasty
0e87e554dc Simple fix for faster EStED reaction 2019-11-01 19:26:59 +01:00
Królik Uszasty
b1237e7245 Simple fix for faster EStED reaction 2019-10-31 22:51:52 +01:00
Królik Uszasty
dbfda7c1e5 Modified overpressure for MHZ_K5P 2019-09-15 15:26:04 +02:00
Królik Uszasty
31c8b69fca More flexible brake handles and universal brake buttons 2019-09-15 15:25:53 +02:00
Królik Uszasty
4bf900cbab Modified overpressure for MHZ_K5P 2019-09-14 23:26:37 +02:00
Królik Uszasty
75d0c4628a More flexible brake handles and universal brake buttons 2019-09-14 16:35:14 +02:00
Królik Uszasty
95a961f2b3 Merge with TMJ 2019-05-08 21:47:05 +02:00
tmj-fstate
57f7ac27da build 190430. ai braking logic tweaks 2019-05-01 03:44:53 +02:00
tmj-fstate
111026f700 build 190419. radio message volume, drag calculation enhancement, ai acceleration logic tweak, event duplicate scanning fix 2019-04-19 20:29:00 +02:00
Królik Uszasty
a0a9330734 Increased BrakeAccThreshold of DMUs, fix for AI using MHZ_K5P handle 2019-04-14 16:32:35 +02:00
Królik Uszasty
2f3ef8c529 Fixed manual AntiSlippingBraking for LSt valve 2019-04-09 00:58:51 +02:00
Królik Uszasty
ec3edc8824 Fixed manual AntiSlippingBraking for LSt valve 2019-04-07 19:14:14 +02:00
Królik Uszasty
6769c45103 Better antislipping system in EStED 2019-04-03 16:22:42 +02:00
Królik Uszasty
913cfc8ae8 Better antislipping system in EStED 2019-04-02 21:12:46 +02:00
Królik Uszasty
916a611c8d Fix for AI decoupling old Knorr/West locomotives 2019-03-23 23:44:39 +01:00
Królik Uszasty
8fddbadbaf Fix for AI decoupling old Knorr/West locomotives 2019-03-23 08:52:47 +01:00
Królik Uszasty
df068534d4 Fix for Handle=H14K1 with BrakeValve=K 2019-03-22 00:13:45 +01:00
Królik Uszasty
a3af2453a0 Reworked main brake handle usage by AI - it can use time-dependent handles now. 2019-03-22 00:13:33 +01:00
Królik Uszasty
be63aa7452 Fix for Handle=H14K1 with BrakeValve=K 2019-03-21 23:17:41 +01:00
Królik Uszasty
3fd408bd46 Reworked main brake handle usage by AI - it can use time-dependent handles now. 2019-03-21 17:25:05 +01:00
Królik Uszasty
4855b3a5a5 New Handle type MHZ_6P for Traxx 2019-03-17 19:09:29 +01:00
Królik Uszasty
fb36c1348b Fix for MHZ_K5P - no sudden overload in middle posistion 2019-03-17 19:09:16 +01:00
Królik Uszasty
6b56fbddbe New Handle type MHZ_6P for Traxx 2019-03-16 20:43:12 +01:00
Królik Uszasty
ca0c904d6a Fix for MHZ_K5P - no sudden overload in middle posistion 2019-03-15 20:41:11 +01:00
Królik Uszasty
f1ba909a94 Stuff for EW58: handle FVE408, valve EP1, enhanced TUHEX for 3-stage ED brake, old blending for DC-ED and EP brake 2019-03-05 20:00:44 +01:00
Królik Uszasty
5b20724845 Stuff for EW58: handle FVE408, valve EP1, enhanced TUHEX for 3-stage ED brake, old blending for DC-ED and EP brake 2019-03-05 16:53:58 +01:00
tmj-fstate
7933ade080 maintenance: removed deprecated files, linux friendly include names 2018-10-12 19:53:33 +02:00
Królik Uszasty
ce0cd764ec Added MHZ_K5P brake handle for new EMUs/DMUs 2018-06-04 00:08:37 +02:00
Królik Uszasty
847f4db5b4 Added definition of rapid velocity for EStED brake valve 2018-05-11 14:55:32 +02:00
Królik Uszasty
ab17f5a4f4 Fixed minimal position for MHZ_EN57 2018-04-18 23:55:55 +02:00