Note: For FAQs concerning UFPS add-ons, see the DOCS page.


What is UFPS?
  • A popular, battle tested base platform for making an FPS with the Unity game engine
  • Written in C# with a small set of core FPS features and many optional ones
  • Generic – designed as a base platform for any kind of first person game
  • Easy to strip down to disable the features you don’t need
  • A batch of demo art to get you started prototyping

What is it NOT?

  • It is not a full game. Therefore, scripting (and probably some extra art) will be required if you wish to produce a full game with it.
  • It is not a visual scripting gameplay sandbox. However, several visual scripting systems are compatible with UFPS. See our store for more info.
  • It is not geared towards any particular sub-genre (military, sci-fi, fantasy et cetera). As a result, it is possible to make any kind of FPS with UFPS with a minimum amount of house cleaning.
Who makes it?

UFPS 1.x was created by VisionPunk, a small team of indie devs with many years previous experience shipping AAA action games.

UFPS 2.x is in development and is created by Opsive with help from VisionPunk.


In January of 2016 UFPS was acquired by Opsive. VisionPunk, the former publisher, is switching to focus on games and sold UFPS to ensure it would still be developed and supported. The future looks extremely bright for UFPS. The acquisition press release has more details as well as a link to a Q & A.


Unity versions
  • Unity 5.x UFPS requires atleast Unity 5.2.3.
  • Unity 4.x (NO LONGER SUPPORTED) The last UFPS version to support Unity 4 was v1.5.2.
  • Unity 3.x (NO LONGER SUPPORTED) The last UFPS version to support Unity 3 was v1.4.4.

If you require a backversion of UFPS for backup purposes, please contact support with your invoice number.

Target Platforms

Currently supported target platforms

  • PC and Mac Standalone
  • iOS – Requires the “Mobile Add-on for UFPS”
  • Android – Requires the “Mobile Add-on for UFPS”
PLEASE NOTE: No other platforms are guaranteed to work, nor supported, and should UFPS work on them it’s a happy accident.

Upcoming target platforms

  • VR / Oculus Rift We are actively researching VR and hoping to provide support for this exciting technology soon. While some devs have already released Rift games with UFPS, the current edition was designed for desktop play and there are not yet any VR-exclusive features in the code (meaning: heavy modding is required at the moment). Stay tuned!
  • Windows Store apps Using UFPS for Windows Store Apps will require building with Unity’s IL2CPP backend. We’re currently waiting for Unity to finalize their “IL2CPP for Windows 10” support and will work with them to make sure UFPS eventually runs well on this build target. In the meantime, we recommend following this thread on the subject, aswell as the releasenotes at the bottom of the Unity Beta releases page. Fixes to IL2CPP are always released in a Unity Beta before they become universally available. Sorry for the inconvenience and hope to have this working soon.


How to update to the latest version?
  1. Always begin by backing up your existing project.
  2. Delete your UFPS folder.
  3. Check out the latest Release Notes in case it has important update notes.
  4. Install the new version:
  • If you purchased the asset from Unity Asset Store: 1. Start Unity. You may want to create a clean project for the initial install. 2. Open Asset Store by clicking “Window -> Asset Store” at the top main menu. 3. At the bottom right of the main store screen, click “My Stuff -> See complete list”. 4. In the screen that opens, locate UFPS and click the “Update” button.
  • If you purchased the asset from opsive.com/assets/UFPS: When you purchased the asset, you received an email from Opsive Support, titled “Your UFPS : UFPS File Download”. Locate this email and click the link to download the latest version. It is a good idea to make a backup of this link for making future upgrades.

NOTE: We previously used a service called bytecommerce, which has seized operation. If you ordered using bytecommerce please contact us to upgrade and we will move you to the new system.

IMPORTANT: Never update UFPS without backing up your project and deleting the previous UFPS folder. Simply overwriting the previous folder will not work and could break your project. Modifications to UFPS should ideally be made using script inheritance in a folder outside the UFPS folder. For more info, see the following sections.
I have modified the source files. Will updating overwrite my changes?

YES! You changes will be overwritten. Always backup and delete your UFPS folder before updating. It is generally a very good idea to also carefully read the Release Notes.

How to mod the system in such a way that it can be updated later?
  • If you’re in a hurry and just want to play around with minor tweaks you might want to use the same comment tag, for example “// TEST” wherever you make a change. Backup your file before upgrading and match the modified spots later by doing a “Find All” in your backed up file.
  • If you are planning heavy modifications to UFPS classes, it is best to create your own scripts derived from (inheriting) the existing ones (as opposed to editing the scripts directly). Many methods and parameters in the UFPS classes are protected instead of private in order to facilitate this. For more info on inheriting classes, see this tutorial on inheritance in C#.
  • Preferably keep your inherited classes in a folder outside the UFPS folder. This way, your own changes will always be left untouched and the underlying base type will be upgraded separately – i.e. you won’t have to manually restore your changes on a line-per-line level. If the new asset version breaks your code, the error messages should be more clear and it will be a lot easier to repair things.
  • If you’re lucky both the upgrade and your modifiations are coded in such a way that there will be a minimum of havoc.
  • Please note that UFPS is still very much in construction and is frequently overhauled so it may be a while until updates run smoothly.
What is the release date of your next asset / update?

We always reply “When it’s done” to this question 🙂 because we prioritize quality over time-to-market, which means hard work, many iterations and never promising release dates.  But UFPS is a living platform for sure! We usually manage 3-4 big new versions per year, not counting add-on assets. Here is a list of  features added since the initial version.

What features will be added in the next update?

The latest info about upcoming releases can be found here.


What is the license? Can I use your asset for commercial purposes?

Yes! That’s the point 🙂 … Short version

  • You can use the asset in a commercial game or other type of interactive media.
  • Obviously it is forbidden to lend, share, license or resell the asset separately.
  • The asset must be included (packed) in your game in such a way that your own end users would have a reasonably hard time extracting its data.
  • See below for the full license.

Long version For assets purchased from Unity Asset Store: ASSET STORE TERMS OF SERVICE AND EULA For assets purchased from opsive.com: OPSIVE LICENSING AGREEMENT

Why is the asset so "expensive"?
Unity’s recommended price range for an advanced scripting asset is $100 – $1000. UFPS is currently priced at $95 with nearly ten thousand hours of hard work, testing and bugfixes under the hood. That’s up to 10 000 hours that you can shave right off your development budget. Since introduced in 2012 UFPS has been updated quarterly on average, with hundreds of features added. This has generated insane value for early adopters. In fact, we sometimes have people asking us why UFPS is such a steal, and why we are selling ourselves short 🙂 .