Commit graph

300 commits

Author SHA1 Message Date
Marcin Kurczewski
130863773f
docs/tr1: release 4.8.2 2025-02-15 19:35:27 +01:00
Marcin Kurczewski
35e4ceeffb tr1/passport: refactor input processing 2025-02-15 19:21:51 +01:00
Marcin Kurczewski
e4bc78cdbe filesystem: fix resolving case sensitive paths
Resolves #2504 and #1934.
2025-02-15 17:00:56 +01:00
lahm86
a1f51988c7 tr1/game_flow: skip levels in story so far
This restores skipping over levels in the story so far feature.

Resolves #2506.
2025-02-15 15:44:42 +00:00
Marcin Kurczewski
de6d213e48 tr1/config: change default fps to 60
Resolves #2501.
2025-02-15 10:53:50 +01:00
Marcin Kurczewski
0e04acd901 game-buf: rewrite to use arena allocator 2025-02-14 23:47:35 +01:00
Marcin Kurczewski
301fe93315
docs/tr1: release 4.8.1 2025-02-14 23:15:53 +01:00
Marcin Kurczewski
d453cdbbb1 tr1/game-flow: fix asking for saves condition
Resolves #2498.
2025-02-14 22:04:19 +01:00
Marcin Kurczewski
b89a15a9f1
docs/tr1: release 4.8 2025-02-14 09:19:06 +01:00
lahm86
60eaf76aad tr1/data: add ricochet sprite to the gym
This injects the ricochet sprites into the gym level.

Resolves #2462.
2025-02-09 20:31:59 +00:00
lahm86
347d2f675a tr1/lara/cheat: retain current meshes in fly cheat
This avoids resetting Lara's meshes when entering the fly cheat, so to
avoid further problems with save/load and gun state.

Resolves #2461.
2025-02-09 13:41:31 +00:00
lahm86
efe124c60e level: allow empty SFX data while reading
This allows reading levels that contain no SFX data.

Resolves #2460.
2025-02-08 18:24:05 +00:00
lahm86
7f017dfee0 tr1/music: fix secret and speech SFX not playing
This adds a test for the availability of the secret and speech SFX so
that when they are not present, the external files will play instead.

Resolves #2458.
2025-02-08 18:24:05 +00:00
Marcin Kurczewski
0056c33d5c tr1/cmd: extend /debug to show room portals 2025-02-08 17:28:58 +01:00
Marcin Kurczewski
43dea40a12 output: remove screen plane clipping 2025-02-06 10:18:13 +01:00
Marcin Kurczewski
d5fc558fd0 tr1: add /debug command 2025-02-05 13:23:53 +01:00
Marcin Kurczewski
850c08113a docs: add migration guide for builders 2025-02-04 22:55:26 +01:00
Marcin Kurczewski
c76d8d4394 docs: document TR2 game flow 2025-02-04 22:55:26 +01:00
lahm86
30e545de82 tr1/lara/state: use similar jump test to TR2
This updates Lara's responsive jumping lock test to match TR2. It also
resets the flag in case it is set to false and the player uses the
console to disable TR2 jumping.

Resolves #2444.
2025-02-04 21:43:09 +00:00
Marcin Kurczewski
0f2d3d71f0 cmd: add new /music command 2025-02-03 13:52:03 +01:00
Marcin Kurczewski
a5f0f61251 cmd: add new /gym command 2025-02-02 23:02:05 +01:00
Marcin Kurczewski
ed18dcce71 cmd/demo: add console log when playing a demo 2025-02-02 23:02:05 +01:00
Marcin Kurczewski
77b711dbc6 cmd: add new /cutscene command 2025-02-02 23:02:05 +01:00
lahm86
e0047c6367 lara/cheat: set maximum HP in fly cheat
This ensures Lara's HP is restored immediately on entering the fly
cheat to avoid the death count incrementing again on the same frame
before the end of Lara_Control resetting the HP.

Resolves #2264.
2025-02-02 17:22:09 +00:00
Marcin Kurczewski
99b8949e9d tr1/game-flow: remove load_level sequence event 2025-02-02 17:03:04 +01:00
lahm86
71cd31d7ab camera: store cinematic frames in camera module
This moves cinematic frames into a new common camera cinematic module;
they should only be changed on level reading.

This also adds checks to TR2 in case there are no frames and a
cinematic is loaded.

