<< Back to Warzone Classic Forum   Search

Posts 131 - 150 of 565   <<Prev   1  2  3  4  ...  6  7  8  ...  18  ...  28  29  Next >>   
WarLight AI Challenge: 2014-04-09 04:02:17

{rp} pedrito 
Level 48
Report
To be honest, half of the time is spent watching the bot play... :)

I hope Fizzer incorporates one of these bots into Warlight at some point. I'm quite sure any of the top 10 beats the good old standard AI hands down. I would take a little rewriting to adapt it to teamgames and more varied maps, but definitely worth the trouble.
WarLight AI Challenge: 2014-04-09 20:19:18

RvW 
Level 54
Report
I'm not sure it's that easy pedrito. If you look at Norman's post (http://warlight.net/Forum/Thread?ThreadID=34646&Offset=116) it tries to work out what's going on behind the fog. That becomes much harder (and not anywhere nearly as reliable) as soon as there are more than two players. For instance, if you deduce (in the AI Challenge) that the opponent has Asia, from that point forward you know it has, and will keep, Asia..., until you break it. That logic already goes entirely out the window in a 1vs1vs1, and those aren't even the most complex games you can run on WL.

There are countless other problems: using (at least) reinforcement cards; cooperating with team mates (including sometimes using "attack team mate" to complete a bonus); dealing with wastelands (either existing from the start, created by cards or due to a booted or surrendered player turning Neutral); etc; etc; etc.

And that's only the problems I see no easy solutions for. Depending on how a bot is written (how deeply some assumptions are embedded into the core of the logic), even giving it support for something as simple as non-standard kill rates could require a serious amount of work.



I agree it would be cool if Fizzer, when he has time to work on "AI 2.0", could take a look at these bots and see if there are ideas worth using. But transplanting a bot from the AI Challenge straight into WL does not seem like a workable idea to me.

Unless an option is added to choose between different AIs. In that case it might be possible to add (some of) these AIs and only make them selectable in games with rules suitable for them (only 1vs1, for instance).
WarLight AI Challenge: 2014-04-10 00:17:39

{rp} pedrito 
Level 48
Report
Completely agree with your post RvW. Coding a bot that takes into account all of the customization options is a huge task for sure. As you said though, an option to choose a different AI whenever the custom settings allow it would solve this problem.

As for the more advanced stuff like "bonus guessing" or "deployment prediction": don't need it. I could rip all of that code out of my bot and it would not lose a great deal of positions on the leaderbord. Before my bot started guessing how many armies an enemy would deploy, he was just assuming the enemy would always deploy its maximum amount. And it worked pretty well.

The questions is:
How much coding is needed to get my current bot to perform decently in a Europe 3 vs 3, for instance?
I don't know, but probably less that what I've done so far for the challenge, and certainly less hours than many of the user created maps on WL.

I'd do it for free too.

But in the end it's up to Fizzer. I do completely understand that AI is not a great priority for WL, because playing with people is the idea. Sometimes though, when playing a teamgame and someone gets booted or loses connection just when things are heating up, it's a shame to scrap a game just because the current AI _always_ attacks neutrals before enemies, doesn't defend, makes suicide attacks, etc... All of them pretty simple issues really.
WarLight AI Challenge: 2014-04-10 20:35:23

RvW 
Level 54
Report
I think the strength of the AI might be by design. Unless somebody really doesn't get this game at all, just about any human player should still outperform the AI. In team games, that means everybody should prefer their human team members to keep playing, over booting them (and turning them into an AI). If beginning players were regularly booted so a (stronger) AI could take over... that would not be very motivating.

How about you first finish the AI Challenge and then we can brainstorm about how to make WL itself benefit from your results later? :)
WarLight AI Challenge: 2014-04-10 21:14:26


Ⓖ. Ⓐrun 
Level 57
Report
If beginning players were regularly booted so a (stronger) AI could take over... that would not be very motivating.


Very good point. The AI should (to some extent) be poor at WL because it is only generally used when players are booted (it should be a penalty to that player to have a crappy replacement). If a stronger bot was made, it should only be for Single Player IMO.
WarLight AI Challenge: 2014-04-10 22:22:48


Wenyun 
Level 60
Report
because it is only generally used when players are booted (it should be a penalty to that player to have a crappy replacement).

EDIT: Well, you don't have to make the bots perfect.

In teams; a crappy AI bot is a disadvantage to the team - in FFA's, a crappy AI bot is an advantage to those near.

It would be best for the game creator to decide what kind of AI they would want (but make it a high-level unlock). The default should be the crappy/current AI, though, so that beginners/low levels will have an easier time sliding in.

Edited 4/10/2014 22:24:08
WarLight AI Challenge: 2014-04-10 23:57:57

{rp} pedrito 
Level 48
Report
In teams; a crappy AI bot is a disadvantage to the team - in FFA's, a crappy AI bot is an advantage to those near.


Quite right. People boot their neighbours in FFA games often enough if they are a single second over the time limit. Also in team games people sometimes boot members of the opposite team a little too eagerly.

On the other hand, no matter how elaborate a bot is made, I don't think they'll never compete with humans on the level that people would boot their teammates in order to get a bot to play for them instead. If people really don't want to have novice players in their team all they have to do is join a game with filters.

How about you first finish the AI Challenge and then we can brainstorm about how to make WL itself benefit from your results later? :)


