Repository: Galarzaa90/tibia.py

Issue:
Parse boosted creature

Discussion:

Patch:
diff --git a/CHANGELOG.rst b/CHANGELOG.rst
index b95bd0e..a2f4d71 100644
--- a/CHANGELOG.rst
+++ b/CHANGELOG.rst
@@ -6,6 +6,14 @@ Changelog
     Due to this library relying on external content, older versions are not guaranteed to work.
     Try to always use the latest version.
 
+.. _v2.1.0:
+
+2.1.0 (2019-06-17)
+==================
+
+- Added ways to sort and filter House list results like in Tibia.com.
+- Added support to get the Boosted Creature of the day.
+
 .. _v2.0.1:
 
 2.0.1 (2019-06-04)
diff --git a/docs/api.rst b/docs/api.rst
index 71e1ddb..257439d 100644
--- a/docs/api.rst
+++ b/docs/api.rst
@@ -18,9 +18,6 @@ Enumerations
 ============
 Enumerations are provided for various values in order to avoid depending on strings.
 
-.. autoclass:: HouseType
-    :members:
-    :undoc-members:
 
 .. autoclass:: AccountStatus
     :members:
@@ -30,10 +27,18 @@ Enumerations are provided for various values in order to avoid depending on stri
     :members:
     :undoc-members:
 
+.. autoclass:: HouseOrder
+    :members:
+    :undoc-members:
+
 .. autoclass:: HouseStatus
     :members:
     :undoc-members:
 
+.. autoclass:: HouseType
+    :members:
+    :undoc-members:
+
 .. autoclass:: NewsCategory
     :members:
     :undoc-members:
@@ -50,6 +55,11 @@ Enumerations are provided for various values in order to avoid depending on stri
     :members:
     :undoc-members:
 
+.. autoclass:: TournamentWorldType
+    :members:
+    :undoc-members:
+
+
 .. autoclass:: TransferType
     :members:
     :undoc-members:
@@ -73,6 +83,12 @@ Main Models
 The following models all contain their respective ``from_content`` methods.
 They all have their respective section in Tibia.com
 
+BoostedCreature
+---------------
+.. autoclass:: BoostedCreature
+   :members:
+   :inherited-members:
+
 Character
 ---------
 .. autoclass:: Character
diff --git a/tibiapy/__init__.py b/tibiapy/__init__.py
index a550eff..8d33782 100644
--- a/tibiapy/__init__.py
+++ b/tibiapy/__init__.py
@@ -10,9 +10,10 @@ from tibiapy.house import *
 from tibiapy.kill_statistics import *
 from tibiapy.news import *
 from tibiapy.world import *
+from tibiapy.creature import *
 from tibiapy.client import *
 
-__version__ = '2.0.1'
+__version__ = '2.1.0'
 
 from logging import NullHandler
 
diff --git a/tibiapy/abc.py b/tibiapy/abc.py
index 9eb308a..ebc2097 100644
--- a/tibiapy/abc.py
+++ b/tibiapy/abc.py
@@ -5,13 +5,13 @@ import urllib.parse
 from collections import OrderedDict
 from enum import Enum
 
-from tibiapy.enums import HouseType
+from tibiapy.enums import HouseType, HouseStatus, HouseOrder
 
 CHARACTER_URL = "https://www.tibia.com/community/?subtopic=characters&name=%s"
 CHARACTER_URL_TIBIADATA = "https://api.tibiadata.com/v2/characters/%s.json"
 HOUSE_URL = "https://www.tibia.com/community/?subtopic=houses&page=view&houseid=%d&world=%s"
 HOUSE_URL_TIBIADATA = "https://api.tibiadata.com/v2/house/%s/%d.json"
-HOUSE_LIST_URL = "https://www.tibia.com/community/?subtopic=houses&world=%s&town=%s&type=%s"
+HOUSE_LIST_URL = "https://www.tibia.com/community/?subtopic=houses&world=%s&town=%s&type=%s&status=%s&order=%s"
 HOUSE_LIST_URL_TIBIADATA = "https://api.tibiadata.com/v2/houses/%s/%s/%s.json"
 GUILD_URL = "https://www.tibia.com/community/?subtopic=guilds&page=view&GuildName=%s"
 GUILD_URL_TIBIADATA = "https://api.tibiadata.com/v2/guild/%s.json"
@@ -321,7 +321,8 @@ class BaseHouse(Serializable, metaclass=abc.ABCMeta):
         return HOUSE_URL_TIBIADATA % (world, house_id)
 
     @classmethod
-    def get_list_url(cls, world, town, house_type: HouseType = HouseType.HOUSE):
+    def get_list_url(cls, world, town, house_type: HouseType = HouseType.HOUSE, status: HouseStatus = None,
+                     order=HouseOrder.NAME):
         """
         Gets the URL to the house list on Tibia.com with the specified parameters.
 
@@ -333,6 +334,10 @@ class BaseHouse(Serializable, metaclass=abc.ABCMeta):
             The name of the town.
         house_type: :class:`HouseType`
             Whether to search for houses or guildhalls.
+        status: :class:`HouseStatus`, optional
+            The house status to filter results. By default no filters will be applied.
+        order: :class:`HouseOrder`, optional
+            The ordering to use for the results. By default they are sorted by name.
 
         Returns
         -------
@@ -340,7 +345,8 @@ class BaseHouse(Serializable, metaclass=abc.ABCMeta):
             The URL to the list matching the parameters.
         """
         house_type = "%ss" % house_type.value
-        return HOUSE_LIST_URL % (urllib.parse.quote(world), urllib.parse.quote(town), house_type)
+        status = "" if status is None else status.value
+        return HOUSE_LIST_URL % (urllib.parse.quote(world), urllib.parse.quote(town), house_type, status, order.value)
 
     @classmethod
     def get_list_url_tibiadata(cls, world, town, house_type: HouseType = HouseType.HOUSE):
diff --git a/tibiapy/client.py b/tibiapy/client.py
index 3b52693..b3824a4 100644
--- a/tibiapy/client.py
+++ b/tibiapy/client.py
@@ -5,7 +5,8 @@ import aiohttp
 
 import tibiapy
 from tibiapy import Character, Guild, World, House, KillStatistics, ListedGuild, Highscores, Category, VocationFilter, \
