Color Maze – Level Creator

Since creating Levels everytime from scratch can take rather long for a “one man army” like me, i decided to create a Level Creator for Color Maze. Actually it provides me with some random maps, which already have floor tiles, walls, goals and and players according to my setups.

Also “Editor Scripting” makes my live more easy in setting up basic setups at all.

So i can determine Playfield Size, Player Amount and even the look of the levels, if i for example later want another design i can change the used Prefabs as well.

Not always perfect, but just a single click, to get some ideas for new Levels.

If i like a setup, i “just” need to add Buttons, Doors, Elevators and test the Level. Completely automating Level creation including all riddles as well, would take way more time, since i’d have to write a complete different creator, which already needs to check if a Level would be beatable.

When it comes to editor scripting i just use some simple lines of code,to call my functions to create my levels inside the editor. To remember that maybe for later projects i will copy some code here.

 using System.Collections;
 using System.Collections.Generic;
 using UnityEngine;
 using UnityEditor;
 
 [CustomEditor(typeof(LevelCreator))]
 [CanEditMultipleObjects]
 public class LevelBuilder : Editor {
 
     public override void OnInspectorGUI()
     {
         LevelCreator myScript = (LevelCreator)target;
 
         EditorGUILayout.BeginHorizontal();
 
         EditorGUI.BeginChangeCheck();
 
         if (GUILayout.Button("Create Level"))
         {
             myScript.CreateLevel();
         }
 
         if (GUILayout.Button("Clear All"))
         {
             myScript.ClearLevel();
         }
         EditorGUILayout.EndHorizontal();
 
         EditorGUI.EndChangeCheck();
         EditorUtility.SetDirty(target);
         DrawDefaultInspector();
     }
 }

So this creates 2 Buttons seen in the top, and calls the functions in my LevelCreator Script.

Unity Asset: 3D Model – Discus Fish

Swimming Discus for your Aquarium? here you can get it. Also includes schooling/flocking system.

Requires Unity Version 5.5

 ★Animated Discus Fish.
Swim Animation
★Maps:
4096x4096px Diffuse & Normal
★Poly / Tri count:
394 / 772
★Fishschool System

Screenshots & Animations

Video

Download Discus Fish

Color Maze – Elevators

In Color Maze i added a new feature called Elevators. I created a simple to setup Elevator Set with different colors. Also i used some Editor Scripting to make the handling easier for me in development.

So the idea is the same as with the doors.

  • Hop on an Elevator Switch to make the Elevator move.
  • Also i can use them as moving platforms aswell.
  • Copy the Button to have Multiple Access to just one Elevator.

But the Problem i encountered was, walking over or under gaps and elevators even If the elevator wasn’t there.
So i created Elevator Blockers to Block the Player to move under or over gaps if the Elevator is not there.

Color Maze – The Art Style

Since this a game about colors in a color maze game, i decided to create pencil Walls, directly mobile optimized so with all important optimizing steps.

  • 1 Texture Atlas
  • 1 Material
  • Later on i got rid of Shadows as well.

Also i added Modile Input so instead of swiping your fingers to dead, i added Buttons to easy navigate through the mazes. Actually there is also Keyboard input so i can mazes faster/easier.
I am also struggling with a design decision. Should i use Characters or keep on using Boxes?

Does it make change in gameplay? Well the answer is NO! But still i’m not sure if the player experience would be better it becomes more appealing instead of just a P-Box.
Well i will keep thinking about this while processing through.

Color Maze Development Blog

Color Maze – An idea was born

It’s about a month ago, i started to create some tutorials for a patron. From that i created the idea, why not create a puzzle game which includes switches like in Tomb Raider or Zelda, but in this case using colors only. So i stated the first prototypes while i though about functionality and how to expand the system. So i used basic shapes from unity and added simple Materials and started coding on the Tile Based Movement and the Game Manager which controls the doors and goals.

Since i already knew i want this to become a mobile game i create player switch buttons. So an idea was born which might drive me forward and makes a cool game later on.

Color Maze Development Blog

Color Maze *WIP*

The concept of Color Maze is to bring all your figures into the goal to complete the levels. Time is a factor which calculates how many stars you get in the end.

The game is still WIP and will be free to play for the first Levels on Android. You can buy the full version later on. The name of the game might change later on.

To make progress in the game you have to:

  • open colored doors
  • use Elevators and Moving Platforms
  • and much more later (teleporters, laser gates planned)

Developement Blog

Check out all news about Color Maze here:

Color Maze Development Blog

Press Kit

coming soon…

Story & Idea:

Story? Non at the moment. Do i need any?

★ complete the mazes as fast as possible
★ open colored doors using switches
★ have multiple figures to solve riddles with
★ 10 Levels & tutorials free to play

Game Name

Currently i don’t have any game name. Meanwhile i will use “Color Maze” as a placeholder.
I will add a Brainstorming / Mindmap soon here i guess.

