bobtheuberfish / chiriboga

Implements Netrunner in Javascript against an AI opponent
https://chiriboga.sifnt.net.au/
GNU General Public License v3.0
87 stars 11 forks source link

Dockland pass sometimes not working #98

Closed R41B closed 1 year ago

R41B commented 2 years ago

Hi,

I played some games of the development version (system update), and I found a couple of things that might need some tweaking. I still really enjoy playing on Chiriboga! (Mainly because I'm too scared to play agains a real opponent on jinteki.Net)

So the things I noticed: -When Playing Reina Roja, I installed a docklands pass. The first couple of turns, the docklands pass did not work properly. It was my first run on HQ in a turn, but it only allowed me one access. (here is the log) chiriboga-log-2022-09-09T16_33_51.236Z.txt

-Over all it's quite easy to win. Mainly because the opponent makes some moves that don't make sense. I know this must be the hardest part, but I still will address some strange behaviour: 1) Opponent rezzes Marilyn campaign just before access when they are on low credits, probably to shuffle it back. But most of the times it's not the right move. 2) Opponent Corp makes too many servers and uses a lot of ice for each server. It would be probably much harder to win if Corp would "know" where the danger comes from, if there is R&D pressure, add the extra Ice to R&D. Sometimes there where two empty Iced servers, and the opponent added a piece of ice on each empty server, and did nothing else that turn (Just Click for a credit) 3)Opponent runner uses events only cost one click on the last click, on one of the three first clicks, so it costs them a click extra. 4) I noticed that sometimes the only thing a corp does in a turn is click for credits, even when they have more than enough credits...5)And finally, when I'm on 5 points as a corp, and have an advanced card in the server, in a lot of cases the opponent doen's run at all that turn. It only instals cards. So that's a really easy win...

I of course don't know how the AI works, so my comments might not make sense at all :)

Thanks for developing this! It's a lot of fun!

R41B commented 2 years ago

Oh, and I found another "bug". I had three credits, played Dirty Laundry for 2 credits, ended the run with 5 credits in stead of six. I think this happened before...

bobtheuberfish commented 2 years ago

Thank you for all these comments! I can't promise to fix them all but it is helpful to know what common issues you are seeing. The System Update version still has a lot of work to do on it, and this is a useful list of things to check. I am very busy with other things at the moment but am looking forward to getting back into development, hopefully in a few weeks. I'll finish SanSan City Grid first and then see what I can do about some of the obvious bugs. If you have specific suggestions about solutions for some of those weak AI decisions, I can make changes and then we can test some more. I'll address the above points so we can do some thinking: 1) When is/isn't it the right move? Is it a credit check e.g. if credits > 6 then do it, otherwise don't? 2) I'm not sure how the Corp can know this. At the moment it already keeps track of how many times each server is run and puts more protection in front of servers that are being successfully run more often. I could scale this up if you think it is not paying enough attention to this. 3) Which events do you mean? I assume Creative Commission and VRcation? It already should never use these on the second-last click but sometimes using it at click 1 or 2 is a good move for the extra draw/credits to give more options for the rest of the turn. 4) This happens when the Corp doesn't know what else to do. I don't know what to do in these cases either! If you see this happen you could keep track of what you think the Corp should be doing, and report back here (including logs). Then I can see what the Corp options were and why it decided just to click for credits. 5) This is a tough one to help the Runner decide. It's possible it's just an advanced trap, in which case it would be more harm than good. Just like for number 4 above, I would be interested in reading the logs. You might even be able to do some of that work for me by reading the logs and summarising the kinds of situations (the log includes the contents of the Runner hand at the start of their turn).

In a way I don't want to commit too much effort to this AI because it's not very clever and my way of going about it isn't very efficient. I keep hoping that someone who actually knows what they are doing will see my work as proof that this can be done and will do a proper job of it! Especially if it was smart enough that it could learn for itself, then we could focus more on adding cards and get a bigger and bigger card pool :)

Thanks again.

bobtheuberfish commented 1 year ago

I have made a lot of changes since September and I think most of these things are fixed. I have even specifically tested Docklands and Dirty Laundry in particular before closing this, and they behaved correctly. I have also taken the feedback about AI behaviour into account. It may still do some of these things but hopefully it's a bit smarter in general. The Runner may well still do prep on the turn before a winning agenda is scored - but usually only if it feels it has no chance of succeeding and is gambling that the advanced card is a bluff.