Resolves #2413.
2025-02-02 10:09:23 +00:00
Marcin Kurczewski
8a6039bad4 tr1/cutscene: restore manual camera positioning
Fixes #2739 by bringing back the cutscene positioning game flow events.
We had previously removed these in 718a1d7, thinking they didn't make a
difference. Albeit subtle, turns out they do.
2025-02-01 20:54:39 +01:00
Marcin Kurczewski
3bf7ad2708
docs: update 2025-02-01 19:38:05 +01:00
Marcin Kurczewski
5139c16838
input: fix saving custom controller layout
Resolves #2422.
2025-02-01 19:13:36 +01:00
lahm86
3a5fe66e2a tr1/data: fix underwater lever animation
This adds a "hands-free" command at the end of Lara's underwater lever
animation, which is in line with TR2. It prevents issues after using an
underwater lever followed by entering the wading state. The additional
check in Lara's state control also matches TR2, which is one that we
missed before.

Resolves #2416.
2025-01-31 20:46:35 +00:00
lahm86
01ef336a1c tr1/docs: fix object texture entry 2025-01-31 15:44:03 +00:00
lahm86
7564a848bb tr1/inject: improve texture injection performance
This removes texture packing from the injection process. We instead
inject the individual pages that come with the injections (which are
packed individually anyway). Packing will later be re-introduced for
unoptimized page groups only, but this is dependent on a format
refactor.
2025-01-29 21:16:37 +00:00
Marcin Kurczewski
69f73edb08 tr1/savegame: fix death counter support
Resolves #2412.
2025-01-29 21:53:57 +01:00
Marcin Kurczewski
fb26660da1 tr1/game-flow: fix crash with /load and /play
Resolves #2411.
2025-01-29 21:53:57 +01:00
Marcin Kurczewski
0ef42542ca game-flow: move common bits to libtrx 2025-01-29 21:53:57 +01:00
lahm86
0e025b65ac output: raise TR2 texture limits
This removes the cap on object and sprite textures in TR1 and TR2, and
raises the TR2 page limit to 128.

Resolves #1795.
Resolves #1796.
2025-01-28 17:43:59 +00:00
lahm86
18de1465d2 tr2/game_buf: expand game memory limit
This raises TR2's game_buf limit to match TR1, at 128 MB.
2025-01-28 17:43:59 +00:00
lahm86
b0872c2397 tr1/lara/state: check for responsive state changes
This augments the config options for responsive jumping and swimming to
verify that relevant state changes exist in Lara's animation set.

Resolves #2397.
2025-01-27 11:51:45 +00:00
Marcin Kurczewski
086311344d tr1/docs: reorder sections in order of importance 2025-01-27 12:43:26 +01:00
Marcin Kurczewski
8f1d464b9c tr1/docs: remove unused sequences 2025-01-27 12:43:26 +01:00
Marcin Kurczewski
d94b409df4 tr1/docs: fix formatting 2025-01-27 12:43:26 +01:00
Marcin Kurczewski
72a63d90a5 tr1/game-flow: simplify cutscenes music track setup 2025-01-27 12:43:26 +01:00
Marcin Kurczewski
e0256e74ec tr1/game-flow: remove exit_to_level 2025-01-27 12:43:26 +01:00
Marcin Kurczewski
c91daa65d8 tr1/game-flow: drop level_id from level-stats 2025-01-27 12:43:26 +01:00
Marcin Kurczewski
afed9aae13 tr1/docs: fix cutscene sequence end docs 2025-01-27 12:43:26 +01:00
Marcin Kurczewski
8c3ba62481 tr1/game-flow: rename play_synced_audio 2025-01-27 12:43:26 +01:00
Marcin Kurczewski
d68375128d tr1/game-flow: improve level type processing
- Removes the need to supply "normal" level type
- Makes it not possible to override levels placed in their dedicated
  sequences
- Makes it not possible to override level types to arbitrary level types
  (eg two title levels)
2025-01-26 11:55:17 +01:00
Marcin Kurczewski
e04f955e1d tr1/game-flow: move cutscenes to own level sequence 2025-01-25 21:58:00 +01:00
Marcin Kurczewski
999f3614cc tr1/game-flow: move demos to own level sequence 2025-01-25 18:53:00 +01:00
Marcin Kurczewski
cc30d7f4ee
docs: update macOS TR2X info 2025-01-25 17:19:38 +01:00