# Ongoing C++ Gameplay Example Series: Making a Survival Game

**URL:** <https://forums.unrealengine.com/t/ongoing-c-gameplay-example-series-making-a-survival-game/24878>\
**Category:** Announcements\
**Tags:** unreal-engine\
**Created:** [March 20, 2015, 3:38pm UTC](https://forums.unrealengine.com/t/ongoing-c-gameplay-example-series-making-a-survival-game/24878 "2015-03-20T15:38:03Z")\
**Posts on this page:** 20\
**Page:** 7

<div class="post-metadata">

**Author:** ![Druha](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Druha](https://forums.unrealengine.com/u/Druha)\
**Post date:** [June 3, 2015, 11:26am UTC](https://forums.unrealengine.com/t/ongoing-c-gameplay-example-series-making-a-survival-game/24878/124 "2015-06-03T11:26:06Z")

</div>

> [@Kafu;303808](#):
>
> Could you elaborate the difference between the declaration [FONT=Courier New]UFUNCTION(Reliable, NetMulticast) and [FONT=Courier New]UFUNCTION(reliable, client)?

NetMulticast function is called on every client that connected to server.  
Client function is called only on the single client, which is actual owner of the actor

---

<div class="post-metadata">

**Author:** ![Kafumanto](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/kafumanto/32/1194651_2.png) [@Kafumanto](https://forums.unrealengine.com/u/Kafumanto)\
**Post date:** [June 3, 2015, 11:51am UTC](https://forums.unrealengine.com/t/ongoing-c-gameplay-example-series-making-a-survival-game/24878/125 "2015-06-03T11:51:57Z")

</div>

> [@Druha;304016](#):
>
> NetMulticast function is called on every client that connected to server.  
> Client function is called only on the single client, which is actual owner of the actor

Thanks, it makes sense!

---

<div class="post-metadata">

**Author:** ![anonymous\_user\_0d08e9d6](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@anonymous\_user\_0d08e9d6](https://forums.unrealengine.com/u/anonymous_user_0d08e9d6)\
**Post date:** [June 11, 2015, 12:03am UTC](https://forums.unrealengine.com/t/ongoing-c-gameplay-example-series-making-a-survival-game/24878/126 "2015-06-11T00:03:41Z")

</div>

Hey I was wondering if the final version of this project will be using 4.8 ?

---

<div class="post-metadata">

**Author:** ![Tom\_Looman](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/tom_looman/32/1215549_2.png) [@Tom\_Looman](https://forums.unrealengine.com/u/Tom_Looman)\
**Post date:** [June 11, 2015, 12:22am UTC](https://forums.unrealengine.com/t/ongoing-c-gameplay-example-series-making-a-survival-game/24878/127 "2015-06-11T00:22:16Z")

</div>

> [@;308355](#):
>
> Hey I was wondering if the final version of this project will be using 4.8 ?

Yes, I’ll be upgrading to 4.8 soon.

---

<div class="post-metadata">

**Author:** ![anonymous\_user\_0d08e9d6](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@anonymous\_user\_0d08e9d6](https://forums.unrealengine.com/u/anonymous_user_0d08e9d6)\
**Post date:** [June 11, 2015, 2:23am UTC](https://forums.unrealengine.com/t/ongoing-c-gameplay-example-series-making-a-survival-game/24878/128 "2015-06-11T02:23:29Z")

</div>

! Thank you for all your hard work ! It’s always a treat to check the github page to see whats new.

---

<div class="post-metadata">

**Author:** ![Tom\_Looman](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/tom_looman/32/1215549_2.png) [@Tom\_Looman](https://forums.unrealengine.com/u/Tom_Looman)\
**Post date:** [June 11, 2015, 6:19am UTC](https://forums.unrealengine.com/t/ongoing-c-gameplay-example-series-making-a-survival-game/24878/129 "2015-06-11T06:19:19Z")

</div>

Just submitted a bunch of bug fixes to the github source 🙂

---

<div class="post-metadata">

**Author:** ![GiraffePencils](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@GiraffePencils](https://forums.unrealengine.com/u/GiraffePencils)\
**Post date:** [June 11, 2015, 8:15am UTC](https://forums.unrealengine.com/t/ongoing-c-gameplay-example-series-making-a-survival-game/24878/130 "2015-06-11T08:15:23Z")

</div>

This is a really great resource, so many practical examples of features in a simple and well documented setting.

Thanks for this 🙂

---

<div class="post-metadata">

**Author:** ![anonymous\_user\_2a9737f2](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@anonymous\_user\_2a9737f2](https://forums.unrealengine.com/u/anonymous_user_2a9737f2)\
**Post date:** [June 18, 2015, 9:38pm UTC](https://forums.unrealengine.com/t/ongoing-c-gameplay-example-series-making-a-survival-game/24878/131 "2015-06-18T21:38:10Z")

</div>

Hi ! Thank you very much for sharing your job!

Can you explain please, how you made the post process material work? I don’t seem to be able to do it ☹ I set the post process material, an instance that i associate with a post process volume (which is “unbound”) and… nothing. Under the code, anytime I focus on an usable element I call the method for the mesh to perform post process (and the execution reaches the line)… has anyone been able to do it as well?

Thank you!

---

<div class="post-metadata">

**Author:** ![Tom\_Looman](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/tom_looman/32/1215549_2.png) [@Tom\_Looman](https://forums.unrealengine.com/u/Tom_Looman)\
**Post date:** [June 19, 2015, 2:41pm UTC](https://forums.unrealengine.com/t/ongoing-c-gameplay-example-series-making-a-survival-game/24878/132 "2015-06-19T14:41:34Z")

</div>

> [@eshel;314235](#):
>
> Hi ! Thank you very much for sharing your job!
> 
> Can you explain please, how you made the post process material work? I don’t seem to be able to do it ☹ I set the post process material, an instance that i associate with a post process volume (which is “unbound”) and… nothing. Under the code, anytime I focus on an usable element I call the method for the mesh to perform post process (and the execution reaches the line)… has anyone been able to do it as well?
> 
> Thank you!

Do the meshes render into the custom depth buffer? Perhaps you can try reproducing the steps by creating a new level and doing the same thing (I don’t see any obvious step you missed in your description) and using the weapon pick blueprint.

A tip for your project: drop a mesh into your level and check “Custom Depth” property on the staticmeshcomponent (and simulate/run the game) and see if the outline is drawn. If it’s not, the problem if with your post process setup, otherwise it’s with the item you’re trying to focus.

-

---

<div class="post-metadata">

**Author:** ![qdelpeche](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/qdelpeche/32/776509_2.png) [@qdelpeche](https://forums.unrealengine.com/u/qdelpeche)\
**Post date:** [June 21, 2015, 6:51am UTC](https://forums.unrealengine.com/t/ongoing-c-gameplay-example-series-making-a-survival-game/24878/133 "2015-06-21T06:51:00Z")

</div>

@: Quick question … not sure if I missed it … but goes.

When you created your base project, did you use a blank C++ template or the pre-existing FPS or TPS templates?

Basically I wanted to go through your code and add it step-by-step to a test project from scratch so I can get a more in-depth feel for UE4 C++. Thanks.

---

<div class="post-metadata">

**Author:** ![Tom\_Looman](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/tom_looman/32/1215549_2.png) [@Tom\_Looman](https://forums.unrealengine.com/u/Tom_Looman)\
**Post date:** [June 21, 2015, 12:50pm UTC](https://forums.unrealengine.com/t/ongoing-c-gameplay-example-series-making-a-survival-game/24878/134 "2015-06-21T12:50:18Z")

</div>

> [@qdelpeche;315582](#):
>
> @: Quick question … not sure if I missed it … but goes.
> 
> When you created your base project, did you use a blank C++ template or the pre-existing FPS or TPS templates?
> 
> Basically I wanted to go through your code and add it step-by-step to a test project from scratch so I can get a more in-depth feel for UE4 C++. Thanks.

I used a blank C++ project to get started. Good luck!

One tip I might be able to give you is to use the branches on GitHub, so you can see a growth of code instead of getting it all in your face at once. Just depends on how you like to work I suppose 🙂

- 

(eg. [https://github.com//EpicSurvivalGameSeries/tree/Section-1](https://github.com//EpicSurvivalGameSeries/tree/Section-1))

---

<div class="post-metadata">

**Author:** ![qdelpeche](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/qdelpeche/32/776509_2.png) [@qdelpeche](https://forums.unrealengine.com/u/qdelpeche)\
**Post date:** [June 22, 2015, 4:13am UTC](https://forums.unrealengine.com/t/ongoing-c-gameplay-example-series-making-a-survival-game/24878/135 "2015-06-22T04:13:54Z")

</div>

> [@;315696](#):
>
> I used a blank C++ project to get started. Good luck!
> 
> One tip I might be able to give you is to use the branches on GitHub, so you can see a growth of code instead of getting it all in your face at once. Just depends on how you like to work I suppose 🙂
> 
> - 
> 
> (eg. [https://github.com//EpicSurvivalGameSeries/tree/Section-1](https://github.com//EpicSurvivalGameSeries/tree/Section-1))

Thanks … yeah basically I plan on starting a blank project then going through section one by reading your documentation and looking at the branch for section one. Once I am happy and comfortable I will then rinse and repeat with the other sections in sequence.

I am going to do it this way to understand UE4 C++ more clearly and see how you put the entire solution together, this will allow me to change it to my needs at the end of all the sections as I will understand the code better.

Thanks again for the tutorial … nice job. 8-}

---

<div class="post-metadata">

**Author:** ![zeOrb](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@zeOrb](https://forums.unrealengine.com/u/zeOrb)\
**Post date:** [June 22, 2015, 11:16am UTC](https://forums.unrealengine.com/t/ongoing-c-gameplay-example-series-making-a-survival-game/24878/136 "2015-06-22T11:16:12Z")

</div>

> [@qdelpeche;316085](#):
>
> Thanks … yeah basically I plan on starting a blank project then going through section one by reading your documentation and looking at the branch for section one. Once I am happy and comfortable I will then rinse and repeat with the other sections in sequence.
> 
> I am going to do it this way to understand UE4 C++ more clearly and see how you put the entire solution together, this will allow me to change it to my needs at the end of all the sections as I will understand the code better.
> 
> Thanks again for the tutorial … nice job. 8-}

How about little competition? 😛  
I’m doing the same stuff to restore my c++ skills(I’ve forgotten almost everything during art and supergrid work D: ) and learn networking(Networking bugs are the most fun, can’t ignore that!)  
Something like “One multiplayer game a month” 😃

---

<div class="post-metadata">

**Author:** ![Tom\_Looman](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/tom_looman/32/1215549_2.png) [@Tom\_Looman](https://forums.unrealengine.com/u/Tom_Looman)\
**Post date:** [June 24, 2015, 3:45am UTC](https://forums.unrealengine.com/t/ongoing-c-gameplay-example-series-making-a-survival-game/24878/137 "2015-06-24T03:45:56Z")

</div>

I just updated the player character in Section 6 with the new 4.8 character. You can find the latest source on Github: [https://github.com//EpicSurvivalGameSeries](https://github.com//EpicSurvivalGameSeries)

(Section 6 forums: [Announcing Section 6 of Survival Game - Adding some polish - Announcements - Epic Developer Community Forums](https://forums.unrealengine.com/showthread.php?72313-Announcing-Section-6-of-Survival-Game-Adding-some-polish&p=317508#post317508) )

 ![7b5c35ddbdba277819ae769d2c8ad1e986614d21.jpeg](https://d3kjluh73b9h9o.cloudfront.net/original/4X/7/b/5/7b5c35ddbdba277819ae769d2c8ad1e986614d21.jpeg)

---

<div class="post-metadata">

**Author:** ![qdelpeche](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/qdelpeche/32/776509_2.png) [@qdelpeche](https://forums.unrealengine.com/u/qdelpeche)\
**Post date:** [June 24, 2015, 3:56am UTC](https://forums.unrealengine.com/t/ongoing-c-gameplay-example-series-making-a-survival-game/24878/138 "2015-06-24T03:56:37Z")

</div>

> [@zeOrb;316272](#):
>
> How about little competition? 😛
> 
> I’m doing the same stuff to restore my c++ skills(I’ve forgotten almost everything during art and supergrid work D: ) and learn networking(Networking bugs are the most fun, can’t ignore that!)  
> Something like “One multiplayer game a month” 😃

Ummm … errrr … you’ll kick my butt in this competition man. 8-}

I guess we need to define what is considered a game … cos like I get carried away and try to make everything perfect.

---

<div class="post-metadata">

**Author:** ![Tom\_Looman](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/tom_looman/32/1215549_2.png) [@Tom\_Looman](https://forums.unrealengine.com/u/Tom_Looman)\
**Post date:** [June 26, 2015, 11:43am UTC](https://forums.unrealengine.com/t/ongoing-c-gameplay-example-series-making-a-survival-game/24878/140 "2015-06-26T11:43:51Z")

</div>

**UPDATE: [Section 6 docs now available!](https://wiki.unrealengine.com/Survival_Sample_Game:_Section_6)**

This section concludes the series, I hope you guys learned a lot of new concepts to use for your own games!

![5e68a218fd55d38aa1ae7815fd4d568cec3c1719.jpeg](https://d1ap1mz92jnks1.cloudfront.net/images/transparent.png)

![4e15090d6f66e6ff0510bd95fed2b15b7537bb98.jpeg](https://d1ap1mz92jnks1.cloudfront.net/images/transparent.png)

---

<div class="post-metadata">

**Author:** ![GiraffePencils](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@GiraffePencils](https://forums.unrealengine.com/u/GiraffePencils)\
**Post date:** [June 26, 2015, 12:57pm UTC](https://forums.unrealengine.com/t/ongoing-c-gameplay-example-series-making-a-survival-game/24878/141 "2015-06-26T12:57:43Z")

</div>

Thanks very much for this series  
I’m still stepping through to get a full understanding of it all (I was good at like section 4)

It’s really helped me by creating a ‘jump off’ point for my own project which I was struggling to build a base for.

---

<div class="post-metadata">

**Author:** ![TimeSpirits](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@TimeSpirits](https://forums.unrealengine.com/u/TimeSpirits)\
**Post date:** [June 27, 2015, 3:55am UTC](https://forums.unrealengine.com/t/ongoing-c-gameplay-example-series-making-a-survival-game/24878/142 "2015-06-27T03:55:20Z")

</div>

stuff , really excited to dig into it.

What is the licensing on the content btw? Can I use the meshes/mats/etc.?

---

<div class="post-metadata">

**Author:** ![Tom\_Looman](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/tom_looman/32/1215549_2.png) [@Tom\_Looman](https://forums.unrealengine.com/u/Tom_Looman)\
**Post date:** [June 27, 2015, 7:39am UTC](https://forums.unrealengine.com/t/ongoing-c-gameplay-example-series-making-a-survival-game/24878/143 "2015-06-27T07:39:10Z")

</div>

The licensing is the same as the other Epic Games sample content available. 🙂

---

<div class="post-metadata">

**Author:** ![Papa\_Beans](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Papa\_Beans](https://forums.unrealengine.com/u/Papa_Beans)\
**Post date:** [June 28, 2015, 3:38am UTC](https://forums.unrealengine.com/t/ongoing-c-gameplay-example-series-making-a-survival-game/24878/144 "2015-06-28T03:38:12Z")

</div>

Just wondering, do all of the resources provided work in 4.8? Or only the last tutorial is updated to 4.8. I know the hotfix just came out, but that shouldnt change much.

[Previous page](https://forums.unrealengine.com/t/ongoing-c-gameplay-example-series-making-a-survival-game/24878.md?page=6)

[Next page](https://forums.unrealengine.com/t/ongoing-c-gameplay-example-series-making-a-survival-game/24878.md?page=8)
