1
0
Fork 0
mirror of https://github.com/luanti-org/luanti.git synced 2025-09-30 19:22:14 +00:00
Commit graph

8156 commits

Author SHA1 Message Date
Desour
cdfb08ed0f add MisbehavedSSCSMException type 2025-09-22 19:08:46 +02:00
Desour
76b7a2c415 move dings test code out of builtin 2025-09-22 19:08:45 +02:00
Desour
322b65435b remove request* and event* functions
rationale:
* it's just boilerplate, as these just fill out the structs. can also be done at call site
* they are usually only called at one place
* it would lead to many includes (or at least forward defs) in sscsm_controller.h and
  sscsm_environment.h
2025-09-22 19:08:45 +02:00
Desour
85db322f58 fix this path todos 2025-09-22 19:08:45 +02:00
Desour
6a360e507a limit clock precision to 20 us
20 us was the value, firefox used as first response to the spectre attacks.
now it's 100 us or 5 us, depending on whether it's "cross-origin isolated".
we only have one origin, so choosing 20 us is probably fine, I guess
see also:
https://www.mozilla.org/en-US/security/advisories/mfsa2018-01/
https://developer.mozilla.org/en-US/docs/Web/API/Performance/now#security_requirements

other clocks:
* os.time() and os.date() only have seconds precision, AFAIK.
* dtime is only given once per step, so it's not useful
* there might be other ways to build clocks (if we get async envs for sscsm,
  with a busy loop, for example)
