# Roadmap

This is a complete list of all the features I want the PCN server to have for me to consider it complete.

## IV and V

* GTS: cheat filter, legal request filter, search, history, player history, push notifications
* Battle tower: room leaders, room history, player history, player's last party used, player's highest floor reached
* Battle videos: Search, history, watch
* Mystery gift: monthly rotation
* Player profiles: login, view, permissions
* Pokédex
* Friend list management? I don’t know whether to handle this at the Trainer or User level.
* I guess we can show friends lists in one’s own trainer profiles after game sync has happened, and have an Add as Friend button. (Add as Dream Pal?)
* Permissions: Game progress (badges, medals, pokedex, battle tower, …), Friends, GTS history, uploaded shit
* Permission levels: Everyone, friends, nobody

## IV

* Dressups: search
* Box uploads: search
* Trainer rankings: current, breakdown by week
* Wifi plaza: survey results
* Stat checking: check via GTS, check via battle videos
* Player profiles: link via GTS

## V

* Musicals: search
* Stat checking: check via Game Sync
* Player profiles: link via Game Sync ID
* pkvldtprod: soft legality check
* Game Sync: put to bed, wake up, receive items, pokemon, musicals, c-gear, pokedex wallpaper
* Dream World: berry garden, pokemon feeder, house decorations
* Rating battles
* Battle competitions 

## Stat checking

* All the features of Pokecheck.
* GenIV links in a Pokecheck style way: Search for Ditto lv9 and under, get a secret code from the search results.
* GenV links using your PGL code.
* Link in one place for both PGL and stat check.
(Provide some basic PGL style functionality eg. player profiles and game selection for Gen4)
In Gen4, you check a pokemon just like Pokecheck, only your request must be Ditto lv9 and under for it to happen.
In Gen5, you check a box of pokemon at a time by renaming the box and using Game Sync. (possible issue: game sync limited to once a day)
You can add tags to your pokemon summaries, works much the same as pokecheck boxes only multiples are allowed.
* Species/shiny/DW are built-in searches.
* Set individual pokemon to public/friends/private.
* Delete button. (this is a 100% real delete)

## Administration

* Can see full “pokecheck” pages for any pokemon in the GTS or history.
* Can eject pokemon from the system.
* Can see all trainer profiles
* Can see all user profiles
* Can ban trainers??
* Can link/unlink trainers to user profiles.
* Gets some secret trainer/user info like pid.
* Sees full validation summaries of all pokemon
* Has access to pkvldtprod logs
* Hide/delete pkgdsprod uploads
* Hex view of pkm data (decrypted, unshuffled)
