Odpowiedz Posty: 71
Problem z xfire
  • Awatar użytkownika
    Gruszmen
    Moderator globalny
    Moderator globalny
    Posty: 8560
    Rejestracja: 09 lip 2010, 19:17
    Medale: 10
    Reputacja: 38
    Imię: Sebastian
    Hobby: kupowanie mang
    Samochód: Omega B FL 3.2 V6, Caro+
    uPlay: Nie pamiętam
    Steam ID: gruszmen89
    Klub: Forever - Green Lights Comapny
    Lokalizacja: Poznań
    :
    Barkowice 2017 Więcbork 2016 Szczyrk 2015 Bieliszów 2014 T.U. Regular Races
    DAKAR WIMP WIMP
    Polubił: 2640
    Otrzymanych polubień: 2319

    Problem z xFire

    autor: Gruszmen » 13 cze 2015, 23:02

    Nie mam pojęcia po kiego grzyba przechodzić na raptr, skoro xf działa?
  • Awatar użytkownika
    Courius
    Posty: 6693
    Rejestracja: 28 sie 2010, 1:03
    Medale: 11
    Reputacja: 47
    Hobby: Motoryzacja
    Samochód: '05 Alfa Romeo GT 3.2 V6 Q2
    Nick w TDU: CouriusPL
    Nick w TDU2: CouriusPL
    uPlay: CouriusPL
    Steam ID: CouriusPL
    Lokalizacja: Polska, Nakło Śląskie
    :
    Barkowice 2017 Szczyrk 2015 Bieliszów 2014 DAKAR Mixed Mode PVP Summertime Endurance Event
    WIMP Grozokonkurs Endurance
    Polubił: 3844
    Otrzymanych polubień: 2099

    Problem z xFire

    autor: Courius » 13 cze 2015, 23:52

    Działa... jeszcze ;-)

    Obrazek

  • Awatar użytkownika
    Xarlith
    Administrator
    Administrator
    Posty: 2689
    Rejestracja: 03 sie 2011, 14:58
    Medale: 8
    Reputacja: 104
    Samochód: Solaris
    Nick w TDU2: Xarlith
    uPlay: Xarlith
    Steam ID: Xarlit
    Xbox Live: Xarlit
    Lokalizacja: Warszawa
    :
    Przysucha 2018 Barkowice 2017 Więcbork 2016 Szczyrk 2015 Bieliszów 2014 TorMania
    DAKAR DAKAR
    Polubił: 462
    Otrzymanych polubień: 651

    Problem z xfire

    autor: Xarlith » 21 cze 2015, 19:28

    Znalazłem sposób na odczytanie danych ze swojego profilu (np liczba godzin).

    Profile dostępne są pod adresem

    Kod: Zaznacz cały

    http://temp.xfire.com/profile/twoj_nick/

    na przykład
    http://temp.xfire.com/profile/xarlith/

    Nie wiadomo ile to podziała więc jeśli wam zależy na tych danych poróbcie sobie kopie strony/screenshoty. Napisałem do raptra, żeby zmodyfikowali swój skrypt ściągający dane z xfire, tak, żeby pobierał dane z tej tymczasowej strony.

    Ponadto już jest możliwość importowania godzin do servisu Evolvei skrypt do wyciągnięcia gamingowej historii do pliku.

    https://www.reddit.com/r/Games/comments ... save_your/

    Jestem w trakcie importu, gdy mi się wszystko uda, mogę dokładnie opisać co i jak trzeba zrobić.

    EDIT:

    Zapisanie strony profilu w pliku

    SPOSÓB I
    • Wchodzimy na adres

      Kod: Zaznacz cały

      http://temp.xfire.com/profile/twoj_nick/
      czasami stronę trzeba kilka razy odświeżyć aby się załadowała.
    • Wciskamy CTRL+S, zapisujemy jako kompletną stronę WWW.
    • Otwieramy stronę w edytorze tekstowym i usuwamy wszystkie wystąpienia frazy display: none i zapisujemy plik.
    • Otwieramy zapisaną stronę w przeglądarce i widzimy pełną listę tytułów zarejestrowanych przez X-Fire.

    SPOSÓB II
    • Wchodzimy na adres

      Kod: Zaznacz cały

      http://temp.xfire.com/profile/twoj_nick/
      czasami stronę trzeba kilka razy odświeżyć aby się załadowała.
    • Otwieramy konsolę WWW (w Firefoxie skrót CTRL+SHIFT+K), wklejamy kod:
      Ukryty tekst:

      Kod: Zaznacz cały

      function toggle_extra_rows( theObject )
      {
         if(!theObject) return;
         var element = document.getElementById( theObject );
         if(!element) return;
         var toggleLink = document.getElementById( theObject + '_show_link' );
         var showText = toggleLink.getAttribute( "showText" );
         var hideText = toggleLink.getAttribute( "hideText" );
         var numRows = element.getAttribute( "numRows" );

         if( element.getAttribute( "showingAll" ) == null )
            element.setAttribute( "showingAll", "hidden" );

         if ( element.getAttribute( "showingAll" ) == "hidden" )
         {
            element.setAttribute( "showingAll", "visible" );
            hide_rows( theObject, numRows, false );
            toggleLink.innerHTML = hideText;
         }
         else
         {
            element.setAttribute( "showingAll", "hidden" );
            hide_rows( theObject, numRows, true );
            toggleLink.innerHTML = showText;
         }
      }

      // Hide/show/set the row visibility
      function hide_rows( tableName, numRows, hideRows )
      {
         var theTable=document.getElementById(tableName);
         if(!theTable)
            return;

         var tbody = theTable.tBodies[0];

         if (numRows == -1)
         {
            // special case for always showing all rows, regardless
            for( var i = 0; i < tbody.rows.length; i++)
            {
               tbody.rows[i].style.display = "";
            }
         }
         else
         {
            for( var i = 0; i < tbody.rows.length; i++ )
            {
               if( hideRows == true && i >= numRows )
                  tbody.rows[i].style.display = "none";
               else
                  tbody.rows[i].style.display = "";
            }
         }

         // Determine if there are enough elements in the table to justify having the toggle link
         var toggleLink=document.getElementById(tableName + "_ToggleLink");
         if( tbody.rows.length <= numRows || numRows == -1)
            toggleLink.style.display = "none";
         else
            toggleLink.style.display = "block";

      }

      // Helper sort function that takes the id and the column number
      function do_sort_table( tableName, columnNumber )
      {
         var theTable = document.getElementById(tableName);
         if( theTable )
         {
            theColumn = theTable.rows[0].cells[columnNumber];
            if( theColumn )
               sort_table(theColumn);
         }
      }

      // Sort the table, based on the column heading that was clicked
      function sort_table( theColumn )
      {
         // Go up the chain until we hit the enclosing table
         var theTable = theColumn;
         while( theTable != null && theTable.tagName.toLowerCase() != 'table' )
         {
            theTable = theTable.parentNode;
         }

         // Did we never hit a table?  If so, do get out.
         if( theTable == null )
            return;

         // Determine the index of this column
         var cells = theTable.rows[0].cells;
         var len = cells.length;
         for (i = 0; i < len; i++) {
            if (cells[i] == theColumn) break;
         }
         var colNum = i;

         // Make a temporary copy of the table's rows
         // sort those using array.sort
         // Set the table's rows to be the now ordered set
         var numRows = theTable.tBodies[0].rows.length;
         var tempArray = new Array();
         for(var i = 0; i < numRows; i++ )
         {
            tempArray[i] = theTable.tBodies[0].rows[i];
         }

         // Get the sorting type (ie, how we should treat the data in the cells)
         var sortType = theColumn.getAttribute( 'datatype' );

         // Determine whether we're sorting ascending or descending
         var bDescending;

         if( theColumn.getAttribute( "sortOrder" ) == "Ascending" )
         {
            theColumn.setAttribute( "sortOrder", "Descending" );
            bDescending = true;
         }
         else
         {
            theColumn.setAttribute( "sortOrder", "Ascending" );
            bDescending = false;
         }

         // Set the up/down sorting indicator for this column
         SetColumnSortIndicator( theTable, theColumn, bDescending );

         // Sort the rows
         tempArray.sort( compareColData( colNum, bDescending, sortType ) );

         for(var i = 0; i < numRows; i++ )
         {
            theTable.tBodies[0].appendChild( tempArray[i] );
         }

         // Get the row hiding/showing back to normal - toggle twice, and it'll be fixed.
         toggle_extra_rows( theTable.getAttribute( "ID" ) );
         toggle_extra_rows( theTable.getAttribute( "ID" ) );

         // Fix the row colorations
         fixColors( theTable );
      }

      function SetColumnSortIndicator( theTable, theColumn, bDescending )
      {
         // If there's nothing to sort, then don't show the indicator
         // (also if there's only one row, since one can only sort more
         // than one object.)
         if( theTable.tBodies[0].rows.length <= 1 )
            return;

         var uid = "sortIndicator" + theTable.getAttribute( "id" );

         var sortNode = document.getElementById( uid );
         if( sortNode != null )
         {
            var theParent = sortNode.parentNode;
            theParent.removeChild( sortNode );
         }

         // create the sort indicator node
         var sortNode = document.createElement( "span" );
         sortNode.setAttribute( "id", uid );
         var textNode = document.createTextNode( "" );
         sortNode.appendChild( textNode );

         // Set the sort indicator to point in the right direction (up or down)
         if( bDescending == true )
            sortNode.innerHTML = "&nbsp;^";
         else
            sortNode.innerHTML = "&nbsp;v";

         // Place the indicator on this column heading (this should move it from its
         // previous home automatically)
         theColumn.appendChild( sortNode );
      }

      function compareColData( colNum, bDescending, sortType )
      {
         switch( sortType )
         {
            case "numeric":
               return numericSort( colNum, bDescending );
            case "wow":
               return wowSort( bDescending );
            default:   // "alphanumeric" also goes here
               return alphaSort( colNum, bDescending );
         }
      }

      function wowSort( bDescending )
      {
         return function( n1, n2 )
         {
            // WoW rankings specially formatted as "<level> <Character Name>"
            // We will sort bDescending on the level first, if they have the same level
            // then sort by !bDescending on the Character Name
            // To minimalize the impact elsewhere, we ignore the colNum argument and always
            // get the WoW specific attributes
            var level1 = Number(n1.getAttribute( "level" ));
            var level2 = Number(n2.getAttribute( "level" ));
            if (level1 != level2)
               return (bDescending?(level1 - level2):(level2 - level1));
            var name1 = n1.getAttribute( "charname" );
            var name2 = n2.getAttribute( "charname" );
            if (name1 == name2)
               return 0;
            if (name1 > name2)
               return (bDescending?-1:1);
            return (bDescending?1:-1);
         };
      }

      function alphaSort( colNum, bDescending )
      {
         return function( n1, n2 )
         {
            if( String(n1.getAttribute( "colData" + colNum )).toUpperCase() > String(n2.getAttribute( "colData" + colNum ) ).toUpperCase() )
            {
               return bDescending ? +1 : -1;
            }
            else
            {
               return bDescending ? -1 : +1;
            }
         };
      }

      function numericSort( colNum, bDescending )
      {
         return function( n1, n2 )
         {
            if( Number(n1.getAttribute( "colData" + colNum )) > Number(n2.getAttribute( "colData" + colNum )) )
            {
               return bDescending ? +1 : -1;
            }
            else if( Number(n1.getAttribute( "colData" + colNum )) < Number(n2.getAttribute( "colData" + colNum )) )
            {
               return bDescending ? -1 : +1;
            }
            else
            {
               return 0;
            }
         };
      }

      function fixColors( theTable )
      {
         var len = theTable.rows.length;
         for(var i = 1; i < len; i++ )   // start at one so we don't touch the header row
         {
            // respect multiple classes
            var classname = theTable.rows[i].className;
            if(classname.indexOf("est_row1")!=-1)
               classname = classname.replace(/est_row1/g, "");
            if(classname.indexOf("est_row2")!=-1)
               classname = classname.replace(/est_row2/g, "");

            if( i % 2 == 0 )
               classname += " est_row1";
            else
               classname += " est_row2";
            theTable.rows[i].className = classname;
         }
      }

      // for expanding individual rows
      function toggle_row_content( theImage )
      {
         // Go up the chain until we hit the enclosing table
         var theTable = theImage;
         while( theTable != null && theTable.tagName.toLowerCase() != 'table' )
         {
            theTable = theTable.parentNode;
         }

         // Did we never hit a table?  If so, do get out.
         if( theTable == null )
            return;

         var theRow = theTable.rows[1];

         if( theRow.className == "est_toggle_display_on" )
         {
            theRow.className = "est_toggle_display_off";
            theImage.className = "est_toggle_up";
         }
         else
         {
            theRow.className = "est_toggle_display_on";
            theImage.className = "est_toggle_down";
         }
      }
      i wciskamy enter.
    • Klikamy na Show Entire Gaming History, robimy print screena i gotowe.

    Przeniesienie godzin do Evolve
    • Trzeba mieć konto Evolve.
    • Wchodzimy na stronę: https://xfire.evolvehq.com/xfire, logujemy się, a potem wpisujemy swój login xfire.
    • W ciagu 24 godzin nasza biblioteka powinna być skopiowana. W razie problemów trzeba pisać do supportu.

    UWAGA!
    Jeżeli ktoś ma prywatny profil, musi w programie X-Fire zaznaczyć opcję "Show on my profile and miniprofile" w zakładce General->Game Status.

    EDIT 2:

    Odpowiedź odnośnie przeniesienia godzin do Raptr:
    Hi ,
    We've already considered all possible options and won't be importing past xfire hours. Sorry for any inconvenience.
    Ostatnio zmieniony 21 cze 2015, 19:28 przez Xarlith, łącznie zmieniany 2 razy.
    Obrazek
  • Awatar użytkownika
    JSNI
    Posty: 320
    Rejestracja: 28 lip 2010, 21:31
    Reputacja: 3
    Imię: Slawomir
    Samochód: Opel Omega B FL
    Nick w TDU: JSNI
    Nick w TDU2: RoxanPollack
    Lokalizacja: ZDR
    Polubił: 61
    Otrzymanych polubień: 120

    Problem z xFire

    autor: JSNI » 23 cze 2015, 12:11

    Dzieki za wyczerpujaca instrukcje. Jezeli nie da sie przerzucic godzin na raptr, to sprawdze tego evolve. Jezeli liczy godziny, robi screeny i video, to spelnia moje wymagania.
    Obrazek
  • Awatar użytkownika
    Courius
    Posty: 6693
    Rejestracja: 28 sie 2010, 1:03
    Medale: 11
    Reputacja: 47
    Hobby: Motoryzacja
    Samochód: '05 Alfa Romeo GT 3.2 V6 Q2
    Nick w TDU: CouriusPL
    Nick w TDU2: CouriusPL
    uPlay: CouriusPL
    Steam ID: CouriusPL
    Lokalizacja: Polska, Nakło Śląskie
    :
    Barkowice 2017 Szczyrk 2015 Bieliszów 2014 DAKAR Mixed Mode PVP Summertime Endurance Event
    WIMP Grozokonkurs Endurance
    Polubił: 3844
    Otrzymanych polubień: 2099

    Problem z xFire

    autor: Courius » 24 cze 2015, 18:10

    Udało się zrobić screena godzin, dzięki :przyjaciel:

    edit/
    Aktywowałem swoje konto, a Evolved dalej twierdzi że nie...

    Obrazek

  • Awatar użytkownika
    JSNI
    Posty: 320
    Rejestracja: 28 lip 2010, 21:31
    Reputacja: 3
    Imię: Slawomir
    Samochód: Opel Omega B FL
    Nick w TDU: JSNI
    Nick w TDU2: RoxanPollack
    Lokalizacja: ZDR
    Polubił: 61
    Otrzymanych polubień: 120

    Problem z xFire

    autor: JSNI » 24 cze 2015, 19:48

    Evolve moim zdaniem jest lepszy od Raptr. Mozna go minimalizowac do rozmiarow kompaktowych i jest szybszy. Szkoda ze nie mozna hostowac screenow na stronke, ale poza tym jest ok. Evolve tez importowal moje godzinki z Xfire.
    Obrazek
  • Awatar użytkownika
    Courius
    Posty: 6693
    Rejestracja: 28 sie 2010, 1:03
    Medale: 11
    Reputacja: 47
    Hobby: Motoryzacja
    Samochód: '05 Alfa Romeo GT 3.2 V6 Q2
    Nick w TDU: CouriusPL
    Nick w TDU2: CouriusPL
    uPlay: CouriusPL
    Steam ID: CouriusPL
    Lokalizacja: Polska, Nakło Śląskie
    :
    Barkowice 2017 Szczyrk 2015 Bieliszów 2014 DAKAR Mixed Mode PVP Summertime Endurance Event
    WIMP Grozokonkurs Endurance
    Polubił: 3844
    Otrzymanych polubień: 2099

    Problem z xFire

    autor: Courius » 24 cze 2015, 19:53

    Okeej, Evolve już zatwierdził moje konto. U ciebie jak długo synchronizował te godziny?

    Obrazek

  • Awatar użytkownika
    JSNI
    Posty: 320
    Rejestracja: 28 lip 2010, 21:31
    Reputacja: 3
    Imię: Slawomir
    Samochód: Opel Omega B FL
    Nick w TDU: JSNI
    Nick w TDU2: RoxanPollack
    Lokalizacja: ZDR
    Polubił: 61
    Otrzymanych polubień: 120

    Problem z xFire

    autor: JSNI » 24 cze 2015, 20:28

    Ponad 24godz. Po jednym dniu importowalo czesc godzinek, a pozniej reszte. Ale zadzialalo.
    Obrazek
  • Awatar użytkownika
    Courius
    Posty: 6693
    Rejestracja: 28 sie 2010, 1:03
    Medale: 11
    Reputacja: 47
    Hobby: Motoryzacja
    Samochód: '05 Alfa Romeo GT 3.2 V6 Q2
    Nick w TDU: CouriusPL
    Nick w TDU2: CouriusPL
    uPlay: CouriusPL
    Steam ID: CouriusPL
    Lokalizacja: Polska, Nakło Śląskie
    :
    Barkowice 2017 Szczyrk 2015 Bieliszów 2014 DAKAR Mixed Mode PVP Summertime Endurance Event
    WIMP Grozokonkurs Endurance
    Polubił: 3844
    Otrzymanych polubień: 2099

    Problem z xFire

    autor: Courius » 24 cze 2015, 20:39

    A przez jaki link synchronizowałeś sobie te godzinki z xfire? Ja nic nie znalazłem na ten temat na Evolved...

    edit/
    Mi osobiście link od Xara nie działa, już 2 tygodnie temu go używałem i nadal nic nie ruszyło się w tym temacie.

    Obrazek

  • Awatar użytkownika
    JSNI
    Posty: 320
    Rejestracja: 28 lip 2010, 21:31
    Reputacja: 3
    Imię: Slawomir
    Samochód: Opel Omega B FL
    Nick w TDU: JSNI
    Nick w TDU2: RoxanPollack
    Lokalizacja: ZDR
    Polubił: 61
    Otrzymanych polubień: 120

    Problem z xfire

    autor: JSNI » 24 cze 2015, 21:44

    Po wejsciu na strone glowna https://www.evolvehq.com/ automatycznie wyskoczylo mi podaj nick z Xfire. Jezeli Ci nie wyskoczylo, to po prawej na swoim profilu jest From the blog i tam jest watek Goodbye Xfire, We Will Miss You. I w tym temacie bedzie w tekscie podkreslone https://xfire.evolvehq.com/xfire klikasz w to i wpisujesz swoj nick z Xf.
    Ostatnio zmieniony 24 cze 2015, 21:44 przez JSNI, łącznie zmieniany 2 razy.
    Obrazek
  • adamsky73

    Problem z xFire

    autor: adamsky73 » 25 cze 2015, 19:52

    Mi tam się nie chce od nowa instalować platform gamingowych bo i tak znajomych miało się głównie na XF.

    Jakby ktoś chciał pogadać to zapraszam na Skype: adam_niescioruk
Odpowiedz Posty: 71

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 10 gości

Przejdź do