Log Message:
Library to deal with Avatars (import/export/draw)
Also, I've done a lot of things with Frame.js, but I was curious about graphic.js. How are the two libraries different? Are their particular use cases where one is preferred over the other?
Re: exec/load/avatar_lib.js
By: rswindell to CVS commit on Mon Jan 08 2018 04:35 am
Log Message:
Library to deal with Avatars (import/export/draw)
Just curious: Where is this headed? Sounds pretty cool.
Also, I've done a lot of things with Frame.js, but I was curious about graphic.js. How are the two libraries different? Are their particular use cases where one is preferred over the other?
Just curious: Where is this headed? Sounds pretty cool.
So... you know how social media and web-boards have icons/avatars associated with the users and display them next to their activity (e.g. posted messages) - well, we're doing the same. And we could use your help, being all ANSi-artistic and all. :-0
Right now, the requirements are an update of exec and exec/load (mainly the new files avatar*.js, sauce_lib.js, showmsghdr.js, the changes to graphic.js, but it be a good idea to update everything *.js just in case).
And then:
1.
Create (or edit) the file text/menu/msghdr.asc to look like this: @exec:showmsghdr@ <- but in uppercase
<blank-line>
This will execute showmsghdr.js for every message displayed. The result should look identical to before (without the file msghdr.asc).
Re: exec/load/avatar_lib.js
By: Digital Man to Kirkman on Tue Jan 09 2018 02:50 pm
Just curious: Where is this headed? Sounds pretty cool.
So... you know how social media and web-boards have icons/avatars associated with the users and display them next to their activity (e.g. posted messages) - well, we're doing the same. And we could use your help, being all ANSi-artistic and all. :-0
Right now, the requirements are an update of exec and exec/load (mainly the new files avatar*.js, sauce_lib.js, showmsghdr.js, the changes to graphic.js, but it be a good idea to update everything *.js just in case).
And then:
1.
Create (or edit) the file text/menu/msghdr.asc to look like this: @exec:showmsghdr@ <- but in uppercase
<blank-line>
This will execute showmsghdr.js for every message displayed. The result should look identical to before (without the file msghdr.asc).
How big would these avatars be? Seems to me ANSI is fairly low-resolution for graphic icons/images and such and would probably need to be relatively big to show something that looks good. Unless the idea is to have a small & fairly simple avatar?
So... you know how social media and web-boards have icons/avatars associated with the users and display them next to their activity (e.g. posted messages) - well, we're doing the same. And we could use your help, being all ANSi-artistic and all. :-0
If you're using Pablodraw, and I know you're aware of the save to .bin bug where it loses the last line of text. Just beware: add one extra row before you save or when the file is loaded, the last line will be missing.
Echicken and I are working on a set of "stock" avatars organized into topical .bin files (to be placed in text/avatars). But we could use more. A lot more. And he'll be making an Avatar chooser/editor app which will then be available to terminal server (BBS) users (and maybe a web app too?).
I could see these Avatars potentially being used in doorgames, chat, instant-messages - anywhere you see user activity. And artistic users (and sysops) will not be limited to any stock/shared avatars, but will be free to create and use their own.
Only problem message-wise is external editors. I love Nightfox's SlyEdit, but I imagine he would have to add support for this, right?
Re: exec/load/avatar_lib.js
By: Digital Man to Kirkman on Tue Jan 09 2018 02:50 pm
So... you know how social media and web-boards have icons/avatars associated with the users and display them next to their activity (e.g. posted messages) - well, we're doing the same. And we could use your help, being all ANSi-artistic and all. :-0
Awesome idea!
I'm okay, but the Blocktronics guys are brilliant. Enzo did like 100
avatars for players and NPCs in Shooter Jennings' "Freedom Train." Check them out here:
http://pc.textmod.es/pack/blocktronics_baud_dudes/luciano-freedom%20train%20 taa rs.xb
His avatars are bigger than 10x6, but they also include shoulders and empty space around the heads. If you crop to just the head, they mostly will fit in 10x6.
If you're using Pablodraw, and I know you're aware of the save to .bin bug where it loses the last line of text. Just beware: add one extra row before you save or when the file is loaded, the last line will be missing.
Yes, that bug is the bane of my existence. I create a lot of BINs for use with my games and ANSI door experiments. I reported it ages ago, but now that he's open-sourced it and put it on GitHub, I ought to create a ticket.
Echicken and I are working on a set of "stock" avatars organized into topical .bin files (to be placed in text/avatars). But we could use more. A lot more. And he'll be making an Avatar chooser/editor app which will then be available to terminal server (BBS) users (and maybe a web app too?).
Awesome. Can't wait to see the chooser/editor. I set everything up today according to your instructions, and it's working great. I have an avatar now, and I can see your avatar.
I could see these Avatars potentially being used in doorgames, chat, instant-messages - anywhere you see user activity. And artistic users (and sysops) will not be limited to any stock/shared avatars, but will be free to create and use their own.
Sysops could also incorporate them into their BBS command shells or whatever. Would be really cool.
Only problem message-wise is external editors. I love Nightfox's SlyEdit, but I imagine he would have to add support for this, right?
Re: exec/load/avatar_lib.js
By: Kirkman to Digital Man on Tue Jan 09 2018 11:01 pm
Definitely cool (if you want heads). Not sure about outright stealing the art though. What's the mood on that these days?
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄúúúú
³ Subj: exec/load/avatar_lib.js °° ÜÜÜÜ °°
³ Attr: Replied °ÜÛÜÜÜÜÛÜ°
³ To : rswindell °ÞÛßÛÛßÛÝ°
³ From: Kirkman (GUARDIAN) °ÛÛÛÝÛÛÛÛ°
³ Date: Tue Jan 09 2018 10:02 am CST (13.1 hours ago) ° ÛßßßßÛ ° ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄúúúúúú °° ßÛÛß °°
I'm okay, but the Blocktronics guys are brilliant. Enzo did like 100 avatars for players and NPCs in Shooter Jennings' "Freedom Train." Check them out here:
http://pc.textmod.es/pack/blocktronics_baud_dudes/luciano-freedom%20train% 20taa rs.xb
Echicken and I are working on a set of "stock" avatars organized
into topical .bin files (to be placed in text/avatars). But we could
use more. A lot more. And he'll be making an Avatar chooser/editor
app which will then be available to terminal server (BBS) users (and
maybe a web app too?).
.............................
. Subj: exec/load/avatar_lib.js .. ....
.. . Attr: Replied
.......... . To : rswindell
.......... . From: Kirkman (GUARDIAN)
.......... . Date: Tue Jan 09 2018 10:02 am CST (13.1 hours ago)
. ...... . ......................................................
.. .... ..
That is awsome, simply awsome.
I don't know what the .bin file format is. I have seen it in some of the JS externals but I have never created one myself. Is it possible to create a .bin file from a .ans file?
Cannot wait to See them ROB, I wish someone would create a bunch of ICON files in bin format for the icon shell.. I would like to create a seperate
Only problem message-wise is external editors. I love Nightfox's SlyEdit, but I imagine he would have to add support for this, right?
I don't know what the .bin file format is. I have seen it in some of the JS externals but I have never created one myself. Is it possible to create a .bin file from a .ans file?
Nightfox has a custom message viewer module too, which he'll need to update to support Avatars (if he wants to).
Re: exec/load/avatar_lib.js
By: Al to Digital Man on Wed Jan 10 2018 03:27:40
I don't know what the .bin file format is. I have seen it in some of the JS externals but I have never created one myself. Is it possible to create a .bin file from a .ans file?
One easy way to do it would be to open a .ans in an editor (PabloDraw) and then save it as a Binary (.bin) type file.
Re: exec/load/avatar_lib.js
By: Al to Digital Man on Wed Jan 10 2018 03:27 am
I don't know what the .bin file format is. I have seen it in some of the JS externals but I have never created one myself. Is it possible to create a .bin file from a .ans file?
I've heard of the .bin file format too. I'm also wondering what the .bin format is, and what benefits it has over .ans etc..
Re: exec/load/avatar_lib.js
By: Digital Man to Kirkman on Tue Jan 09 2018 09:14 pm
Nightfox has a custom message viewer module too, which he'll need to update to support Avatars (if he wants to).
It's something I'd like to do. Starting fairly soon I just might not have much time to work on such things though. :/
The .bin format (long supported by TheDraw and other MS-DOS text "graphics" tools) is very closely tied to how IBM CGA worked.
It's benefits over .ans files are that there are no terminal escape sequences (e.g. cursor positioning, screen-clearing) or relative colors (the new color is whatever the previous color was, but now with high intensity) in the file. So the characters and colors can be drawn with more precision and (if smaller than the screen size) drawn somewhere other than x/y:1/1 and have more assurance things will appear as intended.
Traditional/original .bin files could contain *any* character and the glyph for that character would be displayed rather than the corresponding terminal control character (e.g. ASCII 13 in a character cell would print the musc 8th node glyth rather than perform a carriage-return).
It's something I'd like to do. Starting fairly soon I just might not
have much time to work on such things though. :/
Ah. :-( Well hopefully avatar_lib.js and the like make it a pretty easy thing to add.
Re: exec/load/avatar_lib.js
By: Digital Man to Nightfox on Wed Jan 10 2018 10:19 am
It's something I'd like to do. Starting fairly soon I just might not
have much time to work on such things though. :/
Ah. :-( Well hopefully avatar_lib.js and the like make it a pretty easy thing to add.
I'm curious to have a look and see how to implement it.
Re: exec/load/avatar_lib.js
By: Kirkman to Digital Man on Tue Jan 09 2018 11:01 pm
Definitely cool (if you want heads). Not sure about outright stealing the art though. What's the mood on that these days?
Yeah, still frowned on if you don’t ask permission. But looking at a master’s work can inspire you to make your own cool stuff.
—Josh
Cannot wait to See them ROB, I wish someone would create a bunch of
ICON files in bin format for the icon shell.. I would like to create a
seperate
Is there an 'icon shell'? I remember writing a (bad) one as an example for somebody several years ago, but I certainly hope nobody is using it.
Is there an 'icon shell'? I remember writing a (bad) one as an
example for somebody several years ago, but I certainly hope nobody
is using it.
I'm going to revamp it, create some bin files for icons, and use it..
I like the concept.
Log Message:
Library to deal with Avatars (import/export/draw)
Just curious: Where is this headed? Sounds pretty cool.
I'm glad you asked! :-)
So... you know how social media and web-boards have icons/avatars associated with the users and display them next to their activity (e.g. posted messages) - well, we're doing the same. And we could use your help, being all ANSi-artistic and all. :-0
Right now, the requirements are an update of exec and exec/load (mainly the new files avatar*.js, sauce_lib.js, showmsghdr.js, the changes to graphic.js, but it be a good idea to update everything *.js just in case).
And then:
1.
Create (or edit) the file text/menu/msghdr.asc to look like this: @exec:showmsghdr@ <- but in uppercase
<blank-line>
This will execute showmsghdr.js for every message displayed. The result should look identical to before (without the file msghdr.asc).
2.
Import an avatar into your user account. An avatar is a 10x6 text-mode "graphic" (in .bin format usually). iCE color support is being considered (they are supported in SyncTERM 1.0), but currently the blink attribute bit is just being masked-off during display (blinking Avatars would likely be annoying).
You can import an avatar from a file into a user account using jsexec: jsexec avatars.js import=<usernum> -file=/path/to/avatars.bin -offset=<n>
Where <usernum> is the user's account number (on your BBS) and <n> is the (optional) record offset (0, being the first record) into the .bin file, so you can have multiple 10x6 avatars in a single .bin file and select which one to import for a user (each user can only have one).
Now when users on your BBS view your posetd messages, they should see your avatar. If you change your avatar, old messages will show the new/updated avatar. If you delete your avatar, none will be displayed, even for old messages.
3.
If you post on message networks (like this one), for others to see your avatar on your posted messages, you'll need to run (e.g. as a daily event or just manually, e.g. using jsexec):
avatars.js export=<syncdata> -users
Where <syncdata> is the correct internal-code for the SYNCDATA sub-board on your BBS (e.g. "dove-syncdata").
4.
Likewise, if you want to see other networked-users avatars, you'll need to run the following command (e.g. as a daily event);
avatars.js import=<syncdata>
Now this is getting fun.
5.
If you want to share avatar libraries (.bin files) with other BBSes on the network, you can use the following command:
avatars.js export=<syncdata> -file=/path/to/avatars.bin
Shared avatars files must be in BIN format with a valid SAUCE record, 10 columns in width, and the data length (excluding SAUCE data) must be evenly divisible by 120 bytes (10 x 6 x 2).
If you're using Pablodraw, and I know you're aware of the save to .bin bug where it loses the last line of text. Just beware: add one extra row before you save or when the file is loaded, the last line will be missing.
Shared files will be imported (using "avatars.js import=<syncdata>") into data/qnet/<qwk-id>.filename and if they are valid avatar library formta, will be copied to text/avatars/<qwk-id>.filename.bin where ultimately (not yet) will be browseable/selectable by users as their personal avatar.
Echicken and I are working on a set of "stock" avatars organized into topical .bin files (to be placed in text/avatars). But we could use more. A lot more. And he'll be making an Avatar chooser/editor app which will then be available to terminal server (BBS) users (and maybe a web app too?).
I could see these Avatars potentially being used in doorgames, chat, instant-messages - anywhere you see user activity. And artistic users (and sysops) will not be limited to any stock/shared avatars, but will be free to create and use their own.
And this should all work with SBBS v3.16 too. So far, all the important changes have been solely in JS. I'm not sure about v3.15 compatibility, but maybe.
Also, I've done a lot of things with Frame.js, but I was curious about graphic.js. How are the two libraries different? Are their particular use cases where one is preferred over the other?
I'm just more familiar with graphic.js. <shrug> I guess it and frame.js have overlapping functionality. Since showmsghdr.js is executed now for each and every message displayed, I want to keep the overhead low, so I'll probably continue to use graphic.js or possibly even something simplier, to make the message header display time as fast as possible.
I don't know what the .bin file format is. I have seen it in some of
the JS externals but I have never created one myself. Is it possible
to create a .bin file from a .ans file?
I've heard of the .bin file format too. I'm also wondering what the
.bin format is, and what benefits it has over .ans etc..
Definitely cool (if you want heads). Not sure about outright stealingthe
art though. What's the mood on that these days?
Yeah, still frowned on if you don’t ask permission. But looking at a
master’s work can inspire you to make your own cool stuff.
—Josh
your client is throwing in funny characters.
It's something I'd like to do. Starting fairly soon I just might
not have much time to work on such things though. :/
Ah. :-( Well hopefully avatar_lib.js and the like make it a pretty
easy thing to add.
I'm curious to have a look and see how to implement it.
Take a look at exec/showmsghdr.js too (it's new). It uses avatar_lib.js.
Re: exec/load/avatar_lib.js
By: Digital Man to Nightfox on Wed Jan 10 2018 12:59 pm
It's something I'd like to do. Starting fairly soon I just might
not have much time to work on such things though. :/
Ah. :-( Well hopefully avatar_lib.js and the like make it a pretty DM>> easy thing to add.
I'm curious to have a look and see how to implement it.
Take a look at exec/showmsghdr.js too (it's new). It uses avatar_lib.js.
I've updatd my message reader to show the avatars. It was fairly easy.
The avatars are pretty cool.. I've created a simple avatar for myself - I'm not much of an artist but eventually maybe I'll have a better looking avatar.
echicken's avatar chooser is pretty cool too. The online avatar drawing is fairly nice, as is the feature of choosing a pre-made avatar. I'm assuming it's getting the pre-made avatars from an online host somewhere?
The avatars are pretty cool.. I've created a simple avatar for myself - I'm not much of an artist but eventually maybe I'll have a better looking avatar.
fairly nice, as is the feature of choosing a pre-made avatar. I'm assuming it's getting the pre-made avatars from an online host somewhere?
The avatars are pretty cool.. I've created a simple avatar for myself
- I'm not much of an artist but eventually maybe I'll have a better
looking avatar.
BTW, your avatar has not showed up in SYNCDATA yet. Did you setup or run the "avatar.js export" timed event yet?
Re: exec/load/avatar_lib.js
By: Digital Man to Nightfox on Fri Jan 12 2018 05:54 pm
The avatars are pretty cool.. I've created a simple avatar for myself
- I'm not much of an artist but eventually maybe I'll have a better
looking avatar.
BTW, your avatar has not showed up in SYNCDATA yet. Did you setup or run the "avatar.js export" timed event yet?
Yes, I've set up the timed events. I only have them set to run once a day at midnight, and I just created my avatar today, so it probably hasn't been sent out to Dove-Net yet.
your client is throwing in funny characters.
that's UTF-8 and they're one of the fancy apostrophies...
echicken wrote to Al <=-
One easy way to do it would be to open a .ans in an editor (PabloDraw)
and then save it as a Binary (.bin) type file.
When opening a .bin file, you need to know what the original width of
the graphic is. The file format is a repeating sequence of pairs of
bytes that give a character followed by a colour attribute, so the viewing/editing program needs to know where to wrap lines. The file
may have a 'sauce' trailer at the end that provides useful info
(columns, rows, some other details) that editors can use to figure this out automagically. (We're using this to include details and
descriptions of collections of avatars.)
one of those collections. I also see an editor in the chooser so maybe I can use that to create an avatar.. or at least poke around with.
fairly nice, as is the feature of choosing a pre-made avatar. I'm
assuming it's getting the pre-made avatars from an online host
somewhere?
DM is working on distribution of avatar 'collections' (as I've termed them anyway) via DoveNet (Synchronet Data), similar to how individual user avatars are distributed. The chooser loads its list with any 'collections' it finds locally.
Ah, okay, that'd be why. I changed the default instructions to 48-times a day (every half-hour). No real reason not to.
DM is working on distribution of avatar 'collections' (as I've termed them anyway) via DoveNet (Synchronet Data), similar to how individual user avatars are distributed. The chooser loads its list with any 'collections' it finds locally.
Re: exec/load/avatar_lib.js
By: echicken to Nightfox on Fri Jan 12 2018 09:32 pm
DM is working on distribution of avatar 'collections' (as I've termed them anyway) via DoveNet (Synchronet Data), similar to how individual user avatars are distributed. The chooser loads its list with any 'collections' it finds locally.
One thing I noticed today is in the avatar chooser, there are 2 'Animals' sections and one 'Unknown' section, which contains some of the same avatars as the Corporate Logos. On my system, I have ECBBS.animals.bin and VERT.animals.bin, which I imagine accounts for the 2 different 'Animals' sections. In the avatar chooser, if there are multiple collections with the same category, perhaps the chooser should combine them or include the BBS name in the category name.
One thing I noticed today is in the avatar chooser, there are 2 'Animals' sections and one 'Unknown' section, which contains some of the same avatars as the Corporate Logos. On my system, I have ECBBS.animals.bin and VERT.animals.bin, which I imagine accounts for the 2 different 'Animals' sections. In the avatar chooser, if there are multiple collections with the same category, perhaps the chooser should combine them or include the BBS name in the category name.
it is a binary format based on direct screen writes to video memory... each character takes two bytes... one for the color and one for the actual character... maximum of 4000 bytes to a screen... the only real benefit is that they are binary and can be written directly to video memory...
)\/(ark
Sysop: | MCMLXXIX |
---|---|
Location: | Prospect, CT |
Users: | 333 |
Nodes: | 10 (0 / 10) |
Uptime: | 51:14:20 |
Calls: | 580 |
Messages: | 237647 |