AHK Scripts, wat zijn het en hoe kun je ze gebruiken

Inleiding
Naar aanleiding van wat vragen aan de hand van Jorryt's filmpjes over AHK ( AutoHotKey) scripts heb ik besloten hier maar eens een artikel over te schrijven. Het idee van AHK scripts is dat je bepaalde bewerkingen die je normaal als gebruiker zelf uit moet voeren nu aan een bepaalde toets of muisknop kunt hangen. Dit kun je dus niet bij poker gebruiken maar kan ook prima worden gebruikt om met 1 druk op de knop een aantal programma's op te starten die je voor een bepaalde activiteit altijd allemaal nodig hebt.

Installatie van AHK software
Om met deze AHK scripts aan de slag te kunnen zal er eerst wat software geïnstalleerd moeten worden om deze scripts op je pc uit te kunnen voeren. Hiervoor moet een installatie file worden gedownload, die vind je hier . De installatie zelf spreekt redelijk voor zich en kan met alle standaard instellingen worden doorlopen. Na de installatie beschikt je computer vanaf nu over de functionaliteit om AHK scripts uit te voeren, het programma zelf hoeft dus niet te worden opgestart!

Het BetPot script downloaden, installeren en leren gebruiken
De meesten van jullie zullen deze AHK scripts in eerste instantie gaan gebruiken om een aantal veel gebruikte acties tijdens het pokeren sneller uit te kunnen voeren. Om dit te doen gaan we eerst het betreffende script opzoeken in een enorme lijst poker AHK scripts die reeds beschikbaar is en te vinden is op Overcards.com . Zoals je kunt zien zijn hier scripts te vinden voor zo ongeveer alles wat je maar kunt bedenken, over het algemeen zal het 'installeren' ervan niet veel anders zijn dan wat we nu gaan doen om dit voorbeeld script werkend te krijgen. Het script dat we nodig hebben om onze pokeracties aan toetsen te linken heet BetPot .  Op de pagina die dan verschijnt kun je dan vaak allerlei extra informatie over de werking van het script vinden. In dit geval staan er wat specifieke opmerkingen voor het gebruik van het script op de verschillende pokerrooms en staan er wat verder onderaan korte instructies.
Tussen al deze tekst staat ook nog een download link verstopt maar jullie kunnen het script downloaden door hier te klikken.

Als het script gedownload en uitgepakt is heb je op je computer als het goed is een mapje met daarin de twee scripts en 2 mappen met afbeeldingen voor PokerStars en UltimateBet. Met deze afbeeldingen zullen we dit artikel niets doen, we zijn met name geinteresseerd in de  twee scripts zelf natuurlijk. Om te beginnen is het belangrijk dat we even kort de instellingen van dit script nalopen, die staan bij bijna alle AHK scripts duidelijk bovenaan en over het algemeen zijn deze settings redelijk voorzien van commentaar. Om het script te bekijken kun je rechtsklikken op het script en de optie edit script selecteren.

Voorbeeld:
Stel je speelt op PartyPoker en je hebt je Party client zo ingesteld dat er komma's gebruikt worden om decimalen aan te geven, dan moet je dus de 0 ( disable ) achter deze optie in het script veranderen in een 1 ( enable).
; PARTY SPECIFIC
party_uses_commas_for_decimals := 0


Over het algemeen staan deze instellingen best behoorlijk en zeker goed genoeg om mee te kunnen werken. Tijd om eens te gaan kijken of het nu werkt dus! Om het script op te starten moet je rechtsklikken op de naam van het script, ten tijde van dit artikel BetPot-v0.2s, en de optie run script selecteren. Mocht het allemaal werken dan kun je natuurlijk een snelkoppeling naar je bureaublad laten maken en voortaan wat sneller het script opstarten. Om het script uit te proberen raad ik je aan om bijvoorbeeld PartyPoker op te starten en aan 1 van de laagste tafels die je kunt vinden te gaan zitten. Als het goed is zul je nu zien dat zodra je een bet of een raise moet plaatsen en je scrollt met je muis je de betsize 'automatisch' ziet veranderen. Als dit werkt mag je jezelf een schouderklopje geven, je hebt je 1e AHK script in gebruik genomen. Andere opties die nu standaard al ingesteld staan zijn een pot bet/raise plaatsen door te klikken met het scrollwheel , en rechtsklik is nu een 2/3 pot bet/raise. Om meer van dit soort handigheidjes in te stellen of om deze standaardinstellingen aan te passen hebben we de het 2e AHK script nodig dat we uit onze .zip file hebben uitgepakt. Hierover gaat het volgende stuk van het artikel.

