# Your Game Instance

In case you don't have your own `Game Instance` blueprint - you can just use my `BP_GameInstance` asset directly and skip this chapter.&#x20;

Otherwise proceed along with simple Copy-Paste routine shown below.

***

First of, reselect project's `Game Instance` to yours:

<div align="left"><figure><img src="https://3202416498-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FwlDZAQc635Buuq6HL7c0%2Fuploads%2FZxsrMkLJBycn6dQ87VBp%2Fgame%20instance%20reselect%20yours.png?alt=media&#x26;token=0d94ff82-ea77-408b-b314-88073928d2d7" alt="" width="563"><figcaption></figcaption></figure></div>

Now find `BP_GameInstance` asset in content browser in Blueprints folder and open it.&#x20;

Copy every Variable there and paste it in your own `Game Instance` blueprint:

<div align="left"><figure><img src="https://3202416498-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FwlDZAQc635Buuq6HL7c0%2Fuploads%2FEftn7fh9mtQ6pfAnTHgX%2FGI%20variables.png?alt=media&#x26;token=58c591ef-9265-4a15-bf56-a664fd81740c" alt="" width="349"><figcaption></figcaption></figure></div>

Select all nodes and copy-paste to **your Blueprint** as well:&#x20;

<figure><img src="https://3202416498-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FwlDZAQc635Buuq6HL7c0%2Fuploads%2F4eG6XeDtq0hxUgXuwhGB%2FBP%20GI%20selected%20nodes.png?alt=media&#x26;token=04246a98-cbf0-46d4-b20a-bd56db0c9053" alt=""><figcaption></figcaption></figure>

Obviously connect to your <mark style="color:red;">**`Event Init`**</mark> if it is already present in your graph.

***

<mark style="color:yellow;">Now we are getting to slightly complicated and important stuff.</mark>&#x20;

Navigate to *Blueprints* folder, and open `BPFL_GlobalFunctions`, unfold last '`Misc'` category. There should be function named `Get GameInstance`. Duplicate it(Ctrl+D), and rename it to something so it would resemble your own game instance:

<div align="center"><figure><img src="https://3202416498-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FwlDZAQc635Buuq6HL7c0%2Fuploads%2FDqiQJbqmguiVVhPav2ZI%2FBPFL%20change%20get%20your%20game%20instance.png?alt=media&#x26;token=1e51fe99-7aa2-48f8-88c1-150fa7d2a432" alt="" width="563"><figcaption></figcaption></figure></div>

Replace all things related to the old `GameInstance` with yours as shown on picture above.

Then select original `Get GameInstance` function, and change (*temporarily*) it's return type from `BP_GameInstance` to normal `GameInstance`. Click Compile, so it will just highlight all places where you should make fixes:

<div align="center"><figure><img src="https://3202416498-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FwlDZAQc635Buuq6HL7c0%2Fuploads%2FeuSyKQjxaPAZFVkKtxxP%2FGet%20GameInstance%20return%20type%20errors.png?alt=media&#x26;token=30ce1f27-a4d3-411e-b2c1-79766ea243f3" alt="" width="563"><figcaption></figcaption></figure></div>

by using those <mark style="color:red;">errors</mark> as links, you can click and navigate directly to the places where you should make replacements now. With the function that you recently created, start making replacements <mark style="color:red;">with matching variables(!)</mark> This is the most important part to not mess up, you should get results like this:

<figure><img src="https://3202416498-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FwlDZAQc635Buuq6HL7c0%2Fuploads%2FKrhHsGpgJbJk8GzIWc9V%2Freplacement%20for%20Get%20GameInstance.png?alt=media&#x26;token=e2e1f151-1424-4eb2-a04e-e06307ae95eb" alt="" width="563"><figcaption></figcaption></figure>

After all those replacements, try <mark style="color:green;">Compile</mark> this blueprint and get it green :white\_check\_mark:.

Then recover `Get GameInstance` function return type back to **BP\_GameInstance**, yes it won't be used, but just better put things back to where they were.

***

Now you should get your game running with <mark style="color:green;">**your**</mark> `GameInstance` and Menu performing correctly with <mark style="color:red;">SaveGame</mark> features working as well.

{% hint style="info" %}
Try playing with Menu Music sliders, some graphics settings, and then relaunch the game and get assured that SaveGame functionality is actually working as intended.
{% endhint %}