-    ListedHouse, HouseType, WorldOverview, NewsCategory, NewsType, ListedNews, News, Forbidden, NetworkError
+    ListedHouse, HouseType, WorldOverview, NewsCategory, NewsType, ListedNews, News, Forbidden, NetworkError, \
+    HouseStatus, HouseOrder, BoostedCreature
 
 __all__ = (
     "Client",
@@ -37,11 +38,14 @@ class Client:
             self.loop.create_task(self._initialize_session())
 
     async def _initialize_session(self):
-        self.session = aiohttp.ClientSession(loop=self.loop)  # type: aiohttp.ClientSession
+        headers = {
+            'User-Agent ': "Tibia.py/%s (+https://github.com/Galarzaa90/tibia.py" % tibiapy.__version__
+        }
+        self.session = aiohttp.ClientSession(loop=self.loop, headers=headers)  # type: aiohttp.ClientSession
 
     @classmethod
     def _handle_status(cls, status_code):
-        """Handles error status codes, raising exceptions if neccesary."""
+        """Handles error status codes, raising exceptions if necessary."""
         if status_code < 400:
             return
         if status_code == 403:
@@ -99,6 +103,28 @@ class Client:
         except aiohttp.ClientError as e:
             raise NetworkError("aiohttp.ClientError: %s" % e, e)
 
+    async def fetch_boosted_creature(self):
+        """Fetches today's boosted creature.
+
+        .. versionadded:: 2.1.0
+
+        Returns
+        -------
+        :class:`BoostedCreature`
+            The boosted creature of the day.
+
+        Raises
+        ------
+        Forbidden
+            If a 403 Forbidden error was returned.
+            This usually means that Tibia.com is rate-limiting the client because of too many requests.
+        NetworkError
+            If there's any connection errors during the request.
+        """
+        content = await self._get(News.get_list_url())
+        boosted_creature = BoostedCreature.from_content(content)
+        return boosted_creature
+
     async def fetch_character(self, name):
         """Fetches a character by its name from Tibia.com
 
@@ -258,7 +284,8 @@ class Client:
         world = World.from_content(content)
         return world
 
-    async def fetch_world_houses(self, world, town, house_type=HouseType.HOUSE):
+    async def fetch_world_houses(self, world, town, house_type=HouseType.HOUSE, status: HouseStatus = None,
+                                 order=HouseOrder.NAME):
         """Fetches the house list of a world and type.
 
         Parameters
@@ -269,6 +296,10 @@ class Client:
             The name of the town.
         house_type: :class:`HouseType`
             The type of building. House by default.
+        status: :class:`HouseStatus`, optional
+            The house status to filter results. By default no filters will be applied.
+        order: :class:`HouseOrder`, optional
+            The ordering to use for the results. By default they are sorted by name.
 
         Returns
         -------
@@ -283,7 +314,7 @@ class Client:
         NetworkError
             If there's any connection errors during the request.
         """
-        content = await self._get(ListedHouse.get_list_url(world, town, house_type))
+        content = await self._get(ListedHouse.get_list_url(world, town, house_type, status, order))
         houses = ListedHouse.list_from_content(content)
         return houses
 
@@ -291,7 +322,7 @@ class Client:
         """Fetches the list of guilds in a world from Tibia.com
 
         Parameters
-        ----------
+        ---------cl-
         world: :class:`str`
             The name of the world.
 
diff --git a/tibiapy/creature.py b/tibiapy/creature.py
new file mode 100644
index 0000000..1d5d7e6
--- /dev/null
+++ b/tibiapy/creature.py
@@ -0,0 +1,67 @@
+import bs4
+
+from tibiapy import abc, InvalidContent
+
+__all__ = (
+    "BoostedCreature",
+)
+
+BOOSTED_ALT = "Today's boosted creature: "
+
+
+class BoostedCreature(abc.Serializable):
+    """Represents a boosted creature entry.
+
+    This creature changes every server save and applies to all Game Worlds.
+    Boosted creatures yield twice the amount of experience points, carry more loot and respawn at a faster rate.
+
+    Attributes
+    ----------
+    name: :class:`str`
+        The name of the boosted creature.
+    image_url: :class:`str`
+        An URL containing the boosted creature's image.
+    """
+    __slots__ = (
+        "name",
+        "image_url",
+    )
+
+    def __init__(self, name, image_url):
+        self.name = name
+        self.image_url = image_url
+
+    def __repr__(self):
+        return "<{0.__class__.__name__} name={0.name!r} image_url={0.image_url!r}>".format(self)
+
+    @classmethod
+    def from_content(cls, content):
+        """
+        Gets the boosted creature from any Tibia.com page.
+
+
+        Parameters
+        ----------
+        content: :class:`str`
+            The HTML content of a Tibia.com page.
+
+        Returns
+        -------
+        :class:`News`
+            The boosted article shown.
+
+        Raises
+        ------
+        InvalidContent
+            If content is not the HTML of a Tibia.com's page.
+        """
+        try:
+            parsed_content = bs4.BeautifulSoup(content.replace('ISO-8859-1', 'utf-8'), "lxml",
+                                               parse_only=bs4.SoupStrainer("div", attrs={"id": "RightArtwork"}))
+            img = parsed_content.find("img", attrs={"id": "Monster"})
+            name = img["title"].replace(BOOSTED_ALT, "").strip()
+            image_url = img["src"]
+            return cls(name, image_url)
+        except TypeError:
+            raise InvalidContent("content is not from Tibia.com")
+
diff --git a/tibiapy/enums.py b/tibiapy/enums.py
index f3fa86f..8414d90 100644
--- a/tibiapy/enums.py
+++ b/tibiapy/enums.py
@@ -3,6 +3,7 @@ from enum import Enum
 __all__ = (
     'AccountStatus',
     'Category',
+    'HouseOrder',
     'HouseStatus',
     'HouseType',
     'NewsCategory',
@@ -50,6 +51,15 @@ class Category(BaseEnum):
     SWORD_FIGHTING = "sword"
 
 
+class HouseOrder(BaseEnum):
+    """The possible ordering methods for house lists in Tibia.com"""
+    NAME = "name"
+    SIZE = "size"
+    RENT = "rent"
+    BID = "bid"
+    AUCTION_END = "end"
+
+
 class HouseStatus(BaseEnum):
     """Renting statuses of a house."""
     RENTED = "rented"
diff --git a/tibiapy/highscores.py b/tibiapy/highscores.py
index b283865..502edbe 100644
--- a/tibiapy/highscores.py
+++ b/tibiapy/highscores.py
@@ -187,8 +187,7 @@ class Highscores(abc.Serializable):
             highscores.results_count = len(highscores.entries)
         except KeyError:
             raise InvalidContent("content is not a TibiaData highscores response.")
-        if isinstance(vocation, VocationFilter):
-            highscores.vocation = vocation
+        highscores.vocation = vocation or VocationFilter.ALL
         return highscores
 
     @classmethod
diff --git a/tibiapy/house.py b/tibiapy/house.py
index 96419bd..ec3ca89 100644
--- a/tibiapy/house.py
+++ b/tibiapy/house.py
@@ -174,12 +174,12 @@ class House(abc.BaseHouseWithId):
         house.id = int(id_regex.search(house.image_url).group(1))
         m = bed_regex.search(beds)
         if m:
-            house.type = HouseType.GUILDHALL if m.group("type") in ["guildhall", "clanhall"] else HouseType.HOUSE
-            beds_word = m.group("beds")
-            if beds_word == "no":
-                house.beds = 0
+            if m.group("type").lower() in ["guildhall", "clanhall"]:
+                house.type = HouseType.GUILDHALL
             else:
-                house.beds = parse_number_words(beds_word)
+                house.type = HouseType.HOUSE
+            beds_word = m.group("beds")
+            house.beds = parse_number_words(beds_word)
 
         m = info_regex.search(info)
         if m:
diff --git a/tibiapy/utils.py b/tibiapy/utils.py
index d609253..4198f93 100644
--- a/tibiapy/utils.py
+++ b/tibiapy/utils.py
@@ -10,6 +10,29 @@ from tibiapy.errors import InvalidContent
 TIBIA_CASH_PATTERN = re.compile(r'(\d*\.?\d*)k*$')
 
 
+def parse_integer(number: str, default=0):
+    """Parses a string representing an integer, ignoring commas or periods.
+
+    Parameters
+    ----------
+    number: :class:`str`
+        A string representing a number.
+    default: :class:`int`
+        The default value to use if the string is not numeric.
+        By default, 0 is used.
+
+    Returns
+    -------
+    :class:`int`
+        The represented integer, or the default value if invalid.
+    """
+    try:
+        number = re.sub(r'[,.]', '', number.strip())
+        return int(number)
+    except ValueError:
+        return default
+
+
 def parse_tibia_datetime(datetime_str) -> Optional[datetime.datetime]:
     """Parses date and time from the format used in Tibia.com
 
diff --git a/tibiapy/world.py b/tibiapy/world.py
index 145c1b1..17bd48c 100644
--- a/tibiapy/world.py
+++ b/tibiapy/world.py
@@ -8,7 +8,7 @@ from tibiapy import InvalidContent, abc, TournamentWorldType
 from tibiapy.character import OnlineCharacter
 from tibiapy.enums import PvpType, TransferType, WorldLocation
 from tibiapy.utils import parse_json, parse_tibia_datetime, parse_tibia_full_date, parse_tibiacom_content, \
-    parse_tibiadata_datetime, try_date, try_datetime, try_enum
+    parse_tibiadata_datetime, try_date, try_datetime, try_enum, parse_integer
 
 __all__ = (
     "ListedWorld",
@@ -349,7 +349,7 @@ class World(abc.BaseWorld):
         self.transfer_type = try_enum(TransferType, world_info.pop("transfer_type", None), TransferType.REGULAR)
         m = record_regexp.match(world_info.pop("online_record"))
         if m:
-            self.record_count = int(m.group("count").replace(".", ""))
+            self.record_count = parse_integer(m.group("count"))
             self.record_date = parse_tibia_datetime(m.group("date"))
         if "world_quest_titles" in world_info:
             self.world_quest_titles = [q.strip() for q in world_info.pop("world_quest_titles").split(",")]
@@ -444,6 +444,18 @@ class WorldOverview(abc.Serializable):
         """:class:`int`: Total players online across all worlds."""
         return sum(w.online_count for w in self.worlds)
 
+    @property
+    def tournament_worlds(self):
+        """:class:`list` of :class:`GuildMember`: List of tournament worlds.
+
+        Note that tournament worlds are not listed when there are no active or upcoming tournaments."""
+        return [w for w in self.worlds if w.tournament_world_type is not None]
+
+    @property
+    def regular_worlds(self):
+        """:class:`list` of :class:`ListedWorld`: List of worlds that are not tournament worlds."""
+        return [w for w in self.worlds if w.tournament_world_type is None]
+
     @classmethod
     def get_url(cls):
         """
@@ -492,9 +504,7 @@ class WorldOverview(abc.Serializable):
         try:
             record_row, *rows = parsed_content.find_all("tr")
             m = record_regexp.search(record_row.text)
-            if not m:
-                raise InvalidContent("content does not belong to the World Overview section in Tibia.com")
-            world_overview.record_count = int(m.group("count").replace(".", ""))
+            world_overview.record_count = parse_integer(m.group("count"))
             world_overview.record_date = parse_tibia_datetime(m.group("date"))
             world_rows = rows
             world_overview._parse_worlds(world_rows)


Test patch:
diff --git a/tests/resources/tournaments/tournament_information_running.txt b/tests/resources/tournaments/tournament_information_running.txt
new file mode 100644
index 0000000..5e667ea
--- /dev/null
+++ b/tests/resources/tournaments/tournament_information_running.txt
@@ -0,0 +1,3 @@
+<div class="BoxContent" style="background-image:url(https://static.tibia.com/images/global/content/scroll.gif);">
+<center><img src="https://static.tibia.com/images/global/content/tournament_banner.png" /></center><br/><div class="SmallBox" >  <div class="MessageContainer" >    <div class="BoxFrameHorizontal" style="background-image:url(https://static.tibia.com/images/global/content/box-frame-horizontal.gif);" /></div>    <div class="BoxFrameEdgeLeftTop" style="background-image:url(https://static.tibia.com/images/global/content/box-frame-edge.gif);" /></div>    <div class="BoxFrameEdgeRightTop" style="background-image:url(https://static.tibia.com/images/global/content/box-frame-edge.gif);" /></div>    <div class="Message" >      <div class="BoxFrameVerticalLeft" style="background-image:url(https://static.tibia.com/images/global/content/box-frame-vertical.gif);" /></div>      <div class="BoxFrameVerticalRight" style="background-image:url(https://static.tibia.com/images/global/content/box-frame-vertical.gif);" /></div><table class="HintBox" ><tr><td><p><b>Prove your Tibia skills!</b></p><p>Prove your skills by participating in Tournaments! Earn great rewards, such as <b>Tournament Coins</b>, <b>Tibia Coins</b> or <b>Tournament Ticket Voucher</b> by participating in a Tournament.</p>Fight hard and place yourself on top of the Tournament <a href="https://www.tibia.com/community/?subtopic=tournamentleaderboards" >Leaderboard</a>!</td></tr></table>    </div>    <div class="BoxFrameHorizontal" style="background-image:url(https://static.tibia.com/images/global/content/box-frame-horizontal.gif);" /></div>    <div class="BoxFrameEdgeRightBottom" style="background-image:url(https://static.tibia.com/images/global/content/box-frame-edge.gif);" /></div>    <div class="BoxFrameEdgeLeftBottom" style="background-image:url(https://static.tibia.com/images/global/content/box-frame-edge.gif);" /></div>  </div></div><br/><div class="TableContainer" >  <table class="Table5" cellpadding="0" cellspacing="0">    <div class="CaptionContainer" >      <div class="CaptionInnerContainer" >        <span class="CaptionEdgeLeftTop" style="background-image:url(https://static.tibia.com/images/global/content/box-frame-edge.gif);" /></span>        <span class="CaptionEdgeRightTop" style="background-image:url(https://static.tibia.com/images/global/content/box-frame-edge.gif);" /></span>        <span class="CaptionBorderTop" style="background-image:url(https://static.tibia.com/images/global/content/table-headline-border.gif);" ></span>        <span class="CaptionVerticalLeft" style="background-image:url(https://static.tibia.com/images/global/content/box-frame-vertical.gif);" /></span>        <div class="Text" >Your Tournament Information</div>        <span class="CaptionVerticalRight" style="background-image:url(https://static.tibia.com/images/global/content/box-frame-vertical.gif);" /></span>        <span class="CaptionBorderBottom" style="background-image:url(https://static.tibia.com/images/global/content/table-headline-border.gif);" ></span>        <span class="CaptionEdgeLeftBottom" style="background-image:url(https://static.tibia.com/images/global/content/box-frame-edge.gif);" /></span>        <span class="CaptionEdgeRightBottom" style="background-image:url(https://static.tibia.com/images/global/content/box-frame-edge.gif);" /></span>      </div>    </div>    <tr>      <td>        <div class="InnerTableContainer" >          <table style="width:100%;" ><tr><td><div class="TableShadowContainerRightTop" >  <div class="TableShadowRightTop" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-rt.gif);" ></div></div><div class="TableContentAndRightShadow" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-rm.gif);" >  <div class="TableContentContainer" >    <table class="TableContent" width="100%"  style="border:1px solid #faf0d7;" ><tr class="Even" ><td><p><div id="TournamentPersonalInformationLoginButton" ><form action="https://www.tibia.com/account/index.php?subtopic=redirectlogin&redirect=https%3A%2F%2Fwww.tibia.com%2Fcommunity%2F%3Fsubtopic%3Dtournament" method="post" style="padding:0px;margin:0px;" ><div class="BigButton" style="background-image:url(https://static.tibia.com/images/global/buttons/sbutton.gif)" ><div onMouseOver="MouseOverBigButton(this);" onMouseOut="MouseOutBigButton(this);" ><div class="BigButtonOver" style="background-image:url(https://static.tibia.com/images/global/buttons/sbutton_over.gif);" ></div><input class="ButtonText" type="image" name="Login" alt="Login" src="https://static.tibia.com/images/global/buttons/_sbutton_login.gif" ></div></div></form></div><b>Log in</b> to see your personal Tournament information!</p></td></tr>    </table>  </div></div><div class="TableShadowContainer" >  <div class="TableBottomShadow" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-bm.gif);" >    <div class="TableBottomLeftShadow" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-bl.gif);" ></div>    <div class="TableBottomRightShadow" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-br.gif);" ></div>  </div></div></td></tr>          </table>        </div>      </td>    </tr>  </table></div><br/><div class="TableContainer" >  <table class="Table5" cellpadding="0" cellspacing="0">    <div class="CaptionContainer" >      <div class="CaptionInnerContainer" >        <span class="CaptionEdgeLeftTop" style="background-image:url(https://static.tibia.com/images/global/content/box-frame-edge.gif);" /></span>        <span class="CaptionEdgeRightTop" style="background-image:url(https://static.tibia.com/images/global/content/box-frame-edge.gif);" /></span>        <span class="CaptionBorderTop" style="background-image:url(https://static.tibia.com/images/global/content/table-headline-border.gif);" ></span>        <span class="CaptionVerticalLeft" style="background-image:url(https://static.tibia.com/images/global/content/box-frame-vertical.gif);" /></span>        <div class="Text" >Tournament Details</div>        <span class="CaptionVerticalRight" style="background-image:url(https://static.tibia.com/images/global/content/box-frame-vertical.gif);" /></span>        <span class="CaptionBorderBottom" style="background-image:url(https://static.tibia.com/images/global/content/table-headline-border.gif);" ></span>        <span class="CaptionEdgeLeftBottom" style="background-image:url(https://static.tibia.com/images/global/content/box-frame-edge.gif);" /></span>        <span class="CaptionEdgeRightBottom" style="background-image:url(https://static.tibia.com/images/global/content/box-frame-edge.gif);" /></span>      </div>    </div>    <tr>      <td>        <div class="InnerTableContainer" >          <table style="width:100%;" ><tr><td><div class="TableShadowContainerRightTop" >  <div class="TableShadowRightTop" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-rt.gif);" ></div></div><div class="TableContentAndRightShadow" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-rm.gif);" >  <div class="TableContentContainer" >    <table class="TableContent" width="100%"  style="border:1px solid #faf0d7;" ><tr><td class="LabelV150" >Phase:</td><td><span class="TournamentPhaseString ColorGreen" >running</span></td></tr><tr><td class="LabelV150" >Start Date:</td><td>Jun&#160;17&#160;2019,&#160;10:00:00&#160;CEST</td></tr><tr><td class="LabelV150" >End Date:</td><td>Jun&#160;24&#160;2019,&#160;10:00:00&#160;CEST</td></tr><tr><td class="LabelV150" >Worlds:</td><td>Endebra, Endera, Endura, Velocera, Velocibra, Velocita</td></tr>    </table>  </div></div><div class="TableShadowContainer" >  <div class="TableBottomShadow" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-bm.gif);" >    <div class="TableBottomLeftShadow" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-bl.gif);" ></div>    <div class="TableBottomRightShadow" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-br.gif);" ></div>  </div></div></td></tr><tr><td><div class="TableShadowContainerRightTop" >  <div class="TableShadowRightTop" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-rt.gif);" ></div></div><div class="TableContentAndRightShadow" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-rm.gif);" >  <div class="TableContentContainer" >    <table class="TableContent" width="100%"  style="border:1px solid #faf0d7;" ><tr><td class="LabelV150" >Rule Set:</td><td><table class="InlineTable" cellpadding="0" cellspacing="0" ><tbody ><tr class="Odd" ><td class="LabelV250" >PvP Type:</td><td class="TextAlignRight" >Open PvP</td></tr><tr class="Even" ><td class="LabelV250" >Daily Tournament Playtime:</td><td class="TextAlignRight" >02:00:00</td></tr><tr class="Odd" ><td class="LabelV250" >Death Penalty Modifier:</td><td class="TextAlignRight" >1.00x</td></tr><tr class="Even" ><td class="LabelV250" >XP Multiplier:</td><td class="TextAlignRight" >7.00x</td></tr><tr class="Odd" ><td class="LabelV250" >Skill Multiplier:</td><td class="TextAlignRight" >10.00x</td></tr><tr class="Even" ><td class="LabelV250" >Spawn Rate Multiplier:</td><td class="TextAlignRight" >1.00x</td></tr><tr class="Odd" ><td class="LabelV250" >Loot Probability:</td><td class="TextAlignRight" >1.00x</td></tr><tr class="Even" ><td class="LabelV250" >Rent Percentage:</td><td class="TextAlignRight" >10%</td></tr><tr class="Odd" ><td class="LabelV250" >House Auction Durations:</td><td class="TextAlignRight" >0</td></tr></tbody></table></td></tr>    </table>  </div></div><div class="TableShadowContainer" >  <div class="TableBottomShadow" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-bm.gif);" >    <div class="TableBottomLeftShadow" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-bl.gif);" ></div>    <div class="TableBottomRightShadow" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-br.gif);" ></div>  </div></div></td></tr><tr><td><div class="TableShadowContainerRightTop" >  <div class="TableShadowRightTop" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-rt.gif);" ></div></div><div class="TableContentAndRightShadow" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-rm.gif);" >  <div class="TableContentContainer" >    <table class="TableContent" width="100%"  style="border:1px solid #faf0d7;" ><tr><td class="LabelV150" >Score Set:</td><td><table class="InlineTable" cellpadding="0" cellspacing="0" ><tr class="Odd" ><td class="LabelV250 VerticalAlignTop" >Level Gain/Loss:</td><td class="TextAlignRight" >+/- 100</td></tr><tr class="Even" ><td class="LabelV250 VerticalAlignTop" >Charm Point Multiplier (rare or lower creatures):</td><td class="TextAlignRight" >Charm Points * 20</td></tr></table></td></tr>    </table>  </div></div><div class="TableShadowContainer" >  <div class="TableBottomShadow" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-bm.gif);" >    <div class="TableBottomLeftShadow" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-bl.gif);" ></div>    <div class="TableBottomRightShadow" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-br.gif);" ></div>  </div></div></td></tr><tr><td><div class="TableShadowContainerRightTop" >  <div class="TableShadowRightTop" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-rt.gif);" ></div></div><div class="TableContentAndRightShadow" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-rm.gif);" >  <div class="TableContentContainer" >    <table class="TableContent" width="100%"  style="border:1px solid #faf0d7;" ><tr><td class="LabelV150" >Reward Set:</td><td><table class="InlineTable" cellpadding="0" cellspacing="0" ><tr class="Odd" ><td><b>Rank 1:</td><td class="TextAlignRight" >3,000<img src="https://static.tibia.com/images/account/icon-tibiacointrusted.png" class="VSCCoinImages"  title="Transferable Tibia Coins"/></td><td class="TextAlignRight" >1,750<img src="https://static.tibia.com/images/account/icon-tournamentcoin.png" class="VSCCoinImages" title="Tournament Coins"/></td><td class="TextAlignRight" >1<img src="https://static.tibia.com/images/global/content/icon-tournamentvoucher.gif" class="VSCCoinImages" title="Tournament Vouchers" /></td></tr><tr class="Even" ><td><b>Rank 2:</td><td class="TextAlignRight" >2,000<img src="https://static.tibia.com/images/account/icon-tibiacointrusted.png" class="VSCCoinImages"  title="Transferable Tibia Coins"/></td><td class="TextAlignRight" >1,750<img src="https://static.tibia.com/images/account/icon-tournamentcoin.png" class="VSCCoinImages" title="Tournament Coins"/></td><td class="TextAlignRight" >1<img src="https://static.tibia.com/images/global/content/icon-tournamentvoucher.gif" class="VSCCoinImages" title="Tournament Vouchers" /></td></tr><tr class="Odd" ><td><b>Rank 3:</td><td class="TextAlignRight" >1,000<img src="https://static.tibia.com/images/account/icon-tibiacointrusted.png" class="VSCCoinImages"  title="Transferable Tibia Coins"/></td><td class="TextAlignRight" >1,750<img src="https://static.tibia.com/images/account/icon-tournamentcoin.png" class="VSCCoinImages" title="Tournament Coins"/></td><td class="TextAlignRight" >1<img src="https://static.tibia.com/images/global/content/icon-tournamentvoucher.gif" class="VSCCoinImages" title="Tournament Vouchers" /></td></tr><tr class="Even" ><td><b>Rank 4:</td><td class="TextAlignRight" >700<img src="https://static.tibia.com/images/account/icon-tibiacointrusted.png" class="VSCCoinImages"  title="Transferable Tibia Coins"/></td><td class="TextAlignRight" >1,750<img src="https://static.tibia.com/images/account/icon-tournamentcoin.png" class="VSCCoinImages" title="Tournament Coins"/></td><td class="TextAlignRight" >1<img src="https://static.tibia.com/images/global/content/icon-tournamentvoucher.gif" class="VSCCoinImages" title="Tournament Vouchers" /></td></tr><tr class="Odd" ><td><b>Rank 5:</td><td class="TextAlignRight" >500<img src="https://static.tibia.com/images/account/icon-tibiacointrusted.png" class="VSCCoinImages"  title="Transferable Tibia Coins"/></td><td class="TextAlignRight" >1,750<img src="https://static.tibia.com/images/account/icon-tournamentcoin.png" class="VSCCoinImages" title="Tournament Coins"/></td><td class="TextAlignRight" >1<img src="https://static.tibia.com/images/global/content/icon-tournamentvoucher.gif" class="VSCCoinImages" title="Tournament Vouchers" /></td></tr><tr class="Even" ><td><b>Rank 6:</td><td class="TextAlignRight" >400<img src="https://static.tibia.com/images/account/icon-tibiacointrusted.png" class="VSCCoinImages"  title="Transferable Tibia Coins"/></td><td class="TextAlignRight" >1,250<img src="https://static.tibia.com/images/account/icon-tournamentcoin.png" class="VSCCoinImages" title="Tournament Coins"/></td><td class="TextAlignRight" >1<img src="https://static.tibia.com/images/global/content/icon-tournamentvoucher.gif" class="VSCCoinImages" title="Tournament Vouchers" /></td></tr><tr class="Odd" ><td><b>Rank 7:</td><td class="TextAlignRight" >350<img src="https://static.tibia.com/images/account/icon-tibiacointrusted.png" class="VSCCoinImages"  title="Transferable Tibia Coins"/></td><td class="TextAlignRight" >1,250<img src="https://static.tibia.com/images/account/icon-tournamentcoin.png" class="VSCCoinImages" title="Tournament Coins"/></td><td class="TextAlignRight" >1<img src="https://static.tibia.com/images/global/content/icon-tournamentvoucher.gif" class="VSCCoinImages" title="Tournament Vouchers" /></td></tr><tr class="Even" ><td><b>Rank 8:</td><td class="TextAlignRight" >300<img src="https://static.tibia.com/images/account/icon-tibiacointrusted.png" class="VSCCoinImages"  title="Transferable Tibia Coins"/></td><td class="TextAlignRight" >1,250<img src="https://static.tibia.com/images/account/icon-tournamentcoin.png" class="VSCCoinImages" title="Tournament Coins"/></td><td class="TextAlignRight" >1<img src="https://static.tibia.com/images/global/content/icon-tournamentvoucher.gif" class="VSCCoinImages" title="Tournament Vouchers" /></td></tr><tr class="Odd" ><td><b>Rank 9:</td><td class="TextAlignRight" >250<img src="https://static.tibia.com/images/account/icon-tibiacointrusted.png" class="VSCCoinImages"  title="Transferable Tibia Coins"/></td><td class="TextAlignRight" >1,250<img src="https://static.tibia.com/images/account/icon-tournamentcoin.png" class="VSCCoinImages" title="Tournament Coins"/></td><td class="TextAlignRight" >1<img src="https://static.tibia.com/images/global/content/icon-tournamentvoucher.gif" class="VSCCoinImages" title="Tournament Vouchers" /></td></tr><tr class="Even" ><td><b>Rank 10:</td><td class="TextAlignRight" >200<img src="https://static.tibia.com/images/account/icon-tibiacointrusted.png" class="VSCCoinImages"  title="Transferable Tibia Coins"/></td><td class="TextAlignRight" >1,250<img src="https://static.tibia.com/images/account/icon-tournamentcoin.png" class="VSCCoinImages" title="Tournament Coins"/></td><td class="TextAlignRight" >1<img src="https://static.tibia.com/images/global/content/icon-tournamentvoucher.gif" class="VSCCoinImages" title="Tournament Vouchers" /></td></tr><tr class="Odd" ><td><b>Rank 11-15:</td><td></td><td class="TextAlignRight" >1,000<img src="https://static.tibia.com/images/account/icon-tournamentcoin.png" class="VSCCoinImages" title="Tournament Coins"/></td><td class="TextAlignRight" >1<img src="https://static.tibia.com/images/global/content/icon-tournamentvoucher.gif" class="VSCCoinImages" title="Tournament Vouchers" /></td></tr><tr class="Even" ><td><b>Rank 16-20:</td><td></td><td class="TextAlignRight" >800<img src="https://static.tibia.com/images/account/icon-tournamentcoin.png" class="VSCCoinImages" title="Tournament Coins"/></td><td class="TextAlignRight" >1<img src="https://static.tibia.com/images/global/content/icon-tournamentvoucher.gif" class="VSCCoinImages" title="Tournament Vouchers" /></td></tr><tr class="Odd" ><td><b>Rank 21-25:</td><td></td><td class="TextAlignRight" >700<img src="https://static.tibia.com/images/account/icon-tournamentcoin.png" class="VSCCoinImages" title="Tournament Coins"/></td><td class="TextAlignRight" >1<img src="https://static.tibia.com/images/global/content/icon-tournamentvoucher.gif" class="VSCCoinImages" title="Tournament Vouchers" /></td></tr><tr class="Even" ><td><b>Rank 26-50:</td><td></td><td class="TextAlignRight" >600<img src="https://static.tibia.com/images/account/icon-tournamentcoin.png" class="VSCCoinImages" title="Tournament Coins"/></td><td class="TextAlignRight" >1<img src="https://static.tibia.com/images/global/content/icon-tournamentvoucher.gif" class="VSCCoinImages" title="Tournament Vouchers" /></td></tr><tr class="Odd" ><td><b>Rank 51-75:</td><td></td><td class="TextAlignRight" >500<img src="https://static.tibia.com/images/account/icon-tournamentcoin.png" class="VSCCoinImages" title="Tournament Coins"/></td><td></td></tr><tr class="Even" ><td><b>Rank 76-100:</td><td></td><td class="TextAlignRight" >450<img src="https://static.tibia.com/images/account/icon-tournamentcoin.png" class="VSCCoinImages" title="Tournament Coins"/></td><td></td></tr><tr class="Odd" ><td><b>Rank 101-125:</td><td></td><td class="TextAlignRight" >350<img src="https://static.tibia.com/images/account/icon-tournamentcoin.png" class="VSCCoinImages" title="Tournament Coins"/></td><td></td></tr><tr class="Even" ><td><b>Rank 126-150:</td><td></td><td class="TextAlignRight" >300<img src="https://static.tibia.com/images/account/icon-tournamentcoin.png" class="VSCCoinImages" title="Tournament Coins"/></td><td></td></tr><tr class="Odd" ><td><b>Rank 151-175:</td><td></td><td class="TextAlignRight" >250<img src="https://static.tibia.com/images/account/icon-tournamentcoin.png" class="VSCCoinImages" title="Tournament Coins"/></td><td></td></tr><tr class="Even" ><td><b>Rank 176-200:</td><td></td><td class="TextAlignRight" >150<img src="https://static.tibia.com/images/account/icon-tournamentcoin.png" class="VSCCoinImages" title="Tournament Coins"/></td><td></td></tr><tr class="Odd" ><td><b>Rank 201-99999:</td><td></td><td class="TextAlignRight" >100<img src="https://static.tibia.com/images/account/icon-tournamentcoin.png" class="VSCCoinImages" title="Tournament Coins"/></td><td></td></tr></table></td></tr>    </table>  </div></div><div class="TableShadowContainer" >  <div class="TableBottomShadow" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-bm.gif);" >    <div class="TableBottomLeftShadow" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-bl.gif);" ></div>    <div class="TableBottomRightShadow" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-br.gif);" ></div>  </div></div></td></tr>          </table>        </div>      </td>    </tr>  </table></div><br/>        </div>
+      </div>
\ No newline at end of file
diff --git a/tests/resources/tournaments/tournament_leaderboards_running.txt b/tests/resources/tournaments/tournament_leaderboards_running.txt
new file mode 100644
index 0000000..37511b7
--- /dev/null
+++ b/tests/resources/tournaments/tournament_leaderboards_running.txt
@@ -0,0 +1,4 @@
+<div class="BoxContent" style="background-image:url(https://static.tibia.com/images/global/content/scroll.gif);">
+<script>setInterval(function(){RefreshTournamentLeaderboardPage("Endebra",3,1,1);}, 60000);</script><div class="TableContainer" >  <table class="Table3" cellpadding="0" cellspacing="0">    <div class="CaptionContainer" >      <div class="CaptionInnerContainer" >        <span class="CaptionEdgeLeftTop" style="background-image:url(https://static.tibia.com/images/global/content/box-frame-edge.gif);" /></span>        <span class="CaptionEdgeRightTop" style="background-image:url(https://static.tibia.com/images/global/content/box-frame-edge.gif);" /></span>        <span class="CaptionBorderTop" style="background-image:url(https://static.tibia.com/images/global/content/table-headline-border.gif);" ></span>        <span class="CaptionVerticalLeft" style="background-image:url(https://static.tibia.com/images/global/content/box-frame-vertical.gif);" /></span>        <div class="Text" >Tournament Leaderboards</div>        <span class="CaptionVerticalRight" style="background-image:url(https://static.tibia.com/images/global/content/box-frame-vertical.gif);" /></span>        <span class="CaptionBorderBottom" style="background-image:url(https://static.tibia.com/images/global/content/table-headline-border.gif);" ></span>        <span class="CaptionEdgeLeftBottom" style="background-image:url(https://static.tibia.com/images/global/content/box-frame-edge.gif);" /></span>        <span class="CaptionEdgeRightBottom" style="background-image:url(https://static.tibia.com/images/global/content/box-frame-edge.gif);" /></span>      </div>    </div>    <tr>      <td>        <div class="InnerTableContainer" >          <table style="width:100%;" ><tr><td><div class="TableShadowContainerRightTop" >  <div class="TableShadowRightTop" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-rt.gif);" ></div></div><div class="TableContentAndRightShadow" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-rm.gif);" >  <div class="TableContentContainer" >    <table class="TableContent" width="100%"  style="border:1px solid #faf0d7;" ><tr><td>Here you can check the Tournament ranking of single characters on the single Tournament worlds as well as of the various Tournament cycles.<br><br><input type="checkbox" name="leaderboardrefreshcheckbox" checked="checked" value="1" onClick="CreateAndUpdateCookieForTournamentCheckBox();"/> check this box to automatically refresh the leaderboard each minute</td></tr>    </table>  </div></div><div class="TableShadowContainer" >  <div class="TableBottomShadow" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-bm.gif);" >    <div class="TableBottomLeftShadow" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-bl.gif);" ></div>    <div class="TableBottomRightShadow" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-br.gif);" ></div>  </div></div></td></tr><tr><td><div class="TableShadowContainerRightTop" >  <div class="TableShadowRightTop" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-rt.gif);" ></div></div><div class="TableContentAndRightShadow" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-rm.gif);" >  <div class="TableContentContainer" >    <table class="TableContent" width="100%"  style="border:1px solid #faf0d7;" ><tr><td><form method="post" action="" style="margin: 0px; padding: 0px;" ><input type="hidden" name="selectedleaderboardpage" value="1" /><table style="width: 100%;" ><tr><td style="width: 50%; border: none;" ><select name="tournamentworld"  class=Width100Percent onChange="this.form.submit();" ><option value="" >--- please select a Tournament world ---</option><option value="Endebra"  selected="selected">Endebra</option><option value="Endera" >Endera</option><option value="Endura" >Endura</option><option value="Velocera" >Velocera</option><option value="Velocibra" >Velocibra</option><option value="Velocita" >Velocita</option></select></td><td style="width: 50%; border: none;" ><select name="tournamentcycle"  class=Width100Percent onChange="this.form.submit();" ><option value="" >--- please select a Tournament ---</option><option value="3"  selected="selected">Current Tournament</option><option value="1" >From May 27, 2019 to June 3, 2019</option></select></td></tr></table></form></td></tr>    </table>  </div></div><div class="TableShadowContainer" >  <div class="TableBottomShadow" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-bm.gif);" >    <div class="TableBottomLeftShadow" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-bl.gif);" ></div>    <div class="TableBottomRightShadow" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-br.gif);" ></div>  </div></div></td></tr><tr id="tournamentleaderboardpage" ><td><div class="TableShadowContainerRightTop" >  <div class="TableShadowRightTop" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-rt.gif);" ></div></div><div class="TableContentAndRightShadow" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-rm.gif);" >  <div class="TableContentContainer" >    <table class="TableContent" width="100%"  style="border:1px solid #faf0d7;" ><tr class="LabelH" ><td style="width: 20%;">Rank</td><td>Character</td><td style="text-align:center; width: 18%;" >Vocation</td><td style="text-align: right; width: 30%;" >Score</td></tr><tr style="background-color:#F1E0C6;" ><td>1. (<span style='color: green'>+18</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowTopLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Himanentv+Twitch" >Himanentv Twitch</a></td><td style="text-align:center;">Sorcerer</td><td style="text-align: right;" >1,900</td></tr><tr style="background-color:#D4C0A1;" ><td>2. (<span style='color: green'>+42</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowTopLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Mirosmar+Barril+Dobrado" >Mirosmar Barril Dobrado</a></td><td style="text-align:center;">Sorcerer</td><td style="text-align: right;" >1,800</td></tr><tr style="background-color:#F1E0C6;" ><td>3. (<span style='color: green'>+40</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowTopLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Caook" >Caook</a></td><td style="text-align:center;">Druid</td><td style="text-align: right;" >1,700</td></tr><tr style="background-color:#D4C0A1;" ><td>4. (<span style='color: green'>+32</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Doutor+Aurelio" >Doutor Aurelio</a></td><td style="text-align:center;">Druid</td><td style="text-align: right;" >1,700</td></tr><tr style="background-color:#F1E0C6;" ><td>5. (<span style='color: green'>+29</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Teus+in" >Teus in</a></td><td style="text-align:center;">Sorcerer</td><td style="text-align: right;" >1,700</td></tr><tr style="background-color:#D4C0A1;" ><td>6. (<span style='color: green'>+29</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Kywens" >Kywens</a></td><td style="text-align:center;">Knight</td><td style="text-align: right;" >1,700</td></tr><tr style="background-color:#F1E0C6;" ><td>7. (<span style='color: green'>+30</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Rubinho+Otitan" >Rubinho Otitan</a></td><td style="text-align:center;">Paladin</td><td style="text-align: right;" >1,700</td></tr><tr style="background-color:#D4C0A1;" ><td>8. (<span style='color: red'>-4</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowTopLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Acid+Fuji" >Acid Fuji</a></td><td style="text-align:center;">Druid</td><td style="text-align: right;" >1,700</td></tr><tr style="background-color:#F1E0C6;" ><td>9. (<span style='color: green'>+2</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowTopLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Rodriguez+Championship" >Rodriguez Championship</a></td><td style="text-align:center;">Druid</td><td style="text-align: right;" >1,600</td></tr><tr style="background-color:#D4C0A1;" ><td>10. (<span style='color: green'>+30</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowTopLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Mutsip" >Mutsip</a></td><td style="text-align:center;">Sorcerer</td><td style="text-align: right;" >1,500</td></tr><tr style="background-color:#F1E0C6;" ><td>11. (<span style='color: green'>+19</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowTopLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Lex+Du+Guesclin" >Lex Du Guesclin</a></td><td style="text-align:center;">Paladin</td><td style="text-align: right;" >1,500</td></tr><tr style="background-color:#D4C0A1;" ><td>12. (<span style='color: green'>+29</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Opaladin" >Opaladin</a></td><td style="text-align:center;">Paladin</td><td style="text-align: right;" >1,400</td></tr><tr style="background-color:#F1E0C6;" ><td>13. (<span style='color: red'>-12</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Bacana+Tornezeiro" >Bacana Tornezeiro</a></td><td style="text-align:center;">Sorcerer</td><td style="text-align: right;" >1,400</td></tr><tr style="background-color:#D4C0A1;" ><td>14. (<span style='color: green'>+4</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Falriah+Nath" >Falriah Nath</a></td><td style="text-align:center;">Paladin</td><td style="text-align: right;" >1,400</td></tr><tr style="background-color:#F1E0C6;" ><td>15. (<span style='color: green'>+12</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Pi+Ka" >Pi Ka</a></td><td style="text-align:center;">Sorcerer</td><td style="text-align: right;" >1,400</td></tr><tr style="background-color:#D4C0A1;" ><td>16. (<span style='color: red'>-14</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Esquilo+Try+Hard" >Esquilo Try Hard</a></td><td style="text-align:center;">Druid</td><td style="text-align: right;" >1,400</td></tr><tr style="background-color:#F1E0C6;" ><td>17. (<span style='color: green'>+25</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Algoz+Keni" >Algoz Keni</a></td><td style="text-align:center;">Knight</td><td style="text-align: right;" >1,400</td></tr><tr style="background-color:#D4C0A1;" ><td>18. (<span style='color: green'>+28</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Nyderene+Isuna" >Nyderene Isuna</a></td><td style="text-align:center;">Knight</td><td style="text-align: right;" >1,300</td></tr><tr style="background-color:#F1E0C6;" ><td>19. (<span style='color: green'>+3</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Dudric+the+Gladiator" >Dudric the Gladiator</a></td><td style="text-align:center;">Knight</td><td style="text-align: right;" >1,300</td></tr><tr style="background-color:#D4C0A1;" ><td>20. (<span style='color: red'>-8</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Abitoxi+Endebrando" >Abitoxi Endebrando</a></td><td style="text-align:center;">Sorcerer</td><td style="text-align: right;" >1,300</td></tr><tr style="background-color:#F1E0C6;" ><td>21. (<span style='color: red'>-8</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Druida+Do+Verdola" >Druida Do Verdola</a></td><td style="text-align:center;">Druid</td><td style="text-align: right;" >1,300</td></tr><tr style="background-color:#D4C0A1;" ><td>22. (<span style='color: green'>+29</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Iie" >Iie</a></td><td style="text-align:center;">Paladin</td><td style="text-align: right;" >1,200</td></tr><tr style="background-color:#F1E0C6;" ><td>23. (<span style='color: green'>+33</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Cohendo+pro+Trofeu" >Cohendo pro Trofeu</a></td><td style="text-align:center;">Paladin</td><td style="text-align: right;" >1,200</td></tr><tr style="background-color:#D4C0A1;" ><td>24. (<span style='color: green'>+30</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Malestrixzs" >Malestrixzs</a></td><td style="text-align:center;">Sorcerer</td><td style="text-align: right;" >1,200</td></tr><tr style="background-color:#F1E0C6;" ><td>25. (<span style='color: green'>+28</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Cidbom+Painho" >Cidbom Painho</a></td><td style="text-align:center;">Druid</td><td style="text-align: right;" >1,200</td></tr><tr style="background-color:#D4C0A1;" ><td>26. (<span style='color: green'>+5</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Gaspar+Tournament" >Gaspar Tournament</a></td><td style="text-align:center;">Sorcerer</td><td style="text-align: right;" >1,200</td></tr><tr style="background-color:#F1E0C6;" ><td>27. (<span style='color: green'>+28</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Leo+Clueless" >Leo Clueless</a></td><td style="text-align:center;">Knight</td><td style="text-align: right;" >1,200</td></tr><tr style="background-color:#D4C0A1;" ><td>28. (<span style='color: red'>-8</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Legendary+Xulodue" >Legendary Xulodue</a></td><td style="text-align:center;">Knight</td><td style="text-align: right;" >1,200</td></tr><tr style="background-color:#F1E0C6;" ><td>29. (<span style='color: green'>+19</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Esvein" >Esvein</a></td><td style="text-align:center;">Druid</td><td style="text-align: right;" >1,100</td></tr><tr style="background-color:#D4C0A1;" ><td>30. (<span style='color: green'>+19</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Azaragoth" >Azaragoth</a></td><td style="text-align:center;">Paladin</td><td style="text-align: right;" >1,100</td></tr><tr style="background-color:#F1E0C6;" ><td>31. (<span style='color: red'>-14</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Tranythzs" >Tranythzs</a></td><td style="text-align:center;">Sorcerer</td><td style="text-align: right;" >1,100</td></tr><tr style="background-color:#D4C0A1;" ><td>32. (<span style='color: red'>-3</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Solin+Solin" >Solin Solin</a></td><td style="text-align:center;">Knight</td><td style="text-align: right;" >1,100</td></tr><tr style="background-color:#F1E0C6;" ><td>33. (<span style='color: green'>+14</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Alestrider" >Alestrider</a></td><td style="text-align:center;">Paladin</td><td style="text-align: right;" >1,100</td></tr><tr style="background-color:#D4C0A1;" ><td>34. (<span style='color: green'>+18</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Leturk+Tilt" >Leturk Tilt</a></td><td style="text-align:center;">Druid</td><td style="text-align: right;" >1,100</td></tr><tr style="background-color:#F1E0C6;" ><td>35. (<span style='color: red'>-7</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Andy+el+loco" >Andy el loco</a></td><td style="text-align:center;">Paladin</td><td style="text-align: right;" >1,000</td></tr><tr style="background-color:#D4C0A1;" ><td>36. (<span style='color: green'>+14</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Lanzadar" >Lanzadar</a></td><td style="text-align:center;">Paladin</td><td style="text-align: right;" >1,000</td></tr><tr style="background-color:#F1E0C6;" ><td>37. (<span style='color: green'>+2</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Dive+into+Grindness" >Dive into Grindness</a></td><td style="text-align:center;">Knight</td><td style="text-align: right;" >1,000</td></tr><tr style="background-color:#D4C0A1;" ><td>38. (<span style='color: red'>-15</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Ramma+Atenendy" >Ramma Atenendy</a></td><td style="text-align:center;">Paladin</td><td style="text-align: right;" >1,000</td></tr><tr style="background-color:#F1E0C6;" ><td>39. (<span style='color: red'>-31</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Yadret" >Yadret</a></td><td style="text-align:center;">Sorcerer</td><td style="text-align: right;" >900</td></tr><tr style="background-color:#D4C0A1;" ><td>40. (<span style='color: red'>-33</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Marchelito" >Marchelito</a></td><td style="text-align:center;">Knight</td><td style="text-align: right;" >900</td></tr><tr style="background-color:#F1E0C6;" ><td>41. (<span style='color: red'>-25</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Muufleszsz" >Muufleszsz</a></td><td style="text-align:center;">Knight</td><td style="text-align: right;" >900</td></tr><tr style="background-color:#D4C0A1;" ><td>42. (<span style='color: red'>-9</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Dyuz" >Dyuz</a></td><td style="text-align:center;">Paladin</td><td style="text-align: right;" >800</td></tr><tr style="background-color:#F1E0C6;" ><td>43. (<span style='color: red'>-34</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Menu+Mas" >Menu Mas</a></td><td style="text-align:center;">Sorcerer</td><td style="text-align: right;" >800</td></tr><tr style="background-color:#D4C0A1;" ><td>44. (<span style='color: red'>-39</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Zuke+On+Fire" >Zuke On Fire</a></td><td style="text-align:center;">Paladin</td><td style="text-align: right;" >800</td></tr><tr style="background-color:#F1E0C6;" ><td>45. (<span style='color: red'>-35</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Prion+Sain" >Prion Sain</a></td><td style="text-align:center;">Paladin</td><td style="text-align: right;" >800</td></tr><tr style="background-color:#D4C0A1;" ><td>46. (<span style='color: red'>-1</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Wheels+Chair" >Wheels Chair</a></td><td style="text-align:center;">Knight</td><td style="text-align: right;" >800</td></tr><tr style="background-color:#F1E0C6;" ><td>47. (<span style='color: red'>-33</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Galiazzi+Vanguard" >Galiazzi Vanguard</a></td><td style="text-align:center;">Knight</td><td style="text-align: right;" >800</td></tr><tr style="background-color:#D4C0A1;" ><td>48. (<span style='color: red'>-24</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Sonikast+Lavard" >Sonikast Lavard</a></td><td style="text-align:center;">Knight</td><td style="text-align: right;" >800</td></tr><tr style="background-color:#F1E0C6;" ><td>49. (<span style='color: red'>-34</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Paladino+Dasfrecha" >Paladino Dasfrecha</a></td><td style="text-align:center;">Paladin</td><td style="text-align: right;" >800</td></tr><tr style="background-color:#D4C0A1;" ><td>50. (<span style='color: red'>-29</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Portal+Guy" >Portal Guy</a></td><td style="text-align:center;">Knight</td><td style="text-align: right;" >800</td></tr><tr style="background-color:#F1E0C6;" ><td>51. (<span style='color: red'>-26</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Rock+Dirx" >Rock Dirx</a></td><td style="text-align:center;">Knight</td><td style="text-align: right;" >700</td></tr><tr style="background-color:#D4C0A1;" ><td>52. (<span style='color: red'>-26</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Ande+Phind" >Ande Phind</a></td><td style="text-align:center;">Druid</td><td style="text-align: right;" >600</td></tr><tr style="background-color:#F1E0C6;" ><td>53. (<span style='color: green'>+6</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowTop.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Arrakisz" >Arrakisz</a></td><td style="text-align:center;">Paladin</td><td style="text-align: right;" >600</td></tr><tr style="background-color:#D4C0A1;" ><td>54. (<span style='color: green'>+6</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDown.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Nervoso+Po" >Nervoso Po</a></td><td style="text-align:center;">Sorcerer</td><td style="text-align: right;" >600</td></tr><tr style="background-color:#F1E0C6;" ><td>55. (<span style='color: red'>-17</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Rata+De+Torneio" >Rata De Torneio</a></td><td style="text-align:center;">Paladin</td><td style="text-align: right;" >600</td></tr><tr style="background-color:#D4C0A1;" ><td>56. (<span style='color: green'>+2</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowTopLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Shionszz" >Shionszz</a></td><td style="text-align:center;">Druid</td><td style="text-align: right;" >600</td></tr><tr style="background-color:#F1E0C6;" ><td>57. (<span style='color: red'>-25</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowTopLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Bernardo+Burnquist" >Bernardo Burnquist</a></td><td style="text-align:center;">Knight</td><td style="text-align: right;" >600</td></tr><tr style="background-color:#D4C0A1;" ><td>58. (<span style='color: red'>-52</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Daluzzz" >Daluzzz</a></td><td style="text-align:center;">Knight</td><td style="text-align: right;" >500</td></tr><tr style="background-color:#F1E0C6;" ><td>59. (<span style='color: green'>+3</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowTopLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Dbrazz" >Dbrazz</a></td><td style="text-align:center;">Knight</td><td style="text-align: right;" >300</td></tr><tr style="background-color:#D4C0A1;" ><td>60. (<span style='color: green'>+3</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowTopLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Niix+The+Bruto" >Niix The Bruto</a></td><td style="text-align:center;">Knight</td><td style="text-align: right;" >300</td></tr><tr style="background-color:#F1E0C6;" ><td>61. (<span style='color: red'>-58</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Lavawall+cos+Pes" >Lavawall cos Pes</a></td><td style="text-align:center;">Knight</td><td style="text-align: right;" >100</td></tr><tr style="background-color:#D4C0A1;" ><td>62. (<span style='color: red'>-5</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowTopLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Crazy+Of+Tournament" >Crazy Of Tournament</a></td><td style="text-align:center;">Knight</td><td style="text-align: right;" >0</td></tr><tr style="background-color:#F1E0C6;" ><td>63. (<span style='color: red'>-2</span>)</td><td><image style="border:0px; margin-bottom: 2px;" src="https://static.tibia.com/images/community/TournamentLeaderboardArrowDownLightColor.png" /> <a href="https://www.tibia.com/community/?subtopic=characters&name=Rubini+Tournament" >Rubini Tournament</a></td><td style="text-align:center;">Sorcerer</td><td style="text-align: right;" >0</td></tr>    </table>  </div></div><div class="TableShadowContainer" >  <div class="TableBottomShadow" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-bm.gif);" >    <div class="TableBottomLeftShadow" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-bl.gif);" ></div>    <div class="TableBottomRightShadow" style="background-image:url(https://static.tibia.com/images/global/content/table-shadow-br.gif);" ></div>  </div></div></td></tr><tr><td style="padding-right: 10px;" ><small id="tournamentleaderboardpagination"><div style="float: left;"><b>&raquo; Pages:  1</b></div><div style="float: right;"><b>&raquo; Results: 63</b></div></small></td></tr>          </table>        </div>      </td>    </tr>  </table></div>        </div>
+      </div>
+    </div>
\ No newline at end of file
diff --git a/tests/tests_client.py b/tests/tests_client.py
index 5d10a5f..21b3091 100644
--- a/tests/tests_client.py
+++ b/tests/tests_client.py
@@ -13,7 +13,7 @@ from tests.tests_kill_statistics import FILE_KILL_STATISTICS_FULL
 from tests.tests_news import FILE_NEWS_LIST, FILE_NEWS_ARTICLE
 from tests.tests_tibiapy import TestCommons
 from tibiapy import Client, Character, Guild, Highscores, VocationFilter, Category, House, ListedHouse, ListedGuild, \
