Commit 7afbd7c
committed
Squashed commit of the following:
commit 19bf3e1
Author: Eduardo Dantas <[email protected]>
Date: Mon Apr 28 22:54:12 2025 -0300
fix: server startup loop on "Running with x threads" step (opentibiabr#3509)
Add dispatcher start validation and loading monitoring
This fixes a loop in the server start (breaks on "Running with 16
threads." step)
Dispatcher:
• Added promise/future in init() to ensure dispatcher thread is fully
started before proceeding.
• Added 5s timeout when waiting for dispatcher initialization.
CanaryServer
• Replaced blocking wait() on LoaderStatus with an active wait loop.
• Added soft warning logs every 2 minutes during startup.
• Added a 10 minutes startup timeout with graceful shutdown on failure.
• Minor cleanup in load order and improved robustness of server start
sequence.
Overall: server startup is now safer, with better feedback if the
process is slow or stuck.
commit 5bdbc20
Author: gabrielgg98 <[email protected]>
Date: Mon Apr 28 20:13:28 2025 -0300
fix: remove duplicated buy house command (opentibiabr#3476)
commit 830b126
Author: Ricardo Queiroz (Kaky) <[email protected]>
Date: Mon Apr 28 09:22:33 2025 -0300
fix: incorrect NPC interaction handling in The Djinn War Quest (opentibiabr#3508)
Revert the system check modified in PR opentibiabr#3471 that incorrectly identified whether the player followed the Efreet or Marid path, preventing proper NPC interaction. Ensure players aligned with Efreet cannot talk to Marid NPCs and vice-versa.
Also, fix an issue where players, even after completing the quest, could only greet NPCs using "DJANNI'HAH". Add a quest completion check before the existing greeting checks, allowing greetings like "hi" or "hello" after finishing the quest.
commit 288b00a
Author: Eduardo Dantas <[email protected]>
Date: Fri Apr 25 23:00:41 2025 -0300
fix: loot factor generate random value (opentibiabr#3181)
Currently, the factor is not really random, this corrects this problem.
commit c3ea4b3
Author: Júlio César Ueti <[email protected]>
Date: Fri Apr 25 02:20:45 2025 -0300
fix: djinn freequest (opentibiabr#3471)
To speak with djiins, you need to complete a few quests. Namely: "The
Djinn War - Efreet Faction" and "The Djinn War - Marid Faction".
Even though they show up as "completed" when freequests runs, you are
still unable to talk to them using their special word "Djanni'hah". They
laugh, saying it's ALMOST correct, then stop talking to you.
Changing the storageValue for the start quests to 0 fixes the issue.
commit 2193160
Author: mdbeng <[email protected]>
Date: Wed Apr 23 13:04:17 2025 -0400
fix: pvp zone no loss (opentibiabr#3353)
This change will prevent players from losing skills or dropping items
when dieing in pvp zone, currently theres nothing involving pvp zone
besides the old pvp arena which hopefully will be updated to tibia drome
so this fix its something to have in mind.
commit 2c5bf72
Author: Samuel Gomes <[email protected]>
Date: Wed Apr 23 02:09:40 2025 -0300
fix: kilmaresh ladders (opentibiabr#3437)
Ladders in Issavi (ids 31129 and 31130) are not steppable but clickable
instead. This only fixes that.
commit 44b8e7f
Author: Samuel Gomes <[email protected]>
Date: Wed Apr 23 02:07:59 2025 -0300
fix: toolgear lua log error (opentibiabr#3465)
This solves the log error associated with the use of toolgears.
[error] Lua Script Error Detected
---------------------------------------
Interface: Scripts Interface
Script ID: /home/samuk/canary-base/canary/data/scripts/actions/tools/toolgear.lua:callback
Error Description: ...ry/data-otservbr-global/scripts/lib/register_actions.lua:675: attempt to call method 'getActionId' (a nil value)
stack traceback:
[C]: in function 'getActionId'
...ry/data-otservbr-global/scripts/lib/register_actions.lua:675: in function 'onUsePick'
...nary-base/canary/data/scripts/actions/tools/toolgear.lua:7: in function <...nary-base/canary/data/scripts/actions/tools/toolgear.lua:3>
---------------------------------------
[error] Lua Script Error Detected
---------------------------------------
Interface: Scripts Interface
Script ID: /home/samuk/canary-base/canary/data/scripts/actions/tools/toolgear.lua:callback
Error Description: ...ry/data-otservbr-global/scripts/lib/register_actions.lua:949: attempt to call method 'getId' (a nil value)
stack traceback:
[C]: in function 'getId'
...ry/data-otservbr-global/scripts/lib/register_actions.lua:949: in function 'onUseSpoon'
...nary-base/canary/data/scripts/actions/tools/toolgear.lua:10: in function <...nary-base/canary/data/scripts/actions/tools/toolgear.lua:3>
commit 25065c4
Author: Eduardo Dantas <[email protected]>
Date: Wed Apr 23 01:51:22 2025 -0300
fix: wrap/unwrap owner bug for on use items (opentibiabr#3474)
Items that were "used" and transformed into others lost their store
attribute when wrapping/unwrapping and could no longer be moved to the
inbox store.
commit 124ee9e
Author: Eduardo Dantas <[email protected]>
Date: Wed Apr 23 01:51:07 2025 -0300
fix: mana drain on analyzer (opentibiabr#3473)
Show mana drain on input analyzer
commit 032f012
Author: Leilani A. <[email protected]>
Date: Wed Apr 23 01:49:17 2025 -0300
fix: player bypassing SQM restrictions when pushed (opentibiabr#3480)
Fix opentibiabr#3475
commit d3b437e
Author: Eduardo Dantas <[email protected]>
Date: Wed Apr 23 00:24:42 2025 -0300
build: update to recent vcpkg to fix compilation (opentibiabr#3503)
Update ThreadPool and magic_enum includes for vcpkg compatibility
- Adapt ThreadPool implementation to the updated BS::thread_pool v5.0.0
interface:
- Changed inheritance from `BS::thread_pool` to
`BS::thread_pool<BS::tp::none>`.
- Updated magic_enum include directives following recent vcpkg changes:
- Changed from `<magic_enum.hpp>` to `<magic_enum/magic_enum.hpp>`.
These updates resolve compilation issues arising after recent vcpkg
dependency updates.
commit b0a6920
Author: LeoTK <[email protected]>
Date: Tue Apr 22 22:59:50 2025 -0300
fix: check value purchase exp boost (opentibiabr#3501)
Related to pr: opentibiabr#3496
commit 559b18d
Author: Sorairei <[email protected]>
Date: Tue Apr 22 10:55:25 2025 -0600
fix the lootmonger remotely trade. (opentibiabr#3482)
Fix the npc lootmonger where players can shop remotely from anywhere.
Fixes opentibiabr#3481
commit c082f58
Author: LeoTK <[email protected]>
Date: Tue Apr 22 13:54:50 2025 -0300
feat: talkaction playericon (opentibiabr#3488)
This new command is to add an icon to the player, it also has a counter
function to use the command, follow the examples:
/playericon 1, 10 -- this way it will apply icon 1 with the counter at
10 and it will decrease every second after reaching 0, it will be
removed after 10 seconds.
/playericon 1, 10, up -- this way the counter will start at 0 and will
go up to 10 after 10 seconds, it will remove the icon.
commit 4fc4406
Author: Francisco Amaral <[email protected]>
Date: Tue Apr 22 11:54:53 2025 -0300
fix: suspicious device wrong id (opentibiabr#3492)
commit f9322d2
Author: LeoTK <[email protected]>
Date: Tue Apr 22 11:48:36 2025 -0300
fix: gamestore exp price (opentibiabr#3496)
By making this modification it will work and visually the correct amount
of expboost will be charged.
commit c3bafd8
Author: Felipe <[email protected]>
Date: Fri Apr 18 17:45:12 2025 -0300
fix: add taint experience boost for Soul War monsters (opentibiabr#3494)
# Description
This PR introduces a fix and enhancement for the experience boost system
related to the Soul War quest. Specifically, it ensures that the taint
level of the player is correctly factored into the experience
calculation when defeating monsters listed in the
SoulWarQuest.bagYouDesireMonsters.
## Behaviour
### **Actual**
The taint level boost was not applied correctly in some cases.
Experience calculation did not account for edge cases where the taint
level or boost map might be undefined.
### **Expected**
The taint level boost is applied consistently and correctly.
Experience calculation handles edge cases gracefully.
## Type of change
- [x] New feature (non-breaking change which adds functionality)
## How Has This Been Tested
- [x] Hunt any SoulWar monster and see the EXP increasing with different
taint levels.
## Checklist
- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [x] I checked the PR checks reports
- [x] I have commented my code, particularly in hard-to-understand areas
- [x] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works1 parent 7ae9cb3 commit 7afbd7c
27 files changed
Lines changed: 345 additions & 168 deletions
File tree
- data-otservbr-global
- lib/quests
- npc
- scripts/lib
- data
- events/scripts
- items
- libs/functions
- modules/scripts/gamestore
- scripts/talkactions/god
- src
- creatures
- game
- scheduling
- lib/thread
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | | - | |
4 | | - | |
5 | | - | |
6 | | - | |
7 | | - | |
8 | 3 | | |
9 | 4 | | |
10 | 5 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
23 | 23 | | |
24 | 24 | | |
25 | 25 | | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
26 | 34 | | |
27 | 35 | | |
28 | 36 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
95 | 95 | | |
96 | 96 | | |
97 | 97 | | |
98 | | - | |
99 | | - | |
100 | | - | |
101 | | - | |
102 | | - | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
103 | 105 | | |
104 | | - | |
105 | | - | |
106 | | - | |
107 | | - | |
108 | | - | |
109 | | - | |
110 | | - | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
111 | 114 | | |
112 | 115 | | |
113 | 116 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
254 | 254 | | |
255 | 255 | | |
256 | 256 | | |
257 | | - | |
| 257 | + | |
258 | 258 | | |
259 | 259 | | |
260 | 260 | | |
261 | 261 | | |
262 | 262 | | |
263 | | - | |
| 263 | + | |
264 | 264 | | |
265 | 265 | | |
266 | 266 | | |
267 | 267 | | |
268 | 268 | | |
269 | 269 | | |
270 | | - | |
| 270 | + | |
271 | 271 | | |
272 | 272 | | |
273 | 273 | | |
274 | 274 | | |
275 | 275 | | |
276 | | - | |
| 276 | + | |
277 | 277 | | |
278 | 278 | | |
279 | 279 | | |
280 | 280 | | |
281 | 281 | | |
282 | 282 | | |
283 | | - | |
| 283 | + | |
284 | 284 | | |
285 | 285 | | |
286 | 286 | | |
287 | 287 | | |
288 | 288 | | |
289 | | - | |
| 289 | + | |
290 | 290 | | |
291 | 291 | | |
292 | 292 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
55 | 55 | | |
56 | 56 | | |
57 | 57 | | |
58 | | - | |
59 | | - | |
60 | | - | |
61 | | - | |
62 | | - | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
63 | 65 | | |
64 | | - | |
65 | | - | |
66 | | - | |
67 | | - | |
68 | | - | |
69 | | - | |
70 | | - | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
71 | 74 | | |
72 | 75 | | |
73 | 76 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
177 | 177 | | |
178 | 178 | | |
179 | 179 | | |
180 | | - | |
| 180 | + | |
181 | 181 | | |
182 | 182 | | |
183 | 183 | | |
184 | 184 | | |
185 | 185 | | |
186 | | - | |
| 186 | + | |
187 | 187 | | |
188 | 188 | | |
189 | 189 | | |
190 | 190 | | |
191 | 191 | | |
192 | 192 | | |
193 | | - | |
| 193 | + | |
194 | 194 | | |
195 | 195 | | |
196 | 196 | | |
197 | 197 | | |
198 | 198 | | |
199 | | - | |
| 199 | + | |
200 | 200 | | |
201 | 201 | | |
202 | 202 | | |
203 | 203 | | |
204 | 204 | | |
205 | 205 | | |
206 | | - | |
| 206 | + | |
207 | 207 | | |
208 | 208 | | |
209 | 209 | | |
210 | 210 | | |
211 | 211 | | |
212 | | - | |
| 212 | + | |
213 | 213 | | |
214 | 214 | | |
215 | 215 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
183 | 183 | | |
184 | 184 | | |
185 | 185 | | |
186 | | - | |
| 186 | + | |
187 | 187 | | |
188 | 188 | | |
189 | 189 | | |
190 | 190 | | |
191 | 191 | | |
192 | | - | |
| 192 | + | |
193 | 193 | | |
194 | 194 | | |
195 | 195 | | |
196 | 196 | | |
197 | 197 | | |
198 | 198 | | |
199 | | - | |
| 199 | + | |
200 | 200 | | |
201 | 201 | | |
202 | 202 | | |
203 | 203 | | |
204 | 204 | | |
205 | | - | |
| 205 | + | |
206 | 206 | | |
207 | 207 | | |
208 | 208 | | |
209 | 209 | | |
210 | 210 | | |
211 | 211 | | |
212 | | - | |
| 212 | + | |
213 | 213 | | |
214 | 214 | | |
215 | 215 | | |
216 | 216 | | |
217 | 217 | | |
218 | | - | |
| 218 | + | |
219 | 219 | | |
220 | 220 | | |
221 | 221 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
55 | 55 | | |
56 | 56 | | |
57 | 57 | | |
58 | | - | |
59 | | - | |
60 | | - | |
61 | | - | |
62 | | - | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
63 | 65 | | |
64 | | - | |
65 | | - | |
66 | | - | |
67 | | - | |
68 | | - | |
69 | | - | |
70 | | - | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
71 | 74 | | |
72 | 75 | | |
73 | 76 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
55 | 55 | | |
56 | 56 | | |
57 | 57 | | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
58 | 61 | | |
59 | 62 | | |
60 | 63 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
55 | 55 | | |
56 | 56 | | |
57 | 57 | | |
58 | | - | |
59 | | - | |
60 | | - | |
61 | | - | |
62 | | - | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
63 | 65 | | |
64 | | - | |
65 | | - | |
66 | | - | |
67 | | - | |
68 | | - | |
69 | | - | |
70 | | - | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
71 | 74 | | |
72 | 75 | | |
73 | 76 | | |
| |||
0 commit comments