betpot_default_hotkeys.ahk
Dit bestand is eigenlijk niet meer dan een aanvulling op het script dat we hierboven uitvoerig hebben besproken, het wordt vooral als los bestand meegeleverd om er voor te zorgen dat mensen niet al hun sneltoetsen kwijt zijn als er een nieuwe versie van het BetPot script komt.
Zoals de naam al aangeeft bevat dit bestand een lijst met sneltoetsen en de daar aan gekoppelde functies.

Als we het script openen door rechts te klikken opent er een hele lijst met toetsen/muisknoppen  en daaronder de functionaliteit die door dit script aan deze toets gegeven is. Hieronder een paar voorbeelden:

~RButton::
Pot(getid(),"0.75 0.75 0.66 0.66", "smallblind", "ssnl", 0)
return


De opbouw van een sectie van dit script is als volgt, bovenaan staat de toets/muisknop waar het om gaat. In dit geval dus de actie 'rechtsklik', en daaronder staat dat deze knop als het script in werking is de functie Pot() moet aanroepen. Deze pot() functie heeft een aantal argumenten waarbij de belangrijkste het 2e argument is. Hier kun je namelijk instellen per straat ( dus preflop flop turn river) welk % van de pot er gebet of geraised moet worden bij het aanroepen van deze functie. Zoals je ziet is een rechtsklik preflop en op de flop dus gelijk aan het maken van een ¾ pot bet en op de turn en de river wordt deze zelfde knop een sneltoets voor het maken van een 2/3 pot bet. Standaard is het zo dat deze knop nu alleen de grootte voor je instelt maar je wel zelf nog op bet danwel raise moet klikken, als de 0 op het eind veranderd wordt in een 1 maakt hij de bet ook daadwerkelijk als je de knop indrukt. Iets wat natuurlijk heel snel fout kan gaan en ik persoonlijk niet aanraadt.

WheelUp::
AlterAmount(getid(),"up")
return

In dit geval zien we dat er aan de actie 'scroll omhoog' een andere functie zit gekoppeld, te weten de functie AlterAmount(). Ook deze functie heeft weer argumenten, de eerste is standaard en de 2e wordt gebruikt om aan te geven of je het bedrag naar boven of naar beneden wilt veranderen. Aangezien dit de actie voor het omhoog scrollen is lijkt het mij het meest logische om hier dus de bet grootte te verhogen, wat betekent dat we “up” meegeven aan de functie. Standaard gaat dit veranderen per big blind, maar door het argument “SB” toe te voegen zouden we ook per small blind kunnen verhogen.

Met deze twee functies kun je eigenlijk alles doen wat betreft het vergroten/verkleinen van bets en het maken van allerlei verschillende soorten pot bets. Maar zoals jullie misschien al weten is het ook mogelijk om door middel van AHK scripts ook acties als 'check' of 'call' aan een toets te verbinden. In het script zie je bijvoorbeeld het volgende staan:

F13::
Fold(getid())
return


Dit betekent dus dat je door op F13 te klikken kunt folden, ook hier geldt weer als je dit uit gaat proberen doe het alstublieft op een lage tafel zodat je niet opeens de nuts fold in een mega grote pot. Het is kinderlijk eenvoudig om deze toetsen te wijzigen, maak namelijk van deze F13 bijvoorbeeld “F2” en vanaf nu zal de F2 toets functioneren als toets om te folden. Ook gewone tekens zijn mogelijk, als je “F13::” vervangt door  “f::” dan kun je voortaan een handje folden door op de f van fold op je toetsenbord te drukken. Let er wel op dat deze toetsen als ze in gebruik zijn door het AHK script niet meer gebruikt kunnen worden voor andere dingen, typen en pokeren tegelijk wordt dus vrij lastig als je dit script aan hebt staan. Het script is eenvoudig te pauzeren/sluiten door in je systeembalk ( naast je klokje in windows )  rechts te klikken op het groene icoontje met een witte H er in, en daar de optie “suspend hotkeys” of exit script te selecteren.


