rework achievements system:
- support for Achievements page in journal
- register achievement tasks in database to avoid duplicate rewards and to register progress (achievement levels)
- better achievement tasks xml database (for multiple games)
- support for older games SetUserAchievementTask (V1)
- add some missed achievement IDs
- move achievement data to Resources/achievements/
additionally:
- add mmo zones for MaM and some additional mmo zones for EMD
- move missions Resources into Resources/missions/
- split SoD/MaM missions into separte files
- move rank data to Resources/ranks/
- cleanup sodoff.csproj
SQLite database schema changes:
```
CREATE TABLE "AchievementTaskState" (
"VikingId" INTEGER NOT NULL,
"TaskId" INTEGER NOT NULL,
"Points" INTEGER NOT NULL,
CONSTRAINT "PK_AchievementTaskState" PRIMARY KEY("TaskId","VikingId"),
CONSTRAINT "FK_AchievementTaskState_Vikings_VikingId" FOREIGN KEY("VikingId") REFERENCES "Vikings"("Id") ON DELETE CASCADE
);
```
DB MODEL CHANGES! I don't know how to deal with those.
Support for EMD's MMO rooms and API token.
Groundwork for group/clan system (hence schema changes). Only functional for EMD right now (if I implemented it correctly).
* Removed debug logged messages.
* Update comments in GroupController.cs
* Fixed position of parenthesis in ConfigurationController.cs
* Noted changes in README
* Amendment to previous commit, these are supposed to be alphabetical.
* Changed unnecessary extra check for EMD ClientVersion.
Adds a setup script that removes the terrible terror perched on the stall at the School for Mission 2989 (Age of the Night Lights) and Mission 3043 task 6547 (Friendship Festival 2022).
For Friendship Festival 2022, the removal of the terrible terror is intended by the developers themselves, as evidenced by an ObMissionActivate monobehavior located in pathID 14489 in HubSchoolDO. I've tried the quest, and yet the terrible terror is still there, phasing through Harold's Terrible Terror during a cutscene. This pull request fixes that.
For Interception, a quest in Age of the Night Lights, users are getting confused when asked to click on Leopold. They think they need to click on the Terrible Terror perched on the stall, when instead they need to click on Leopold, Harald's Terrible Terror, that is flying in the air. This pull request removes the terror to help alleviate the confusion.
* Add Announcement To Send Player To SanctuaryBabySS In SuperSecret
* Add Announcement for Amphitheater in WoJS
* Announcements are send based on per game resources file
Co-authored-by: Robert Paciorek <robert@opcode.eu.org>
Also:
* implemented ``GetAvatarByUserID`` from @Moonbase's previous PR.
* implemented ``GetPeriodicGameDataByGame`` and ``GetGamePlayDataForDateRange``
---------
Co-authored-by: Alan Moon <alanmoonbase2004@gmail.com>
- fix "No soil plots in v.2.9"
- do not send null `UserItemPosition.Uses` for old clients
- fix "unable to do the expansion missions in Sodoff 2.9"
- move expansion board missions to Headmaster for old versions
- fix race condition on PurchaseItems (causing negative gems amount issue)
- move gems bundles to correct store
- also fix "gems bundles not show after click on gems counter" issue
- fix "internal error neighborhood" (WoJS)
(caused by room item with null item)
- fix "Release date is set to creation date upon being released" (WoJS)
- update GrowTime value in SetRaisedPetInactive
- restore missed items for WoJS 1.1 and others games
- fix items broken by new avatars as alterntives (switch via store based on apiKey)
- add FunZones and Brooms to store
Thanks for YesntSoup
- Add ``UserProfileTag`` Placeholder
- Add Placeholder Profile Tags
- Reimplement ``GetContentByTypeByUser``
- Fix ``GetContentByTypeByUser``
- Add Test Movie Theater Content
- Add Real Movie Content
- Add Big Cat
- Fix CatURL
- Add Arcade Content
- Add Proper Response For Arcade Content
- Replace ContentInfo With ContentInfoData
- Still Trying Arcade Things
- Update Jukebox
- Movie Theater Thumbnails
- Replace All Content And MMO URL's To Point To New Server
- Replace https With http And Do Similar Action To ``allranks_wojs``
- Fix Typo
- Add All Other MainStreet Missions
- Add WoJS Ranks
- Add Learning Content (Brain Arcade)
- Restore Original Jukebox Content
- Add External Games And Fruit Salad Chop To Arcade Content
- Update Learning Content
using common mmo config from DWADragonsMain.xml allows to
easy host own servers without having to edit the server code
per zone config can by enabled by edditing Resources/mmo.xml
* use Alpha Skins icons for Membership Toothless and Membership Light Fury
(not a perfect solution, but better than an icon that doesn't load)
* use correct icon (with visible alpha glow) for Alpha Toothless Friendship Hearts Paint
* add to "Dragon Hunter Gold" missing prerequisites for Battle For The Edge
* add missing prerequisites to other bonus quests from expansions packs
thanks to BrokenTV
* 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