Separate actions from store packages
Move store package actions to a separate table. Return actions from the game server integration API (abstract away packages).
Add another table for action executions. Mark a package as redeemed once all actions have been executed.
Limit actions to the following types:
- user role
- console command (user offline & online)
- execute online commands locally
- execute offline commands using RCON (if configured)
- fall back to executing locally
- local code (user offline & online).
Reimplement remaining currently existing actions using some of the above.
Checklist
-
Move actions to a separate table -
Restructure integration API -
Track action executions individually -
Implement offline actions (API) -
Implement RCON schedule worker for offline commands
Edited by Kekalainen