Tot zover een introductie in de wereld van AHK scripts aan de hand van het veelgebruikte BetPot script hieronder volgen nog een aantal links voor mensen die geïnteresseerd zijn geraakt en er graag nog wat meer over willen weten.


Links met meer informatie:

  • http://www.autohotkey.com/ Onder documentatie is echt alles te vinden voor mensen die graag zelf scripts willen gaan schrijven.
  • http://overcards.com/wiki/moin.cgi/AutoHotKey Zeer grote collectie AHK scripts die handig kunnen zijn bij het pokeren.
  • http://forumserver.twoplustwo.com/postlist.php?Cat=0&Board=software  In dit forum zijn grote topics te vinden over een aantal populaire AHK scripts en je kunt hier ook vaak terecht met je vragen aan de hand van scripts die je gevonden hebt op de overcards.com site.

Reacties op dit artikel

Snel reageren
  #11
Senior Member
 
Geregistreerd: 04-10-2007
Berichten: 169
 
Standaard Re: [Artikel] AHK Scripts, wat zijn het en hoe kun je ze gebruiken

Iemand een idee wat het kan zijn als je niets aan de instellingen van je Betpot hebt gewijzigd.. en normaal als ik op muisballetje druk is potbet, preflop 4 x bb, nu is dat opeens standaard allin.. Vrij irritant.. ligt dit misschien aan mn muis??
Met citaat antwoorden
  #10
Junior Member
 
Geregistreerd: 19-11-2007
Berichten: 3
 
Standaard Re: [Artikel] AHK Scripts, wat zijn het en hoe kun je ze gebruiken

Guido, bedankt voor alle tijd en moeite!

Het is me al een stuk duidelijker geworden. Of het nu gaat lukken om alles werkend te krijgen met AHK is nog wel een vraag.

Groeten
Met citaat antwoorden
  #9
Nederpoker Moderator
 
Geregistreerd: 26-09-2007
Berichten: 5588
 
Standaard Re: [Artikel] AHK Scripts, wat zijn het en hoe kun je ze gebruiken

AHK bet pot krijgt een toetscombinatie binnen die bijvoorbeeld bij "Fold" hoort.
AHK kijkt dan in een functie naar het frame waarin die toetscombinatie is uitgevoerd, meestal naar de framenaam zoals "pokerstars" or "prima".
Dan roept AHK per pokerclient een aparte Fold<Client> functie aan, omdat elke pokerclient anders werkt.

De meeste werken met duidelijke keys en namen, bij andere wordt hardop de X en Y coordinaten vanuit de linkerbovenhoek gebruikt.

Bij Ladbrokes heb ik dus met het programmatje Window Spy gekeken of de knoppen fold en check een aparte naam hebben waarnaar gerefereerd kan worden. Dit is niet het geval en heb ik dus de X en Y coordinaten genomen in normal en mini view. Als ik in normalview speel gebruik ik het ene scriptje, in miniview (die ik gebruikte toen ik 30NL 9 tablede) een andere, omdat de X&Y coordinaten anders zijn.

In normal view heb ik dus binnen de Fold(id) methode de volgende lijn aangemaakt:
Else IfWinExist, ahk_id%id% ahk_group PrimaTables
{
FoldPrima(id)
}

Die in normaal engels zegt: Als er een frame is waarop deze fold wordt aangeroepen die in de groep PrimaTables valt, roep dan FoldPrima(id) aan, waarbij id staat voor het framenummer. Verderop heb ik dan FoldPrima(id) gemaakt met als inhoud:

FoldPrima(id)
{
SetControlDelay -1
ControlClick, x693 y519, ahk_id%id%,,,,,NA
}

SetControlDelay -1 had iets te maken met het niet vertraagt uitvoeren van het volgende commando (wat arelaxed is als je je muis beweegt).
De volgende zin staat in normaal engels voor:
Doe een linkermuisklik, op x coordinaat 693, y coordinaat 519, in het frame bekend binnen AHK als id. Met nog een paar lege niet-boeiende parameters erna.

Ik hoop dat dit voor de semi-digibeten ook begrijpelijk is.

