AppEasy 1.4.7 – The Easy Cross Platform Development System for Mobile now Available for Download

AppEasy Version 1.4.7 is Now Available

AppEasy the cross platform mobile game and app development system for iPhone, iPad, Android and Windows that is aimed at all levels of experience releases latest update

AppEasy version 1.4.7 is now available for download from here.

Please upgrade to the latest version. Note that before updating, close down your current version of AppEasy, rename c:\AppEasy to c:\AppEasy2, install and run AppEasy 1.4.7 then copy any changes / certificates from c:\AppEasy2 to c:\AppEasy. Note that if you install the update before renaming c:\AppEasy then simply exit the AppEasy project manager, rename the folder and run AppEasy again.

Core Engine Changes:

  • ActorParticles has new property called VelocityAll which sets the velocity of all particles in the particle system
  • actor lua lib has new closest(actor, type) and furthest(actor, type) which return the closest and furthest actors from the specified actor
  • CallGlobalScript action now works the same way as CallScript
  • All lua functions now report file and line number errors
  • All command and actions now report error files and line numbers, although line number reported is the actions list or program that contains the problem action or command and not the actual problem action or command
  • ActorParticles has new attribute called AutoDelete, when set to true (default) actor is deleted when it finishes otherwise it is left in an inactive and invisible state
  • BodyAwake attribute added to actors which returns true if the physics body is awake
  • Destroyed attribute added to actors which returns true if actor has been marked as destroyed by the system
  • actions.call() can take a scene or actor. If neither are supplied then the containing actor or scene will be used as the target
  • sys.loadXoml() function added to load XOML files from Lua
  • Scene now has new OnPan event that gets called when the scene is panned
  • New actor.findOfType(type, scene) added that returns a table of all actors of the specified type
  • Bindings now support index variables
  • Adding to Position, PositionX and PositionY are no longer applied using the original position
  • PositionOrg, PositionOrgX and PositionOrgY added that do reference the original position (write only and cannot be set, only used for adding)
  • Added new particles lua library that can be used to interact with the particles within an ActorParticles based actor
  • ActorParticles Gravity changed from float to vec2
  • ActorParticles has new ParticleCount property
  • BUG FIX: Calling global script from actions in actor container was not passing in container actor
  • BUG FIX: Memory leak when adding a tag other than particle inside ActorParticle definition
  • BUG FIX: Particles depth broken in ActorParticles
  • BUG FIX: Some events were not being over written when set via properties
  • BUG FIX: actor.add() fixed
  • BUG FIX: Setting opacity property did not work as intended
  • BUG FIX: When setting variable to a whole number from lua, trailing zeros are now removed
  • BUG FIX: Box2dMaterial was not being applied when set as a property
  • BUG FIX: OnCollisionStart / OnCollisionEnd was being called for each actor that the target actor collided with

Error Reporting

We have done more work on the error reporting system, you will now find more meaningful error reports in debug.txt, including file names and line numbers.

Programmable Particle Systems

Particle actors have been made more versatile, including providing a new lua API (particles) that provides direct access to individual particles.

Other stuff

Scenes now support the OnPan event, which is called when a user pans the camera in a scene. The sys lua library also now allows loading of XOML files from lua.

Murder Detective 2: Corruption Available – Made with AppEasy

Murder Detective 2: Corruption Made with AppEasy

I’m pleased to announce that our team at Pockeeters has finished a brand new AppEasy powered game for Australian based developer Tournay Software. The game is called Murder Detective 2: Corruption and was developed with AppEasy. In fact, some of the features of the game helped shape many of the features of AppEasy that you see in the latest release.

AppEasy is a cross platform game and app development system that enables easy development using XOML mark-up and Lua.

The game is currently available on iTunes for iOS and Google Play for Android

The games features include:
* A thrilling murder mystery storyline.
* Mini games and puzzles.
* Hidden objects.
* Interact with characters.
* Cinematic cutscenes that enhance gameplay.
* Inventory interaction.
* Plenty of locations.
* A must for any murder mystery fan.

The Android version of the game will be available very soon.

Murder Detective 2 is the first fully fledged Pocketeers produced commercial game utilising many of the latest features of AppEasy and shows just how powerful and flexible AppEasy has become.

Very soon we will post a small post mortem that examines how and what we did to create the game using AppEasy


AppEasy 1.4.6.1 Now Available

AppEasy the cross platform mobile game and app development system using XOML and Lua has received a new major update. See http://www.appeasymobile.com for more details. AppEasy is currently in FREE open beta.

