The Accord may think their Shared Intelligence Network is unique and impenetrable, but not everyone agrees with their restricted access and constant surveillance. That's why PIN, the Pirate Intelligence Network, has been created.
Fight the Accord - Kill the Chosen
Demo.mp4
Note: If you want to play around with the configuration, see the Development section below
PIN only runs the Matrix and game server (i.e. the UDP protocol). Everything the client does over HTTP, from the login to the character list and the zone settings, is served by RIN.WebAPI. You need both PIN and RIN.WebAPI!
The easiest way to get the whole stack running is Calldown, which starts the database, RIN, PIN and the client with a single aspire run. If you'd rather set it up by hand:
- Install Firefall via Steam (paste
steam://install/227700into address bar of web browser) - Set up and start RIN.WebAPI and RIN.InternalAPI as described in the RIN.WebAPI README
- Edit the
firefall.inilocated insteamapps\common\Firefall - Add content from below
- Download the latest PIN release
- Make a backup copy of the original
FirefallClient.exeinFirefall\system\bin - Replace the
FirefallClient.exewith the patchedFirefallClient.exefrom the PIN release - Make sure the .NET 9 Runtime is installed
- Start the GameServer and the MatrixServer, e.g. with
Start.cmd - Start Firefall
- Login with your RIN account
- Load into the game by pressing the "Enter World" button
[Config]
OperatorHost = "https://localhost:5001"
[UI]
PlayIntroMovie = false- Loading into any zone
- Basic character movement, including jetpacks and gliders
- Switch between battleframes with preconfigured loadouts
- Customize character appearance in NewYou (RIN.WebAPI)
- Call down vehicles and some deployables
- There is no combat, projectile or damage simulation
- Most of the UI doesn't work properly
- Most abilities are not fully working
- Vehicles only have physics if a player is driving it (client-side)
- No AI
- No Encounters
- No PvP
- Install the .NET 9 SDK
- Recursive clone the repository
git clone --recurse-submodules https://github.com/themeldingwars/PIN.git - Build the solution
- Check that
StaticDBPath,AssetDBPathandMapsPathinUdpHosts\GameServer\appsettings.jsonpoint to your Firefall install. To keep your paths out of git, put the overrides into anappsettings.Local.jsonnext to it instead - Set up and start RIN.WebAPI and RIN.InternalAPI, see the RIN.WebAPI README
- Start multiple targets at once
- Visual Studio: Create a
Multiple Startup Projectstarget that start GameServer and MatrixServer - Rider: Create a
Compoundtarget that starts GameServer and MatrixServer
- Visual Studio: Create a
- Edit the
firefall.inilocated insteamapps\common\Firefall - Add content from above
- Start Firefall
Calldown works for development as well, it builds and runs PIN and RIN.WebAPI from the checkouts next to it.
The web tier lives in RIN.WebAPI, PIN doesn't serve any HTTP endpoints for the client.
The GameServer fetches the character data from RIN.InternalAPI over gRPC (GrpcChannelAddress, http://localhost:5201 by default). If it can't be reached, the GameServer falls back to hardcoded character data.
| Host | Port |
|---|---|
| RIN.WebAPI | 5000 / 5001 (TCP) |
| RIN.InternalAPI | 5201 (TCP) |
| Host | UDP |
|---|---|
| Matrix Server | 25000 |
| Game Server | 25001 |