Ymir - Ronchiporc
I’m back after a month of vacation 🙂
This update brings a bunch of miscellaneous exploit fixes and small rebalances.

One significant change is that from now on, below -200 of state power, players will directly lose armies and territories as their state collapse, effectively triggering a game over unless the situation is fixed quickly.

Most other fixes are here to counter exploits that have been rampaging through the servers.

Now another issue that most games have is that they reached their “end” but have yet to be won officially.
Therefore they keep going on while players leave, and its creating a rather anti-climatic end.
For this i’ll be reworking the score and endgame until i can get these games to effectively end. This will also allow me to finally restart new fresh games on the official servers.
As a first step in this direction i’ve made a change to the PAR score calculation, which will result in more Victory Points for the leading nation getting them closer to effective victory.

Bugfixes update
v0.1.4.x
– fixed armies not paying AP for their action when retreating
– fixed exploit when converting militias into armies
– added more infos in persistent games lobby
– fixed cultural integration (dismantling) not reset for vassals of a player joining a nation by treaty/vassalization
– fixed UI problem with owning character of occupied territories on the worldmap
– rebalanced “PAR” score calculation: now based on an average that ignores the score component of score gained from subordinates -> will increase VP of dominant nations.
– fixed issue with battles display for long battles causing them to visually restart/reset.
– added “government collapse” events when below -200 state power, causing direct loss of territories and formations.
– empty cities (0 pop) will decay even if they belong to active characters.
– fixed problems with hardware survey failing from unusual characters in windows username.
– fixed ui problem with the tutorial
– adding new character missions
– distance penalty for cities does now maxed at -95%
– horses and camels +1 nb attack
– adding ideas trigger bonus in solo mode to ensure all techs ideas can be unlocked
– school intelligence bonus lowered from 15 to 10.
– fixed problem with networking socket ids
– fixed problem with server auto-close
– rebel cities not elligible for decay for about a week after rebellion , in persistent speed
– fixed spawn bonus too strong in newly created games when it should remain at 0 in the first days;
– reorganized and debugged issues with tutorial
– converting militias depletes all AP
– fixed national armies controllable even if you’re at war with their owner
– fixed gaia cities giving movement bonus
– server offtime no longer counts towards character inactivity timers
– fixed too many animals on worlmaps
Ymir - Ronchiporc
This is a significant update.
It will start by being available only on the Tester branch for a few days until its ready to be applied on the default branch.
Also note that the only official server running on the Tester branch is the Official Test Server 1. You’re welcome to join it to try the new update before its applied to the public branch!


I hope this update will be a good step towards convincing more players that joining older servers can be a viable option rather than seeking primitive tribes exclusively. The lifespan of players is lower than the one of the servers, thus its critical to get a successful system of late-game starts to prevent the servers decay around bronze age.

Improved advanced starts
]This update focuses mainly on improving the late-game starting conditions, with many new features. The goal is to allow for “stale” servers to regenerate by convincing more players to join ongoing games and by cleaning up useless abandoned settlements.

* New players now receive the best available starts matching their selection rather than a fully random one. To achieve this, each start is now assigned an internal value assessing the quality of a region based on its buildings, population, techs, and natural resources. The best available value is also displayed when creating a new character, next to the number of available starts.

* Servers now provide a global start bonus based on the server’s age and lack of active characters. The older and more depopulated, the higher the bonus for new players joining. This bonus is also displayed on the persistent server list. The goal of this bonus is to incentivize the repopulation of abandonned servers. This bonus affects starting resources, money, techs and population.

* Starting techs are improved and inherited from the average of nearby characters

* Starting resources are improved to prevent being immediately blocked and being unable to do anything.

* Government policies are now automatically reset to prevent confusion, and matching the development level of the inherited territory.
Starting players now receive automatic knowledge-storage buildings (libraries) to match their current knowledges so that they dont start in negative capacity unable to research new techs. A new ‘stone age’ storage was also added, employing oldpigs, and providing a basic way to expand knowledge capacity even before writting, to prevent tech deadlocks.

* Starting players also receive automatic warehouses -when possible- to avoid stocks overflowing from the new resources. Excess resources from the inherited territory are also auto-cleared (ex an inactive territory with 2000 of mud and little of everything else ).

* Diplomacy is automatically cleaned up for new players: all treaties and wars with inactives characters are cleared, to reduce confusion.

