From the ForumWelcome to the latest installment of From the Forum. In this series, guest blogger Alex Jackson highlights outstanding threads from the Corona Forum. The goal is to bring attention to the most captivating, interesting, and thought-provoking discussions taking place in our very own backyard.

Please visit the forum to join these conversations or start your own!


1. On-device debugging

We’ve all had those days; you’re soliciting feedback on your projects from beta testers and trying to turn that feedback into a bug report or milestone you can achieve. Managing that can be daunting, even more so if you’re getting raw data from beta testers, assuming they know how to provide log files in the first place!

Enter developer danstrmecki and their Corona Advanced Logging module. Hosted on github and sporting some seriously useful features, it can cut down the time spent instructing, coordinating and moderating your error logs, so you’re left with more time to code! A couple of the game-changer features the developer describes are:

  • Your messages will be printed in console but also logged in text files
  • Users get automatically prompt on run time errors and can report them via email

If you think you don’t need these, wait until you try them out. Then you’ll wonder how you ever lived without them! The library has a bunch of additional functions that come in handy in a variety of circumstances. Run through to the original thread to grab the github link!

http://forums.coronalabs.com/topic/50004-corona-advanced-logging/

2. Unnamed functionality in lua? Inconceivable!

It often feels like there are no depths left unplumbed when it comes to Lua discoveries. It’s a well-documented language with a wealth of knowledge and experience behind it. So what happens when you run into something that doesn’t have a name? It’s a funny little situation that presents a cool opportunity to the Corona community.

Noted Corona developer RoamingGamer found a gem of an unidentified handle… or is it a function… or is it an object function? The thing is, it doesn’t have a name! He polled the Corona developer community to get some feedback on what he should call this discovery.

The functionality itself is of particular note, as it is a great way to create and close a function which is inside of a timer which is associated with an object. If you’re feeling intrepid and would like to throw your two cents in, head down to the link!

http://forums.coronalabs.com/topic/49990-help-me-coin-a-name-for-this/

3. Font character size prediction

Being intelligent when predicting the size of your text is a difficult proposition. Creating boundaries and objects for textboxes depending on the size of dynamically-sized text throws wrenches into the most uniform of code.

Developer rcornwal was running into this problem, and creating objects depending on the amount of lines that are created from their text objects. So, they made the leap and asked our esteemed community for suggestions on how best to accomplish it. Eventually, they came up with their own function to get this value, but not before another developer weighed in with a possible solution.

If you use user inputted text, or have dynamically-sized text in your app or game, this is a workaround that you are going to want to incorporate. Have a method of your own? Let us know in the forum!

http://forums.coronalabs.com/topic/50071-find-the-number-of-lines-in-text/#entry259376


About Alex

Alex Jackson is an indie developer and the founder of Panc Software, specializing in retro-style gaming. He has created several mobile applications, enjoys long walks on the beach, pixel art, and reading the Corona forums. Contact him by email or follow him on Twitter: @pancsoftware. Check out his new game Crosstown Smash on iOS, Android, and Amazon devices!

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title="" rel=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>