Cameron Cawley
38cffeef2c
ULTIMA: Make more static data read only
2024-11-27 12:57:09 +02:00
Matthew Duggan
4817e0e99a
ULTIMA: NUVIE: Use correct path for corpse gump buttons
...
This seems to have been missed when migrating the engine to use
Common::Path, it should follow the same pattern as other containers.
fixes #15522 .
2024-11-24 13:43:19 +11:00
Matthew Duggan
9f88076d6c
ULTIMA: NUVIE: Enable key repeat on walk ops
...
This fixes #15397 .
2024-11-20 21:16:36 +11:00
Filippos Karapetis
133e93aad5
ULTIMA8: Update POTFILES
2024-11-08 18:44:44 +02:00
Matthew Duggan
843f49446c
ULTIMA8: Report mising U8SAVE.000 file on startup
...
The game can't really start without this data, no need to continue.
This fixes #12790 .
2024-11-08 18:44:44 +02:00
Filippos Karapetis
d0195f4760
ULTIMA8: Error out if required game resources aren't found on startup
...
This stops the game from running if a required game data file is
missing, such as U8SAVE.000. Fixes bug 12790
2024-11-07 03:24:02 +02:00
Matthew Duggan
adadaf1eca
ULTIMA: Add detection entry for Crusader: No Remorse v1.10
...
This fixes #15065 .
2024-11-05 20:55:44 +11:00
Eugene Sandulenko
11ae6a973c
ULTIMA: Fixed usage of obsolete ManagedSurface methods
2024-10-24 15:07:03 +02:00
D G Turner
2a7c29dfa0
ULTIMA: NUVIE: Fix Unmatched Apostrophe GCC Compiler Warning
2024-09-22 03:02:55 +01:00
Hubert Maier
92c3ec0156
JANITORIAL: ULTIMA: Fix typos
2024-09-16 01:57:23 +03:00
Eric Fry
5157368a9e
NUVIE: Allow custom_tiles.bmp to load from game dir mods/custom_tiles.bmp
2024-09-03 18:57:54 -07:00
yudhiwidyatama
6a4b08ef6f
ULTIMA6: inject iOS gamepad d-pad key bindings
2024-08-28 00:45:08 +03:00
Matthew Jimenez
0380bf3d44
ULTIMA8: Handle movement actions without debugger console
...
Previously all keybind actions were handled with debugger console commands. This required the existence console commands that are unlikely to have use outside the keybinding action. Additionally, every input iterates over a lookup table and parses command strings.
2024-08-12 10:21:30 +03:00
Matthew Jimenez
e2bbef55b3
ULTIMA8 Move keybinding action handers to engine.
...
The engine still uses the debugger commands, but they can be transitioned in sections if desired.
2024-08-07 22:38:44 -05:00
PushmePullyu
09e8ef68d9
ULTIMA: NUVIE: Fix pathfinding not detecting some doors
...
U6 NPCs following their schedule can open doors in the way.
However, E/W facing doors would not be detected if an object was
directly S of them, causing pathing to fail in some cases.
Fix and simplify door detection.
Closes #15308
2024-08-05 09:07:13 +10:00
PushmePullyu
6a24076501
ULTIMA: NUVIE: Fix copy-paste error in AStarPath
...
Fix regression introduced in
4493bdcf5c
"ULTIMA: NUVIE: Use foreach style loops for cleaner code"
2024-08-05 09:07:13 +10:00
Matthew Jimenez
bc0bf79745
ULTIMA8: Fix last save load failure.
...
Setting to empty string acts as 0 and then breaks when no saves are present.
2024-08-03 15:25:07 -05:00
antoniou79
7e462a24fb
ULTIMA: NUVIE: Fix loading lua scripts on Windows
...
LUA seems to expect a "/" (POSIX) path separator, so using Common::Path::kNativeSeparator made engine unable to find the lua scripts on Windows
2024-08-03 08:17:16 -05:00
Matthew Jimenez
9587d5c0dd
ULTIMA: Improve detection for Ultima 8 and Crusader games
2024-07-30 13:29:46 +03:00
Cameron Cawley
08010fa185
COMMON: Return an iterator for List::insert
2024-07-30 13:29:18 +03:00
Cameron Cawley
89c57d29ef
COMMON: Move more maths functions into the Math namespace
2024-07-27 14:00:48 +03:00
Cameron Cawley
7e0dfe0081
GRAPHICS: Use custom stream callbacks for loading TTF fonts
2024-07-23 15:33:43 +01:00
Matthew Jimenez
ddaf389f8a
ULTIMA8: Adjust camera box to fix cutscene.
...
Waking Mordea while sleeping put the camera below the floor. Increasing the box to 2x2x2 footpad fixes the cutscene and eliminates the need to increase based on main actor size.
2024-07-18 21:28:13 -05:00
Cameron Cawley
ff530edcb1
GRAPHICS: Deprecate ManagedSurface methods that implicitly copy pixel data
2024-07-02 13:31:18 +01:00
Le Philousophe
7e0048b4a3
ENGINES: Add ADDynamicGameDescription class
...
This class manages a buffer where all data usually stored in detection
plugin will get copied before unloading the plugin and starting the
game.
This class expects that two functions are present in every
GameDescription: sizeBuffer which calculates how many bytes we will need
to store the entry in RAM and toBuffer which copies the data in the
buffer and fix the pointers in the class.
At the end, it is expected that an ADDynamicGameDescription doesn't
depend anymore on data stored in the detection plugin.
The AD_GAME_DESCRIPTION_HELPERS macro allow to implement these functions
in all GameDescription which don't have any pointer except those in
ADGameDescription.
2024-06-30 18:39:06 +02:00
Le Philousophe
b61bd3ff85
ENGINES: Create a type aware advanced meta engine
2024-06-30 18:39:06 +02:00
Le Philousophe
90b886097f
ENGINES: Create a type aware advanced detector
2024-06-30 18:39:06 +02:00
Yudhi Widyatama
2cae1bec12
ULTIMA6: patch nuvie.cfg parsing by extracting text from child
...
Re-enables nuvie.cfg file parsing that were impacted by XMLNode
enhancement, picking the text value of first child if current
subtree text is empty. Fixes issue #15207 .
2024-06-22 09:52:20 -07:00
Cameron Cawley
1357bfe672
COMMON: Avoid including engine headers in common code for DebugChannelDef
2024-06-20 20:15:57 +01:00
Matthew Jimenez
5dbebe38c7
ULTIMA8: Keep sampling for minimap on black color.
...
This improves minimap generation in narrower sections of caves.
2024-06-14 16:33:51 -05:00
Matthew Jimenez
2c5de6e053
ULTIMA8: Expand fast area during item create from usecode.
...
The previous attempt to fix would cause NPCs to blink in & out to existence when moving in Central Tenebrae.
Fixes invalid placement of barrel #14839
2024-06-09 21:14:27 -05:00
Matthew Jimenez
be44e64a39
ULTIMA8: Use Point3 for update fast area
2024-06-09 19:20:40 -05:00
Matthew Jimenez
7182be94dc
ULTIMA8: Add more functions to Point3
2024-06-09 16:45:26 -05:00
Matthew Jimenez
73659c67c6
ULTIMA8: Use Point3 in path finder
2024-06-09 12:04:28 -05:00
Matthew Jimenez
546cb580c1
ULTIMA8: Use Point3 in animation tracker
2024-06-09 10:00:31 -05:00
Matthew Jimenez
06df655cc7
ULTIMA8: Use Point3 in map sweep test
2024-06-08 13:56:44 -05:00
Matthew Jimenez
9c940c7c6a
ULTIMA8: Expand use of Point3, part 2
2024-06-07 23:27:29 -05:00
Matthew Jimenez
93f65daecf
ULTIMA8: Expand use of Point3
2024-06-07 20:17:02 -05:00
Matthew Jimenez
72773cf718
Revert "ULTIMA8: Update fast area during item create from usecode."
...
This reverts commit 548c6e019d
.
2024-06-07 07:28:16 -05:00
Matthew Jimenez
928febf876
ULTIMA8: Clean up speech flex parsing.
...
Previous change could cause issues as only spaces should be trimmed from a phrase at this point.
2024-06-05 18:04:01 -05:00
Matthew Jimenez
9ed19d3c4c
ULTIMA8: Remove accidental inclusion of tokenizer
2024-06-04 22:47:36 -05:00
Matthew Jimenez
66d0229272
ULTIMA8: Replace string utility functions
2024-06-04 22:44:09 -05:00
Matthew Jimenez
0512544750
ULTIMA8: Remove DebugLevel enum values.
...
Only one DebugLevel was used, and it was orginally intended to be used similar to channels (MsgMask)
2024-06-04 22:44:09 -05:00
Le Philousophe
d9eef44b52
ULTIMA8: Fix name clashes with common graphics code
...
This should solve MSVC build
2024-06-03 19:46:22 +02:00
Matthew Jimenez
532998effb
ULTIMA8: Define max item quantity constant
2024-05-30 20:10:13 -05:00
Matthew Jimenez
c8ffaf34d2
ULTIMA8: Define enum for reserved object identifiers
2024-05-30 20:10:13 -05:00
Matthew Jimenez
18c6eb8c31
ULTIMA8: Make middle-click pathfinder kill existing pathfinder process.
2024-05-25 00:07:45 -05:00
Matthew Jimenez
1ae7ff095c
ULTIMA8: Fix missing process type on pathfinder
2024-05-25 00:07:45 -05:00
Matthew Jimenez
0f4df1fe55
ULTIMA8: Trace coordinates on middle-click pathfinding.
...
Previously this used the traced item location, which would not lead to the expected location. Fixes #13851
2024-05-24 17:21:39 -05:00
Matthew Jimenez
1097f4b5e5
ULTIMA8: Fix pathfinder visual debug.
...
This feature is still behind a define macro.
2024-05-23 22:12:39 -05:00