Flash / AIR: saving, loading and splash screen - actionscript-3

First of all, sorry for poor english :)
I will start by making a few clarifications: I decided to ask three questions together 'cause in my research I only found solutions incompatible with each other or mainly for platforms that I don't need.
Fact: I'm developing a game with Flash CS6. Not for browser, or mobile (not yet, at least) but a desktop game for Windows, Mac and Linux. I'm searching for:
1) I need to save the game progress. Nothing complex, mainly numeric vars. What is the best way to do it (file format, encryption etc)? How I do prevent rough solutions depending on events like cache cleaning etc? Can I choose where to save the files? Is there a difference between an automatic save mode and a manual mode?
2) Consequently, what is the best way to load this data?
3) What is the best way to create a splash screen at game start and at save game loading?
I'm very sorry for noob questions like these but I really can't understand by myself.
Thank u in advance.
ps: I think I'm going to use Zinc to build a standalone application.

For saving data, especially numeric values, you can always use SharedObject class. You can save any data, but works similar to cookies - different browser or computer - no access to the previously saved data, but for desktop game I don't think that is going to be a problem.
http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/net/SharedObject.html
If you decide to use external files, you can use xml files - they are the easiest, at least for me. Just google loading external files, and you'll find easy what you need. You can also try to use JSON format file.
As for the question 3 - I don't really understand what you're asking - best way to creat splash screen - in what way?

Related

Video recording/playback/storage for website

I would like to implement video recording/playback/storage capability for my website. I'm done a bit of research, for HTML5 recording, there is RecordRTC which is based on WebRTC. For playback there's video.js. I want to be able to store them on s3 but I haven't figured out how.
1) Is this the best way to do it without paying for cloud based commercial ones such as ziggeo, nimbb and pipe?
2) are there any alternatives that i should look into?
3) how does storage work after recording using RecordRTC and uploading to s3? Do i need to do any sort of compression?
Any help would be great! Really appreciate it
Video recording is the future of all websites in our eyes - and by our I mean here at Ziggeo (full disclosure, I work at Ziggeo :) ).
In regards to recording there are many ways to do it and it is up to you to go with a specific one or implement all of them, so you could do it through Flash, WebRTC (https://webrtc.org/), or ORTC (https://ortc.org/).
We are currently offering you to record using WebRTC plus fallback with Flash and are working on implementing ORTC as well.
Now as mentioned above, there are many ways to do it and it is up to you, however it is up to your end users also since they might not be able to record over flash due to company policy or your website is on HTTP so you can not use WebRTC, etc.
With your own implementation you need to run the numbers and combine it all together (and work on keeping it up and running), while here at Ziggeo we do that for you and keep improving our SDKs and features.
Further more we also allow you to push the videos to S3 buckets, FTP, YouTube and Facebook - soon to DropBox as well.
So if you are like us, you will probably like to go down the road of do it yourself. If you however want to have time to work on your website, apps, and other things and just have the video, I do suggest using some service.
In regards to compression. It is good to mention that we do transcoding of all videos that are uploaded to our servers (You can see more here: https://ziggeo.com/features/transcoding). There is an original video that is kept and next to it the transcoded video (which can have watermark or some effects, etc. while it does not need to).
In general you want to 'standardize' the uploaded videos since different browsers will give you different video data containers and this would give you the upper hand so that it is easier to make adjustments to them later on for preview depending on the browser that is used.
To summarize:
1) - This depends on what kind of recording/playback and storage you need. If it is professional then using a service such as Ziggeo will help you focus on the important part of your service - like website design, functionality and similar, while if it is for fun and play you still have a free plan on Ziggeo, or you could get your sleeves up and do some codding :)
2) - I would personally look into WebRTC and ORTC if I was making implementation myself to see which one I would need more (or would be easier for me to implement). Once you find the one that you like, they usually offer some suggestions on their forums with what works best for them. (Be prepared however to need flash implementation at some point as well if it is business related setup)
3) It is best to standardize what you store in terms of resolution, video data containers and similar and often it is good to keep the original videos as well, so that you can always re-encode them if that is needed (which can happen in early stages of development).

What is allowed in in-app purchases

