Page 1 of 1

Extensions: Flash Integration

Posted: Fri Jul 07, 2006 9:50 pm
by Omnidon
Relevant to BRPG version: 1.7c

Note that any .swf is a Flash file.
It is now possible to place Flash files as Figures and Objects, and flash support for other features is hopefully coming soon.
However, the dynamic qualities discussed in this summary will require deeper integration with the BRPG engine.
  • What is Flash?
    Flash is a coding platform used predominantly in webpages to bring lightweight, dynamic graphical applications quickly and easily to everyone who has installed the plugin on their computer.

    Flash is used for everything from annoying ad banners to entertaining games on sites like Flash is the platform used on media streaming sites like to display their videos.

    Adobe Flash Pro is the primary commercial tool used to create Flash applications.

    Adobe Director is used to code BRPG, so the platforms are highly compatible.
  • What does this mean?
    A flash application can be nearly anything. It could be a simple animation or a button that plays a sound. It could be an MP3 player, dice roller, or character sheet. The possibilities are nearly endless.

    The ability to have these flash applications communicate with BRPG would mean that advanced users could make custom third-party extensions for BRPG. Community extensions are a great way to quickly build up the feature list of an application without putting too much strain on the developer.
  • How would we use extensions?
    In most cases, the average user would simply load the Flash application into BRPG and let the software handle the rest.

    Any additional setup would depend on the complexity and design of the extension.

    Downloading and using flash extensions created by others will require no programming knowledge.
  • Can I create my own Flash extension? (Advanced Users)
    Once this feature is added, an application programming interface (API) will be released so that anyone who has some skill with Flash will be able to create an extension.

    An API is basically a list of various functions and variables used by BRPG to communicate with Flash.

    You can find my summary of the proposed API here:
    Extensions: Programming Interface
  • Is Flash free?
    The Flash Player used to play flash applications is free and already included in BRPG.

    Some third-party developers may charge a commission for the extensions they create, but many will be free.

    If you are interested in becoming a Flash developer (Advanced Users), I should warn you that the official development tools are very expensive. The average user is not expected to make extensions, although there are some free coding options available.

    The official tools make it very easy to create fancy animations and basic scripts. These programming tools (also known as IDEs) from Adobe include "Flash Pro" and "Flash Builder".

    Flash Pro is based around a graphical environment similar to Photoshop and allows developers to tie scripts to graphics quickly and easily, and is very popular for creating animations such as cartoons and games.

    "Flash Builder" is more of a traditional compiler. It has a very powerful code view that is integrated with the actionscript manual, and supports a design view that allows the creation of complex forms quickly and easily using a drag & drop interface similar to MSWord.
    NOTE: Many features in Flash Builder are not supported by the version of the Director platform on which BRPG is currently running.

    Both IDEs have access to the same features, but Flash Pro is better suited to creating animations while Flash Builder is better suited to creating forms and complex user interfaces.

    However, if you code purely in ActionScript, you will not need either of the tools. ActionScript has all the capabilities used by the IDEs and can be compiled for free and used in BRPG without paying a dime to adobe. You will just need the free actionscript compiler available from Adobe. There are also a few free third party compilers available.

    I'll post links and tips here for these tools once Flash extensions are fully supported by BRPG.
  • Adobe AIR
    Since flash extensions for BRPG were first discussed, Adobe has released a new flash platform called Adobe Integrated Runtime (AIR), which is a desktop application version of flash; a platform that allows specially-designed flash applications to potentially tap into all the power of the operating system like normal desktop apps.

    It is worth mentioning that an AIR application could be designed to communicate with Flash extensions in BRPG to put even more power at your fingertips and potentially overcome some of the shortcomings in BRPG's platform (such as the 2MB limit).
  • Flash Webpages
    "I have a flash application built-in to my webpage. Will it work in BRPG?"

    That depends whether it is simply contained within the webpage or actually interacts with scripts on your server. Dynamic Flash applications designed for webpages probably won't work from within BRPG without tweaking.
  • 2 MB Transfer Limit
    Flash-based graphics are quite small, since they are defined by vectors instead of bitmaps. Thus most flash applications will be unaffected by this limitation.
    The exception would be a large resource used in the application, such as a big MP3 or video file. These would have to be hosted on a web server until a better workaround is found.
    (As hinted at above, an Adobe AIR application could potentially be used to get around the 2MB limit in BRPG.)
  • Extension Manager
    Simply placing a flash application on the map as a unit would work well in many cases, but some extensions, such as die rollers and character sheets, would require complicated interfaces and/or would need to be easily accessible at any time (not tied to an encounter).

    To deal with this, BRPG would need some way of managing and loading these extensions automatically so they do not need to be set up every session.

    Ideally, BRPG could be configured to add extensions as interface elements or grant them their own panels. That feature in itself could be a flash application - a sort of master extension that manages the other flash extensions. That could, for example, be built into the Flash menubar I suggested elsewhere.

    A less desirable but simpler alternative to an extension manager would be the ability to load flash applications directly into a tab when the Tabbed Encounters feature is implemented.
  • Custom BRPG Interface
    In case I didn't make myself clear, I will reiterate that the primary strength of Flash would be its ability to communicate with BRPG.

    Imagine creating your own interface, with your own panel graphics and colors.
    Imagine a custom die roller, card deck feature, or turn sequencer tailored specifically to your gaming system.

    These are the sorts of things possible if flash extensions can access BRPG's core features. Probably more than half the features on your wish list could be added in the form of Flash extensions.
  • Potential Uses
    Below is a list of potential uses for Flash in BRPG that have been suggested so far.
    (Far from all of the possibilities are listed. Feel free to make more suggestions.)
    1. Character Animations
    2. Status Effects
    3. Visual Effects (Explosions, Waterfalls, etc)
    4. Sound Effects (Explosions, Waterfalls, etc)
    5. Movies
    6. Web Links
    7. In-game Event Triggers
    8. Interactive Movies / Event Dialogues
    9. Background Music
    10. Interactive Maps (Chests & doors could open & close when clicked)
    11. Special Grid Effects (Numbers, Notes, etc)
    12. Play MIDI files
    13. Web Page Content
    14. Galleries / Content Management
    15. Minigames
    16. MP3 Player
    17. Character Sheets
    18. Dice Automation / Macros
    19. Custom Chat Console
    20. Custom Turn Sequencer
    21. Custom Die Roller
    22. Custom Unit Manager
    23. Custom Interface Elements (ex. Menubar)
    24. Day / Night Adjustments in Real-time
    25. Game Logging / Playback
    26. and much, much more!

