Index: ps/trunk/binaries/data/mods/public/gui/credits/credits.js
===================================================================
--- ps/trunk/binaries/data/mods/public/gui/credits/credits.js (revision 18280)
+++ ps/trunk/binaries/data/mods/public/gui/credits/credits.js (revision 18281)
@@ -1,77 +1,98 @@
var g_PanelNames = ["special", "programming", "art", "translators", "misc", "donators"];
-var g_PanelTexts = [];
+var g_ButtonNames = {};
+var g_PanelTexts = {};
var g_ActivePanel = -1;
function init()
{
// Load credits list from the disk and parse them
for (let name of g_PanelNames)
- g_PanelTexts.push(parseJSONCredits(name));
+ {
+ let json = Engine.ReadJSONFile("gui/credits/texts/" + name + ".json");
+ if (!json || !json.Content)
+ {
+ error("Could not load credits for " + name + "!");
+ continue;
+ }
+ g_ButtonNames[name] = json.Title || name;
+ g_PanelTexts[name] = parseHelper(json.Content);
+ }
+ placeButtons();
selectPanel(0);
}
+function placeButtons()
+{
+ const numButtons = 20;
+ if (g_PanelNames.length > numButtons)
+ warn("Could not display some credits.");
+
+ for (let i = 0; i < numButtons; ++i)
+ {
+ let button = Engine.GetGUIObjectByName("creditsPanelButton[" + i + "]");
+ if (i >= g_PanelNames.length)
+ {
+ button.hidden = true;
+ continue;
+ }
+ let size = button.size;
+ size.top = i * 35;
+ size.bottom = size.top + 30;
+ button.size = size;
+
+ button.onPress = (i => function() {selectPanel(i);})(i);
+ let buttonText = Engine.GetGUIObjectByName("creditsPanelButtonText[" + i + "]");
+ buttonText.caption = translate(g_ButtonNames[g_PanelNames[i]]);
+ }
+}
+
// Run through a "Content" list and parse elements for formatting and translation
function parseHelper(list)
{
let result = "";
for (let object of list)
{
if (object.LangName)
result += "[font=\"sans-bold-stroke-14\"]" + object.LangName + "\n";
if (object.Title)
result += "[font=\"sans-bold-stroke-14\"]" + translate(object.Title) + "\n";
if (object.Subtitle)
result += "[font=\"sans-bold-14\"]" + translate(object.Subtitle) + "\n";
if (object.List)
{
for (let element of object.List)
{
if (element.nick && element.name)
result += "[font=\"sans-14\"]" + sprintf(translate("%(nick)s - %(name)s"), { "nick": element.nick, "name": element.name }) + "\n";
else if (element.nick)
result += "[font=\"sans-14\"]" + element.nick + "\n";
else if (element.name)
result += "[font=\"sans-14\"]" + element.name + "\n";
}
result += "\n";
}
if (object.Content)
result += "\n" + parseHelper(object.Content) + "\n";
}
return result;
}
-function parseJSONCredits(panelName)
-{
- let json = Engine.ReadJSONFile("gui/credits/texts/" + panelName + ".json");
- if (!json || !json.Content)
- {
- error("Could not load credits for " + panelName + "!");
- return "";
- }
-
- return parseHelper(json.Content);
-}
-
function selectPanel(i)
{
if (g_ActivePanel != -1)
{
- let oldPanelButton = Engine.GetGUIObjectByName(g_PanelNames[g_ActivePanel] + "PanelButton");
+ let oldPanelButton = Engine.GetGUIObjectByName("creditsPanelButton[" + g_ActivePanel+ "]");
oldPanelButton.sprite = "BackgroundBox";
}
g_ActivePanel = i;
- let newPanelButton = Engine.GetGUIObjectByName(g_PanelNames[g_ActivePanel] + "PanelButton");
- newPanelButton.sprite = "ForegroundBox";
-
- let creditsText = Engine.GetGUIObjectByName("creditsText");
- creditsText.caption = g_PanelTexts[i];
+ Engine.GetGUIObjectByName("creditsPanelButton[" + i + "]").sprite = "ForegroundBox";
+ Engine.GetGUIObjectByName("creditsText").caption = g_PanelTexts[g_PanelNames[i]];
}
Index: ps/trunk/binaries/data/mods/public/gui/credits/credits.xml
===================================================================
--- ps/trunk/binaries/data/mods/public/gui/credits/credits.xml (revision 18280)
+++ ps/trunk/binaries/data/mods/public/gui/credits/credits.xml (revision 18281)
@@ -1,75 +1,42 @@
-
+
Index: ps/trunk/binaries/data/mods/public/gui/credits/texts/art.json
===================================================================
--- ps/trunk/binaries/data/mods/public/gui/credits/texts/art.json (revision 18280)
+++ ps/trunk/binaries/data/mods/public/gui/credits/texts/art.json (revision 18281)
@@ -1,194 +1,195 @@
{
+ "Title": "Art",
"Content": [
{
"Title": "Artistic managers",
"Content": [
{
"Subtitle": "Art lead",
"List": [
{"nick": "Wijitmaker", "name": "Jason Bishop"},
{"nick": "Mythos_Ruler", "name": "Michael D. Hafer"},
{"nick": "Enrique", "name": "Enrique Keykens"}
]
},
{
"Subtitle": "Sound Manager",
"List": [{"nick": "lostchocolatelab", "name": "Damian Kastbauer"}]
},
{
"Subtitle": "Composer",
"List": [{"nick": "OmriLahav", "name": "Omri Lahav"}]
}
]
},
{
"Title": "Map Making",
"List": [
{"nick": "Aeros (aka CheeZy)", "name": "Bobby Ognyanov"},
{"nick": "mmayfield45"},
{"nick": "Mythos_Ruler", "name": "Michael D. Hafer"},
{"nick": "niektb", "name": "Niek ten Brinke"},
{"nick": "Pureon"},
{"nick": "stanislas69", "name": "Stanislas Dolcini"},
{"nick": "SMST"},
{"nick": "Yodaspirine"}
]
},
{
"Title": "Random Map Scripts",
"List": [
{"nick": "_kali", "name": "Andy Brewer"},
{"nick": "Ben", "name": "Ben Vinegar"},
{"nick": "FeXoR", "name": "Florian Finke"},
{"nick": "howlingflute"},
{"nick": "niektb", "name": "Niek ten Brinke"},
{"nick": "Spahbod", "name": "Omid Davoodi"},
{"nick": "wraitii", "name": "Lancelot de Ferrière le Vayer"}
]
},
{
"Title": "2D Art",
"List": [
{"nick": "Annatar", "name": "Kenneth Branch"},
{"nick": "b.w.keough", "name": "Brendan Keough"},
{"nick": "Brownboot", "name": "Allen White"},
{"nick": "Centurion_13", "name": "Shan Coster"},
{"nick": "Childhood Trauma", "name": "Praveen Pillai"},
{"nick": "dashinvaine", "name": "Gordon Napier"},
{"nick": "Dnas", "name": "David Benjamin"},
{"nick": "Fire Giant", "name": "Malte Schwarzkopf"},
{"nick": "Hyborian", "name": "Shan Sherrill"},
{"nick": "irishstag", "name": "Ryan Karsten"},
{"nick": "lanoocha", "name": "Lana"},
{"nick": "Lion.Kanzen", "name": "Marcio Duron"},
{"nick": "LordGood", "name": "Johnathan B. Good"},
{"nick": "Mythos_Ruler", "name": "Michael D. Hafer"},
{"nick": "Pureon"},
{"nick": "raulfabi"},
{"nick": "s1lence", "name": "Hans Heintze"},
{"nick": "Scorpion Ra", "name": "Aaron Robinson"},
{"nick": "Shield Bearer", "name": "Amish Coelho"},
{"nick": "Wijitmaker", "name": "Jason Bishop"},
{"nick": "yoreei", "name": "Yordan Grigorov"}
]
},
{
"Title": "3D Art",
"List": [
{"nick": "Athos"},
{"nick": "Brightgalrs", "name": "Robert D. Schultz"},
{"nick": "Eggbird", "name": "Egbert Tigelaar"},
{"nick": "EmjeR", "name": "Matthijs de Rijk"},
{"nick": "Enrique", "name": "Enrique Keykens Espolio"},
{"nick": "Historicity", "name": "Shane"},
{"nick": "Gen.Kenobi", "name": "Daniel Schubert"},
{"nick": "LordGood", "name": "Johnathan B. Good"},
{"nick": "Micket"},
{"nick": "Mythos_Ruler", "name": "Michael D. Hafer"},
{"nick": "necro", "name": "Thomas Eichler"},
{"nick": "Pacman", "name": "Johannes(John) Saarniit"},
{"nick": "paperkat", "name": "William Pryn"},
{"nick": "privateer", "name": "Jeff Groves"},
{"nick": "Pureon"},
{"nick": "Quacker", "name": "Jordan Quackenbush"},
{"nick": "Saurabh", "name": "Saurabh Torne"},
{"nick": "Scorpion Ra", "name": "Aaron Robinson"},
{"nick": "Shield Bearer", "name": "Amish Coelho"},
{"nick": "stanislas69", "name": "Stanislas Dolcini"},
{"nick": "Strannik"},
{"nick": "Zaggy1024", "name": "Gregory Bertilson"},
{"nick": "Wijitmaker", "name": "Jason Bishop"}
]
},
{
"Title": "Music",
"Content": [
{
"List": [
{"nick": "Dariusofwest", "name": "Allan Brown"},
{"nick": "OmriLahav", "name": "Omri Lahav"},
{"nick": "Vaevictis_Music", "name": "Boris Hansen"}
]
},
{
"Subtitle": "Additional music, percussion, djembe, sampling",
"List": [{"name": "Jeff Willet"}]
},
{
"Subtitle": "Additional music",
"List": [
{"name": "Shlomi Nogay"},
{"name": "Mike Skalandunas"}
]
},
{
"Subtitle": "Flute",
"List": [{"name": "Marta Mc'Cave Dayan"}]
},
{
"Subtitle": "Djembe",
"List": [{"name": "Bar Guzi"}]
},
{
"Subtitle": "Frame drum, darbuka, riq, toms",
"List": [{"name": "Dror Parker"}]
},
{
"Subtitle": "Didgeridoo",
"List": [{"name": "Yael Pinto"}]
},
{
"Subtitle": "Trumpet",
"List": [{"name": "Avior Rokah"}]
},
{
"Subtitle": "Celtic harp",
"List": [{"name": "Avital Rom"}]
},
{
"Subtitle": "Tin whistles",
"List": [{"name": "Yotam Ronen"}]
},
{
"Subtitle": "Viola, violin",
"List": [{"name": "Shir-Ran Yinon"}]
}
]
},
{
"Title": "Sound",
"List": [
{"nick": "carsten", "name": "Carsten Rojahn"},
{"nick": "dungeonsound615", "name": "Mike Stanton"},
{"nick": "DynamiteSoundBytes", "name": "Nolan, Tony, and Lucas"},
{"nick": "EvanBogunia", "name": "Evan Bogunia"},
{"nick": "khegarty", "name": "Kaitlynn Hegarty"},
{"nick": "LAVS"},
{"nick": "lostchocolatelab", "name": "Damian Kastbauer"},
{"nick": "MattSherman", "name": "Matt Sherman"},
{"nick": "mclellandp", "name": "Pat Mclelland"},
{"nick": "PhoenixDog", "name": "Shawn Anthony Poxleitner"},
{"nick": "Pureon"},
{"nick": "ryan827", "name": "Ryan Davies"},
{"nick": "Sam Assoum", "name": "Sam Assoum"},
{"nick": "Wyrmwood", "name": "Ron Lacy"}
]
},
{
"Title": "Voices",
"Content": [
{
"Subtitle": "Greek",
"List": [{"nick": "khegarty", "name": "Kaitlynn Hegarty"}]
},
{
"Subtitle": "Latin",
"List": [
{"nick": "Itms", "name": "Nicolas Auvray"},
{"name": "Camille Tidjditi"}
]
}
]
}
]
}
Index: ps/trunk/binaries/data/mods/public/gui/credits/texts/donators.json
===================================================================
--- ps/trunk/binaries/data/mods/public/gui/credits/texts/donators.json (revision 18280)
+++ ps/trunk/binaries/data/mods/public/gui/credits/texts/donators.json (revision 18281)
@@ -1,559 +1,560 @@
{
+ "Title": "Donors",
"Content" : [
{
"Title": "Pledgie Drive 1",
"List": [
{"name": "23 Anonymous Donators"},
{"name": "@bcrunos"},
{"name": "@CheDean"},
{"name": "@joshhsoj1902"},
{"name": "@kednar"},
{"name": "@NtynRuben"},
{"name": "@opengimox"},
{"name": "@scotthosking"},
{"name": "@takluyver"},
{"name": "@TubeShaped"},
{"name": "@unverbraucht"},
{"name": "@upurtwee"},
{"name": "@YannDinendal"},
{"name": "Alain Imbaud"},
{"name": "Alex McKee"},
{"name": "Alexander Kallenbach"},
{"name": "Alexander Opachev"},
{"name": "Alexander Wagner"},
{"name": "Alexey Sergin"},
{"name": "Andreas Hopfenblatt"},
{"name": "Andreas Hoppe"},
{"name": "Brent Houghton"},
{"name": "Bruno Sanchez-Huffenus"},
{"name": "Carl Olsson"},
{"name": "Cedric Heintz"},
{"name": "Chad Merkert"},
{"name": "Chad Peyton"},
{"name": "Christopher Tozzi"},
{"name": "Daniel Kuzmenko"},
{"name": "Daniel Scharrer"},
{"name": "danijelv"},
{"name": "Darrel Greenhill"},
{"name": "David Nielsen"},
{"name": "David Raich"},
{"name": "Duan Pavlík"},
{"name": "Emil Nicolaie Perhinschi"},
{"name": "Eric Winterling"},
{"name": "Étienne Bersac"},
{"name": "Evans Thomas"},
{"name": "Fabio Erculiani"},
{"name": "Felipe Torres González"},
{"name": "Fernando Martins"},
{"name": "Florian Ludwig"},
{"name": "Fredrik Eliasson"},
{"name": "Gabriel Diosan"},
{"name": "Gustav Schumann"},
{"name": "Ilya Makarov"},
{"name": "inglorion"},
{"name": "Jan Krautter"},
{"name": "Javier Alfonso"},
{"name": "Jií Jindra"},
{"name": "Jill Bishop"},
{"name": "Joakim Verona"},
{"name": "Jonathan Pritchard"},
{"name": "Jordan Taienao"},
{"name": "Jorge Vega Sánchez"},
{"name": "Juan Font Alonso"},
{"name": "Kaare Baastrup"},
{"name": "Kevin Faulkner"},
{"name": "Kieran P"},
{"name": "Klaas Waesberghe"},
{"name": "Korneel Guns"},
{"name": "Kristian Jagd"},
{"name": "Krzysztof Duchnowski"},
{"name": "Lasse Bigum"},
{"name": "Laurent Thermy"},
{"name": "lordofsoul"},
{"name": "Lorenzo Angeli"},
{"name": "Magne Djupvik"},
{"name": "Maxime Fradi"},
{"name": "Michael Stubbs"},
{"name": "Mikhail Lunkovskiy"},
{"name": "Neil Hancock"},
{"name": "Olivier Bordignon"},
{"name": "Olivier Coppin"},
{"name": "Oskar Maxa"},
{"name": "Panagiotis Tsakiris"},
{"name": "Patrice Sopel"},
{"name": "Paul Scott"},
{"name": "Pedro Veloso"},
{"name": "Séverin Lemaignan"},
{"name": "Scott C Lemon"},
{"name": "Shane Quigley"},
{"name": "Stanislav Kíž"},
{"name": "Steven Saric"},
{"name": "Thomas Hummel"},
{"name": "Thomas Mikkelsen"},
{"name": "Timothy McLaren"},
{"name": "Toni Helenius"},
{"name": "Valeryan_24"},
{"name": "Victor Lavaud"},
{"name": "Viktor Novak"},
{"name": "William Norris"}
]
},
{
"Title": "Pledgie Drive 2",
"List": [
{"name": "87 Anonymous Donators"},
{"name": "@AvivSharon"},
{"name": "@mrfurieux"},
{"name": "@sciondev"},
{"name": "@upurtweet"},
{"name": "@waytoubuntu"},
{"name": "@YannDinendal"},
{"name": "AkylaQD"},
{"name": "Alexander Hunziker"},
{"name": "Anthony Lenton"},
{"name": "arakash"},
{"name": "azkanel"},
{"name": "Catalanoic"},
{"name": "charlycoste"},
{"name": "dadarek"},
{"name": "David Callé"},
{"name": "dbileck"},
{"name": "Erik Johansson"},
{"name": "Evans Thomas"},
{"name": "fireprog"},
{"name": "Foaly"},
{"name": "Francisco Jesús Martínez Murcia"},
{"name": "francofil66"},
{"name": "Frederic Laliberte"},
{"name": "Gabriel Ionescu"},
{"name": "gheesh"},
{"name": "harrytuttle"},
{"name": "Hatsen"},
{"name": "hyno111"},
{"name": "Italo Gonzalez"},
{"name": "Jaap Broekhuizen"},
{"name": "jeykey"},
{"name": "John2Ray"},
{"name": "JuliusColtranePille"},
{"name": "Jupiter Barrera"},
{"name": "Kieran P"},
{"name": "Kyle"},
{"name": "letsyl"},
{"name": "Ludovic Claude"},
{"name": "Martin Albisetti"},
{"name": "Matthew Frost"},
{"name": "Matthew Gillespie"},
{"name": "MCMic"},
{"name": "mikeo"},
{"name": "Mikhail Nedovodin"},
{"name": "Nathanael Barbettini"},
{"name": "orpharion"},
{"name": "p2snico"},
{"name": "Pablo Briones Bas"},
{"name": "Paolo Frattini"},
{"name": "ruano1983"},
{"name": "samtuke"},
{"name": "Strategist"},
{"name": "tallanddaft"},
{"name": "Tottel"},
{"name": "Troels Arvin"},
{"name": "Tungdil"},
{"name": "VforVincent"},
{"name": "Vladislav Gapchich"},
{"name": "Yves *"}
]
},
{
"Title": "Indiegogo 2013 campaign\nMore than 1000 donators (!), including:",
"List": [
{"name": "1lightsource"},
{"name": "@GuiAmbros"},
{"name": "ACH_Likey"},
{"name": "Adam Freeman"},
{"name": "Adam Glickman"},
{"name": "Adrián Chaves Fernández (Gallaecio)"},
{"name": "Adrian Rocha"},
{"name": "adventureloop"},
{"name": "Agostino Sturaro"},
{"name": "ahj"},
{"name": "Akita Noek"},
{"name": "Albert Astals Cid"},
{"name": "Alec Gorge"},
{"name": "Alessio Bolognini"},
{"name": "Alex Brem"},
{"name": "Alex Kapranoff"},
{"name": "Alex Melville"},
{"name": "Alex W."},
{"name": "Alexander A. (cicyractu)"},
{"name": "Alexandre Prokoudine"},
{"name": "Alexey Kreshchuk"},
{"name": "Alexey Vazhnov"},
{"name": "Alice Marks"},
{"name": "Alin Hanghiuc"},
{"name": "Alister Galpin"},
{"name": "Aljullu"},
{"name": "Altwazar"},
{"name": "Alun Lewis"},
{"name": "aluriak"},
{"name": "alxndr"},
{"name": "Ana Vazquez Alonso"},
{"name": "Anders Dahnielson"},
{"name": "andersonvom"},
{"name": "André Vitor de Lima Matos"},
{"name": "Andrea Panontin"},
{"name": "Andrew M. 'Leny' Lindley"},
{"name": "Andrew Mike"},
{"name": "Andrzej Kardas"},
{"name": "Andy Allan"},
{"name": "Anirudh Surendranath"},
{"name": "Anthony J. Bentley"},
{"name": "Anthony Ryan"},
{"name": "Anton Gushcha"},
{"name": "Antti Repo"},
{"name": "April Lee"},
{"name": "Ari Selseng"},
{"name": "Armin Seuchter"},
{"name": "Arnaud Gelly"},
{"name": "Artem Kavalerov"},
{"name": "AsavarTzeth"},
{"name": "Athaniar Silverbranch"},
{"name": "Atheox"},
{"name": "Aurag"},
{"name": "baosen"},
{"name": "Bart Noordervliet"},
{"name": "BCvery1"},
{"name": "BelaB"},
{"name": "Ben Golightly"},
{"name": "Ben Kennedy"},
{"name": "Ben-Jamin' Ziegelaar"},
{"name": "Benjamin Geese"},
{"name": "Benjamin Stauß"},
{"name": "Bernhard M."},
{"name": "Bert 'Cysion' Beeckman"},
{"name": "Betsy Lipes"},
{"name": "Bill O'Dwyer"},
{"name": "Bobby Ognyanov"},
{"name": "Boris Mindzak"},
{"name": "Boris Niclas-Tölle"},
{"name": "Boyd Stephen Smith Jr."},
{"name": "Brian Aichlmayr"},
{"name": "Brian Stempin"},
{"name": "Brice Gressent"},
{"name": "Bruno Girin"},
{"name": "Cédric de Launois"},
{"name": "c0l3slaw"},
{"name": "Cajetan Bouchard"},
{"name": "Calvin Rawlings"},
{"name": "Carl Sebastian Malm"},
{"name": "Cedric Bail"},
{"name": "Chad Peyton"},
{"name": "Chanakya"},
{"name": "Charles E. Lehner"},
{"name": "Che Dean"},
{"name": "Chris Dickerson"},
{"name": "Christian 'Roggan29' Budde"},
{"name": "Christoffer 'cjva' Andersson"},
{"name": "Christoffer Ingers"},
{"name": "Christoph Zürcher"},
{"name": "Christophe & Fabienne Hugon"},
{"name": "Christopher Morrison"},
{"name": "Chrysostomos Kolovos"},
{"name": "clauskj3r"},
{"name": "Cloei Bailey"},
{"name": "Craig Millett"},
{"name": "Cristiane Weber"},
{"name": "cyrxi"},
{"name": "Cyryl Plotnicki-Chudyk"},
{"name": "D. Can Celasun"},
{"name": "daJoe"},
{"name": "Damiano Dallatana"},
{"name": "Dan Seldow"},
{"name": "Daniel Draeger"},
{"name": "Daniel Melin"},
{"name": "Daniel Spronk"},
{"name": "Daniel Wee"},
{"name": "Daniele Canciani (aka croma25td)"},
{"name": "Daniil Bondarev"},
{"name": "Daniil Kulchenko"},
{"name": "Dave Peters"},
{"name": "David Abilleira"},
{"name": "David Ahmed"},
{"name": "David Hayes"},
{"name": "David Lawrence Evans"},
{"name": "David Page"},
{"name": "David Verelst"},
{"name": "David Zschille"},
{"name": "davyg"},
{"name": "Debcool"},
{"name": "Denis Fateyev"},
{"name": "Dennis Blok"},
{"name": "Desmond Talkington"},
{"name": "devland"},
{"name": "Diego Peinador"},
{"name": "Dmitry Pashkevich"},
{"name": "Doménique van Gennip"},
{"name": "Dr Martin Gray"},
{"name": "earendil02"},
{"name": "Edgar Klenske"},
{"name": "elel"},
{"name": "Elias K Gardner"},
{"name": "Emmanuel Florac"},
{"name": "en3r0"},
{"name": "Engry Baldwin"},
{"name": "Erik J"},
{"name": "Erin"},
{"name": "Ernst Vaarties"},
{"name": "Ethan Glasser-Camp"},
{"name": "Evans Thomas"},
{"name": "Fabio Pezzoni"},
{"name": "Fedor Podolyako"},
{"name": "Felix Schindler"},
{"name": "Fidel Ramos"},
{"name": "Flo S. MTP"},
{"name": "Florian R. A. Angermeier"},
{"name": "flowblok"},
{"name": "Francis Brunelle"},
{"name": "Fred G"},
{"name": "Fred Schuit"},
{"name": "Friedemann Leipold"},
{"name": "Fringale"},
{"name": "Gary Sparks"},
{"name": "Georg R. Zufall"},
{"name": "Gerol Petruzella"},
{"name": "Gert van Valkenhoef"},
{"name": "Glorforidor"},
{"name": "Goosefraba"},
{"name": "Gordon Macleod"},
{"name": "Gudo"},
{"name": "Guillaume Desjardins"},
{"name": "Guillaume Englert"},
{"name": "Guillaume GASNIER"},
{"name": "Gustav 'Gego/XAREN' Hartvigsson"},
{"name": "Gwilym Kuiper"},
{"name": "Harry Burrows"},
{"name": "Harshid Dattani"},
{"name": "Harteex"},
{"name": "Harvy"},
{"name": "Honza Brázdil"},
{"name": "Hunv"},
{"name": "Iain Hallam"},
{"name": "Ian Davis"},
{"name": "Ian R. Bennett"},
{"name": "Isaac Clerencia"},
{"name": "itoshkov"},
{"name": "Ján Nešcivera"},
{"name": "Jacek"},
{"name": "James Dearing"},
{"name": "James Gregory"},
{"name": "James Weeks (aka Chiptoxic)"},
{"name": "Jamie"},
{"name": "Jan Chochol"},
{"name": "Jan-Tore Velle"},
{"name": "Jarl Arntzen"},
{"name": "Jason moofang"},
{"name": "Jason Smith"},
{"name": "Javier Cantero"},
{"name": "JDSJ Hollandia"},
{"name": "Jean-Baptiste CAMPESATO"},
{"name": "Jeremy Rose"},
{"name": "Jesse 'Magic' Johnson"},
{"name": "jg1234"},
{"name": "Jim Baxter"},
{"name": "Jim Howard"},
{"name": "Jimmy Turgeon"},
{"name": "Jiri Stransky"},
{"name": "Joe Johaneman"},
{"name": "Joel A. Parisi"},
{"name": "Joel Edberg"},
{"name": "Joel Friedly"},
{"name": "John Eikenberry"},
{"name": "John Furcean"},
{"name": "John Paden"},
{"name": "John Tse"},
{"name": "Jon Gjengset"},
{"name": "Jonathan Biegert"},
{"name": "Jonny McCullagh"},
{"name": "Jordan White"},
{"name": "Jose A. Rivera"},
{"name": "Jose Lou Chang"},
{"name": "Jose M Andion"},
{"name": "Josef Pruša"},
{"name": "Josepf Haslam"},
{"name": "Joseph Livecchi"},
{"name": "Joseph Thompson"},
{"name": "Josh Gunderson"},
{"name": "Julie Barton"},
{"name": "Julius FreeGamer Blog"},
{"name": "Justin James"},
{"name": "K McFadden"},
{"name": "Kaloyan Todorov"},
{"name": "Kamereon"},
{"name": "kepinpin"},
{"name": "Kevin Krammer"},
{"name": "Kevin W. Rodewald"},
{"name": "kilobug"},
{"name": "Kirkor"},
{"name": "Konstantin Kitmanov"},
{"name": "Kshitij Sobti"},
{"name": "Kyle Leach"},
{"name": "LarsHuluk"},
{"name": "Lasse Bigum"},
{"name": "Lasse Hynninen"},
{"name": "Lauris BH"},
{"name": "lbilloret"},
{"name": "Lee Symes"},
{"name": "lepiota"},
{"name": "linux_eki"},
{"name": "Liothe"},
{"name": "liquidat"},
{"name": "Lukas Daniel Klausner"},
{"name": "Magne Djupvik"},
{"name": "MaMuS"},
{"name": "Marc Schneider-Woggon"},
{"name": "Marcel de Jong"},
{"name": "Marcel Stimberg"},
{"name": "Marcus Liebhardt"},
{"name": "Mardini"},
{"name": "Marián Polták"},
{"name": "Mark Lukens"},
{"name": "Markus Enzenberger"},
{"name": "Matías Guzmán Naranjo"},
{"name": "Matei Zaharia"},
{"name": "Matic Potocnik"},
{"name": "Matt Brenner"},
{"name": "Matt Williams"},
{"name": "Max Polun"},
{"name": "Max Tweddell"},
{"name": "mecatxis"},
{"name": "Michael Laporte"},
{"name": "Michael McCafferty"},
{"name": "Michael Patzer"},
{"name": "Michael Vincent"},
{"name": "Michal Sedlak"},
{"name": "Michele Brami"},
{"name": "Michele Olivo"},
{"name": "Miguel Vera Leon"},
{"name": "Mike Manfrin"},
{"name": "Milo Radunski"},
{"name": "Mindcloud"},
{"name": "Mitchell Kember"},
{"name": "MooseTheBrown"},
{"name": "Nate 'Gnate' Sigrist"},
{"name": "Nathan"},
{"name": "Nathanael Barbettini"},
{"name": "Nehar"},
{"name": "Neil"},
{"name": "Nelson Benitez Leon"},
{"name": "Nic Thiele"},
{"name": "Niklas Rosenqvist"},
{"name": "nineinchnick"},
{"name": "Noah Rusnock"},
{"name": "Ohad Stolarz"},
{"name": "ojdo"},
{"name": "Ollie Lowson"},
{"name": "Orwell"},
{"name": "Osledy Bazo"},
{"name": "Othman Almandhari"},
{"name": "Ørjan Hoem"},
{"name": "Pablo López (kednar)"},
{"name": "Patrick Glanz"},
{"name": "Patrick McDonough"},
{"name": "Patrick Plenefisch"},
{"name": "Paul Edward Tang"},
{"name": "Paul Schorfheide"},
{"name": "Paul4kant"},
{"name": "Pavy"},
{"name": "Peter Berg"},
{"name": "Peter Davoust"},
{"name": "Peter Ståhlberg"},
{"name": "Phalgun Guduthur"},
{"name": "Philip Tellis"},
{"name": "Philipp Pilhofer"},
{"name": "Pierce Lopez"},
{"name": "Pierre 'Eunostos' Cuvelier"},
{"name": "Pierre Donat-Bouillud"},
{"name": "psq"},
{"name": "Quarkslot"},
{"name": "Randolph aka Shieldwolf"},
{"name": "Rene Balser"},
{"name": "Rob Crowther"},
{"name": "Rob Parker"},
{"name": "Rob Snelders"},
{"name": "Robert Clark"},
{"name": "Robert Hill, MD"},
{"name": "Robert Walker"},
{"name": "rocandante"},
{"name": "Romain Naour"},
{"name": "Ronald Delval"},
{"name": "Rudolf J. Mueller"},
{"name": "Rustan Håkansson"},
{"name": "Sam Griffin"},
{"name": "seaxx"},
{"name": "Sebastian Spaeth"},
{"name": "Sergey Kashin"},
{"name": "Shaun McFall"},
{"name": "sHINOBI"},
{"name": "Shiv Manas"},
{"name": "Shrink"},
{"name": "Sigfrido"},
{"name": "Simon Barnes"},
{"name": "Simon Coe"},
{"name": "Simon Wenner"},
{"name": "Sinan Onur Altinuç"},
{"name": "snorpey"},
{"name": "Standa"},
{"name": "Stepan Salenikovich"},
{"name": "Stephan Spijkers"},
{"name": "Stephan Tietz"},
{"name": "Stephan Wiehr"},
{"name": "Stephen Rule"},
{"name": "Steven Fuchs"},
{"name": "Stijn Debrouwere"},
{"name": "Stokescomp"},
{"name": "Sze Howe Koh"},
{"name": "Tanel Mae"},
{"name": "Tapio Hansson"},
{"name": "Tassos Hourmouziadis"},
{"name": "tbug"},
{"name": "Theodore Brown"},
{"name": "Thero Layfer"},
{"name": "Thomas Glamsch"},
{"name": "Thomas Penin"},
{"name": "Thorbjørn Lindeijer"},
{"name": "Tim Koschützki"},
{"name": "TimseZ"},
{"name": "TingPing"},
{"name": "Titov Andrii"},
{"name": "Toby"},
{"name": "Toby Haynes"},
{"name": "Tom C"},
{"name": "tonyo112"},
{"name": "toyotis"},
{"name": "Tribalbeat"},
{"name": "Tuhin Sheikh"},
{"name": "Tyler Hall"},
{"name": "UA"},
{"name": "udan"},
{"name": "Vadim Peretokin"},
{"name": "Valentina Mukhamedzhanova"},
{"name": "Vegar Guldal"},
{"name": "vimja"},
{"name": "Vit Pelcak"},
{"name": "Vladimir Kalugin"},
{"name": "Vladimir Lettiev"},
{"name": "Volkmar Stein"},
{"name": "waspinator"},
{"name": "William Edwards"},
{"name": "wisemonkey"},
{"name": "XioNoX"},
{"name": "Yigal Duppen"},
{"name": "Yumi"},
{"name": "Yury Vidineev"},
{"name": "Yvonne R"},
{"name": "Zach Reed"},
{"name": "Zimes"},
{"name": "ZyoxNet"}
]
}
]
}
Index: ps/trunk/binaries/data/mods/public/gui/credits/texts/misc.json
===================================================================
--- ps/trunk/binaries/data/mods/public/gui/credits/texts/misc.json (revision 18280)
+++ ps/trunk/binaries/data/mods/public/gui/credits/texts/misc.json (revision 18281)
@@ -1,52 +1,53 @@
{
+ "Title": "Miscellaneous",
"Content": [
{
"Title": "History References",
"Content": [
{
"Subtitle": "Head",
"List": [{"nick": "Shogun 144", "name": "Joshua Gilbert"}]
},
{
"List": [
{"nick": "fede_histpop", "name": "Federico Odorizzi"},
{"nick": "I_Would_Say", "name": "Nathan Benjamin"},
{"nick": "Paul", "name": "Paul Withers"},
{"nick": "Paal_101", "name": "Paul Basar"},
{"nick": "Saqqara", "name": "Ashley King"},
{"nick": "Sting", "name": "Borislav Chernev"},
{"nick": "Thorfinn the Shallow Minded", "name": "Forrest Peterson"}
]
}
]
},
{
"Title": "Community and Management",
"List": [
{"nick": "Black OP", "name": "Randy Sage"},
{"nick": "bstempi", "name": "Brian Stempin"},
{"nick": "chichigrande", "name": "Matthew Rogers"},
{"nick": "CodeOptimist", "name": "Nathanael Barbettini"},
{"name": "Danny Reese"},
{"nick": "DarkAngelBGE", "name": "Tim Koschuetzki"},
{"nick": "darkfires (aka lethalhunter)", "name": "Jonathan Wright"},
{"nick": "fabio", "name": "Fabio Pedretti"},
{"nick": "formlesstree4", "name": "Adam Sears"},
{"nick": "gudo"},
{"nick": "implodedok", "name": "Jan Middelkoop"},
{"nick": "Jeru", "name": "Aviv Sharon"},
{"nick": "jshores", "name": "Jason Shores"},
{"nick": "Kimball", "name": "Rob Kimball"},
{"nick": "King Tutankhamun", "name": "Desmond Talkington"},
{"nick": "MishFTW", "name": "A. Mishra"},
{"nick": "Morgan", "name": "Morgan Ramsay"},
{"nick": "Red_08", "name": "Joshua Barker"},
{"nick": "ricotz", "name": "Rico Tzschichholz"},
{"nick": "Rodrigo", "name": "Klass Van Waesberghe"},
{"nick": "Sam (aka Ph4ntom)", "name": "Sam Carlton"},
{"nick": "Sunshine", "name": "Belle Green"},
{"nick": "Yiuel", "name": "Ugo Lachapelle"}
]
}
]
}
Index: ps/trunk/binaries/data/mods/public/gui/credits/texts/programming.json
===================================================================
--- ps/trunk/binaries/data/mods/public/gui/credits/texts/programming.json (revision 18280)
+++ ps/trunk/binaries/data/mods/public/gui/credits/texts/programming.json (revision 18281)
@@ -1,209 +1,210 @@
{
+ "Title": "Programming",
"Content": [
{
"Title": "Programming managers",
"List": [
{"nick": "Acumen", "name": "Stuart Walpole"},
{"nick": "Dak Lozar", "name": "Dave Loeser"},
{"nick": "h20", "name": "Daniel Wilhelm"},
{"nick": "Janwas", "name": "Jan Wassenberg"},
{"nick": "Raj", "name": "Raj Sharma"}
]
},
{
"Subtitle": "Special thanks to",
"List": [{"nick": "Ykkrosh", "name": "Philip Taylor"}]
},
{
"List": [
{"nick": "01d55"},
{"nick": "Acumen", "name": "Stuart Walpole"},
{"name": "Adrian Fatol"},
{"nick": "AI-Amsterdam"},
{"nick": "Alan", "name": "Alan Kemp"},
{"nick": "aBothe", "name": "Alexander Bothe"},
{"nick": "alpha123", "name": "Peter P. Cannici"},
{"nick": "Aurium", "name": "Aurélio Heckert"},
{"nick": "badmadblacksad", "name": "Martin F"},
{"name": "Mikołaj \"Bajter\" Korcz"},
{"nick": "bb", "name": "Bouke Jansen"},
{"nick": "Ben", "name": "Ben Vinegar"},
{"nick": "Bird"},
{"nick": "Blue", "name": "Richard Welsh"},
{"nick": "bmwiedemann"},
{"nick": "boeseRaupe", "name": "Michael Kluge"},
{"nick": "bog_dan_ro", "name": "BogDan Vatra"},
{"nick": "Bonk", "name": "Christopher Ebbert"},
{"nick": "Caius", "name": "Lars Kemmann"},
{"nick": "Calefaction", "name": "Matt Holmes"},
{"nick": "Calvinh", "name": "Carl-Johan Höiby"},
{"nick": "causative", "name": "Bart Parkis"},
{"name": "Cédric Houbart"},
{"nick": "Chakakhan", "name": "Kenny Long"},
{"nick": "Clockwork-Muse", "name": "Stephen A. Imhoff"},
{"nick": "Cracker78", "name": "Chad Heim"},
{"nick": "Crynux", "name": "Stephen J. Fewer"},
{"nick": "cwprogger"},
{"nick": "Dak Lozar", "name": "Dave Loeser"},
{"nick": "dalerank", "name": "Sergey Kushnirenko"},
{"nick": "dan", "name": "Dan Strandberg"},
{"name": "Daniel Trevitz"},
{"nick": "DanCar", "name": "Daniel Cardenas"},
{"nick": "Dave", "name": "David Protasowski"},
{"nick": "dax", "name": "Dacian Fiordean"},
{"nick": "deebee", "name": "Deepak Anthony"},
{"nick": "Deiz"},
{"nick": "Dietger", "name": "Dietger van Antwerpen"},
{"nick": "dpiquet", "name": "Damien Piquet"},
{"nick": "dumbo"},
{"nick": "dvangennip", "name": "Doménique"},
{"nick": "Echelon9", "name": "Rhys Kidd"},
{"nick": "echotangoecho"},
{"nick": "eihrul", "name": "Lee Salzman"},
{"nick": "elexis", "name": "Alexander Heinsius"},
{"nick": "EmjeR", "name": "Matthijs de Rijk"},
{"nick": "EMontana"},
{"nick": "ericb"},
{"nick": "evanssthomas", "name": "Evans Thomas"},
{"nick": "Evulant", "name": "Alexander S."},
{"nick": "fabio", "name": "Fabio Pedretti"},
{"nick": "falsevision", "name": "Mahdi Khodadadifard"},
{"nick": "fatherbushido", "name": "Nicolas Tisserand"},
{"nick": "fcxSanya", "name": "Alexander Olkhovskiy"},
{"nick": "FeXoR", "name": "Florian Finke"},
{"nick": "Fire Giant", "name": "Malte Schwarzkopf"},
{"nick": "fpre", "name": "Frederick Stallmeyer"},
{"nick": "freenity", "name": "Anton Galitch"},
{"nick": "gbish (aka Iny)", "name": "Grant Bishop"},
{"nick": "Gee", "name": "Gustav Larsson"},
{"nick": "gerbilOFdoom"},
{"nick": "godlikeldh"},
{"nick": "greybeard", "name": "Joe Cocovich"},
{"nick": "grillaz"},
{"nick": "gudo"},
{"nick": "Guuts", "name": "Matthew Guttag"},
{"name": "Samuel Guarnieri"},
{"nick": "Haommin"},
{"nick": "h20", "name": "Daniel Wilhelm"},
{"nick": "historic_bruno", "name": "Ben Brian"},
{"nick": "idanwin"},
{"nick": "Imarok", "name": "J. S."},
{"nick": "infyquest", "name": "Vijay Kiran Kamuju"},
{"nick": "IronNerd", "name": "Matthew McMullan"},
{"nick": "Itms", "name": "Nicolas Auvray"},
{"nick": "Jaison", "name": "Marco tom Suden"},
{"nick": "jammus", "name": "James Scott"},
{"nick": "Jgwman"},
{"nick": "JonBaer", "name": "Jon Baer"},
{"nick": "Josh", "name": "Joshua J. Bakita"},
{"nick": "jP_wanN", "name": "Jonas Platte"},
{"nick": "Jubalbarca", "name": "James Baillie"},
{"nick": "JubJub", "name": "Sebastian Vetter"},
{"nick": "kabzerek", "name": "Grzegorz Kabza"},
{"nick": "Kai", "name": "Kai Chen"},
{"name": "Kareem Ergawy"},
{"nick": "kevmo", "name": "Kevin Caffrey"},
{"nick": "kezz", "name": "Graeme Kerry"},
{"nick": "kingadami", "name": "Adam Winsor"},
{"nick": "kingbasil", "name": "Giannis Fafalios"},
{"nick": "lafferjm", "name": "Justin Lafferty"},
{"nick": "leper", "name": "Georg Kilzer"},
{"nick": "LittleDev"},
{"nick": "livingaftermidnight", "name": "Will Dull"},
{"nick": "Louhike"},
{"nick": "lsdh"},
{"nick": "madmax", "name": "Abhijit Nandy"},
{"nick": "m0l0t0ph", "name": "Christoph Gielisch"},
{"nick": "markcho"},
{"nick": "MarkT", "name": "Mark Thompson"},
{"nick": "Markus"},
{"nick": "Matei", "name": "Matei Zaharia"},
{"nick": "MattDoerksen", "name": "Matt Doerksen"},
{"nick": "mattlott", "name": "Matt Lott"},
{"nick": "maveric", "name": "Anton Protko"},
{"nick": "Micnasty", "name": "Travis Gorkin"},
{"nick": "mimo"},
{"nick": "mk12", "name": "Mitchell Kember"},
{"nick": "Molotov", "name": "Dario Alvarez"},
{"nick": "mpmoreti", "name": "Marcos Paulo Moreti"},
{"nick": "mreiland", "name": "Michael Reiland"},
{"nick": "myconid"},
{"nick": "nd3c3nt", "name": "Gavin Fowler"},
{"nick": "niektb", "name": "Niek ten Brinke"},
{"nick": "njm"},
{"nick": "NoMonkey", "name": "John Mena"},
{"nick": "notpete", "name": "Rich Cross"},
{"nick": "Ols", "name": "Oliver Whiteman"},
{"nick": "olsner", "name": "Simon Brenner"},
{"nick": "otero"},
{"name": "Nick Owens"},
{"nick": "Palaxin", "name": "David A. Freitag"},
{"name": "Paul Withers"},
{"nick": "pcpa", "name": "Paulo Andrade"},
{"nick": "Pendingchaos"},
{"nick": "PeteVasi", "name": "Pete Vasiliauskas"},
{"nick": "Polakrity"},
{"nick": "Poya", "name": "Poya Manouchehri"},
{"name": "Quentin Pradet"},
{"nick": "prefect", "name": "Nicolai Hähnle"},
{"nick": "pstumpf", "name": "Pascal Stumpf"},
{"name": "André Puel"},
{"nick": "Prodigal Son"},
{"nick": "pyrolink", "name": "Andrew Decker"},
{"nick": "quantumstate", "name": "Jonathan Waller"},
{"nick": "QuickShot", "name": "Walter Krawec"},
{"nick": "quonter"},
{"nick": "qwertz"},
{"nick": "Radagast"},
{"nick": "Raj", "name": "Raj Sharma"},
{"nick": "RedFox", "name": "Jorma Rebane"},
{"nick": "RefinedCode"},
{"nick": "Riemer"},
{"name": "Rolf Sievers"},
{"nick": "s0600204", "name": "Matthew Norwood"},
{"nick": "SafaAlfulaij"},
{"nick": "Sandarac"},
{"nick": "sanderd17", "name": "Sander Deryckere"},
{"nick": "sathyam", "name": "Sathyam Vellal"},
{"nick": "sbte", "name": "Sven Baars"},
{"nick": "scroogie", "name": "André Gemünd"},
{"nick": "scythetwirler", "name": "Casey X."},
{"nick": "serveurix"},
{"nick": "Shane", "name": "Shane Grant"},
{"nick": "Silk", "name": "Josh Godsiff"},
{"nick": "silure"},
{"nick": "Simikolon", "name": "Yannick & Simon"},
{"nick": "Spahbod", "name": "Omid Davoodi"},
{"nick": "stanislas69", "name": "Stanislas Dolcini"},
{"nick": "Stefan"},
{"nick": "stilz", "name": "Sławomir Zborowski"},
{"nick": "stwf", "name": "Steven Fuchs"},
{"nick": "svott", "name": "Sven Ott"},
{"nick": "t4nk004"},
{"nick": "tbm", "name": "Martin Michlmayr"},
{"nick": "tau"},
{"nick": "Teiresias"},
{"nick": "texane"},
{"nick": "thamlett", "name": "Timothy Hamlett"},
{"nick": "thedrunkyak", "name": "Dan Fuhr"},
{"nick": "TrinityDeath", "name": "Jethro Lu"},
{"nick": "triumvir", "name": "Corin Schedler"},
{"nick": "trompetin17", "name": "Juan Guillermo"},
{"nick": "vladislavbelov", "name": "Vladislav Belov"},
{"nick": "vts", "name": "Jeroen DR"},
{"nick": "WhiteTreePaladin", "name": "Brian Ashley"},
{"nick": "wraitii", "name": "Lancelot de Ferrière le Vayer"},
{"nick": "Xentelian", "name": "Mark Strawson"},
{"nick": "Xienen", "name": "Dayle Flowers"},
{"nick": "xtizer", "name": "Matt Green"},
{"nick": "yashi", "name": "Yasushi Shoji"},
{"nick": "Ykkrosh", "name": "Philip Taylor"},
{"nick": "Yves"},
{"nick": "Zeusthor", "name": "Jeffrey Tavares"},
{"nick": "zoot"},
{"nick": "zsol", "name": "Zsolt Dollenstein"},
{"nick": "Zyi", "name": "Charles De Meulenaer"}
]
}
]
}
Index: ps/trunk/binaries/data/mods/public/gui/credits/texts/special.json
===================================================================
--- ps/trunk/binaries/data/mods/public/gui/credits/texts/special.json (revision 18280)
+++ ps/trunk/binaries/data/mods/public/gui/credits/texts/special.json (revision 18281)
@@ -1,40 +1,41 @@
{
+ "Title": "Special Credits",
"Content": [
{
"Title": "In Memoriam",
"List": [
{"nick": "Phoenix-TheRealDeal", "name": "Ken Wood"},
{"nick": "Dak Lozar", "name": "Dave Loeser"}
]
},
{
"Title": "Special thanks to:",
"Content": [
{
"Subtitle": "0 A.D. Founder",
"List": [{"nick": "Wijitmaker", "name": "Jason Bishop"}]
},
{
"Subtitle": "Project Leaders",
"List": [
{"nick": "feneur", "name": "Erik Johansson"},
{"nick": "Mythos_Ruler", "name": "Michael D. Hafer"}
]
},
{
"Subtitle": "Co-Lead Designers",
"List": [
{"nick": "Phoenix-TheRealDeal", "name": "Ken Wood"},
{"nick": "Acumen", "name": "Stuart Walpole"}
]
}
]
},
{
"Title": "And thanks to the entire community for making 0 A.D. possible."
},
{
"Title": "No historians were harmed during the development of this project."
}
]
}
Index: ps/trunk/binaries/data/mods/public/gui/credits/texts/translators.json
===================================================================
--- ps/trunk/binaries/data/mods/public/gui/credits/texts/translators.json (revision 18280)
+++ ps/trunk/binaries/data/mods/public/gui/credits/texts/translators.json (revision 18281)
@@ -1,1997 +1,1998 @@
{
+ "Title": "Translators",
"Content": [
{
"List": [
{
"name": "AccountKiller"
},
{
"name": "Daniel Ignatov"
},
{
"name": "EMMANUEL HOLDBROOK"
},
{
"name": "George Gbr"
},
{
"name": "hraharahra"
},
{
"name": "iron4o"
},
{
"name": "Ivailo Monev"
},
{
"name": "radochrist"
},
{
"name": "Radoslav Mitev"
},
{
"name": "Stefan Blue"
},
{
"name": "Yordan Grigorov"
},
{
"name": "\u041b\u044e\u0431\u043e\u043c\u0438\u0440 \u0412\u0430\u0441\u0438\u043b\u0435\u0432"
},
{
"name": "\u0421\u0438\u043c\u043e\u043d \u0411\u043e\u043b\u043e\u043a\u0430\u043d\u043e\u0432"
}
],
"LangName": "\u0411\u044a\u043b\u0433\u0430\u0440\u0441\u043a\u0438"
},
{
"List": [
{
"name": "Catalanoic"
},
{
"name": "Francesc"
},
{
"name": "Francesc Sal\u00f3"
},
{
"name": "Gerard Trias"
},
{
"name": "Guillem Poy"
},
{
"name": "Haommin"
},
{
"name": "ignius"
},
{
"name": "Isaac Lleida"
},
{
"name": "Josep"
},
{
"name": "Marco tom Suden"
},
{
"name": "Miguel Molina"
},
{
"name": "Peredelgrau"
},
{
"name": "ribasvilanova"
},
{
"name": "Toni GL"
}
],
"LangName": "Catal\u00e0"
},
{
"List": [
{
"name": "Ardenlax"
},
{
"name": "attilla1996"
},
{
"name": "David Exner"
},
{
"name": "Devinate"
},
{
"name": "Filip Kru\u017e\u00edk"
},
{
"name": "Filip Proch\u00e1zka"
},
{
"name": "fri"
},
{
"name": "ike20"
},
{
"name": "javier mayo reina"
},
{
"name": "Lukas Koutsky"
},
{
"name": "Martin K\u0159\u00ed\u017e"
},
{
"name": "Nostur"
},
{
"name": "OndraK"
},
{
"name": "Ond\u0159ej Kol\u00edn"
},
{
"name": "Pavel \u0160indel\u00e1\u0159"
},
{
"name": "Petr H\u00e1la"
},
{
"name": "ProfJackCZ"
},
{
"name": "Robin Kriebel"
},
{
"name": "Rodeo65"
},
{
"name": "Victor Houdebert"
},
{
"name": "Vit Pelcak"
},
{
"name": "Vojt\u011bch Valigura"
},
{
"name": "V\u00edt Pel\u010d\u00e1k"
}
],
"LangName": "Ce\u0161tina"
},
{
"List": [
{
"name": "A L"
},
{
"name": "Aldicek"
},
{
"name": "Alex Mayr"
},
{
"name": "Almin"
},
{
"name": "Ankomias"
},
{
"name": "Artur Epp"
},
{
"name": "azrdev"
},
{
"name": "Benny"
},
{
"name": "Candy_man"
},
{
"name": "chaosville"
},
{
"name": "cledge"
},
{
"name": "David Lucks"
},
{
"name": "David Mannes"
},
{
"name": "Dominik"
},
{
"name": "eclipse"
},
{
"name": "endoriel"
},
{
"name": "Enrico"
},
{
"name": "Fesa"
},
{
"name": "foaly"
},
{
"name": "Hedaja"
},
{
"name": "hunzel"
},
{
"name": "IzNarf"
},
{
"name": "Jonas"
},
{
"name": "jonnius"
},
{
"name": "Larson M\u00e4rz"
},
{
"name": "Leonard K\u00f6nig"
},
{
"name": "leper"
},
{
"name": "Lukas Gienapp"
},
{
"name": "Mansent"
},
{
"name": "manuel"
},
{
"name": "Marcel Haring"
},
{
"name": "Marco tom Suden"
},
{
"name": "MartinusMagnus"
},
{
"name": "Matthias Meger"
},
{
"name": "Maximilian"
},
{
"name": "Meinrad M\u00fcller"
},
{
"name": "nautilusx"
},
{
"name": "Nicklas Wiegandt"
},
{
"name": "nylki"
},
{
"name": "Pat Rick"
},
{
"name": "Patremus"
},
{
"name": "Patrick Kohan"
},
{
"name": "Paul M\u00fcller"
},
{
"name": "Peter Dosh"
},
{
"name": "pilino1234"
},
{
"name": "pointhi"
},
{
"name": "PS"
},
{
"name": "qwertz"
},
{
"name": "Raymond Vetter"
},
{
"name": "richyguitar"
},
{
"name": "santa41116"
},
{
"name": "sdos77"
},
{
"name": "Sebastian Goebel"
},
{
"name": "Silasoa"
},
{
"name": "sshmedom"
},
{
"name": "Stefan Rohrbacher"
},
{
"name": "stefanniedermann"
},
{
"name": "Tagaris"
},
{
"name": "Talani"
},
{
"name": "Thelxinoe"
},
{
"name": "these"
},
{
"name": "Thomas Steinert"
},
{
"name": "Tim"
},
{
"name": "Tobias"
},
{
"name": "tuxylord"
},
{
"name": "viegelinsch"
},
{
"name": "wilhelm3"
},
{
"name": "Wuzzy"
},
{
"name": "Xaver"
},
{
"name": "Xeramon"
},
{
"name": "xtother90"
},
{
"name": "Yves_G"
}
],
"LangName": "Deutsch"
},
{
"List": [
{
"name": "Dorinob"
},
{
"name": "Fabrizio Marana"
},
{
"name": "Guillermo Grunwaldt"
},
{
"name": "Laurene Albrand"
},
{
"name": "leper"
},
{
"name": "pilino1234"
},
{
"name": "s0600204"
},
{
"name": "Tanksy"
}
],
"LangName": "English (UK)"
},
{
"List": [
{
"name": "Adrian Sbardella"
},
{
"name": "Ageoneitor JT"
},
{
"name": "Alex R"
},
{
"name": "Alexis Arcos"
},
{
"name": "Ancel0"
},
{
"name": "blvebird"
},
{
"name": "caniroc"
},
{
"name": "Damian Axel Xavier"
},
{
"name": "David Fernandez Carhuas"
},
{
"name": "Diego Bruschetti"
},
{
"name": "Edgardo"
},
{
"name": "Enrique Keykens"
},
{
"name": "Ermides Gonzalez"
},
{
"name": "espanengo"
},
{
"name": "Esteban de Jesus Rodriguez Bujaidar"
},
{
"name": "fca1970"
},
{
"name": "Francisco"
},
{
"name": "GaboXandre"
},
{
"name": "Gabriel Lazcano"
},
{
"name": "Ghenadi Avricenco"
},
{
"name": "gonzaleau"
},
{
"name": "itmeansnothing"
},
{
"name": "Jes\u00fas Mart\u00ednez"
},
{
"name": "Joaqu\u00edn"
},
{
"name": "juanda097"
},
{
"name": "Kalrish B\u00e4akjen"
},
{
"name": "Leandro Schenone"
},
{
"name": "Lenny Hans Andreu"
},
{
"name": "Luis Torrecilla"
},
{
"name": "Marcio Duron"
},
{
"name": "Master Dark"
},
{
"name": "matiasng37"
},
{
"name": "memmaker650"
},
{
"name": "Miguel Angel NV"
},
{
"name": "ninovolador"
},
{
"name": "OJankano"
},
{
"name": "Pablo Rodr\u00edguez"
},
{
"name": "Pedro Almendros Gonz\u00e1lez"
},
{
"name": "Pedro Luis"
},
{
"name": "Pretorg"
},
{
"name": "rafa436"
},
{
"name": "Rafael Castro"
},
{
"name": "Ramiro Garay"
},
{
"name": "Roger Vasquez"
},
{
"name": "Samuel Roman"
},
{
"name": "Sander Deryckere"
},
{
"name": "Sebastian David Tamayo"
},
{
"name": "Spartan2411"
},
{
"name": "Swyter"
},
{
"name": "tarod kaos"
},
{
"name": "Tomato"
},
{
"name": "Trombe"
},
{
"name": "vega93"
}
],
"LangName": "Espa\u00f1ol"
},
{
"List": [
{
"name": "Adge Nodux"
},
{
"name": "Antoine Adet"
},
{
"name": "Arthur Jaouen"
},
{
"name": "BAHIDJ Ryadh"
},
{
"name": "Baptiste"
},
{
"name": "Bastien Do"
},
{
"name": "Buggi"
},
{
"name": "Cajetan Bouchard"
},
{
"name": "Calinou"
},
{
"name": "Cyril"
},
{
"name": "DiabloO"
},
{
"name": "dourouc05"
},
{
"name": "foufy much"
},
{
"name": "Fran\u00e7ois Poirotte"
},
{
"name": "gorius"
},
{
"name": "gZen"
},
{
"name": "Hadrien Titeux"
},
{
"name": "Jibi"
},
{
"name": "Julien Bernard"
},
{
"name": "Kachimatte"
},
{
"name": "kalemiro"
},
{
"name": "lemiaou"
},
{
"name": "LordIgorIIIofKiev"
},
{
"name": "Marco tom Suden"
},
{
"name": "Marwan"
},
{
"name": "minissimo"
},
{
"name": "Moritz FS"
},
{
"name": "Mortimer"
},
{
"name": "Moul"
},
{
"name": "Nexus nexus"
},
{
"name": "Nicolas Auvray"
},
{
"name": "nicolas caillard"
},
{
"name": "Oimat"
},
{
"name": "Olivier"
},
{
"name": "Pablo colson"
},
{
"name": "PERRUSSEL Valentin"
},
{
"name": "Polakrity"
},
{
"name": "PRIME Gildas"
},
{
"name": "robin moussu"
},
{
"name": "Rodrigue March"
},
{
"name": "Ross1396"
},
{
"name": "R\u00e9mi Verschelde"
},
{
"name": "Sander Deryckere"
},
{
"name": "sanderd17"
},
{
"name": "SecondCloud500"
},
{
"name": "silure"
},
{
"name": "Simon Georges"
},
{
"name": "Slim Khan"
},
{
"name": "slimkhan"
},
{
"name": "tavariz"
},
{
"name": "Thedemos"
},
{
"name": "Timothee KNOBLOCH"
},
{
"name": "Tito221"
},
{
"name": "Tonton"
},
{
"name": "Toto AD"
},
{
"name": "Valentin Ambroise"
},
{
"name": "Valentin Chevalier"
},
{
"name": "Van Calster"
},
{
"name": "Vincent Pouliquen"
},
{
"name": "Xavier Tardieu"
},
{
"name": "Yannick Heintz"
}
],
"LangName": "Fran\u00e7ais"
},
{
"List": [
{
"name": "GunChleoc"
},
{
"name": "Michael Bauer"
}
],
"LangName": "G\u00e0idhlig"
},
{
"List": [
{
"name": "Adri\u00e1n Chaves Fern\u00e1ndez"
}
],
"LangName": "Galego"
},
{
"List": [
{
"name": "Aqualung"
},
{
"name": "Attila Kocsner"
},
{
"name": "Bal\u00e1zs Mesk\u00f3"
},
{
"name": "Bal\u00e1zs \u00dar"
},
{
"name": "Bence Er\u0151s"
},
{
"name": "Benedict Drummer"
},
{
"name": "Boross P\u00e9ter"
},
{
"name": "chris020891"
},
{
"name": "Czene Istv\u00e1n"
},
{
"name": "davesajt"
},
{
"name": "Gell\u00e9rt Gyuris"
},
{
"name": "Istv\u00e1n Norbert P\u00e9tert"
},
{
"name": "kelemeng"
},
{
"name": "Krist\u00f3f K\u00f3fi\u00e1s"
},
{
"name": "lkishalmi"
},
{
"name": "L\u00e1szl\u00f3 Viktor"
},
{
"name": "Matyas Erdos"
},
{
"name": "Mikola P\u00e9ter"
},
{
"name": "M\u00e1rk Kerekes"
},
{
"name": "M\u00e1ty\u00e1s Demeter"
},
{
"name": "Nagy Andr\u00e1s"
},
{
"name": "Peter Darvasi"
},
{
"name": "Pista Joska"
},
{
"name": "ricsipontaz"
},
{
"name": "Robert M\u00fcller"
},
{
"name": "R\u00e1cz Zsolt"
},
{
"name": "Stew Den"
},
{
"name": "Tibor Buz\u00e1si"
}
],
"LangName": "Magyar"
},
{
"List": [
{
"name": "Andrii Puzan"
},
{
"name": "azayrahmad"
},
{
"name": "Bohdan Lepky"
},
{
"name": "Cahya Legawa"
},
{
"name": "constantius damar wicaksono"
},
{
"name": "Fqn Kdgzd"
},
{
"name": "Ibnu Daru Aji"
},
{
"name": "IndoGuy"
},
{
"name": "Joshua Christo Randiny"
},
{
"name": "Samuel Christo Randiny"
},
{
"name": "Tirtayasa"
},
{
"name": "Yusufabdiauzan"
}
],
"LangName": "Bahasa Indonesia"
},
{
"List": [
{
"name": "Alberto"
},
{
"name": "Alessandro"
},
{
"name": "Andrea Balzarotti"
},
{
"name": "andreac"
},
{
"name": "Angela"
},
{
"name": "chavo"
},
{
"name": "Claudio"
},
{
"name": "Damiano"
},
{
"name": "Damtux"
},
{
"name": "Daniele Tricoli"
},
{
"name": "Davide"
},
{
"name": "Emanuele Ricci"
},
{
"name": "Fabio Pedretti"
},
{
"name": "francescogramazio"
},
{
"name": "giangy"
},
{
"name": "j4nsen"
},
{
"name": "Luca"
},
{
"name": "Marco"
},
{
"name": "Me Lazzi"
},
{
"name": "Michele Lasala"
},
{
"name": "Nicola Jelmorini"
},
{
"name": "Paolo"
},
{
"name": "Raptor86"
},
{
"name": "Riccardo Di Maio"
},
{
"name": "Rivoltano"
},
{
"name": "Samuele Marazzita"
},
{
"name": "Sebastiano Pistore"
},
{
"name": "SecondCloud500"
},
{
"name": "Sergio"
},
{
"name": "tema"
},
{
"name": "The_Blinded"
},
{
"name": "Vaschetto Marco"
},
{
"name": "Zioninja"
}
],
"LangName": "Italiano"
},
{
"List": [
{
"name": "Anique van Berne"
},
{
"name": "Bart Groeneveld"
},
{
"name": "bilsimon"
},
{
"name": "BladeFalconheart"
},
{
"name": "BoucheDag"
},
{
"name": "Charon De Beukelaer"
},
{
"name": "ClementL"
},
{
"name": "Ellen Roels"
},
{
"name": "Evert Van Petegem"
},
{
"name": "Floretta"
},
{
"name": "Frode Lindeijer"
},
{
"name": "haldir"
},
{
"name": "Ilya"
},
{
"name": "Johannes Collosus"
},
{
"name": "Jos Arends"
},
{
"name": "LTom"
},
{
"name": "luuk2305"
},
{
"name": "Mar"
},
{
"name": "Mark Lemmens"
},
{
"name": "mat jojo"
},
{
"name": "MathiasB"
},
{
"name": "Matthijs de Rijk"
},
{
"name": "Max Klaversma"
},
{
"name": "Michiel"
},
{
"name": "Mike vdw"
},
{
"name": "niektb"
},
{
"name": "Oscar Schrover"
},
{
"name": "Peter Erinkveld"
},
{
"name": "Ruben De Smet"
},
{
"name": "Sander Deryckere"
},
{
"name": "Spijker"
},
{
"name": "Stef Jansen"
},
{
"name": "Sven Baars"
},
{
"name": "Sven Witte"
},
{
"name": "tanguy lesseliers"
},
{
"name": "TheBuG"
},
{
"name": "Thomas den Hollander"
},
{
"name": "Tim G"
},
{
"name": "tnt"
},
{
"name": "trick2011"
},
{
"name": "Vincent"
},
{
"name": "Yannick Vanroy"
},
{
"name": "Yves_G"
}
],
"LangName": "Nederlands"
},
{
"List": [
{
"name": "Adam Stachowicz"
},
{
"name": "Adrian Budasz"
},
{
"name": "Agata Pawlik"
},
{
"name": "Andrzej Udodik"
},
{
"name": "Annunnaky"
},
{
"name": "Arthur Glovchynski"
},
{
"name": "Artur Motyka"
},
{
"name": "Astinus Eberhard"
},
{
"name": "Bart\u0142omiej Ozimek"
},
{
"name": "Daniel Ko\u0107"
},
{
"name": "Dominik Pieczy\u0144ski"
},
{
"name": "domino1162"
},
{
"name": "Emil Klok"
},
{
"name": "Fikimiki"
},
{
"name": "Filip Juszczak"
},
{
"name": "Filip Lechowicz"
},
{
"name": "filux"
},
{
"name": "FoskamPL"
},
{
"name": "Gregory"
},
{
"name": "Grzegorz Lara"
},
{
"name": "inso_pl"
},
{
"name": "Jacek"
},
{
"name": "Jakub Szyd\u0142o"
},
{
"name": "Jarek Kokoci\u0144ski"
},
{
"name": "krzychu188"
},
{
"name": "Krzysztof Grabania"
},
{
"name": "Krzysztof Nowakowski"
},
{
"name": "Krzysztof5"
},
{
"name": "Kuba Teichert"
},
{
"name": "lacek"
},
{
"name": "Lapinopl"
},
{
"name": "LenaPL"
},
{
"name": "Leszek S"
},
{
"name": "Lukasz B"
},
{
"name": "Mar321"
},
{
"name": "Marcin Koz\u0142owski"
},
{
"name": "Marcin Malinowski"
},
{
"name": "Marcin S"
},
{
"name": "Matthew"
},
{
"name": "mhnxo"
},
{
"name": "Micha\u0142 Czerwi\u0144ski"
},
{
"name": "Micha\u0142 Garapich"
},
{
"name": "Micha\u0142 Karol"
},
{
"name": "Micha\u0142 Ko\u017alarek"
},
{
"name": "Micha\u0142 Olber"
},
{
"name": "miragae"
},
{
"name": "Night Shade"
},
{
"name": "Paulina"
},
{
"name": "Pawel Jarczak"
},
{
"name": "Pawe\u0142 Goca"
},
{
"name": "Pawe\u0142 Klimek"
},
{
"name": "Piotr"
},
{
"name": "q"
},
{
"name": "rabusek"
},
{
"name": "Rafa\u0142"
},
{
"name": "Robert Wolniak"
},
{
"name": "RosiakPL"
},
{
"name": "slodki12341"
},
{
"name": "Tomasz Pud\u0142o"
},
{
"name": "tomekpg"
},
{
"name": "TotalNoobPL"
},
{
"name": "Voltinus"
},
{
"name": "youtome_metoyou"
},
{
"name": "zyxist"
}
],
"LangName": "Polski"
},
{
"List": [
{
"name": "Adriano Ramos"
},
{
"name": "alrope"
},
{
"name": "alveselvis16"
},
{
"name": "Arthur Paim Arnold"
},
{
"name": "Caio Northfleet"
},
{
"name": "Canal do Kilof"
},
{
"name": "catherine tomaszewski da silva"
},
{
"name": "Cleiton Nunes"
},
{
"name": "dexmendonca"
},
{
"name": "Dianakc"
},
{
"name": "Elisa Silva Ramos"
},
{
"name": "Enrico Nicoletto"
},
{
"name": "Erick Alves"
},
{
"name": "Ernan"
},
{
"name": "Estus"
},
{
"name": "Filipe Oliveira"
},
{
"name": "F\u00e1bio Medeiros"
},
{
"name": "Giovane Guerreiro"
},
{
"name": "gsoster"
},
{
"name": "Guilherme Dias"
},
{
"name": "Gustavo Moitinho"
},
{
"name": "Hunteros"
},
{
"name": "Hyperionwolf"
},
{
"name": "Iago Leandro de Abreu"
},
{
"name": "JulioBianor"
},
{
"name": "Leonardo Augusto Suzin"
},
{
"name": "Leonardo Barcihello"
},
{
"name": "Leonardo Tada Antunes"
},
{
"name": "Lucas Sim\u00f5es"
},
{
"name": "magalidade"
},
{
"name": "Marcelo Augusto Kniss"
},
{
"name": "Marcos Correa"
},
{
"name": "Marcus Rasseli"
},
{
"name": "Mateus Felipe Cordeiro Caetano Pinto"
},
{
"name": "Matheus Clemente"
},
{
"name": "Micael Pereira Malaquias"
},
{
"name": "Mihailov Vasilievic Filho"
},
{
"name": "mliell"
},
{
"name": "mogafi"
},
{
"name": "Nicolas Frasson"
},
{
"name": "Paulo Castro"
},
{
"name": "Pedro Augustus Diniz Falc\u00e3o Silva"
},
{
"name": "PedroDognani"
},
{
"name": "pizzaiolo"
},
{
"name": "Qodek"
},
{
"name": "Raphael Mendon\u00e7a"
},
{
"name": "Rowel"
},
{
"name": "Sturm"
},
{
"name": "Teutao"
},
{
"name": "Thiago Perrotta"
},
{
"name": "Washington Ramon Santos nascimento"
},
{
"name": "yurids"
}
],
"LangName": "Portugu\u00eas (Brasil)"
},
{
"List": [
{
"name": "Andrew Melim"
},
{
"name": "Andr\u00e9 Rodrigues"
},
{
"name": "crolidge"
},
{
"name": "Danny Reese"
},
{
"name": "Ernan"
},
{
"name": "G N"
},
{
"name": "Grim Kriegor"
},
{
"name": "Helder Meneses"
},
{
"name": "Iago Leandro de Abreu"
},
{
"name": "Jo\u00e3o Oliveira"
},
{
"name": "Luis Neves"
},
{
"name": "Lu\u00eds Guedes"
},
{
"name": "mogafi"
},
{
"name": "Nuno de Mendon\u00e7a Raimundo"
},
{
"name": "Pedro matias"
},
{
"name": "Qodek"
},
{
"name": "Sander Deryckere"
},
{
"name": "Sim\u00e3o Afonso"
},
{
"name": "S\u00e9rgio Marques"
},
{
"name": "Tiago Martins"
}
],
"LangName": "Portugu\u00eas (Portugal)"
},
{
"List": [
{
"name": "_Arkan0ID_"
},
{
"name": "Alex"
},
{
"name": "Alexander Olkhovskiy"
},
{
"name": "Alexander Serov"
},
{
"name": "Alexandr Kuzmenko"
},
{
"name": "Andrew"
},
{
"name": "Anton"
},
{
"name": "Anton Khabarov"
},
{
"name": "Armen Dzhagaryan"
},
{
"name": "bigaltum"
},
{
"name": "Bogdan Artemyev"
},
{
"name": "Boris Karalnik"
},
{
"name": "Christo Keller"
},
{
"name": "C\u0435\u0440\u0433\u0435\u0439 \u0418\u0441\u0430\u0447\u0435\u043d\u043a\u043e"
},
{
"name": "delpfine"
},
{
"name": "Dmitry Oshkalo"
},
{
"name": "Eugene Kostrika"
},
{
"name": "Gleb Molchanov"
},
{
"name": "Homunkul"
},
{
"name": "Igor"
},
{
"name": "Igor Kustov"
},
{
"name": "insolor"
},
{
"name": "Ivan"
},
{
"name": "Ivan Fyodorov"
},
{
"name": "Ivan Seleznev"
},
{
"name": "Konstantin"
},
{
"name": "Maksim Oreshkov"
},
{
"name": "Malik Khodjaev"
},
{
"name": "Malyanov Evgeniy"
},
{
"name": "Max Kamashev"
},
{
"name": "micha030201"
},
{
"name": "Nick Zhivotenko"
},
{
"name": "Nikita Pavlyuk"
},
{
"name": "Oleg Ekhlakov"
},
{
"name": "Pavel"
},
{
"name": "Pavel Kyzmin"
},
{
"name": "Peter Seregin"
},
{
"name": "Rudeboy1988"
},
{
"name": "sad2shade"
},
{
"name": "Simple88"
},
{
"name": "sorrymak"
},
{
"name": "Stanislav G"
},
{
"name": "utyf05"
},
{
"name": "v00d00911"
},
{
"name": "Vladislav"
},
{
"name": "Vladislav Belov"
},
{
"name": "vlitomsk"
},
{
"name": "webslavic"
},
{
"name": "Woratiklis"
},
{
"name": "Xxcapog"
},
{
"name": "Yegor"
},
{
"name": "zake1313"
},
{
"name": "\u0410\u043b\u0435\u043a\u0441\u0435\u043972"
},
{
"name": "\u0412\u0438\u0442\u0430\u043b\u0438\u0439"
},
{
"name": "\u0412\u0438\u0442\u0430\u043b\u0438\u0439 \u041e\u0440\u0435\u0445\u043e\u0432"
},
{
"name": "\u0412\u043b\u0430\u0434\u0438\u043c\u0438\u0440 \u0411\u043e\u0447\u043a\u0430\u0440\u0451\u0432"
},
{
"name": "\u041a\u0432\u0430\u0448\u0430 \u0412\u043b\u0430\u0434\u0438\u0441\u043b\u0430\u0432"
},
{
"name": "\u0427\u0443\u0432\u0430\u043a"
}
],
"LangName": "\u0420\u0443\u0441\u0441\u043a\u0438\u0439"
},
{
"List": [
{
"name": "B2D"
},
{
"name": "FrewCen"
},
{
"name": "kecer"
},
{
"name": "Levi Taule"
},
{
"name": "Mari\u00e1n Mi\u017eik"
},
{
"name": "Martin Pl\u00e1vala"
},
{
"name": "Miroslav Rem\u00e1k"
},
{
"name": "MiroslavR"
},
{
"name": "M\u00e1rio Bulejko"
},
{
"name": "Patrik Loch"
},
{
"name": "Peter Tuharsky"
},
{
"name": "Roman Be\u0148o"
},
{
"name": "SuroX"
}
],
"LangName": "Sloven\u010dina"
},
{
"List": [
{
"name": "13975"
},
{
"name": "Amanda Ringqvist"
},
{
"name": "Anders Persson"
},
{
"name": "Daniel Sandman"
},
{
"name": "Erik Johansson"
},
{
"name": "Jacob Carlsson"
},
{
"name": "Kristoffer Grundstr\u00f6m"
},
{
"name": "leper"
},
{
"name": "liothe"
},
{
"name": "magicae"
},
{
"name": "Marco tom Suden"
},
{
"name": "Patrik Nilsson"
},
{
"name": "pilino1234"
},
{
"name": "Sam Johnsson"
},
{
"name": "Simon \u00d6sterberg"
},
{
"name": "theschitz"
},
{
"name": "Ulrika"
}
],
"LangName": "Svenska"
},
{
"List": [
{
"name": "61stylo"
},
{
"name": "Aathonaeax"
},
{
"name": "Abdullah Ilgaz"
},
{
"name": "Alp Eren"
},
{
"name": "ambd"
},
{
"name": "AMG"
},
{
"name": "ArmanH"
},
{
"name": "Butterfly"
},
{
"name": "Cem Aktas"
},
{
"name": "Cem KO\u00c7"
},
{
"name": "coolland"
},
{
"name": "Do\u011fu Kan"
},
{
"name": "Ebubekir Tabak"
},
{
"name": "efrasiyab1"
},
{
"name": "Emre AYTA\u00c7"
},
{
"name": "Emre C\u0131klatekerlio"
},
{
"name": "faradundamarti"
},
{
"name": "Fatih"
},
{
"name": "Furkan \u00c7evik"
},
{
"name": "H\u00fcseyin Cem Aras"
},
{
"name": "Kudret"
},
{
"name": "mehmet akar"
},
{
"name": "Merve B\u0130\u00c7KES"
},
{
"name": "Mete Han"
},
{
"name": "Muhammed Ayd\u0131n"
},
{
"name": "receb"
},
{
"name": "redbullah"
},
{
"name": "reprezalio"
},
{
"name": "R\u0131za Han Y\u0131lmaz"
},
{
"name": "Salih Dursuntas"
},
{
"name": "schaft"
},
{
"name": "Serkan"
},
{
"name": "sicey"
},
{
"name": "Sinan \u00d6zg\u00fcn"
},
{
"name": "TurkishPower"
},
{
"name": "ubuntuki"
},
{
"name": "user431231"
},
{
"name": "utkugun"
},
{
"name": "volcanology"
},
{
"name": "Volkan Gezer"
},
{
"name": "Volkan SARIB\u00dcLB\u00dcL"
},
{
"name": "yakup"
},
{
"name": "Yavuz Karaki\u015fi"
},
{
"name": "Yunus Emre \u00c7akmak"
}
],
"LangName": "T\u00fcrk\u00e7e"
}
]
-}
\ No newline at end of file
+}
Index: ps/trunk/source/tools/i18n/creditTranslators.py
===================================================================
--- ps/trunk/source/tools/i18n/creditTranslators.py (revision 18280)
+++ ps/trunk/source/tools/i18n/creditTranslators.py (revision 18281)
@@ -1,131 +1,131 @@
#!/usr/bin/env python2
# -*- coding:utf-8 -*-
#
# Copyright (C) 2016 Wildfire Games.
# This file is part of 0 A.D.
#
# 0 A.D. is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
# 0 A.D. is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with 0 A.D. If not, see .
"""
This file imports the translators credits located in the public mod GUI files and
runs through .po files to add possible new translators to it.
It only appends new people, so it is possible to manually add names in the credits
file and they won't be overwritten by running this script.
Translatable strings will be extracted from the generated file, so this should be ran
before updateTemplates.py.
"""
from __future__ import absolute_import, division, print_function, unicode_literals
import json, os, glob, re
# Credited languages - Keep in sync with source/tools/dist/remove-incomplete-translations.sh
langs = {
'bg': 'Български',
'ca': 'Català',
'cs': 'Ceština',
'de': 'Deutsch',
'en_GB': 'English (UK)',
'es': 'Español',
'fr': 'Français',
'gd': 'Gàidhlig',
'gl': 'Galego',
'hu': 'Magyar',
'id': 'Bahasa Indonesia',
'it': 'Italiano',
'nl': 'Nederlands',
'pl': 'Polski',
'pt_BR': 'Português (Brasil)',
'pt_PT': 'Português (Portugal)',
'ru': 'Русский',
'sk': 'Slovenčina',
'sv': 'Svenska',
'tr': 'Türkçe'}
root = '../../../'
poLocations = [
'binaries/data/l10n/',
'binaries/data/mods/public/l10n/',
'binaries/data/mods/mod/l10n/']
creditsLocation = 'binaries/data/mods/public/gui/credits/texts/translators.json'
# Load JSON data
creditsFile = open(root + creditsLocation)
JSONData = json.load(creditsFile)
creditsFile.close()
# This dictionnary will hold creditors lists for each language, indexed by code
langsLists = {}
# Create the new JSON data
-newJSONData = {'Content': []}
+newJSONData = {'Title': 'Translators', 'Content': []}
# First get the already existing lists. If they correspond with some of the credited languages,
# add them to the new data after processing, else add them immediately.
# NB: All of this is quite inefficient
for element in JSONData['Content']:
if 'LangName' not in element or element['LangName'] not in langs.values():
newJSONData['Content'].append(element)
continue
for (langCode, langName) in langs.items():
if element['LangName'] == langName:
langsLists[langCode] = element['List']
break
# Now actually go through the list of languages and search the .po files for people
# Prepare some regexes
commentMatch = re.compile('#.*')
translatorMatch = re.compile('# ([\w\s]*)(?: <.*>)?, [0-9-]', re.UNICODE)
# Search
for lang in langs.keys():
if lang not in langsLists.keys():
langsLists[lang] = []
for location in poLocations:
files = glob.glob(root + location + lang + '.*.po')
for file in files:
poFile = open(file.replace('\\', '/'))
reached = False
for line in poFile:
line = line.decode('utf8')
if reached:
if not commentMatch.match(line):
break
m = translatorMatch.match(line)
if m:
langsLists[lang].append(m.group(1))
if line.strip() == '# Translators:':
reached = True
poFile.close()
# Sort and remove duplicates
# Sorting should ignore case to have a neat credits list
langsLists[lang] = sorted(set(langsLists[lang]), cmp=lambda x,y: cmp(x.lower(), y.lower()))
# Now insert the new data into the new JSON file
for (langCode, langList) in sorted(langsLists.items()):
newJSONData['Content'].append({'LangName': langs[langCode], 'List': []})
for name in langList:
newJSONData['Content'][-1]['List'].append({'name': name})
# Save the JSON data to the credits file
creditsFile = open(root + creditsLocation, 'w')
json.dump(newJSONData, creditsFile, indent=4)
creditsFile.close()