* Regions and nation decay was added: besides new players starting on the best available starts, the bottom ones now also decay and get auto-abandoned thus clearing the map of all the useless and worthless abandoned settlements. In the same way, abandoned Nations can now decay if its leader remains inactive for too long: if that happens, every other inactive character in the nation will auto-leave, causing the nation to explode. This clears the score board and also ensures that each nation character becomes in turn eligible as a starting point for new players, completing the regeneration of the server.

Networking update
As mentioned in a previous post, this update also contains a significant networking update to improve connection stability and circumvent issues with the engine’s networking that i unfortunately have no control over.
This update should improve problems of infinite loading times and random “ping timeouts”, especially for players encountering those unusually often of for big players unable to keep playing because they couldn’t load their character or cities anymore.
However I can’t guarantee it to fully fix it as the root of the problem is still there and cannot be directly fixed.
Because its a significant reorganization it might also generate new bugs in the short term, but overall it should greatly improve the quality of life for people having constant disconnections in online multiplayer.
This update should also fix or reduce the problem of the game losing connection when minimized or out of focus (unconfirmed).

Hardware survey and Linux
I’ve replaced the infamous hardware survey by a different better method that should be less likely to trigger AV programs, and less likely to be blocked from executing and to therefore cause the “hardware survey failed” error when starting the game.
This also restores the game’s Linux compatibility (through wine), as these scripts were not compatible with it.


The new primitive ‘knowledge storage’ building, to avoid tech deadlocks.


The revitalization update
v0.1.3.x
– added start bonus factor affecting all advanced starts and proportional to the server’s runtime and need for new players.
– auto-setting policies when new character spawns in an advanced start
– added auto spawning of libraries for new characters to match knowledge capacity with current inherited knowledges
– improved procedurally given knowledges at aspawn to better match the inherited city and game stage
– added auto cease-fire and ending treaties with all other inactive characters , when starting as a successor.
– best spawn value matching settings is now displayed in the create character menu, and best type is selected by default
– fixed problem of enemy armies on empty cities being incorrectly considered as the attacker when engaged, causing battle AI issues
– added Nation decay, triggered when the nation leader remains inactive for 1.5x the max inactivity time.
– fixed ruins not being visible in region view
– added auto-abandonning of the least valuable cities of inactives and rebels, based on the average value of all other existing cities.
– fixed rebel cities remaining in “occupied” status when owned by rebels.
– fixed problem of state ownership of resources put for sale in markets.
– reorganized the data of the building AI prototype, to prepare for future improvements.
– improved anti-cheating (still passive).
– improved hardware survey at startup and restored Linux compatibility (through wine).
– added new primitive knowledge storage building: elder’s circle.
– added capacity for buildings to employ oldpigs or sows.
– improved network stability when under strain to prevent loading failures and ping timeouts
– data transfers from client to server now operate on a different socket that can auto-reconnect when failing.
– potentially fixed minimized game causing connection losses.
– improved networking debug diagnostic tools
– improved connection process
– improved ping loop process
– improved data instances transfer
– fixed crash from placing roads on bottom left corner tile
– clearing all events from previous player when spawning as a succession.
– added a ‘value’ measurement of regions and spawns so that new players start in the best available ones in priority, to improve the quality of starting late-game.
– colonies belonging to an inactive character ar 50% less valuable for spawn
– spawns in multi-player nations are more valuables
– succession starts of subjugated characters are much less valuable
– succession starts of characters with an inactive superior are less valuable
– natural resources increase the value of a spawn (except for primitve tribes)
Ymir - Ronchiporc
Hi, fellow Porcos!

I though i'd share a bit about the next update and what i've been working as it could take some time before its ready...

Since the release there's been many reports of unstable connection for some users. I've been investigating this on and off since then, and especially now for more than a week non-stop.
After extensive testing it turns out the networking of the engine i'm using is... broken. It is buggy and as soon as there is a bit of strain or too much traffic, it simply breaks.

This game implies a lot of transfers as there is a lot of data such as building lists, resources, techs, worldmap etc, especially during the loading times.
So it turned out that was the main cause of why some users experience connection timeouts or infinite loading times.
This is very likely to trigger as soon as the connection between client and server is slightly unstable ( distant server, short lags, bad wifi, packet drops across the network etc... ).
Now these should not normally cause any issue, but something is broken somewhere in the networking engine and its causing a failure that i cannot fix myself: long story short the engine i'm using is pretty closed and i have no direct control over it. There is also no hope for any fix from its devs either.

