Pages

Monday, April 18, 2011

BankAlt.com out of beta

Just a heads-up for those interested. BankAlt.com, my pet WoW project, is now officially out of beta. In fact it has been out of beta for a couple of weeks but I simply neglected to mention it here.

I've inaugurated the graduation from beta by adding a final feature, namely direct linking to a recipe. Essentially you can now access a recipe directly through a link, as opposed to being able to see the sub-components only on the page which lists all the recipes.

On this page you can, of course, see the whole component tree, as well as perform cost calculations.

As an example, here's an Engineering recipe: Gnomish X-Ray Scope.

I'm pretty much done with development for BankAlt.com. You will notice that I've incorporated ads, served by Google. Hopefully this will offset some of the costs of running the site.

I was thinking that a nice feature would be the ability to save component costs such that you don't have to type them all over again each time you visit your favorite recipes. Unfortunately, after a lot of deliberation and testing, I've come to the conclusion that this feature is close to impossible, at least in the way I imagine it and that's due to the tree structure of the component list.

Now I'm off to other personal projects. As always, comments and suggestions are welcome.

10 comments:

Lugnut Daffodil said...

Good work sir! It's a good lookin site, and has always gotten right to the point in its functionality. Couldn't ask for better for your crafting needs.

So good job on the completion. Now you have the time in your life to get to work on BankAltMinecraft.com :)

Echo said...

Hi young and smelly fella... I stopped playing WoW few month ago but I still enjoy following your blog :)

I'd like to give you my pov about bankalt: I like it, even if some month ago I was really not sure what you was trying to achieve ;).

Direct linking was a good idea, I applaud it.

Now... the real "app killer" would be the ability to either save the prices OR directly interact with your realm's AH prices (maybe by uploading/importing any AH addon that stores data locally on your wow client, for example).

I don't know if importing the addon stuff would work but I suggest to add a "save prices" feature, absolutely. Addons like Auctioneer or Auctionatr save your AH prices inside a local text file. Finding it and "importing" it inside MySQL shouldn't be too hard. A little challenging, but fun.

The tree-structure isn't really a big issue, in my opinion. Working with arrays/cookies will make it easy.

Best of all would be adding a "register" option: you register your name and keep your data saved in your profile.

Just add 3 columns to your items table (price_gold, price_silver, price_copper) and keep storing values for each registered user. Easy, fast and veeeery handy.

I love coding too (php, jquery, ...) and that's why I wanted to give a small suggestion ;)

Echo said...

Oh damn I forgot. Today is the Portal 2 day. Stop mining pixels and go for some challenging fun! ;)

Darth Solo said...

@Lugnut Daffodil thanks mate! Glad I have at least one fan :)

@Echo thanks for your input!

BankAlt started as something else a couple of years ago. I had this other idea about professions and I actually got it about 80% working, after which I abandoned it because I thought of this other thing (what the site currently does) and I felt it would be more useful.

One of my problems with this site is that I think as an engineer, not as a marketer. I find it hard to describe the site's features and that's probably why some people are still puzzled by what it does.

I agree that saving prices would be cool. I've been thinking a lot about how to implement this in a way that makes sense but I still haven't found a solution. Technically it is simple to save those prices. In fact I have already developed the mechanism.

Here's where the problem lies. Take a recipe such as Arcanite Rod. This is a very good example which should illustrate my problem precisely.

The recipe requires (among other things) 3 Arcanite Bars. The Arcanite Bars are created from Thorium Bars + Arcane Crystals. The Thorium Bars can be smelted from Thorium Ore. Notice what happens when you start entering costs for these components: all parent costs are re-calculated to take into account the price of their child components. Also, all children component costs are erased.

If I were to save the cost of one component, everything would be screwed up. That's because components can be part of many recipes and they can be at the top, at the bottom or at an intermediary level in the component tree. When I restore the saved value of that particular component, as I said, it will overwrite the parents. But the parents might have other components as well, whose values I have also saved. What happens then? Which saved value takes priority? I would have some major conflicts if I were to implement this and that's why I decided against it.

I haven't abandoned the idea completely but I'm still trying to see if there's a way around this.

Technically speaking, I was going to start out by saving to a cookie, which wouldn't require you to create an account and/or log in. If enough people expressed interest in this, I would have probably ended up creating a user account where these prices would be saved in the database.

As for interfacing with WoW... that would be an idea... provided I can figure a way to deal with those prices.