-    KillStatistics, ListedNews, News, World, WorldOverview, Forbidden, NetworkError
+    KillStatistics, ListedNews, News, World, WorldOverview, Forbidden, NetworkError, BoostedCreature
 
 
 class TestClient(asynctest.TestCase, TestCommons):
@@ -168,7 +168,13 @@ class TestClient(asynctest.TestCase, TestCommons):
 
         self.assertIsInstance(worlds, WorldOverview)
 
+    @aioresponses()
+    async def testFetchBoostedCreature(self, mock):
+        content = self._load_resource(self.FILE_UNRELATED_SECTION)
+        mock.get(News.get_list_url(), status=200, body=content)
+        creature = await self.client.fetch_boosted_creature()
 
+        self.assertIsInstance(creature, BoostedCreature)
 
 
 
diff --git a/tests/tests_creature.py b/tests/tests_creature.py
new file mode 100644
index 0000000..e9f439c
--- /dev/null
+++ b/tests/tests_creature.py
@@ -0,0 +1,20 @@
+import unittest
+
+from tests.tests_tibiapy import TestCommons
+from tibiapy import BoostedCreature, InvalidContent
+
+
+class TestCreature(TestCommons, unittest.TestCase):
+    # region Tibia.com Tests
+    def testBoostedCreature(self):
+        content = self._load_resource(self.FILE_UNRELATED_SECTION)
+        creature = BoostedCreature.from_content(content)
+
+        self.assertIsInstance(creature, BoostedCreature)
+        self.assertEqual("Skeleton Warrior", creature.name)
+
+    def testBoostedCreatureNotTibiaCom(self):
+        with self.assertRaises(InvalidContent):
+            BoostedCreature.from_content("<html><div><p>Nothing</p></div></html>")
+
+    # endregion
diff --git a/tests/tests_highscores.py b/tests/tests_highscores.py
index ecdf6d5..66ecab4 100644
--- a/tests/tests_highscores.py
+++ b/tests/tests_highscores.py
@@ -98,6 +98,9 @@ class TestHighscores(unittest.TestCase, TestCommons):
         self.assertEqual(highscores.category, Category.AXE_FIGHTING)
         self.assertEqual(highscores.results_count, 300)
 