Therefore for the past week i've been entirely focused on trying and experimenting to see if I could find any way to workaround whatever's broken in that networking engine, but i'm working blind here and its making this a very time consuming task. I have found ways to improve things, and i'm still working on it, and i hope the improvements to be significant in connection stability for players although it might never fully fix the issue, as the root of the problem is beyond my control.

This is just yet another issue i'm having with this obsolete engine, which has now been a constant source of issues and limitations.
That is why I've started looking and learning the basics of Unity, an engine much more adapted to the needs of this game, but this is a very long term goal and would be a HUGE task. I am merely learning the basics of it right now, on whatever free time i manage to muster which is not much! So its more of a wish than an actual plan, at this stage.


The second main focus of the next update will be a global update of how advanced starts work.
Many people are asking "when will there be a new server" while many servers have plenty of available spawns. The problem being that there are currently too many issues with it and players are not convinced to use them.
Rather than restarting servers who would always be doomed to end by the same decay, my objective is to improve late game starts so that a stale server may be able to regenerate itself with new players.
For that, many improvements and fixes are needed on how late game starts work, and the next update will bring many improvements about this so that hopefully new life can be brought to older servers, as the cycle of players and empires is simply a natural process that can't be avoided: if players can't be convinced of the validity of late starts, every server will always go stale after the majority of first wave of players leave.

So that's it, just wanted to give some news so that my apparent silence isn't interpreted as not being actively working on the project!
Ymir - Ronchiporc


This update is mostly visual and adding many new building animations -and sounds- to add more life to cities and buildings!
It fixes also issues related to windwheel and waterwheel annexes.




The animated update
v0.1.2.x
– added many new building animations
– added new building sounds
– fixed display issues with windwheels and waterwheels
– fixed annex number limit not working (ex windwheels)
– docks required depth reduced to 2 for all docks
– fixed UI issues with autocomplete (ex resource names in trading tab)
– fixed claim action being available to adjascent to outposts
– fixed problem allowing walls to be built in water
– state resources distributed to population no longer generate income if unsold -> now considering sold amount and not distrib amount.
– fixed UI issue in servers lobby with server side pannel beeing beneath server list.
– Fixed a battlecode error
Ymir - Ronchiporc
Subjugation improvements
This update mainly improves and re-balances things related to subjugation in multiplayer, fixing exploits and abusive behaviors.

Subjugated characters now get assigned a special ranked that cannot be modified by the nation owners, with fixed tax rate. The taxation from the subjugation treaty has also been removed.
This insures a fair taxation of the subjugated player, as before in most cases subjugated players where assigned a rank with max taxes additionally to the subjugation treaty, resulting in 45% tax rate from which made it impossible to keep playing.

Subjugates characters also can’t be placed beneath one another anymore, preventing nation owners to exploit the rank system.
Indeed, when vassalizing a group of players it is no longer possible to circumvent the state power maintenance costs by putting all the vassals under a single ‘buffer’ one -which also meant condemning him to death as well.

For the same reason, it is also no longer possible to use “inactives” as buffers to avoid paying the nation’s state power maintenance costs. Inacitves are now totally ignored and all their own subordinates will act as direct subordinates to the character above them.

“join nation” treaties are also automatically ended when a character is no longer part of the nation, and all national armies are reset when subjugated – as this allowed for exploits too.

Anti-cheating
Besides these, this update focuses on laying foundations against exploiters: the arrival of piracy in the first week following release was quickly followed by multi-account abuses in the second, and now more recently by the arrival of actual cheaters.
Sadly most of my work since release has been regarding these issues.
So following the anti-piracy patch insuring legit servers remain free of pirated versions, this patch brings the foundations of anti-multiaccount and anti-cheating measures.
Once the system becomes active in next updates, servers will ultimately auto-ban players flagged for cheating.
Also noteworthy that this new version might get falsely flagged by some antiviruses when launching it.

New “previous_version” branch
A new branch was created called “previous_version”, allowing to keep playing on the public version previous to the current one, for people who need to for whatever reason, or in the case when a new patch causes too many issues.