If anything WL would benefit from Norman's results, not mine :D His bot never ceases to surprise me.
WarLight AI Challenge: 2014-04-11 17:24:35


Norman 
Level 59
Report
If anything WL would benefit from Norman's results, not mine :D His bot never ceases to surprise me.

From the top tier bots my bot is the worst at fighting especially in those situations where you start right next to your opponent. Basically my fighting algorithms still work the same than two weaks ago but the other bots are smarter now. At present I'm to bored to write some clean code there since that would require a complete rewrite of my fighting code (just as I did with the expansion code).

It's a mistake of most bots that they don't priorise expansion and fighting properly. If you manage to get the income advantage on this small map then I strongly disagree with keeping your expansion going. Finishing a bonus where only a couple spots are missing is probably fine but apart from that you should use your armies to finish the opponent off. On the other hand taking your fast bonuses should have top priority.
WarLight AI Challenge: 2014-04-13 11:40:44


Trogatog
Level 52
Report
Well, I definitely think I made some progress on my bot this weekend :D
WarLight AI Challenge: 2014-04-13 23:41:24


125ch209 
Level 58
Report
I was wondering: is it possible to retrieve the source code from a JAR file? if not, i think it would be nice if we put our bot as a JAR file here, so that we could run some games against eachother bots using Norman modifed engine
WarLight AI Challenge: 2014-04-14 01:13:31

{rp} pedrito 
Level 48
Report
I think it's very possible to extract source from jar files with an utility like JD GUI.

http://jd.benow.ca/
WarLight AI Challenge: 2014-04-14 01:14:48

RvW 
Level 54
Report
When compiling from source code to object (executable) code, a large number of details about your program disappear. For instance, compiling the following code
    // Initialise the entire array
    for ( int i = 0; i < myArray.length; i++ )
    {
        myArray [ i ] = i;
    }
will result in object code which is identical to if you had compiled the following:
    for ( int x = 0; i < y.length; x++ )
    {
        y [ x ] = x;
    }

So yes, the structure can be recovered, but all your comments are gone and all (or most? not sure about the details of Java) variable names are gone. This makes it much harder to figure out what your code is doing and much, much harder to understand why it is doing so.

If you think your bot has a chance of performing well and you don't want to help your opponents, I'm sorry, but I'd advice against freely distributing the .jar file.

Of course, if there are some people you trust not to even attempt such reverse engineering and be careful enough not to share it with other people, you could always send a select group of people a private message (go to "Mail", right next to "Forum" in WL's menu bar) with a link to your .jar file. (Note I'm just giving options; judging people's trustworthiness is something you can only do yourself.)
WarLight AI Challenge: 2014-04-14 01:49:44


125ch209 
Level 58
Report
it's not really for me, i don't really care about giving away my code (I even gave my code to another warlight player in the AI competition so that he could help me figure out what is wrong with it). It was more for other bot like Norman's, wich has been on top of the ladder for some time now, so i would understand if he didn't want his bot reverse engineered...

if someone wants to trade JAR files, just mail me

Edited 4/14/2014 01:57:17
WarLight AI Challenge: 2014-04-14 02:16:24


Norman 
Level 59
Report
I don't have any practical experience with this stuff but possible solutions imo:

- Use an obfuscator
- Turn the .jar file into an .exe file (should also work I think)

Fighting against other bots would be nice. During the weakend I changed my old fighting algorithms. Against the old version of my bot I only get 57% win rate since both versions have the same "basic thoughts". Playing against other bots however I finally reached the 2800 rating (as I write this post). You guys thought SupremeDalek was out of business? Well, guess again. I'm back again and stronger than ever. I was to bored and didn't have enough time to add code lately. But then you wannabes pushed me down to 5th place and I just couldn't let that insult slide.
WarLight AI Challenge: 2014-04-14 02:20:51


125ch209 
Level 58
Report
hahaha yeah congratz on the 2800 rating. you want to trade JAR?
WarLight AI Challenge: 2014-04-14 11:58:58


ps 
Level 61
Report
there are java decompilers (that extract .java from the .jar) and code prettifiers (that turn obfuscated code into readable code) available. it can be cumbersome but it can be analyzed. but all things considered it's much easier to look at the damn game and figure out what the bot is probably doing.
WarLight AI Challenge: 2014-04-17 19:24:20


Norman 
Level 59
Report
My favorite game so far:
http://theaigames.com/competitions/warlight-ai-challenge/games/534de8bd4b5ab2132e949ae8

Very interesting moves by pedrito turn 72 and 73. I wonder whether pedrito was watching SupremeDalek's deployment to find out if he was expanding and how much of the africa he already had.
WarLight AI Challenge: 2014-04-17 21:19:36


125ch209 
Level 58
Report
yeah really interesting move, he watch supremdaleck's deployments for sure
WarLight AI Challenge: 2014-04-17 23:51:16

{rp} pedrito 
Level 48
Report
So lucky at the end :) Bot knew he had Africa before he even deployed 8 guys the first time, I'm surprised myself.
WarLight AI Challenge: 2014-04-18 23:46:57


Muli 
Level 64
Report
I'm actually kind of surprised how well my bot is doing since he doesn't have any idea of where the enemy is or how much income he has / if he has a bonus. Yet he has beaten all the higher placed bots in one of the last games and keeps pending around the 7th place.
Posts 131 - 150 of 565   <<Prev   1  2  3  4  ...  6  7  8  ...  18  ...  28  29  Next >>