Thread Tools Display Modes
07-17-12, 11:21 AM   #1
Meorawr
A Chromatic Dragonspawn
AddOn Author - Click to view addons
Join Date: Nov 2010
Posts: 193
Power Auras Classic 5.0

It's been a 'small' while in the making, and it involved a 'minor' change to the codebase, but YEEHAW! Public alpha quality release, yeah!

Link: Click me. No, seriously, do it.

Feedback/suggestions either go in this thread, or in the comments. I'll look at both, and ignore them just as equally <3

Last edited by Meorawr : 08-28-12 at 01:44 PM.
 
07-17-12, 11:25 AM   #2
Meorawr
A Chromatic Dragonspawn
AddOn Author - Click to view addons
Join Date: Nov 2010
Posts: 193
One more reserved post that I can use should something require it. If nothing does require it, then this post shall become neglected and will probably cry. In the event of crying, please offer this post some warm milk and cookies. Thank you.
 
07-17-12, 01:01 PM   #3
Seerah
Fishing Trainer
 
Seerah's Avatar
WoWInterface Super Mod
Featured
Join Date: Oct 2006
Posts: 10,860
/applause
__________________
"You'd be surprised how many people violate this simple principle every day of their lives and try to fit square pegs into round holes, ignoring the clear reality that Things Are As They Are." -Benjamin Hoff, The Tao of Pooh

 
07-17-12, 10:52 PM   #4
Gregity
A Wyrmkin Dreamwalker
AddOn Author - Click to view addons
Join Date: Oct 2007
Posts: 54
One of my favorite addons

Great job on the tutorial, thanks for the update! Looking forward to the beta.
 
07-18-12, 09:18 PM   #5
Unkn
Premium Member
 
Unkn's Avatar
AddOn Author - Click to view addons
Join Date: Oct 2008
Posts: 258
We really need some sort of upvote system here. I'd so give you some Meorawr.

Will a couple dancing bananas do?
__________________
"I'm very feminine. And I'll beat the crap out of ANYONE who disagrees!"
 
07-19-12, 04:35 AM   #6
Quanee
A Defias Bandit
Join Date: Jul 2012
Posts: 2
I love the new version but there's a small problem I'm trying to sort out for like an hour now, pretty much made account just to ask about it. Where do I enter a name of buff that is supposed to activate my aura/timer? You used HP level for example.
 
07-19-12, 09:36 AM   #7
Meorawr
A Chromatic Dragonspawn
AddOn Author - Click to view addons
Join Date: Nov 2010
Posts: 193
Three dancing bananas is offensive to my people. Two would be acceptable.

Originally Posted by Quanee View Post
I love the new version but there's a small problem I'm trying to sort out for like an hour now, pretty much made account just to ask about it. Where do I enter a name of buff that is supposed to activate my aura/timer? You used HP level for example.
In the dropdown that had you select "Unit Health", you'd instead select "Unit Buff/Debuff". I'm intending to add tooltips to each of the items in the dropdown that covers what each type is actually for, just not gotten around to it yet.
 
07-19-12, 11:50 AM   #8
N30
A Deviate Faerie Dragon
AddOn Author - Click to view addons
Join Date: Jul 2012
Posts: 10
is normal i cant use Flame Shock icon on an aura thet need only show me if FS isn't on the target?

the aura itself work when fs expire it show but eaven if on surce>texture i select buff/debuff on target id 8050 (flame shock) it instead show a WoW icon logo XD
 
07-19-12, 11:54 AM   #9
Meorawr
A Chromatic Dragonspawn
AddOn Author - Click to view addons
Join Date: Nov 2010
Posts: 193
Half a bug, half unimplemented. Will fix soon-ish
 
07-19-12, 12:07 PM   #10
Quanee
A Defias Bandit
Join Date: Jul 2012
Posts: 2
Originally Posted by Meorawr View Post
Three dancing bananas is offensive to my people. Two would be acceptable.



In the dropdown that had you select "Unit Health", you'd instead select "Unit Buff/Debuff". I'm intending to add tooltips to each of the items in the dropdown that covers what each type is actually for, just not gotten around to it yet.
I figured that one out, it's just there is no box name for debuff/buff name to enter. No clue where to type in "Inquisition".
 