So, we'll see how things go.

Darth Solo said...

@Lugnut Daffodil oh forgot to say that BankAltMinecraft is very unlikely even though I know it was meant as a joke, but who knows, I might do a Diablo 3 BankAlt, provided the game warrants something like this.

Echo said...

@ Darth

I feel your pain. I hate messing with nodes, children and so on. It's always a bug-ambush and I try to avoid that as much as I can. But in your specific case (Bankalt) I feel it would make the difference between a nice site and a *great* and *useful* tool. So I would try to invest some energy on that, even if it's annoying as hell.

So far so good: the idea of erasing children values when you enter parent costs is correct. But -at the same time- having the Thorium Ore price stored would make it very useful to automatically show prices for other recipes (where the Thorium ore is not a children.

You should find a way to "hide and ignore" any children costs whenever parents costs are entered. But those (saved) children costs would pop out in other situations, where the item is NOT a children but a parent.

I know it's not as easy as picking your nose but... you HAVE TO find a way. You will feel like a winner (much more than completing the P90X :-D)

Echo said...

On a side note, the dynamic ajax stuff is cool but can get you in serious troubles with stored values. So I would consider:

1) to actually SAVE prices (after a page refresh) you should add a "save" button, avoiding to auto-save stuff via Ajax when typing numbers in the fields.

2) if you save and restore prices, you show them whenever you can following the parent-child priority: in our Arcanite example if you have both Ore and Bar costs saved, you just show the Bar (top parent).

3) if a child overall price is LOWER than its parent overall price (ore can cost less than bars, for example) you just show the LOWEST prices, skipping the parent values and offering the ore cost only. You could display some kind of "alert" to inform the user that you're curently displaying the "best price" for your market.

Darth Solo said...

Hey Echo great feedback! I was playing with variations of ideas along similar lines. If I were to implement this I will definitely have to restore prices based on some sort of priority system.

While designing the site's features I used mockups of a recipe tree and I already got the save/restore mechanism in place but of course it needs to be updated with the new ideas.

About P90X, I don't want to brag or anything but right now I'm actually in my last week of Insanity, which was even harder than P90X. That's one of the reasons why I haven't been very active posting and/or playing WoW. After I'm done, I've decided to combine P90X's strength workouts with Insanity's cardio training.

About your other points...

1) Yes, I will definitely use a Save button of some sort. I hate the save-when-losing-focus thing because it leaves you guessing. I'm a visual kind of guy and I like to see a clear result when I interact with stuff. There's a guy at work who loves the stealth-save method but I'm not like that.

2) Yes, that would be a necessity, I'd be forced to default to the parent.

3) Great idea. It makes a lot of sense. And I'll raise you one of my own ideas but I don't want to say anything for the moment because if it doesn't work I'll end up looking like a fool :D

I'm glad you understood my problem. I was afraid I hadn't explained it properly.

Thanks again for the great feedback, Echo my friend! I guess I needed that little push to start thinking again about how to improve BankAlt. I won't be able to give any assurance that I will actually implement the saving feature, nor an ETA because I have a million other things screaming for my attention and I'm already behind with a lot of stuff but I can promise you that I will certainly start looking into it.

Echo said...

> There's a guy at work who loves the
> stealth-save method but I'm not like that.

Ajax is amazingly fun to use but -in my opinion- it must be strongly supported by a visual "status" whenever you do something. If you auto-save you MUST show a spinning wheel, if you finish saving you MUST show a green check, a "ok" icon... something like that.

People with bad connections can be left in the darkness and they never know if Ajax actually loaded and executed anything.

> I'm glad you understood my problem.
> I was afraid I hadn't explained it properly.

We speak the same language my friend, coding is fun but sometimes you lose a full day to fix that stupid thing... that was so stupid you feel very... stupid :D

The fun thing is... I stopped playing WoW but I still enjoy your blog and MMO-Champion (but I abandoned wowhead, obviously). Oh well, you cannot erase 4 years of gaming ina breeze. But at least I am fully detoxed (now).

Should you need to interact via mail, poke me at me@loquenahak.net ;)

Echo said...

Yo again Darth,

this time I'm here to suggest you to try this game:

AGE OF EMPIRES ONLINE

You will get hooked, it's still in beta but trust me... lot of fun. Think about Age of Empires plus quests plus exprience plus great graphics plus great stuff.

Try it, the beta is free (since yesterday). Get a Live account, redeem the code and go for it.

;)