AdMob Mediation Setup

This document tells how to set up the different ad networks for use with AdMob mediation. It was ‘step 4’ on how to set up AdMob Mediation in you game, but it became way too big so I’ve decide to place it here.

Here are links to the pages.

Behold, The Ad Terminator!

(The Ad Terminator lets you delete a list of files and folders from a project easily and fairly painlessly.)

  1. Download The Ad Terminator and install it into your project.
  2. a) Navigate to AeriaCanada/AdTerminator/Editor
    b) Choose one or most lists of assets to delete.
    c) Click on the ‘Delete Files’ button.
  3. Profit!

AdMob Mediation Package

AdMob Mediation Package Instructions

Note: We’ve only tested the AdMob integration on Android.

This post will tell you what you need to know to use the AdMob mediation package.

    At a high level, you will need to:

  1. Remove existing ad integrations from your project.
  2. Add in the AdMob Mediation package
  3. Ask for ads in your application
  4. Installing the mediation package
  5. Set up the ad placements in various networks

Then we have notes on Testing and Dealing with Build Problems.

New button alignment

Settings

In order to remove the “Watch Now” button from every C18, C18.1 or C20 game, please fill in your Unity editor with these parameters.

Download here the SALE image and import in your project: sale_slash

You need to break the Prefab instance and drag the remove_ads_button object into main_button_panel, then check all the numbers to be the same as this image:

Then create an Empty object inside remove_ads_button and click on Add Component, search for Image and select the sale_slash.png. This image should be as Sprite (2D and UI):

If everything is ok, your menu scene should look like this:

Done! Easy peasy!

Update a C20 game to C20-IronSource

Purpose

This post explains how to update an existing game in normal C20 code (cascade system) to C20-Iron-Source. You should be using for this update an existing C20 game and open it with Unity version 5.6.2p1. You should have talked with your team or Production team in order to know if it’s doable to update the game you want to Iron Source mediation. It’s a good idea to check the current ecpm of your game and if it’s lower than $2.00 may be you might update to a different mediation than cascades system.

Create packages

Once you have your C20 game opened you will to export first the packages needed. To do that go to

  1. Tools > Exporter > Use C18 Mode > Enable
  2. Tools > Exporter > Minimal Mode > Enable
  3. Tools > Exporter > No Ads Mode > Enable (this one is very important)
  4. Finally export all the packages by doing click on Tools > Exporter > Export > WithoutAd Networks

There will be two packages created. Save them in your local computer for now.

Create new branch

Open on github the branch called C20-IronSource and clone it with the name of your game: e.g. C20-IronSource-Cops-Vs-Robbers-Prison-Escape. Open the new branch and import the two packages you just created from the normal C20 game. Then follow the normal steps from the C20 process in order to Import and Set the new packages. You will replicate:

  • Step 10 (the only change here is that No Ads Mode should be ENABLED)
  • Steps 12-20

Configure app on IronSource

In this step you need to login in IronSource webpage. Please contact any member from Management and ask for the correct username and password. Once you have access, you should add your app in the main dashboard:


Then you need to retrieve your app’s link from Google Play and paste it in the next section:

Once you see the confirmation screen, go to Advanced Settings and then, on the menu on your left, go to SDK Networks. Make sure you have selected the game you’re adding:


Configure each Ad Network

