PUBLIC FORUMS/SUPPORT FORUM

Topic Title: Progress Update 2020-05-09 (Simple Topic)

Topic starter: Iiridayn

Topic started: 04:33:14 10th May 2020

Posts: 18 Last post: 19:00:59 27th May 2020 by ReaperOfSouls

Previous 1 2  Next

Iiridayn Posted: 04:33:14 10th May 2020

Posts: 1643

Topics: 98

Location: United States

Gender: Male



Spent about 20 hours this week on the code. Statistics section has been simplified and consolidated - so if I need to fix anything in a report, it'll be much easier.

For translation strings, I've begun introducing a wrapper method instead of accessing the arrays directly - this will make it easier to have a fallback language, or to change the translation system. Mozilla Fluent looks quite nice, but not mature enough to justify the time to make a PHP port.

As part of the statistics section refactor, I've created a template system which allows wrapping content with markup. As an example of why that matters - the HTML for the title and header block for every single page is duplicated onto every single page. With that change now in place, the code for some of the sections - notably renaming ships, planets, and clans - looks much closer to the actual complexity of the page. Yes, those are simple pages... that's kinda the point. The final step for simple forms like those 3 is to clean up and simplify the validation; at that point I'll be able to knock them out or fix them up pretty easily.

I've continued extracting queries into their own classes out of the views, and I got the autoloader working this week, so I can stop "require"ing them everywhere I use them. I used the same autoloader to make some grouping classes for helpful output functions - one, once applied generally, will make it easier to change how player names are displayed, and to put the star for donators in various places with a single boolean (instead of copy-pasting a ternary into every single place the username is displayed).

Yes - SL was written largely using a copy-pasta style. I don't blame Zygi (much) - he had far fewer professional years under his belt when he started this than I do now, and - he made something awesome :). Still, SL has always had some pretty significant code debt, which has made maintenance very challenging (at least on the motivational front) - lots of cloning the same fix into 30 different files, and it's easy to miss one or two, etc.

Anyway - some progress.

Ah - also got emails sending again, switched mailer services to sendgrid since the other one we were using cancelled our account a while back. So - we might be seeing new accounts again, or people able to close their accounts/reset their passwords without emailing me.

Anyway, might not be terribly active cleaning up code - it's a fairly dull and tedious process, but hugely significant for ability to clean up various small issues and inconsistencies in the site (ie, donation stars and flags are more consistent in the statistics).

Let me know if you find anything new I broke in the process - I've tested fairly thoroughly, but that just means any bugs you find will be more likely to interrupt a non-typical process.




__________________________
SkyLords Head Programmer

Spelled: I I R I (not irii, irri, or iri).

Force of nature.

Iiridayn Posted: 04:39:49 10th May 2020

Posts: 1643

Topics: 98

Location: United States

Gender: Male



Found a bug already. I'd not tested the default landing page of the statistics link. Tested it real quick to see what y'all would see when you clicked it - was an error... Fixed :D.

On the note of looking at statistics, how would y'all feel about changing Ships By Experience to sort youngest ships at the top? Currently there's no explicit sort, it just kinda happens to show older ships first. I recognizes that changes the information meta, so I figure I should request feedback before changing things - at least as a warning.

(I already know some of the strings are out of date - ie, says monthly but shows all time, etc. Those fixes will require a better translation system since I'm not fluent in Lithuanian, and I want to make sure to keep Skylords exactly as usable in Lithuanian as English. Did you know that the same strings are translated independently dozens of times in the Statistics section? Ie, every single "Player Name" header is a separately translated string. Still lots of work to clean up, but that'll be a later pass focused on site languages.).




__________________________
SkyLords Head Programmer

Spelled: I I R I (not irii, irri, or iri).

Force of nature.

shaphan Posted: 07:09:05 10th May 2020

Posts: 537

Topics: 54

Location: Azerbaijan Republic

Gender: Male



vote for ships by experience starting with the youngest ships. if you are planning a hw attack and you don't want people to see how many ships you have trained you will build the ships in advance, wait for other ships to get trained up, then train older ships. it adds another game mechanic in planning.




__________________________
21:14:15 | Arcanix has been defeated by shaphan.


Zerohours Posted: 11:15:01 10th May 2020

Posts: 2443

Topics: 287

Location: Canada

Gender: Male



Awesome man!




__________________________
I am here to help in anyway I can! Let's have fun!

Zerohours Posted: 11:45:18 10th May 2020

Posts: 2443

Topics: 287

Location: Canada

Gender: Male



How hard would it be to code a stat:
Total defense in game?




__________________________
I am here to help in anyway I can! Let's have fun!

Iiridayn Posted: 02:05:22 11th May 2020

Posts: 1643

Topics: 98

Location: United States

Gender: Male



@Zero: Hmm. Running the defense calculations in the SQL query would be a bit of bother - and it would have to run those for every planet/player on every report load (aside from the cache).

It would be one of the heaviest queries on the server, and would expose T/E production, so I'm not a fan of the idea. Not impossible, but not something I'm interested in implementing.

Interesting idea though - I like that you're thinking of novel and interesting statistics. Might revisit once everything is cleaned up and it'd be easier to make defense a cached value or something.




__________________________
SkyLords Head Programmer

Spelled: I I R I (not irii, irri, or iri).

Force of nature.

Zerohours Posted: 08:25:32 11th May 2020

Posts: 2443

Topics: 287

Location: Canada

Gender: Male



Fair enough. Something like this would only be interesting to me if your answer was: I can do that in a few minutes.
Not worth more of your time than that.
Gld to see you working on Skylords again. I loaded it up the other day and my wife even commented about seeing Skylords!




__________________________
I am here to help in anyway I can! Let's have fun!

Vicandius Posted: 12:48:08 11th May 2020

Posts: 67

Topics: 18

Location: Albania



I think ships by experience was more of a stat when ships could get to 2500, now it is fairly useless, just going to show a bunch of 300s regardless of age...

now quantity of ships would be an interesting statistic.... doesn't tell what type of ship, someone might have thousands of probes, but think would be interesting. Though might fall into the defense type calculation, if have to have it sum all the different types if it can't just calculate a lump sum easily.


Vicandius Posted: 12:49:56 11th May 2020

Posts: 67

Topics: 18

Location: Albania



Also, the public information section of profile isn't working properly, use to go to just a white page when tried to change something, now going to one with main menu on it, but blank otherwise, haven't tried changing media yet


Iiridayn Posted: 20:11:03 11th May 2020

Posts: 1643

Topics: 98

Location: United States

Gender: Male



Yeah, noticed the error from you hitting it, and been sidetracked all day as a result :P. Still haven't fixed it yet, keep getting sidetracked into other parts of the code.

Number of ships I can do. We have anybody who can translate into Lithuanian?




__________________________
SkyLords Head Programmer

Spelled: I I R I (not irii, irri, or iri).

Force of nature.

Iiridayn Posted: 22:17:06 11th May 2020

Posts: 1643

Topics: 98

Location: United States

Gender: Male



Fixed it finally. It was annoyed about gender not being set - it always failed if gender was ever unset, also making it impossible to clear. There was code specifically allowing the dropdown to be unset, but the generated SQL query was incorrect; this has been a longstanding bug since... I think since I was a player :P. Yay - fixed. :D.




__________________________
SkyLords Head Programmer

Spelled: I I R I (not irii, irri, or iri).

Force of nature.

Previous 1 2  Next

PUBLIC FORUMS
TICKETS
LANGUAGE FORUMS
SKYLORDS CHAT