summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2 daysBugfix pass.pandorabox-chestsHello=)1-2/+2
Fortunately timed chests were not even used anywhere in content yet. But... 1) Use actual name from puppet, in case it truncated, etc to set NPC timer. Otherwise can face missing NPC. 2) Use proper event name.
2 daysFix: do not place chests on collisions to make them reachableHello=)1-7/+8
2 daysIt mostly debugged and works - remove debug messages spamHello=)1-9/+0
3 daysThis brings pandora box style reward chests.Hello=)3-2200/+181
They effectively replaces "Exp chests" of labyrinth making code smaller, and chests reusable by GMs for events and more versatile in general. Some highlights: * About 10x smaller code to place Labyrinth chests, gets rid of 60K file. * Chests selfdestruct on reward -> no need to save state, allows to ditch permanent array[100] of strings. * Reusable core code to make placing chests as just 1 function call. * GMs can now place new reward chests, e.g. for events. * Simple anticheat sets calling GM not eligible for rewards (also prevents chest trigger by mistake). * Antigreed idea of original chests retained and reuses same vars. * GMs can also remove all chests on map if desired. * Labyrinth chests placed in truly random manner on every server restart. * Chests now more versatile: reward could be one of: 1) Random XP instead of fixed 200 000, centered on 120K, 10K min + rand(5000) JEXP (original had 10K). 2) Random GP - centered on 90K average, 10K min. 3) Random BP - centered on 40 BP average, 10 min.
2025-07-31MinerMania refactor - make dynamic mobcount labels truly dynamic.Hello=)1-80/+9
Rationale: * Sizably cuts down LoC without any loss of features. * No need to maintain list of labels anymore. How and why: TMWA can use "~" event prefix designated for mob counting purpose. If event label (npc part) starts from ~ there will be no event thrown. Like that event label designated to counting mobs, no event invoked. Example label: ~SomeNPC::MoubCount1
2025-07-22Add chests NPCs to open storage in banks.Hello=)2-0/+19
This adds chest NPC in all banks to improve usability. Now its possible to open player storage by just 1 mouse click or 2 key presses (N -> T by default) instead of clicking through some NPC dialogs. Idea by Thorbjorn.
2025-07-09Change URL of submodules to correct onesHEADmasterHello TMW1-2/+2
This MR lands changes to git submodule URLs - pass on client data. Approved-by: Thorbjørn Lindeijer <bjorn@lindeijer.nl>
2025-07-02Even more Teleport Manager fixes/refactor:Hello=)1-7/+7
1) Fixed sizable refactor BUG, in #bossflee pseudospell. * could've caused unplanned server exit on boss flee! 2) Fix error messages a bit once I'm on fixing bossflee.
2025-07-02More Teleport Manager fixes:Hello=)1-10/+11
1) Sort out race condition when player steps on timing out teleport. (caused harmless message to server's log - missing npc event) Fix: now grace period exceeds longest timer. 2) Only remove cookie var if its keyed teleport. "Usual" unkeyed teleports e.g. for GM events should NOT remove player's cookie. 3) Workaround of "slow" SC icon staying if map load takes long time. 4) Explicitly deny player to enter collapsing (expired) TP (show "can't pass" message during grace period)
2025-07-02This is refactor of teleport manager.Hello=)1-82/+18
1) Use mapexists() builtin to figure out if map valid. 2) This reduces code size a lot and gets rid of annoying array of valid maps to maintain 3) LoC further reduced by moving comments -> args parsing.
2025-07-02Summon spells refactor (factor out func to summon N beings in radius)Hello TMW17-170/+112
Rationale behind refactor: * Reduces spells LoC and "spaghetti" by factoring out duplicate code to summon N beings within radius to reusable function. * Single summon() wrapper used in spells would allow to do upcoming summon() builtin call prototype change MUCH easier. * Trying to spread mobs within given radius if possible. * If not possible (collision), falls back to given X,Y (usually player position at cast time so collision free). * Fixes bugs where summons failed to appear due to placement on collisions. * Full version would try to mimic monster() of Herc, likely most logic thing around (no idea why Herc's summon() is dumbed down vs TMWA or monster()) * Part of puzzle to enable more intelligent "big" summons, etc. This version of refactor is non-intrusive and atomic: uses existing TMWA summon() builtin and can coexist with non-refactored spells. Approved-by: Thorbjørn Lindeijer <bjorn@lindeijer.nl>
2025-06-07Buff sale prices (and set buy prices to *2) of some warlord gear and steel ↵Fedja Beader5-18/+18
shield I've calculated them to give a rough margin of 25% over just selling the iron/coal (it'll probably still be wiser to sell iron/coal to players, but now you will have the option of earning some decent money on that lucky drop.) want to experiment with different margins or do the same for other items? No problem, load this into Emacs org-mode: ``` | item | chain mail | light plate | warlord plate | warlord boots | warlord helmet | steel shield | |---------------------------+------------+-------------+---------------+---------------+----------------+--------------| | iron sale price: | 100 | | | | | | | coal sale price | 100 | | | | | | | infantry helmet sale pri: | 1500 | | | | | | | leather patch sale price: | 150 | | | | | | |---------------------------+------------+-------------+---------------+---------------+----------------+--------------| | craft price | 20000 | 50000 | 100000 | 35000 | 10000 | 20000 | | ingot count | 5 | 10 | 15 | 8 | 9 | 6 | | coal count | 10 | 20 | 30 | 16 | 18 | 12 | | helmet count | 0 | 0 | 0 | 0 | 0 | 2 | | leather patch count | 0 | 0 | 0 | 0 | 0 | 1 | |---------------------------+------------+-------------+---------------+---------------+----------------+--------------| | ingot+coal sale total | 13500 | 27000 | 40500 | 21600 | 24300 | 19350 | |---------------------------+------------+-------------+---------------+---------------+----------------+--------------| | total price with crafting | 33500 | 77000 | 140500 | 56600 | 34300 | 39350 | | markup: | 25 | | | | | | | total price+markup: | 41875 | 96250 | 175625 | 70750 | 42875 | 49187.5 | #+TBLFM: @11$2..@11$>=@7*(1000+5*@2$2+10*@3$2) + @8*@3$2 + @9*@4$2 + @10*@5$2:: @12$2..@12$> = @6+@11 :: @14$2..@14$> = @12 * (100+@13$2)/100 ``` I know @Ledmitz said that there should be a thorough review of all prices, but let's be real, who's going to do that? Or maybe this is a good intro to it? **** legacy/serverdata!872 Approved-by: Hello TMW <hello@themanaworld.org>
2025-06-07Add PointyWitchHat rare drop (0.01%) to Luvia,Tormenta,Zax,XakFedja Beader3-4/+12
(all that have equipment/head/wizard-hat.xml in monsters.xml) By popular request. Is there any other mob that should have it? Or some of these that shouldn't? Zax and Xak could also get the scroll drops of the other two. Approved-by: Hello TMW <hello@themanaworld.org> **** legacy/serverdata!871
2025-06-04poppys maps and some othersHoraK-FDF55-0/+201
serverdata changes to https://git.themanaworld.org/legacy/clientdata/-/merge_requests/671
2025-04-15Treasure Hunt: increase quest mob limit - map is big, add few items to ↵Hello=)1-5/+6
collateral
2025-04-15Treasure Hunt quest.Hello=)4-2/+474
Some highlights: * Finally some USABLE maps and shovels. Special thanks to HoraK. * No NPC dialogs, no chats, no "bring me 5 ratto tail", it made as new "world interaction" instead. * Open ended. Its up to players how exactly to do it. There're different ways. * E.g. maps are optional. But at least someone have to find location. Then they may - or may not share data with others, if they're up for more contenders. No any artificial limits on that. And even w/o shovel player can get some booty. * Neither just battle nor just quest nor just event, its a bit of both. * Digging now quite a perilous business, being some crossbreed of several game mechanics known to me. * Somewhat "pirate themed" and even got something similar to cutscene. * Quite deadly and designed as team level effort from scratch. Full treasure digging cycle not suposed to be doable solo at all. Is very unlikely anyone would ever manage this. * Uses quite unusual game mechanics. E.g. mobs are equally affected by certain events. Of course it aggravates them. * Designed to be repeatable quest in the end, e.g. weekly (with reduced rewards ofc) * Quite configurable/tuneable in run time, without server restarts. Could be disabled or retuned if necessary. * Hopefully just fun!
2025-04-15Remove undead parts from swamp mobs, add arrows to enchanters, remove keys ↵Fedja Beader2-14/+7
from both Why can players stay in swamp indefinetely by bringing supplies without having to grind elsewhere to pay for the crypt battle? - Remove undead parts: doom golems and enchanters are not undead. Having undead parts was simply a convenience for permanent swamp residents. This ends. - Remove keys from DG & E: There is already the reaper which drops a lot of keys and is frequently parked away as fighting it reduces overall xp gain. This change should encourage fighting the reaper. - Add arrows to Enchanters: they are animated as having a bow and giving arrows helps swamp archers stand on a more equal footing, materials-wise. In the future arrow sacks could be added, but those do not exist yet. - Also nerf the Amulet, Magic Ring and mask drops: they should be as rare as possible, as these mobs are already fought for other reasons (xp). Approved-by: Hello TMW <hello@themanaworld.org>
2025-04-12make legendary shovel and map dropable so ppl can drop duplicatesHoraK-FDF2-4/+4
2025-04-12Golems in TownHoraK-FDF3-5/+0
removes town check from golems and a left over comment line on mana guardian
2025-04-12TMW news updateHello TMW1-0/+34
@bjorn asked to also write news, that's it.
2025-04-12Server data submodule update: make client data up to dateHello TMW1-0/+0
Does what advertised - I've detected so far submodule commit pointer is stale and refers to old client data commit. Unfortunately it makes new items server knows unknown to client "by default".
2025-04-11ironshovel varHoraK-FDF2-1/+2
set @ShovelName$ to IronShovel so Iron Shovel can be identified on use
2025-04-09re-tag CI jobs according to mana/appimg-builder!6 (glados is no more)Fedja Beader1-5/+5
2025-04-09Legendary Shovel and Legendary Treasure MapHoraK-FDF4-4/+71
- added the legendary shovel as an event item - added legendary treasure map as an event item - added some missing ViewSprite entrys - fixed some misplaced brackets Approved-by: Hello TMW <hello@themanaworld.org> Reviewed-by: Hello TMW <hello@themanaworld.org>
2025-04-02SC_COOLDOWN_CGHoraK-FDF4-3/+80
serverdata changes for https://git.themanaworld.org/legacy/tmwa/-/merge_requests/298<br> <br> I also re enabled the stone golem (since its not op and even weaker than a guardian or tyrant) spell with that both spells take one of the matching items idk whats a fair amount to take any thoughts or just give it a test run and see if 1 is too less? Approved-by: Thorbjørn Lindeijer <bjorn@lindeijer.nl> Reviewed-by: Thorbjørn Lindeijer <bjorn@lindeijer.nl>
2025-03-14Small bugfix: rain interactions vs dendroids never been meant to also spawn ↵Hello=)1-1/+1
sea slimes
2025-02-22Added Pirate Bandana as a rare drop to SwashbucklersLed Mitz6-13/+30
- Stats match the Bandana. Only the buy/sell was changed. - Client data will have the colors match the Swashbuckler's (red & black).
2025-02-11Fix typo in commentFedja Beader1-1/+1
2025-02-11Fix typos. Mekolat forgot about Razha and Terogan when fixing Krukan?Fedja Beader3-7/+7
See 74ebd97f840bdf466277a6f71bf18220c5226772 Approved-by: Thorbjørn Lindeijer <bjorn@lindeijer.nl> Reviewed-by: Thorbjørn Lindeijer <bjorn@lindeijer.nl>
2025-02-11Fix english in Orum questFedja Beader1-1/+1
Co-authored-by: Led Mitz <smoothshifter@tuta.io>
2025-02-11./evolved.py addendum to bat cutlery nerf (!846)Fedja Beader5-6/+6
Approved-by: Thorbjørn Lindeijer <bjorn@lindeijer.nl>
2025-02-05Adjust Warlord Plate & Helmet and Leather Gloves drop ratesFedja Beader3-22/+24
This is a conspiracy by Small Nerf! j/k; the armors and helmets are dropping way too often and so nobody crafts them. The gloves I have 50 in my storage, but they are only nerfed down to 1:2000 as they're uncraftable otherwise. There has been a Warlord Plate listed @ ManaMarket for weeks now at 150k gp and nobody is purchasing it. This price barely covers the price of making the required ingots and what Nicholas's apprentice charges to make the armor.
2025-01-22Why are bats dropping cutlery? They have teeth!Fedja Beader1-9/+3
Nerfs Bat income by 3.25 gp ea. Around 3-5%.
2025-01-20Shift dev lounge hurns entrance a bit, it warped you off carpet.Fedja Beader1-1/+1
Anyone knows if there's a way to turn the player? If you go north through the door you enter devlounge facing north..
2025-01-08Add boss point reward to Cindy quest helpersFedja Beader1-4/+14
Nowadays noone does repeat fighting down there. Reward up for discussion. +Reduce lifetime of @bonus temporary Tested with lvl 102 char. It got 70 bp first them, then 38 on next win.
2025-01-08Explain how to use quest log and fix typosFedja Beader1-3/+8
2025-01-08Migrate the beheader quest to quest logFedja Beader4-13/+18
I've also removed the server-side progress announce. Apparently, the Celestia Yeti one wasn't. I think it's better to have this in-client only.
2025-01-08Better Weight Checks for Cindy, Illia and xmas questsHoraK-FDF5-8/+6
- for Illia if you go overweight to a certain point you can exclude bow and helm from the drops and get 1/3 chance on the heart this works on common rewards too to exclude some drops. - for cindy this prevents drops to ground - iten check was way to much on xmas core so i made it heaviest reward * 3 instead - removed weight check of santa helper since presents weight more than any of the rewards - added a comment to snowman Co-authored-by: Led Mitz <smoothshifter@tuta.io>
2024-12-30Add sauerkraut to illia common itemsFedja Beader1-1/+1
equivalent to bird legs already dropped there. .. entirely untested. Will probably work out of the box. Probably.
2024-12-29Stop Koga door NPCs from asking if you want to disembark. Just disembark.Fedja Beader2-12/+0
Tested working.
2024-12-28Fix really silly bug that caused slimes sometimes not being split.Hello TMW1-1/+1
Fixes silly bug causing slimes failing to split in some cases. Reported-by: HoraK-FDF
2024-12-19Rename news files to more future-proof naming styleThorbjørn Lindeijer97-9/+10
Since the news entries are sorted alphabetically by their file name, we need to rename all previous entries before we can start adding new ones with a better naming style. Co-authored-by: Ledmitz <smoothshifter@tuta.io>
2024-12-18news-2024-12 and submodules updated. Ready for a restart?Led Mitz3-1/+31
Co-authored-by: Thorbjørn Lindeijer <bjorn@lindeijer.nl>
2024-12-17Stop preventing fast character switching. So annoying, especially when it's ↵Fedja Beader1-1/+1
default on test servers! This might conflict with whatever config on live servers, depending on how it's applied.
2024-12-17mobs and drops 20241216HoraK-FDF6-31/+159
- added IceSkullMasK and assiged it to IceSkull - added GoldenSkullMasK and assigned it to GoldenSkull - added YellowHeadSlime and assigned it to YellowSuperSlime - added RedHeadSlime and assigned it to RedSuperSlime - added GreenHeadSlime and assigned it to GreenSuperSlime - added BlueHeadSlime and assigned it to BlueSuperSlime - changed SuperSlime stats a bit gave them more range and made them slower (attack+move) and set luck
2024-12-17mobs2maps 20241213HoraK-FDF22-32/+84
serverside stuff of https://git.themanaworld.org/legacy/clientdata/-/merge_requests/660
2024-12-17This adds actual SuperSlime splitting on top of "spawns on mob kill"Hello TMW1-8/+25
Extras for spawns on mob kill - actual **slime splitting** fun is **here**. The following extra spawns are in effect (compared to already merged): Mob -> to what it decays GreenSuperSlime -> AngryGreenSlime (same as GreenSlimeMother split) YellowSuperSlime -> YellowSlime RedSuperSlime -> RedSlime BlueSuperSlime -> BlueSlime (fewer than former as they're powerful)
2024-12-16fIX Spelling in Eljas's scriptFedja Beader1-2/+2
See !828 Approved-by: Thorbjørn Lindeijer <bjorn@lindeijer.nl>
2024-12-151) Add Blanc1 -> Blanc2 spawn.Hello=)1-4/+11
2) If only 1 mob requested to spawn, spawn on exact spot. Rationale: if its just 1 mob, it likely important, yet areaspawn can spawn fewer mobs than requested if e.g. some collisions are in area. Idea is that if mob can be killed on X,Y its certainly not collision so single important mob better off using use this location.
2024-12-13Two changes:Hello=)1-11/+11
1) Add check Luvia witch is not on Illia map (052-2), It its Illia, omit spawns for now to be on safe side. 2) Fix of silly typo causing bug in witch spawns (in fact they were not working at all, parameters sanity check did its part and aborted call).