150 Commits

Author SHA1 Message Date
Robert Paciorek
1f190dd19a add api config settings: database and response url 2024-03-01 17:14:56 +00:00
Robert Paciorek
97503cc389 rework game version managment
now we use game and SoD version encoded in uint (instead of compare raw apiKey values),
this allows for easy support for more versions ...
2024-02-24 18:47:04 +00:00
Robert Paciorek
56c388b1d6 fix internal server error on 2.9 quests
also fix error on invalid SetAvatar call
2024-02-06 20:20:35 +00:00
Robert Paciorek
4e792658d8 battle event rewards support
* fix RedeemMysteryBoxItems for support gems and coins from boxes
* add missing battle event fail achievement
2024-01-23 01:11:50 +00:00
Robert Paciorek
36d009dc3a implemented SetDisplayName 2024-01-09 20:43:38 +00:00
Robert Paciorek
ea3de10100 disable sending email in LoginParent reply 2024-01-07 16:24:00 +00:00
Robert Paciorek
5c802927a0 job board and quests bugfixes
* fix: jobs disappear after completing
* fix: jobs (and quest) does not cost items
2024-01-04 00:19:16 +00:00
Robert Paciorek
e50207ac2e add support for customizable items 2023-12-29 22:49:11 +00:00
Robert Paciorek
47e1bfb065 SoD 1.6 fixes
- CreateRaisedPet endpoint
- support for 1.6 apiKey + util class for management apiKey version recognition
2023-12-11 16:50:20 +01:00
Spirtix
80481713e3 include discounts in purchase prices 2023-12-09 22:01:10 +01:00
Robert Paciorek
5b8c952419 wallet-store fix for old SoD (1.13, 2.9) 2023-12-07 21:02:57 +00:00
Spirtix
8b3ed124c6 wallets 2023-12-07 20:38:06 +01:00
Spirtix
385449c1e7 highscore fixes 2023-11-26 17:44:38 +01:00
Spirtix
c5bc21e539 top achievement points leaderboard 2023-11-26 17:44:38 +01:00
Spirtix
a0e2e198da score leaderboards 2023-11-26 17:44:38 +01:00
Robert Paciorek
132057911f bugfix: check item gender for mystery box rewards 2023-11-07 11:39:07 +01:00
Robert Paciorek
89f51bc157 fix for 1.13 2023-10-17 08:06:27 +02:00
Spirtix
fd831058c6 data model improvements 2023-10-17 07:58:04 +02:00
Robert Paciorek
42ee2ab77d job board mission fixes
- set as inactive and need accept in 1.13
- allow repeat in all versions

