Game Framework - FREE asset for Levels, Menus, Dialogs, Social, Free Prize, Localisation, IAP, ...++

Hi All. My new asset Game Framework is now available for free.

2479866--180202--feature70pct.png

Features so far include:

  • Quick and easy setup of a GameManager to easily manage your game.

  • Simple setup of worlds, levels and characters including all the menus that you need and automatic support for things like unlocking and IAP.

  • Tracking of scores and progress.

  • Unlockable items

  • Action Framework for increased performance and ease of development.

  • Condition Framework for increased performance and ease of development.

  • Standard, customisable dialogs such as settings and game over.

  • Simple in app purchase.

  • General dialog handling

  • Advertising support

  • ‘Free prize’ functionality

  • ‘Social’ functionality

  • Localisation

  • Global Messaging

  • Debugging and test functions

  • Gameobject distance/time weighting framework.

  • Preferences extensions

  • Many helper classes and components from Animation through UI

  • and more…

You can see some of this in action in the video below:

The above framework is complete and fully functional however to support development I also have a paid extras bundle which contains additional content and some of my other assets including:

  • 3 UI themes (Cartoon, Space, RPG)

  • The full Beautiful Transitions asset for beautiful screen and UI wipes and transitions

  • The full Pro Pooling asset.

  • The full Prefs Editor (Secured) asset.

  • Full 2D runner framework and game sample (work in progress).

  • Advanced parallex scrolling script.

  • Additional 3D models

  • Additional samples

  • Tutorials

  • Other content

  • Priority support and feature requests

  • Secures future development of this framework

Feel free to try the free version, however if you like the framework then please consider the small price of purchasing the pro bundle to support our efforts in developing this framework further, or at least give us a rating on the asset store.

Asset store download - Free Version
Asset store download - Extras Bundle
Documentation
Tutorials

Any feedback is much appreciated.
Thanks
Mark

5 Likes

Working on a draft of some getting started tutorials to show how to use the framework.

Updated the settings windows to automatically show options for swapping the localisation language if you specify multiple languages. Here is a short video showing how it works (full localisation support for your games in 5 minutes):

If anyone can help with adding a translation for the default resources file then please PM me.

Made all UI windows have dynamic layout so you can choose what options should be shown without the need for making your own extensions (example from Game Over dialog)

1 Like

The first Asset Store release of the framework (0.8.5) just got approved and is now live. This is the same framework that is available for free via Github but contains some additional UI themes, extra content and tutorial files.

Our goal is that it should never be necessary to buy the asset store version, but hopefully you will like the free version enough to want to support us. :slight_smile: Releases will always be created on the asset store and Github at the same time with patch updates appearing earlier within the master branch.

Couldn’t PM you so:

Did the setup yesterday and today I opened the project again and got this error when simulating Lose or Win using Dummy Game Loop.