On your right you will see a list with all the ad networks we use. You should configure everyone of them by pasting the current information from Ad Networks Master File in the corresponding section:

  • For AdColony you will find the current data on the Ad Networks Master File for the game you’re updating:

    Then you just need to paste everything on the corresponding input. On the Client Options just paste this text: “version:1.1,store:google”

    Then Save and turn on the switches on your right (only the once that are defined). Click OK if you see any confirmation popup. You will need to do this for all the ad networks:
  • For AdMob you will find also all the data on the same document. Just paste everything on the corresponding section. Leave in blank the Banner tab. Then Save and turn on the Units.
  • In AppLovin section you only need to paste the SDK Key, which should be the same for every app. Save and turn on the Units. Banner section should be Inactive by default.
  • For Chartboost you can find all on the same document. Save and turn on Units.
  • Then, you need to login into the Inmobi wepage with the same credentials. Then on the top go to MONETIZE, then click on Add an App and paste the link of the Google Play URL of your game and click on Look Up. On the “IS YOUR APP COPPA COMPLIANT?” section, select NO. Then click on Add App. The Interstitial placement should be selected by default, you just need to write its name. Click on Create Placement.
    Then click on +Create another Placement? and do the same but with the Rewarded Video placement. Finally click on Done, Proceed to Integration and Done again.





    If everything is done correctly, you’ll see the two placements below your game. Click on each one and get both ID’s. Paste them in the main document and in IronSource:


  • Now, in the next one, login into TapJoy and go to the dropdown on your right and click on Add App. Then select Android and fill the corresponding data as the image shows.



    This step is necessary for the correct configuration on Tapjoy, but this won’t be used on the games, so don’t worry about that. Fill the same data as the image. Then click on Create Now and once the Virtual Currency is done, click on Next Step.


    Then you will see this page. Here you need to retrieve the SDK Key. Please paste it in the Ad Networks Master File. Later you will paste this Key inside IronSource as well.

    Scroll down a little bit a you’ll find the Reporting API Key, that you’ll use for IronSource and you should paste it inside the Master File. Then click on Next Step, choose Android and click on Finish.


    After that, on the menu on your left you should click on Create Content and then scroll down until you see the Video section. Click on Create and then fill the data as the image below.


    Scroll down until the Placements section and choose de Video option. DON’T change anything else from this Content. Finally click on Save.Click again on Create Content, you need to create a second one, and click again on Video. This one is gonna be for the Interstitial placement, so note the new changes. Once you are done, click on Save.



    Finally click again (yes, again, three times so far) on Create Content but now choose the Interstitial option:

    Then do the same by filling in the corresponding data as the images below. Then Save.



    Now, if on the menu on your left you go to Placements, you should see something like this:

    If everything looks the same (no matter the order), then you can proceed to IronSource, where you need to paste the ID’s you got in the first steps for TapJoy. Please note that if you were using the same naming style, then the name of the Rewarded Video should be “IronSource Video” and the same for “IronSource Interstitial”.
  • Do the same with Unity. Please note that the Integration ID’s should be named the same for all the games: Rewarded Video ID should be “rewardedVideo” and Interstitial ID should be “video”. Then Save and turn on everything.
  • With Vungle you’ll need to login into the correct account on the Vungle Dashboard with the old company in which the game was linked. You can know the correct company fro your game in the column C in the List of Apps. Then, on the main dashboard, find your game’s name and click on it. Then click on Add New Placement and choose Interstitial type and write the same on the Name. Then submit. Finally do the same but now with the Rewarded type.



    If everythins is set correctly, you’ll see the two new placements you just created and there you can retrieve the Reference ID’s. Please paste them in the correct section of the Ad Networks Master File.

    Going back to IronSource, you need to paste the current App ID and Reporting API ID that you already have and the ones that you just created on their corresponding tab:

Edit IronSource ID inside Unity

Finally get the App Key of your game from the main SDK Networks on IronSource. Go to Ad Networks > IronSource > Edit Settings… and paste there the App ID of your game.

Add the hook feature to any C18.1 or C20 game

Purpose

This post explains how to update an existing game to add it the Hook shot feature. The instructions assume you are using the C18.1 or C20 code. The tutorial use a C20 game.

Get Your Project Folder

All existing projects have a project folder. You can either download the offline project folder or sync the github branch on your own local repository. Please note C18.1 and C20 games should be opened with Unity 5.6.2p1.

Import package

First thing to do is import this package. You can find it on your Dropbox company account on 0-Assets > GUI > Blockyverse Packages. This package includes all the sounds, images and scripts that you will use for the hook.

Create prefabs and elements

