fredi-68 / luswca

Remember to put full project title here
GNU General Public License v3.0
0 stars 0 forks source link

Achievements #21

Open fredi-68 opened 6 years ago

fredi-68 commented 6 years ago

While achievements are technically covered by the mission system, they aren't currently checked when a mission hook is called unless they are active.

fredi-68 commented 5 years ago

Fixed this to a degree by adding all achievements as active missions upon character creation. This fixes achievements for newer characters, however, some achievements seem to not update properly. Testing on VE has shown the rocket collector achievements to trigger correctly, but QB and smashing achievements are not updating, or at least I am not seeing it happening. More investigation required

fredi-68 commented 5 years ago

The aforementioned bugs were due to a broken mission hook and due to some wrong assumptions made by the task target system. While fixing those I also found out that adding all achievements as missions upon character creation is a bad idea so now we only add the ones that the player starts with. Subsequent achievements are added to the active mission list once their prerequisite achievements have been completed.

There are still some achievements that are not covered by the current implementation however. These include missions that rely on physics (e.g. "Discover xyz"), collectible missions (due to the same issue that causes normal collectible missions to glitch out), minigame related achievements like racing and 3 achievements (and their 2nd stage achievements) that keep track of health/armor/imagination picked up by the player. According to a blog post by lcdr these use a separate task type not used by any other achievement or mission in the game, which unfortunately isn't documented so far. Will need to look at the client DB to figure out the ID