+        self.assertEqual(highscores.url_tibiadata,
+                         Highscores.get_url_tibiadata(highscores.world, highscores.category, highscores.vocation))
+
         for entry in highscores.entries:
             self.assertIsInstance(entry, HighscoresEntry)
             self.assertIsInstance(entry.name, str)
diff --git a/tests/tests_utils.py b/tests/tests_utils.py
index 540d7a0..780ddf6 100644
--- a/tests/tests_utils.py
+++ b/tests/tests_utils.py
@@ -5,6 +5,7 @@ import tibiapy
 
 from tests.tests_tibiapy import TestCommons
 from tibiapy import enums, utils
+from tibiapy.utils import parse_integer, parse_tibia_money
 
 TIBIA_DATETIME_CEST = "Jul 10 2018, 07:13:32 CEST"
 TIBIA_DATETIME_CET = "Jan 10 2018, 07:13:32 CET"
@@ -145,6 +146,7 @@ class TestUtils(TestCommons, unittest.TestCase):
 
     def testParseNumberWords(self):
         self.assertEqual(utils.parse_number_words("one"), 1)
+        self.assertEqual(utils.parse_number_words("no"), 0)
         self.assertEqual(utils.parse_number_words("..."), 0)
         self.assertEqual(utils.parse_number_words("twenty-one"), 21)
         self.assertEqual(utils.parse_number_words("one hundred two"), 102)
