{"id":15696949,"url":"https://github.com/turnerj/networkedvegas2","last_synced_at":"2025-05-08T23:29:19.873Z","repository":{"id":83779895,"uuid":"594304709","full_name":"Turnerj/NetworkedVegas2","owner":"Turnerj","description":"Helps connect Rainbow Six Vegas 2 across the internet","archived":false,"fork":false,"pushed_at":"2023-01-29T07:47:53.000Z","size":12,"stargazers_count":10,"open_issues_count":0,"forks_count":3,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-09T02:37:07.183Z","etag":null,"topics":["game","rainbow-six-vegas-2","windows"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Turnerj.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-01-28T05:39:26.000Z","updated_at":"2025-02-11T23:58:10.000Z","dependencies_parsed_at":null,"dependency_job_id":"ddeef16e-240c-4520-9082-cc58b0104a69","html_url":"https://github.com/Turnerj/NetworkedVegas2","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Turnerj%2FNetworkedVegas2","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Turnerj%2FNetworkedVegas2/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Turnerj%2FNetworkedVegas2/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Turnerj%2FNetworkedVegas2/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Turnerj","download_url":"https://codeload.github.com/Turnerj/NetworkedVegas2/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253162858,"owners_count":21863990,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["game","rainbow-six-vegas-2","windows"],"created_at":"2024-10-03T19:10:32.729Z","updated_at":"2025-05-08T23:29:19.845Z","avatar_url":"https://github.com/Turnerj.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Networked Vegas 2\n\nA command line application to help connect Rainbow Six Vegas 2 across the internet.\n\n## Installation\n\n1. [Download the latest release](https://github.com/Turnerj/NetworkedVegas2/releases/latest) on the machine that is the game client.\n2. Open your preferred terminal and run the application, specifying the IP address of the game server.\n3. In the game itself, navigate to LAN where it will search for servers. Your game server should now appear.\n\n## Usage\n\n```\nNetworkedVegas2.exe \u003cipAddress\u003e [OPTIONS]\n```\n\n### Arguments\n\n`\u003cipAddress\u003e`\u003cbr/\u003e\nIP address of the server to proxy to.\n\n### Options\n\n`-p, --port`\u003cbr/\u003e\nPort to proxy. Defaults to 45000.\n\n`-h, --help`\u003cbr/\u003e\nPrints help information.\n\n\n## Frequently Asked Questions\n\n### Why would I need this?\n\nSome games, like Rainbow Six Vegas 2, don't have an option to directly connect to a server by specifying an IP address.\nInstead, they work by either broadcasting out to the local network looking for servers or servers broadcast their game to any clients listening.\n\nRainbow Six Vegas 2 does the former, where the game client sends a request to the broadcast IP (255.255.255.255).\nIf however the server isn't in the local network, it won't receive this.\nThis behaviour would be fine except if you want to play a LAN game over the internet.\n\nTools like [Tailscale](https://tailscale.com/) help a lot with the networking side of things but there were still issues getting the client's request to the server - that's where Networked Vegas 2 helps.\n\n### How does it work?\n\nWhen you run Networked Vegas 2, it will effectively proxy the initial handshake between client and server.\nThe broadcast request that was being troublesome is instead intercepted and forwarded to a specific IP address directly.\nThe server's response for that request is then forwarded back to the client.\n\nThis is where Networked Vegas 2 ends and the game's net code takes full control.\nEffectively, all we are doing is tricking the game to make it think the server is local when it isn't.\n\nI dive into a lot more detail about how this came about [in my blog post](https://turnerj.com/blog/proxying-rainbow-six-lan-for-wan-with-dotnet).\n\n### Does this work for other games?\n\nMaybe for other Unreal Engine 3 games? It depends a lot on the networking system for that specific game.\nI have only tested Rainbow Six Vegas 2 and don't really have any intention of supporting other games.\n\n### Do I need .NET 6 installed to use this?\n\nNope! It is a self-contained executable - it contains everything it needs to run.\nIt is also why the file size of `NetworkedVegas2.exe` is as large as it is.\n\n### It doesn't work!\n\nProbably the most important thing to know is that Networked Vegas 2 isn't a VPN or tunneling piece of software.\nIf the client machine and the server can't actually connect to each other via sending a PING back and forth, there is nothing Networked Vegas 2 can do to help.\n\nIf the client and server can otherwise reach each other on the network, and there are no firewall restrictions, it could be to do with different patch versions of the game.\n\nBeyond that, I can't really help you - debugging the nuances of individual setups gets complicated.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fturnerj%2Fnetworkedvegas2","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fturnerj%2Fnetworkedvegas2","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fturnerj%2Fnetworkedvegas2/lists"}