64 Commits

Author SHA1 Message Date
Robert Paciorek
566b75eefe some optimizations for Profile Answers 2024-03-02 20:19:42 +00:00
cc802043ec Profile Answers
-Add Ability For Profile Answers To Save
-Add WoJS response for ``GetQuestions``
-Add ``Pain`` Mood To Question Data
2024-03-02 17:36:29 +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
7888445eee support for mods - items add/overwrite interface 2024-01-29 14:28:51 +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
512348336c fix missing blueprints 2023-12-29 00:36:29 +00:00
Robert Paciorek
25ebba6f65 fix MissionID restore bug 2023-12-11 16:27:46 +00:00
Robert Paciorek
e5570f7c91 Magic and Mythies fixes:
- add fake missions for unlock fishing and mythie grow up
- add games to store
2023-12-11 16:50:20 +01: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
Spirtix
474605dd53 fix highscores involving time 2023-12-07 21:03:14 +01:00
Spirtix
8b3ed124c6 wallets 2023-12-07 20:38:06 +01:00
Spirtix
7578ee7e97 GetGameData: convert dates to UTC 2023-11-27 19:09:28 +01:00
Spirtix
57904b3b4a leaderboard query fixes 2023-11-26 19:47:54 +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
Spirtix
3ddc1e205c fix stable quest reward with invalid pet ID 2023-10-18 08:32:04 +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
ac281ca4ad fix mission completed check in "one of tasks is needed to be completed" case 2023-10-02 20:32:40 +02:00
Robert Paciorek
2fa842c822 fix battle items identification and adding 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
c7b3a74390 use ItemService for store and itemId in store.xml
- replace full items def in store.xml by item id
- load items def from items.xml (via ItemService) in StoreService constructor
2023-09-18 14:01:24 +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
e57e5ad44b add int overflow protection for achievement values 2023-09-13 14:57:45 +02:00
Robert Paciorek
9b1609c6ad repeatable mission support 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
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
Spirtix
efb2958124 remove InventoryService from AchievementStore 2023-09-03 12:07:07 +02:00
Robert Paciorek
9949fb5e7d split AchievementService into scoped and singleton 2023-09-02 12:38:18 +02:00
Robert Paciorek
a1f1ee0e29 bugfix: get/set user pairs from viking apiToken 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
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
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
dd9dfa4873 support for farm on old clients
- add support UserItemPositionSetRequest without item (but with UserInventoryCommonID)
2023-08-23 21:57:57 +02:00
Robert Paciorek
ada1fd5338 support for importer
- XP import interface
- allow overwrite dragon creation date for importer
2023-08-23 21:57:57 +02:00
Spirtix
5e6eba3af3 fix null growth state when hatching some dragons 2023-08-15 14:59:47 +02:00
Robert Paciorek
fb582b4c24 fix error and missing xp on dragon ageup
- fix error when GetAchievementsByUserID is called with dragonId instead of userID
- add dragon XP when ageUp by ticket
2023-08-15 08:11:56 +02:00
Spirtix
2a0b62552e inject AchievementService to MissionService 2023-08-14 19:29:33 +02:00
rpaciorek
406ebe20c2
initial support for XP points (#16)
* GetPetAchievementsByUserID and enum for PointTypes

* add RankService

* use AchievementPointTypes for PointTypeID

... insted of int in schema

* support for player XP, fix dragon XP

- database table
- return correct value in API call
- save XP from mission

* rename RankService to AchievementService

* use addAchievementPoints for all non item reward

this could be a good place for wallet servicing too ... so currency reward too

* return const XP value for farming and fishing

we don't have gathering method for those XPs yet

* fix avatar schema, fix coding style
2023-08-14 18:34:14 +02:00
Spirtix
d7f3ad81bd fix item rewards not being saved 2023-07-30 15:57:44 +02:00
Spirtix
9c3c374741 unify timestamps 2023-07-27 19:06:19 +02:00