I would like to have some info about apple's in-app purchases option.
I can't seem to find any place where they are explaining what is actually allowed. Becaus i wanted to make a digital bookstore with interactive books in asctionscript and offer the user interactive books (seperate swf files) via in-app purchases but apparently it is not allowed to have any code in your swf file, so that option is out of the window (btw if anyone knows of another option instead of swf files, please let me know).
Then have have thought of maybe starting in cocos2d but again i have no idea how i would distribute separate interactive books to the users. What are the options here?
So my questions are: what is allowed with in-app purchase, how can i offer interactive books (with posibility to click on elements and view animations etc) through in-app purchases.
And secondly and more important:
Would it be possible to do it via as3.0? Preferably i would like to do it through actionscript but can anyone tell me if its possible? Can i offer the user interactive books with elements that are pressable and animations etc through in-app purchases? And having all the books inside the application and unlocking them is not an option. I want to be able to provide books separatly.
Definitely on the right track,
I think if you are looking to do an animated books series or something that's more interactive that a simple text format you should be fine using In-App Purchases for this. You'll only get in trouble if you're duplicating something iBooks can already provide.
You'll need an ANE to give you access to the InApp Purchases API from AS3, there are a few out there and I'll shamelessly plug mine:
http://distriqt.com/native-extensions#in-app-purchase
The major problem you'll have is actually distributing the additional content, as you may not be able to load in a swf and play it in a compiled iOS AIR application as you would a normal flash/AIR application. You'll have to do some research and see if you can create a player that just loads images and animation sequences (in xml or other).
Good luck
1) You can't play swf files on the iPhone. Not without converting them to HTML5 or video. Which probably makes them non-interactive (not sure about HTML5).
2) Downloading any executable code to an iOS device is out of the question. There are some gray areas, for example downloaded Lua scripts which only contain data but due to their nature are executable code. It's a risk to do something like that, instead of just downloading XML or pure text/binary files.
3) Apple never tells you exactly what is allowed. They tell you what is not allowed, and even there they remain vague. There are always some gray areas and Apple reserves the right to define whether something in the grey area is acceptable to them or not. If you think your app is in the gray area, you need to have a backup plan in case Apple won't like it, or removes the app because they didn't initially find something wrong with it but later changed their mind.
4) Read the iOS Developer Program License Agreement and the App Store Review Guidelines. You may need to re-read some sentences because it's somewhat lawyer speak, though not really that hard to understand.
5) There are no guarantees. Best option: look at apps like yours and see if you can find your payment model implemented by other apps. If you find several such apps, it's most likely ok to do that. If you can't find any app that does something even remotely like you want to do it, beware.
6) I think you're on the wrong path. Use iBooks. Problem solved.

Whether to write an app in xCode or make it a webApp in PHP/mySQL

I have developed an iOS app that uses CoreData/SQLite. It works, but now I have to populate it with data.
I am wondering what the best method would be. As you can see from the title of this post, I am thinking of these two options, but maybe there is another way.
I'm not sure whether I will have multiple people entering data (that would be great), so that is a consideration..
I welcome advice.
How about a mix of both? you can upload the data to a webserver ( depending on what you want to do with it ). Offer people to have a web app for home and an iphone app for when th ey are on the go. The data they add can be stored locally so they don't need any internet when abroad, which makes the app useable on the ipod touch
Native is (almost) always better than web-only. A server is extra overhead; a mix might simplify that a bit. And in most cases, even if your server goes down hopefully users can still use the app with what data they've already downloaded.

Read EXIF online without need to upload photos

I have an HTML5 site. I want to do following thing:
Walk through files in a folder
Find all images
Get exif file from images
Analyze an exifs (on server)
Correct bad exifs
This is a best scenario, that it can be. I am conscious that 1st and 2second step is possibly done only by selecting this files by user. And 5th step is possible only when the analysis will be done at user's machine. So what is the best way to do it (to get closer as much to the optimal scenario)? What should I use without need to force a user to install anything?
EDIT:
At least I have used free GeckoFX web browser as a basic desktop app. Interface is created in HTML+JS Thx all
You would need to create an application that runs on the computer of the user. You can't create an HTML5 site that does this.
A Chrome HTML5 webapp should be able to do this.
I'm actually looking at this in these days.
Here is a NOT WORKING example ( due to old API specs, I think)
http://benno.id.au/blog/2009/12/30/html5-fileapi-jpegmeta
But should at least give some good insights.
You should use ExifTool.
It is available as a Perl library here:
http://www.sno.phy.queensu.ca/~phil/exiftool/ExifTool.html
And also as a command-line tool which can be ran by the server (same site).

Browser, upload large file

I'm looking for a way to allow a user to upload a large file (~1gb) to my unix server using a web page and browser.
There are a lot of examples that illustrate how to do this with a traditional post request, however this doesn't seem like a good idea when the file is this large.
I'm looking for recommendations on the best approach.
Bonus points if the method includes a way of providing progress information to the user.
For now security is not a major concern, as most users who will be using the service can be trusted. We can also assume that the connection between client and host will not be interrupted (or if it is they have to start over).
We can also assume the user is running a browser of supporting most modern features (JavaScript, Flash, etc)
edit
No language requirements. Just looking for the best solution.
There are several ways to handle this,
1. Flash Uploader
Theres plenty of flash uploaders to improve the users GUI so that they can examine the process and the process factors such as time left, KB Done etc.
This is very good if you understand how to improve Flash source code for later developments.
2. Ajax
Theres a few ways using Ajax and PHP (although PHP Does not support it) you can use Perl module to accomplish the same thing http://pecl.php.net/package/uploadprogress, This is only if you wish to show percentage information etc.
3 Basic Javascript.
This method would be just the regular form, but with some ajax styling so when the form is submitted you can show a basic loader saying please wait while you send us the file...
If your using asp, you can take a look at: http://neatupload.codeplex.com/
Hope theres some good information to get you on your way.
Regards
Not sure about your language requirements, but you can look e.g. into
http://pypi.python.org/pypi/gp.fileupload/
Supports progress information also, btw.
I have used the dojo FileUploader widget to reliably upload audio files greater than a gigabyte with a progress bar. Though you said security was not an issue, I'd like to say that I got HTTPS uploads w/cookie based authentication hooked up flawlessly.
See: http://www.sitepen.com/blog/2008/09/02/the-dojo-toolkit-multi-file-uploader/ and
http://api.dojotoolkit.org/jsdoc/1.3/dojox.form.FileUploader