Subscribe to GameFromScratch on YouTube Support GameFromScratch on Patreon

12. April 2013
During GDC Havok announced Project Anarchy a collection of their gaming technologies including Physics, Animation and the Vision engine for mobile. Today a few more details where announced and its all great news!

What’s included?

We have a powerful toolset made up of Havok’s Vision Engine, Physics, AI and Animation Studio; components of which have been used to build games like Modern Combat 4, Halo 4, Skyrim, Orcs Must Die and Guild Wars 2 to name a few. Project Anarchy bundles these technologies together, allowing users to download a complete toolkit with exporters for max and maya and a full WYSIWYG editor.

The Havok Vision Engine is built on top of an extensible C++ plugin framework and Project Anarchy will include the source for the plugins we use to connect our other products to the Vision engine. This source will also be maintained online and will provide insight for users on how to extend functionality with their own offerings; mail middleware@projectanarchy.com if you’d like to know more.

How free is “free?”

You can download and develop your game on the PC for free. Releasing that game for iOS or Android is completely free. We’ve tried to keep it simple. No crippleware, no restriction on how big you are, no hidden royalty payments on the back end. You can opt to purchase direct support from our engineers or additional source code.

What about other platforms?

Additional platforms are not free. If you want to expand and generate revenue from other platforms you can license those directly from us. Given the ability with Project Anarchy to quickly move to new platforms, the risk/reward here will be easily understood based on the game’s initial success. We’re hoping that with these options and the opportunities afforded by a large community sharing a common technology base, as well as the fact that more and more developers will grow up with our technology, we’ll all benefit from what Project Anarchy brings.

They also have a launch trailer showcasing Project Anarchy on mobile.


News

11. April 2013

I mentioned yesterday that i've become rather smitten with Codea but didn't exactly find the prospect of typing on the iPad screen appealing.  I could have hooked up a Bluetooth keyboard, but I don't want to carry one around with me, especially as the one I own is massive.  I didn't really feel like spending 50-100$ on a portable one, I generally can't stand them if I'm honest.  In the end I came up with the following solution and I actually rather like it.  There is a price tag attached with this setup though, about 16$  ( or 1416$ if you count the MacBook and iPad Mini…).  Which ironically enough is more than Codea costs!  I was going to buy the one app anyways for other reasons, so that was a non-factor for me.

 

Here is my Codea dev environment in action!

 

Codeonmac

 

Instead of using a Bluetooth Keyboard, I am using my MacBook as one using the application Type2Phone, a simple little application that acts like a virtual bluetooth keyboard.

Type2Phone

Connect and pair like a normal bluetooth device, then when the app has focused, anything types is sent to your iPad and the iPad's keyboard is hidden.  Type2Phone has a 4.99$ price tag, but it works very well and has plenty of options.  Even more important, it handles connects and disconnects very well.  There is a more expensive app called iKeyboard, the one you will find if you google.  It doesn't appear to be maintained, doesn't work with iOS6 and costs twice as much.  Use Type2Phone instead, even if it has a horrible name! :)  It's one of those slick little utilities that sets out to do one thing and does it well, I appreciate those.  If you are running on a PC, I am certain you will be able to find similar utilities, as long as you have bluetooth that is.

 

Now typing and looking at a different device is kinda awkward, so I decided to mirror my iPad's display to screen.  The easiest way to do this is with Reflector a 13$ purchase that runs on either Mac OS or Windows an enables you to mirror your iPad display on your desktop using Airplay.  So long as your network connection, the results are pretty solid.  In the above picture, I am out at a coffee shop with both devices tethered through my Android phone and it was a bit choppy at times when running a game or movie, but flawless when programming in Codea.  On my home network, it's simply flawless.

Here is Codea running mirrored on my desktop using Reflector.

Codea over airplay

 