Voor check heb ik dus:
In betpot_default_hotkeys toegevoegd:
; ---- Control + muisknop 2
~XButton2::
Check(getid())
return

;--- In betpot hoofdfile:
Check(id) {
IfWinExist, ahk_id%id% ahk_group PrimaTables{
CheckPrima(id) }
}

;-- Even verderop,waar je maar wilt

CheckPrima(id)
{
SetControlDelay -1
ControlClick, x600 y534, ahk_id%id%,,,,,NA
}



Zelf hou ik het hier even bij. Zelf kan je ook op deze manier voor pokerstars checkfuncties definieren.
Mvg

Guido Kok
Met citaat antwoorden
  #8
Junior Member
 
Geregistreerd: 19-11-2007
Berichten: 3
 
Standaard Re: [Artikel] AHK Scripts, wat zijn het en hoe kun je ze gebruiken

Citaat:
Oorspronkelijk geplaatst door Guido Bekijk bericht
Spit ff de code of de site door, weet uberhaupt niet of die site ondersteund wordt.

Voor Ladbrokes heb ik zelf een check en fold functie gehardcode

Ik heb dus de ballen verstand van computers dus dat doorspitten van de code wordt een probleem. Maar het is zodat de AHK scripts niet voor alle sites werken? Is er als je op een site speelt waar geen ondersteuning voor is dan ook niets te fixen op het gebied van AHK of iets dergelijks?
Met citaat antwoorden
  #7
Senior Member
 
Geregistreerd: 02-10-2007
Berichten: 235
 
Standaard Re: [Artikel] AHK Scripts, wat zijn het en hoe kun je ze gebruiken

Citaat:
Oorspronkelijk geplaatst door Guido Bekijk bericht
Spit ff de code of de site door, weet uberhaupt niet of die site ondersteund wordt.

Voor Ladbrokes heb ik zelf een check en fold functie gehardcode
Hoe gaat het in zijn werk en werkt dat ook op Prima (Purple Lounge Poker)? Dat zou ik graag gebruiken. Check en fold met sneltoets: OMG hoe relaxt moet dat zijn!
Met citaat antwoorden
  #6
Nederpoker Moderator
 
Geregistreerd: 26-09-2007
Berichten: 5588
 
Standaard Re: [Artikel] AHK Scripts, wat zijn het en hoe kun je ze gebruiken

Spit ff de code of de site door, weet uberhaupt niet of die site ondersteund wordt.

Voor Ladbrokes heb ik zelf een check en fold functie gehardcode
Met citaat antwoorden
  #5
Junior Member
 
Geregistreerd: 19-11-2007
Berichten: 3
 
Standaard Re: [Artikel] AHK Scripts, wat zijn het en hoe kun je ze gebruiken

Hoi,

Ik heb de autohotkey functie gedownload en ook de betpot functie (deze ook uitgepakt). Als ik nu op Run script druk en open tafels van I4poker (Bossmedia netwoek) gebeurd er niets. Ook als ik tafels op van noble poker (i-poker netwerk) gebeurd er niets. Heeft iemand enig idee wat er aan de hand kan zijn?

BVD,

Nik
Met citaat antwoorden
  #4
Senior Member
 
Geregistreerd: 01-10-2007
Berichten: 154
 
Standaard Re: [Artikel] AHK Scripts, wat zijn het en hoe kun je ze gebruiken

owja heeft iemand een F13 op zijn computer? of ben ik ******* bij het uitkiezen van mijn toetsenbord.
Met citaat antwoorden
  #3
Senior Member
 
Geregistreerd: 01-10-2007
Berichten: 154
 
Standaard Re: [Artikel] AHK Scripts, wat zijn het en hoe kun je ze gebruiken

Zondag poker ik nooit omdat ik me eindelijk heb aangeleerd om niet na een stapavond te gaan spelen. Maar met AHK spelen is echt leuk doen! :-D

Goed artikel, ga zo door! :-D
Met citaat antwoorden
  #2
Member
 
Geregistreerd: 02-10-2007
Berichten: 68
 
Standaard Re: [Artikel] AHK Scripts, wat zijn het en hoe kun je ze gebruiken

mooi artikel Marnix & Thijs, ik heb alleen nog een vraag. Hoe zet ik bijvoorbeeld fold op Mouse4/Mouse5 ?
Met citaat antwoorden