Wednesday, June 10, 2009

My first post...

Over at www.playdota.com. I'm only reposting it because I guess it answers some misconceptions about what I do and also because I want feedback on the next course of action, and because I'm too lazy to reword and retype it here. =P

does 6.60 have ai edition?
-------------------------------------------------------------------------------
Quote:
Originally Posted by chip'ndale
"i mean, afaik he asked for ice's permission before starting this project, is not like he felt doing this free lance."

0/2 friend, sorry. Didn't ask for permission to do this and I did feel like doing this freelance when I first started, and continue to do so. I receive no official support except that IceFrog has generously allowed me to post my work and put the map on getdota.com. I was surprised when it first appeared; that was done without my knowledge and I wasn't told until forum members told me you could download my map on getdota.com =P

Aside from that, the maps I generate are technically "unofficial". I have no access to deobfuscated source, so one could view the AI as basically a giant hack. I'm not part of his staff, have no regular communications with the team, and generally do my own thing. Hell, I'm a "Junior Member" on this now-official forum. What does THAT tell you, hm? =P

So...yeah, if you want updates, you'll have to check my blog. =P Unless something changes drastically (which it doesn't look to, since it seems like AI is generally a low priority on the grand scheme of things), I'm not obligated to update on any other medium, and it's going to stay that way.

And to me, this works out better. IceFrog has enough issues to worry about without trying to attach an "official" AI to the overall map, which would only really be used for training purposes, and I don't have enough time to try to update and maintain this deprecated code to a quality that's suitable for release. While I would love to have access to deobfuscated source to make my life easier, I don't technically need it (yet).

That said, hopefully you'll understand why the AI releases are generally sporadic and don't coincide too terribly much with the official releases. Perhaps in the future when I have the infrastructure in place we can consider doing coordinated releases (though it'd be a lot of work on my part and ultimately up to IceFrog to decide whether or not he trusts me enough to play with prerelease source), but if that is to be the case it wouldn't come into fruition for a long, long time.

Anyway, about AI for 6.60, since I know that's what everyone wants to know about...

My original plan was to finish isolating the original script, update and rewrite it, and then release on whatever version would been out by then (I'm about 110% sure that it will be newer than 6.60 at that point). However, if it seems like demand is high enough and people are willing to play against AI bots that don't make use of the new features or abilities (Razor's AI, for example, will be more or less completely broken), then I can continue to back-port features, at least for the purpose of trying new items and builds on something.

Problem is, this back-porting will take a long, long time (given the amount of changes, I'd say at least two months), time that I can spend furthering development on the script itself, so it's a significant fork in the road.

Pretty much the choices are:
1. Back-port features, get some bots that don't work all that well, can have training with new features in ~two months
2. Update AI, get bots that (hopefully) work with all new features, can have training with new features in ~long time
3. Wait for somebody else to write an AI map (I think Harreke was working on one), can have training in ~who knows

Any preferences? =P

Yay block of text. I wonder who will actually bother to read it all.

Well, now that I've written this all out, might as copy-paste it to the blog, haha. =P

DotA Allstars 6.59 AI+ 1.52 Rev. 02

http://www.mediafire.com/?zyljyyytlii
http://rapidshare.com/files/242956767/DotA_Allstars_6.59_AIplus_1.52_Revision_02.zip

DotA Allstars 6.59 AI+ 1.52 Revision 02
---------------------------------------
This is a port of RGB's AI+ v1.52 (originally written for DotA Allstars 6.48b).

It behaves the same as the original AI, and has only been updated to account for balance changes, new item recipes, and most new features. As such, some new content does not work fully with the AI yet.

THERE IS NO AI FOR INVOKER, CLOCKWERK GOBLIN, ADMIRAL, WINDRUNNER, STORM SPIRIT, OR UNDYING. THEY WILL GET ITEMS BUT WILL NEITHER USE NOR LEARN THEIR SKILLS.

Known bugs with AI:
-AI don't properly react to -nb, -nm and -nt modes
-Some exploits that should have been fixed are still in the game...just don't use them. If you really want to cheat against AI, just use -test

Some commands have yet to be implemented properly:
-ah
-afk
-kickafk
-rd (the new one in 6.53, -rd is in the game but done the same way pre-6.53)
-cm
-switch
-er

Additionally, I have added two Fun Taverns in the lower right corner. Currently includes seventeen legacy heroes (possibly more in the future): Old Invoker (6.12b), Old Lifestealer (6.48b), Old Silencer (6.12b), Gambler (6.06), Old Morphling (5.84b), Old Stealth Assassin (5.84b), Old Pudge (5.51), Old Chen (5.64), Old Medusa (5.84b), Void Demon (3.0d), Rider (5.72), God of Wind (6.01), Flame Lord (5.51), Avatar of Vengeance (6.32b), Astral Trekker (3.0d), Bat Rider (6.00), and Conjurer (5.51).

To access the fun taverns, type -fun within the first 15 seconds of the game. Note that Fun Tavern heroes do not have AI scripts and will not buy items or use/learn skills.

To use the -tryhero command, type in -fun within the first 15 seconds of the game, then type in -tryhero before picking a hero.

Changelog:

6.59 Rev. 02
============
-Fixed a serious bug that would cause the game to crash on group creation
-Fixed some graphical bugs with Aghanim's Scepter on Fun Tavern heroes
-Changed Lord of Avernus's model to the one introduced in 6.59
-Gave Bat Rider an air-to-air attack while flying, which should remove the bug where he would permanently gain damage upon flying down
-Removed warning message for incomplete AIs when playing Deathmatch
-Added an additional one-second delay on respawning when playing with -nd on Deathmatch to prevent some crashes

-Added contest mode to coincide with the 1v5 replay contest on the forums (http://forums.dota-allstars.com/index.php?showtopic=277658). Syntax is -contest <gold>, where <gold> is the amount of gold you wish to start with. See aforementioned topic for details.

*Formless Fixes
-Formless can now learn Quill Spray, Bristleback, Warpath
-Fixed a bug with Formless not being able to reset Clockwerk's abilities

Rev. 01
=======
-First update to 6.59

*Unofficial fixes
-Fixed Last Word to trigger on end of spell cast (instead of end of spell cast animation)
-Cleaned up the way Refraction buff icons appear to provide better feedback on when the buffs are actually active
-Fixed some typos (Storm Seeker, Eye of Skadi Ranged, Windrunner, Captain CoCo's Rum, Recall, Courier Shield, Burst)

6.59 Port of AI+ and -fun content by BuffMePlz.

Special thanks:
---------------
Tenshinhan DN
Overflow_GR
Duvon
Strikur--
Counter_Helix_axe
Catalyst
chaser02
Green_Sliche
cp6uja
Thoth-

Monday, June 8, 2009

Yeah, I'm still here

Been a while since any sort of update or progress, I guess. Life's been busy, and that usually takes first priority in...well...life. =P

But I'm still here, and working on the map when I can. As for 6.60, sounds like things are going to be overhauled like crazy. I think I'd prefer to try to finish isolating the script and then integrate it with the 6.60 map, instead of the normal porting. This will probably take a lot longer, but it should be quite a bit more stable. There's a lot of legacy code that's being carried from version to version that would need to be cropped out, but it would probably be more effective to get the script into the new version.

We'll see. Doing it this way will make a cleaner version, but will take a lot longer.