Wednesday, October 29, 2008

Fighters and stats

I was looking at some warrior characters and the issues that they have to deal with this morning, and I have come up with an indecent proposal on how to change strength and dexterity so as to make them 'more interesting' and more useful. This came about due to recent changes to the strength and dexterity spells, which screw warriors and thieves harder than I had expected.

Part of the reason strength and dexterity have come out so low on the equipment totem pole is that there are spells to compensate for it. Why should a builder bother to build equipment with strength and dex on it, when those valuable composite points could instead be used on stats like int and wis? After all, you can just use the int and wis to cast and maintain strength and dex spells.

With this in mind, consider the following two changes:

1) Limit strength and dexterity spells to a maximum of +4 boost.

2) Raise the boosting limit for strength and dexterity on equipment to +10. If you want 30 strength, you only need a natural 20 to do it, if you wear strength boosting equipment. Spells alone can only bring to to 24.

As an example, you could have 20 natural strength, add 6 through equipment, and 4 through spells to get 30 strength to wield a special sword.

Again, the reason for this is primarily to change the way that builders build equipment. The strength and dexterity stats on equipment are ill-favored, because they're so easy to replace with spells. Allowing stats to be able to do something that the spells cannot should tip this balance.

The only down side of this is that it will take some time for this to percolate through the equipment lists, and it will take time for equipment to be updated. In the short term to help bridge that gap, I would propose that the spells be limited to +5 instead of +4, with a temporarily lower casting cost. After 3-6 months the limit would be lowered to +4, and the casting cost slowly raised back up after that.

Any feedback on how you think this might be broken would be appreciated.

Tuesday, October 28, 2008

Custom Clients

Today was a productive day porting/rewriting the old Alter Aeon client to a new toolkit. I've run into the standard types of weirdness (such as resize not working properly and inability to change the font in an input window), but in general things are going pretty well. I was able to connect to the game and talk to people with it today.

One thing I never really understood was just how much code is in this thing. There's a -lot- of little detailed things that consume time and code space. It's these little things that make it such a good (if boring) piece of software; from the main window changing color on scroll lock to global font size changing. So while the client is currently usable, it will be a long time before everything is properly ported and functional.

In the short term, the goal is going to be to duplicate as much of the previous functionality as is reasonable, and re-release that version as being 'improved', even if it's just a smaller download size. Once this code base is stable, I'm going to rip up the automapper and see about adding in the various map based things I talked about in previous posts.

At the current rate of improvement, it's likely that I won't even be to a re-release version for probably a month.

Monday, October 27, 2008

Logins and players and statistics, oh my!

I just pulled some stats for the last few days and did some crunching on them. I need to do this more often so I keep in mind where the easy gains are to be had, and how to be more productive with my limited time.

These numbers are with a pretty pessimistic stripping to eliminate existing players, and to try to only take into account totally new players.

182 + 19 = 201 total newbies

19 (9.5%) of incoming connections resulted in a saved newbie. Of the unsaved players:

182 unsaved players
29 (16%) made it to entering a name
24 (13%) made it to login

-------------------------------------------------------------
People using the dclient did a bit better:

36 + 12 = 48 newbies using the dclient

12 (25%) of incoming dclient connections resulted in a saved newbie, instead of 9.5% from other clients. Of the unsaved players:

36 unsaved players using the dclient
13 (36%) made it to entering a name
13 (36%) made it to login


It doesn't take a rocket scientist to gather from the above that improving the login screens and mechanisms could easily double the number of new players in the game. I've been meaning to rip up the intro screens anyway and reorganize things, and now I have a bit more incentive.

Samon's idea of getting the client improved and more widely distributed is also a good one.

Thursday, October 23, 2008

Google Adwords Click Fraud

The final verdict on the Google Adwords click fraud incident I encountered a few weeks ago appears to be "declare it not our fault and have the customer eat it". I don't really blame them for not handling everything perfectly, but this is such an unusual circumstance that I have to believe they would pursue it harder.

Or perhaps its common to them, and only unusual to me.