Posted: Sat Jul 08, 2006 6:15 pm
by Kepli
This is another funtionality that is not needed, but adds a load of cool possiblities to BRPG. I voted for creating and using flash.

Posted: Sun Jul 09, 2006 4:43 am
by micedwards
This would be neat! A flash card deck for board games or those role play games that use decks would be neat. That way everyone would be sharing the same deck. Good for board games like Talisman or Memoir 44 too!

Posted: Mon Jul 17, 2006 11:18 am
by lupha
Or animated water! and waving trees :D <drool>

-- July 28 -- Thread Split after this point by Omni --

Posted: Thu Aug 03, 2006 12:49 pm
by heruca
For any of you Flash coders, here's a simple primer on various methods to get Flash to communicate with Director.

Posted: Thu Nov 30, 2006 5:00 am
by Omnidon

Completely rewritten to reflect some new ideas.

Re: Extensions: Flash Integration

Posted: Thu Nov 30, 2006 10:21 am
by Full Bleed
Quite simply, Flash Extension Integration has so many possibilites that I can't see how someone can deny that this would be a very cool addition to the program. I do wonder what kind of development would be necessary to implement it properly though.

-- Nov 30 -- Thread Split after this point by Omni --

Re: Extensions: Flash Integration

Posted: Thu Nov 30, 2006 11:15 am
by Omnidon
Full Bleed wrote:I do wonder what kind of development would be necessary to implement it properly though.
I will soon be writing a list of all the variables and functions that I think Flash extensions should have access to in the API.

