If you've got my Wizard's Magic Ball app, then you may have noticed an update today.
That update is a neat, new customization feature. It allows you to write and record your own answers for the Wizard's Magic Ball. If you're unhappy with what you've recorded, you can always restore the default voices (though, you have to save again if you want the default to stay on).
Also, if you look at the screenshot to the left, you'll probably notice the difference in color between the "yes" and "no" answers. This is to indicate which group the answers are in for rigging. If you rig for "no," you'll get an answer for the orange group, and if you rig for "yes," you'll get an answer from the green group.
Go try it!
Also, look for a couple of very special updates tomorrow....
*Sneak*
(Oh, side note: this is not yet released on Android. That will happen sometime soon...)
Showing posts with label android. Show all posts
Showing posts with label android. Show all posts
Saturday, September 29, 2012
Wizard's Magic Ball 2.0 - Delivered!
Labels:
Amazon,
android,
Apple,
asus,
ball,
beginner,
beginning,
Corona,
Corona SDK,
game development,
games,
iOS,
iPad,
iPod,
magic,
programming,
transformer,
wizard,
xcode
Sunday, March 4, 2012
Wizard's Magic Ball - Delivered!
UPDATE: My app is in the App Store as well.
It has taken long enough, but I finally got an app delivered.
It turns out that even the smallest of apps is a ton of work. Even this one, which was made with the use of the wonderful Corona SDK.
If you're interested in developing for iOS or Android and don't have the time, energy, or money to get up to speed with both Objective-C and Java, I highly recommend Corona. Best of all, it's free to try out, so what are you waiting for?
That being said, I learned quite a bit in getting this little app to market:
1) Windows may not care about file name capitalization, but every other OS does, so if you're developing on Windows, do yourself a favor and pick a simple strategy for naming files (like keeping them all lowercase) and stick to it. I spent several hours trying to figure out why my app wouldn't work on my tablet, only to trace it down to a reference to "LevelEditor" when the file name was "levelEditor."
2) Multiple X-Code installs will likely cause a headache when attempting to deploy to your iOS device. This site was instrumental in getting my system setup to deploy Corona apps:
http://pushkararora.com/how- to/how-to-uninstall-xcode- completely/
3) For current Corona users, you need the following: X-Code 4.2 (4.3 is currently not working with Corona because of some of Apple's changes), and the current Application Loader. Application Loader can be found on iTunesConnect, a site you will probably never have heard of, if you haven't done any iOS development before. Also, it's almost impossible to find (go to Manage Applications, then look at the bottom under Application Loader). The easiest way to get up to speed is to uninstall all X-Code installs, restart your system, install X-Code 4.2, restart your system, install the latest Application Loader, restart your system, and proceed from there.
4) Apple must use stagecoaches to deliver your app to the reviewers. Also, their process for signing apps must have been borrowed from the Dead Sea scrolls. For reference, it took me about an hour to get my app on the Android and Amazon market places. It also cost me $25 (that was for the Android market, Amazon costs $99 a year, but they're waving the first year). To get it on the Apple Store took me an entire day and $99. Also, it's still not out yet. I have to wait at least a week for them to accept my contract so that I can sell apps and at least a week for them to review my app (as of right now, the app has still not been picked up for review). Be forewarned. If you have any sort of deadline, get your Apple accounts squared away before starting on your app.
5) Corona is awesome, but there are some things to be aware of, most notably: test on as many devices as you can because the resolution will be an issue. Corona comes with some neat scaling features, but while that works well for scaling big images to the right size, it doesn't help out so much with positioning of game elements. I wrote a utility class for take the device's resolution and using that to scale all my elements and positions to the right places. NOTE: Corona auto-scales assets if they won't fit in texture memory. That means that, with my code, I had to make a special case to deal with assets that might run afoul of the texture memory limits on some devices (basically, anything over 1024x1024).
6) Make sure that you make a vector version of some of your screens and your app icon because you'll need a set of screens and icons in a myriad of sizes for each market place.
7) Asus Transformers often have a power button issue that comes from the outer button not lining up with the physical one inside. I'm still trying to get mine fixed, but be forewarned if you're thinking about picking one up for running your apps.
8) Getting an app onto the market places where people can buy it and play it is an awesome feeling. I recommend everyone try it out.
It has taken long enough, but I finally got an app delivered.
(click the image to go to Android market)
If you're interested in developing for iOS or Android and don't have the time, energy, or money to get up to speed with both Objective-C and Java, I highly recommend Corona. Best of all, it's free to try out, so what are you waiting for?
That being said, I learned quite a bit in getting this little app to market:
1) Windows may not care about file name capitalization, but every other OS does, so if you're developing on Windows, do yourself a favor and pick a simple strategy for naming files (like keeping them all lowercase) and stick to it. I spent several hours trying to figure out why my app wouldn't work on my tablet, only to trace it down to a reference to "LevelEditor" when the file name was "levelEditor."
2) Multiple X-Code installs will likely cause a headache when attempting to deploy to your iOS device. This site was instrumental in getting my system setup to deploy Corona apps:
http://pushkararora.com/how-
3) For current Corona users, you need the following: X-Code 4.2 (4.3 is currently not working with Corona because of some of Apple's changes), and the current Application Loader. Application Loader can be found on iTunesConnect, a site you will probably never have heard of, if you haven't done any iOS development before. Also, it's almost impossible to find (go to Manage Applications, then look at the bottom under Application Loader). The easiest way to get up to speed is to uninstall all X-Code installs, restart your system, install X-Code 4.2, restart your system, install the latest Application Loader, restart your system, and proceed from there.
4) Apple must use stagecoaches to deliver your app to the reviewers. Also, their process for signing apps must have been borrowed from the Dead Sea scrolls. For reference, it took me about an hour to get my app on the Android and Amazon market places. It also cost me $25 (that was for the Android market, Amazon costs $99 a year, but they're waving the first year). To get it on the Apple Store took me an entire day and $99. Also, it's still not out yet. I have to wait at least a week for them to accept my contract so that I can sell apps and at least a week for them to review my app (as of right now, the app has still not been picked up for review). Be forewarned. If you have any sort of deadline, get your Apple accounts squared away before starting on your app.
5) Corona is awesome, but there are some things to be aware of, most notably: test on as many devices as you can because the resolution will be an issue. Corona comes with some neat scaling features, but while that works well for scaling big images to the right size, it doesn't help out so much with positioning of game elements. I wrote a utility class for take the device's resolution and using that to scale all my elements and positions to the right places. NOTE: Corona auto-scales assets if they won't fit in texture memory. That means that, with my code, I had to make a special case to deal with assets that might run afoul of the texture memory limits on some devices (basically, anything over 1024x1024).
6) Make sure that you make a vector version of some of your screens and your app icon because you'll need a set of screens and icons in a myriad of sizes for each market place.
7) Asus Transformers often have a power button issue that comes from the outer button not lining up with the physical one inside. I'm still trying to get mine fixed, but be forewarned if you're thinking about picking one up for running your apps.
8) Getting an app onto the market places where people can buy it and play it is an awesome feeling. I recommend everyone try it out.
Labels:
Amazon,
android,
Apple,
asus,
ball,
beginner,
beginning,
Corona,
Corona SDK,
game development,
games,
iOS,
iPad,
iPod,
magic,
programming,
transformer,
wizard,
xcode
Tuesday, August 2, 2011
Android Game Development, Step 1:
Go here: http://www.javacodegeeks.com/2011/06/android-game-development-tutorials.html
In all the languages I've dabbled in and all the tutorials I've found on the internet, this is the first tutorial that I've found that covers everything you want to know without all the other junk. It's quick, it's simple, and it gives you all you need to start on a path to game development on the droid.
I challenge anyone to find a better tutorial.
In all the languages I've dabbled in and all the tutorials I've found on the internet, this is the first tutorial that I've found that covers everything you want to know without all the other junk. It's quick, it's simple, and it gives you all you need to start on a path to game development on the droid.
I challenge anyone to find a better tutorial.
Thursday, July 28, 2011
How to get Ruby on Rails running on Android with a sqlite database with zero knowledge of rails, Android, and sqlite
My previous post about getting Rails running was really only a pit-stop on the way to my real goal of getting my Android tablet to talk to a Rails server.
That's what I searched for first, which led me to the instructions for installing Rails on PC. So, to back up, I was looking for "Android and Ruby on Rails," and I got this post:
Which of course, references the other Google top search which is this:
So after figuring out how to get a Rails server running on PC (documented in my previous post), I decided to start with Gertig's demo project for Android (downloadable at the top of the link above).
Unfortunately, that did not work out of the box. Mainly because he only provides the source for the Droid app, not the Rails. So I jumped over to Michael Maitlen's blog (mgmblog link above) which Gertig referenced and took a look at his httpclient hello world, hoping that it would show me the Rails side of things.
Knowing nothing about Rails or Ruby(except what I gleaned from setting it up in my previous post), it took me a bit to puzzle through Maitlen's code and to realize that the commands he's using won't work if you've followed Gertig's instructions for setting up Rails on PC. If you have, here's what you need to do to create a Rails project for Gertig's demo Android project (note, I made changes to Gertig's demo, keep reading to find out what):
- DroidRails is the name of my project -
- Start Command Prompt with Ruby
- cd to your RailsApp folder
- code:>rails new DroidRails>cd DroidRails>rake db:create>rails generate scaffold events name:string budget:string>rake db:migrate[next, I did this in a new ruby cmd prompt, but you shouldn't have to]>rails server
Alright, I still know next to nothing about Rails, but from what I gathered, the above code creates a Rails project with a sqlite3 server (from when I setup Rails), adds a template (scaffolding?) for a SQL object called "events" with the entries "name" and "budget" which are both strings, and starts said server. From there, I can contact it with Gertig's demo Droid app.
Now, for the changes I made to Gertig's project to get it to work (this is required if you're going to create a server like I instructed, but I'm sure after reading, you'll be able to tell how to write a server to fit Gertig's project 100%):
- in AddEventView#postEvents()
- set the HttpPost to your local ip (note: my ip did not match Gertig's comments)
- change "budget" into a string and access just like "name" (I did this for simplicity's sake, I didn't want to worry about data types on the Rails or Droid to start)
- change "myevent" on line 85 to "event"
- in RubyMain#retreiveProjects()
- change the string url on line 68 to your ip (match HttpPost above)
- in RubyMain#parseXMLString()
- on line 136, change “myevent” to “event” for the nodes
- change “budget” to a string, update the set on line 153 to get a string like “name” does
Troubleshooting:
The three most likely culprits of any problem are 1) your Rails project isn't setup correctly, 2) your Droid project doesn't match your Rails project, and 3) your ip is incorrect.
If you followed my instructions above, 1 and 2 should not be a problem. If not, here's the main issues I ran into:
For 1:
- If you follow Gertig's Rails setup blog (which I followed in my previous post), and you try to build the Rails app by following Maitlen's instructions, you're doomed to fail.
- I found this site: http://guides.rubyonrails.org/getting_started.html helpful in figuring out how a Rails server should be built, and I compared the commands in it with Maitlen's to figure out what I needed to do.
For 2:
- If you followed my instructions for 1, then you'll need to follow all of them. In my Rails server, I changed “budget” to a string to further simplify the app. I also changed the name of “myevent” for no good reason.
- If you change the names, Rails does some interesting stuff automatically. To get my project working, I actually had to use Firebug to analyze the call made by the Rails test page that's generated for you (http://localhost:3000/events) in order to see what was being posted when I made a new event. Working backwards from that, I figured out how to alter Gertig's project to match. If something's not working, that's where I would start looking.[Note: one of the weirdest things here is that I used “events” in my server, but Rails used the singular form for creating a new “event.” It seems to have done this automatically.]
- Also, you need the right IP. Localhost works from your PC but doesn't from the Droid (because localhost on the Droid would refer to a server that it's running on itself). I cover the details of this below:
For 3, do the following:
- go to http://localhost:3000/
- make sure it shows the “Welcome aboard” Rails page. If it doesn't, your server isn't running.
- open a command prompt and type ipconfig, hit enter
- look at the list of IPs towards the top around “Default Gateway.” The one that worked for me was the “IPv4 address”
- go to http://[your IP address]:3000/
- make sure it also shows the Rails welcome page. If it doesn't, you've got the wrong IP address.
- Once you find the right one, add it to your Droid project.
Labels:
android,
mysql,
programming,
rails,
ruby,
ruby on rails,
sql,
sqlite
Wednesday, July 27, 2011
How to get Ruby on Rails running on a PC with zero prior knowledge!
I know next to nothing about Ruby or Rails, so of course, I'm beginning by following tutorials on the internet. A couple months ago, I went to http://www.ruby-lang.org/en/ and did the super intro tutorial at http://tryruby.org/. If I don't get too distracted with attempting to get Android and Rails talking, I think I'll go through the other tutorials referenced on the ruby-lang site. More on that if I return to them.
And that's it. Gertig's instructions totally worked. Now, it's time to follow his tutorial to link Ruby on Rails and Android.
(Note: I've almost got Android and Rails talking, but I left my cable at work, so I can't test the last change, meaning my post on it will go up tomorrow when I'm sure it works.)
Beginning here:
Notes:
- There's now a selection in the installer for Td/Tk which has something to do with GUI building in Ruby... more on that later if it becomes important. (spoiler: it doesn't)
- I'm running Vista, so when I start the gem server, I get confirmation dialogues by the dozen. Good times.
- I just installed Ruby for the first time, so I've only got these gems installed: minitest, rake, rdoc, rubygems.
- If you follow the instructions to a T, you'll see the following dialogue noting that sqlite3-ruby has changed names.
- Though, it no longer tells you to add the .dll to your bin folder, I figured it couldn't hurt, so I added the latest dll to my C:\Ruby192\bin folder. I got the latest by going to the download page and selecting the only one I saw.
- I installed rails per the instructions, and I got this sweet error(it says generating docs, so hopefully, this isn't important... :/ ):
- At this point, I would like to note that Rails (or I guess I should say Ruby) scares me. I've just typed a few commands, and some super complex stuff has been taken care of for me (or at least that's what I'm guessing based on what I've read and what I'm seeing happen). This is awesome, exactly what I've always wanted, but it makes me nervous. Didn't someone say something about being careful what you wish for?
And that's it. Gertig's instructions totally worked. Now, it's time to follow his tutorial to link Ruby on Rails and Android.
(Note: I've almost got Android and Rails talking, but I left my cable at work, so I can't test the last change, meaning my post on it will go up tomorrow when I'm sure it works.)
Labels:
android,
beginner,
programming,
rails,
ruby,
ruby on rails
Tuesday, July 26, 2011
Alright, time to get to work.
So, as I usually do, I'm juggling about a million projects. They are as follows:
-learning enough Android programming to make games and a magazine for my Asus Transformer tablet
-creating content for aforementioned magazine (this includes fiction writing, reviews, music, video, games, art, pictures, design, etc.)
-learning Ruby on Rails because it would be useful at work
-picking up new activities (I'm going to try out lacrosse this weekend if all goes as planned)
-moving to minimalist footwear
-and all those things I've mentioned previously...
My plan here, though, is to share my knowledge. And that's just what I'm going to do. So, when I'm not doing one of the above things or getting sucked into episodes of Dr. Who and Torchwood, I'm going to document what I'm doing to accomplish these tasks.
First, a quick tip for would be Android tablet programmers. Tablets are running Android 3.0 (Honeycomb), API level 11 and up. If you're jumping right into Android programming for the first time, you'll probably glaze over the whole API level thing. What you'll miss in doing so is that, if you don't set your MINIMUM API level to 11 or above, you resultant project will not support a tablet's resolution. So, despite having your target at the latest Honeycomb release, you'll get a nifty little app with a view the size of an Android phone, leaving the rest of your monstrous tablet blank.
Alright, back to programming. Hopefully, I'll have some cool info in the near future. Also, I plan on adding links for all the nifty stuff I find in the future (I lost the link that explained the aforementioned tip).
Anyway, if you're reading this, I hope you too are doing something awesome. If so, you should share.
-learning enough Android programming to make games and a magazine for my Asus Transformer tablet
-creating content for aforementioned magazine (this includes fiction writing, reviews, music, video, games, art, pictures, design, etc.)
-learning Ruby on Rails because it would be useful at work
-picking up new activities (I'm going to try out lacrosse this weekend if all goes as planned)
-moving to minimalist footwear
-and all those things I've mentioned previously...
My plan here, though, is to share my knowledge. And that's just what I'm going to do. So, when I'm not doing one of the above things or getting sucked into episodes of Dr. Who and Torchwood, I'm going to document what I'm doing to accomplish these tasks.
First, a quick tip for would be Android tablet programmers. Tablets are running Android 3.0 (Honeycomb), API level 11 and up. If you're jumping right into Android programming for the first time, you'll probably glaze over the whole API level thing. What you'll miss in doing so is that, if you don't set your MINIMUM API level to 11 or above, you resultant project will not support a tablet's resolution. So, despite having your target at the latest Honeycomb release, you'll get a nifty little app with a view the size of an Android phone, leaving the rest of your monstrous tablet blank.
Alright, back to programming. Hopefully, I'll have some cool info in the near future. Also, I plan on adding links for all the nifty stuff I find in the future (I lost the link that explained the aforementioned tip).
Anyway, if you're reading this, I hope you too are doing something awesome. If so, you should share.
Subscribe to:
Posts (Atom)