07-19-12, 01:14 PM   #11
N30
A Deviate Faerie Dragon
AddOn Author - Click to view addons
Join Date: Jul 2012
Posts: 10
Originally Posted by Quanee View Post
I figured that one out, it's just there is no box name for debuff/buff name to enter. No clue where to type in "Inquisition".
you see id txtbox type there the id of spell idk if you could allready use the spell name so go on wowhead and snip the id spell and put in it

btw authors... try redoing the ui i have in live i noticed few thing
1st - spell cd triggre work reversed XD to make it show if the spell is in cd i got to invert the trigger.
2nd - the spell CD is triggered with few second of lag (in bot direction when cd get triggered and expire)..... for example i normaly track LvB for surge proc, in live it work amazingly eaven a lil before omni cc and spell key say it, on beta it get triggered atlast 1-2 second after
3rd - is ****ing hard positioning things without see them on bkground
4rth - timers with spell cd trigger seams not working propely (suppose is still not fully implemented)
 
07-19-12, 01:29 PM   #12
Meorawr
A Chromatic Dragonspawn
AddOn Author - Click to view addons
Join Date: Nov 2010
Posts: 193
Originally Posted by Quanee View Post
I figured that one out, it's just there is no box name for debuff/buff name to enter. No clue where to type in "Inquisition".
Should be in the editbox titled "Match". You can use the spell name just fine, and it also allows the use of Lua's pattern matching skills (which is a new-ish feature). At the moment there's no way to disable the pattern matching though, so be careful with special characters (anything alphanumeric should be fine).

Originally Posted by N30 View Post
you see id txtbox type there the id of spell idk if you could allready use the spell name so go on wowhead and snip the id spell and put in it

btw authors... try redoing the ui i have in live i noticed few thing
1st - spell cd triggre work reversed XD to make it show if the spell is in cd i got to invert the trigger.
Intended, the localised name for it is wrong though. In the code it's called SpellOffCooldown, but the name is Spell Cooldown. Will make this clearer

Originally Posted by N30 View Post
2nd - the spell CD is triggered with few second of lag (in bot direction when cd get triggered and expire)..... for example i normaly track LvB for surge proc, in live it work amazingly eaven a lil before omni cc and spell key say it, on beta it get triggered atlast 1-2 second after
We'll look into it, but there shouldn't be a delay. It could just be beta server latency, or a client bug.

Originally Posted by N30 View Post
3rd - is ****ing hard positioning things without see them on bkground
Known issues cover this, I disabled them a few days ago because of a few changes I'd made. Next release should have them re-enabled.

Originally Posted by N30 View Post
4rth - timers with spell cd trigger seams not working propely (suppose is still not fully implemented)
Not yet implemented
 
07-19-12, 01:48 PM   #13
Meorawr
A Chromatic Dragonspawn
AddOn Author - Click to view addons
Join Date: Nov 2010
Posts: 193
A small note on releases, we'll aim to do them fairly frequently (at most, a week between each), but they'll contain enough changes between each one to warrant actual testing.

Next release will hopefully have the previews on the main screen re-enabled, also aiming to clean up/polish the trigger editors as well as fix issues with them.

On top of that, I've added keyboard shortcuts as an experiment, they're only implemented on the browser for now but you can do things like Ctrl+N for creating a new aura. If they're stable enough we'll consider additional ones for the editor window (Ctrl+Shift+N for creating a display?). Plus if we do keep them, I'll be sure to add in some way to change their bindings

Currently working on the activation editor, and with that I'll also put in more triggers/sources to play around with.

P.S. Don't expect a weekend update, GW2 and all.

Last edited by Meorawr : 07-21-12 at 10:48 AM.
 
07-22-12, 03:00 PM   #14
yodawhip
A Murloc Raider
Join Date: Jul 2012
Posts: 8
are u kidding me?

Where is the logical navigation in using this utility versus its predecessor?

You have to program for the end user in mind, not to pat yourself on the back for making a utility convoluted in it's utility. It loses its function & purpose.

I applaud your exceptional skill in coding, but I disgusted by the underlying premise that one has to be perplexed by a simple addon (that is so widely used,) that uses simple logical functions, only b/c you have to prove something to your audience.

Are we supposed to traverse the app from left to right, top-down, or a combination of both?

What a mess. What were possibly thinking in this monstrosity in design navigation?

