TOURNAMENT -- SHINE A LIGHT ON NF. |
Post Reply | Page <1 1314151617 19> |
Author | |
Digioso
Forum Warrior Joined: 09 Feb 2015 Location: Germany Status: Offline Points: 312 |
Post Options
Thanks(1)
|
Most of the bugs have been described here in this thread I think.
They mostly had to do with things that I haven't thought about or some logical problems in the code. EG that reports have to be read chronologically and not by going through them player-per-player. Initial thought was: Download a api key for player A, then download his reports, then continue with player B. Now: Download all api keys, put all report IDs into a hash and run through that hash by sorting it chronologically. Apart from these we had some other technical difficulties: - The website performance. Building your database using 3rd normal form to avoid data redundancy is nice. Unless you have data in different tables and need to do lots of SQL joins to access it. We have three tables with report data. One for general report data like combat occurance, winner of the battle, coordinates and so on. One for armies with data like army name, owner of the army, alliance of the player. And then a third one for divisions with division names, commander names & health, troops and troop losses. So to get all data we had to do a join over three tables which took A LOT of time. The fix was to add relevant data (combat participants with alliance, troop numbers and losses) to the general report table. Problem solved. :) - Unforseen issues related to the webhoster (cronjobs that can only run for max. 20min and then are aborted automatically by the webhoster), Suddenly all the Perl scripts didn't work anymore because the Perl installation was missing library files. And then suddently they were working again but the webhoster of course didn't do anything. And the problem right now with accessing the Illyriad-Servers. Koda is running the database updater on his own PC because his server suddently could not do that anymore. Most likely his webhoster is blocking this. Also the webhoster closes database connections after quite a short time when there was no activity (EG because the script was going through reports unrelated to the tournament). So had to make sure that connections are only opened when there is something to do. My own webhoster has a highter timeout here. - Timezones. Sounds trivial, but isn't. The Illy servers are in a different time zone so you have to make sure that you get your timezones right. In Perl there are several ways to do this. One is very easy and that one is working on Kodas Server, my server and my PC. But not on Kodas PC. Both Koda and me use the same operating system on our PC so that's quite weird... Fix for Kodas PC: He changed his date/time settings to match the Illy servers. - One thing we didn't know about the combat reports: The defenders report shows that the attacker used occupation as attack method but the defenders' report does not state the occupation time. You can only get this from the report of the attacker. So we had to make sure that the attackers' report is read as well to get that piece of information. - Aborting downloads of reports/API keys. This was quite a hassle. I use the WWW::Mechanize Perl Modul to download all the stuff. Per default the module does a hard abort (die) and exits the whole script whenever it encounters an error. There are some options to avoid that which we are now using. But still we had to deal with corrupted downloaded files. So right now the script retries downloads whenever they fail. Sounds logical of course but in the initial versions I only thought about the best case. Meaning: No errors while downloading. - One thing you might want to consider: Ctime or Unix Time is very nice for everything that has to do with times. You can easily sort though it, subtract and add easily and do all sorts of calculations. Know that a day has 86400 seconds! I'm always using Ctime because it makes things very easy. https://en.wikipedia.org/wiki/Unix_time (Maybe not so) funny fact on this: Some of you might remember the big year 2000 problem which all IT companies thought to be the end of the world - and then almost nothing happened. Unix time is a 32bit variable that will 'full' in 2038. This time it may really be the end of the world. But rejoice, we have ~21,5 years left until we'll all die. Right now there is no solution that fixes it everywhere. :) https://en.wikipedia.org/wiki/Year_2038_problem Note for me: Fix my website before 2038. :) Oh, and if we survive 2038 - we'll all die in the year 10000 for sure because then we'll have the Y10k bug. But I don't care because I most likely will not be alive anymore at that time. Unless I find some thing that grants me eternal live. Note: Need to find more sacrifices for my queen so that She may grand upon me eternal live. Edited by Digioso - 12 Jun 2016 at 16:35 |
|
Rill
Postmaster General Player Council - Geographer Joined: 17 Jun 2011 Location: California Status: Offline Points: 7078 |
Post Options
Thanks(0)
|
Thanks for sharing all this info, koda and Digi, not only are you doing a great service by creating this tournament, but also supporting future players in doing the same. You guys deserve a medal. Or ... 4 medals. Or something!
|
|
Lagavulin
Wordsmith Joined: 31 Dec 2012 Location: United States Status: Offline Points: 208 |
Post Options
Thanks(0)
|
I add my thanks to Rills. With all of her comment +1 by me.
This has been super fun and I have learned, and re learned, things about this game.
|
|
Tensmoor
Postmaster General Joined: 07 Apr 2015 Location: Scotland Status: Offline Points: 1830 |
Post Options
Thanks(0)
|
I'd like to echo both Rill & Lagavulin. I've learned a great deal during this tourney, not just about the game but also about IT. I've seen the enjoyment those taking part have had so far, the unstinting hard work put in by Kodabear and Digioso and most certainly not least, the raising of the awareness of NF.
|
|
Yitshak
Wordsmith Joined: 28 Apr 2016 Status: Offline Points: 179 |
Post Options
Thanks(0)
|
Ditto
|
|
kodabear
Postmaster General Player Council - Astronomer Joined: 18 Jun 2013 Location: Lucerna Status: Offline Points: 1515 |
Post Options
Thanks(0)
|
[15:21]<Kodabear> ***Tournament news*** PLEASE DO NOT reset your API key immediately after the Tournament ends as we are going to do one last complete database update to make sure we got all the combats I will post on the forum when its ok to reset the combat API key
|
|
kodabear
Postmaster General Player Council - Astronomer Joined: 18 Jun 2013 Location: Lucerna Status: Offline Points: 1515 |
Post Options
Thanks(0)
|
a few people have asked my why there was a large jump in Bandwidth.
May 2016 and Jun 2016 17 May 2016 to 23 May 2016 we had 3 table that were joined together to make up the information that is shown on the Tournament stats page and due to time out issue we limited how much can be shown on the main page. 24 May 2016 to part of 02 Jun 2016 we had fixed the issue where it would time out (see Digioso post above for more information). Since the time out issue was fixed we had the main Tournament stats page showing all the combats that have happen since the start. part of 02 Jun 2016 to now. the Tournament stats page was using more Bandwidth then i wanted. So i asked Digioso to limit how many combats could be seen on the front page but if you wanted to see every combat click here.
|
|
Count Rupert
Forum Warrior Joined: 01 Sep 2013 Location: Lost in Thought Status: Offline Points: 242 |
Post Options
Thanks(1)
|
Well, the tournament's over and I know I speak for many when I say we've had a great time. nCrow would like to thank our hosts KodaBear and Digiosi for the all the countless hours of work they've put in to make this tournament a reality and the success it has been. Awesome work!!! As a token of our appreciation, you'll find a little something in your medal cabinet.
|
|
zolvon
Wordsmith Joined: 05 May 2010 Location: NZ Status: Offline Points: 197 |
Post Options
Thanks(0)
|
A BIG thanks from those in Love and Freedom whom took part, it was a heap of fun and much was learnt about Illy and NF.
|
|
madmardigan
New Poster Joined: 02 Jun 2015 Location: USA Status: Offline Points: 2 |
Post Options
Thanks(0)
|
Aesir really enjoyed the contest. Thanks to Kodabear and anyone else who helped with the tourney.
MAdmardigan
|
|
Post Reply | Page <1 1314151617 19> |
Tweet
|
Forum Jump | Forum Permissions You cannot post new topics in this forum You cannot reply to topics in this forum You cannot delete your posts in this forum You cannot edit your posts in this forum You cannot create polls in this forum You cannot vote in polls in this forum |