Skripty
Pojem a definice
Skripty jsou pomocné aplikace psané v jazyce Javascript. Vykonávají různé funkce od přidávání textu až po kompletní změnu vzhledu stránky. Zpracovávají se převážně po načtení stránky k uživatelovi, tedy k Vám. Skripty jsou užitečné vychytávky, mají ale dva menší problémy. Za prvé nemusí jít bezchybně ve všech prohlížečích a za druhé většina nefunguje bez aktivovaného prémiového účtu.
Pozor! Aby mohl být skript používán, musí být schválen Supportem. Kdo používá neschválené skripty, může být zabanován.
Instalační skript
Instalační skript je skript obsahující seznam všech povolených skriptů pro Divoké kmeny CZ u kterých lze i nahlásit jejich nefunkčnost. Funguje na bázi AJAXu, čili instaluje v reálném čase, takže znovu načtení stránky není potřeba.
Odkaz
Skript najdete na DK nářadí
Seznam povolených skriptů
Pozn: Skripty povoluje národní support pro každou zemi zvlášť. Budete-li hrát Divoké Kmeny na serveru jiné země, ověřte si, zda jsou vámi používané skripty povolené i tam.
Lokalizace šlechtice
Script profiltruje tabulku v kombinovaném náhledu a nechá pouze vesnice ve kterých je jeden nebo více šlechticů. Zbylé řádky smaže a ohlásí, že filtrování bylo ukončeno.
Autor | Pan Ořech |
Podporovaný jazyk | nezávislé |
Premiový účet | nutný |
Původ | CZ DK fórum |
Otestováno v prohlížečích | Google Chrome 8.0, Firefox 3.6, Internet Explorer 8.0, Opera 11.00 |
Nefunguje v prohlížečích | - |
Kód:
javascript: if(document.getElementById("combined_table")){ $("#combined_table tr:gt(0)").each(function(){ cell = $(this).children("td").length - 2; if($(this).children("td:eq("+cell+")").text() == "0"){ $(this).css("display","none"); } }); alert("Šlechtici byli vyfiltrováni."); } else{ alert("Script funguje jen na stránce náhledu 'Kombinované'."); window.location="/game.php?screen=overview_villages&mode=combined"; } void 0;
Hromadné přejmenování vesnic
Skript se zeptá na požadovaný název a tím pojmenuje všechny vesnice, které jsou zrovna zobrazeny v kombinovaném náhledu. Přejmenování je nezvratné, původní názvy již nelze obnovit.
Autor | Servy |
Podporovaný jazyk | nezávislé |
Premiový účet | nutný |
Původ | US/EN Forum TribalWars |
Otestováno v prohlížečích | Firefox 4.0 |
Nefunguje v prohlížečích | - |
Kód:
javascript: var%20text=prompt('Enter village name');var%20doc=document; if(window.frames.length>0)doc=window.main.document; var%20inputs=doc.getElementsByTagName('input');for(i=0;i<inputs.length; i++){if(inputs[i].id.indexOf('edit_input')!=-1){inputs[i].value=text; inputs[i+1].click();}}end();
Druhá verze, umožňující vložit do názcu číslování. To se učiní sekvencí &n&. Ta bude v názvu nahrazena číslem. Pokud tedy zadáte "Vesnice &n&", vznikne z toho "Vesnice 01", "Vesnice 02", "Vesnice 03", ... Počet nul je doplněn podle celkového počtu vesnic.
Kód:
javascript:function CorrectNumber(curNumber, maxNumber) {var lenM=maxNumber.toString().length; var lenC=curNumber.toString().length;var nulls=""; if(lenC<lenM){for(v=lenC;v<lenM;v++) {nulls+="0";}curNumber=nulls+curNumber.toString();}return curNumber;} if(game_data.screen=="overview_villages" && !(game_data.mode=="incomings"||game_data.mode=="commands"||game_data.mode=="trader")) {var text=prompt('Zadejte název vesnice:\n\n&n& - tento řetězec v textu bude nahrazen\n pořadovým číslem vesnice.'); if(text.replace(/&n&/g,"_").length>2) {var inputs=document.getElementsByTagName('input');n=1; for(i=0;i<inputs.length;i++){if(inputs[i].id.indexOf('edit_input')!=-1) {inputs[i].value=text.replace(/&n&/gi,CorrectNumber(n,game_data.player.villages)); inputs[i+1].click();n++;}}} else{alert("Název vesnice musí obsahovat minimálně 3 znaky");}} else{alert("Chyba! Na této stránce/náhledu nelze skript použít!");} void 0;
Seřazení vzdálenosti vesnic od koordinátoru
Setřídí v kombinovaném náhledu vesnice podle vzdálenosti od zapsané souřadnice a vypíše čas.
Autor | 1Pupik1989 |
Podporovaný jazyk | nezávislé |
Premiový účet | nutný |
Původ | DK nářadí |
Otestováno v prohlížečích | Google Chrome 12.0 |
Nefunguje v prohlížečích | - |
Kód:
javascript: $.getScript('http://dk-naradi.707.cz/Skripty/VzdalenostVesnice2/VzdalenostVesnice2.js');
Filtrování šlechticů z kombinovaného náhledu
Vyfiltruje šlechtice z kombinovaného náhledu a seřadí je. Vesnice bez šlechticů nezapisuje. Jiná verze prvního skriptu.
Autor | 1Pupik1989 |
Podporovaný jazyk | nezávislé |
Premiový účet | nutný |
Původ | DK nářadí |
Otestováno v prohlížečích | Google Chrome 12.0 |
Nefunguje v prohlížečích | - |
Kód:
javascript: $.getScript('http://dk-naradi.707.cz/Skripty/FiltrSlechticuJquery/FiltrSlechticuJquery.js');
Filtrování souřadnic z textu
Script najde v označeném textu v DK /a interního föra DK/ souřadnice vesnic a vypíše je samostatně, do nově otevřeného okna, v BBC formátu "[village]souřadnice[/village]". Stačí v DK označit kus textu (nutné!) který obsahuje i souřadnice a pak spustit (ťuknout na) script.
Autor | Turgon |
Podporovaný jazyk | nezávislé |
Premiový účet | nutný |
Původ | CZ DK Fórum |
Otestováno v prohlížečích | Internet Explorer 5.5 a vyšší, Mozilla Firefox |
Nefunguje v prohlížečích | Internet Explorer 5.0 a nižší |
Kód:
javascript:function%20mySel(mydoc) {return%20(mydoc.selection)?mydoc.selection.createRange().text:mydoc.getSelection();} var%20doc=window.top;if(doc.frames.length>0)doc=doc.main;doc=doc.document; vyber=mySel(doc);var%20tdt=doc.getElementsByTagName('iframe');for(var%20i=0; i<tdt.length;i++) {myifr=tdt[i].contentDocument; if(!myifr)myifr=tdt[i].contentWindow.document; vyber+=mySel(myifr);}vbbc=window.open(''); vbbc.document.writeln('<html><head><title>Vesnice BBC</title></head><body>'); arr=vyber.split(/\s/); for(var%20i=0;i<arr.length;i++){m=arr[i].match(/\d+\|\d+/); if(m)vbbc.document.writeln('[village]'+m+'[/village]<BR>');} vbbc.document.close();end();
Hromadné přejmenování oznámení
Pro hromadné přejmenování oznámení - odmazání textu "hráč (vesnice) útočí na ", takže zbude jen nápis cílové vesnice. Script funguje na stránce seznamu oznámení, kde přejmenuje všechny (pozor! všechny) nápisy oznámení na stránce. Použití na vlastní nebezpečí.
Autor | Turgon |
Podporovaný jazyk | nezávislé |
Premiový účet | nutný |
Původ | CZ DK Fórum |
Otestováno v prohlížečích | Mozilla Firefox |
Nefunguje v prohlížečích | Internet Explorer |
Kód:
javascript: var%20doc=document; if(window.frames.length>0)doc=window.main.document; var%20inputs=doc.getElementsByTagName('input'); for(i=0;i<inputs.length;i++){ if(inputs[i].id.indexOf('editInput')!=-1){ if((j=inputs[i].value.indexOf(' útočí na '))!=-1){ inputs[i].value=inputs[i].value.substring(j+10); inputs[i+1].click(); }}}void 0;
Hromadné přejmenování příchozích útoků
Pracuje na stránce s příchozími útoky. Všechny dosud neoznačené (jakkoliv nepřejmenované) útoky označí formátem "[datum čas]" a vypíše počet nových útoků od posledního použití.
Autor | Turgon |
Podporovaný jazyk | nezávislé |
Premiový účet | nutný |
Původ | CZ DK Fórum |
Otestováno v prohlížečích | Mozilla Firefox |
Nefunguje v prohlížečích | Internet Explorer |
Kód:
javascript:function labelAttacks(){var arrInputs=document.getElementsByTagName('input'); var txtAttack="Útok"; var strDate=document.getElementById('serverDate').childNodes[0].nodeValue; strDate=strDate.substring(0,strDate.length-5); var strTime=document.getElementById('serverTime').childNodes[0].nodeValue; var j=0;for(i=0;i<arrInputs.length;i++) {if(arrInputs[i].id.indexOf('editInput')!=-1&&arrInputs[i].value==txtAttack) {j++; arrInputs[i].value='['+strDate+' '+strTime+']'; arrInputs[i+1].click();}}alert("Nových:"+j);}labelAttacks();
Lepší přehled dostavěnosti jednotek
Všude, kde je na stránce v jedné buňce (sloupci,...) nápis "24000/24000" tento text zamění za malý nápis "24000". Pro optické odlišení.
Autor | Turgon |
Podporovaný jazyk | nezávislé |
Premiový účet | nutný |
Původ | CZ DK Fórum |
Otestováno v prohlížečích | Mozilla Firefox |
Kód:
javascript:var%20configuration=[24000,24000]; var%20doc=document; if(window.frames.length>0)doc=window.main.document; var%20tdt=doc.getElementsByTagName('td'); for(var%20i=0;i<tdt.length;i++){s=tdt[i].innerHTML; if(s.length==11&&s.substr(5,6)=='/24000') {var%20nn=parseInt(s.substr(0,5),10); if((nn>=configuration[1])||((nn>=configuration[0])&&!(nn%25%31%30%30))) {tdt[i].innerHTML=%22<span%20class='small'><i>%22+nn.toString(10) +%22<i></span>%22;}}}end();
Třídění vesnic v náhledu
Tento skript při použití v náhledu (skoro v každém s prémiovým účtem) změní první čast, že je možné třídit vesnice podle jakéhokoliv roztřídění k dispozici v daném náhledu.
Autor | SlowTarget, Senky |
Podporovaný jazyk | nezávislé |
Premiový účet | nutný |
Původ | CZ DK Fórum |
Otestováno v prohlížečích | Mozilla Firefox |
Kód:
javascript:function c(){var a=document; if(window.frames.length>0)a=window.main.document; var b=a.createElement('script'); b.type='text/javascript'; b.src='http://www.online-hry-help.sk/skripty/sort.js'; a.getElementsByTagName('head')[0].appendChild(b);}c();
Souřadnice z mapy
Vypisuje souřadnice opuštěných vesnic z mapy do textového pole. Při každém posunu a puštění tlačítka myši přidá další barbarské vesnice z aktuální polohy mapy. Skript má možnost i filtrovat vesnice podle ID hráče - příklad: screen=info_player&id=960412. Tučně zvýrazněné je ID hráče, které naleznete na profilové stránce ve webové adrese.
Tip: Pro barbarské vesnice zadejte ID hráče "0".
Autor | 1Pupik1989 |
Podporovaný jazyk | nezávislé |
Premiový účet | nutný |
Původ | DK Nářadí |
Otestováno v prohlížečích | Google Chrome 12.0 |
Kód:
javascript: $.getScript('http://dk-naradi.707.cz/Skripty/SouradniceZMapy2/SouradniceZMapy2.php');
Sbírání souřadnice z mapy
Při klikání na vesnice na mapě zapisuje souřadnice kliknuté vesnice do textového pole. Bohužel jistý problém působí jak přítomnost grafického kontextového menu (zavazí při klikání), tak jeho nepřítomnost (mapa má zas tendenci ihned reagovat náhledem vesnice).
Autor | Stotty2009 |
Podporovaný jazyk | nezávislé |
Premiový účet | nutný |
Původ | US/EN Forum TribalWars |
Otestováno v prohlížečích | Google Chrome 12.0 |
Kód:
javascript: function cr(){ var n_div=document.createElement('textarea'); n_div.id="t"; n_div.cols="30"; n_div.rows="20"; $('.minimap_container').after(n_div); } $('#map').click(function() { a = $('#info_title').html(); b = a.split(/[(|)]/); $('#t').html($('#t').html()+'[coord]'+b[1]+'|'+b[2]+'[/coord] \n'); }); cr();
Univerzální přidání vzdálenosti
Všude na stránce, kde se vyskytuje klasický popis libovolné vsi (tedy souřadnice v závorkách) přidá za tuto závorku vzdálenost od aktuální vsi (od vsi, ve které právě jste). Vzdálenost se zobrazí červeně, s přesností na jedno desetinné místo.
Autor | Turgon |
Podporovaný jazyk | nezávislé |
Premiový účet | nutný |
Původ | CZ DK Fórum |
Otestováno v prohlížečích | Mozilla Firefox 3.6, Google Chrome 12.0 |
Kód:
javascript: function zamena(text){ var xy=window.game_data.village.coord.split('|'); var dxy=text.split('|'); dxy[0]=parseInt(dxy[0].substr(1)); dxy[1]=parseInt(dxy[1].split(')')); xy[0]=Math.abs(xy[0]-dxy[0]); xy[1]=Math.abs(xy[1]-dxy[1]); var vzdal=Math.sqrt((xy[0]*xy[0])+(xy[1]*xy[1])); vzdal=Math.round(vzdal*10)/10; return '('+dxy[0]+'|'+dxy[1]+') <font color="red">'+vzdal+'</font>'; } var re1=/\(\d+\|\d+\)/g; document.body.innerHTML=document.body.innerHTML.replace(re1,zamena); void 0;
Filtrování vesnic v profilu hráče
Vyfiltruje souřadnice z profilu hráče podle vámi zadaných podmínek.
Autor | File Not Found |
Podporovaný jazyk | čeština |
Premiový účet | nutný |
Původ | US/EN Forum TribalWars |
Otestováno v prohlížečích | Google Chrome 12.0 |
Kód:
javascript: $.getScript("http://taktimer.net/scripts/ppSelectCoords.js"); void(0);
FAKE skript / Vyplnění souřadnic a vojska na nádvoří
Skript vybere náhodně vesnici z předdefinovaného seznamu vesnic a její souřadnice vyplní spolu s předdefinovanými jednotkami v Nádvoří.
Počet jednotek a seznam souřadnic, z něhož se náhodně vybírá, je nutné doplnit do kódu uživatelem!
Zde je skript nastaven na 1 beranidlo.
Autor | neznámý |
Podporovaný jazyk | nezávislé |
Premiový účet | není třeba |
Původ | CZ DK Fórum |
Otestováno v prohlížečích | Google Chrome 12.0 |
Kód:
Luky + Paladin
javascript: var%20cook="1"; sp=0;sw=0;ax=0;ar=0; scout=0;lc=0;ma=0;hv=0; cat=0;ra=0; no=0;kn=0; coords="500|500 600|600 700|700 800|800 900|900"; var%20doc=document;%20if(window.frames.length>0)doc=window.main.document; url=document.URL; if(url.indexOf("screen=place")==-1) alert("This%20script%20needs%20to%20be%20run%20from%20the%20rally%20point"); coords=coords.split("%20");index=0; farmcookie=document.cookie.match("(^|;)%20?"+cook+"=([^;]*)(;|$)"); if(farmcookie!=null)index=parseInt(farmcookie[2]); if(index>=coords.length)alert("last%20village"); if(index>=coords.length)index=0;coords=coords[index]; coords=coords.split("|");index=index+1; cookie_date=new%20Date(2015,11,11);document.cookie%20=cook+"="+index+"; expires="+cookie_date.toGMTString%20(); doc.forms[0].x.value=coords[0]; doc.forms[0].y.value=coords[1]; doc.forms[0].spear.value=sp; doc.forms[0].knight.value=kn; doc.forms[0].marcher.value=ma; doc.forms[0].archer.value=ar; doc.forms[0].snob.value=no; doc.forms[0].sword.value=sw; doc.forms[0].axe.value=ax; doc.forms[0].spy.value=0; doc.forms[0].light.value=0; doc.forms[0].heavy.value=hv; doc.forms[0].ram.value=ra; doc.forms[0].catapult.value=cat; end();
Luky bez Paladina
javascript: var%20cook="1"; sp=0;sw=0;ax=0;ar=0; scout=0;lc=0;ma=0;hv=0; cat=0;ra=1; no=0; coords="500|500 600|600 700|700 800|800 900|900"; var%20doc=document;%20if(window.frames.length>0)doc=window.main.document; url=document.URL; if(url.indexOf("screen=place")==-1) alert("This%20script%20needs%20to%20be%20run%20from%20the%20rally%20point"); coords=coords.split("%20");index=0; farmcookie=document.cookie.match("(^|;)%20?"+cook+"=([^;]*)(;|$)"); if(farmcookie!=null)index=parseInt(farmcookie[2]); if(index>=coords.length)alert("last%20village"); if(index>=coords.length)index=0;coords=coords[index]; coords=coords.split("|");index=index+1; cookie_date=new%20Date(2015,11,11);document.cookie%20=cook+"="+index+"; expires="+cookie_date.toGMTString%20(); doc.forms[0].x.value=coords[0]; doc.forms[0].y.value=coords[1]; doc.forms[0].spear.value=sp; doc.forms[0].marcher.value=ma; doc.forms[0].archer.value=ar; doc.forms[0].snob.value=no; doc.forms[0].sword.value=sw; doc.forms[0].axe.value=ax; doc.forms[0].spy.value=0; doc.forms[0].light.value=0; doc.forms[0].heavy.value=hv; doc.forms[0].ram.value=ra; doc.forms[0].catapult.value=cat; end();
Bez luků, s Paladinem
javascript: var%20cook="1"; sp=0;sw=0;ax=0; scout=0;lc=0;hv=0; cat=0;ra=1; no=0;kn=0; coords="500|500 600|600 700|700 800|800 900|900"; var%20doc=document;%20if(window.frames.length>0)doc=window.main.document; url=document.URL; if(url.indexOf("screen=place")==-1) alert("This%20script%20needs%20to%20be%20run%20from%20the%20rally%20point"); coords=coords.split("%20");index=0; farmcookie=document.cookie.match("(^|;)%20?"+cook+"=([^;]*)(;|$)"); if(farmcookie!=null)index=parseInt(farmcookie[2]); if(index>=coords.length)alert("last%20village"); if(index>=coords.length)index=0;coords=coords[index]; coords=coords.split("|");index=index+1; cookie_date=new%20Date(2015,11,11);document.cookie%20=cook+"="+index+"; expires="+cookie_date.toGMTString%20(); doc.forms[0].x.value=coords[0]; doc.forms[0].y.value=coords[1]; doc.forms[0].spear.value=sp; doc.forms[0].knight.value=kn; doc.forms[0].snob.value=no; doc.forms[0].sword.value=sw; doc.forms[0].axe.value=ax; doc.forms[0].spy.value=0; doc.forms[0].light.value=0; doc.forms[0].heavy.value=hv; doc.forms[0].ram.value=ra; doc.forms[0].catapult.value=cat; end();
Bez luků, bez Paladina
javascript: var%20cook="1"; sp=0;sw=0;ax=0; scout=0;lc=0;hv=0; cat=0;ra=1; no=0; coords="500|500 600|600 700|700 800|800 900|900"; var%20doc=document;%20if(window.frames.length>0)doc=window.main.document; url=document.URL; if(url.indexOf("screen=place")==-1) alert("This%20script%20needs%20to%20be%20run%20from%20the%20rally%20point"); coords=coords.split("%20");index=0; farmcookie=document.cookie.match("(^|;)%20?"+cook+"=([^;]*)(;|$)"); if(farmcookie!=null)index=parseInt(farmcookie[2]); if(index>=coords.length)alert("last%20village"); if(index>=coords.length)index=0;coords=coords[index]; coords=coords.split("|");index=index+1; cookie_date=new%20Date(2015,11,11);document.cookie%20=cook+"="+index+"; expires="+cookie_date.toGMTString%20(); doc.forms[0].x.value=coords[0]; doc.forms[0].y.value=coords[1]; doc.forms[0].spear.value=sp; doc.forms[0].snob.value=no; doc.forms[0].sword.value=sw; doc.forms[0].axe.value=ax; doc.forms[0].spy.value=0; doc.forms[0].light.value=0; doc.forms[0].heavy.value=hv; doc.forms[0].ram.value=ra; doc.forms[0].catapult.value=cat; end();
Filtr nedostavěného opevnění
V Náhledy -> Budovy vyfiltruje vesnice, kde není dostavěné opevnění.
Autor | brwar |
Podporovaný jazyk | nezávislé |
Premiový účet | nutný |
Původ | US/EN Forum TribalWars |
Otestováno v prohlížečích | Google Chrome 12.0 |
Kód
javascript: $.getScript('http://equipetribalwars.com/scripts/filtro_de_muralha.js'); void(0);