To get a basic technical understanding of how Flash can communicate with BRPG, read the excellent article that heruca found.

Posted: Sat Aug 04, 2007 4:58 am
by Omnidon
Updated for v1.08a

API summary is posted:

Posted: Mon Apr 05, 2010 5:35 pm
by Monk
One more vote for extensions. Personally I think it is needed. To allow others to make use of Battlegrounds programmically re-vitalizes the software with each new addition especially in ways never thought of before.

Posted: Thu Jul 21, 2011 1:29 pm
by Omnidon
Updated slightly for clarity, accuracy, and new developments from Adobe.

Relevant to BRPG v1.7c

Posted: Wed Feb 01, 2012 5:43 pm
by Tragic
This is a bad idea. Flash is a dead technology, that is slowly getting phased out. The war between Apple and Adobe was well and truly won by Apple.

HTML5 is what you want to use and will be functional on desktop mobile and pads for ever.

Google as a demo ported quake to HTML5.

Posted: Thu Feb 02, 2012 5:04 pm
by heruca
Moot point. I don't see Adobe Director supporting HTML5 anytime soon, if ever.

Posted: Mon Feb 06, 2012 1:27 pm
by Omnidon
Tragic wrote:Flash is a dead technology
Not true.
Apple's software policies make Microsoft look angelic. No one who defends Apple can possibly complain about Flash being proprietary, and many people are buying non-apple devices just to get Flash support.
Flash currently supports a huge number of features that HTML5 does not, and Adobe has wisely expanded Flash applications into the desktop market (via AIR).

While it is certainly possible that something like HTML5 will eventually catch up to Flash (and I strongly encourage it to do so, public domain is great), it will be quite a while before that happens, and by then BRPG will certainly be obsolete.

Besides, the question here is whether Flash will be able to make good extensions for BRPG, and the answer is yes. There are many Flash developers out there, and that will remain true even if Flash loses its stranglehold over the internet market.
heruca wrote:Moot point. I don't see Adobe Director supporting HTML5 anytime soon, if ever.
And yes, the main reason I suggested Flash as the platform for extensions was the fact that it would integrate easily with BRPG.

Posted: Fri Oct 19, 2012 4:02 pm
by Zearthling
Ok, I cast my opinion that I will create and use flash. I would like to use Hollywood on Amiga OS to create my flash however...
Hey Now! Don't call me a Traitor! Amiga is the Original Gangster!! WE ALL KNOW THIS!

Hollywood (or also its plugin Hollywood Designer), runs its programs in a sandbox, so NO CRASH is possible! Sure I will not be able to tap the API functions of the host OS with Hollywood (Amiga ONE OS 4.1), but it has a great cross-compiler and will make stand alone scripts for Windows /or Mac OS just fine fine! :lol:
It has all the functionality of features like, WYSIWYG interfacing, make 2D graphics, sound, file system operations, text output, animations, sprites... and QUITE a few more. Just not what you use for 3d graphics... but I don't see me wanting to do any 3d animations or the like for digital board games... 2.5D at most maybe? :roll:

Posted: Sat Oct 20, 2012 11:14 pm
by Omnidon
Doesn't matter to me what OS you use as long as we get more support for flash integration. ;-)

Any computer that can run BRPG can also run flash extensions, as Director has a built-in flash player. Mind you, the version of Flash currently supported by BRPG is fairly outdated, although you could make use of some of the newer Flash features by combining it with an Adobe AIR application that communicates with the extensions. That's what I'm planning to do to create some of the extensions I mentioned.