There are a few prefabs that you need to edit and create from scratch:

  • The first thing you need to edit is located on UI > gameplay > gameplay_buttons. You need to create a new object at the same level than jump_button (you can just duplicate that object and then edit it). The new object should be named hook_button. Please edit EVERYTHING with the same values that this image:

    (This is the image with the details on the right:)

    Please note that you should create a new Tag for this object. You can do that by clicking on Tag (below the object name) and then Add Tag…:

    Then you will see this tab:


    Finally you will be able to chose the correct tag for your new object:

    Absolutely EVERYTHING should be as the images show.

  • Inside hook_button object should be the hook_icon object and it should has the same values as this image:

    Note here that you will need to chose the new wing_0 Source image. This image was already imported in the package from the beginning.
  • Please check again that all the values remain the same as the images above. If everything is ok, you will see something like this on your UI > gameplay screen:


    Finally Apply the changes to the UI prefab.
  • Open Level 1. Go to your project tab and search the Whit Smoke prefab. Drag and place it inside the FPS Camera object. Make sure that all the values are the same to these images and the object should be disabled:


    Finally Apply the changes to the Player prefab.
  • Inside the same FPS Camera object open the Main Camera object and create inside the Hand showed in the image. As usual, check that all the values are exactly the same.

    Finally Apply the changes to the Player prefab.
  • Go to the FPS Player object and click on Add Component. Then write “hook” and select the Hook script.


    Then do the same but select instead a Line Renderer.

    Finally check that everything in your FPS Player prefab looks like this image. Drag and drop everything as the image shows and search for the remaining elements.

    Save all the changes and apply them to the FPS Player prefab. Make sure everything is set correctly in all the levels (you just need to drag and drop the hook_button on every level, all the other changes should be applied already to all the levels).

Last step

You are almost done! You just need to turn on the Grappling Hook. In order to do this go to Tools > Grappling Hook > Enable > On. Right here you can decide if turn this feature on or off, so you can see the hook or not in the game.

The last step is build an APK and try the hook feature in your device. If everything is ok, you have finished!

Set Up Admob Ads Under Heyzap Mediation

Purpose

  • explains how to set up Admob ads for a game where the advertising is controlled by Heyzap mediation
  • part in a series of articles

Applicability

This applies to you if you’ve been tasked with updating an existing project to use the Heyzap mediation features.

Written Instructions

Note: As Admob is associated with Google, you should use VM to access Admob. You can contact the Production manager if you don’t have access for VM.

When you link Admob ids first time with Heyzap, you should also log in Heyzap the same Virtual Machine where you logged in for Admob.

Log in to Heyzap with correct company (A, B, C & E) and find your game.

Go to the app-specific mediation settings and expand the ‘Admob’ area.

Log in to Admob and in this page, you will be getting Publisher ID. You can also get publisher id from Ad Networks Master file.

This is very important step.  Make sure you have logged in with Ad mob and Heyzap in the same browser on VMS to do the following step. If you don’t do this, publisher id cannot be applied and admob ads will not work properly.

After you placed the publisher id, you should click on “Grant Access” Button on Heyzap.

Choose Blockyverse account from the pop up window.

Click Allow.

Once you done this step, you should see “Access Granted” button on Heyzap.

Now find your game from Apps on Admob.

Click on Ad units.

Note:

Make sure you have the ad units for the (Non-rewarded) Interstitial, and for the Rewarded.

Interstitial Ad Unit

Click on Interstitial Ad unit and you will see ad unit id listed there. This ad unit ID will go under “Video Ad Unit ID” on Heyzap.

Rewarded Ad Unit

Click on Rewarded Ad unit and you will see ad unit id listed there. This ad unit ID will go under “Incentivized Video Ad Unit ID” on Heyzap.

 

Final Steps

Save the settings.  Don’t turn on or off any ad networks. Just keep it the way what is was earlier. Turned on ad networks will stay on. Turned off ad networks will stay off. Only apply the new ids and don’t make any changes on ad network set up even if you set up Admob as new thing.

Next

Set up App Lovin to work under Heyzap mediation

Updating a C18, C18.1 or C20 game to Blockyverse company

Purpose

This post explains how to update existing games using the new Blockyverse packages. The instructions assume you are using the C18 or C18.1 code (there is a different package for each one of this versions). For C20 games the only change is that you don’t need to import any package, because it’s already imported in the main branch.

Get Your Project Folder

All existing projects have a project folder. You’ll be sent instructions on where to download it from. Please note that C18 games open with Unity 5.3.7p1; C18.1 and C20 games with Unity 5.6.2p1.

If the game you’re updating has already created a branch in Github, please use it. If not, please create a new branch and name it like this “Code-Game-Name” (ex. for a C18.1 game: C18.1-Most-Wanted-Jail-Break).

Create Rollback APK

It is a good practice to create a Rollback APK before you do anything else. In order to do this you need to login in Unity with the corresponding account of your game (company A, B, C or E). Ask for this access to any Project Manager.
You can find the correct company for the game you’re updating in the List of Apps, Current information tab, column C.

You just have to create an APK when you finished opening the branch in the correct Unity version.
When creating Rollback APK’s please be sure to add +2 to the current Bundle Version Control (BVC). You can edit this in Edit -> Project Settings -> Player and then into the “Other Settings” tab you’ll find an “Identification” section. If the current BVC is 15, your Rollback APK will have BVC 17.

