Post new topic Post a reply  [ 14 posts ]  Go to page 1, 2  Next
Author Message
 Post subject: Ranking page
PostPosted: Sat Jan 09, 2016 8:14 am 
Offline
User avatar

Joined: Tue Sep 15, 2015 2:29 pm
Posts: 60
Just an idea :

Why don't make a prize list to honor those fighting ?

To highlight the fleets that are most fought since the beginning of the game or for one week.


Top
 Profile  
 

 Post subject: Re: Prize list...
PostPosted: Sat Jan 09, 2016 8:35 am 
Offline
Site Admin
User avatar

Joined: Wed Apr 08, 2015 5:56 pm
Posts: 783
Great idea too, and maybe this one is the most easy to do among recent ideas!
I love ideas that doesn't take too much time to code ^^

It could be a table with these columns:
- number of victories (the table will be ordered on this column)
- number of skirmishes or battles fought
- number of battles won
- number of battles fought
- number of skirmishes won
- number of skirmishes fought

Hum... should a skirmish has the same weight than a battle?
Or something 1 skirmish won = 1 point / 1 battle won = 2 points?

And where should this new page appear in the menu... maybe under "Galaxy"?


Top
 Profile  
 

 Post subject: Re: Prize list...
PostPosted: Sat Jan 09, 2016 8:50 am 
Offline
User avatar

Joined: Tue Jan 05, 2016 5:56 pm
Posts: 75
charlock wrote:
Hum... should a skirmish has the same weight than a battle?
Or something 1 skirmish won = 1 point / 1 battle won = 2 points?

And where should this new page appear in the menu... maybe under "Galaxy"?


I do think that the "skirmish=1 point, battle=2 points" makes more sense, and could contribute more fairly towards an overall player ranking system (which I assume is pretty much what this suggestion is calling for).


Top
 Profile  
 

 Post subject: Re: Prize list...
PostPosted: Sat Jan 09, 2016 8:53 am 
Offline
Site Admin
User avatar

Joined: Wed Apr 08, 2015 5:56 pm
Posts: 783
And how should this page be called?
"Hall of fame"?
"Ranking"?
or something more LOGH related? (not sure we should use "Heroes" for this, I think "Heroes" in LOGH means more than "just" winning battles)


Top
 Profile  
 

 Post subject: Re: Prize list...
PostPosted: Sat Jan 09, 2016 8:52 pm 
Offline
Site Admin
User avatar

Joined: Wed Apr 08, 2015 5:56 pm
Posts: 783
Here it is: http://chronicles.kosmosinsel.net/ranking.php
It's still time to change things, like the title for example if you have better ideas.
I will soon add the possibility to display this ranking by month, so it will be less discouraging for newcomers ^^'

Actually every character is displayed, maybe we should only display those who have at least 1 point?


Top
 Profile  
 

 Post subject: Re: Prize list...
PostPosted: Sun Jan 10, 2016 2:47 pm 
Offline
Site Admin
User avatar

Joined: Wed Apr 08, 2015 5:56 pm
Posts: 783
The "hall of fame" can now be displayed by month.
Who will be the ace admiral of the month? :)
http://chronicles.kosmosinsel.net/ranking.php?y=796&m=1

If your character doesn't appear in this ranking, it means that he hasn't fought any skirmish or battle which ended this month.


Top
 Profile  
 

 Post subject: Re: Prize list...
PostPosted: Mon Jan 18, 2016 11:54 am 
Offline
Site Admin
User avatar

Joined: Wed Apr 08, 2015 5:56 pm
Posts: 783
Rethinking about it, this ranking as it is today may not be fully relevant.

I think it has 2 major flaws:
- there's almost no way a newcomer can get a good monthly ranking
(to say the truth there's one way: shadow a big allied fleet and get victories at the same time)
- it encourages players (especially veterans with big fleets) to seek easy victories; where's the spirit of chivalry in this?

I have to think about it... but if you have got ideas, please tell :)


Top
 Profile  
 

 Post subject: Re: Prize list...
PostPosted: Fri Jan 29, 2016 9:30 pm 
Offline
Site Admin
User avatar

Joined: Wed Apr 08, 2015 5:56 pm
Posts: 783
I'm definitely not satisfied with this ranking page, Oyama has found another issue with it...
Since I don't know yet how to fix it in a satisfying way, I have deleted the links pointing to this page in the menu.
(however, I did not delete the page)

EDIT : copy/paste of Oyama's PM, for archive purpose:
Oyama on 2016/01/26 wrote:
Fredol a gagné 1 point au titre de l'escarmouche à El Facil alors que sa flotte a été entièrement détruite... C'est normal ?

Les planètes ne devraient pas être prise en compte dans la victoire d'une bataille, juste leur flotte. Sinon, c'est pas juste pour l'attaquant qui doit squatter plus de 48h pour avoir 1 point.


Top
 Profile  
 

 Post subject: Re: Ranking page
PostPosted: Wed May 18, 2016 8:55 am 
Offline
Site Admin
User avatar

Joined: Wed Apr 08, 2015 5:56 pm
Posts: 783
I worked out a new version of the ranking page, which I hope it corrects some of the flaws previously mentioned:
http://chronicles.kosmosinsel.net/ranking.php