Now, Reflector is a cool little application and one I was intended to purchase anyways ( it's one of the easiest ways to screen capture an iOS game at full speed without having to run the simulator.

 

Now you may be asking, why not just run the simulator?  At the end of the day, you can't beat running on the actual device, especially when it comes to motion controls and multitouch.  Plus, under this setup, all of my code exists in one place, on the device, no need to move from Mac to Dropbox to iPad for example, or the other various deployment mechanisms.  Plus at any time I can just pick up the device and go, the big strength of Codea.  This way, I can give myself a desktop like development experience when I am at home or have my laptop with me, but I can still take advantage of the iPad based nature of Codea when I am on the go.

 

There is one downside to this setup, and one I don't think I am going to be able to overcome…  you still need to touch the device… there is no mouse support in iOS ( unlike Android ) and Reflector is for display only.  You will find yourself clicking things in Reflector over and over until you get used to it.  If you know a way to control the touch screen on an iPad from a Mac, let me know!

 

You can see a video of the entire thing in process right here:

,

10. April 2013

Now that I am actually setting off to create a mobile game, it dawned on me I don't have any current iOS devices to develop and test on.  I have an iPad 1, that my daughter has pretty much co-opted, and an iPhone 3g, which is absolutely prehistoric at this point.  I have zero desire to own an iPhone ( wayyyyyyyyy too small for me ) so I decided to pick up this iPad mini last weekend.  I figured it was a good base-line target device, as it shares the same basic components as the iPad 2.  Besides, I was going to be buying one for ShadowRun eventually anyways!

 

Codea

Of course, with a shiny new toy, I pretty much spent the weekend playing with it.  So i've been installing the various games and applications that aren't available in Android land.  

 

One such application I eventually installed was Codea.

 

If you've never heard of it, Codea is a Lua based game development system that is run on the iPad.  That's right, it's a full IDE, code editor and game library that you run on your iPad to make games for your iPad.  As you may know I am a pretty big fan of Lua game engines and amazingly enough, Codea is pretty good.  After I installed it, the next couple hours just disappeared.

 

Codea comes with a pretty extensive number of demos and a great deal of art assets for you to get started with.  You also have the ability to publish to the app store.  The documentation is pretty good, although locating it from their website isn't immediately obvious.  You can take a look at the reference here, although it uses Sencha touch, so it will only run on webkit browsers ( Safari & Chrome ).  Again there are a number of demo applications with complete source code included as well.  Pretty much everything you need is actually included.  Perhaps coolest of all, there is even a book available, although only a chapter is dedicated to Codea.

 

So, what you may ask, is it like to program on an iPad?  Pretty freaking terrible actually.  I've never been a huge fan of the iOS keyboard, now imagine writing code with it.  Codea do have a toolbar that make accessing special character and navigating between text ( think Home and End ) easier, and it does help.  They've also made a number of things very touch friendly, like colour selection bringing up a colour select dialog or touch and drag to change a numeric value.  There are also drag and drop snippets that make the process quicker.  At the end of the day though, you still have to type a fair bit and with the onscreen keyboard it's kinda frustrating.  Codea does about everything it can to help you, but in the end, they are at the mercy of the device they run on.  You really want a bluetooth keyboard if you are going to do serious work, if only just to reclaim screen space.

 

I am actually rather hooked.  I can't see myself using Codea for a full release project, but as something to play or prototype with when out and about away from my PC it's great fun.  I think it would also be a good app for someone just learning the basics of programming.  This app is easily worth the 10$ cost.  As I am going to be playing with it a bit more, I might as well do a review… expect one shortly.

, ,

8. April 2013

Near the end of last week I announced the GameFromScratch game project and announced I was most likely going to use HTML5 as the development language of choice, while LibGDX and HaXe + NME were my runner up technologies.

 

The end result of the process is going to (hopefully!) be a published game on iOS and Android, but I intend to share as much as reasonably possible on GameFromScratch.com, including a running version of the game and most of, it not all of, the source code and eventually assets.  Obviously then, I want to do it in a technology that appeals to the majority of you, while still fighting my requirements ( I list them in the other post ).

 

Since I made that post, I've received some comments, tweets and a number of emails showing interest in various technologies.  So I've decided to put it to a poll, GFS's first ever!

 

 

I am not promising the winner in this poll is the technology I am going to go with, but it will certainly be given a large weighting when making my decision.

 

Copied from the earlier post, here are my specific requirements:

  • Turn based game
  • May require modest 3D support, otherwise sprite based
  • Excellent UI support ( UI heavy game )
  • Available on Android, iOS and on GameFromScratch.com at a minimum
  • In a language of interest or known to a large number of developers
  • Tools at low or no cost, so maximum number of readers can follow along
  • Reasonably quick development time
  • Good library support, little desire to re-invent the wheel

5. April 2013

The project is currently up on Github.

PlayscriptLogo

 

 

 

 

 

 

I will let them describe it in their own words:

PlayScript is an open source Adobe ActionScript compatible compiler and Flash compatible runtime that runs in the Mono .NET environment, targeting mobile devices through the Xamarin Studio MonoTouch and Mono for Android platforms. With a combination of Adobe FlashBuilder for Web and Xamarin Studio for mobile complex large scale cross-mobile-web projects can be developed with full IDE, source debugging and intellisense support on all platforms, with access to the full native mobile API's on the mobile platform.

The PlayScript compiler also targets both C++ and JavaScript (similar to the Haxe compiler) allowing ActionScript code to be run via JavaScript on the Web, or natively on PC and mobile (with some limitations). (NOTE: Presently the JS and C++ targets are at an experimental stage)

In addition to accurate ActionScript language support, the PlayScript compiler also supports a new language - PlayScript - which is derived from both C# and ActionScript. This new language supports all of the features of C#, including generics, properties, events, value types, operator overloading, async programming, linq, while at the same time being upwards compatible with ActionScript. The PlayScript language can be used to target both web and mobile (via Xamarin and JavaScript), and existing Flash code can easily be converted to PlayScript code by simply renaming files from .as to .play, and fixing a few issues related to the stricter syntax and semantics of the PlayScript language.

Finally, the PlayScript runtime supports a full Stage3D compatible implementation of the Flash runtime allowing games that are Stage3D compliant to run with very minor modifications on mobile via the Xamarin/Mono runtime. A subset of the "display" library is implemented to support Stage3D libraries such as Starling, Away3D, and Feathers, though there are no plans at the present time implement the full Flash display system.

And:

Features:

Native Performance

  • Using "unsafe" code.
  • Direct interop with native code (Cocos2D-X, other C++ based engines such as Page44, etc).
  • Optimized compiler for JavaScript generation.
  • Optional full C++ target with minimal app size and startup overhead.

Advanced Tools Support

  • Complete tool support including Syntax Highlighting and intellisense in the MonoDevelop IDE.
  • Source Debugging on all platforms (FlashBuilder for Flash).
  • Fast Release mode compiles and rapid iteration.

Full Platform API's

  • Complete iOS platform API via Xamarin MonoTouch and Mono for Android
  • Complete Windows/MacOSX API's.
  • Complete integration with UI builder (iOS), and Android GUI builder via Xamarin Studio.

Differences between PlayScript and ActionScript

  • PlayScript supports most features of C# 5.
  • PlayScript requires semicolons after all statements.
  • PlayScript uses block scoping for variables.
  • PlayScript requires breaks in switch statements.
  • PlayScript supports generics using the .<> syntax introduced in AS3 with the normal C# feature set.
  • PlayScript supports properties using the "property" keyword with syntax similar to C#.
  • PlayScript supports indexers and operator overloads using the "indexer" and "operator" keywords.
  • PlayScript implements AS3 namespaces by converting them to .NET internal.

Differences between PlayScript and CSharp

  • PlayScript requires the use of the "overload" keyword on addtional overload methods (allows more readable JavaScript code by only mangling overload method names).
  • PlayScript does not support using blocks.
  • PlayScript does not support checked, unchecked.
  • PlayScript does not "presently" support unsafe code (though this will be added in the future). Currently unsafe code can be added to mobile projects via C#.
  • In PlayScript you may not directly access the base properties of Object (ToString(), GetType(), GetHashCode()) unless you cast an objet to a System.Object. Doing this however will make your code incompatible with the C++ or JavaScript target backends.

 

The provided the following example code:

// Basic types
var b:byte;
var sb:sbyte;
var s:short;
var us:ushort;
var i:int;
var u:uint;
var l:long;
var ul:ulong;
var f:float;
var d:double;

// Conditional compilation
#if DEBUG
#else
#endif

// Fixed arrays
var a:int[] = new int[100];

// Properties
public property MyProperty:int {
   get { return _myInt; }
   set { _myInt = value; }
}

// Events
public event MyEvent;

// Delegates
public delegate MyDelegate(i:int):void;

// Operators
public static operator - (i:int, j:int):int {
}

// Indexers
public indexer this (index:int) {
   get { return _a[index]; }
   set { _a[index] = value; }
}

// Generics
public class Foo.<T> {
    public var _f:T;

    public function foo<T>(v:T):void {
    }
}

// Async
async function AccessTheWebAsync():Task.<int> 
{ 
    var client:HttpClient= new HttpClient();
    var getStringTask:Task.<String> = client.GetStringAsync("http://msdn.microsoft.com");
    var urlContents:String = await getStringTask;
    return urlContents.Length;
}

Very interesting. So basically they are making a HaXe like cross platform tool based on a hybrid of ActionScript and C#, targeting existing Stage3D libraries.

News, Programming ,

Month List

Popular Comments

Construct 2 Release r240
Subscribe to GameFromScratch on YouTube Support GameFromScratch on Patreon


16. November 2016

 

Construct 2, a popular “code-less” HTML5 based game engine, just released the beta release r240.  As this is a beta release, you know the story… expect warts, don’t use for production, etc.  The biggest feature in this release is basic WebGL 2 support, which was just turned on by default in Google’s Chromium browser.  The release also saw new functionality in the form of new triggers and pointer events.

 

Full change log of the release:

image

GameDev News

blog comments powered by Disqus

Month List

Popular Comments