* Reorganize tests into unit/integration pattern * Make DbSets virtual so they can be overridden by tests * Add MessageControllerTests * Implement DigestMiddlewareTests * Refactor SMTPHelper to follow DI pattern which allows for mocking in unit tests. * Fix MailQueueService service registration and shutdown * Implement tests for Status and StatisticsController and reorganize tests * Start working on UserControllerTests * Start refactoring tests to use In-Memory EF provider * Refactor integration tests to reset the database every time Change default unit testing database credentials * Update credentials to use default root with different passwords * Throw exception when integration db is not available instead of falling back to in-memory * Evaluate DbConnected every time * Remove default DbContext constructor * Setup DbContexts with options builder * Convert remaining Moq DbContexts to InMemory ones * Add more tests and use Assert.IsType for testing status code * Add collection attribute to LighthouseServerTest * Remove unused directives and calculate digest in tests * Fix digest calculation in tests * Add test database call * Clear rooms after each test * Fix CommentControllerTests.cs * Disable test parallelization for gameserver tests * Fix failing tests Fix SlotTests Make CreateUser actually add user to database Fix dbConnected Lazy and change expected status codes Properly Remove fragment from url for digest calculation Fix digest calculation for regular requests [skip ci] Remove unused directive Don't use Database CreateUser function Get rid of userId argument for generating random user Rewrite logic for generating random users Fix integration tests * Implement changes from self-code review * Fix registration tests * Replace MailQueueService usages with IMailService |
||
---|---|---|
.config | ||
.github | ||
.idea/.idea.ProjectLighthouse/.idea | ||
.run | ||
Documentation | ||
ProjectLighthouse | ||
ProjectLighthouse.Localization | ||
ProjectLighthouse.Servers.API | ||
ProjectLighthouse.Servers.GameServer | ||
ProjectLighthouse.Servers.Website | ||
ProjectLighthouse.Tests | ||
ProjectLighthouse.Tests.GameApiTests | ||
ProjectLighthouse.Tests.WebsiteTests | ||
scripts-and-tools | ||
.dockerignore | ||
.gitignore | ||
CODE_OF_CONDUCT.md | ||
CONTRIBUTING.md | ||
crowdin.yml | ||
docker-compose.yml | ||
Dockerfile | ||
global.json | ||
LICENSE | ||
ProjectLighthouse.sln | ||
ProjectLighthouse.sln.DotSettings | ||
README.md |
Project Lighthouse
Project Lighthouse is a clean-room, open-source custom server for LittleBigPlanet. This is a project conducted by the LBP Union Ministry of Technology Research and Development team.
For concerns and inquiries about the project, please contact us here.
For general questions and discussion about Project Lighthouse, please see the megathread on our forum.
DISCLAIMERS (Please read!)
This is not a final product.
This is beta software, and thus is not stable nor is it secure.
While Project Lighthouse is in a mostly working state, we ask that our software not be used in a production environment until release.
This is because we have not entirely nailed security down yet, and your instance WILL get attacked as a result. It's happened before, and it'll happen again.
Simply put, Project Lighthouse is not ready for the public yet.
In addition, we're not responsible if someone hacks your machine and wipes your database, so make frequent backups, and be sure to report any vulnerabilities. Thank you in advance.
We are not obligated to provide support.
Project Lighthouse is open source. However, it is licensed under the GNU Affero General Public License version 3 ( AGPLv3) meaning that Project Lighthouse is provided to you as-is, with absolutely no warranty.
Please understand that while this license gives you freedom to do pretty much anything you would want to do, including allowing you to run your instance, this doesn't mean we are obligated to support you or your instance. When you set up an instance of Project Lighthouse, you are entirely on your own.
Sony is not related nor liable.
It is very important to stress that the LBP Union and Project Lighthouse is not affiliated with Sony Group Corporation (collectively referred to as “Sony”) and its subordinate entities and studios. We are not the official developers of LittleBigPlanet or it's online services. Project Lighthouse is a clean-room reimplementation of its server, not the official servers.
By using Project Lighthouse you release Sony, as well as any employees or agents of Sony, from any and all liability, corporate, or personal loss caused to you or others by the use of Project Lighthouse or any features we provide.
Building
This will be written when we're out of beta. Consider this your barrier to entry ;).
It is recommended to build with Release
if you plan to use Lighthouse in a production environment.
Contributing
Please see CONTRIBUTING.md
for more
information.
Compatibility across games and platforms
Game | Console (PS3/Vita/PSP) | Emulator (RPCS3/Vita3k/PPSSPP) | Next-Gen (PS4/PS5/Adrenaline) |
---|---|---|---|
LBP1 | Compatible | Compatible | No next-gen equivalent |
LBP2 | Compatible | Compatible | No next-gen equivalent |
LBP3 | Compatible | Compatible | Incompatible |
LBP Vita | Compatible | Incompatible, PSN not supported on Vita3k | No next-gen equivalent |
LBP PSP | Potentially compatible | Incompatible, PSN not supported on PPSSPP | Potentially Compatible |
Project Lighthouse is mostly a work in progress, so this chart is subject to change at any point.