Telepipe: a new PSOGC proxy for Dolphin

1
Telepipe is a new proxy for PSOGC built to simplify connecting to PSO GameCube servers in the Dolphin GameCube emulator.








 








Telepipe on GitHub








Telepipe Releases and Downloads








 








Windows is not capable of bridging WiFi adapters to the virtual TAP adapter that is used by Dolphin for BBA emulation. To get around this, you can specify static IPs for both the virtual TAP adapter on host side, and inside Phantasy Star Online's ethernet configuration. This enables the GameCube guest to connect to the host computer as if it were inside a LAN. Then, Telepipe acts as a server for PSO, handling redirects itself.








 








Telepipe is written in Rust, a new systems programming language by Mozilla that offers zero-cost memory and concurrency safety abstractions, yielding the performance of languages like C++ with language features seen in Haskell, OCaml, and others, and a familiar, easy-to-understand syntax.








 








To set up a connection for Dolphin, configure the BroadBand Adapter and OpenVPN TAP Adapter as outlined in the Dolphin Wiki, but do not bridge the connection to your Internet connection.








 








Right click the TAP Adapter in Network Connections:








 








[img]<fileStore.core_Attachment>/monthly_2016_07/Capture.PNG.aae8b24cfc4fc1e0c3dcbb5835db1321.PNG[/img]






 








Open the Properties for the IPv4 item:








 








[img]<fileStore.core_Attachment>/monthly_2016_07/Capture.PNG.d5c07258ad5f33d7a8130475d5c02f74.PNG[/img]






 








Set the IP for your Host statically. This is the IP that the Guest (PSO) will refer to. (P.S. if anyone knows what the gateway should be set to here, let me know -- sometimes this breaks DNS queries on the host computer)








 








[img]<fileStore.core_Attachment>/monthly_2016_07/Capture.PNG.46b64f25f035cd214d6d23d8895d19aa.PNG[/img]






 








Now, start PSO (either E1&2 or E3) inside Dolphin and navigate to the Network Option/Provider Option menu in Options.








 








[img]<fileStore.core_Attachment>/monthly_2016_07/Capture.PNG.af9d897d82ada88a4530a7252c73b31c.PNG[/img]






 








Choose to Manually set an IP address.








 








[img]<fileStore.core_Attachment>/monthly_2016_07/Capture.PNG.bf74ed6d88956c70d4062b346dad69bc.PNG[/img]






 








Set a unique IP for the IP Address within the same subnet as the address you chose for the Host. Set the Gateway, Primary and Secondary DNS to the Host.








 








[img]<fileStore.core_Attachment>/monthly_2016_07/Capture.PNG.d3eed59fbbe68cb8e945b3aca453a4d0.PNG[/img]






 








You do not need a HTTP Proxy set and, indeed, it will not work unless the Proxy is also running on the Host. Save the configuration and return to the main menu.








 








Open telepipe.toml and modify the configuration to match your needs:








 








[img]<fileStore.core_Attachment>/monthly_2016_07/Capture.PNG.da6e4702a504e2cda1d162418dd9c1d3.PNG[/img]






 








You probably don't need to change anything if you play on schtserv and you are using the same IPs specified in this tutorial.








 








Next is a little bit confusing. Dolphin needs to initialize the connection on the TAP adapter before you can run telepipe.exe. Go Online and wait until the Connecting to DNS Server dialog comes up, then start telepipe.exe. PSO should connect and be playable from here. If you reconnect the game while using the same Dolphin process, you should not need to wait until this screen to connect anymore, as the adapter has already been initialized.








 








Congratulations! You can now play online over Wi-Fi in Dolphin. (Note: the message logging seen below is filtered out unless you run with the environment variable RUST_LOG set to some filter. See the env_logger crate documentation for details.)








 








<a class="ipsAttachLink ipsAttachLink_image" href="<fileStore.core_Attachment>/monthly_2016_07/dolphin.png.24fdbce8c26c7d18c450be0bfecdb1a3.png" data-fileid="550">[img]<fileStore.core_Attachment>/monthly_2016_07/dolphin.thumb.png.ef6ed2599a83ee9e34188b92046b3c72.png[/img]</a>








 








Known Issues








 








There is a race condition during redirects in which the server connection will connect, but the client will not reconnect to the proxy correctly. I seem to be triggering a bug in PSO's Ethernet stack that soft locks the game. If this happens, to avoid data corruption, click Emulation -> Reset so that the game will shut down gracefully and restore your saves.








 








