1. Voordat je kan participeren op het forum dien je je eerst te registreren.

    Druk hier om je te registreren!
    Ontzet Notitie

Rooftochten

Discussie in 'Snellijstscripts' gestart door warre, 9. jun 2018.

Deel Deze Pagina

  1. warre

    warre

    Lid geworden:
    19. feb 2008
    Berichten:
    4.139
    Leuk Bevonden:
    336
    Rooftochten (t12063835)

    Auteur: @warre

    Credits: Graag bedank ik @den tist voor het omzetten van de originele berekening en Jonas om mij er op te wijzen dat deze niet klopt voor elke wereld en de correcte berekening voor verschillende werelden beschikbaar te stellen.

    Werkt op pagina: Verzamelplaats -> rooftochten

    Functiebeschrijving script:

    ALGEMEEN
    Het script is het meest effectief bij het begin van een wereld wanneer je je off / def nog niet mega lang tijd kwijt wilt zijn voor het risico dat je onder aanval komt te liggen. Het gaat uit van een maximale tijd (zelf te kiezen) dat je je troepen kwijt wilt zijn en vult aan de hand daarvan de rooftochten in. Hij verstuurt eerst naar Reuze Rovers, dan Slimme Speurders, ... Als je een lage tijd in stelt zullen mogelijk niet al je troepen gebruikt worden terwijl als je een hoge tijd in stelt niet alle rooftochten opties gebruikt zullen worden.

    Wanneer er geen rooftocht meer beschikbaar is of de troepen zijn op zal hij je naar het volgende dorp brengen. Let dus goed op dat je in de juiste groep staat indien je niet uit al je dorpen wilt rooftochten.

    INSTELLINGEN
    Bovenaan in het script zijn er nog een aantal instellingen die je naar eigen wensen kan instellen:

    1. Runtimes
    PHP:
    var runtimes = {
        
    'off' 6,
        
    'def'3
    };
    Dit is de maximale tijd dat je rooftochten mogen lopen uitgedrukt in uren. We splitsen ze op in off en def zodat er gekozen kan worden om de def sneller weer thuis te hebben voor moesten er aanvallen komen. De enige waarden in dit deel die aangepast mogen worden zijn de getallen (de 6 en de 3), al de rest moet blijven staan zoals het is om goede werking te garanderen.

    2. Units
    PHP:
    var units = {
        
    'sword': {'haul'15'type''def'},
        
    'spear': {'haul'25'type''def'},
        
    'axe': {'haul'10'type''off'},
        
    'archer': {'haul'10'type''def'}
    };
    Hier stel je in welke units je mee wilt sturen voor de rooftochten, standaard is er gekozen voor de trage units alleen zodat er met LC/ZC gefarmt kan worden. Ook moet er hier informatie worden gegeven die het script nodig heeft om zijn berekeningen te kunnen uitvoeren. Het is belangrijk dat je de aanpassingen juist doet, anders werkt het script niet. Volgende zaken moet je rekening mee houden:
    • De mogelijke units zijn: spear, sword, axe, archer, light, marcher, heavy, knight. Zet deze tussen ' ' met een : er achter
    • Per unit moet de volgende informatie gegeven worden, pas enkel de waarden aan en niet de woorden haul en type:
      • Haul: In het Nederlands draagcapaciteit (= aantal gs een eenheid kan dragen), dit moet een cijfer zijn niet omringd met ' '. (deze informatie is te vinden wanneer je op een eenheid icoon klikt)
      • Type: Of de unit offensief of defensief is, dit moet ofwel off ofwel def zijn omring door ' '
    • Let op dat bij elke unit achteraan een komma (,) staat behalve bij de laatste

    TIPS

    Het meest aangename in gebruik is om een sneltoets toe te kennen aan dit snellijstscript, zo stuur je het snelste en eenvoudigste je rooftochten er uit. Persoonlijk zet ik dit script ook 2 keer in de snellijst, waarbij 1 andere runtime waarden heeft die ik voor het slapen gaan gebruik. Gezien ik dan toch 8 uur niet online kom kan de def even goed 8 uur ivp 4 uur weg zijn natuurlijk :)

    ScriptCode:
    PHP:
    javascript/* @name: Rooftochten @author: Warre @description: Stuur je rooftochten snel en slim */

    /* Instellingen */
    // Maximale looptijd van de rooftochten voor elk soort dorp uitgedrukt in uren
    var runtimes = {
        
    'off' 6,
        
    'def'3
    };

    // De eenheden die gebruikt mogen worden om te versturen met de nodige informatie (haul = hoe veel gs een eenheid kan dragen, type = off / def)
    var    units = {
        
    'sword': {'haul'15'type''def'},
        
    'spear': {'haul'25'type''def'},
        
    'axe': {'haul'10'type''off'},
        
    'archer': {'haul'10'type''def'}
    };
    /* Einde Instellingen */

    var $content = $('#scavenge_screen');
    if (
    $content.length 0) {
            var 
    $btns $content.find('.btn-default').not('.btn-disabled, .unlock-button');
            var    
    haul 0;
            var 
    type = {'off'0'def'0};

            for (var 
    prop in units) {
                var 
    amount parseInt($content.find('.units-entry-all[data-unit="' prop '"]').text().match(/\d+/));

                
    haul haul parseInt(amount units[prop].haul);
                
    type[units[prop].type] = type[units[prop].type] + amount;
            }

            if (
    $btns.length && haul 0) {
                var 
    $btn $btns.last();
                var 
    current $btn.closest('.scavenge-option').find('.title').text().trim();
                var 
    scavengeObject JSON.parse($('html').find('script:contains("ScavengeScreen")').html().match(/\{.*\:\{.*\:.*\}\}/g)[0]);
                var 
    scavengeIndex = {'Flegmatische  Fielt''1''Bescheiden Bandieten''2''Slimme Speurders''3''Reuze Rovers''4'};
                var 
    scavangeInfo scavengeObject[scavengeIndex[current]];
                var 
    troop_type = (type.off type.def) ? 'off' 'def';
                var 
    runtime runtimes[troop_type] * 60 60;
                var 
    loot Math.pow(Math.pow(((runtime scavangeInfo.duration_factor) - scavangeInfo.duration_initial_seconds), (scavangeInfo.duration_exponent)) / 1001/2) / scavangeInfo.loot_factor;
                var 
    send 0;

                for (var 
    prop in units) {
                    var 
    ui = $('.unitsInput[name="' prop '"]');
                    var 
    needed Math.round(loot units[prop].haul);
                    var 
    max parseInt($content.find('.units-entry-all[data-unit="' prop '"]').text().match(/\d+/));

                    if (
    needed max) {
                        
    ui.val(max).trigger('change');
                        
    loot loot - (max units[prop].haul);
                        
    send send max;
                    } else {
                        
    ui.val(needed).trigger('change');
                        
    send send needed;
                        break;
                    }
                }

                if (
    send >= 10) {
                    
    $btn.trigger('click');
                } else {
                    $(
    '.arrowRight, .groupRight').trigger('click');
                }
            } else {
                $(
    '.arrowRight, .groupRight').trigger('click');
            }
    } else {
        
    location.href game_data.link_base_pure 'place&mode=scavenge';
    }
    void(0);
    Veel plezier er mee!

    Warre
     
    Laatst bewerkt: 16. aug 2018
    jack12071983, Victorious. en Project 1 vinden dit leuk.
  2. Hopeful

    Hopeful Tribal Wars Team Forum Mod

    Lid geworden:
    24. okt 2016
    Berichten:
    10.121
    Leuk Bevonden:
    3.507
    Nieuw rooftocht script, thanks Warre!

    (Ik zal morgenavond de overzichtpost updaten ;))
     
  3. thelightfighter

    thelightfighter

    Lid geworden:
    8. mei 2017
    Berichten:
    3.824
    Leuk Bevonden:
    728
    Top Warre ga m zo proberen! Dankje ;)
     
  4. Clickb*it

    Clickb*it

    Lid geworden:
    9. jun 2017
    Berichten:
    1.802
    Leuk Bevonden:
    374
    Hoi, maakt de wereldsnelheis nog iets uit in de uren?
     
  5. Rise Against

    Rise Against

    Lid geworden:
    24. sep 2008
    Berichten:
    9.574
    Leuk Bevonden:
    813
    iirc ja, gewoon beetje mee spelen je ziet het vanzelf :p
     
  6. Pedrosa

    Pedrosa

    Lid geworden:
    25. jan 2014
    Berichten:
    994
    Leuk Bevonden:
    226
    Super, ik ken al wat mensen die gelukkig zullen worden met een rooftocht script :like:
     
  7. Project 1

    Project 1

    Lid geworden:
    20. apr 2017
    Berichten:
    211
    Leuk Bevonden:
    292
    Nope, maakt niks uit.
     
  8. warre

    warre

    Lid geworden:
    19. feb 2008
    Berichten:
    4.139
    Leuk Bevonden:
    336
    Als ik het goed heb dan wordt de looptijd berekend zonder de wereld snelheid daar in mee te nemen, dus zou geen probleem moeten zijn. Eenvoudig te testen op verschillende werelden natuurlijk als je daar een accie hebt (op 1.5 snelheid werkt die zoiso goed), de tijden moeten namelijk op de kop zijn wat je ingegeven had :p

    Volgens sommigen zou het fout kunnen lopen bij het aanpassen van de instellingen... Voor mij klinkt dat allemaal logisch dus als het ingewikkeld uitgelegd is ofzo dan zou het misschien mooi zijn dat iemand die het wel begrijpt het in volledige leken taal nog een keer uitlegt ^^

    EDIT: Blijkbaar zijn er toch verschillen voor de werelden die niet zijn opgenomen in de berekening :( Het is even zoeken om dit goed aan te passen dus een update volgt nog.
     
    Laatst bewerkt: 10. jun 2018
    zeehond en thelightfighter vinden dit leuk.
  9. Victorious.

    Victorious.

    Lid geworden:
    22. jun 2013
    Berichten:
    9.838
    Leuk Bevonden:
    236
    Is er ook een unitnaam voor beredenboog? "mounted" werkt niet
     
  10. Unfriendly Sander

    Unfriendly Sander

    Lid geworden:
    2. feb 2014
    Berichten:
    1.403
    Leuk Bevonden:
    62
    De officiele term voor bereden boog is "marcher". :)
     
    Victorious. vindt dit leuk.
  11. warre

    warre

    Lid geworden:
    19. feb 2008
    Berichten:
    4.139
    Leuk Bevonden:
    336
    De openingspost is geüpdate, blijkbaar werd er in de oude berekening geen rekening gehouden met verschillende werelden. Wat extra code samen met een nieuwe berekening (waarvoor dank Jonas) en nu zou die overal correct moeten werken :)

    @Victorious. "marcher" idd, ben ik vergeten in de openingspost, is ook aangepast nu ;)
     
    Victorious. vindt dit leuk.
  12. Secret Goal

    Secret Goal

    Lid geworden:
    26. jun 2012
    Berichten:
    341
    Leuk Bevonden:
    19
    Bij mij doet het script het op w62 maar niet op w61. En ik weet niet waarom. ik denk zelf dat het aan de wereldsnelheid ofzoiets ligt
     
  13. warre

    warre

    Lid geworden:
    19. feb 2008
    Berichten:
    4.139
    Leuk Bevonden:
    336
    Wel ik weet het ook niet dan :D

    1. Heb je de laatste versie ? Script is tijdje gedeleden geupdate.
    2. Wat werkt er niet aan ? Doet die helemaal niks ? Veranderd hij wel van dorp maar stuurt die geen rooftoch ? ... (eventueel een print screen)
    3. Krijg je errors in de console ? Gebruik volgende stappen: rechter klik ergens op de pagina -> element inspecteren (oid) -> console. Gebruik dan het script (een paar keer) en kijk of er iets verschijnt, laat weten wat er verschijnt.
     
  14. Secret Goal

    Secret Goal

    Lid geworden:
    26. jun 2012
    Berichten:
    341
    Leuk Bevonden:
    19
    Hij veranderd wel van dorp maar doet niks, en ja ik heb de laatste versie :p

    ik zal stap 3 eens proberen
     
  15. warre

    warre

    Lid geworden:
    19. feb 2008
    Berichten:
    4.139
    Leuk Bevonden:
    336
    Toon ook je instellingen in het script zelf ;)
     
  16. Secret Goal

    Secret Goal

    Lid geworden:
    26. jun 2012
    Berichten:
    341
    Leuk Bevonden:
    19
  17. warre

    warre

    Lid geworden:
    19. feb 2008
    Berichten:
    4.139
    Leuk Bevonden:
    336
    Die errors hebben niks met het script te maken. Heb je een screen van een dorp dat hij overslaat ?
     
  18. Secret Goal

    Secret Goal

    Lid geworden:
    26. jun 2012
    Berichten:
    341
    Leuk Bevonden:
    19
    ik heb tbh geen idee waar ik een screen van moet maken. bij mijn co doet het script het ook niet.
     
  19. warre

    warre

    Lid geworden:
    19. feb 2008
    Berichten:
    4.139
    Leuk Bevonden:
    336
    Er zijn geen andere meldingen dat het op w61 niet werkt en de console die jij doorstuurde toont geen errors gerelateerd aan dit script. Dus is er even goed een kans dat er niks met het script is maar dat het aan een instelling / wijziging ligt. Er zijn meerdere redenen waarom het script naar het volgend dorp kan gaan, maar zonder enige informatie kan ik niet bepalen of het script echt iets verkeerd doet of het gewoon werkt zoals het moet maar niet zoals jij het wilt.

    Ik kan enkel helpen als ik ALLE nodige informatie hebben, dat wilt zeggen het script zoals het in jou snellijst staat, screens van rooftochten pagina van dorpen die het script overslaat en die volgens jou niet kloppen, errors als die er zijn, ... Pas als ik die heb kan ik kijken waar het aan ligt en helpen.
     
  20. Nazeyuki

    Nazeyuki

    Lid geworden:
    18. jun 2013
    Berichten:
    387
    Leuk Bevonden:
    68
    Werkt lekker hier, thanks man!