Post 1: General Tips & Tricks
Post 2: Advanced Tips & Tricks
Post 3: Asset Resources (Free & Paid)
Post 4: Resources
General Tips & Tricks
1. Use 2020.3.(latest) LTS. 2021 is still very much "in development" and it is slower and more prone to crashing.
2. In a new project, install and setup all Opsive products you are currently using, and their integrations. Once it is all working and you have verified it is working, change to the Demo scene most similar to your game, save and quit.
In explorer/file manager, go to your project folder and make a copy of the entire project (copy+paste). Rename the copy "Opsive Unmodified." Add this project to Unity Hub. When needed, open this second project and compare things like Nolan and Weapons to your own versions to see what's missing/wrong/different. The original is the one you will work on your own game in.
3. Do the basic tutorials in a new scene called "tutorials." Don't try to do them with your own stuff, do them exactly as they are in the video. This way, if you make a mistake, you know it is a mistake and not something with the model/animation or whatever other custom thing you are using.
4. Before you attempt anything, first do any relevant tutorial(s) then do your own. On the other hand, I wouldn't do all the tutorials. Instead, do one, then do the same thing for your own game scene using your custom models/animations/etc.
5. For your base scene, I would duplicate (ctrl+D or cmd+D) the Demo scene closest to your game (ie integration Demo for both ucc & uis). Make a new game object called "Discard" and move things you don't need into that object. Disable that object. Do this instead of deleting, in case you accidentally get rid of something that it turns out you needed, or want to refer back to later. Keep Nolan, just disable him (or duplicate him if you want to modify him), and enable him to use him as a test when needed. Rename the scene.
6. At some point, learn how to do scene layers and use that workflow. It saves a lot of time on repeated tasks for different scenes.
7. Your custom character will be missing special identitifier objects on the rig for "body" (punch+kick), bow, & magic items. You must add these manually.
8. Learn to copy and paste components & component values. Do this for anything you are making when there is a similar preexisting object, then change one value at a time to customize it.
9. The more frequently you test, the less things you have to check if something breaks.
10. Keep backups. I do both version control AND total copies of entire project file. You can delete older ones, but always keep a few. Do this immediately, learning how will be less time than fixing a horribly broken project (or redoing from scratch). This has saved my butt about once a month, if not more.
11. Do not import art directly into your project. Also be very careful about assets that prompt "this wants to change your project settings" which will mess up your project. Instead, have a project to import art into. Make sure it works, then take only the art you need, put it into a custom package, and import that custom package into your project. This will help avoid errors, bloat, and disorganization.
12. Bookmark the documentation. Go to each page and spend just enough time to understand what that page is about. It is useful to know what "tools" are available, even if you don't know how to use them yet. Some concepts you may have to do a little bit of outside learning about. For example, if you aren't a programmer, you may need to learn what an "Event System" or a "State System" is (conceptually).
13. If you want to be able to truly customize things, you will want to learn at least basic programming. I recommend this tutorial, it's fun because it's game oriented, and it teaches you *just* C# and not Unity, which makes it easier to focus on the programming.
Learn C# by building a simple RPG
14. Learn how to properly reference other objects in Unity. “Find” & “Get” cause performance loss.
15. Become a master of searching for answers
16. Use Google to search Opsive’s forums (or other forums) by using advanced commands.
Post 2: Advanced Tips & Tricks
Post 3: Asset Resources (Free & Paid)
Post 4: Resources
General Tips & Tricks
1. Use 2020.3.(latest) LTS. 2021 is still very much "in development" and it is slower and more prone to crashing.
2. In a new project, install and setup all Opsive products you are currently using, and their integrations. Once it is all working and you have verified it is working, change to the Demo scene most similar to your game, save and quit.
In explorer/file manager, go to your project folder and make a copy of the entire project (copy+paste). Rename the copy "Opsive Unmodified." Add this project to Unity Hub. When needed, open this second project and compare things like Nolan and Weapons to your own versions to see what's missing/wrong/different. The original is the one you will work on your own game in.
3. Do the basic tutorials in a new scene called "tutorials." Don't try to do them with your own stuff, do them exactly as they are in the video. This way, if you make a mistake, you know it is a mistake and not something with the model/animation or whatever other custom thing you are using.
4. Before you attempt anything, first do any relevant tutorial(s) then do your own. On the other hand, I wouldn't do all the tutorials. Instead, do one, then do the same thing for your own game scene using your custom models/animations/etc.
5. For your base scene, I would duplicate (ctrl+D or cmd+D) the Demo scene closest to your game (ie integration Demo for both ucc & uis). Make a new game object called "Discard" and move things you don't need into that object. Disable that object. Do this instead of deleting, in case you accidentally get rid of something that it turns out you needed, or want to refer back to later. Keep Nolan, just disable him (or duplicate him if you want to modify him), and enable him to use him as a test when needed. Rename the scene.
6. At some point, learn how to do scene layers and use that workflow. It saves a lot of time on repeated tasks for different scenes.
7. Your custom character will be missing special identitifier objects on the rig for "body" (punch+kick), bow, & magic items. You must add these manually.
8. Learn to copy and paste components & component values. Do this for anything you are making when there is a similar preexisting object, then change one value at a time to customize it.
9. The more frequently you test, the less things you have to check if something breaks.
10. Keep backups. I do both version control AND total copies of entire project file. You can delete older ones, but always keep a few. Do this immediately, learning how will be less time than fixing a horribly broken project (or redoing from scratch). This has saved my butt about once a month, if not more.
11. Do not import art directly into your project. Also be very careful about assets that prompt "this wants to change your project settings" which will mess up your project. Instead, have a project to import art into. Make sure it works, then take only the art you need, put it into a custom package, and import that custom package into your project. This will help avoid errors, bloat, and disorganization.
12. Bookmark the documentation. Go to each page and spend just enough time to understand what that page is about. It is useful to know what "tools" are available, even if you don't know how to use them yet. Some concepts you may have to do a little bit of outside learning about. For example, if you aren't a programmer, you may need to learn what an "Event System" or a "State System" is (conceptually).
13. If you want to be able to truly customize things, you will want to learn at least basic programming. I recommend this tutorial, it's fun because it's game oriented, and it teaches you *just* C# and not Unity, which makes it easier to focus on the programming.
Learn C# by building a simple RPG
14. Learn how to properly reference other objects in Unity. “Find” & “Get” cause performance loss.
15. Become a master of searching for answers
16. Use Google to search Opsive’s forums (or other forums) by using advanced commands.
- In search bar put “site: www.opsive.com/forum” then your search terms.
- Quotes: “This word/phrase is mandatory”
- Order Priority: Unity3d wood tutorials > wood tutorials Unity3d (Latter can result in more real-world woodworking type information)
- Specificity of common words: Unity3d > Unity, Opsive Character Controller > Character Controller
- Elimination of common & unneeded words: “In unity3d how to use gun scope camera overlay.” < “Unity3D tutorial scope camera”
- Unity has two major forms of documentation that are very different. "Manual" is much more conceptual (and wordy). "Script API" is the barebones list of what a programmer needs to know about a Type or Function. Add one or the other to your searches in Google to go to the desired one.
- Don't use Unity's search bar in Manual/Script API, it's super slow.
Last edited: