Commit Graph

10617 Commits

Author SHA1 Message Date
the-real-herowl
53d640028e Added effect stacking option to the potions API
Also:
* Frost and Food Poisoning potion now stack their effects
* fixed a crash related to tipped arrows
2024-05-22 21:03:43 +02:00
the-real-herowl
9e9507efeb Plant placement and drop fixes 2024-05-22 21:03:43 +02:00
the-real-herowl
63b2da7aa0 Added on_save_effect support for mobs 2024-05-22 21:03:43 +02:00
the-real-herowl
e806d5f3ce Fixed effects still being handled after mob death 2024-05-22 21:03:43 +02:00
the-real-herowl
914e3c6c2a Effects persist on loads for mobs too 2024-05-22 21:03:43 +02:00
the-real-herowl
a4eaaad1a9 Remove unused function in mcl_hunger 2024-05-22 21:03:43 +02:00
the-real-herowl
78ae5ddc26 Added some potion recipes
Also:
* changed the duration of saturation and food poisoning potions
* minor code changes
2024-05-22 21:03:43 +02:00
the-real-herowl
8f4d5d2e27 Added the ominous potion 2024-05-22 21:03:43 +02:00
the-real-herowl
70d8dfe558 Improved API mob support
* various API functions now work with mobs properly
* the following effects don't work with mobs at all:
  water breathing, dolphin's grace, leaping, swiftness,
  slowness, slow falling, night vision, darkness, frost,
  health boost, absorption, fire resistance, resistance,
  luck, bad luck, blindness, nausea, hunger, saturation,
  haste, fatigue, conduit power
* the following effects should work with mobs:
  invisibility, regeneration, poison, withering,
  strength, weakness, levitation, glowing
* the following effects have no effect on mobs
  (but can be applied with the API):
  bad omen, hero of the village
2024-05-22 21:03:38 +02:00
the-real-herowl
9b501bfa7e Allowed infinite effect duration 2024-05-22 21:02:25 +02:00
the-real-herowl
75e5ca8d49 Added the option to remove and clear effects...
...with the /effect command.
Also made the API for clearing effects more robust.
2024-05-22 21:02:25 +02:00
the-real-herowl
dcbc9d2398 Allowed giving effect without particles
...both with API and the /effect command
2024-05-22 21:02:25 +02:00
the-real-herowl
7c2d74e983 Typos fixed 2024-05-22 21:02:25 +02:00
the-real-herowl
7c1f9805e2 Tooltip and color fixes 2024-05-22 21:02:25 +02:00
the-real-herowl
b5367a77a7 Expanded brewing recipe API
Added recipes using thick or mundane potion
2024-05-22 21:02:25 +02:00
the-real-herowl
8cfe96a955 Added potions for new effects
* also added some new brewing recipes
2024-05-22 21:02:25 +02:00
the-real-herowl
ced2741686 Added strength and weakness potions
Also fixed potent slowness potion level
Also fixed slowness and swiftness effect descriptions
2024-05-22 21:02:25 +02:00
the-real-herowl
a9c2a89f16 New brewing recipes registering API
Also migrated all recipes to the new system
2024-05-22 21:02:25 +02:00
the-real-herowl
c4bedb37e0 Brewing fully works with the new system 2024-05-22 21:02:25 +02:00
the-real-herowl
f60f50041d Brewing somewhat works with the new API 2024-05-22 21:02:25 +02:00
the-real-herowl
09be413e3f Added glowing effect
Also added on_save_effect callback to run cleanup
2024-05-22 21:02:25 +02:00
the-real-herowl
7ae31790bf Fixed running on_end for effects that aren't ending 2024-05-22 21:02:25 +02:00
the-real-herowl
6dab6158b9 Reserve some more keywords in register_effect() 2024-05-22 21:02:25 +02:00
the-real-herowl
7cd0cfede8 Further (mcl_)luck functionality
* XP from mob breeding impacted by luck
* eye of ender explosion chance impacted by luck
* fishing loot impacted by luck
* melee critical damage impacted by luck
* also fixed 2 scripts marked as "executable"
2024-05-22 21:02:25 +02:00
the-real-herowl
42778a3a6d Made some random rolls affected by mcl_luck
* xp bottle
* bow and crossbow crits
* megacrits added for mcl_bows, achievable only by (mcl_)luck
2024-05-22 21:02:25 +02:00
the-real-herowl
b28467d348 Added mcl_luck API
Luck and Bad Luck effects use the mcl_luck API now
The API is unused for now
2024-05-22 21:02:25 +02:00
the-real-herowl
c503a5fb8c Added luck and bad luck effects
They're no-op for now
2024-05-22 21:02:25 +02:00
the-real-herowl
bbe2964d48 Added some effect descriptions 2024-05-22 21:02:25 +02:00
the-real-herowl
5263740a80 Added conduit power 2024-05-22 21:02:25 +02:00
the-real-herowl
ddbc7cd826 Haste and fatigue expanded and improved
* abstracted and refactored some parts of haste and fatigue
* added and exposed new mcl_potions API functions
* fixed haste and fatigue not altering the hand
* mcl_meshhand now calls into mcl_potions when resetting the hand
2024-05-22 21:02:25 +02:00
the-real-herowl
6d7fe91047 Capped fatigue effect on punching
This fixes a crash, too
Also updates toolcaps on gamemode change
2024-05-22 21:02:25 +02:00
the-real-herowl
0c4094596e Improved haste and fatigue effects
* fixed a few crashes related to unusual effect levels
* added haste and fatigue combat functionality
* added some cleanup to avoid hangover unstackable items
* capped the slowdown from fatigue at 5 minutes digging time
* (despite the above, if a tool has a longer time set in definition,
	that still works)
