34 Commits

Author SHA1 Message Date
Anders Jenbo 005e7dcc23 chore: clang-tidy cleanup part 1 2026-04-03 22:57:48 +02:00
Eric Robinson 5937734b85 Move *dat files to tables dir 2026-01-05 20:14:23 +01:00
Gleb Mazovetskiy 88f706e0d1 SDL3: Add some backports / compat helpers 2025-10-10 00:49:44 +01:00
Andrettin 528c1ad0e6 Use the size of the AllItemsList vector instead of IDI_LAST for getting how many items are there 2025-08-21 03:03:19 +02:00
Andrettin be956f0608 Added Lua Bindings for Adding New Monster Types 2025-08-16 19:57:22 +02:00
Anders Jenbo 7b2de562c2 Extract more Hellfire into data 2025-07-21 00:42:33 +02:00
Gleb Mazovetskiy 7ff65351cb Lua: Add dev.items.get() command 2025-07-20 17:46:35 +02:00
Gleb Mazovetskiy 17e6da40f8 Lua: Improve function/property handling
1. Follows advice from
   https://sol2.readthedocs.io/en/latest/functions.html to use
   `set_function` when binding functions.
2. Adds autocomplete support for userdata methods.
3. Simplifies property bindings and improves string handling.
2025-07-20 17:46:35 +02:00
Anders Jenbo 3b18dd35d9 Move some Hellfire differences to data files (#7943)
Co-authored-by: Gleb Mazovetskiy <glex.spb@gmail.com>
2025-04-25 22:56:59 +02:00
staphen ceec9900f3 [Debug] Keep trying when unique item fails to generate 2025-04-20 01:19:50 +02:00
staphen 390d7600a3 Fix debug command for talking to towners 2025-03-10 01:11:32 +01:00
obligaron ee42d2ab66 Add missiles to tile data debug command 2025-02-03 08:10:14 +01:00
Gleb Mazovetskiy ee16071761 Untangle pathfinding dependencies
1. Makes `path.cpp` concerned solely with the pathfinding algorithm.
2. Turns `path_test` into a standalone test.
2025-01-25 08:14:34 +00:00
Gleb Mazovetskiy c31836eab8 Split up engine.{h,cpp}
Untangles dependencies by splitting up `engine.{h,cpp}` into 3 files:

1. `primitive_render`
2. `ticks` -- only contains `GetAnimationFrame` for now.
3. `GetWidth2` renamed to `CalculateSpriteTileCenterX` and moved to `levels/dun_tile.hpp`.
2025-01-09 08:51:55 +00:00
Gleb Mazovetskiy a49b1f2d58 Extract Is{Any,None}Of out of engine.hpp
Untangles some of the dependencies
2025-01-08 09:54:56 +09:00
Eric Robinson f1d48d7124 Debug: Insivible (#7543) 2024-11-16 18:26:59 +01:00
Gleb Mazovetskiy 7b0558146e Async load: Handle errors 2024-11-10 13:49:01 +01:00
Gleb Mazovetskiy 8c39edfe7e Add dev.display.tileData('microTiles') 2024-09-27 17:38:18 +02:00
obligaron ca16398147 Move DebugSpawn(Unique)Item to lua dev moduls and make necessary functions public 2024-09-04 16:27:25 -04:00
Gleb Mazovetskiy 624afafe58 Extract Crawl to a library
Also adds a test and a benchmark
2024-08-07 02:01:23 +01:00
Gleb Mazovetskiy e9c29fa806 Switch to ankerl::unordered_dense 2024-08-05 01:17:13 +01:00
staphen 22150018ae Don't dereference nullopt in DebugCmdLevelUp() 2024-05-10 00:49:16 +02:00
staphen 3c5b298391 Capture the level seed and use it to skip failed dungeon layouts 2024-03-06 05:43:34 +01:00
staphen 9e682afe13 Rename glSeedTbl 2024-03-06 05:43:34 +01:00
obligaron 51ab0106ab Sync monster spawn in multiplayer 2024-01-12 00:35:40 +01:00
obligaron 19b6e2bcc4 Fix debug spawning monsters 2023-12-03 11:12:27 +01:00
qndel 16c814badf fix trn path in debug cmd 2023-12-03 02:27:31 +01:00
obligaron f445bb4ef8 Change CastSpell to Player reference 2023-12-02 12:57:34 +01:00
Gleb Mazovetskiy be34dd0cb7 Add dev.level.seed() debug command 2023-11-12 21:19:42 +00:00
Gleb Mazovetskiy 99fea0d1c5 Migrate unique monsters to data files 2023-11-10 17:44:45 +00:00
Gleb Mazovetskiy 2eae121931 Migrate monstdat to a data file
We may want to migrate this to 1 file per monster but for now the
migration is as close to the hard-coded version as possible.

Sprites that are used by multiple monsters are only loaded from disk
once.
2023-11-10 06:01:40 +00:00
Gleb Mazovetskiy a2b94cc03c Lua: Migrate and organize the rest of debug cmds
Fully migrates debug commands to Lua and organizes them into logical
groups.

The CLI `+` syntax now runs Lua, e.g.:

```bash
build/devilutionx '+dev.player.trn.plr("infra")'
```

Chat hotkeys run Lua code if they start with `/lua`, e.g.:

```ini
[NetMsg]
QuickMessage1=/lua message(dev.player.info())
```
2023-11-07 22:27:48 +00:00
staphen 7df7b35123 Clean up warnings and debugger errors related to the Lua console 2023-11-05 11:50:41 +00:00
Gleb Mazovetskiy 8bffbedcb4 Migrate some debug.cpp commands to Lua
Introduces a new `devilutionx.dev` Lua module, automatically loaded in
the console prelude.

Arguments and basic help are shown in autocompletion.
2023-11-04 20:28:27 +00:00