Either way, I will not be using the content network in the future unless I restrict it very, very heavily. I might not use it at all - it really didn't bring me many decent hits anyway. I've hardly noticed a difference in the download numbers since it's been off.

My recommendation: the main Google search listings are fine, but avoid the content network unless you're willing to get bitten occasionally. I'll definitely be recommending caution with the content network to anyone who wants to listen to me.

More client stuff

The original version of the Alter Aeon client was a modified version of PuTTY, one that autoconnected to AA on startup. This was created by a player named Andres, several years ago. A lot of people don't like this client, for a lot of reasons.

So about three years ago, I set about creating a gui client. Using QT, I managed to put something together that isn't terrible, but isn't great either. On the down side, the QT license requires source distribution, and I'm not entirely keen on that, at least not for what I'm trying to do.

Not that I'm against open source, it's just not for everyone. I'm trying to build a player community, not a code community. Think Skype, as opposed to Apache. I definitely recognize that open source has a place.

I would probably have been fine with the source distribution of the QT version were it not for one minor issue: the old version of the executable is 8 meg. With new libraries, that size balloons even more. The download size really turns me off.

So I've been looking at and experimenting with a couple of other toolkits. So far, I have Foxlib and wxLib as candidates. Wyvren espouses Foxlib, but in my short time working with it I'm starting to think that it's probably just not what I'm looking for. wxLib is currently on the hit list, and I should know if it fits the bill in a few days.

One thing I have learned is that I'm really calcified and I hate learning new things. Or rather, I hate learning toolkits. I just want to get my work done; having to spend three hours looking up why a resize function doesn't work (then discovering entirely by accident that windows are created with resizing disabled by default) does not make me happy. One of the reasons I'm abandoning Foxlib is the lack of documentation.

I pawned off the room mapping stuff to Locane. Hopefully he'll have something interesting done by the time I need it; I want to hook up the room coordinates to a mapping system in the client so players can more easily figure out where they are and what they're doing.

Sunday, October 19, 2008

Client update

Part of the reason I've been talking about automatic room and area mapping is to improve the AA client. We have a QT based client that works pretty well, but it is fairly crude and primitive looking. We also have issues with new players simply disconnecting instead of trying to learn to play the game, so automapping could go a long way toward helping both.

Most RPG players are used to having an overhead map of some sort, to see roughly where they are. By using the automapper to generate position and placement data, we can integrate overhead maps into the client. At least that's the plan.

I'm researching how to do image handling right now.

Saturday, October 18, 2008

Google Adwords Click Fraud

It appears that after several years, I have finally been bitten by the Google Adwords "click fraud" that I have heard so much about. It only cost me 60 dollars (on about a 36 hour window mind you, I'll explain that later), but it's still irritating.

I discovered this while I was showing off all the neat features of Google Analytics to Fionna's boss last Friday. The first thing I noticed on login was that web traffic was way up due to the Adwords content network, and a quick check showed that the budget for Adwords was completely blown (I have it set to the minimum of 20 dollars a day.) Given that the normal budget is around 2-3 dollars, this was very unusual.

I thought at first that maybe some big gaming site had linked to us, but that doesn't make any sense - adwords doesn't work that way. After some hunting around, Fionna's boss and I found that almost all of the new hits were from china, almost all of them were for very short or zero time, and hardly any of them clicked on any other links. In short, I got a boat load of hits from people who were either totally uninterested, or (as we found out later) simply couldn't read english.

I contacted google, who eventually responded back saying that everything looks fine, and that the traffic was routed from game.7679.com, a valid gaming site. Except that:

7679.com is entirely in Chinese, for a Chinese audience, in China, and the ad that was displayed to users with an astonishingly high click through rate was targetted for blind/visually impaired english speaking players using screen readers.

Does anyone see the problem with this?

The fight with Google is ongoing, and now that I have posted this and cleared my thoughts a little bit, I'm actually more irritated about it than before. Time for another nasty note.

(Regarding the 60 dollar loss - I got unlucky in this regard. I had checked it Wednesday afternoon, and the bogus traffic started on Wednesday night. They hit the site so hard that it ate the entire ad budget in only a couple of hours on Wednesday night, then the entire budget in the first couple of hours of Thursday. I neglected to check it on Thursday because I had other things going; Friday morning, the entire budget was blown in the first couple of hours, while I was sleeping. By the time we discovered it on Friday afternoon, there was little to be done other than disable the content network.)

Thursday, October 16, 2008

Karma V2

Three more articles appeared out of nowhere today:

New Player Words of Wisdom, by the god Morpheus

Introduction to Being a Group Healer, by the player Prisoner

and Starting a New Clan - Advice For Elders, by Ouch.

It's a lot of work editing and formatting, but in the end, good articles all three of them. There's enough of them now that I had to split the main articles page into pieces.

The only down side is that I really don't know how much web traffic, or how much value this will bring to the site. In the end, it's all about value, and how useful the information is to other people. Unless I can get other people to link to it, it might not matter.

Wednesday, October 15, 2008

Karma

A few minutes ago, a well-written article on mana regen optimization appeared basically out of nowhere. A player mailed it to me, and after some minor edits approved by him, it's available on the Alter Aeon articles page.

It's a neat article because it covers a lot of things that mid-level players might not know, and gives an algorithm for optimizing a good part of a mana regen set. There were a couple of things regarding cast level that weren't quite right, but after consulting the code (like I would be able to remember off the top of my head) I was able to drop in some minor changes to clean it up.

It's always nice when people do stuff like this; it makes me feel like I'm not the only one who's actually working on things. There's a huge playerbase out there willing to contribute, they just need a way to do it. This is why Wiki projects are generally so productive, and I clearly need to find better ways to harness it.

If you're curious, the article can be found here and also linked to from the Alter Aeon "Gaming Articles" page.

Tuesday, October 14, 2008

Maps and area layout

One of our players, Woem, mailed me a handful of area descriptions and maps a couple of days ago. I finally managed to get through my email, and have put them online here:

http://dentinmud.org/maps

They're the maps of the Aggerazzi Swamp, the Fire Plane, and the Ice Plane. They're hand drawn, but really well done.

This got me thinking about mapping in general. Muds are particularly difficult to map because of the ad-hoc room linkage and arbitrary room sizes, not to mention lack of sanity checks to detect overlapping rooms. I'd like to be able to do it anyway because people are so visual, but there are some problems.

One of the biggest problems is that building is already so restricted, in that we generally have cardinal directions, without any real ability to place slopes or other such three-dimensional constructs. Another really big problem is that we don't build rooms with any regard for size; rooms just are, and they hold whatever we need them to hold. Further, we can hook them up to anything else without regard for space constraints.

To top this all off, Alter Aeon has over 30k rooms that are -already built-, and over two thirds of those are in working, sane areas. Rebuilding those areas with some (as yet ill-defined) positional features is really out of the question in the short term.

This has brought me back to thinking about automatic determination of room sizes, or at least room positions within areas. Some of this can be done based on terrain types; most individual areas can be mapped pretty well using a simple combination of flags and terrain to give rough sizes. The real clobbering comes when you attempt to glue areas together.

So, assuming I can automatically place the rooms in individual areas, how do we place areas overall? It turns out that we happen to have positional information for most areas anyway, so all that remains is to tie the area coordinates to the room positions within each area. The game can then scan for room linkages where the areas are markedly disjoint, and log it as a typo or bug.

Ta-da! With that, we should be able to correlate the real room position with the real area positions, and while the hookups wont be perfect, it will give us a very good idea of where the worst disconnects are.

Hopefully I can get some time to try this out in the near future. It's probably a handful of hours to do it and get it right, then I can hand off the cleanup to some of the worldbuilders and let them straighten out the worst of it.

Sunday, October 12, 2008

Welcome to the Mob Factory!

Hi, my name is Dentin.

This blog is a place where I plan to talk about code changes, discuss the general state of the mudding and gaming worlds, and occasionally give some insight into how the mud Alter Aeon operates. Hopefully I'll also be able to vent from time to time, so you can get an idea of crap I deal with, as well as see the kinds of things I would like to experiment with in the game.

It will be a while before I understand how all this blogging system works, so give me a bit of time to get the layout straightened out.