* removed an unused "global" variable
2024-05-22 21:02:25 +02:00
the-real-herowl
1ac81e440c Added haste and fatigue 2024-05-22 21:02:25 +02:00
the-real-herowl
bf82241e82 Added dolphin's grace 2024-05-22 21:02:25 +02:00
the-real-herowl
456d205161 Added strength and weakness effects
* also highest effect level displayed in HUD set to 3000
* also improved indicating effects with strange factors in HUD
2024-05-22 21:02:25 +02:00
the-real-herowl
0e33947258 Renamed some functions and variables
* changed names referring to player where it does support mobs
* also added an is_player() check in one function
2024-05-22 21:02:25 +02:00
the-real-herowl
03c73b7820 Improved descriptions 2024-05-22 21:02:25 +02:00
the-real-herowl
e039642446 Improved nausea 2024-05-22 21:02:25 +02:00
the-real-herowl
b6484a6d15 Added time_override to FOV API
time_override can be used when applying or removing modifiers
2024-05-22 21:02:25 +02:00
the-real-herowl
394b090c83 Improved the darkness effect 2024-05-22 21:02:25 +02:00
the-real-herowl
65b923c43c Added darkness 2024-05-22 21:02:25 +02:00
the-real-herowl
aa4ff1827d Added nausea 2024-05-22 21:02:25 +02:00
the-real-herowl
92a77a7dbb Fixed graphical features of some effects
* loading fixed (by adding on_load)
* absorption bar never reaching end fixed
2024-05-22 21:02:25 +02:00
the-real-herowl
31adc45da9 Added blindness effect
(also improved TT descriptions of some effects)
2024-05-22 21:02:25 +02:00
the-real-herowl
5610fa1c4b Added frost effect 2024-05-22 21:02:25 +02:00
the-real-herowl
3f5cea3046 Added HP hudbar look modifier API
(for now in mcl_potions)
2024-05-22 21:02:25 +02:00
the-real-herowl
a8054e8112 Add hero of the village effect 2024-05-22 21:02:25 +02:00
the-real-herowl
007500613a Added food poisoning and saturation effects 2024-05-22 21:02:24 +02:00
the-real-herowl
fce73ab2bf Added some missing effects and improved API
* added a way to have a damage modifier relying on type instead of flag
* added Slow Falling
* added Levitation
* added Health Boost
* added Absorption
2024-05-22 21:02:24 +02:00
the-real-herowl
08942d3b25 Improved damage mods in effects, resistance effect 2024-05-22 21:02:24 +02:00
the-real-herowl
a6c9bc8a01 Improved effects HUD and fixes
* Fixed some effects not being replaced correctly with higher levels
* Implemented an old FIXME (MTE 5.3.0 fixed underlying bug)
* Added a way to obtain an approximate level of effect from factor
* Added effect level to HUD under the icon
* Added effect timer to HUD under the icon
2024-05-22 21:02:24 +02:00
the-real-herowl
209299b791 Improved /effect command return messages
Also improved the name of a variable
2024-05-22 21:02:24 +02:00
the-real-herowl
b84d36b3ff Registered dragon breath and pruned code
* removed old registration code
* added to the API the `nocreative` field
* registered the bottled dragon's breath as an item
2024-05-22 21:02:24 +02:00
the-real-herowl
eac63f93d5 Re-registered potions under new API 2024-05-22 21:02:24 +02:00
the-real-herowl
3663a62374 Added a constant to the API 2024-05-22 21:02:24 +02:00
the-real-herowl
a429a462cd Fixed tipped arrow descriptions 2024-05-22 21:02:24 +02:00
the-real-herowl
5a7a533bf6 Added missing effect descriptions 2024-05-22 21:02:24 +02:00
the-real-herowl
0b1cc6ad57 Fixed splash and lingering potions
* descriptions
* scaling
2024-05-22 21:02:24 +02:00
the-real-herowl
93572d71f2 Added support for varied descriptions 2024-05-22 21:02:24 +02:00
the-real-herowl
7d3e2d3dbc Implemented missing potion registering functionality
* improved support for custom (non-status) effects
* added support for splash potions
* added support for lingering potions
* added support for tipped arrows
* removed the old registration
2024-05-22 21:02:24 +02:00
the-real-herowl
83530b4298 Improved potion descriptions
* added support for effect descriptions
* added descriptions for some effects
* fixed a crash
2024-05-22 21:02:24 +02:00
the-real-herowl
dc35f43bfa Potions registering API fully works with creative 2024-05-22 21:02:24 +02:00
the-real-herowl
a8fcae0f51 Fixed variable definitions ("undeclared global") 2024-05-22 21:02:24 +02:00
the-real-herowl
6d927ab1a1 Creative inventory using new potions API
-creative inventory utilizes the new potions API
-the new fancy tooltips are used there
2024-05-22 21:02:24 +02:00
the-real-herowl
ef2ce7e0d7 Added new potion tooltip handling
-potion tooltips are now utilizing the power of the new API
-potion names change based on metadata
-nothing triggers loading the new tooltips beyond the names for now
2024-05-22 21:02:24 +02:00
the-real-herowl
9383b903ef Added new potions registering API
-added comprehensive potions registering API
-new API registers only drinkable potions for now
-new API is compatible with very complex tooltips
-new API can have multiple effects per potion
-no hardcoding for specific potions in the new API
2024-05-22 21:02:24 +02:00
the-real-herowl
f1e9c3b563 Translatable effect names and cleanup
-added translatable effect names to the API
-made /effect utilize those descriptions
-cleaned up variables/constants to go with further API changes
2024-05-22 21:02:24 +02:00
the-real-herowl
d85e582e8c Arabic-to-Roman converter redo
-rewrote the Arabic-to-Roman number converter
-moved it to mcl_util
2024-05-22 21:02:24 +02:00
the-real-herowl
5827a7638d Reimplemented /effect heal and fixed bugs
-heal subcommand to the /effect reimplemented
-healing_func() from old API standardized, included in new API
-(the last point is due to it being substantially different from others)
-fixed a few bugs, potential crashes
-fixed incorrect withering effect progression
-standardized variable naming
2024-05-22 21:02:24 +02:00
the-real-herowl
d1ca0f23f0 Resolved merge conflict 2024-05-22 21:02:24 +02:00
the-real-herowl
5750284e8f Improved /effect command and fixes
-improved the /effect command, allowing to use effect levels
-fixed a bug in level-to-factor conversions
-renamed effect icons to follow the new convention
2024-05-22 21:02:24 +02:00
the-real-herowl
8477d13c79 General effects API overhaul
- added a `register_effect()` function
- added the withering effect
- registered all the old effects under the new API
- unified effect names
- updated the main effect checker to use the new API
- changed some hardcoded values to support the unified effect naming
- added new namespaced metadata effects strings
- added support for legacy effect player metadata
- potions are still using the old effects API
- added glue between old API calls and the new API
- renamed the effect icons to support the unified effect naming
2024-05-22 21:02:24 +02:00
the-real-herowl
753545d714 Merge pull request 'Rover and Stalker' (#4282) from rover_stalker into master
Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4282
2024-05-22 19:01:14 +00:00
the-real-herowl
48e6ffa935 Improved tool tooltips (#4306)
Co-authored-by: Araca <araca.prod@gmail.com>
Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4306
2024-05-22 18:55:07 +00:00
teknomunk
bbc20d5f06 Fix undefined global warning when using milk bucket (#4287)
Fix undeclared global variable warning when drinking milk and additional code cleanup.

Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4287
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Co-authored-by: teknomunk <teknomunk@protonmail.com>
Co-committed-by: teknomunk <teknomunk@protonmail.com>
2024-05-22 18:45:18 +00:00
teknomunk
0279dde3d0 Limit check to +/- 16 nodes from goal position (maximum 33 nodes, 3 map blocks) 2024-05-22 15:25:38 +00:00
teknomunk
2a014ca79c Change y range calculation to use outer zone distance and not middle to let mobs spawn far away from the player 2024-05-22 15:25:38 +00:00
teknomunk
1bc0a0b411 Implement a continuous distribution function using a piecewise linear function for selecting the distance from the player to spawn mobs with, fix crash when no nodes are found under air at the goal position 2024-05-22 15:25:38 +00:00
teknomunk
bd6c8d35c3 Change y_min/y_max calculations 2024-05-22 15:25:38 +00:00
teknomunk
3850fc1a9f Limit y range to the same hemisphere (top/bottom) 2024-05-22 15:25:38 +00:00
teknomunk
74cf14ef0f Close if statement 2024-05-22 15:25:38 +00:00
teknomunk
3a4a8799ea Change mob spawning randomization from polar coordinates to spherical coordinates, move position validation code from find_spawning_position to get_next_mob_spawn_pos, minimize code remaining in find_spawning_position 2024-05-22 15:25:38 +00:00
the-real-herowl
a3f6bc1a6f Rename the files 2024-05-22 14:26:18 +02:00
the-real-herowl
691ba9f5b3 Merge pull request 'Documentation update, mostly rename of the game' (#4236) from doc_update into master
Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4236
2024-05-22 05:26:10 +00:00
Nicu
a1a74a2072 Add the world seed to the startup logging (#4295)
In multiplayer, only the server logs this information - the client has no access to it.

Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4295
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Co-authored-by: Nicu <kneekoo@noreply.git.minetest.land>
Co-committed-by: Nicu <kneekoo@noreply.git.minetest.land>
2024-05-22 05:23:43 +00:00
Wbjitscool
cd66dc28a4 Cherry blossom particles improvement (#4258)
Co-authored-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4258
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Co-authored-by: Wbjitscool <dwsda121@gmail.com>
Co-committed-by: Wbjitscool <dwsda121@gmail.com>
2024-05-22 05:18:27 +00:00
qoheniac
ff4fd24c42 fix typo in German translation (#4308)
Reviewed-on: https://git.minetest.land/VoxeLibre/VoxeLibre/pulls/4308
Reviewed-by: the-real-herowl <the-real-herowl@noreply.git.minetest.land>
Co-authored-by: qoheniac <kalhoefer@protonmail.com>
Co-committed-by: qoheniac <kalhoefer@protonmail.com>
2024-05-20 17:10:24 +00:00
syl
157cf695fc Improve blocks translation in French 2024-05-19 15:10:04 +02:00
the-real-herowl
af13bd0635 Stalker may be overloaded, but never charged 2024-05-19 02:49:40 +02:00
the-real-herowl
3cf21b3559 Some more corrections 2024-05-19 02:33:21 +02:00
the-real-herowl
18af03b99c Animated charged stalker aura 2024-05-12 07:14:28 +02:00
the-real-herowl
22b6c25458 Convert old mob to the new stalker 2024-05-12 06:47:00 +02:00
the-real-herowl
0dcf38094c Stalker rename (partial) 2024-05-12 06:21:37 +02:00
the-real-herowl
970f6cf377 Stalker model and mechanics implemented 2024-05-12 06:02:15 +02:00
teknomunk
412aae9a58 Change VoxeLibre2 to VoxeLibre 2024-05-07 11:38:00 +00:00
teknomunk
98eed36938 Update matrix link, update git link in source code and one module README that has a link to git 2024-05-07 11:38:00 +00:00
teknomunk
5f6a9f3a0c Update more documentation to use VoxeLibre 2024-05-07 11:38:00 +00:00
teknomunk
b37e9818b7 Update API documentation to match updated game name 2024-05-07 11:38:00 +00:00
teknomunk
aabd80d54b Change MineClone 2 to VoxeLibre 2024-05-07 11:38:00 +00:00
the-real-herowl
3b202eab34 Another portion of name updates 2024-05-07 11:38:00 +00:00