Occam's razor
 
07-22-12, 04:42 PM   #15
Torhal
A Pyroguard Emberseer
 
Torhal's Avatar
AddOn Author - Click to view addons
Join Date: Aug 2008
Posts: 1,196
Wow. Unnecessarily scathing, given that the original post clearly stated:

Originally Posted by Meorawr View Post
Note that pretty much all of the UI is EXTREMELY rough around the edges, and is not user friendly/intuitive in some spots. Mainly due to missing features or controls. We're working on it, but as people keep nagging for a release we'll put this out there so people can say "Well, I wanted a release and it was bad, now I'll be quiet!".
__________________
Whenever someone says "pls" because it's shorter than "please", I say "no" because it's shorter than "yes".

Author of NPCScan and many other AddOns.
 
07-22-12, 05:13 PM   #16
Meorawr
A Chromatic Dragonspawn
AddOn Author - Click to view addons
Join Date: Nov 2010
Posts: 193
Warning: This is a literal wall of text.

I'll help you out here. Now, after reading that feel free to elaborate on the following points, 'cause all I got out of that post was one usable piece of feedback.

The point I got was: GUI too complicated in terms of navigation. I'll cover it in a lot of depth.

Originally Posted by yodawhip View Post
Where is the logical navigation in using this utility versus its predecessor?

You have to program for the end user in mind, not to pat yourself on the back for making a utility convoluted in it's utility. It loses its function & purpose.
The 'end user' is a terrible term simply because it's too broad. People who like advanced features would ask me to cater to them, people who like the basic stuff would ask me to cater to them instead. Blizzard gets a lot of hate because catering to 10 million people is kinda difficult, and it's still true even with a much smaller figure.

Regarless of this however, the end user is still in mind at all times. The difficulty comes in balancing power with ease of use, and the ugly truth of it is you simply can't have both. You can try, and do a damn good job in the process, but ultimately some things will be sacrificed on either side of the fence. As an example, I'll say that even with the 'advanced' editor you cannot match the power of just outright manually editing the saved variables.

Let's imagine for a second that ease of use and raw power are two fields of grass, right next to each other. The current state of the GUI is what you'd get if you tried to ride a unicycle across the field while juggling pianos and breathing fire.

And that's perfectly fine, because:
alpha quality release
Nothing is final, and all is subject to change. In fact, the reason the GUI is 'complicated' right now is actually a concious decision made for the alpha release. Most people probably won't use, or will very rarely use the 'advanced' features that 5.0 adds, so they'll be sticking to the basic editor tools which are still under works.

But for the sake of testing, we don't want that - an unused system simply gets a lot less interaction and will be subject to far more bugs than a simple one would, and we want to iron out the issues with the advanced systems as a priority. Having the advanced ones work mean that we can safely say, should something go pear-shaped, "oh you'll need to do x and y to get it working, here's how".

In addition, the basic tools need work so that they're easy to use for the average end user, so delaying an alpha release just for them is a bit of a silly idea when we can just slap in a basic tutorial and the words 'alpha', which it would seem that too many people are skipping over.

As for patting myself on the back, I'm curious where you're getting that impression from. Generally that happens after a job well done no? Well we're lacking the critical 'done' point still, and the 'well' point is still somewhere over the hills.

Originally Posted by yodawhip View Post
I applaud your exceptional skill in coding
Judging from this and the patting on the back, I imagine you view me as some sort of highly conceited egotistical person just out to ruin the addon. I don't do this stuff for kicks and to show off, I can safely assure you of that.

Originally Posted by yodawhip View Post
but I disgusted by the underlying premise that one has to be perplexed by a simple addon (that is so widely used,) that uses simple logical functions,
Simple? No. While the 'mission statement' of the addon sounds simple (show/hide stuff in response to buffs/debuffs, paraphrasing the description), that was maybe three-four years ago. Simple buff/debuff tracking was the bread and butter, and it grew to house other conditions (pet, combo points, etc.) until the addon became a fully featured kitchen.