also remove from mission list for 1.13 Maze and MainReward quests
2023-10-04 15:38:28 +02:00
Robert Paciorek
a8d1bae4ac fix fuse error in "Battle Skills" tutorial 2023-10-04 15:38:28 +02:00
Robert Paciorek
230012b7b0 removal of the email uniqueness requirement 2023-10-02 11:19:02 +02:00
Robert Paciorek
2e9c8f22da fix intenal error on fuse and reroll 2023-09-27 07:54:36 +02:00
rpaciorek
44ea10ed71
support for SoD old tutorial and for Magic And Mythies (#17)
* old tutorial, works on 3.0.0 (partial on 2.9 also)

thanks to BrokenTV for quest data

* support for Magic And Mythies

* oldclients - avatar fix for 3.12

* register and create viking on 1.13

* fix Data Validation Failed on viking create in 2.9

* fix tutorial on 2.9

- fix opening cryptex cage
- replace initial dialogs (Grimmel version) by old version (based on wiki info)
- replace final dialogs (Harald bomb reference)

* missions support and better init profile on 1.13

- add support for mission in old SoD
- add stub for "New Student" quest for pre 2.3
- properly set HubBerkDOFirstCommon (via tutorial/quest, not via RegisterChild)
  - this allow show intro movie
- allow select and hatch first dragon (in hatchery as part of New Student quest)
  - this also fix stables on 1.13

* disable mmo on old clients
2023-09-18 19:22:45 +02:00
Robert Paciorek
9071d0bf37 fix some race conditions
- use session lock for SetKeyValuePair* endpoints
- use session lock for SetAchievementByEntityIDs endpoints
2023-09-18 13:59:04 +02:00
J-128
0824a7ab97 Update RegistrationController.cs:
Discriminate between a duplicate email and a duplicate username;
Return appropriate MembershipUserStatus
2023-09-15 10:26:07 +02:00
Spirtix
f4de1f495f Revert "temporarily disable mmo to fix loading issues"
This reverts commit 5d62a068ace4246934d44faacc562934fee8bfc2.
2023-09-13 15:01:30 +02:00
Spirtix
95008797b1 initial mmo work 2023-09-13 15:01:29 +02:00
Robert Paciorek
e88a5db3bf more friendly response for profile not found 2023-09-13 14:57:45 +02:00
Robert Paciorek
70a28f4d1b bugfix: fuse item from inventory blueprint 2023-09-13 14:57:45 +02:00
Robert Paciorek
c6ad11b5d7 support for random quantity box prize
- add ItemService.GetItemQuantity
- add ItemService.CheckAndOpenBox and new form of ItemService.OpenBox
- add runes to DT rewards
2023-09-13 14:57:45 +02:00
Robert Paciorek
ed8cba8159 bugfixes: removing item in SetCommonInventory, ...
- fix removing item from inventtory in SetCommonInventory (regresion after switch to InventoryService)
- fix null exception in SellItem on invalid UserInventoryCommonIDs
- remove unused fields in AchievementService (are in AchievementStoreSingleton)
2023-09-05 07:46:44 +02:00
Robert Paciorek
5dbd28e83c support for mystery boxes and bundles 2023-09-04 20:50:47 +02:00
Robert Paciorek
656f39398f bugfix: not saved achievement rewards
AchievementService Add*/Apply* function do NOT save data to DB
2023-09-04 20:50:47 +02:00
Robert Paciorek
645d1f30ad bugfix: reward DT with correct gender items 2023-09-04 20:50:47 +02:00
Robert Paciorek
82d31853ea stable mission rewards
- implement SetAchievementByEntityIDs endpoint
- add stable achivments to achievementsids.xml (generated from TimedMissionDO.xml)
- remove AddAchievementPointsAndGetReward, AddAchievementPoints now return AchievementReward
- add ApplyPayout to proxy
2023-09-04 20:50:47 +02:00
Robert Paciorek
9508af4199 fix Cogs/Incredible Machines achievement rewards 2023-09-03 19:40:18 +02:00
Robert Paciorek
d9e3315d41 bugfixes for mmo info from API server
- fix database exception in GetAllActivePetsByuserId
- fix exception when GetUserProfileByUserID call with invalid userId
2023-09-03 19:39:29 +02:00
Robert Paciorek
391be35a7a fix vikings profile and vist farm on MMO 2023-09-03 19:35:04 +02:00
Robert Paciorek
d122786778 fix error in ProcessRewardedItems on empty request 2023-09-03 19:34:41 +02:00
Robert Paciorek
4544c6a3d1 fix crash on reward from DT without player dragon 2023-09-02 12:38:18 +02:00
Robert Paciorek
b5e76d1846 DT reward bugfix + GetUserCurrency function
- bugfix DT rewards:
  - fix selling from reward screen
  - fix showing in inventory without reload
- add InventoryService.SellInventoryItem
- add AchievementService.GetUserCurrency function
2023-09-02 12:38:18 +02:00
Robert Paciorek
c039337430 use VikingSession for DT items API 2023-09-02 12:38:18 +02:00
Robert Paciorek
51c490aad9 unification KeyValuePair KeyValuePairByUserID API (and use VikingSession interface for its) 2023-09-02 12:38:18 +02:00
rpaciorek
e3314ae1f1
Viking session via ActionFilter (#29) 2023-08-31 21:01:55 +02:00
rpaciorek
81e5718e05
foreign keys for table PairData + DragonId column + DB schema improvements (#30)
* DB schema improvements

- add column DragonId to table PairData
- add foreign keys for table PairData
- remove unused column InventoryId from Vikings table
- simplifying relations viking -> selected dragon
  - remove SelectedViking and SelectedVikingId from Dragon
  - remove column SelectedVikingId from Dragons table
- cleanup and arrangement code in DBContext.cs

* support for dragons PairData in KeyValueService

and in "pairs" API endpoints
2023-08-31 20:46:03 +02:00
rpaciorek
7bee6c620a
dragons tactics (battle) backpack (#26)
* return battle item as battle items

placeholder - no saved stats, always use default stats

* Blacksmith API implementation

* ApplyRewards (DT rewards) and AddBattleItems

also temporary disable some AchievementsTask rewards from DT ... probably should not be repeatable ...

* support "box tickets" blueprints

- add OpenBox in ItemService (should be useful for other boxes also)
- move checking item category to ItemService (ItemHasCategory)

* InventoryService and full DragonTactics rewards

- move "add to inventory" to InventoryService
- move creating CommonInventoryData from inventory to InventoryService
- move CreateItemStats() to ItemService
- assigning random "item" reward from DT based on dtrewards.xml (at this moment list of all DT items not listed in store)
- rework dragon XP and add player XP and gems reward to DT
2023-08-31 20:42:03 +02:00
rpaciorek
d0eacb75b6
Achievement race condition fix (#28) 2023-08-28 08:35:05 +02:00
Spirtix
e564a44b13 name suggestion bugfix 2023-08-27 22:03:44 +02:00
rpaciorek
665089d5ef
support AchievementTask and AchievementID rewards (#25)
- add task and id reward xml databases
   - thanks to Project Edge community for sniffed network data!
- implement SetAchievementAndGetReward, SetUserAchievementAndGetReward
- partially implement SetUserAchievementTask
- move rewards logic to AchievementService
- show real value of farming and fishing XP
- show UDP points

Co-authored-by: Spirtix <michal.prazak1@gmail.com>
2023-08-23 22:07:08 +02:00
Robert Paciorek
2f89f37c93 send membership for old clients 2023-08-23 21:57:57 +02:00