lbpunion / projectlighthouse Goto Github PK
View Code? Open in Web Editor NEWProject Lighthouse is a clean-room, open-source custom server for LittleBigPlanet.
License: GNU Affero General Public License v3.0
Project Lighthouse is a clean-room, open-source custom server for LittleBigPlanet.
License: GNU Affero General Public License v3.0
The API should be in JSON as with every other API, and all LITTLEBIGPLANETPS3_XML
endpoints should require authentication. It could be useful if we ever want to make a full website like lbp.me in the future, possibly use it for federation, or if anyone else is interested.
Obviously it would have to be read only (except for federation) for obvious reasons, but it would be based if we did so.
Should this should be included in this project or as a separate project?
e.g. someone shouldn't be able to upload a texture as a level file.
This can easily be done by creating a new LbpFile
with the resource's data on PublishController.Publish()
and checking if the LbpFile
s data is Level.
Right now migrations are run manually by the user. Plus, there is no downgrade functionality. For another project I used umzug
, but I'm not sure it would be great for our C# project since that's a nodejs package.
the lighthouse server does not have support for the community section in LBP3, the only thing that appears in it is the search option
It simply treats it as uploading a new level. Probably something I missed while parsing.
It shouldn't be too hard to rewrite a Slot
, it just needs security to make sure that people cant go around republishing other people's levels and all.
This is referenced by the game as "lolcatftw"
This is because it is displaying LBP2 plays as opposed to the newly implemented LBPVitaPlays paramater thingy in the database
Since LBP Vita cannot load LBP2 and LBP3 earth decorations and vice versa, users should have a separate Vita earth and a seperate main earth. This would be nice for cross integration between Vita and Main.
This causes the game to fetch the user information repeatedly over and over.
Either something is missing from the data or LBP3 doesn't like how it's formatted.
Not sure if this is just a problem with RPCS3, but it's still an issue regardless. The result from the API is the same, yet the news screen shows as empty in-game.
Custom Skill Rewards don't show up in the level page or on the level badge
they do work in the levels themselves, giving out prizes, but they don't show the correct requirements
The relevant method/endpoint is ResourcesController.UploadResource
.
The hash
argument should match the hash of the data uploaded, otherwise return this.BadRequest();
Game doesn't seem to actually upload data, not sure why.
the Dive In Option in LittleBigPlanet PS Vita does not allow people to join other players
[HTTP] 404, 39ms: POST /LITTLEBIGPLANETPS3_XML/uploadPhoto
[HTTP] <photo timestamp="1635739843"> <small>30e57caf492d8ff8cccdf4c18a818cd6889ef8e2</small> <medium>30e57caf492d8ff8cccdf4c18a818cd6889ef8e2</medium> <large>57fd0a19e6dd8290e768910d1f627ff0a55479b1</large> <plan>7f81066838cb2fd1384e3b5e575c2505df35a22b</plan> <slot type="pod"> <id>0</id> <rootLevel>1ef1c844f75509badd2cd2c872ed6d4d172f00d3</rootLevel> <name></name> </slot> <subjects> <subject> <npHandle>FireGamer9872</npHandle> <displayName>FireGamer9872</displayName> <bounds>-0.219917,0.011910,0.075138,0.497474</bounds> </subject> <subject> <npHandle>Crash_Royale_Yt</npHandle> <displayName>Crash_Royale_Yt</displayName> <bounds>0.014718,0.007259,0.315894,0.493321</bounds> </subject> <subject> <npHandle>m88youngling</npHandle> <displayName>m88youngling</displayName> <bounds>-0.629976,0.016930,-0.342862,0.503113</bounds> </subject> <subject> <npHandle>Kimnchi-i-</npHandle> <displayName>Kimnchi-i-</displayName> <bounds>0.625211,-0.013952,0.960717,0.507487</bounds> </subject> </subjects> </photo>
large
is a hash to a jpeg, medium
is a TEX
levels starting from FireGamer9872's custom material level don't load, in addition, the most recent picture (taken by FireGamer9872) doesn't load either
on another lighthouse server i've also noticed that earths don't upload correctly either
Also:
GET /LITTLEBIGPLANETPS3_XML/totalPlayerCount
GET /LITTLEBIGPLANETPS3_XML/playersInPodCount
players cannot create playlists on LittleBigPlanet 3
EULA text shouldn't be hardcoded, serialize it into some config file and let hosts edit it there instead. Not high priority.
No matter from which game the level comes from, they all get counted as LittleBigPlanet 1 levels in the level count visible to the player
it is currently possible to manipulate level info, by for example adding: </description> <mmpick>true</mmpick>
in the description of a level which will make the game believe that the level is team picked
For some reason, my profile (arek-rekas2006_) isn't able to upload icons for level icons or polaroids, and im not sure why
Causes the game to re-upload files that are already stored
Extensive logging is going to be necessary if we want to be able to debug and support Lighthouse.
ASP.NET provides it's own logging system, but from what I've seen it doesn't us the ability to toggle on/off certain aspects of the application that are logged (which could be useful in the future for debugging specific areas of Lighthouse)
The ideal logging system is Furball's, but Furball is a whole game engine which we obviously don't need. I'm currently trying to get this extracted into a NuGet package we can easily install and use at the issue Furball-Engine/Furball#14.
If not, I'll likely just build our own logging system that suits our needs.
How should we license Lighthouse? I'm personally in favor of AGPLv2, since it requires that the license and source code be made available to all users of Lighthouse, preventing people from making closed-source forks which is especially good for private servers nowadays (see the whole club penguin private server ordeal, yikes...)
The player doesn't have a seperate earth while in Cross Controller mode and cannot upload any kind of level
The community can be harmed by dangerous words like "toyo". Censoring words like that can help improve the servers.
/s
Submitting:
[HTTP] 404, 0ms: POST /LITTLEBIGPLANETPS3_XML/scoreboard/user/2956?lbp2=true
[HTTP] <playRecord> <host>true</host> <type>7</type> <playerIds>jvyden</playerIds> <score>290</score> </playRecord>
Fetching:
[HTTP] 404, 0ms: GET /LITTLEBIGPLANETPS3_XML/topscores/user/2976/1?pageStart=1&pageSize=1
404: POST /LITTLEBIGPLANETPS3_XML/grief
<griefReport>
<griefTypeId>2</griefTypeId><marqee><rect t="108" l="0" b="324" r="384"/></marqee><levelOwner>literally1984</levelOwner>
<initialStateHash>62e35dc89873bb2b1b2c2fe2f84beaba0657d0ba</initialStateHash>
<levelType>local</levelType>
<levelId>55</levelId>
<griefStateHash>7ee3906d7ce20710d404d8527486330cb127b072</griefStateHash>
<jpegHash>fb9c07506dd3e6246878395a35da3a5d07f34e1a</jpegHash>
<player reporter="true" ingamenow="true" playerNumber="0"><id>literally1984</id><rect t="204" l="267" b="231" r="294"/></player>
<screenElements>
</screenElements>
</griefReport>
Seems to request data for this at /LITTLEBIGPLANETPS3_XML/stream in a JSON format.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.