The thing is, the 4.x series is comparatively weaker than most alternatives. There's no possible way you can refute that, let's list some of the limitations or great 'user experience' choices that 4.x has:
  • Basic display types only: You can have either a texture, or textual string (not both), and a timer/stacks counter per aura. Want both a texture and text display? Make two auras, and either manually duplicate and edit both auras to activate via the same conditions, or use the unintuitive and complicated aura linking system. Now tell me which of those is actually intuitive and isn't a major pain to manage? In addition there's also no support for things like timer bars, which has been requested a lot.
  • Limited activation conditions: I want to track my rage when my target's health is <= 30%. Generic execute style aura, yes? Now create it. You'll first need one aura to track one condition, then you'll need to hide or otherwise disable it, and then you'll need to configure the second aura with the other condition, make it look pretty and link the two using that ID's editbox that isn't even labelled. Do you realise how many comments we get asking about this type of scenario? Quite a few.
  • Altering a display in response to something: This expands upon the previous point, say you want the aura to change colour based upon another condition. Good luck with all the linking and configuring.

Now let's see how 5.0 solves these issues (in order of what was mentioned before):
  • You can have up to 128 displays of any type. "Wow, now I don't have to link displays. Wait, if I want to, there's dialogs for visually picking the element I'm linking to? Cool, no more guessing ID's!".
  • You can use the 'basic' activation editor, which will be functionally the same as the old one, or the 'advanced' editor which you have now and that allows you to combine up to 63 triggers in order to show a display. I'll also add that user friendliness doesn't involve having 1.5 million controls visible onscreen at once, that's called scaring people, and is something we fixed.
  • Display actions. 'Nuff said.

And I'll point out the tutorials tab while I'm here. Before you retort with 'if I need a tutorial to use the GUI, then it sucks', I'll happily point out that the contents of the tutorials are actually going to cover a broad spectrum of areas both basic and advanced. And I might even drop the most basic tutorials, simply because they sound so condescending. I do like to imagine our users having the aptitude to at least tie their shoe laces correctly.

Originally Posted by yodawhip View Post
only b/c you have to prove something to your audience.
Either offer constructive feedback without personal attacks, or get out.

Curiously enough, we have a place where users can submit suggestions and vote on them. Know what the highest upvoted feature is? Changing the styles of displays in response to events. Take a guess as to what the core feature we decided to do all this work for was. Then we expanded on it to match the feature set offered by various alternative addons, and now we're at that point where we can say 'yep'.

To infer that we did all this work just for accolades and to show off is downright insulting, especially when combined with a post from someone who clearly missed the word 'alpha', which has appeared in the first post alone three times, and is even mentioned ingame via that huge changelog dialog which covers a lot of points. One is also led to assume you skipped over that.

Originally Posted by yodawhip View Post
Are we supposed to traverse the app from left to right, top-down, or a combination of both?

What a mess. What were possibly thinking in this monstrosity in design navigation?
Let's start with the aura list, or the 'browser'. Navigation-wise, the browser is, functionally, exactly the same between the two versions, or it at least will be when the missing things get implemented. The visual style is different, and we added a tab for the Layouts feature which may not even make it fully into 5.0 (delayed until 5.1 maybe). Things we changed were removing character/global auras, and adding a toggle between a more compact (icon) view, which is identical to before, and the default list view.

Character/global auras were removed because profile support was another heavily requested feature, and logically we can't keep trans-profile (global) auras in without messy hacks that threaten the stability of parts of the loading code.

Moving on to the editor, that's changed. Completely. So let's begin with the immediate issue.

Tabs at the top will confuse new users. They likely won't know what an action/trigger is, as they're not common terms. A display is pretty straightforward, so that's not an issue. The tutorials tab is hosted in the editor temporarily.

The immediate and 'simple' fix to this is to hide the top tabs unless the user says they want full power. But let's say we did do that, where would we put the option? We need somewhere obvious that isn't a hunt for the user to find, 'cause that's equally just as bad. We could slap the checkbox on the window, and then it looks ugly and fixes nothing, because now you've got controls sticking out that don't make any sense. We could slap it in the Displays section, but then it's not relevant to the displays. See the issue?

Next up, use of breadcrumbs as the main navigation. Hate to say it, but it's the best choice. We tried many navigation methods, but this was by far the best of the lot.

4.x navigation isn't really 'navigation', it's more "how many controls can we blind the user with at one time". It has one real advantage, it's quick to use if you want to edit one specific thing within ~0.1 second. The downsides on the other hand are fairly numerous; we can't add new features to it simply because there's no space. The window is already far too large, and having half a million controls in your face isn't user friendly. In addition, a lot of the controls are poorly labelled, or completely lack labels, and some of the behaviour is just bizarre.

