CINXE.COM
wmlscope is sooooo slow - The Battle for Wesnoth Forums
<!DOCTYPE html> <html dir="ltr" lang="en-gb"> <head> <meta charset="utf-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1" /> <title>wmlscope is sooooo slow - The Battle for Wesnoth Forums</title> <link rel="alternate" type="application/atom+xml" title="Feed - The Battle for Wesnoth Forums" href="/app.php/feed?sid=16042f61591e77357eaed57376760979"> <link rel="alternate" type="application/atom+xml" title="Feed - News" href="/app.php/feed/news?sid=16042f61591e77357eaed57376760979"> <link rel="alternate" type="application/atom+xml" title="Feed - All forums" href="/app.php/feed/forums?sid=16042f61591e77357eaed57376760979"> <link rel="alternate" type="application/atom+xml" title="Feed - New Topics" href="/app.php/feed/topics?sid=16042f61591e77357eaed57376760979"> <link rel="alternate" type="application/atom+xml" title="Feed - Forum - Coder’s Corner" href="/app.php/feed/forum/10?sid=16042f61591e77357eaed57376760979"> <link rel="alternate" type="application/atom+xml" title="Feed - Topic - wmlscope is sooooo slow" href="/app.php/feed/topic/55383?sid=16042f61591e77357eaed57376760979"> <link rel="canonical" href="https://forums.wesnoth.org/viewtopic.php?t=55383"> <!-- phpBB style name: prosilver Special Edition Based on style: prosilver (this is the default phpBB3 style) Original author: Tom Beddard ( http://www.subBlue.com/ ) Modified by: phpBB Limited ( https://www.phpbb.com/ ) --> <link href="./../styles/prosilver/theme/normalize.css?assets_version=264" rel="stylesheet"> <link href="./../styles/prosilver/theme/base.css?assets_version=264" rel="stylesheet"> <link href="./../styles/prosilver/theme/utilities.css?assets_version=264" rel="stylesheet"> <link href="./../styles/prosilver/theme/common.css?assets_version=264" rel="stylesheet"> <link href="./../styles/prosilver/theme/links.css?assets_version=264" rel="stylesheet"> <link href="./../styles/prosilver/theme/content.css?assets_version=264" rel="stylesheet"> <link href="./../styles/prosilver/theme/buttons.css?assets_version=264" rel="stylesheet"> <link href="./../styles/prosilver/theme/cp.css?assets_version=264" rel="stylesheet"> <link href="./../styles/prosilver/theme/forms.css?assets_version=264" rel="stylesheet"> <link href="./../styles/prosilver/theme/icons.css?assets_version=264" rel="stylesheet"> <link href="./../styles/prosilver/theme/colours.css?assets_version=264" rel="stylesheet"> <link href="./../styles/prosilver/theme/responsive.css?assets_version=264" rel="stylesheet"> <link href="./../assets/css/font-awesome.min.css?assets_version=264" rel="stylesheet"> <link href="./../styles/prosilver_se/theme/stylesheet.css?assets_version=264" rel="stylesheet"> <link href="./../styles/prosilver/theme/en/stylesheet.css?assets_version=264" rel="stylesheet"> <link href="./../assets/cookieconsent/cookieconsent.min.css?assets_version=264" rel="stylesheet"> <!--[if lte IE 9]> <link href="./../styles/prosilver/theme/tweaks.css?assets_version=264" rel="stylesheet"> <![endif]--> <link rel="apple-touch-icon" type="image/png" href="https://www.wesnoth.org/wesmere/img/apple-touch-icon.png" sizes="180x180" /> <link rel="icon" type="image/png" href="https://www.wesnoth.org/wesmere/img/favicon-32.png" sizes="32x32" /> <link rel="icon" type="image/png" href="https://www.wesnoth.org/wesmere/img/favicon-16.png" sizes="16x16" /> <meta name="theme-color" content="#0f1421" /> <link href="https://www.wesnoth.org/wesmere/css/forums-1.2.0.css" rel="stylesheet" type="text/css" /> <style> /* * phpBB overrides */ #page-header > .headerbar { display: none!important; } body { padding-top: 0; } /*.search-header { margin-top: 0; margin-right: 0; box-shadow: 0 0 2px #0075B0; }*/ </style> </head> <body id="phpbb" class="nojs notouch section-viewtopic//viewtopic ltr "> <div id="wesmere-embed"> <div id="nav" role="banner"> <div class="centerbox"> <div id="logo"> <a href="https://www.wesnoth.org/" aria-label="Wesnoth logo"></a> </div> <ul id="navlinks" role="navigation"> <li><a href="https://www.wesnoth.org/">Home</a></li> <li><a href="https://forums.wesnoth.org/viewforum.php?f=62">News</a></li> <li><a href="https://wiki.wesnoth.org/Play">Play</a></li> <li><a href="https://wiki.wesnoth.org/Create">Create</a></li> <li><a href="https://forums.wesnoth.org/">Forums</a></li> <li><a href="https://wiki.wesnoth.org/Project">About</a></li> </ul> <div id="sitesearch" role="search"> <form method="get" action="./../search.php?sid=16042f61591e77357eaed57376760979"> <input id="searchbox" class="has-advanced-search" type="search" name="keywords" placeholder="Search" title="Search these forums [Alt+Shift+f]" accesskey="f" /> <span id="searchbox-controls"> <button id="search-go" class="search-button" type="submit" title="Search"> <i class="fa fa-fw fa-search search-icon" aria-hidden="true"></i> <span class="sr-label">Search</span> </button> <a id="search-opts" class="search-button" href="./../search.php?sid=16042f61591e77357eaed57376760979" title="Advanced search"> <i class="fa fa-fw fa-cog advsearch-icon" aria-hidden="true"></i> <span class="sr-label">Advanced search</span> </a> </span> </form> </div> <div class="reset"></div> </div> </div> </div> <div id="content"> <div id="wrap" class="wrap"> <a id="top" class="top-anchor" accesskey="t"></a> <div id="page-header"> <div class="headerbar" role="banner"> <div class="inner"> <div id="site-description" class="site-description"> <a id="logo" class="logo" href="./../index.php?sid=16042f61591e77357eaed57376760979" title="Forums"> <span class="site_logo"></span> </a> <h1>The Battle for Wesnoth Forums</h1> <p>The official forums for The Battle for Wesnoth.</p> <p class="skiplink"><a href="#start_here">Skip to content</a></p> </div> <div id="search-box" class="search-box search-header" role="search"> <form action="./../search.php?sid=16042f61591e77357eaed57376760979" method="get" id="search"> <fieldset> <input name="keywords" id="keywords" type="search" maxlength="128" title="Search for keywords" class="inputbox search tiny" size="20" value="" placeholder="Search…" /> <button class="button button-search" type="submit" title="Search"> <i class="icon fa-search fa-fw" aria-hidden="true"></i><span class="sr-only">Search</span> </button> <a href="./../search.php?sid=16042f61591e77357eaed57376760979" class="button button-search-end" title="Advanced search"> <i class="icon fa-cog fa-fw" aria-hidden="true"></i><span class="sr-only">Advanced search</span> </a> <input type="hidden" name="sid" value="16042f61591e77357eaed57376760979" /> </fieldset> </form> </div> </div> </div> <div class="navbar" role="navigation"> <div class="inner"> <ul id="nav-main" class="nav-main linklist" role="menubar"> <li id="quick-links" class="quick-links dropdown-container responsive-menu" data-skip-responsive="true"> <a href="#" class="dropdown-trigger"> <i class="icon fa-bars fa-fw" aria-hidden="true"></i><span>Quick links</span> </a> <div class="dropdown"> <div class="pointer"><div class="pointer-inner"></div></div> <ul class="dropdown-contents" role="menu"> <li class="separator"></li> <li> <a href="./../search.php?search_id=unanswered&sid=16042f61591e77357eaed57376760979" role="menuitem"> <i class="icon fa-file-o fa-fw icon-gray" aria-hidden="true"></i><span>Unanswered topics</span> </a> </li> <li> <a href="./../search.php?search_id=active_topics&sid=16042f61591e77357eaed57376760979" role="menuitem"> <i class="icon fa-file-o fa-fw icon-blue" aria-hidden="true"></i><span>Active topics</span> </a> </li> <li class="separator"></li> <li> <a href="./../search.php?sid=16042f61591e77357eaed57376760979" role="menuitem"> <i class="icon fa-search fa-fw" aria-hidden="true"></i><span>Search</span> </a> </li> <li class="separator"></li> </ul> </div> </li> <li data-skip-responsive="true"> <a href="/app.php/help/faq?sid=16042f61591e77357eaed57376760979" rel="help" title="Frequently Asked Questions" role="menuitem"> <i class="icon fa-question-circle fa-fw" aria-hidden="true"></i><span>FAQ</span> </a> </li> <li data-last-responsive="true"> <a href="https://forums.wesnoth.org/viewtopic.php?t=24277&sid=16042f61591e77357eaed57376760979" rel="help" title="View the Community Guidelines" role="menuitem"> <i class="icon fa-book fa-fw" aria-hidden="true"></i><span>Community Guidelines</span> </a> </li> <li class="rightside" data-skip-responsive="true"> <a href="./../ucp.php?mode=login&redirect=viewtopic.php%2F%2Fviewtopic.php%3Ft%3D55383&sid=16042f61591e77357eaed57376760979" title="Login" accesskey="x" role="menuitem"> <i class="icon fa-power-off fa-fw" aria-hidden="true"></i><span>Login</span> </a> </li> <li class="rightside" data-skip-responsive="true"> <a href="./../ucp.php?mode=register&sid=16042f61591e77357eaed57376760979" role="menuitem"> <i class="icon fa-pencil-square-o fa-fw" aria-hidden="true"></i><span>Register</span> </a> </li> </ul> <ul id="nav-breadcrumbs" class="nav-breadcrumbs linklist navlinks" role="menubar"> <li class="breadcrumbs" itemscope itemtype="https://schema.org/BreadcrumbList"> <span class="crumb" itemtype="https://schema.org/ListItem" itemprop="itemListElement" itemscope><a itemprop="item" href="./../index.php?sid=16042f61591e77357eaed57376760979" accesskey="h" data-navbar-reference="index"><i class="icon fa-home fa-fw"></i><span itemprop="name">Forums</span></a><meta itemprop="position" content="1" /></span> <span class="crumb" itemtype="https://schema.org/ListItem" itemprop="itemListElement" itemscope data-forum-id="26"><a itemprop="item" href="./../viewforum.php?f=26&sid=16042f61591e77357eaed57376760979"><span itemprop="name">Development</span></a><meta itemprop="position" content="2" /></span> <span class="crumb" itemtype="https://schema.org/ListItem" itemprop="itemListElement" itemscope data-forum-id="10"><a itemprop="item" href="./../viewforum.php?f=10&sid=16042f61591e77357eaed57376760979"><span itemprop="name">Coder’s Corner</span></a><meta itemprop="position" content="3" /></span> </li> <li class="rightside responsive-search"> <a href="./../search.php?sid=16042f61591e77357eaed57376760979" title="View the advanced search options" role="menuitem"> <i class="icon fa-search fa-fw" aria-hidden="true"></i><span class="sr-only">Search</span> </a> </li> </ul> </div> </div> </div> <a id="start_here" class="anchor"></a> <div id="page-body" class="page-body" role="main"> <h2 class="topic-title"><a href="./../viewtopic.php?t=55383&sid=16042f61591e77357eaed57376760979">wmlscope is sooooo slow</a></h2> <!-- NOTE: remove the style="display: none" when you want to have the forum description on the topic body --> <div style="display: none !important;">Discussion of all aspects of the game engine, including development of new and existing features.<br /></div> <p> <strong>Moderator:</strong> <a style="color:#008000;" href="./../memberlist.php?mode=group&g=6643&sid=16042f61591e77357eaed57376760979">Forum Moderators</a> </p> <div class="action-bar bar-top"> <a href="./../posting.php?mode=reply&t=55383&sid=16042f61591e77357eaed57376760979" class="button" title="Post a reply"> <span>Post Reply</span> <i class="icon fa-reply fa-fw" aria-hidden="true"></i> </a> <div class="search-box" role="search"> <form method="get" id="topic-search" action="./../search.php?sid=16042f61591e77357eaed57376760979"> <fieldset> <input class="inputbox search tiny" type="search" name="keywords" id="search_keywords" size="20" placeholder="Search this topic…" /> <button class="button button-search" type="submit" title="Search"> <i class="icon fa-search fa-fw" aria-hidden="true"></i><span class="sr-only">Search</span> </button> <a href="./../search.php?sid=16042f61591e77357eaed57376760979" class="button button-search-end" title="Advanced search"> <i class="icon fa-cog fa-fw" aria-hidden="true"></i><span class="sr-only">Advanced search</span> </a> <input type="hidden" name="t" value="55383" /> <input type="hidden" name="sf" value="msgonly" /> <input type="hidden" name="sid" value="16042f61591e77357eaed57376760979" /> </fieldset> </form> </div> <div class="pagination"> 9 posts • Page <strong>1</strong> of <strong>1</strong> </div> </div> <div id="p671328" class="post has-profile bg2"> <div class="inner"> <dl class="postprofile" id="profile671328"> <dt class="no-profile-rank has-avatar"> <div class="avatar-container"> <a href="./../memberlist.php?mode=viewprofile&u=180204&sid=16042f61591e77357eaed57376760979" class="avatar"><img class="avatar" src="./../download/file.php?avatar=180204_1672449756.png" width="89" height="100" alt="User avatar" /></a> </div> <a href="./../memberlist.php?mode=viewprofile&u=180204&sid=16042f61591e77357eaed57376760979" class="username">Atreides</a> </dt> <dd class="profile-posts"><strong>Posts:</strong> <a href="./../search.php?author_id=180204&sr=posts&sid=16042f61591e77357eaed57376760979">1176</a></dd> <dd class="profile-joined"><strong>Joined:</strong> March 30th, 2019, 10:38 pm</dd> <dd class="profile-custom-field profile-phpbb_location"><strong>Location:</strong> On the 2nd story of the centre village of Merwuerdigliebe turning the lights on and off</dd> </dl> <div class="postbody"> <div id="post_content671328"> <h3 class="first"> <a href="./../viewtopic.php?p=671328&sid=16042f61591e77357eaed57376760979#p671328">wmlscope is sooooo slow</a> </h3> <ul class="post-buttons"> <li> <a href="./../posting.php?mode=quote&p=671328&sid=16042f61591e77357eaed57376760979" title="Reply with quote" class="button button-icon-only"> <i class="icon fa-quote-left fa-fw" aria-hidden="true"></i><span class="sr-only">Quote</span> </a> </li> </ul> <p class="author"> <a class="unread" href="./../viewtopic.php?p=671328&sid=16042f61591e77357eaed57376760979#p671328" title="Post"> <i class="icon fa-file fa-fw icon-lightgray icon-md" aria-hidden="true"></i><span class="sr-only">Post</span> </a> <span class="responsive-hide">by <strong><a href="./../memberlist.php?mode=viewprofile&u=180204&sid=16042f61591e77357eaed57376760979" class="username">Atreides</a></strong> » </span><time datetime="2022-02-01T21:20:18+00:00">February 1st, 2022, 9:20 pm</time> </p> <div class="content">OK, cheesy title aside has anyone noticed that wmlscope is much slower since 1.14?<br> <br> My 1.12 wmlscope run from the GUI (includes core as well as whatever you choose) generally takes about 30 seconds with no extras picked.<br> <br> 1.14/16 it takes 10 times as long! 5 minutes.<br> <br> Is it just me? I have to confess that it might be, just possibly. 1.12 is a debian installed package while 1.14+ is all flatpak (since 1.12.6 is the very newest as far as debian 9 (yes I know there's 10, I'll risk upgrading when I'm forced to) is concerned hehe) but surely the directoryies they are in is the only real difference for the core files... I really doubt that could be it unless wmlscope has some kind of hang up with the length of the pathname (the flatpaks tend to be in a longer path)...<br> <br> Anyways, just airing my discontent and curious if anyone else has can relate...</div> <div id="sig671328" class="signature">-- <br> <a href="viewtopic.php?p=662182#p662182" class="postlink">Lonely Era</a> <a href="viewtopic.php?p=662897#p662897" class="postlink">Merry Christmas Campaign</a> <a href="viewtopic.php?p=663269#p663269" class="postlink">Red MP Maps</a> <a href="viewtopic.php?p=665210#p665210" class="postlink">Everfell</a> <a href="viewtopic.php?p=665296#p665296" class="postlink">Age of Trials</a></div> </div> </div> <div class="back2top"> <a href="#top" class="top" title="Top"> <i class="icon fa-chevron-circle-up fa-fw icon-gray" aria-hidden="true"></i> <span class="sr-only">Top</span> </a> </div> </div> </div> <div id="p671436" class="post has-profile bg1"> <div class="inner"> <dl class="postprofile" id="profile671436"> <dt class="no-profile-rank has-avatar"> <div class="avatar-container"> <a href="./../memberlist.php?mode=viewprofile&u=118285&sid=16042f61591e77357eaed57376760979" class="avatar"><img class="avatar" src="./../download/file.php?avatar=118285_1252075591.png" width="72" height="72" alt="User avatar" /></a> </div> <a href="./../memberlist.php?mode=viewprofile&u=118285&sid=16042f61591e77357eaed57376760979" style="color: #DD5500;" class="username-coloured">Elvish_Hunter</a> </dt> <dd class="profile-posts"><strong>Posts:</strong> <a href="./../search.php?author_id=118285&sr=posts&sid=16042f61591e77357eaed57376760979">1596</a></dd> <dd class="profile-joined"><strong>Joined:</strong> September 4th, 2009, 2:39 pm</dd> <dd class="profile-custom-field profile-phpbb_location"><strong>Location:</strong> Lintanir Forest...</dd> </dl> <div class="postbody"> <div id="post_content671436"> <h3 > <a href="./../viewtopic.php?p=671436&sid=16042f61591e77357eaed57376760979#p671436">Re: wmlscope is sooooo slow</a> </h3> <ul class="post-buttons"> <li> <a href="./../posting.php?mode=quote&p=671436&sid=16042f61591e77357eaed57376760979" title="Reply with quote" class="button button-icon-only"> <i class="icon fa-quote-left fa-fw" aria-hidden="true"></i><span class="sr-only">Quote</span> </a> </li> </ul> <p class="author"> <a class="unread" href="./../viewtopic.php?p=671436&sid=16042f61591e77357eaed57376760979#p671436" title="Post"> <i class="icon fa-file fa-fw icon-lightgray icon-md" aria-hidden="true"></i><span class="sr-only">Post</span> </a> <span class="responsive-hide">by <strong><a href="./../memberlist.php?mode=viewprofile&u=118285&sid=16042f61591e77357eaed57376760979" style="color: #DD5500;" class="username-coloured">Elvish_Hunter</a></strong> » </span><time datetime="2022-02-07T21:24:35+00:00">February 7th, 2022, 9:24 pm</time> </p> <div class="content"><strong class="text-strong"><span style="color:#008000">Moved into the Coder's Corner.</span></strong><br> There are a lot of possible reasons for this slowness. I must admit that I haven't been running the 1.12 version for a long time, so I don't have a reference about this.<br> First of all, one of the reasons is that we have more content in mainline: more macros, more images and more units mean more things that wmlscope needs to keep track of, which makes it slower. There isn't much we can do, except cutting content from mainline - but nobody wants to do that, right?<br> The second reason is directly depending on the porting to Python 3: one of the things that went lost was Python's <code class="inline-code">cmp()</code> function, and to have a certain part of the code correctly sorting items, I had to use the <code class="inline-code">total_ordering</code> module, which is slower than writing all the six comparison functions by hand (although it didn't seem really slower to me).<br> The third reason depends on the square braces notation that we use now to define animations: when things were simpler, each image path could point only to a specific file. This isn't the case any more: a path can now point to several sprites and I had to actually write in Python the square braces expansion code, because the checks for missing files had become useless.<br> And then I also had to add other features, like support for optional macro arguments (back then we didn't have them!), detection of deprecated macros (which I'm thinking to use to output a warning when a call to them is found)...<br> So, you get the idea. wmlscope back then was faster because it didn't had to handle several features that are part of current WML and also because it wasn't very much maintained. Can it be made faster? Probably yes, but it isn't easy to do so.</div> <div id="sig671436" class="signature">Current maintainer of these add-ons, all on 1.16:<br> <a href="http://forums.wesnoth.org/viewtopic.php?f=8&t=26670" class="postlink">The Sojournings of Grog</a>, <a href="http://forums.wesnoth.org/viewtopic.php?f=8&t=14241" class="postlink">Children of Dragons</a>, <a href="http://forums.wesnoth.org/viewtopic.php?f=8&t=21718" class="postlink">A Rough Life</a>, <a href="http://forums.wesnoth.org/viewtopic.php?f=58&t=28320" class="postlink">Wesnoth Lua Pack</a>, <a href="http://forums.wesnoth.org/viewtopic.php?f=8&t=38828" class="postlink">The White Troll</a> (co-author)</div> </div> </div> <div class="back2top"> <a href="#top" class="top" title="Top"> <i class="icon fa-chevron-circle-up fa-fw icon-gray" aria-hidden="true"></i> <span class="sr-only">Top</span> </a> </div> </div> </div> <div id="p671438" class="post has-profile bg2"> <div class="inner"> <dl class="postprofile" id="profile671438"> <dt class="no-profile-rank no-avatar"> <div class="avatar-container"> </div> <a href="./../memberlist.php?mode=viewprofile&u=122117&sid=16042f61591e77357eaed57376760979" class="username">gnombat</a> </dt> <dd class="profile-posts"><strong>Posts:</strong> <a href="./../search.php?author_id=122117&sr=posts&sid=16042f61591e77357eaed57376760979">826</a></dd> <dd class="profile-joined"><strong>Joined:</strong> June 10th, 2010, 8:49 pm</dd> </dl> <div class="postbody"> <div id="post_content671438"> <h3 > <a href="./../viewtopic.php?p=671438&sid=16042f61591e77357eaed57376760979#p671438">Re: wmlscope is sooooo slow</a> </h3> <ul class="post-buttons"> <li> <a href="./../posting.php?mode=quote&p=671438&sid=16042f61591e77357eaed57376760979" title="Reply with quote" class="button button-icon-only"> <i class="icon fa-quote-left fa-fw" aria-hidden="true"></i><span class="sr-only">Quote</span> </a> </li> </ul> <p class="author"> <a class="unread" href="./../viewtopic.php?p=671438&sid=16042f61591e77357eaed57376760979#p671438" title="Post"> <i class="icon fa-file fa-fw icon-lightgray icon-md" aria-hidden="true"></i><span class="sr-only">Post</span> </a> <span class="responsive-hide">by <strong><a href="./../memberlist.php?mode=viewprofile&u=122117&sid=16042f61591e77357eaed57376760979" class="username">gnombat</a></strong> » </span><time datetime="2022-02-08T02:28:40+00:00">February 8th, 2022, 2:28 am</time> </p> <div class="content"><blockquote cite="./../viewtopic.php?p=671328&sid=16042f61591e77357eaed57376760979#p671328"><div><cite><a href="./../memberlist.php?mode=viewprofile&u=180204&sid=16042f61591e77357eaed57376760979">Atreides</a> wrote: <a href="./../viewtopic.php?p=671328&sid=16042f61591e77357eaed57376760979#p671328" data-post-id="671328" onclick="if(document.getElementById(hash.substr(1)))href=hash">↑</a><span class="responsive-hide">February 1st, 2022, 9:20 pm</span></cite> debian 9 (yes I know there's 10, I'll risk upgrading when I'm forced to) </div></blockquote> There's also Debian 11 now too.<br> <br> I think just upgrading to Debian 10 or 11 would probably improve performance. <a href="https://packages.debian.org/stretch/python3" class="postlink">Debian 9 has a version of Python 3 that is several years old (Python 3.5)</a> and, as a general rule, early versions of Python 3 were incredibly slow. This has improved considerably in recent releases.<br> <br> Here is a test I ran on a machine with several different versions of Python 3 installed (this is a Windows machine so the results might be considerably different on Linux, but I think it gives an idea how much Python 3 performance has improved):<br> <div class="codebox"><p>Code: <a href="#" onclick="selectCode(this); return false;">Select all</a></p><pre><code>C:\Users\U\AppData\Local\Programs\Python\Python35\python.exe --version Python 3.5.4 C:\Users\U\AppData\Local\Programs\Python\Python35\python.exe data/tools/wmlscope data/core ... #Cross-reference time: 97 seconds C:\Users\U\AppData\Local\Programs\Python\Python37\python.exe --version Python 3.7.9 C:\Users\U\AppData\Local\Programs\Python\Python37\python.exe data/tools/wmlscope data/core ... #Cross-reference time: 74 seconds C:\Users\U\AppData\Local\Programs\Python\Python39\python.exe --version Python 3.9.10 C:\Users\U\AppData\Local\Programs\Python\Python39\python.exe data/tools/wmlscope data/core ... #Cross-reference time: 67 seconds </code></pre></div></div> </div> </div> <div class="back2top"> <a href="#top" class="top" title="Top"> <i class="icon fa-chevron-circle-up fa-fw icon-gray" aria-hidden="true"></i> <span class="sr-only">Top</span> </a> </div> </div> </div> <div id="p671440" class="post has-profile bg1"> <div class="inner"> <dl class="postprofile" id="profile671440"> <dt class="no-profile-rank has-avatar"> <div class="avatar-container"> <a href="./../memberlist.php?mode=viewprofile&u=180204&sid=16042f61591e77357eaed57376760979" class="avatar"><img class="avatar" src="./../download/file.php?avatar=180204_1672449756.png" width="89" height="100" alt="User avatar" /></a> </div> <a href="./../memberlist.php?mode=viewprofile&u=180204&sid=16042f61591e77357eaed57376760979" class="username">Atreides</a> </dt> <dd class="profile-posts"><strong>Posts:</strong> <a href="./../search.php?author_id=180204&sr=posts&sid=16042f61591e77357eaed57376760979">1176</a></dd> <dd class="profile-joined"><strong>Joined:</strong> March 30th, 2019, 10:38 pm</dd> <dd class="profile-custom-field profile-phpbb_location"><strong>Location:</strong> On the 2nd story of the centre village of Merwuerdigliebe turning the lights on and off</dd> </dl> <div class="postbody"> <div id="post_content671440"> <h3 > <a href="./../viewtopic.php?p=671440&sid=16042f61591e77357eaed57376760979#p671440">Re: wmlscope is sooooo slow</a> </h3> <ul class="post-buttons"> <li> <a href="./../posting.php?mode=quote&p=671440&sid=16042f61591e77357eaed57376760979" title="Reply with quote" class="button button-icon-only"> <i class="icon fa-quote-left fa-fw" aria-hidden="true"></i><span class="sr-only">Quote</span> </a> </li> </ul> <p class="author"> <a class="unread" href="./../viewtopic.php?p=671440&sid=16042f61591e77357eaed57376760979#p671440" title="Post"> <i class="icon fa-file fa-fw icon-lightgray icon-md" aria-hidden="true"></i><span class="sr-only">Post</span> </a> <span class="responsive-hide">by <strong><a href="./../memberlist.php?mode=viewprofile&u=180204&sid=16042f61591e77357eaed57376760979" class="username">Atreides</a></strong> » </span><time datetime="2022-02-08T05:47:57+00:00">February 8th, 2022, 5:47 am</time> </p> <div class="content">Thanks for the replies. Interesting stuff! I suspect that the rewrite for 1.14 is the likely culprit. Amazing to hear how much had to be changed. I'd like to move to Debian 10 (and will be "forced" to when they stop updating 9 this summer (I think)) but it sounded very daunting when I read about it.<br> <br> One thing I do that helps a lot is to run wmlscope from the command line just on the addon dir (not including the core, that I also avoid with wmllint as it too is super slow when the core gets checked).</div> <div id="sig671440" class="signature">-- <br> <a href="viewtopic.php?p=662182#p662182" class="postlink">Lonely Era</a> <a href="viewtopic.php?p=662897#p662897" class="postlink">Merry Christmas Campaign</a> <a href="viewtopic.php?p=663269#p663269" class="postlink">Red MP Maps</a> <a href="viewtopic.php?p=665210#p665210" class="postlink">Everfell</a> <a href="viewtopic.php?p=665296#p665296" class="postlink">Age of Trials</a></div> </div> </div> <div class="back2top"> <a href="#top" class="top" title="Top"> <i class="icon fa-chevron-circle-up fa-fw icon-gray" aria-hidden="true"></i> <span class="sr-only">Top</span> </a> </div> </div> </div> <div id="p671533" class="post has-profile bg2"> <div class="inner"> <dl class="postprofile" id="profile671533"> <dt class="has-profile-rank has-avatar"> <div class="avatar-container"> <a href="./../memberlist.php?mode=viewprofile&u=127383&sid=16042f61591e77357eaed57376760979" class="avatar"><img class="avatar" src="./../download/file.php?avatar=127383_1391150809.png" width="72" height="72" alt="User avatar" /></a> </div> <a href="./../memberlist.php?mode=viewprofile&u=127383&sid=16042f61591e77357eaed57376760979" style="color: #AA4444;" class="username-coloured">max_torch</a> </dt> <dd class="profile-rank">Inactive Developer</dd> <dd class="profile-posts"><strong>Posts:</strong> <a href="./../search.php?author_id=127383&sr=posts&sid=16042f61591e77357eaed57376760979">416</a></dd> <dd class="profile-joined"><strong>Joined:</strong> July 31st, 2011, 5:54 pm</dd> </dl> <div class="postbody"> <div id="post_content671533"> <h3 > <a href="./../viewtopic.php?p=671533&sid=16042f61591e77357eaed57376760979#p671533">Re: wmlscope is sooooo slow</a> </h3> <ul class="post-buttons"> <li> <a href="./../posting.php?mode=quote&p=671533&sid=16042f61591e77357eaed57376760979" title="Reply with quote" class="button button-icon-only"> <i class="icon fa-quote-left fa-fw" aria-hidden="true"></i><span class="sr-only">Quote</span> </a> </li> </ul> <p class="author"> <a class="unread" href="./../viewtopic.php?p=671533&sid=16042f61591e77357eaed57376760979#p671533" title="Post"> <i class="icon fa-file fa-fw icon-lightgray icon-md" aria-hidden="true"></i><span class="sr-only">Post</span> </a> <span class="responsive-hide">by <strong><a href="./../memberlist.php?mode=viewprofile&u=127383&sid=16042f61591e77357eaed57376760979" style="color: #AA4444;" class="username-coloured">max_torch</a></strong> » </span><time datetime="2022-02-13T06:12:01+00:00">February 13th, 2022, 6:12 am</time> </p> <div class="content">There's a thing in Python where you make use of multiprocessing/multithreading. wmlunits uses this that's why it's fast. But wmlunits will not run on windows,<br> not sure if it might be tricky to make multiprocessing/multithreading be cross-platform?<br> Also, it can be tricky to write this code to run on all devices, for example you would need to detect the number of cores/threads on a computer so that the script knows how many it can use.</div> </div> </div> <div class="back2top"> <a href="#top" class="top" title="Top"> <i class="icon fa-chevron-circle-up fa-fw icon-gray" aria-hidden="true"></i> <span class="sr-only">Top</span> </a> </div> </div> </div> <div id="p671553" class="post has-profile bg1"> <div class="inner"> <dl class="postprofile" id="profile671553"> <dt class="no-profile-rank has-avatar"> <div class="avatar-container"> <a href="./../memberlist.php?mode=viewprofile&u=180204&sid=16042f61591e77357eaed57376760979" class="avatar"><img class="avatar" src="./../download/file.php?avatar=180204_1672449756.png" width="89" height="100" alt="User avatar" /></a> </div> <a href="./../memberlist.php?mode=viewprofile&u=180204&sid=16042f61591e77357eaed57376760979" class="username">Atreides</a> </dt> <dd class="profile-posts"><strong>Posts:</strong> <a href="./../search.php?author_id=180204&sr=posts&sid=16042f61591e77357eaed57376760979">1176</a></dd> <dd class="profile-joined"><strong>Joined:</strong> March 30th, 2019, 10:38 pm</dd> <dd class="profile-custom-field profile-phpbb_location"><strong>Location:</strong> On the 2nd story of the centre village of Merwuerdigliebe turning the lights on and off</dd> </dl> <div class="postbody"> <div id="post_content671553"> <h3 > <a href="./../viewtopic.php?p=671553&sid=16042f61591e77357eaed57376760979#p671553">Re: wmlscope is sooooo slow</a> </h3> <ul class="post-buttons"> <li> <a href="./../posting.php?mode=quote&p=671553&sid=16042f61591e77357eaed57376760979" title="Reply with quote" class="button button-icon-only"> <i class="icon fa-quote-left fa-fw" aria-hidden="true"></i><span class="sr-only">Quote</span> </a> </li> </ul> <p class="author"> <a class="unread" href="./../viewtopic.php?p=671553&sid=16042f61591e77357eaed57376760979#p671553" title="Post"> <i class="icon fa-file fa-fw icon-lightgray icon-md" aria-hidden="true"></i><span class="sr-only">Post</span> </a> <span class="responsive-hide">by <strong><a href="./../memberlist.php?mode=viewprofile&u=180204&sid=16042f61591e77357eaed57376760979" class="username">Atreides</a></strong> » </span><time datetime="2022-02-13T16:17:00+00:00">February 13th, 2022, 4:17 pm</time> </p> <div class="content">Oh, I should mention that I tried the command line (finally learned about those weird symbolic links - we never had those in MS-DOS) version of wmlscope and while the gui version takes 300 seconds to scan core plus a addon the command line set to scan the same takes about 80 seconds. Not a very accurate comparison, nor sure I used same parameters or add-on but the difference is large enough to make that moot. Man... feels good to be back at the command line.</div> <div id="sig671553" class="signature">-- <br> <a href="viewtopic.php?p=662182#p662182" class="postlink">Lonely Era</a> <a href="viewtopic.php?p=662897#p662897" class="postlink">Merry Christmas Campaign</a> <a href="viewtopic.php?p=663269#p663269" class="postlink">Red MP Maps</a> <a href="viewtopic.php?p=665210#p665210" class="postlink">Everfell</a> <a href="viewtopic.php?p=665296#p665296" class="postlink">Age of Trials</a></div> </div> </div> <div class="back2top"> <a href="#top" class="top" title="Top"> <i class="icon fa-chevron-circle-up fa-fw icon-gray" aria-hidden="true"></i> <span class="sr-only">Top</span> </a> </div> </div> </div> <div id="p671901" class="post has-profile bg2"> <div class="inner"> <dl class="postprofile" id="profile671901"> <dt class="has-profile-rank has-avatar"> <div class="avatar-container"> <a href="./../memberlist.php?mode=viewprofile&u=127383&sid=16042f61591e77357eaed57376760979" class="avatar"><img class="avatar" src="./../download/file.php?avatar=127383_1391150809.png" width="72" height="72" alt="User avatar" /></a> </div> <a href="./../memberlist.php?mode=viewprofile&u=127383&sid=16042f61591e77357eaed57376760979" style="color: #AA4444;" class="username-coloured">max_torch</a> </dt> <dd class="profile-rank">Inactive Developer</dd> <dd class="profile-posts"><strong>Posts:</strong> <a href="./../search.php?author_id=127383&sr=posts&sid=16042f61591e77357eaed57376760979">416</a></dd> <dd class="profile-joined"><strong>Joined:</strong> July 31st, 2011, 5:54 pm</dd> </dl> <div class="postbody"> <div id="post_content671901"> <h3 > <a href="./../viewtopic.php?p=671901&sid=16042f61591e77357eaed57376760979#p671901">Re: wmlscope is sooooo slow</a> </h3> <ul class="post-buttons"> <li> <a href="./../posting.php?mode=quote&p=671901&sid=16042f61591e77357eaed57376760979" title="Reply with quote" class="button button-icon-only"> <i class="icon fa-quote-left fa-fw" aria-hidden="true"></i><span class="sr-only">Quote</span> </a> </li> </ul> <p class="author"> <a class="unread" href="./../viewtopic.php?p=671901&sid=16042f61591e77357eaed57376760979#p671901" title="Post"> <i class="icon fa-file fa-fw icon-lightgray icon-md" aria-hidden="true"></i><span class="sr-only">Post</span> </a> <span class="responsive-hide">by <strong><a href="./../memberlist.php?mode=viewprofile&u=127383&sid=16042f61591e77357eaed57376760979" style="color: #AA4444;" class="username-coloured">max_torch</a></strong> » </span><time datetime="2022-02-26T18:24:47+00:00">February 26th, 2022, 6:24 pm</time> </p> <div class="content"><blockquote cite="./../viewtopic.php?p=671553&sid=16042f61591e77357eaed57376760979#p671553"><div><cite><a href="./../memberlist.php?mode=viewprofile&u=180204&sid=16042f61591e77357eaed57376760979">Atreides</a> wrote: <a href="./../viewtopic.php?p=671553&sid=16042f61591e77357eaed57376760979#p671553" data-post-id="671553" onclick="if(document.getElementById(hash.substr(1)))href=hash">↑</a><span class="responsive-hide">February 13th, 2022, 4:17 pm</span></cite> Oh, I should mention that I tried the command line (finally learned about those weird symbolic links - we never had those in MS-DOS) version of wmlscope and while the gui version takes 300 seconds to scan core plus a addon the command line set to scan the same takes about 80 seconds. Not a very accurate comparison, nor sure I used same parameters or add-on but the difference is large enough to make that moot. Man... feels good to be back at the command line. </div></blockquote> Check if the passed arguments to wmlscope when you ran it in the command line are the same as the arguments that were passed to wmlscope when you ran it in the GUI version.</div> </div> </div> <div class="back2top"> <a href="#top" class="top" title="Top"> <i class="icon fa-chevron-circle-up fa-fw icon-gray" aria-hidden="true"></i> <span class="sr-only">Top</span> </a> </div> </div> </div> <div id="p671917" class="post has-profile bg1"> <div class="inner"> <dl class="postprofile" id="profile671917"> <dt class="no-profile-rank has-avatar"> <div class="avatar-container"> <a href="./../memberlist.php?mode=viewprofile&u=180204&sid=16042f61591e77357eaed57376760979" class="avatar"><img class="avatar" src="./../download/file.php?avatar=180204_1672449756.png" width="89" height="100" alt="User avatar" /></a> </div> <a href="./../memberlist.php?mode=viewprofile&u=180204&sid=16042f61591e77357eaed57376760979" class="username">Atreides</a> </dt> <dd class="profile-posts"><strong>Posts:</strong> <a href="./../search.php?author_id=180204&sr=posts&sid=16042f61591e77357eaed57376760979">1176</a></dd> <dd class="profile-joined"><strong>Joined:</strong> March 30th, 2019, 10:38 pm</dd> <dd class="profile-custom-field profile-phpbb_location"><strong>Location:</strong> On the 2nd story of the centre village of Merwuerdigliebe turning the lights on and off</dd> </dl> <div class="postbody"> <div id="post_content671917"> <h3 > <a href="./../viewtopic.php?p=671917&sid=16042f61591e77357eaed57376760979#p671917">Re: wmlscope is sooooo slow</a> </h3> <ul class="post-buttons"> <li> <a href="./../posting.php?mode=quote&p=671917&sid=16042f61591e77357eaed57376760979" title="Reply with quote" class="button button-icon-only"> <i class="icon fa-quote-left fa-fw" aria-hidden="true"></i><span class="sr-only">Quote</span> </a> </li> </ul> <p class="author"> <a class="unread" href="./../viewtopic.php?p=671917&sid=16042f61591e77357eaed57376760979#p671917" title="Post"> <i class="icon fa-file fa-fw icon-lightgray icon-md" aria-hidden="true"></i><span class="sr-only">Post</span> </a> <span class="responsive-hide">by <strong><a href="./../memberlist.php?mode=viewprofile&u=180204&sid=16042f61591e77357eaed57376760979" class="username">Atreides</a></strong> » </span><time datetime="2022-02-27T16:36:13+00:00">February 27th, 2022, 4:36 pm</time> </p> <div class="content"><blockquote cite="./../viewtopic.php?p=671901&sid=16042f61591e77357eaed57376760979#p671901"><div><cite><a href="./../memberlist.php?mode=viewprofile&u=127383&sid=16042f61591e77357eaed57376760979">max_torch</a> wrote: <a href="./../viewtopic.php?p=671901&sid=16042f61591e77357eaed57376760979#p671901" data-post-id="671901" onclick="if(document.getElementById(hash.substr(1)))href=hash">↑</a><span class="responsive-hide">February 26th, 2022, 6:24 pm</span></cite> <blockquote cite="./../viewtopic.php?p=671553&sid=16042f61591e77357eaed57376760979#p671553"><div><cite><a href="./../memberlist.php?mode=viewprofile&u=180204&sid=16042f61591e77357eaed57376760979">Atreides</a> wrote: <a href="./../viewtopic.php?p=671553&sid=16042f61591e77357eaed57376760979#p671553" data-post-id="671553" onclick="if(document.getElementById(hash.substr(1)))href=hash">↑</a><span class="responsive-hide">February 13th, 2022, 4:17 pm</span></cite> Oh, I should mention that I tried the command line (finally learned about those weird symbolic links - we never had those in MS-DOS) version of wmlscope and while the gui version takes 300 seconds to scan core plus a addon the command line set to scan the same takes about 80 seconds. Not a very accurate comparison, nor sure I used same parameters or add-on but the difference is large enough to make that moot. Man... feels good to be back at the command line. </div></blockquote> Check if the passed arguments to wmlscope when you ran it in the command line are the same as the arguments that were passed to wmlscope when you ran it in the GUI version. </div></blockquote> Mmm yes I'd thought of that, but didn't think about it in this context, obviously they could account for a difference. Thanks for pointing it out.</div> <div id="sig671917" class="signature">-- <br> <a href="viewtopic.php?p=662182#p662182" class="postlink">Lonely Era</a> <a href="viewtopic.php?p=662897#p662897" class="postlink">Merry Christmas Campaign</a> <a href="viewtopic.php?p=663269#p663269" class="postlink">Red MP Maps</a> <a href="viewtopic.php?p=665210#p665210" class="postlink">Everfell</a> <a href="viewtopic.php?p=665296#p665296" class="postlink">Age of Trials</a></div> </div> </div> <div class="back2top"> <a href="#top" class="top" title="Top"> <i class="icon fa-chevron-circle-up fa-fw icon-gray" aria-hidden="true"></i> <span class="sr-only">Top</span> </a> </div> </div> </div> <div id="p671954" class="post has-profile bg2"> <div class="inner"> <dl class="postprofile" id="profile671954"> <dt class="no-profile-rank has-avatar"> <div class="avatar-container"> <a href="./../memberlist.php?mode=viewprofile&u=118285&sid=16042f61591e77357eaed57376760979" class="avatar"><img class="avatar" src="./../download/file.php?avatar=118285_1252075591.png" width="72" height="72" alt="User avatar" /></a> </div> <a href="./../memberlist.php?mode=viewprofile&u=118285&sid=16042f61591e77357eaed57376760979" style="color: #DD5500;" class="username-coloured">Elvish_Hunter</a> </dt> <dd class="profile-posts"><strong>Posts:</strong> <a href="./../search.php?author_id=118285&sr=posts&sid=16042f61591e77357eaed57376760979">1596</a></dd> <dd class="profile-joined"><strong>Joined:</strong> September 4th, 2009, 2:39 pm</dd> <dd class="profile-custom-field profile-phpbb_location"><strong>Location:</strong> Lintanir Forest...</dd> </dl> <div class="postbody"> <div id="post_content671954"> <h3 > <a href="./../viewtopic.php?p=671954&sid=16042f61591e77357eaed57376760979#p671954">Re: wmlscope is sooooo slow</a> </h3> <ul class="post-buttons"> <li> <a href="./../posting.php?mode=quote&p=671954&sid=16042f61591e77357eaed57376760979" title="Reply with quote" class="button button-icon-only"> <i class="icon fa-quote-left fa-fw" aria-hidden="true"></i><span class="sr-only">Quote</span> </a> </li> </ul> <p class="author"> <a class="unread" href="./../viewtopic.php?p=671954&sid=16042f61591e77357eaed57376760979#p671954" title="Post"> <i class="icon fa-file fa-fw icon-lightgray icon-md" aria-hidden="true"></i><span class="sr-only">Post</span> </a> <span class="responsive-hide">by <strong><a href="./../memberlist.php?mode=viewprofile&u=118285&sid=16042f61591e77357eaed57376760979" style="color: #DD5500;" class="username-coloured">Elvish_Hunter</a></strong> » </span><time datetime="2022-03-01T10:06:25+00:00">March 1st, 2022, 10:06 am</time> </p> <div class="content"><blockquote cite="./../viewtopic.php?p=671533&sid=16042f61591e77357eaed57376760979#p671533"><div><cite><a href="./../memberlist.php?mode=viewprofile&u=127383&sid=16042f61591e77357eaed57376760979">max_torch</a> wrote: <a href="./../viewtopic.php?p=671533&sid=16042f61591e77357eaed57376760979#p671533" data-post-id="671533" onclick="if(document.getElementById(hash.substr(1)))href=hash">↑</a><span class="responsive-hide">February 13th, 2022, 6:12 am</span></cite> There's a thing in Python where you make use of multiprocessing/multithreading. </div></blockquote> However, multiprocessing can't be really used in this case because wmlscope relies on the files being processed in a certain order (and so does wmllint). For multithreading the situation is even worse because of the GIL (global interpreter lock), which makes sure that all the Python code runs only one thread at any given time; since our Python scripts already seem to take one whole core for their computations, there wouldn't be any benefit. <blockquote cite="./../viewtopic.php?p=671553&sid=16042f61591e77357eaed57376760979#p671553"><div><cite><a href="./../memberlist.php?mode=viewprofile&u=180204&sid=16042f61591e77357eaed57376760979">Atreides</a> wrote: <a href="./../viewtopic.php?p=671553&sid=16042f61591e77357eaed57376760979#p671553" data-post-id="671553" onclick="if(document.getElementById(hash.substr(1)))href=hash">↑</a><span class="responsive-hide">February 13th, 2022, 4:17 pm</span></cite> Oh, I should mention that I tried the command line (finally learned about those weird symbolic links - we never had those in MS-DOS) version of wmlscope and while the gui version takes 300 seconds to scan core plus a addon the command line set to scan the same takes about 80 seconds. </div></blockquote> It's surprising and yet it isn't at the same time. I mean, if you think about it, when using Tkinter Python needs to call an interpreter of another language, which is Tcl/Tk. If you need to run it a lot of times, using the command line and excluding all the GUI stuff is a good idea.<br> BTW, since commits <a class="postlink" href="https://github.com/wesnoth/wesnoth/commit/21bd75c">21bd75c</a> (master) and <a class="postlink" href="https://github.com/wesnoth/wesnoth/commit/0da1ea4">0da1ea4</a> (1.16) wmlscope is capable of reporting usages of deprecated macros, for example like <code class="inline-code">{SPECIAL_NOTES}</code> and <code class="inline-code">{FOREACH} {NEXT}</code>.</div> <div id="sig671954" class="signature">Current maintainer of these add-ons, all on 1.16:<br> <a href="http://forums.wesnoth.org/viewtopic.php?f=8&t=26670" class="postlink">The Sojournings of Grog</a>, <a href="http://forums.wesnoth.org/viewtopic.php?f=8&t=14241" class="postlink">Children of Dragons</a>, <a href="http://forums.wesnoth.org/viewtopic.php?f=8&t=21718" class="postlink">A Rough Life</a>, <a href="http://forums.wesnoth.org/viewtopic.php?f=58&t=28320" class="postlink">Wesnoth Lua Pack</a>, <a href="http://forums.wesnoth.org/viewtopic.php?f=8&t=38828" class="postlink">The White Troll</a> (co-author)</div> </div> </div> <div class="back2top"> <a href="#top" class="top" title="Top"> <i class="icon fa-chevron-circle-up fa-fw icon-gray" aria-hidden="true"></i> <span class="sr-only">Top</span> </a> </div> </div> </div> <div class="action-bar bar-bottom"> <a href="./../posting.php?mode=reply&t=55383&sid=16042f61591e77357eaed57376760979" class="button" title="Post a reply"> <span>Post Reply</span> <i class="icon fa-reply fa-fw" aria-hidden="true"></i> </a> <form method="post" action="./../viewtopic.php?t=55383&sid=16042f61591e77357eaed57376760979"> <div class="dropdown-container dropdown-container-left dropdown-button-control sort-tools"> <span title="Display and sorting options" class="button button-secondary dropdown-trigger dropdown-select"> <i class="icon fa-sort-amount-asc fa-fw" aria-hidden="true"></i> <span class="caret"><i class="icon fa-sort-down fa-fw" aria-hidden="true"></i></span> </span> <div class="dropdown hidden"> <div class="pointer"><div class="pointer-inner"></div></div> <div class="dropdown-contents"> <fieldset class="display-options"> <label>Display: <select name="st" id="st"><option value="0" selected="selected">All posts</option><option value="1">1 day</option><option value="7">7 days</option><option value="14">2 weeks</option><option value="30">1 month</option><option value="90">3 months</option><option value="180">6 months</option><option value="365">1 year</option></select></label> <label>Sort by: <select name="sk" id="sk"><option value="a">Author</option><option value="t" selected="selected">Post time</option><option value="s">Subject</option></select></label> <label>Direction: <select name="sd" id="sd"><option value="a" selected="selected">Ascending</option><option value="d">Descending</option></select></label> <hr class="dashed" /> <input type="submit" class="button2" name="sort" value="Go" /> </fieldset> </div> </div> </div> </form> <div class="pagination"> 9 posts • Page <strong>1</strong> of <strong>1</strong> </div> </div> <div class="action-bar actions-jump"> <p class="jumpbox-return"> <a href="./../viewforum.php?f=10&sid=16042f61591e77357eaed57376760979" class="left-box arrow-left" accesskey="r"> <i class="icon fa-angle-left fa-fw icon-black" aria-hidden="true"></i><span>Return to “Coder’s Corner”</span> </a> </p> <div class="jumpbox dropdown-container dropdown-container-right dropdown-up dropdown-left dropdown-button-control" id="jumpbox"> <span title="Jump to" class="button button-secondary dropdown-trigger dropdown-select"> <span>Jump to</span> <span class="caret"><i class="icon fa-sort-down fa-fw" aria-hidden="true"></i></span> </span> <div class="dropdown"> <div class="pointer"><div class="pointer-inner"></div></div> <ul class="dropdown-contents"> <li><a href="./../viewforum.php?f=64&sid=16042f61591e77357eaed57376760979" class="jumpbox-cat-link"> <span> Announcements</span></a></li> <li><a href="./../viewforum.php?f=62&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span> <span>↳ News</span></a></li> <li><a href="./../viewforum.php?f=25&sid=16042f61591e77357eaed57376760979" class="jumpbox-cat-link"> <span> General</span></a></li> <li><a href="./../viewforum.php?f=6&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span> <span>↳ Users’ Forum</span></a></li> <li><a href="./../viewforum.php?f=70&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span><span class="spacer"></span> <span>↳ Tournaments</span></a></li> <li><a href="./../viewforum.php?f=5&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span> <span>↳ Release Announcements, Compiling & Installation</span></a></li> <li><a href="./../viewforum.php?f=4&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span> <span>↳ Technical Support</span></a></li> <li><a href="./../viewforum.php?f=67&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span><span class="spacer"></span> <span>↳ iOS Support</span></a></li> <li><a href="./../viewforum.php?f=3&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span> <span>↳ Strategies & Tips</span></a></li> <li><a href="./../viewforum.php?f=37&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span> <span>↳ Gameplay Feedback</span></a></li> <li><a href="./../viewforum.php?f=22&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span><span class="spacer"></span> <span>↳ Mainline Campaign Feedback</span></a></li> <li><a href="./../viewforum.php?f=46&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span><span class="spacer"></span><span class="spacer"></span> <span>↳ Tutorial</span></a></li> <li><a href="./../viewforum.php?f=40&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span><span class="spacer"></span><span class="spacer"></span> <span>↳ A Tale of Two Brothers</span></a></li> <li><a href="./../viewforum.php?f=41&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span><span class="spacer"></span><span class="spacer"></span> <span>↳ An Orcish Incursion</span></a></li> <li><a href="./../viewforum.php?f=42&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span><span class="spacer"></span><span class="spacer"></span> <span>↳ The South Guard</span></a></li> <li><a href="./../viewforum.php?f=39&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span><span class="spacer"></span><span class="spacer"></span> <span>↳ Heir to the Throne</span></a></li> <li><a href="./../viewforum.php?f=43&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span><span class="spacer"></span><span class="spacer"></span> <span>↳ Liberty</span></a></li> <li><a href="./../viewforum.php?f=51&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span><span class="spacer"></span><span class="spacer"></span> <span>↳ Legend of Wesmere (single player)</span></a></li> <li><a href="./../viewforum.php?f=56&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span><span class="spacer"></span><span class="spacer"></span> <span>↳ Legend of Wesmere (multiplayer)</span></a></li> <li><a href="./../viewforum.php?f=49&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span><span class="spacer"></span><span class="spacer"></span> <span>↳ Eastern Invasion</span></a></li> <li><a href="./../viewforum.php?f=55&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span><span class="spacer"></span><span class="spacer"></span> <span>↳ The Hammer of Thursagan</span></a></li> <li><a href="./../viewforum.php?f=54&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span><span class="spacer"></span><span class="spacer"></span> <span>↳ Descent into Darkness</span></a></li> <li><a href="./../viewforum.php?f=52&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span><span class="spacer"></span><span class="spacer"></span> <span>↳ Delfador’s Memoirs</span></a></li> <li><a href="./../viewforum.php?f=45&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span><span class="spacer"></span><span class="spacer"></span> <span>↳ Dead Water</span></a></li> <li><a href="./../viewforum.php?f=65&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span><span class="spacer"></span><span class="spacer"></span> <span>↳ Secrets of the Ancients</span></a></li> <li><a href="./../viewforum.php?f=48&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span><span class="spacer"></span><span class="spacer"></span> <span>↳ Sceptre of Fire</span></a></li> <li><a href="./../viewforum.php?f=53&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span><span class="spacer"></span><span class="spacer"></span> <span>↳ Son of the Black Eye</span></a></li> <li><a href="./../viewforum.php?f=44&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span><span class="spacer"></span><span class="spacer"></span> <span>↳ The Rise of Wesnoth</span></a></li> <li><a href="./../viewforum.php?f=47&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span><span class="spacer"></span><span class="spacer"></span> <span>↳ Northern Rebirth</span></a></li> <li><a href="./../viewforum.php?f=50&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span><span class="spacer"></span><span class="spacer"></span> <span>↳ Under the Burning Suns</span></a></li> <li><a href="./../viewforum.php?f=71&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span><span class="spacer"></span><span class="spacer"></span> <span>↳ Winds of Fate</span></a></li> <li><a href="./../viewforum.php?f=31&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span><span class="spacer"></span> <span>↳ Add-on Feedback</span></a></li> <li><a href="./../viewforum.php?f=17&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span> <span>↳ Website</span></a></li> <li><a href="./../viewforum.php?f=26&sid=16042f61591e77357eaed57376760979" class="jumpbox-cat-link"> <span> Development</span></a></li> <li><a href="./../viewforum.php?f=9&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span> <span>↳ Art Contributions</span></a></li> <li><a href="./../viewforum.php?f=23&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span> <span>↳ Art Workshop</span></a></li> <li><a href="./../viewforum.php?f=32&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span> <span>↳ Writers’ Forum</span></a></li> <li><a href="./../viewforum.php?f=21&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span> <span>↳ WML Workshop</span></a></li> <li><a href="./../viewforum.php?f=58&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span> <span>↳ Lua Labs</span></a></li> <li><a href="./../viewforum.php?f=19&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span> <span>↳ Faction & Era Development</span></a></li> <li><a href="./../viewforum.php?f=15&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span> <span>↳ Multiplayer Development</span></a></li> <li><a href="./../viewforum.php?f=8&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span> <span>↳ Scenario & Campaign Development</span></a></li> <li><a href="./../viewforum.php?f=38&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span><span class="spacer"></span> <span>↳ Mainline Campaign Development</span></a></li> <li><a href="./../viewforum.php?f=68&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span><span class="spacer"></span> <span>↳ UMC Replays</span></a></li> <li><a href="./../viewforum.php?f=14&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span> <span>↳ Music & Sound Development</span></a></li> <li><a href="./../viewforum.php?f=7&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span> <span>↳ Translations & Internationalization</span></a></li> <li><a href="./../viewforum.php?f=60&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span><span class="spacer"></span> <span>↳ Translation Stats</span></a></li> <li><a href="./../viewforum.php?f=12&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span> <span>↳ Ideas</span></a></li> <li><a href="./../viewforum.php?f=10&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span> <span>↳ Coder’s Corner</span></a></li> <li><a href="./../viewforum.php?f=2&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span> <span>↳ Developers’ Discussions</span></a></li> <li><a href="./../viewforum.php?f=73&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span><span class="spacer"></span> <span>↳ Wesnoth Organizational Updates</span></a></li> <li><a href="./../viewforum.php?f=18&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span> <span>↳ Art Development</span></a></li> <li><a href="./../viewforum.php?f=28&sid=16042f61591e77357eaed57376760979" class="jumpbox-cat-link"> <span> Miscellaneous</span></a></li> <li><a href="./../viewforum.php?f=13&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span> <span>↳ Game Development</span></a></li> <li><a href="./../viewforum.php?f=11&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span> <span>↳ Off-Topic</span></a></li> <li><a href="./../viewforum.php?f=61&sid=16042f61591e77357eaed57376760979" class="jumpbox-sub-link"><span class="spacer"></span> <span>↳ Forum Games</span></a></li> </ul> </div> </div> </div> </div> <div id="page-footer" class="page-footer" role="contentinfo"> <div class="navbar" role="navigation"> <div class="inner"> <ul id="nav-footer" class="nav-footer linklist" role="menubar"> <li class="breadcrumbs"> <span class="crumb"><a href="./../index.php?sid=16042f61591e77357eaed57376760979" data-navbar-reference="index"><i class="icon fa-home fa-fw" aria-hidden="true"></i><span>Forums</span></a></span> </li> <li class="rightside">All times are <span title="UTC">UTC</span></li> <li class="rightside"> <a href="./../ucp.php?mode=delete_cookies&sid=16042f61591e77357eaed57376760979" data-ajax="true" data-refresh="true" role="menuitem"> <i class="icon fa-trash fa-fw" aria-hidden="true"></i><span>Delete cookies</span> </a> </li> </ul> </div> </div> <div id="darkenwrapper" class="darkenwrapper" data-ajax-error-title="AJAX error" data-ajax-error-text="Something went wrong when processing your request." data-ajax-error-text-abort="User aborted request." data-ajax-error-text-timeout="Your request timed out; please try again." data-ajax-error-text-parsererror="Something went wrong with the request and the server returned an invalid reply."> <div id="darken" class="darken"> </div> </div> <div id="phpbb_alert" class="phpbb_alert" data-l-err="Error" data-l-timeout-processing-req="Request timed out."> <a href="#" class="alert_close"> <i class="icon fa-times-circle fa-fw" aria-hidden="true"></i> </a> <h3 class="alert_title"> </h3><p class="alert_text"></p> </div> <div id="phpbb_confirm" class="phpbb_alert"> <a href="#" class="alert_close"> <i class="icon fa-times-circle fa-fw" aria-hidden="true"></i> </a> <div class="alert_text"></div> </div> </div> </div> <div class="copyright"> <p class="footer-row"> <span class="footer-copyright">Powered by <a href="https://www.phpbb.com/">phpBB</a>® Forum Software © phpBB Limited</span> </p> <p class="footer-row" role="menu"> <a class="footer-link" href="./../ucp.php?mode=privacy&sid=16042f61591e77357eaed57376760979" title="Privacy" role="menuitem"> <span class="footer-link-text">Privacy</span> </a> | <a class="footer-link" href="./../ucp.php?mode=terms&sid=16042f61591e77357eaed57376760979" title="Terms" role="menuitem"> <span class="footer-link-text">Terms</span> </a> </p> </div> <div> <a id="bottom" class="anchor" accesskey="z"></a> </div> <script src="./../assets/javascript/jquery-3.6.0.min.js?assets_version=264"></script> <script src="./../assets/javascript/core.js?assets_version=264"></script> <script type="text/javascript"> var CodeboxExpandText = "Expand"; var CodeboxCollapseText = "Collapse"; </script> <script src="./../assets/cookieconsent/cookieconsent.min.js?assets_version=264"></script> <script> if (typeof window.cookieconsent === "object") { window.addEventListener("load", function(){ window.cookieconsent.initialise({ "palette": { "popup": { "background": "#0F538A" }, "button": { "background": "#E5E5E5" } }, "theme": "classic", "content": { "message": "This\u0020website\u0020uses\u0020cookies\u0020to\u0020ensure\u0020you\u0020get\u0020the\u0020best\u0020experience\u0020on\u0020our\u0020website.", "dismiss": "Got\u0020it\u0021", "link": "Learn\u0020more", "href": "./../ucp.php?mode=privacy&sid=16042f61591e77357eaed57376760979" } }); }); } </script> </div> <!-- #content --> <script src="./../styles/prosilver/template/forum_fn.js?assets_version=264"></script> <script src="./../styles/prosilver/template/ajax.js?assets_version=264"></script> </body> </html>