The feature set is pretty bare. I plan on introducing new features like character save backups, converting to and from Blue Burst save formats, and other filtering functionality, but this will take some time to implement.
Attachments
dolphin.png dolphin.png Viewed 4973 times 1.98 MiB
Capture.PNG Capture.PNG Viewed 4973 times 43.52 KiB
Capture.PNG Capture.PNG Viewed 4973 times 277.88 KiB
Capture.PNG Capture.PNG Viewed 4973 times 274.7 KiB
Capture.PNG Capture.PNG Viewed 4973 times 470.89 KiB
Capture.PNG Capture.PNG Viewed 4973 times 15.4 KiB
Capture.PNG Capture.PNG Viewed 4973 times 14.84 KiB
Capture.PNG Capture.PNG Viewed 4973 times 20.7 KiB

Telepipe: a new PSOGC proxy for Dolphin

3
Ok so do we need to connect to this from now on or can we keep using the old bridged method? Because I can't connect from today, and I tried setting up the telepipe but it won't work. I think I'm doing something wrong since I'm not great with these kinds of things haha. So I followed all the steps, set the I.P address to the same as in this tutorial (I don't know if I'm supposed to do that? Or set it to my own I.P address? I only tried it with the address in the guide above), used all the same numbers. Then I set it up with the same addresses in Dolphin, saved it and went online. When 'connecting to DNS server' came up I opened telepipe but it just came up as a blank window, no text, and it didnt connect.








 








Also it won't open telepipe.toml, I don't know how to open that so I don't know if that is why I'm having issues.








 








Any advice?

Telepipe: a new PSOGC proxy for Dolphin

4

4 hours ago, ingilybob said:




Ok so do we need to connect to this from now on or can we keep using the old bridged method? Because I can't connect from today, and I tried setting up the telepipe but it won't work. I think I'm doing something wrong since I'm not great with these kinds of things haha. So I followed all the steps, set the I.P address to the same as in this tutorial (I don't know if I'm supposed to do that? Or set it to my own I.P address? I only tried it with the address in the guide above), used all the same numbers. Then I set it up with the same addresses in Dolphin, saved it and went online. When 'connecting to DNS server' came up I opened telepipe but it just came up as a blank window, no text, and it didnt connect.




 




Also it won't open telepipe.toml, I don't know how to open that so I don't know if that is why I'm having issues.




 




Any advice?






Never mind, I sorted it out haha

Telepipe: a new PSOGC proxy for Dolphin

7
Hi, im on Windows 7 and telepipe will not open just a box quickly flashing up 1 time and gone.


I can't get the VPN Bridge thing to work either X_X


i soooo wanna play online with dolphin gc PSO.



edit: added 2 screenshots.



and i have a question about manual ip window.


The first row is my IPv4 adresse, second row subnetmask but what comes into the other rows?


are they all for defaulot gateway ip?








 




[img]<fileStore.core_Attachment>/monthly_2016_09/pso1.jpg.5198badb54df276663ffa6fd3a0cdff0.jpg[/img]

[img]<fileStore.core_Attachment>/monthly_2016_09/pso3.jpg.175f7e42b301f271fe213bb3ca26e70a.jpg[/img]
Last edited by Kilano on Mon Sep 19, 2016 7:52 pm, edited 1 time in total.
Attachments
pso3.jpg pso3.jpg Viewed 4973 times 252.49 KiB
pso1.jpg pso1.jpg Viewed 4973 times 326.15 KiB

Telepipe: a new PSOGC proxy for Dolphin

10

Quote




Next is a little bit confusing. Dolphin needs to initialize the connection on the TAP adapter before you can run telepipe.exe. Go Online and wait until the Connecting to DNS Server dialog comes up, then start telepipe.exe. PSO should connect and be playable from here. If you reconnect the game while using the same Dolphin process, you should not need to wait until this screen to connect anymore, as the adapter has already been initialized.






 








If the console window closes immediately, it's because the server could not be initialized due to the virtual adapter being disconnected. Please read the bolded text in this quote from the guide above.








 








That is the key requirement to having the proxy server start. The console window will stay open if it is able to open the device. Currently there is no way to tell Dolphin to initialize the device on startup rather than just before it is used.