p3js / mikesoft-p3-node

A simple, easy-to-use NodeJS library for interacting with Mikesoft P3.
GNU General Public License v3.0
3 stars 2 forks source link

How do I host a P3FS server? #2

Open RixInGithub opened 11 months ago

RixInGithub commented 11 months ago

I just really want to host a P3FS server myself :eyes: (I'll take a look at your source code to check out the sorcery for me to recode in Python (just for myself :D))

EDIT: My Python recode that doesn't let anything connect to it (I don't know what is needed to make it connect) EDIT 2 (and maybe 3(?)): removed ping

themirrazz commented 11 months ago

I'm not actually sure, never used the Python socketio library or Flask. Sorry that I can't help you :(

RixInGithub commented 11 months ago

Well, apart from Python thingoes, can I consult you on how does your lovely library work? And do you know about P3FS hosting (at least in your library)?
P.S.: I probably sound rude, but trust me. I'm just smiling at ya! :D

themirrazz commented 11 months ago

It's been so long... I barely remember lol It works by connecting to the official Windows96.net P3 (Psuedo P2P) relay (p3.windows96.net), which uses Socket.io, and it's designed to work almost identical to the Windows 96 built-in API, its designed so people can host [P3] servers without having to have Windows 96 open but I barely remember how it works. As for P3FS, I had a Discord bot for P3FS but screwed up for binary files, and don't have the code for that bot anymore (sadly).

RixInGithub commented 11 months ago

It's been so long... I barely remember lol It works by connecting to the official Windows96.net P3 (Psuedo P2P) relay (p3.windows96.net), which uses Socket.io, and it's designed to work almost identical to the Windows 96 built-in API, its designed so people can host [P3] servers without having to have Windows 96 open but I barely remember how it works. As for P3FS, I had a Discord bot for P3FS but screwed up for binary files, and don't have the code for that bot anymore (sadly).

Alrighties. I'll try to look up a P3 library.

EDIT: Unfortunately, as how much I explored, I could find new w96.net.P3Connection().createServer(773). But that didn't work. I just want to know what messages does it send or get so I could recode it...

EDIT №2: Plan C: I'll use your library, but replace the io variable defined with a one that tracks. I'll share the code soon and the results.

EDIT №3: I'll change my environment's library code to enable de track

EDIT 4:

/home/runner/mikesoft-p3-node-tracker-useful-for-P3-devving/node_modules/socket.io-client/build/cjs/on.js:5
    obj.on(ev, fn);
        ^

TypeError: obj.on is not a function
    at Object.on (/home/runner/mikesoft-p3-node-tracker-useful-for-P3-devving/node_modules/socket.io-client/build/cjs/on.js:5:9)
    at TrackSocketIO.subEvents (/home/runner/mikesoft-p3-node-tracker-useful-for-P3-devving/node_modules/socket.io-client/build/cjs/socket.js:134:21)
    at TrackSocketIO.connect (/home/runner/mikesoft-p3-node-tracker-useful-for-P3-devving/node_modules/socket.io-client/build/cjs/socket.js:173:14)
    at TrackSocketIO.open (/home/runner/mikesoft-p3-node-tracker-useful-for-P3-devving/node_modules/socket.io-client/build/cjs/socket.js:184:21)
    at P3.start (/home/runner/mikesoft-p3-node-tracker-useful-for-P3-devving/node_modules/mikesoftp3/node-p3-internal.js:598:11)
    at Object.<anonymous> (/home/runner/mikesoft-p3-node-tracker-useful-for-P3-devving/index.js:13:8)
    at Module._compile (node:internal/modules/cjs/loader:1256:14)
    at Module._extensions..js (node:internal/modules/cjs/loader:1310:10)
    at Module.load (node:internal/modules/cjs/loader:1119:32)
    at Module._load (node:internal/modules/cjs/loader:960:12)

I wonder if this all is because it's Replit? Also please fix line 565, had to fix it myself

themirrazz commented 11 months ago

Ok, I'll take a look Edit: I don't see anything wrong with this, I'll try to see if I can look more in depth later