Launcher Planning List
Revision as of 23:05, 18 November 2019 by Sylph Knight (talk | contribs)
Contents
Current Tasks (to-dos)
- Obtain server for testing launcher protocol.
- Current volunteers: EpicDev
- Verify if EpicDev's AES encryption-based server will be compatible with the https requirements we'll need for TCP Ack.
- Current volunteers: (pending)
- Locate and integrate a Github TCP Ack software solution to simulate the intended protocol for the launcher.
- Current volunteers: (pending)
- Verify server efficacy, and integrate with server-facing component of Github solution.
- Current volunteers: (pending)
- Reverse-engineer existing Sunrise launcher to map out its functionality to aid in making further updates.
- Current volunteers: Vision
- Investigate / integrate Ironpython ( https://ironpython.net/ ) into Sunrise to provide .net framework support for wider programming access for those unfamiliar with Python/QT.
- Current volunteers: Profit
- Identify resources needed
- Current volunteers: (pending)
- Resources are available however identification of needs is required.
- Virtual resource requirements may include wiki, github or other organizational tools.
- Current volunteers: (pending)
Preliminary Requirements
- Verify and outline replacement for Manifests.
- TCP ACK is the current methodology being explored.
- For clarification were looking at more of a 2way check process or verification of requests by client launcher vs pushing out a full manifest in a single request.
- Verify any additional server-side requirements that must be developed to work with this data management model.
- TCP ACK is the current methodology being explored.
- Settle on launcher's server list management methodology.
- Develop a prototype for demonstration
- Potentially, combine the incomplete Sunrise launcher with a github-acquired TCPAck solution to present the idea in action. Additional changes or custom solutions can be worked out later.
List of Development Milestones
- Settle on whether to continue existing Sunrise launcher development, or migrate to another programming language.
- Ease-of-entry or familiarity with the language to develop the software should be a priority to resolve limitations with available developers.
- Issues with Sunrise are that there may be a lack of experience surrounding Python with QT to continue development.
- If Sunrise is discontinued, verify if any aspects of the project, such as Lexi's skins, can be recycled to minimize future labor.
List of Requirements
- Launcher must be in the same directory as the game executable. Forcing this as a standard will resolve several problems with administrative rights requirements previously seen in earlier launchers.
Tertiary Goals
- User interface layout and design requirements.
- Detailed view of transfer speeds
- Detailed view of progress
- Confirm and work around compatibility problems across OS platforms.
- Wine wrapping seems to be among the most popular solutions.
- Meaningful Error messages
- Detailed messages will help with troubleshooting experience