The improved subjugation update
v0.1.1.x
– national armies are now reset to normal armies when being subjugated
– subjugated characters cannot be vassals of another subjugated character in a nation
– treaties with a “join nation” term will auto-end legally if the character is no longer in the nation
– subjugated characters get an automatic preset rank that is ‘locked’ and cannot be modified by nation members.
– removed taxation from the automatic subjugation treaty
– when a superior is inactive, state power maintenance cost is relayed upon the superior’s superior as if the character was a direct subordinate
– fixed subjugated characters getting breaking clauses from previous treaties being broken because of the subjugation
– fixed server game names allowing for special characters that would cause issues when saving with the OS file system
– fixed battle problem when multiple characters hunt at the same time
– organized anti-cheat strategy and layed foundation of an auto-ban system
– implemented multiaccount counter-measures
– disabled equipment loot from spawned rebel (exploit)
– fixed problem at server restart of ” failed to load save”
– fixed problem of infinite worldmap loading time
– added UI button in options to hide account infos ( IPs, user ID )
– minor improvement to connection stability
– fixed battlecode error causing server crash
– fixed issue with claims
– fixed UI issue in the worldmap action wheel where available actions would not update correctly
Ymir - Ronchiporc
Another patch was applied today, adding new piracy countermeasures that i've been working on this past week.
This is mostly to prevent illegitimate copies of the game to access legitimate servers (as it only took a few days before it started spreading fast).
So... thank pirates for even slower development, as i doubt this will be the end of it!

This should also reduce the usage of multi-accounts, as they're most likely relying on the use of pirated versions as well.
I might start researching on how to limit this in the near future as it threatens the game balance, if it starts spreading on official games as well.

This update also adds bug fixes on the server side, still in an effort to increase server stability.

Most of the next patches will probably keep focusing on bug fixing and server stability/management and networking, so don't expect much new exciting features for now!

Patch
v0.1.0.31
- added piracy countermeasures to protect legitimate servers
- increased production of directly exploited metal ore tiles
- increased efficiency of furniture makers, and required workforce to produce furniture -> increase wealth from furniture makers.
- set realtime games character limit to 1.
- fixed invalid preview of generated resistance when claiming an occupied territory
- changed -1 resistance decay to a proportionnal to population decay ( 1 per 100 resistance )
- fixed bug of units deploying on the edge of the map



Ymir - Ronchiporc
It’s been a rough week. Never had so many urgent things to deal with at the same time…
For the next weeks, i’ll probably be focusing mostly on server management, stability, and bug fixing, so don’t expect new exciting features for a while.

Server and client bug fixes
Here is finally the first patch of fixes following the release, with mostly server related things.
Notably it fixes the 2 infamous issues of the primitive tribe claims, and the carriers engaging enemies.
Barbarians activity in Solo and Realtime was also reduced.
Server can now auto restart on error, which should reduce downtimes greatly as well and increase the quality of life.
Next step is to find a way to do an emergency save when there’s an error, to avoid the weird ‘rollbacks’ that happen on error.

More servers
Besides that, I’ve been started renting a professional dedicated server. All official servers will be moved to it shortly, and a new ones will be started (offical 5 or official 1 ).
The previous official 1 is renamed Official test server, and will remain on the Tester branch, running on my own home server.
Official servers will now be located near Dunkirk, in the north of France, which is also near the Atlantic internet cables if that helps! 😀
I should be able to run eventually up to 8+ on that dedicated server, with much better performances than with my laggy home server. I hope it will reduce ping timeouts and connections issues greatly.

Worldwide lobbies to see all servers
It was also discovered that steam lobbies were filtered by region by default, which is now fixed and will allow users to see all servers worldwide , especially the official ones for people outside europe.
That will reduce the issue of server shortage especially for players in the Americas.

Piracy
And lastly, it didn’t take long for piracy of the game to spread. I thought i’d have more time 🙂
That can never be avoided, however the fact that pirated copies can access legit servers is a big issue, and this one can be fixed.
I’ve been working on it for the past 2 days and a fix for that is coming – although not on this patch yet .
I will increase measures to counter piracy with additional checks.
Eventually every player will probably need to authenticate its game at least once in online mode. Offline mode should of course still be possible.