We tried a treeview approach, whereby the displays were listed on the left inside of a tree and on the right was a tab frame with each tab being dedicated to a specific task (style/activation/animation). This was almost the one we settled on, and was pretty effective. We then moved to the breadcrumb style we have now, and stuck with it for the following reasons:
  • Less screen real-estate is needed, the treeview was ~170px wide and the rest of the pane was our editor. Even with the current editor size, the end result was it being highly cramped. The breadcrumb system uses a 40px high bar. That's all. And we traded that free space for a usable sidebar with relevant information based upon what you're editing, with help text included.
  • Expanding on the crampedness, three tabs was all we could fit on the window without risking it overflowing in certain localisations (German is a real schmerz* for this). This meant adding more stuff to the existing tabs, which results in lengthy editor pages with scrollbars and lots of visible controls, or having to introduce collapsible headers which we tried and didn't like.
  • It didn't end up being any harder to use than the treeview. Arguably, it was easier: the treeview's items were labelled like 'Display #1', and so on. We then categorised it by display type, but that hides the ID numbers which can be used in certain situations. With the breadcrumbs, we moved to a previewable grid so you know what you're picking, because you're visually clicking a miniature preview of it. And if they're too small/large, there's a zoom button in the tray.

Comparing the breadcrumbs and 4.x style navigation has kind of been done, and as I said they both have advantages and issues. One point you could raise is that the breadcrumbs make things too 'distant', and that there's too many clicks to get to a certain section. It's something I'm highly aware of, and have been desperately trying to avoid for a while now, however this is an issue that is mostly only prevalent with the 'advanced' editors - simply because 'advanced' things include multiple animation channels, display actions, and complex trigger logic.

The 'basic' editors won't include any form of support for these. In fact, the 'basic' animation editor is going to be completely akin to the existing 4.x one with the whole "single"/"repeat" concept hidden, along with channels.

Coming to the list of categories after selecting a display, we tried various ways of sorting and filtering that list too. Alphabetically is just a 'nice' way of doing it, but is far from ideal. The problem is how do you weigh each area in importance? Style is important, but Activation is what you need to make it show. Animations aren't too important, neither are sounds, but how do they weigh when compared to the advanced features, more or less important? I'd argue that the look and feel is the least important, but there's many people who would disagree when sorting those out.

We could filter them, but going back again I mentioned that this release is designed to test the advanced components, because we need them to be working. You aren't going to do a whole lot of testing if I just filter half the categories out, and most people aren't going to read a simple 'please test this', because as has been proven time and time again, people don't read stuff. We cover a lot of 'basic' things in the addon description, yet it still frequently crops up in a comment.

There's a significant amount of things I particularly hate about the current system, most notably I think the Sources system is still a major thorn. It adds a lot of power, but is about as friendly as a hungry shark. We can fix this with the basic editor by simply outright removing it in some way, but that's a little off right now in terms of priorities (in fact, the 'basic' components are quite low on priority until after the next release).

Another thorn in our side is the handling of action 'sequences', but as actions are an advanced feature on purpose it's likely going to be much less of an issue than I'm thinking.

One solution I frequently see is some sort of basic/advanced toggle. We'll be using them, but they'll be used very sparingly. For instance, the basic activation editor has one of these toggles for swapping between the basic version and your current advanced one. Basic will automatically become unusable if you create something too advanced for it to handle safely, but otherwise all's good.

Judging from your post, you've seemingly got some ideas (which you chose not to share) on how to tackle navigation so I'll invite you to constructively give feedback. Simply calling the current system a monstrosity and implying it need to be scrapped immediately is far from constructive. We've tried many systems and settled on these ones, and it'll make a lot more sense why we've done so when all of the editor features are actually implemented.

Jesus, thirty paragraphs...

* Google translate, if it makes no sense blame it, not I.

Last edited by Meorawr : 07-22-12 at 05:35 PM.
 
07-22-12, 07:29 PM   #17
suicidalkatt
A Rage Talon Dragon Guard
 
suicidalkatt's Avatar
AddOn Author - Click to view addons
Join Date: Mar 2008
Posts: 331
Looking forward to the progress