@@ -160,3 +162,18 @@ class TestUtils(TestCommons, unittest.TestCase):
         self.assertEqual(enums.VocationFilter.from_name("royal paladin"), enums.VocationFilter.PALADINS)
         self.assertEqual(enums.VocationFilter.from_name("unknown"), enums.VocationFilter.ALL)
         self.assertIsNone(enums.VocationFilter.from_name("unknown", False))
+
+    def testParseTibiaMoney(self):
+        self.assertEqual(1000, parse_tibia_money("1k"))
+        self.assertEqual(5000000, parse_tibia_money("5kk"))
+        self.assertEqual(2500, parse_tibia_money("2.5k"))
+        self.assertEqual(50, parse_tibia_money("50"))
+        with self.assertRaises(ValueError):
+            parse_tibia_money("abc")
+
+    def testParseInteger(self):
+        self.assertEqual(1450, parse_integer("1.450"))
+        self.assertEqual(1110, parse_integer("1,110"))
+        self.assertEqual(15, parse_integer("15"))
+        self.assertEqual(0, parse_integer("abc"))
+        self.assertEqual(-1, parse_integer("abc", -1))
diff --git a/tests/tests_world.py b/tests/tests_world.py
index c83cdfd..d473f9d 100644
--- a/tests/tests_world.py
+++ b/tests/tests_world.py
@@ -111,6 +111,8 @@ class TestWorld(TestCommons, unittest.TestCase):
         self.assertGreater(world_overview.total_online, 0)
         self.assertIsNotNone(world_overview.record_date)
         self.assertIsNotNone(world_overview.record_count)
+        self.assertEqual(len(world_overview.regular_worlds), 65)
+        self.assertEqual(len(world_overview.tournament_worlds), 6)
 
         worlds = ListedWorld.list_from_content(content)
         self.assertEqual(len(world_overview.worlds), len(worlds))
@@ -206,6 +208,7 @@ class TestWorld(TestCommons, unittest.TestCase):
 
         self.assertIsInstance(world_overview, WorldOverview)
         self.assertEqual(WorldOverview.get_url(), ListedWorld.get_list_url())
+        self.assertEqual(WorldOverview.get_url_tibiadata(), ListedWorld.get_list_url_tibiadata())
         self.assertGreater(sum(w.online_count for w in world_overview.worlds), 0)
         self.assertIsInstance(world_overview.worlds[0], ListedWorld)
         self.assertIsInstance(world_overview.worlds[0].pvp_type, PvpType)