ArgumentException: An element with the same key already exists in the dictionary. System.Collections.Generic.Dictionary`2[System.String,System.Object].Add (System.String key, System.Object value) (at /Users/builduser/buildslave/mono-runtime-and-classlibs/build/mcs/class/corlib/System.Collections.Generic/Dictionary.cs:404) FlipWebApps.GameFramework.Scripts.UI.Dialogs.Components.GameOver.Show (Boolean isWon) (at Assets/GameFramework-master/Scripts/UI/Dialogs/Components/GameOver.cs:149) FlipWebApps.GameFramework.Scripts.Debugging.Components.DummyGameLoop.Update () (at Assets/GameFramework-master/Scripts/Debugging/Components/DummyGameLoop.cs:34)

I fixed it by changing the UnityAnalytics part in GameOver.cs
from this:

if (ShowTime) values.Add("time", difference);   // difference is set above (only) if ShowTime is set

to this

if (ShowTime) values["time"] = difference;

BTW: I really like the asset so far.

1 Like

Hi @TSharp . Glad that you like the asset and hope it is of use.

Noticed this myself this bug shortly after that upload and there should already be a fix in place.

I am still in the process of cleaning up and going through the code as part of the process of taking this from an internal to an open project. As such there might be a few such minor things that crop up in the main branch, but hopefully nothing major. The releases should be a more stable and better tested as they are what I will take out, test and put to the asset store.

Let me know if you have any other comments, features or suggestions.

PM should be enabled now also if you want to contact me that way

Made a short promo video to coincide with our approval on the asset store. Already got some good features in place for the the next version including the dynamic layout mentioned above and the start of a new RPG theme (will post some screenshots shortly)

Working on a new RPG UI theme for inclusion in the next release.

Hi. I downloaded the asset and like it a lot. Managed to get a new game setup pretty quickly but how can I best add my own parameters to a Level (target score)?

Hi @larssolheim9 . Adding your own level (world, character,…) parameters is pretty easy and there are several ways to do this.

First create a subclass of Level and add the parameters that you want. You can then set these directly through code, or create a file Resources\Levels\Level_.json and have the config loaded from that by implementing ParseLevelFileData(). You can use this for simple values, or even your whole level design and setup

    public class MyLevel : Level
    {
        public int TargetScore;

        public override void ParseLevelFileData(JSONObject jsonObject)
        {
            base.ParseLevelFileData(jsonObject);

            TargetScore = (int)jsonObject.GetNumber("targetscore");
        }
}

The selected level is always available to you through a single line of code.

I will get a tutorial done this week that shows how to set this all up, and also how you can easily use these values throughout your game.

Latest tutorial is online showing how to extend level and other game items with your own custom configuration and design. In this case we add difficulty values and have a level specific countdown.

http://www.flipwebapps.com/blog/learn/unitydevelopment/game-framework/game-framework-advanced-extending-levels-2/

Also hoping that the free version comes to the asset store soon (submitted 13 days ago) in addition to github.

Hi. The Free version is now on the asset store (http://u3d.as/o80) for easy download. Check it out and let me know what you think…

Finished redoing all the UI animation and it is now based upon our asset Beautiful Transitions which will also be bundled with the next update that was today submitted to the asset store for review.

Pretty cool to offer a free and paid version with bonuses. I think a common issue for beginners, once they get past the tutorials is “Okay, now how do I actually make a game?” It’s obvious you should keep things organized and manage all your little bits of code somehow, but it can be a bit overwhelming when you start looking into how people manage their game projects, as there’s as many way to do it as there are game developers.

Great contribution to provide a quick and cohesive way for people to get started organizing. Well done.

1 Like

Thanks for the comments @Schneider21 and glad you like the asset. We found exactly the same as you commented and that is kind of how the framework evolved. There is a lot to think about when making a quality game and especially beginners can quickly become overwhelmed. We spend a lot of time looking at the common aspects of games, refactoring to make sure things were easy to use and continually looking at re-use but with the ability to extend and customise where needed.

Having a good structure saves a lot of time, means you can actually focus on the game part and often results in a better end product.

V1.0 of Game Framework was just approved and is now out in the asset store:

Asset store download - Free Version
Asset store download - Pro Version

Game Framework Core - Improvements

  • Deprecated legacy UI animations and added support for Beautiful Transitions asset (included with paid version)
  • Basic Demo scene added
  • Animation: SetTriggerOnce and SetBoolOnce components for running animations one time
  • Audio: Effect audio effect pooling and simultaneous effect support.
  • GameObjects: Generic EnableOnce component

Game Framework Core - Fixes

  • Free Prize: Time to Free Prize subscribes to localisation changes

Game Framework Extras - Improvements

  • UI / Themes: Updated all dialogs to use the new Beautiful Transitions asset.
  • Themes: Basic RPG theme.
  • Themes: Start of basic themes window to help with rebranding.

Game Framework Tutorials - Improvements

  • Advanced ‘Extending Level’ tutorial added
  • Updated all tutorials to use the new Beautiful Transitions asset.

Just submitted v1.1 of both free and paid versions to the asset store. This version will contain all the latest additions from Beautiful Transitions 1.0 including screen and camera transitions and wipes.

v1.1 Just got approved. Highlight this time are screen and camera transitions as shown from the demo below.

2547526--177068--ScreenTransitions.gif

Next I will be working on redoing the tutorials to take you through the steps of building and releasing a full game using both the free and paid version of the asset. If you have features you would like to see in such a game add a comment below!

Added a generic object weighting framework for randomly selecting items based upon their relative weightings for a given distance or time. Check it out to also get an idea of how unity unit tests work.