I personally love the new look, unfortunately it'll take a bit more time to get from option a and b with the tab / menus however I still like its new approach.

One thing I'd deeply love to have implemented is text coord support and perhaps a media table that can have 3rd party addons implement 'texture packs' or 'sound packs' which would easily be implemented and not hurt any coding if done properly.

I'd love to work with you if you're interested. I worked with Smacker a while ago and gave him some textures, sounds, and font graphics.

Looking forward to helping your testing!!

Also, to those going crazy in the thread, stop exploding please
 
07-22-12, 07:34 PM   #18
Meorawr
A Chromatic Dragonspawn
AddOn Author - Click to view addons
Join Date: Nov 2010
Posts: 193
Originally Posted by suicidalkatt View Post
I personally love the new look, unfortunately it'll take a bit more time to get from option a and b with the tab / menus however I still like its new approach.
I don't like the added time to go from A to B, so if there's a reasonable solution you can count on it appearing.

Originally Posted by suicidalkatt View Post
One thing I'd deeply love to have implemented is text coord support and perhaps a media table that can have 3rd party addons implement 'texture packs' or 'sound packs' which would easily be implemented and not hurt any coding if done properly.
Already possible:
Lua Code:
  1. --- Registers a new texture set. If the set already exists, it is replaced.
  2. -- @param name The name of the texture set.
  3. -- @param iter Iterator function for accessing texture paths.
  4. function PowerAuras:RegisterTextureSet(name, iter);
  5.  
  6. --- Registers a new sound set. If the set already exists, it is replaced.
  7. -- @param name The name of the sound set.
  8. -- @param iter Iterator function for accessing sound paths.
  9. function PowerAuras:RegisterSoundSet(name, iter);

There's also one for fonts and 'counters' (timer/stack fonts basically). Iterator returns vary based upon the resource type, but for sounds it's "index (number), path (string), name (string)". For textures, it's just the first two items. The PowerAuras/Media.lua file contains the default ones.

The function is safe to call immediately, don't need to wait for ADDON_LOADED so long as the dependency on it is there.

Texcoords were kinda planned but I backed out of them, I'll reconsider it. Issue is exposing them in a 'pretty' way.
 
07-22-12, 10:22 PM   #19
suicidalkatt
A Rage Talon Dragon Guard
 
suicidalkatt's Avatar
AddOn Author - Click to view addons
Join Date: Mar 2008
Posts: 331
Originally Posted by Meorawr View Post
Already possible:
Lua Code:
  1. --- Registers a new texture set. If the set already exists, it is replaced.
  2. -- @param name The name of the texture set.
  3. -- @param iter Iterator function for accessing texture paths.
  4. function PowerAuras:RegisterTextureSet(name, iter);
  5.  
  6. --- Registers a new sound set. If the set already exists, it is replaced.
  7. -- @param name The name of the sound set.
  8. -- @param iter Iterator function for accessing sound paths.
  9. function PowerAuras:RegisterSoundSet(name, iter);

There's also one for fonts and 'counters' (timer/stack fonts basically). Iterator returns vary based upon the resource type, but for sounds it's "index (number), path (string), name (string)". For textures, it's just the first two items. The PowerAuras/Media.lua file contains the default ones.

The function is safe to call immediately, don't need to wait for ADDON_LOADED so long as the dependency on it is there.
Interesting! But a nice dropdown menu for a texture set would be awesome! (I haven't tested this release so I have no idea what you've implemented).

Originally Posted by Meorawr View Post
Texcoords were kinda planned but I backed out of them, I'll reconsider it. Issue is exposing them in a 'pretty' way.
Perhaps a simple 'advanced' button or checkbox to enable some hidden options.
 
07-23-12, 01:36 AM   #20
Siku
A Fallenroot Satyr
 
Siku's Avatar
AddOn Author - Click to view addons
Join Date: Jun 2007
Posts: 29
Originally Posted by suicidalkatt View Post
Perhaps a simple 'advanced' button or checkbox to enable some hidden options.
I don't know, in the final product, when we get a basic and advanced (current options), switching to advanced mode and see i have to click on an advanced button to see texcoords seems kinda redundant.
 
 

WoWInterface » Site Forums » Archived Beta Forums » MoP Beta archived threads » Power Auras Classic 5.0

Thread Tools
Display Modes

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