Screenshots

This was the first Prototype for Color Maze. If you don’t see anything, let the page load a bit.

I also tested how it could look when i would use a character in Color Maze, but the problem is, the Player might not be able to see or actually feel a diffence.

I added a “Multiplayer” design to Color Maze, so you have to switch inbetween charaters. It still is a 1 Player game.

Elevators working nicely and give more possibilitys for riddles in the Color Maze. The can also be used as moving platforms, so the player can use them to go over gaps, if there are any platforms available.

Thats how a level design looks directly in Unity. I make use of some Editor Scripting to see things better. This makes it easier for me to create more Color Maze levels.

I used my Level Manager Plus Asset (you can also purchase it if you need it) to create my Level Select Menu. In addition i added a “mastered” medal to schow, the player has all stars reached.

Platform

This game will become available for Android in the Google Playstore once in Beta.

Release date

None yet… I’m still working on the levels 1-10

Unity Asset: Chattering Teeth

Did you ever wanted a chattering teeth as a monster, enemy or just as an environment filler?

Here you can get it! This is one of that wind up toys, you may came across in your childhood, youth or even now and then.

Requires Unity Version 5.3

Summary:

★ 9 Animations included
★ uses Multi Materials only
★ No UV Maps! = Not Mobile Optimised!
★ 3 Different Eye Types
★ custmizable Look by Material & Forms
★ Dracula Add On Teeth
★ Pre-created Prefabs

Animation List:

★ Howl
★ Quick Bite
★ Triple Bite
★ Walk 1
★ Chattering 1
★ Chattering 2
★ Walk 2
★ Dead 1
★ Dead 2

Screenshots:

Chattering Teeth Design your own!

Chattering Teeth Screenshot

Videos:

Setup Video

Download Chomper – Chattering Teeth

On site shop: Here

CG Trader: https://www.cgtrader.com/3d-models/character/other/chattering-teeth-chomper

Unity Asset: Four Winged Space Enemy

four winged space enemy unity asset octoman iconThis is a Four Winged Space Enemy. This model is designed to be an Enemy for Games like Space/ Top Down/ Rail Shooter.
It can also be used for ANY other game type like for Jump ‘n Runs and so on.

 

 

four winged space enemy unity asset octoman 01

3D Model – Four Winged Space Enemy:

For Shots you could use a Copy/Prefab of ShotSpot01 or just use anthing you like.
Just add ShotPoints for it or use the ShotSpot01 or anything you like.

There are 2 Models: unmodified and modified for the Demo Scene.
The modified already have events in the animations Tab & all animations are set.

Script: ChangeColorOrangeRed:

This Script changes 2 Colors after a given amount of time(resetTime) in seconds.
In the Demeo Scene it is set to Weakpoint001-004, Shotspot01 and Engine01 of the model Enemy001.
You can always change the colors as you like to. Same with the resetTime. So the can swap faster or slower.

Animations:

There are 4 Animations in the Model:

Idle
Shoot
Rotate Left
Rotate Right

Screenshots:

four winged space enemy unity asset octoman 04 four winged space enemy unity asset octoman 05

unity assets color switcher four winged space enemy switch octoman

Live Demo:

Videos:

Preview #01

Preview #02

Summary

★ Polys: 1260 / Tris: 2500
★ Animations: Idle, Shoot, Rotate Left, Rotate Right
★ Texture: TGA – 2k

★ Script: Weakpoint Color Change.
★ Now working with mechanim.

Download

CG Trader Link: https://www.cgtrader.com/3d-models/aircraft/other/animated-four-winged-space-enemy

Buy here:

Unity Version: 5.3

https://www.octomangames.com/downloads/four-winged-space-enemy/

 

Simple Quest Manager Dokumentation

This is the documentation and setup guide for Simple Quest Manager. It is also inside the package!

Glossary

Quest: Is a quest you can design to your needs. It contains strings for the description, hints, IDs, unlockable Quests, Rewards and so on.
QuestObjective: The Goal to achieve. Can be anything you can make contact with, destroy, collect. A string is used at the moment. You can also use an integer called ID.
QuestObject: Can be an NPC Character, any Object like a Book, a BulletinBoard or anything you can get quests from, or bring to.
QuestMarker: You can choose your own grafics of cause.

Exclamation Mark: Shows a Quest you can get.
Gray Question Mark: Shows Running but not completed Quest
Yellow Question Mark: Shows Quest Completed so it can given back to an NPC.

Setup Guide

Scenes: make sure to add the QuestManager and Quest UIManager Prefabs into all scenes where you need em.
Example: If you have NPC’s in a town you need the QuestManager in it, as well as the UIManager.
Since the QuestManager is persistent you don’t need it in a Battle Scene.

1.) The Quest Manager:

The Quest Manager is kind of the heart of the system. In here you design all your quests, and tell how many you have.

Size: Amount of Quests
Title: The title of a quest.
ID: The identifier of the quest, make sure all quest have a unique!
Progress: The current state of the quest. Only set them to NOT_AVAILABLE or AVAILABLE!

  1. NOT_AVAILABLE: If this quest is unlockable later on, that’s the state for.
  2. AVAILABLE: This quest is available for whichever NPC has it.
  3. ACTIVE: The quest has been taken, but is not completed yet. (QuestManager takes care of it.!)
  4. COMPLETE: The quest is complete but not brought back to the NPC. (QuestManager takes care of it.!)
  5. DONE: The has been brought back to NPC. (QuestManager takes care of it.!)

Description: Describe the Quest so people may know what to do.
Hint: Will be shown, once the Quest is ACTIVE and the Player talks to the Quest Receiver, or looks in the QuestLog
Congratulation: Will be shown, once the Quest is COMPLETE and the Player talks to the Quest Receiver, or looks in the QuestLog
Summary: Not yet completely implemented yet.
Next Quest: Represents the next Quest ID to be unlocked(form NOT_AVAILABLE to AVAILABLE) Chain Quests!

Quest Objective: A string parameter for the objective, like enemy1. needed to send the correct data later back to the QuestManager. ID’s would work as well.
Quest Objective Count: The current amount of the requested quest objective, should always be 0 at start. Example: Amount of killed enemys or picked up items.
Quest Objective Request: The requested amount of the quest objective.

Exp Reward: Not fully implemented since everyone has a different system. You need to enter your own functionality, depending on your systems.
Gold Reward: Not fully implemented since everyone has a different system. You need to enter your own functionality, depending on your systems.
Item Reward: Not fully implemented since everyone has a different system. You need to enter your own functionality, depending on your systems.

Once everything is setup here, make sure to apply the changes to the prefab!

2.) The Quest UI Manager:

The UI Manager will take care of all visible content. So when you talk an NPC, it will show the QuestPanels, and shows the QuestLog when pressing the corresponding button.
In this case it’s Q i believe. You can change it later on.

If you want to change the look to fit your design, make sure you check the Prefab out first, or take the pieces used already and fit the design to your needs.

Quest Available: Leave it unchecked!
Quest Running: Leave it unchecked!
Quest Panel: Drag in your QuestPanel.
Quest Log Panel: Drag in your QuestLogPanel.

Available & Active Quests: Nothing to do here!
QButton: The Button Prefab for the Quests.
Q Log Button: The Button Prefab for the Quest Log Quests.Q Button Spacer: Usually an empty GameObject or Panel which holds the QButtons for Active Quests.
Q Button Spacer 2: Usually an empty GameObject or Panel which holds the QButtons for Running Quests.
Q Log Button Spacer: Usually an empty GameObject or Panel which holds the QLogButtons for Active Quests seen in the Quest Log.

Quest Title: Text component to show the clicked quest title.
Quest Description: Text component to show the clicked quest description.
Quest Summary: Text component to show the clicked quest summary.
(no direct connection to the quest summary field in the Quest Manager at the moment)

Quest Log Title: Text component to show the clicked quest title in the Quest Log.
Quest Log Description: Text component to show the clicked quest description in the Quest Log.
Quest Log Summary: Text component to show the clicked quest summary in the Quest Log.
(no direct connection to the quest summary field in the Quest Manager at the moment)

3.) Quest Button & Quest Log Button

This Buttons just showing the name of the Quests. So they just require a text component.
So the QuestButton needs the QButton Script. The Text field is the one on the Button itself.
Add an OnClick Event and set the ShowAllInfos Function.

Same For the Quest Log Button.

4.) The NPC’s:

The NPC will need a Canvas for the Exclamation Mark & Question Mark.
This also needs to be child of the NPC.

The big Collision Box in front of the NPC is of type Trigger, the small around the NPC is a Collider.
We need one of type trigger so the system will trigger the possibilty to talk to the NPC.

Now drag the Quest Object script on the NPC.

  • Fill in IDs of available quests for this NPC. In my case it will be quest 1 & 2.
  • In Receivable is only ID 1, which means he can only take back the Quest with ID 1.
  • In QuestMarker place the canvas, in Image drag in the QuestMarkerImage.
  • In Available Sprite drag your ExclamationMarker Sprite.
  • In Receivable drag in the QuestionMarker Sprite.

5.) Saving & Loading

The questList will be saved in a binary format so it’s kinda protected from possible cheaters. You can Drag the SaveLoad Script to any Empty GameObject and call SaveQuest() at any point you want. You can use Buttons and many more. You can also use a Singleton design pattern or make it static to access it from anywhere.

6.) Quest Objectives

If it is a collectible Quest Objective you can easily add the QuestObjective Script. Add the needed values, like string name or ID and that’s it.
If it is a “Destroy Monster amount x” just use 1 simple line of code, when the monster dies:

QuestManager.questManager.AddQuestItem(monsterName, 1);