Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

TShock 4 -> 5 Feature Map #40

Open
hakusaro opened this issue Oct 11, 2016 · 3 comments
Open

TShock 4 -> 5 Feature Map #40

hakusaro opened this issue Oct 11, 2016 · 3 comments
Assignees

Comments

@hakusaro
Copy link
Member

hakusaro commented Oct 11, 2016

This is a project I discussed with @tylerjwatson. Effectively, I'm going through the entire TShock 4 codebase and identifying key features, commands, subsystems, etc. and dividing them up in a table to determine where they should go in TShock 5 and Orion.

Because the wiki doesn't have any way to send notifications to Slack, I'm creating an issue here to track my progress as I work to enumerate through features. In addition, I plan on asking for input directly when something comes into question (should feature X or Y be in Orion or in TShock 5?).

Very spare, but I hope to make significant progress in the next week or so to help guide implementation of features in Orion that need to be done before TShock 5 can start being designed around Orion.

TShock 4 Feature In Orion? Service def. in Orion? In TShock 5? Status / Comment
Rest API ✔︎ ✔︎ Not complete. See #6. Many routes will be added in both TShock 5 and Orion, but the core implementation will be in Orion. TShock will add routes as necessary (and the services it implements will too).
Log system ✔︎ Not started. Presumably logging will be handled by an Orion service and TShock will deliver its messages to that service. See #19. Almost all log related config options should be removed from TShock, except maybe a binary "send logs to Orion log service" option.
Bans ✔︎ ✔︎ To be determined. Not sure if this is supposed to be in AAA or not. If in AAA, not sure if it's supposed to handle user facing entry points or if another plugin should be exposing AAA.
Warps ✔︎ Not migrated. Warp subsystem likely handled entirely in TShock 5, but could be removed and split into another plugin.
Regions ✔︎ Not migrated. Region subsystem likely handled entirely in TShock 5, but could be removed and split into another plugin.
Backups ? ? ? Not sure if this subsystem should be in TShock 5, but will likely remain in TShock 5.
Groups ✔︎ ✔︎ Not completed. Should be implemented in AAA, but unclear if user facing entry points should be in Orion or if TShock should implement them (commands, for example).
Users ✔︎ ✔︎ Not completed. Should be implemented in AAA, but unclear if user facing entry points should be in Orion or if TShock should implement them (commands, for example).
Item bans ✔︎ Not migrated. Item bans subsystem likely handled entirely in TShock 5, but could be removed and split into another plugin.
Projectile bans ✔︎ Not migrated. Projectile ban subsystem likely handled entirely in TShock 5, but could be removed and split into another plugin.
Tile bans ✔︎ Not migrated. Tile ban subsystem likely handled entirely in TShock 5, but could be removed and split into another plugin.
Remembered position manager ✔︎ Not migrated. Remembered pos manager likely handled in TShock 5, but should probably be moved into another plugin.
Server side characters ✔︎ Not migrated. SSC likely handled in TShock 5. Could be a separate plugin, but also really hard to do and really easy to screw up.
Stat tracker ✔︎ Not started. Likely handled in Orion as a service. To be completely removed in TShock 5.
GeoIP ✔︎ Not migrated. Likely handled in TShock 5. Could be a separate plugin, but recent rewrites by Enerdy actually have it working.
Database ? ? Not clear as to where plugins can store arbitrary data.
Whitelist ✔︎ Not migrated. Likely handled in TShock 5.
Config ? ? ? Unclear where arbitrary config files are read/written and how this correlates in TShock 5.
Misc random config file settings in TShock ✔︎ Not migrated. Most will make it into TShock 5 or be split out into plugins.
@hakusaro hakusaro self-assigned this Oct 11, 2016
@QuiCM
Copy link
Member

QuiCM commented Oct 13, 2016

In relations to your Bans feature, see #41

@hakusaro
Copy link
Member Author

I'm moving the entire table to Github issues because the wiki software sucks and has a compulsory sidebar and doesn't like handling big tables properly.

@hakusaro
Copy link
Member Author

I've taken care of what I consider to be almost all of the core features, but I don't know. I'd say everyone is open to edit this table and add suggestions as they see fit.

@tylerjwatson, if you can answer the database/config questions, that would be great.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants