This is documentation of program VinczeSwiss. If you do not understand Czech, you can:
Dokumentace k programu VinczeSwiss
(uživatelský manuál v otázkách a odpovědích)
Seznam otázek:
Co je to VinczeSwiss?
Jaké jazykové mutace program nabízí?
Proč je číslo verze programu tak dlouhé?
Jaké má program limity ohledně počtu hráčů a počtu kol?
To má opravdu program tak málo funkcí?
Proč v programu není ikonka na ukládání?
I když je ukládání automatické, je možné si přesto turnaj nějak zazálohovat?
Nechce se mi vkládat hráče do programu po jednom. Mohu nějak dávkově naimportovat celý seznam hráčů?
Při přidávání hráče mi nefunguje tlačítko "Hledat". Program po mě chce nějaký soubor z internetu. Proč si program ten soubor nestáhne sám? A co mám tedy dělat?
Při zakládání turnaje jsem spletl počet kol a pomocná hodnocení. Jde to dodatečně změnit?
Chtěl bych jiné přidělování bodů než 1- 0,5 -0. Jde to?
Chtěl bych zrušit celé nalosování 6. kola. Jde to?
V 6. kole se zjistilo, že je špatně jeden výsledek ze 4. kola. Jak tento výsledek změnit?
Chtěl bych (sice trošku unfair) nasadit v 7. kole dva hráče proti sobě. Jde to?
Chtěl bych si nějaký už odehraný turnaj (řízený jiným programem) přepsat do VinczeSwiss. Jak mám postupovat?
Je možné někde sledovat, co program při párování dělá?
Lze ten otravný dotaz při zavírání programu nějak vypnout?
Mohu sestavy (reporty) prohlížet v něčem jiném než v Internet Exploreru?
Sestavy mají nějaké vadné zobrazování národních znaků. Jak to opravit?
Mohu si ty sestavy dát na svoje webové stránky?
Je tenhle program jen pro šachy? Pořádáme amatérské turnaje (badminton, šipky, karty). Je možné evidovat skóre (góly/sety/zásahy) (např. 3-2)?
To je skvělé, že to ve fotbalovém turnaji eviduje góly, počítá pomocná hodnocení jako vyšší počet vstřelených branek, rozdíl branek, podíl branek. Ale proč je u toho podílu branek 1000?
Je párovací algoritmus (implementovaný v programu VinczeSwiss) podle FIDE předpisů?
Dostane někdy program VinczeSwiss certifikaci FIDE?
A po takové nudné dokumentaci, nebyl by nějaký vtípek?
(nahoru)
Co je to VinczeSwiss?
VinczeSwiss je počítačový program, jehož účelem je losování šachových (ale nejen šachových!) turnajů švýcarským systémem.
Je poskytován zdarma (freeware) a je určen pro operační systémy Microsoft Windows (95/98/ME/NT4.0/2000/XP/Vista/7/8/10/11).
Poznámka: Používáte Linux? Program VinczeSwiss funguje i v Linuxu, stačí použít Wine.
Autorem programu je Ing. Roman Vincze (e-mail: vincze@ji.cz). Program byl naprogramován
ve vývojovém prostředí Delphi 5 Professional (vývojové prostředí je poměrně staré (z roku 1999) - to proto, že si fakt nehodlám znovu a znovu
kupovat licence na novější a novější Delphi).
Disclaimer:
Program VinczeSwiss je poskytován "tak jak je", bez jakékoliv záruky.
Autor programu neponese za žádných okolností odpovědnost za jakékoli škody
vyplývající z používání či nesprávného používání tohoto programu.
(nahoru)
Jaké jazykové mutace program nabízí?
Nyní lze v programu přepínat mezi dvěma jazyky: češtinou a angličtinou. Program je ale vytvořen tak, aby snadno umožnil přidávání dalších jazyků.
Jazykové soubory se nachází v podadresáři Language (soubory czech.txt a english.txt). Pokud například nějaký Švéd přeloží obsah
souboru english.txt do švédštiny, bude následně program VinczeSwiss komunikovat s uživateli i švédsky.
Pokud mi onen Švéd zašle výše zmíněný švédský překlad (jako soubor swedish.txt), bude tento překlad součástí dalšího sestavení programu VinczeSwiss.
Pravidla pro překlad: měl by to překládat rodilý mluvčí daného jazyka, měl by to být šachista znalý šachové terminologie a měl by
(před zasláním nové jazykové verze mě) to v programu VinczeSwiss pořádně otestovat (jestli není někde nějaký text na obrazovce příliš dlouhý).
V kódu programu VinczeSwiss je (už nyní) ošetřený i případ, že by jazykový soubor neobsahoval všechny texty. Pokud budou některé texty chybět
(třeba protože jazykový soubor je pro starší verzi programu VinczeSwiss a tam některé texty ještě nebyly), pak se zobrazí v built-in angličtině.
Texty v programu VinczeSwiss jsou číslovány vzestupnou a souvislou číselnou řadou, takže dobrovolníkům-překladatelům bude
(s případnou novou verzí programu VinczeSwiss) stačit dopřeložit (z english.txt) pouze texty s vyššími čísly, než je poslední číslo
v příslušné jazykové mutaci (např. swedish.txt).
Tímto jsem jen tak mimochodem prozradil, že angličtiny jsou v programu VinczeSwiss dvě.
Jedna built-in a druhá v english.txt (v ideálním případě budou tyto angličtiny vždy stejné). I v případě,
že by si nějaký méně zkušený uživatel smazal celý obsah podadresáře Language, zůstane mu alespoň built-in angličtina.
Disclaimer:
Moje vývojové prostředí Delphi 5 Professional (kvůli svému stáří) nepodporuje unicode, takže přepínání jazyků v programu VinczeSwiss
bude fungovat pouze pro jazyky, které mají tzv. jednobajtové kódování znaků. Takže všechny evropské jazyky mohou být podporovány (stačí přeložit
english.txt do příslušného jazyka). Naopak, asijská (obrázková) písma s dvoubajtovým unicode kódováním znaků podporována nebudou
(změna od verze 1.09).
! Dodatek: !
Od 29.2.2020 je v programu VinczeSwiss (1.05) k dispozici němčina.
Od 29.2.2020 je v programu VinczeSwiss (1.05) k dispozici italština.
Od 9.9.2020 je v programu VinczeSwiss (1.05) k dispozici ruština.
Od 29.10.2020 je v programu VinczeSwiss (1.06) k dispozici slovenština.
Od 30.11.2020 je v programu VinczeSwiss (1.06) k dispozici španělština.
Od 8.8.2023 je v programu VinczeSwiss (1.11) k dispozici vietnamština.
Od 10.9.2023 je v programu VinczeSwiss (1.12) k dispozici maďarština.
(nahoru)
Proč je číslo verze programu tak dlouhé?
Číslo verze programu (např. 1.00) je doplněno číslem sestavení (např. 1.00.000). Je to tak kvůli (očekávanému) rozšiřování jazykových verzí.
Kvůli nově přidanému jazyku není nutné recompilovat program (verze programu tedy zůstane), pouze bude zip soubor (sestavení ke stažení/downloadu)
rozšířen o další jazykový txt-soubor.
(nahoru)
Jaké má program limity ohledně počtu hráčů a počtu kol?
Počet kol není nijak omezován. Počet hráčů v jednom turnaji může být maximálně 2000. Tuto hodnotu mohu (recompilací programu) kdykoliv zvýšit,
a to na jakoukoliv vyšší hodnotu (program by ovšem následně měl o trochu vyšší paměťové nároky a byl by o trochu pomalejší).
(nahoru)
To má opravdu program tak málo funkcí?
Grafické uživatelské rozhraní programu (GUI) bylo navrženo co nejjednodušeji. Aby základní funkce programu byl schopen
(i bez přečtení této dokumentace) ovládat i méně zkušený uživatel (a nebylo tedy nutné jisté dvoudenní
školení pro šachové rozhodčí R2). Pokud ale (v turnaji) nastanou nějaké skutečnosti,
které nelze vyřešit klikáním v GUI (např. zrušení nalosování celého kola), tato dokumentace popíše (viz dále), jak lze tyto (ošemetné)
situace vyřešit (bez GUI).
(nahoru)
Proč v programu není ikonka na ukládání?
Protože není potřeba. Program ukládá automaticky. Co uživatel v programu zadá, je nejen zapsáno do operační paměti, ale je
(ihned ve stejném okamžiku) zapsáno i do textových souborů (na pevném disku počítače). Textové soubory se nachází v adresáři,
který byl založen se založením nového turnaje (cesta k tomuto adresáři je zobrazována na hlavním okně programu VinczeSwiss).
Textové soubory mají strukturu navrženou tak, aby byly snadno čitelné nejen programem, ale i člověkem.
- options.txt - zde je uložen počet kol turnaje MaxRound, barva pro 1. nasazeného hráče ColourFor1stPlayer,
typ turnajových bodů PointsType a pomocná hodnocení TB1 až TB5. Soubor vzniká při založení turnaje.
- players.txt - tento soubor obsahuje jména hráčů, jejich elo (důležité pro přidělení nasazovacího startovního čísla),
u hráče může být zadáno i FIDE ID.
- roundN.txt - tyto soubory (round1.txt, round2.txt, ...) obsahují nalosování jednotlivých kol a následně jsou zde i výsledky partií.
Soubory options.txt, players.txt a roundN.txt jsou velmi důležité a nesmí být (uživatelem) smazány (v opačném případě
bude turnaj nenávratně poškozen). V turnajovém adresáři vznikají i další soubory (které ale mohou být uživatelem smazány bez rizika): mají příponu
i předponu htm a jsou to zobrazované sestavy (reporty) jako startovní listina, nalosování kola, výsledky kola a výsledné pořadí.
(nahoru)
I když je ukládání automatické, je možné si přesto turnaj nějak zazálohovat?
Ano, samozřejmě. Turnajový adresář (cesta k turnajovému adresáři je zobrazována na hlavním okně programu VinczeSwiss)
si můžete kdykoliv a kamkoliv zkopírovat.
Částečné zálohování je implementováno rovnou i v programu. Pokud v souboru VinSwiss.ini
(soubor je hned vedle samotného exe programu VinSwiss.exe)
změníte IsBackupRoundFiles=False na IsBackupRoundFiles=True, tak budou roundN.txt soubory vytvářeny
(v turnajovém adresáři) dvojmo.
(nahoru)
Nechce se mi vkládat hráče do programu po jednom. Mohu nějak dávkově naimportovat celý seznam hráčů?
Program VinczeSwiss data o hráčích ukládá do souboru players.txt. Editací tohoto souboru
(ručně, nebo na to můžete použít vlastní program/utilitu) můžete naimportovat/nakopírovat vlastní seznam hráčů.
Strukturu souboru players.txt dobře dokumentuje už první (komentářový)
řádek v tomto souboru. Každý další řádek odpovídá jednomu hráči. Položky každého řádku jsou:
- Name - příjmení a jméno hráče (napřed pište příjmení, jinak se to ve startovní listině bude dle abecedy třídit špatně).
- ELO - zapište takové elo, které odpovídá charakteru turnaje (blesk/rapid).
- FideID - zatím k ničemu, ale až někdy v budoucnosti (možná) bude export turnaje na zápočet na elo, tak se uplatňovat toto pole bude.
- on/off - zapnutí/vypnutí nasazování hráče do dalšího kola. Standardně je 1, pro pozastavené hráče 0 (pozastaveným hráčům není při párování přidělen soupeř)
- ArrivalID - specialita programu VinczeSwiss. Jde o to, že při příchodu nějakého hráče v průběhu turnaje, pokud pořadatelé
umožní tomuto novému hráči hrát, je nutné (podle pravidel švýcaru) přečíslovat startovní čísla.
Proto pro jednoznačnou identifikaci hráče program VinczeSwiss nepoužívá startovní čísla, ale takzvané ArrivalID.
Toto označení (přezdívku) hráče si program VinczeSwiss vytváří sám. Přezdívky hráčů
lze ale vytvářet i jakkoliv jinak (hlavně přezdívka musí být unikátní (jiný hráč jí nesmí mít) a bez diakritiky (národních znaků)).
Pozor: ArrivalID (alias/přezdívku hráče) můžete v souboru players.txt změnit pouze do nalosování
prvního kola (tedy do vzniku souboru round1.txt).
! Dodatek: !
ArrivalID vytvořené programem VinczeSwiss mají standardně předponu Arr. Od verze 1.07 ale program VinczeSwiss umožňuje tuto předponu změnit.
V souboru VinSwiss.ini změňte SystemPrefixForAlias=Arr na něco jiného (bez diakritiky!). Rozhodně ale nedoporučuji volit prázdný řetězec.
Sice i to funguje, ale soubory roundN.txt jsou pak pro člověka hůře čitelné - protože není zřejmé, co je jméno a co je alias.
Od verze 1.08 je možné ovlivnit, jakým způsobem program VinczeSwiss vytváří aliasy ArrivalID. Pokud je ArrUseNumbersOnly=False, tak program aliasy vytváří
jako zkratku ze jména. Například je-li jméno hráče Vincze Roman, pak alias je ArrVincze. Ovšem pro jazyky, které nepíší latinkou, to nemusí být vhodné.
Je proto možné nastavit ArrUseNumbersOnly=True, a potom program vytváří aliasy jako čísla: Arr1, Arr2, Arr3 ... .
! Dodatek: !
Od verze 1.07 přibyly v souboru players.txt další dva sloupce:
- NationalID - obdoba FideID, ale pro národní elo (např. české LOK).
- TeamID - pomocí tohoto pole je možné definovat příslušnost hráče k nějakému týmu, klubu nebo dokonce státu.
Jde o to, že na některých turnajích může/musí
pořadatel zajistit, aby např. v posledních třech kolech turnaje proti sobě nehráli hráči ze stejného státu. Kvůli regulérnosti.
Hráčům je přiřazena nějaká zkratka pro tým (např. CZE nebo GER nebo USA). Pokud (např. v prvních kolech turnaje) je v souboru
VinSwiss.ini nastaveno IsForbiddenMatchAgainstTeamMembers=False, pak program VinczeSwiss páruje jako obvykle.
Pokud (např. pro poslední tři kola turnaje) je nastaveno IsForbiddenMatchAgainstTeamMembers=True, pak hráče z jednoho
týmu/klubu/státu to navzájem nepáruje. Pozor: nastavení proměnné IsForbiddenMatchAgainstTeamMembers se neuplatní,
pokud je zapnuto JaVaFoIsUsed=True.
A jako po každé jiné ruční změně souboru VinSwiss.ini, i po změně IsForbiddenMatchAgainstTeamMembers je nutné program VinczeSwiss ukončit a znovu spustit.
! Dodatek: !
Vyplnění pole TeamID při zadávání hráče umožňuje v turnaji jednotlivců souběžně pořádat i soutěž družstev.
Od verze 1.13 je v programu VinczeSwiss speciální report pro takovou souběžnou soutěž družstev.
Vytváření reportu zapnete (v konfiguračním souboru VinSwiss.ini) volbou TeamReport_IsUsed=True.
Jméno vytvářeného souboru můžete ovlivnit proměnnou TeamReport_ShortFileName (například TeamReport_ShortFileName=TeamReportFile.htm).
Ve výchozím nastavení TeamReport_TopNplayers=3 se počítají (pro týmovou soutěž) výsledky tří nejlepších hráčů každého týmu.
Report můžete mít buď jen se jmény týmů (pokud je nastaveno TeamReport_WithPlayersList=False) nebo i se jmény
počítaných/nepočítaných hráčů (pokud je nastaveno TeamReport_WithPlayersList=True). Report je vytvářen v turnajovém adresáři
souběžně s vytvářením sestavy "Sestava - Pořadí s kartami hráčů" pro turnaj jednotlivců.
(nahoru)
Při přidávání hráče mi nefunguje tlačítko "Hledat". Program po mě chce nějaký soubor z internetu. Proč si program ten soubor nestáhne sám? A co mám tedy dělat?
Program by si samozřejmě mohl ten soubor z internetu stáhnout sám. Ale já jsem se rozhodl, že ponechám
zkušenému uživateli
více kontroly nad celým procesem stahování FIDE rating listu (vlastně: já ponechávám
zkušenému uživateli více kontroly ve více věcech, jak ještě bude ukázáno v dalších otázkách a odpovědích).
Takže pokud se opravdu nechcete spokojit se zadáváním jména hráče a jeho ela rovnou v programu
VinczeSwiss a vyžadujete FIDE rating list, tak si stačí z internetu stáhnout soubor
https://ratings.fide.com/download/players_list_xml.zip.
Tento ZIP soubor rozbalte, vznikne (obří) XML soubor. XML soubor nakopírujte do podadresáře Elo.
Při následném prvním použití tlačítka Hledat program provede konverzi (obřího) XML souboru do formátu
(pro program VinczeSwiss) mnohem vhodnějšího (úspornějšího).
V adresáři Elo vznikne soubor elo.txt. Pak již původní XML soubor nebude potřeba a můžete jej smazat.
Pozor: Operace převádění XML souboru na soubor elo.txt je paměťově náročná.
XML soubor má více než 400 MB (inu, milion hráčů je milion hráčů). Takže pokud Váš počítač
má méně než 512 MB paměti RAM, nastavte (v operačním systému Windows) alespoň dostatečně velký (odkládací) swap soubor.
Pokud by se Vám i nově vzniklý soubor elo.txt zdál příliš velký, můžete si jej (nejrůznějšími utilitami pro práci s textem) zmenšit.
Třeba tak, že v něm ponecháte jen hráče ve Vašem národním šachovém svazu.
Nebo si klidně můžete vytvořit soubor elo.txt i vlastní: každý řádek obsahuje jednoho hráče
a formát tohoto řádku je (FIDE ID|jméno hráče bez diakritiky|stát|pohlaví|elo|elo-rapid|elo-blesk|rok narození|).
Takže například takto:
324906|Vincze Roman|CZE|M|2129|2113|2108|1974|
Protože FIDE rating list (XML soubor) je bez diakritiky (národních znaků), je i soubor elo.txt bez
diakritiky. Při použití tlačítka Hledat je ale absence diakritiky (v souboru elo.txt) zohledněna.
I když zadáte hledat např. "Večeřa", program VinczeSwiss bude ve FIDE rating listu hledat "Vecera" (a najde).
Pokud si ale hodláte vytvořit elo.txt vlastní, mohli byste chtít mít v tomto souboru i diakritiku.
V takovém případě, aby program VinczeSwiss při hledání (v elo.txt) diakritiku neořezával,
nastavte v souboru VinSwiss.ini proměnnou EloSearchRemoveDiacritics=True na hodnotu EloSearchRemoveDiacritics=False.
Pozor: Tlačítko Hledat vrací pouze prvních 100 výsledků hledání. Pokud chcete tuto hodnotu změnit,
tak v souboru VinSwiss.ini změňte EloSearchMaxCountLines=100 na něco jiného.
! Dodatek: !
Od verze 1.07 je možné okno Vyhledávání hráče přizpůsobit. V souboru VinSwiss.ini je na to nová sekce [FormStrG]. Je možné
změnit šířku okna (proměnná Width) nebo šířky jednotlivých sloupců (ColWidthType až ColWidthClub).
! Dodatek: !
Od verze 1.07 byl formát souboru elo.txt rozšířen o tři (koncové) sloupce (FIDE ID|jméno hráče bez diakritiky|stát|pohlaví|elo|elo-rapid|elo-blesk|rok narození|titul|Národní ID|Klub|).
Takže například takto:
324906|Vincze Roman|CZE|M|2129|2113|2108|1974|KM|1204|TJ Jiskra Havlíčkův Brod
Nové pole titul je automaticky konvertováno z XML souboru (viz výše). Nová pole Národní ID a Klub se ovšem v XML (FIDE rating list)
nevyskytují, jejich naplnění by musel zajistit správce národního elo.
Poznámka: Kontaktoval jsem správce české LOK, ten ale odmítl vytvářet národní elo listinu LOK ve formátu vhodném pro program VinczeSwiss.
Program VinczeSwiss nicméně pole Národní ID a Klub zpracovává, takže až se správci národních elo proberou ...
(opravdu nemohu zajišťovat import národního elo pro všechny země světa - každá národní elo listina je zveřejňována v jiném formátu).
! Dodatek: !
Verze 1.08 přinesla možnost mít (v podadresáři Elo) více souborů. Nejen elo.txt s FIDE elo, ale třeba i cze.txt s českým LOK
nebo ger.txt s německým DWZ ... . Aby program VinczeSwiss hledal i v dalších souborech, je nutné v souboru VinSwiss.ini nastavit
IsLoadMoreEloFiles=True. A samozřejmě musíte takové soubory mít. Ideální by bylo, kdyby takové soubory poskytovali administrátoři národních ratingů (viz poznámka výše).
! Dodatek: !
Ve verzi 1.12 byl import FRL (FIDE rating listu) přeprogramován. Nová funkce pro konverzi XML souboru na TXT soubor má drasticky menší paměťové nároky (je ale trochu pomalejší), takže už by se (na počítačích s nedostatečně velkou RAM) neměla konverze zastavit kvůli "Out of memory".
(nahoru)
Při zakládání turnaje jsem spletl počet kol a pomocná hodnocení. Jde to dodatečně změnit?
Ano. Program VinczeSwiss ukončete. V turnajovém souboru options.txt změňte hodnotu MaxRound a hodnoty TB1 až TB5
(přípustné hodnoty pro pomocná hodnocení TB jsou uvedeny v úvodním komentářovém řádku souboru options.txt).
Pak program VinczeSwiss spusťte znovu a otevřete znovu i příslušný turnaj.
! Dodatek: !
Až do verze VinczeSwiss 1.07 byla na okně Nový turnaj přednastavována vždy tato pomocná hodnocení: BH, SB, PS, cWin, cBlack (vysvětlení zkratek viz níže).
Od verze VinczeSwiss 1.07 je možné si v souboru VinSwiss.ini nadefinovat vlastní defaultní pořadí, a to v sekcích DefaultTBforChess a DefaultTBforGoals.
Přípustná pomocná hodnocení (šachová):
BH ... Buchholz
midBH ... střední Buchholz
BHcut1 ... Buchholz bez nejhoršího
DiEnc ... vzájemné(á) utkání
SB ... Sonneborn–Berger
PS ... Progress
cWin ... počet výher
cWinBl ... počet výher černými
cBlack ... vícekrát černé
Přípustná pomocná hodnocení (nešachová):
G1 ... více vstřelených gólů
-G2 ... méně obdržených gólů
G1-G2 ... rozdíl vstřelených a obdržených gólů
G1/G2 ... podíl vstřelených a obdržených gólů
DiEnc ... vzájemné(á) utkání (od verze 1.13)
(nahoru)
Chtěl bych jiné přidělování bodů než 1- 0,5 -0. Jde to?
Ano. Při zakládání turnaje zvolte v poli Přidělované body hodnotu 3-1-0. Jiné hodnoty (než 1-0,5-0 a 3-1-0)
nejsou podporovány. Ale například
2-1-0 by bylo jen zdvojnásobeným ekvivalentem 1- 0,5 -0. Jestliže fakt chcete 2-1-0, tak si v konečné tabulce
všechny body vynásobte dvěma.
Pozor: typ přidělovaných bodů (1- 0,5 -0 nebo 3-1-0) musíte zvolit už na začátku turnaje. Pokud dodatečně v průběhu turnaje
změníte hodnotu PointsType v souboru options.txt, vznikne chaos
(protože výsledky už nalosovaných a odehraných kol jsou (v původním bodovém ohodnocení) již zapsané v souborech roundN.txt).
! Dodatek: !
Pokud je v turnaji lichý počet hráčů, tak bývá zvykem, že volný hráč dostane bod jako za výhru (přesněji: 1 bod při bodování 1-0.5-0 nebo 3 body při bodování 3-1-0).
Od verze 1.13 program VinczeSwiss umožňuje nepřidělovat za "bye" žádné body. Stačí v konfiguračním souboru
VinSwiss.ini nastavit proměnnou ByePoints. Pro ByePoints=asWin se za "bye" body přidělují.
Pro ByePoints=asLost se za "bye" body nepřidělují. Pouze nastavení asWin nebo asLost je možné.
(nahoru)
Chtěl bych zrušit celé nalosování 6.kola. Jde to?
Ano, velmi snadno. Program VinczeSwiss ukončete. Smažte turnajový soubor round6.txt.
Pak program VinczeSwiss spusťte znovu a otevřete znovu i příslušný turnaj.
Program si bude myslet, že 6. kolo ještě nebylo nalosováno (a můžete tedy např. nějakému hráči po/zastavit nasazování).
Pozor: Pokud místo nechtěného round6.txt si omylem smažete round5.txt, tak máte obrovský problém.
(nahoru)
V 6. kole se zjistilo, že je špatně jeden výsledek ze 4. kola. Jak tento výsledek změnit?
Program VinczeSwiss ukončete. V turnajovém souboru round4.txt opravte špatně zadaný výsledek ze 4. kola.
Pak program VinczeSwiss spusťte znovu a otevřete znovu i příslušný turnaj. Výsledek ze 4.kola bude změněn a body příslušných
hráčů budou přepočítány (akorát nasazení 5. kola mělo být úplně jiné).
(nahoru)
Chtěl bych (sice trošku unfair) nasadit v 7. kole dva hráče proti sobě. Jde to?
To mám radit s takovými prasárnami? No tak dobře.
Těm dvěma hráčům dejte stopku (nenasazen). Pak (normálně) nalosujte 7.kolo (tím vznikne soubor round7.txt).
Program VinczeSwiss ukončete. Na konci turnajového souboru round7.txt smažte dva řádky, které odpovídají
nenasazení obou hráčů. Namísto toho jako poslední řádek uveďte (vytvořte) řádek, který bude odpovídat partii mezi dotčenými dvěma hráči.
Přitom povinnými údaji řádku/partie (v souborech roundN.txt) je pouze výsledek a aliasy obou hráčů:
|?-?|||Alias1hrace-Alias2hrace
Ostatní pole jsou nepovinná a program VinczeSwiss je v souborech roundN.txt vytváří pouze pro snadnější čitelnost těchto souborů člověkem.
Po editaci souboru round7.txt program VinczeSwiss spusťte znovu a otevřete znovu i příslušný turnaj.
Pozor: před losováním 8. kola nezapomeňte oběma hráčům zrušit po/zastavení, jinak nebudou do 8.kola nasazeni.
(nahoru)
Chtěl bych si nějaký už odehraný turnaj (řízený jiným programem) přepsat do VinczeSwiss. Jak mám postupovat?
Spusťte program VinczeSwiss a založte si nový (prázdný) turnaj. Přidejte (jednoho po druhém) všechny hráče
a nalosujte 1.kolo. Program VinczeSwiss ukončete.
V souboru round1.txt ručně přepište původní dvojice (nalosované programem VinczeSwiss) novými dvojicemi
(jež kdysi byly skutečně nalosovány jiným programem). Jak bylo již uvedeno dříve, řádky/partie stačí psát takto:
|?-?|||Alias1hrace-Alias2hrace
Po sestavení všech dvojic soubor round1.txt uložte. Spusťte program VinczeSwiss, otevřete příslušný turnaj
a zadejte výsledky 1. kola. Poté nalosujte 2. kolo. Program VinczeSwiss ukončete.
V souboru round2.txt ručně přepište původní dvojice ... ... a tak dále až k poslednímu kolu.
Při ručním přepisování dvojic v souborech roundN.txt přeji příjemnou zábavu.
! Dodatek: !
Od verze 1.02 program VinczeSwiss podporuje import a export TRF souborů. Formát TRF souborů je popsán
v dokumentaci FIDE.
Pokud losovací program, ze kterého chcete
nějaký turnaj převést do programu VinczeSwiss, umí vyexportovat turnaj jako TRF soubor, pak takto vytvořený
TRF soubor můžete naimportovat do programu VinczeSwiss stejně snadno (a stejným tlačítkem), jako kdybyste
otvírali turnaj.
A naopak - turnaj z programu VinczeSwiss můžete převést do jiného losovacího programu.
Pokud je v programu VinczeSwiss v souboru VinSwiss.ini nastaveno MakeOutputTRF16=True, pak program
VinczeSwiss vytváří TRF soubor souběžně s vytvářením sestavy Pořadí s kartami hráčů.
Takto vytvořený TRF soubor pak najdete v adresáři příslušného turnaje.
! Dodatek: !
Od verze 1.07 program VinczeSwiss může exportovat i druhý TRF soubor, a to s NationalID místo FideID. Stačí nastavit
MakeOutputTRF16National=True. Jméno exportovaného souboru pak určuje proměnná ShortFileNameTRF16National, například
ShortFileNameTRF16National=NationalTournamentReportFile.trf. Vyexportované TRF soubory by šlo použít k odeslání turnaje na elo zápočet,
kdyby to ovšem akceptovala FIDE (TRF soubor s FideID) nebo národní zpracovatelé elo (TRF soubor s NationalID).
Možná v budoucnosti.
(nahoru)
Je možné někde sledovat, co program při párování dělá?
V souboru VinSwiss.ini (soubor je hned vedle samotného exe programu VinSwiss.exe) změňte
IsWriteAllowedToLogFile=False na IsWriteAllowedToLogFile=True.
Pak bude v každém turnajovém adresáři vytvářen (za běhu programu VinczeSwiss) soubor tournlog.log.
Logovací soubor je (pouze) v angličtině (a to i když je zapnuta jiná než anglická jazyková mutace).
Log tournlog.log lze kdykoliv smazat.
Pozor: log je velmi podrobný a u turnajů s mnoha hráči a mnoha koly může narůstat i do velikosti desítek megabytů.
(nahoru)
Lze ten otravný dotaz při zavírání programu nějak vypnout?
Ano, jde to vypnout. V souboru VinSwiss.ini změňte
CloseQuery=True na CloseQuery=False.
(nahoru)
Mohu sestavy (reporty) prohlížet v něčem jiném než v Internet Exploreru?
Ano, na prohlížení sestav lze použít jakýkoliv webový prohlížeč. Aby program VinczeSwiss otvíral
tento jiný prohlížeč, je nutné v souboru VinSwiss.ini změnit proměnnou
ExePath.
Místo ExePath=C:\Program Files\Internet Explorer\iexplore.exe uveďte například
ExePath=C:\Program Files (x86)\Mozilla Firefox\firefox.exe.
Proměnnou ExePath musíte změnit podle skutečného umístění Vašeho webového prohlížeče
na hardisku počítače. Na každém počítači to může být jinak.
! Dodatek: !
Od verze 1.05 program VinczeSwiss umožňuje zvolit typ řazení ve startovní listině.
Pokud je v souboru VinSwiss.ini nastaveno StartListSortingType=1, tak řazení ve
startovní listině je podle abecedy.
Pokud je nastaveno StartListSortingType=2, tak řazení ve
startovní listině je podle elo.
(nahoru)
Sestavy mají nějaké vadné zobrazování národních znaků. Jak to opravit?
V souboru VinSwiss.ini změňte proměnnou
HtmlCharset.
Autor programu VinczeSwiss je z České republiky, proto je přednastaveno HtmlCharset=windows-1250.
Možností nastavení charsetu je velmi mnoho. Pro západní Evropu je HtmlCharset=windows-1252, pro ruskou
azbuku je HtmlCharset=windows-1251.
Pro angličtinu stačí HtmlCharset=us-ascii.
Na správný charset pro Váš jazyk se můžete zeptat
vyhledávače Google.
! Dodatek: !
Od verze VinczeSwiss 1.06 je v souboru VinSwiss.ini (kromě již zmíněného klíče HtmlCharset) celá sekce klíčů [LanguageFileAndHtmlCharset].
Pro každý jazykový soubor (z podadresáře Language) je v této sekci definován i odpovídající html charset.
! Dodatek: !
Od verze VinczeSwiss 1.09 je v souboru VinSwiss.ini nová sekce InternalFontCharset.
Pokud nastavíte IsInternalFontCharset=True, bude defaultní kódová stránka (tj. kódová stránka nastavená v ovládacích panelech Windows)
nahrazena jinou kódovou stránkou.
Například, pokud v sekci InternalFontCharset nastavíte IsInternalFontCharset=True a
russian.txt=204, tak ruská azbuka bude zobrazována i na počítači s jinými než ruskými Windowsy, kde v ovládacích panelech Windows není
(pro ne-unicode programy) nastavena azbuka jako výchozí.
Seznam možných čísel (pro nastavení sekce InternalFontCharset) naleznete přímo v souboru VinSwiss.ini. Toto nastavení by mělo umožnit lokalizovat program VinczeSwiss i do jazyků s obrázkovými písmy (čínština, japonština, korejština).
! Dodatek: !
Od verze VinczeSwiss 1.10 je v souboru VinSwiss.ini nový klíč EnhancedCharsAreUsed.
Pokud je nastaveno EnhancedCharsAreUsed=True,
uplatňují se znaky z klíčů EnhancedCharForDraw, EnhancedCharForWhiteColor a EnhancedCharForBlackColor.
Vylepšené znaky jsou pro remízu (0.5 → ½), označení bílého (W → □) a označení černého (B → ■).
(nahoru)
Mohu si ty sestavy dát na svoje webové stránky?
Ano. Sestavy (htm soubory), vznikající v adresáři s turnajem, lze libovolně přenášet. Třeba na Vaše webové stránky.
(nahoru)
Je tenhle program jen pro šachy? Pořádáme amatérské turnaje (badminton, šipky, karty). Je možné evidovat skóre (góly/sety/zásahy) (např. 3-2)?
Program VinczeSwiss lze použít i pro jiné než šachové turnaje. Při zakládání nového
turnaje, v poli Typ pomocných hodnocení místo "[Chess] Šachová" zvolte "[Goals] Góly/Skóre".
Následně se změní pomocná hodnocení (PH1 až PH5). A na okně pro vkládání výsledků bude možné
uvést nejenom (standardní) výhra-remíza-prohra, ale objeví se i dvě nová pole pro zadání skóre.
Tip: Lze mixovat šachová (BH, SB, ...) i nešachová (G1, ...) pomocná hodnocení.
Stačí v souboru options.txt přepsat příslušná TB1 ... TB5.
! Dodatek: !
Od verze 1.04 program VinczeSwiss umožňuje vypnout šachovou podmínku, že hráč nesmí hrát
stejnou barvou figur potřetí za sebou. Takže pokud v turnaji nezáleží na přiřazení bílý/černý
(tedy domácí/hosté), lze nastavit (v INI souboru VinSwiss.ini)
GoalsSkip2ColourCondition=True.
Pozor: Při nastavení JaVaFoIsUsed=True (= párování striktně podle pravidel FIDE)
je nastavení GoalsSkip2ColourCondition=True ignorováno.
(nahoru)
To je skvělé, že to ve fotbalovém turnaji eviduje góly, počítá pomocná hodnocení jako vyšší počet vstřelených branek, rozdíl branek, podíl branek. Ale proč je u toho podílu branek 1000?
Je to jen tam, kde by se dělilo nulou. Matematika dělení nulou zakazuje (matematik: dovolte mi dělit nulou, a
já Vám dokážu, že z komína vylétávají čarodějnice - nebo Vám dokážu, že 1 = 2).
Pokud je nějaký hráč tak dobrý, že jeho skóre odehraných (např. tenisových) setů je 12-0, pak by podíl
(vyhraných a prohraných) setů byl 12/0. Proto je místo 12/0 (nekonečno?) v sestavě programu VinczeSwiss
uvedena hodnota 1000. Tuto přednastavenou hodnotu můžete změnit. V souboru VinSwiss.ini změňte
GoalsInfinityAtDivisionByZero=1000 na něco jiného.
Můžete změnit i GoalsDivisionNumberOfDecimalPlaces.
Při nastavení GoalsDivisionNumberOfDecimalPlaces=3 počítá program VinczeSwiss
podíl branek/setů na tři desetinná místa.
(nahoru)
Je párovací algoritmus (implementovaný v programu VinczeSwiss) podle FIDE předpisů?
Narovinu řečeno - NE.
FIDE uznává různé varianty švýcaru: Swiss-Dutch (holandská varianta), Swiss-Dubov,
dokonce je uznávána taková debilita jako Swiss-Monrad.
Můj algoritmus lze označit za velmi zjednodušený Swiss-Dutch.
V dávných dobách (minulé století) nebyly počítače tak rozšířené jako dnes. Tehdy bylo nutné (turnaje
hrané švýcarským systémem) losovat na papírových kartičkách. Proto i pravidla pro švýcarský systém musela být
jednodušší (jinak by to bylo papírovými kartičkami nezvládnutelné).
S masivním nástupem počítačů FIDE pravidla pro švýcar neustále zesložiťuje (může, protože stejně všechno počítá/sestavuje
počítač). Tak vznikla (zatím) konečná zrůdnost:
současná pravidla (2019) švýcarského systému pro verzi Swiss-Dutch.
Čtyři typy přesuvných hráčů A/B/C/D, složitá pravidla výměn, ... jako inženýr matematiky tohle neuznávám.
Důsledkem dnešních složitých pravidel (švýcarského systému) je situace, že programátoři
všech dnes FIDE-certifikovaných programů (Swiss Manager, Vega, ...) nejsou schopní
to naprogramovat a používají párovací engine JaVaFo.jar
z původního (holandského) programu Swiss Master (proto ten název Swiss-Dutch (holandská varianta švýcarského systému)).
Takové programy pak ke svému běhu potřebují nainstalovanou Javu. Takový bizár (sdílený JaVaFo.jar)!
Můj program VinczeSwiss na enginu JaVaFo.jar závislý není.
Program VinczeSwiss má vlastní (rekurzivní) párovací funkci.
Daní za to je nekompatibilita se současnými FIDE předpisy.
Ale proč by (nakonec) nemohl být uznán i Swiss - (simple) Dutch (1986 retro) (alias Swiss-Vincze)?
Můj algoritmus je plně deterministický (není v něm tedy žádné
místo pro náhodu (kromě nalosování barvy 1. nasazeného hráče pro 1. kolo)). Pokud nalosování kola smažete
(viz smazání souboru round6.txt), program VinczeSwiss vzápětí nalosuje to samé.
Zpětná ověřitelnost (správného) sestavení dvojic je základní podmínkou pro regulérnost nalosování.
! Dodatek: !
Od verze 1.04 program VinczeSwiss umožňuje zrychlené párování (lze zapnout v INI souboru VinSwiss.ini nastavením
IsAcceleratedPairings=True).
Zrychlený švýcarský systém se používá ve velkých turnajích, kde je počet hráčů větší než optimální vzhledem k počtu kol.
První polovina hráčů dostane pro první dvě kola fiktivní bod (pouze pro losování), který je jim po druhém kole odebrán.
Pozor: Při nastavení JaVaFoIsUsed=True
je nastavení IsAcceleratedPairings=True ignorováno.
(nahoru)
Dostane někdy program VinczeSwiss certifikaci FIDE?
Pravidla certifikace FIDE jsou hodně náročná.
O certifikaci FIDE lze uvažovat, pokud program VinczeSwiss uspěje. Tedy pokud se (coby neplacený program)
masově rozšíří na úkor programů placených. Spousta turnajů nejde na zápočet na FIDE ELO - a všechny takové turnaje
může losovat VinczeSwiss i bez FIDE certifikace.
Na míru rozšířenosti (programu VinczeSwiss) bude ukazovat i množství jazykových mutací (překládaných dobrovolníky).
! Dodatek: !
Od verze 1.02 program VinczeSwiss podporuje i (externí) párovací engine JaVaFo.jar.
Pokud je v programu VinczeSwiss v souboru VinSwiss.ini nastaveno JaVaFoIsUsed=True, pak program
VinczeSwiss nepoužije pro párování vlastní párovací algoritmus, ale
použije engine JaVaFo.jar. Tímto je dosaženo plné kompatibility s předpisy FIDE ohledně párování!
Pozor: Pro správnou funkci enginu JaVaFo.jar musí být na počítači nainstalovaná Java.
Disclaimer: Autorem enginu JaVaFo.jar je Roberto Ricca. Engine JaVaFo.jar je volně dostupný - lze si jej stáhnout z
http://www.rrweb.org/javafo/current/javafo.jar.
Můžete si přečíst i o historii enginu JaVaFo,
nebo studovat jeho uživatelský manuál.
! Dodatek: !
Pokud má program VinczeSwiss dostat FIDE certifikaci, bude nutné (někdy v budoucnu) doprogramovat funkci na verifikaci turnaje.
To znamená, že program o již odehraném turnaji rozhodne, jestli všechna párování jsou v souladu s pravidly.
Případné ruční sestavení dvojic tak bude odhaleno a takový turnaj nebude moci být započítán na elo/na normy.
Proto od verze 1.08 jsou do souboru options.txt ukládány i informace o losování/párování každého kola: seznam pozastavených hráčů,
JaVaFoUsed ano/ne, SkipColourCondition ano/ne, ForbiddenMatchAgainstTeamMembers ano/ne. Tyto nové informace budou potřebné pro verifikační funkci.
Verifikační funkce bude ale nutná až teprve když dojde (ze strany FIDE) k uznání algoritmu Swiss-Vincze.
Vysvětlení:
(tento odstavec je platný už od verze 1.00, do dokumentace byl přidán ale až ve verzi 1.11)
Všimněte si, že můj algoritmus obsahuje formulaci "Při sestavování dvojic se neuvažují barvy. Barvy jsou přidělovány až po dokončení párování." Tuto formulaci obsahoval i "Řád švýcarského systému FIDE" (z roku 1986), z něhož jsem vycházel. Současné FIDE předpisy (implementované v JaVaFo.jar) takovou formulaci již neobsahují. Je to naopak. Současné FIDE předpisy nařizují změnit párování dvojic, pokud to zlepší pravidelnost střídání barev (proto současné FIDE předpisy jsou tak složité a obsahují čtyři typy přesuvných hráčů A/B/C/D ...).
Popis mého algoritmu je více jak 4x kratší než popis (v současnosti platného) algoritmu Swiss-Dutch schváleného FIDE ... tedy můj algoritmus je mnohem jednodušší ... ale FIDE algoritmus lépe střídá barvy.
Takže: Pokud je v programu VinczeSwiss v souboru VinSwiss.ini nastaveno JaVaFoIsUsed=True (FIDE algoritmus), tak oproti JaVaFoIsUsed=False (můj algoritmus) budou hráči v mnohem menší míře dostávat stejnou barvu dvakrát za sebou.
Disclaimer: Pravidelné/pravidelnější střídání barev je pro hráče příjemnější ... ale může být i na škodu. Představte si poslední kolo turnaje. Můj algoritmus by nalosoval "první-třetí" (pokud tedy "první" už hrál se "druhým") ... a "třetí" by dostal šanci "prvního" porazit a sám být první. FIDE algoritmus může zjistit, že by se narušilo pravidelné střídání barev a "první-třetí" nenalosuje (nalosuje třeba "první-čtvrtý" a "třetí-šestý").
(nahoru)
A po takové nudné dokumentaci, nebyl by nějaký vtípek?
Máte na mysli programátorské velikonoční vajíčko (tzv. easter egg)?
Prozradím,
že program VinczeSwiss obsahuje i vtípek. Vtípek (samozřejmě) nemá žádný vliv na funkčnost programu
a při běžném používání programu VinczeSwiss jej nemáte šanci odhalit. Ale pokud na jistém okně programu
použijete jistou (naprosto nesmyslnou) sekvenci kláves, objeví se ... .