Core Engine:
* Scene property can now be retrieved from actors
* physics lib now has setJointBodyA and setJointBodyB
* Actor, scene, camera and user properties can now all be set via a string, number, boolean or vector types (Optimisation)
* Added new Ads example (inner-active and leadbolt, we will add more to the mix in the future and turn it into a first class API)
* BUG FIX: Crash when passing no table to template.from()
* BUG FIX: Incorrect web view size / position on Android

You should find that the new way to set properties is much faster than setting them with strings as the data does not need to be converted from string to the required format.

The Ads example is also directly usable, just edit the Lua code behind file and change the id’s to your own!

AppEasy 1.4.6 the cross platform app creation system is now out!

AppEasy the cross platform mobile game and app development system using XOML and Lua has received a new major update. See http://www.appeasymobile.com for more details. AppEasy is currently in FREE open beta.

AppEasy 1.4.6 is now available for download. Changes include:

* TextFilter attribute added to UI labels
* Added market.restore() to restore previous purchases
* Added market.products() which returns a table of all product ID’s in the market
* Added market.price() which returns the price of a product
* Added market.name() which returns the name of a product
* Added variable.count() which returns the actual number of used elements in the variable array
* ActorText now supports animation Text target property
* actor.bringToFront(actor) added to bring an actor to the top of its child hierarchy
* Added new load_xoml command to programs
* New system variable (index 11) which holds current screen orientation in degrees
* New Lua display,width(), display.height() and display.orientation() script functions added
* New input.setAccelerometerRef() and input.getAccelerometerOffset() functions added
* Market products no longer support an ID
* market.findbyID() has been removed
* market.products() now returns product names and not ID’s
* market.setCallback() added
* Callback removed from market.purchase()
* market.lastPurchase() has been replaced with market.currentProduct() which now returns the last attempted refunded, restored or purchased product.
* sys.yield() added
* variable.save() added to force save a XOML variable
* Variables have new attribute called Instant. If set to true then the persistent variables value is saved as soon as it is changed. Marking a variable as instant will automatically mark it as persistent
* Added new change command to programs which enable you to start, stop, pause and restart a program
* Added new media.enableMusic(enable) and media.enableSound(enable) to enable / disable music and sound globally
* Added new AudioEnable action which enables / disables music and sound (P1 = music_enable, P2 = sound_enable)
* sound command 5th parameter changed from target scene to repeat (boolean)
* Current scene is no longer brought to front of scene stack when new scenes are added. This will need to be done manually, or you can use the more appropriate scene layering system
* KillAllScenes action now accepts up to 5 scenes to exclude
* Video now supports OnStopped event
* VideoOverlay now supports OnError event
* WebView now supports OnPageLoaded, OnPageLoading and OnPageError events
* CallActions parameters changed to actions-name, parent-actor-name, parent-scene-name
* PlayTimeline will now restart a stopped timeline
* More resource properties exposed to property setters / getters, animation targets and bindings
* Actor HitTest replaced with Tappable
* Added new UserProperties to scenes and actors. UserProperties allow you to add any number of custim user defined properties to actors and scenes
* New SetUserProp(PropertyName, Propertyvalue, actor, scene), AddUserProp(PropertyName, Propertyvalue, actor, scene), SetUserPropToVar(PropertyName, VariableName, actor, scene) actions added
* New set_userprop(PropertyName, Propertyvalue, actor, scene) command added to programs
* New userprops LUA library added that provides set, get, add and find user properties
* You can now change templates and the data source assigned to grids and list boxes in real time
* All time related properties now work in seconds instead of per frame (scale up by 30 to convert to new system)
* New camera lua API
* Array index variables can now be used in actions and commands (e.g. my_array:my_index)
* BUG FIX: Crash bug when adding actors to layout panel actors such as grid, stack panel, list box and wrap panel
* BUG FIX: Label Text and Font properties now returned correctly
* BUG FIX: Label with autoheight and proportional sizing set changing size when tapped
* BUG FIX: Label / text actor actor height fixed
* BUG FIX: Fixes to market
* BUG FIX: Scene panning on y-axis not stopping at extents properly

Apologies for any changes that force you to make modifications to your existing XOML / Lua but these changes are essential for moving forward.

Documentation and XOML schema has also been brought up to date with 1.4.6

Lastly, note that all of the old examples have now gone and have been replaced with a single Tests example. This to a) clean up the examples folder to make way for bigger better examples and b) enable you to see all of the features in a single app instead of having to build, deploy and test each individual example.