Patch!
v0.1.0.19
– errors on client now invisible, and dumped into an error folder in the “cache\logs\client\error” folder.
– errors on server now silent and combined with an immediate auto-restart, improving uptime ( also dumped in “cache\logs\game\error” )
– server list will now show all worldwide servers and not only the regional ones
– lowered realtime respawn timer to a base of 10 min instead of 1hour
– fixed exploit allowing to claim tiles of primitive tribes
– added popup warning when attempting to move primitive tribe when starting
– added configurable autosave frequency in server ini files
– reduced barbarian activity in solo and realtime, less frequent and slower difficulty increase
– fixed issue of own character showing up in diplomacy menu
– fixed pathfinding issue with buildings, in battles
– fixed battlecode error on server
– primitive tribe rebellions: fixed primitives deploying inside defensive zones
– “stand ground” units will switch en “engage” if fired upon by range units in same defensive layer
– fixed infamous bug of carriers being in “engage” mode in battles ( and hunts )
– fixed speed settings icons not combatible with CJK font
– fixed some localisation issues
– fixed multiple server side crashes
– fixed crash on worldmap when worldmap quality at minimum
Ymir - Ronchiporc
Last night Steam finally approved my build - the same build they denied yesterday - and i'm finally allowed to release it!

So here it is: Ymir is finally available on Steam, one day late, but better late than never, and at least the week-end is not over!

About servers: I predict the next days will be quite eventful with the influx of new players. Please be patient! It will take some time probably for the community to get more servers going, and depending on the success of the game i'll look to rent proper servers to host more Official servers and accomodate more people.