2025-09-22 19:08:45 +02:00
Desour
1e0d96af26 add a ModApiUtil::InitializeSSCSM() 2025-09-22 19:08:44 +02:00
Desour
a79e337d7a decide not to overwrite tostring
tostring({}) and string.format("%s", {}) give you pointers.
(see lj_strfmt_obj)
this is not very critical, but attacks could be made harder if we change this.
the effort of overwriting is not worth it I think right now
2025-09-22 19:08:44 +02:00
Desour
21155488eb (edit: don't) Fix unpack, and some other things 2025-09-22 19:08:44 +02:00
Desour
962742559f stuff 2025-09-22 19:08:44 +02:00
Desour
2a75ffa38a actually load the code, and make it not crash 2025-09-22 19:08:44 +02:00
Desour
e4a3b631cf mod_vfs stuff from TurkeyMcMac's PR
Co-authored-by: Jude Melton-Houghton <jwmhjwmh@gmail.com>
2025-09-22 19:08:44 +02:00
Desour
d8435dcf8d some error handling stuff 2025-09-22 19:08:44 +02:00
Desour
31513cac6e tmp3 2025-09-22 19:08:44 +02:00
Desour
3725fb1251 tmp2 2025-09-22 19:08:44 +02:00
Desour
0fb8e1b398 tmp 2025-09-22 19:08:44 +02:00
Desour
7935a63ed4 Add an SSCSM controller and environment skeleton 2025-09-22 19:08:44 +02:00
Lars Müller
5f5ea13251
Network: Batch individual particle packets (#16458)
also bumps proto ver
2025-09-22 18:46:34 +02:00
sfan5
4c29bf6923
Add missing chunk size safety checks (#16502) 2025-09-22 18:46:22 +02:00
sfan5
d5ddee6cbf
Log server connection to actionstream (#16505) 2025-09-22 18:46:07 +02:00
Desour
20f8eb9a6c Make proper use of override in server.h
Fixes warnings introduced by 08b7870.
Also removes unused virutal from getEmergeManager().
2025-09-22 00:40:30 +02:00
lhofhansl
08b7870c79
Monoblocks: optimize blocks that contain a single type of node (#16293)
Reduces memory usage on the server, especially with many user and/or large viewing distances.
Currently disabled on the client due to known data races on a block's data.
2025-09-21 13:19:30 -07:00
Sokomine
afd681d013
Add client-side logging of chat messages (#14289) 2025-09-21 21:27:42 +02:00
SmallJoker
9972639e26 Remove guiEditBox 2025-09-20 13:44:40 +02:00
SmallJoker
39f2727503 IrrlichtMt: Add scrollbar support to CGUIEditBox 2025-09-20 13:44:40 +02:00
Cora de la Mouche
fc6bef7de6
Extend core.generate_decorations to generate biomes respecting the biome map (#16397)
Large structures which are generated in on_generated callbacks
independently by Lua cannot influence decoration placement. This
change enables such a callback to assume responsibility for generating
decorations itself, presumably after structures are placed, by
disabling decorations in mg_flags and executing
core.generate_decorations.

---------

Co-authored-by: Po Lu <luangruo@yahoo.com>
2025-09-20 13:44:19 +02:00
sfan5
d932f34693
Add core.strip_escapes() (#16485) 2025-09-14 23:01:43 +02:00
y5nw
cc6b56b034
Minor refactor to the Plural-Forms parser (#16489) 2025-09-14 22:56:40 +02:00
lhofhansl
053ca6287a
Use consistent dtime_limit (#16492) 2025-09-12 11:29:40 -07:00
sfan5
f714ac0611 Add exclude_player to particle spawners 2025-09-10 20:23:55 +02:00
SmallJoker
b6a23b1bcc
CGUITTFont: Clean up, unify and comment draw code (#16380)
These changes were initially made to improve performance. However,
on modern hardware, these changes turned out to make no difference.

This commit unifies the calculations in 'draw' and 'getDimension' and
adds comments to make it more understandable.
2025-09-10 20:23:45 +02:00
sfan5
5672b93007 Separate ephemeral from client caching in core.dynamic_add_media() 2025-09-06 11:44:52 +02:00
sfan5
0b66465f33 Adjust Server::dynamicAddMedia() and related parts a bit 2025-09-06 11:44:52 +02:00
SmallJoker
56bc7814de
Lua API: Unify server env checks and fix missing ones (#16457)
A few functions tried to dereference a ServerEnvironment nullptr by
calling 'getEnv()'. This change makes use of a macro where possible.

This also cleans up incorrect macro uses, with no functional difference.
2025-09-04 19:00:23 +02:00
SmallJoker
d24a7001ab
Formspec: Implement Ctrl+Shift+Left/Right text selection (#16455)
This is a quality-of-life improvement to edit text more easily.
2025-09-04 18:58:46 +02:00
Montandalar
e86d2fea8d
Prevent MapBlocks in generation from being unloaded (#16339)
This change prevents issues arising from partial generation of MapChunks, which are liable to be regenerated completely when ungenerated MapBlocks within are encountered.

Co-authored-by: Po Lu <luangruo@yahoo.com>
Co-authored-by: sfan5 <sfan5@live.de>
2025-09-04 18:57:29 +02:00
y5nw
f390137d6e
Add API to cancel async jobs (#14602)
* Implement API to cancel async jobs

Co-authored-by: sfan5 <sfan5@live.de>

* update AsyncJob:cancel documentation from review

* Use IPC to unblock async

* review

* review async unblocking

* review

* Apply suggestions from code review

Co-authored-by: sfan5 <sfan5@live.de>

* minor licensing

---------

Co-authored-by: y5nw <y5nw@protonmail.com>
Co-authored-by: sfan5 <sfan5@live.de>
2025-08-26 12:40:31 +02:00
whosit
7cbe62fe7b
Allow float values for HTTPRequest.timeout (#16442) 2025-08-25 21:36:42 +02:00
sfan5
3f0f7f4285
Show supported backends in --help output (#16441) 2025-08-25 21:36:25 +02:00
DS
ce8e8f6bf4
GUIInventoryList: Override isPointInside() (#16283) 2025-08-24 19:01:28 +02:00
sfan5
079169612d Fix Irrlicht snprintf problems and UB in my_string_to_double 2025-08-24 19:01:18 +02:00
sfan5
baaab310fe Use stable sort in HUD rendering 2025-08-24 00:54:39 +02:00
sfan5
36b5374715 Simplify HUD handling in Player class 2025-08-19 17:34:22 +02:00
sfan5
bb74b9d488 Resolve FIXME in ModStorageDatabaseSQLite3 2025-08-19 17:34:22 +02:00
sfan5
54d48decad Sort out incorrect logic in MeshUpdateQueue::addBlock() 2025-08-19 17:34:22 +02:00
sfan5
1d53ec4892 Delete broken interlaced 3d_mode
fixes #15406
2025-08-19 17:34:22 +02:00
sfan5
e835673c5e Extract bitmap class 2025-08-19 17:34:22 +02:00
1F616EMO~nya
f2eb5e7a93
Add back the missing endElement in parseTag for <action> 2025-08-19 17:34:13 +02:00
sfan5
6da927a548 Add more texture size limit checks
closes #16014
2025-08-14 12:33:35 +02:00
sfan5
fd3588d49c Give more infos to on_timer() callback
closes #15817
2025-08-14 12:33:35 +02:00
sfan5
b6065797ce Clarify some keycode names
fixes #16258
2025-08-14 12:33:35 +02:00