Login into Blockyverse account

You should ask for this access to any person from Production or Management, so you can login into the correct account.

Import Blockyverse package

You can skip this step if your game is a C20
Login into your corporate Dropbox account and download the corresponding package for your game from this folder:
Blockyverse Packages

Import the package to your game inside Unity by double clicking on it and then click on the Import button.

Apply changes

In order to do this, you need to go to Tools -> Change Company Name:

After doing this, you’ll receive this notification:

Please contact Production or FPS Team if you don’t receive this message.

Fix possible issues

Please fix the possible issues that you may encounter after you apply the new package or during the update.

  • If you see this alert (sometimes you will see this with C18.1 games), click on “Remind Me Later”
  • Open your Menu Scene. You may see this UI there:
    If this is your case, then open the UI Prefab on your Hierarchy tab and deselect the “gameplay” object and select “menu”:

    Finally Apply the changes on the Prefab.
  • May be when you finish importing the new package, the title image on your Menu Scene may change to the default image:
    Then, you should go to your UI Prefab on your Hierarchy and open UI -> menu -> title_image and under the “Image (Script)” section choose the correct image:
    Finally Apply the changes on the Prefab.
  • Make sure that you have the same rewarded weapons in everywhere. You should look into 5 places:
    1. Inside UI -> select_difficulty

    2. Inside UI -> pause

    3. Inside UI -> select_difficulty -> level_select_info_panel -> level_reward_image

    4. On PlayerWeaponSettings element (you can find it in the Project tab)

    5. On LevelSelectCanvas -> LSMissionInfoPanel inside LevelSelect scene

    You’re free to use any rewarded weapons you want, just make sure that the weapons match the actual game. Also notice that not all the weapons have icons created and that the “inactive” icons should be in their correct places. Don’t forget to hit the Apply button every time you modify a prefab.

Verify changes

Verify that all the changes were made successfully.

  • New company Logo for Battle Blockyverse Studio (Logo Screen)
  • Check the correct Company Name under Player Settings
  • Play the game inside Unity editor and check the new Privacy Policy

  • Stay in the Unity player and Rate the game with 1 Star. You should see this text after rating:
    After this your favorite email application will open with one predetermined text like this one:

    Tell us what you think about our game, send suggestions and ideas!, and feel free to report bugs!
    BundleID com.crystalbuffalo.copsrobbersprisonescape C18, BVC 15

    Please make sure that the BVC is the correct for your game, as well as the Bundle ID. Also notice that the email should be directed to contact@blockyverse.com

  • In your Hierarchy tab locate the UI Prefab and go to its “pause” object. You should have these 10 games with their correct Game Name, Link and Image:

Configure your game

Finally you need to configure all your game settings and new adnetworks id’s.

Change Studio

Go to Tools -> Edit Game Studio and choose “A_Blockyverse”:

Heyzap settings

Go to Ad Networks -> Heyzap -> Edit Settings and choose the older company in which this game was linked (you can find the older company in the List of Apps). Also don’t forget to check the Override Company Studio button. Make sure to select only A, B, C & E from this menu. We didn’t have separate ad network logins for remaining companies as usual.

Unity Ads & Unity Analytics

In order to configure your game in Unity Ads, please make sure to complete this process:
Setup UnityAds

When you finish, please follow this steps to configure your game into Unity Analytics:
Setup Unity Analytics

If you see any error on the Console please contact to Production or FPS Teams.

Update Heyzap mediation

You can follow this process to update AppLovin into Heyzap mediation:
Set Up AppLovin Ads Under Heyzap Mediation

You can follow this process to update UnityAds into Heyzap mediation:
Set Up Unity Ads Under Heyzap Mediation

You can follow this process to update Admob into Heyzap mediation:
Set Up Admob Ads Under Heyzap Mediation

Change new AdMob id’s

You should find the Admob id’s for your game inside Blockyverse tab on Ad Networks Master File. Then go to Ad Networks -> AdMob -> Enable (if it wasn’t). Next on Edit Settings apply the new id’s:

Change AppLovin Settings

You should find the AppLovin SDK key for your game inside Blockyverse tab on Ad Networks Master File. Then go to Ad Networks -> AppLovin -> Edit Settings and apply the new SDK:

