Thread Tools Display Modes
03-03-10, 10:14 AM   #1
neo2121
A Defias Bandit
Join Date: Mar 2010
Posts: 3
Send images through WoW idea (Binary to Text)

I've been throwing around this idea for a while and finally decided to post it.

I'm wondering if it's feasible to design an addon that sends files through wow by encoding them to text and broadcasting them to other users. Here's a little more info:

Encoding Binary to text
- first some background on this: http://en.wikipedia.org/wiki/Binary-to-text_encoding
- there are hundreds of ways to do this but I was thinking of something along the lines of basE91 (http://base91.sourceforge.net/)
- basicly it's all about turning normal files into ASCII (normal text) that you can even type into the chatbox (as a crude example) for anyone to decode on the other end
- the encoding part wouldn't necessarily need to be done inside the game if it's too tricky, you could just do it before-hand (using a separate program) and store the results in txt files ready to copy-paste or read with the addon.
- most of these algorithms produce a medium amount of data for images, so a smily-sized color gif file would be 10-20 lines of text which is totally manageable bandwidth-wise

Sending
- there are loads of libs for sending data between addons so it's no real problem there

Decoding
- after receiving the data from someone the addon would then have to decode it back into binary and interpret it as an image to display
- another (even more complicated) possibility would be to interpret the data and draw it up pixel by pixel in the interface (similar to some of those whiteboard-ish addons I've seen for drawing tactics for raids)


I'm not really versed in LUA or the wow interface so I'm curious to see if you guys actually think it can be done on any level. I'm certain it can be at least facilitated (like sending the data using the addon and having an external program encode-decode etc.), but curious to see how much of it can be done inside the wow client and if anyone else would be interested in it.

There's a pretty nifty java encoder-decoder on the basE91 sourceforge site you can use to mess around, if you send the text through whatever means (messenger, wow whatever) and paste it in a txt file on the other side you should be able to decode it back into the original file.
  Reply With Quote
03-03-10, 10:58 AM   #2
Chibi
A Cyclonian
 
Chibi's Avatar
AddOn Author - Click to view addons
Join Date: Jul 2005
Posts: 43
I worked on this back in classic (back before addon channels and everything) it's definitely doable, but not really all that practical. The Only real issue is coming up with a transfer control scheme, so the sender/recipient know how large/where you are in the bit stream. It also needs to be throttled in some way so you don't hit the floor limit and d/c yourself or the recipient, which makes it take longer. And because it's binary data being ascii-armored, you're sending a larger amount of data than the original file was in the first place. And yes, if you want to actually send a file, it's going to need a base-X converter on each end as an external program to parse the saved variables folder and turn things back and forth. If you want it to send strictly pictures instead of arbitrary binary data, you might be better off coming up with or reimplementing a graphics format that you can stick into a library or something that can render the images in game, without external conversion.
__________________
Perhaps...
  Reply With Quote
03-03-10, 10:59 AM   #3
Dridzt
A Pyroguard Emberseer
 
Dridzt's Avatar
AddOn Author - Click to view addons
Join Date: Nov 2005
Posts: 1,360
It is doable but it is not a good idea.

Depending what the ultimate goal is, it would be better to distribute some "art packs" (or whatever you want to call it) to users so they have the images locally and if any inter-addon communication is needed it should only be to transmit which image to display.

The end result would be the same from the user perspective.

WoW cannot read new files while it is running so there is no way to - for example - send a screenshot to another user.
  Reply With Quote
03-03-10, 11:01 AM   #4
Chibi
A Cyclonian
 
Chibi's Avatar
AddOn Author - Click to view addons
Join Date: Jul 2005
Posts: 43
Originally Posted by Dridzt View Post
WoW cannot read new files while it is running so there is no way to - for example - send a screenshot to another user.
Not a live screenshot at least, you'd have to take it, log out, run the converter, have it inject the information into the saved variables table, log back in, and then send it. Which seems a heck of a lot more complicated than "make a bookmarklette for uploading to some image-or-file-hosting site"
__________________
Perhaps...
  Reply With Quote
03-03-10, 11:04 AM   #5
Shadowed
...
Premium Member
Featured
Join Date: Feb 2006
Posts: 387
You could always have people upload it to a website and spit out the encoding and have them copy it in game, but it's not really realistic.
  Reply With Quote
03-03-10, 12:58 PM   #6
neo2121
A Defias Bandit
Join Date: Mar 2010
Posts: 3
Apreciate the feedback guys. Mostly confirmed what i suspected bout the idea, still think it's doable for fun anyway. Gonna keep researching
  Reply With Quote
03-03-10, 01:04 PM   #7
nightcracker
A Molten Giant
 
nightcracker's Avatar
AddOn Author - Click to view addons
Join Date: Sep 2009
Posts: 716
Pixel by pixel creating frames is inefficient, but doable. You need to have as an encoder a website. Period. And for a decoder, you need to decode the image into an array containing the bitmap. As soon as you got the idea/standards for that system some people with Lua knowledge can help you.
__________________
Three things are certain,
Death, taxes and site not found,
You, victim of one.
  Reply With Quote

WoWInterface » AddOns, Compilations, Macros » AddOn Search/Requests » Send images through WoW idea (Binary to Text)


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off