One of my top priorities is now to work on my own master server to list open ymir servers, replacing the steam lobbies system and to allow for proper steam independent dedicated servers (which is somehow not currently possible to do on the engine i'm using ), which will help having more servers.
Ymir - Ronchiporc
Yesterday Steam denied my current build for release, and today i'm therefore unable to release my game as planned, until it gets approved.

The reason given for this denial was that according to them "the game does not appear to currently support online gameplay ", yep, that's right.
Despite the fact that after more than a year in closed testing hundreds of players participated in games (mostly online), in multiplayer, and that as i received this reply the current test server i'm running myself had players online...

Now before i go on I must say that this also happened because i made a really bad mistake. I had so many things to deal with the upcoming release, that i didnt realize in time that i had to send a build for manual review and approval before being allowed to release. I wrongly assumed that releasing was automated (like pretty much everything else) and a formality that wouldnt take long like every other steps i had to pass before, especially as everything was ready. But i was wrong. This was the ONE of the few things that had to be manually approved by actual people.
When i realized it about 3 days ago, it said that it usually took 2 to 3 days to approve (but could take more if there was issues), so I hoped for the best and submitted it only to receive a negative answer yesterday night.
Of this i am totally responsible, I should have realized this before and started this earlier. Considering things now... apparently weeks before the release date!
This is my first game release, so i'm learning here and making mistakes, espcecially as being alone to manage so many different things and where an error in a single one can make everything else fail - as it now did. For this i apologize to everyone.

But i have to say you'd be surprise how even as a dev, we have pretty much zero human contact with anyone from Valve either. Its more of a self running website where all you're left with is some documentation and a forum of other devs trying to figure out things themselves too and sharing experiences. You can't get any help, and the whole steamworks interface is very confusing, sometimes even faulty/buggy, which doesnt help to make things intuitive.
Is there still humans working at Valve ? nobody knows. I personnally suspect Gabe merged with the mainframe "lawnmower man" style years ago, and left us all to despair with this platform.
More seriously, the ONLY way to contact anyone human at Valve is to send... a support ticket. To which you'll eventually get an anonymous response of about 12 words -at best-, after a day or more. When i realized my mistake i did that. Luckily i got a one line answer - as is tradition - saying they'd speed up the process, but only to receive this absurd denial an hour later.
And the denial explanation was the most cryptic part: " we found out that the game is using the public IP instead of the IP4 address which the port is open for. This happen with hosting only a server form the localfolder. "
If anyone understand the meaning of this sentence, please give me a call.
What is this rambling about the 'public IP' when for an online multiplayer game, that's what it should be using to allow others to connect... online, rather than using a local IP only reachable via LAN ?
What is this thing about 'instead of IP4 address' when all IPs ARE in IPv4 format ?
ANd what the hell does " hosting only a server from the localfolder " even means in this context ?
Nobody knows.
Apparently not only did these testers failed where hundreds of testers have never had trouble doing so during over a year of tests (which is to simply join an existing server), but they ignored the visible public server showing online players at that very time, and concluded that surely that must have been an illusion and that online multiplayer did not exist in this game, while giving the most absurd explanation that made zero technical sense to me.

And as it was an anonymous message with no way to reply directly, that means being back at square one, having to resubmit, and wait again 3 to 5 days. I have no way to ask these specific guys what the hell did they mean or tried to do.
Worst of this is that i don't even know what to change , considering their reply made no sense, so i just ended up resubmitring the exact same thing... with one minor change: i removed the "online multiplayer" tag as it's apparently what triggers them, adding insult to injury for a game that is mainly... online... and multiplayer.

So here i am now, on release day, unable to release my game after about 8 years of work.
Big AAA city builders games are about to be released in a week or so. I had the perfect release day planned, and now it's ruined.

But even though it's partly my fault, i can't keep but feeling bitter at the lack of understanding from Valve's side. On one hand because they didnt seem to care that denying me this for some absurd reason ruined such an important day for me, and on the other because i can't help but feel infuriated that somehow my game was under greater scrutiny and had to meet high quality standards( resulting in a denial), when in the meantime the cheapest porn games and asset flippers seem to be released on a daily basis without the slightest oversight on steam. Like...really Steam? MY game gets its release denied but those are fine?

So what now ? Well i'll release as soon as i can. I don't know when that will be now. I can't do anything else right now but wait...

Best case scenario it sill somehow happens today.
If not its probably over until at least Monday as this will be the week end.
Ymir - Ronchiporc
This is the last 'update' before the release!
Actually it’s not really an update but more of a summary of all the successive hot-fixes that have been applied since the last patch while preparing for release.
It doesn’t add any new feature in particular, but many fixes and re-balancing of various aspects of the game.



The pre-release update
v0.1.0.x
– trade routes pricing is now fully dynamic and can go down automatically ( and not only up as before ). Minimum price is the production cost of the exporting territory.
– added more UI price details to the Resource menu
– fixed issues with market study not taking into account multiple resources competing for the same need (leads to global decrease of food prices).
– added side pannel with Resistance details in the Loyalty tab of the territory menu.
– lowered resistance growth in occupied territories by 2.
– added UI honor warning when converting an occupied territory
– removed resistance penalties when transfering ownership of occupied territories
– fixed display bug of units in high altitude ( hills or mountains )
– increased distance penalty on required cargo amounts for trade routes
– fixed purchased resources on markets not being state owned
– fixed bug with world pathfinding, rights of passages, and national armies
– auto shut down of all trade routes after an invasion
– all resources are now state owned after an invasion
– added tutorial toggle option in the main menu
– added basic camera key bindings
– fixed issue of doubled AP costs in battles
– fixed case of infinite battle
– placing some infrastructures now require profesionnal builders
– added missing income taxation to sales profits of producers whn selling resources in the market
– reduced palissade cost to 1 wood.
– reduced fuel cost to refine gold.
– reduced state power cost of subvention and state workers policies
– fixed issues with demand/ideally needed/sold in the resource distribution
– resources pricing: profit marghin is now proportionnal to production costs (+20% of production cost) instead of being always +1.
– fixed UI issues with nation names
– rebalanced resistance
– lowered resistance by 50% when transfering culturally integrated cities within a nation (cities that have been in the nation for a long time)
– adding social buttons in the main menu (porcopedia, discord)
– lowered honor penalty of losing to partisans by 60%, but still capped at 50 honor.
– improved decision making of the population to decide when they rise to help defend their territory.
– changed windowed mode to borderless to circumvent an engine issue that had no solution (glitched display espcially visible with fonts)
– fixed issue causing freezing at the end of a battle
– new mission to assist with barter transition now converts all resources to state owned as a reward.
– fixed merchant building not unlocking when adopting barter until the game was restarted.
– added auto creation of market stands when adopting barter
– fixed bug with price arbitrage and world area prices
– reduced UI flickering when opening or refreshing some tabs.
...

Search news
Archive
2019
Jul   Jun   May   Apr   Mar   Feb  
Jan  
Archives By Year
2019   2018   2017   2016   2015  
2014   2013   2012   2011   2010  
2009   2008   2007   2006   2005  
2004   2003   2002