Then update the same AppLovin SDK on the following files:

  • Plugins/Android/AndroidManifest.xml
  • _Scripts/AmazonSwitch/Manifest/AndroidManifestAmazon.xml

Also check that the Bundle ID is the correct one on both xml files

Verify the rest of the Ad Networks

The rest of the Ad Networks stay the same, so you need to double check them on the Ad Networks Master File on the oldest Company tab and copy those ids into the new Blockyverse tab in the corresponding row.

Last steps

Finally you can test the game inside Unity editor and see if there is any error in the Console.

If everything looks fine, you can go to Player Settings and update the Version and BVC. For the Version just add “b” at the end (ex: C18.1b, C18b).

Build your new APK and that’s it! Congrats!

ART – Creating a character

Creating/editing a character:

*Characters are already created*

  1. Load the Vox file of a character in Magica Voxel.
  2. Re-paint the new texture of the character (never add new mesh).
  3. Take screenshots of every view (in ortographic mode) perfectly aligned.
  4. Open texture file in Photoshop (or any other image editor).
  5. Cut all the textures from the screenshot views and replace them in the texture file.

-Create an OBJ character

  • Convert from Voxel (.vox) to Object (.obj)

*After texturing the character in Magica Voxel*

>First way:

  • Open the character .vox file with Voxel Shop (software).
  • Select all the character and export it as an OBJ file.

*This will also generate an image file of the texture in png or jpg format*

>Second way:

  • Load the “VoxelToUnity v1.2.2” package inside of Unity. (external plug-in)
  • Drop and drag the .vox file in Unity
  • Drag it to the convert file and choose the OBJ button.

*This will create the OBJ and the image file of the texture*

 

  • Open the .obj character inside Autodesk Maya (or any other 3D software)
    1. Verify that every box is closed:
      • Select all the vertex and choose “Merge”.

*This is to prevent problems with the animation*

  1. Add loops divitions on every joint (knees, elbows, etc)
  • Select the object and Insert Edge Loop

*This is to help the animation bend correctly*

*Extra assets such as helmets, weapons, cloaks, accessories should be parented to the model joints inside of Unity*

 

 

-Animate a character (using mixamo automatic-rigg)

  • Convert the .obj file to .fbx (Using Maya or the 3D software of your preference).
  • Log in into mixamo platform.
  • Products > Rigger > Auto-Rigger >Rigg your character > Upload
  • Select your .fbx character.
  • Place the joints where you want the movement.
  • After the character is completely rigged, go to “My Assets” and select your character.
  • Click on “Find animation” and look for the animations you want.
  • When you like one just click on Add to pack (you can do this to all the animations you want).
  • When you finished choosing all the animations you wanted, go to “My Animations” tab
  • Select the animations you want and click “Queue Download”
  • In the “Downloads” tab select your animations and choose what you want to download (it could be an animation skinned or just an animation with only joints).
  • Import that file into Unity.

ART – Creating a level

FOR CREATING A NEW LEVEL

*Textures and asset templates are already created in Voxel Engine plug-in inside Unity* (If you need to change this plug-in or anything related talk with programming team)

  1. Create the level with Magica Voxel (software).
    • *Base ground should be at least 25 blocks high.
    • *All levels cannot be higher than 40 blocks.
    • Use the palette of materials (already created before)
  2. After finishing the level, export it as a Qubicle file (.qb).
  3. Open the level with Qubicle Voxel Editor (Steam software) and verify the match of colors.
  4. Select all the level and export it as schematic file (.schematic).
  5. Open the level with MCEdit and verify textures.
  6. Select all level (Ctrl + A) and re-export it as schematic again.
  7. Drag and drop the file inside of Unity (Assets/Levels/Level X)
  8. Load the level dropping it in the “Map To Load” box inside the Simulation Controller component.

-For editing textures:

  1. Open the file “MasterPalette.png” in (Assets/MasterPalette/Materials) with Photoshop or any other graphic editor.

-For editing/adding a new block type:

  1. In (Asets/MasterPalette/Blocks/The type desired) Right click > Create > BlockSet and choose the type of block desired.
  2. Select the block of texture desired for each view of the new block.
  3. Scroll down and write in the Element box the correct Minecraft block ID and sub ID.
  4. Choose the correct subtype block.
  5. Select the corresponding Blockset in (Asset/MasterPalette/Blocksets) and drag and drop inside of it the new BlockSet created.