The calculation of the points is now more complex, in order to promote chivalry spirit:
- on the old ranking page, when you won a skirmish in which your side fought at 1000 against 100, you gained 1 point (2 points for a battle)
- now, you will gain only 100/1000 = 0.1 point (0.2 for a battle)
- and with the same logic, if you win with less ships than the enemy, you will now gain more points than before.

And a few "bugs" are fixed:
- no points gained if your side won but all your fleets engaged have been destroyed
- no points gained if your side won but you ran away before the final cease fire

I'm sure there will be other improvements to make, but for now I'm worn out...
For whose who are a bit familiar with coding:
Spoiler!
I spent a all day on what's turned to be the most complex SQL SELECT request I've ever written...
first time I even felt the need to add comments in an SQL request ^^'
Code:
$sql = "SELECT *,
SUM(IF (is_battle = 1, 1, 0)) battles,
SUM(IF (is_battle = 1 AND winner = fleet_side AND (engaged_in IS NULL OR battle_id != engaged_in), 1, 0)) battle_victories,
SUM(IF (is_battle = 0, 1, 0)) skirmishes,
SUM(IF (is_battle = 0 AND winner = fleet_side AND (engaged_in IS NULL OR battle_id != engaged_in), 1, 0)) skirmish_victories,
2*
SUM(IF (is_battle = 1 AND winner = fleet_side AND (engaged_in IS NULL OR battle_id != engaged_in) AND ran_away_factor IS NULL, factor, 0))+
SUM(IF (is_battle = 0 AND winner = fleet_side AND (engaged_in IS NULL OR battle_id != engaged_in) AND ran_away_factor IS NULL, factor, 0)) AS points
FROM
(
   SELECT x.character_id, given_name, family_name, rank, side,
   is_battle, x.battle_id, winner, fleet_id, fleet_side, engaged_in, factor, ran_away_factor
   FROM
      (
      # select only 1 row by character and by battle, with priority to a fleet that was not lost in the battle
      # (for the case a character had several fleets engaged in the battle)
      SELECT character_id, battle_id, MIN(IF (engaged_in IS NULL OR battle_id != engaged_in, 0, 1)) AS min_priority FROM fleet, fleet_meeting WHERE fleet.fleet_id = fleet_meeting.fleet1_id GROUP BY character_id, battle_id
      )
      AS x
      
      INNER JOIN
      (
      # select all the interesting fields, with multiple rows by character x battle, and a time clause
      SELECT c.character_id, given_name, family_name, rank, side,
      b.is_battle, b.battle_id, b.winner, f.fleet_id, f.fleet_side, f.engaged_in, IF (f.engaged_in IS NULL OR b.battle_id != f.engaged_in, 0, 1) AS priority, IF (f.fleet_side = 0, b.fpa_ships_engaged/b.ge_ships_engaged, b.ge_ships_engaged/b.fpa_ships_engaged) AS factor
      FROM character c, fleet f, (SELECT DISTINCT fleet1_id, battle_id FROM fleet_meeting) fm, battle b WHERE c.character_id = f.character_id AND f.fleet_id = fm.fleet1_id AND fm.battle_id = b.battle_id
      $time_clause
      )
      AS y ON x.character_id = y.character_id AND x.battle_id = y.battle_id AND x.min_priority = y.priority
      
      LEFT JOIN
      (
      # select the characters whose fleet ran away before the final cease fire
      SELECT character_id, engage.battle_id, IF(SUM(nb_engage)=SUM(nb_disengage),0,NULL) AS ran_away_factor FROM
      (SELECT battle_event.battle_id, fleet_id, COUNT(event_id) AS nb_engage FROM battle_event, (SELECT battle_id, MAX(event_id) AS max_event_id FROM battle_event WHERE type = 'cease_fire' GROUP BY battle_id) AS cease_fire_events WHERE battle_event.battle_id = cease_fire_events.battle_id AND event_id < max_event_id AND type = 'engage' GROUP BY battle_event.battle_id, fleet_id) AS engage,
      (SELECT battle_event.battle_id, fleet_id, COUNT(event_id) AS nb_disengage FROM battle_event, (SELECT battle_id, MAX(event_id) AS max_event_id FROM battle_event WHERE type = 'cease_fire' GROUP BY battle_id) AS cease_fire_events WHERE battle_event.battle_id = cease_fire_events.battle_id AND event_id < max_event_id AND type = 'disengage' GROUP BY battle_event.battle_id, fleet_id) AS disengage,
      fleet
      WHERE engage.battle_id = disengage.battle_id AND engage.fleet_id = disengage.fleet_id AND engage.fleet_id = fleet.fleet_id GROUP BY character_id, battle_id
      )
      AS z ON x.character_id = z.character_id AND x.battle_id = z.battle_id
      
   GROUP BY x.character_id, x.battle_id
) AS zzz
GROUP BY character_id
ORDER BY points DESC, character_id DESC";


Top
 Profile  
 

 Post subject: Re: Ranking page
PostPosted: Tue May 31, 2016 5:19 pm 
Offline
Site Admin
User avatar

Joined: Wed Apr 08, 2015 5:56 pm
Posts: 783
A small change in order to display by default the ranking of the current year when you click on the "Hall of fame" item in the menu.
I think it's much more motivating, since the U.C.796/R.C.487 championship is still very open!


Top
 Profile  
 

Display posts from previous:  Sort by  
Post new topic Post a reply  [ 14 posts ]  Go to page 1, 2  Next


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Theme created by Matti from Free Premium phpBB3 themes
Powered by phpBB® Forum Software © phpBB Group