• Hallo Besucher!

    Du bist neu im Forum? Dann registriere dich hier, um Diskussionen beizutreten oder eigene Themen zu erstellen. Für die Registrierung ist es erforderlich, dass du einen Spielaccount bei Die Stämme hast.

    Andernfalls kannst du dich hier direkt einloggen.

    Falls du dein Passwort vergessen hast, kannst du hier ein neues Passwort anfordern.

Feedback: Änderung der Script-Regeln mit Wirkung zum 08. Oktober 2011

he1OO

Gast
Ich muss ganz ehrlich sagen das die Skripte von DS-gehostet werden is mal das Aller Letzte!

ich Begründe das auch gerne mal aus Technischer sicht:
- ein UserSkript sollte auf dem "User Rechner" ausgeführt werden da es schnell zu Arbeiten hatt...

ich hab bis jetz 3 der "von DS gehosteten" skripte übernommen und festgestellt das der ganze Müll bei jeder Seitenaktualisierung neu geladen wird...

Fakt daraus: unnötiger Traffik aber vom Allerfeinsten... Stark erhöhte Warte zeiten beim laden der Seiten...

wie soll man so noch vernünftig spielen wenn man auf ne Seite 10 sec oder mehr warten muss weil erst noch n Fettes Skript (oder nur 3 kleine) Runtergeladen werden muss und das bei jedem neuen Aufrufen der Page...

also entweder da wird iwer nochmal dran Arbeiten oder das geht hier den bach Runter!
glaub kaum das ich bei so nem Müll noch viel länger Spielen werd denn mir stehts, nach 2 Tagen nutzung der "neuen" Skriptregelung, bis Oberkante Unterlippe.

mfg Antikristianos

PS: ich steh auf Websiten die sich flott aufbauen und Skripte die meine Rechnerleistung benutzen um ihren Job zu tuhn und nicht meine Bandbreite verschwenden

Hi,

jetzt hätte ich mal eine Frage an dich welche Scripte das sind.

Also ich hab jetzt 3 Scripte und ein paar schnellleisten scripte zum testen installiert.
Und alle bis auf die Schnelleisten scripte hat er mir auf die platte geladen und bei einem update würde er nur die Datei ersetzen.

Also wennst time hast könnte ja mal die Scripte schicken ob die halt von dort gehostet werden.

Sonst kannst ja selber nachschauen, auf Extras --> Addons --> Benutzerskripte --> Rechtsklick --> Beinhalteten Ordner anzeigen.
Sollte keine Datei drin sein dann bitte das Script posten damit ich das mal bei mir testen kann :)

mfg he
 

DeletedUser

Gast
das sind die 3 Skripte:
- DS_BBcode_Formatierer
Code:
// ==UserScript==
// @name DS BB-Code-Formatierer
// @author Hypix
// @namespace http://hypix.de/
// @include http://de*.die-staemme.de/game.php*
// ==/UserScript==

var $ = typeof unsafeWindow != 'undefined' ? unsafeWindow.$ : window.$;
$.getScript('http://scripts.die-staemme.de/gm-scripts/report_converter.js');
wird jedesmal von der Drinstehenden Adresse geladen (Rotz hoch 10 siehe letzte Zeile)

- Altes Menü
Code:
// ==UserScript==
// @name           Altes Menu
// @namespace      DS-Skripte by Merik
// @include        http://de*.die-staemme.de/game.php?*
// ==/UserScript==

var $ = typeof unsafeWindow != 'undefined' ? unsafeWindow.$ : window.$;
$.getScript('http://scripts.die-staemme.de/gm-scripts/old_menu.js');
genau das selbe...

- DS-Workbench user Skript
Code:
// ==UserScript==
// @name           DS Workbench Scripts
// @namespace      none
// @include        http://de*.die-staemme.de/game.php?*screen=place*
// @include        http://de*.die-staemme.de/game.php?screen=place*
// @include        http://de*.die-staemme.de/game.php?*screen=place
// @include        http://de*.die-staemme.de/game.php?*screen=market&mode=send*
// @include        http://de*.die-staemme.de/game.php?*mode=groups*
// @exclude        http://de*.die-staemme.de/game.php?*screen=place&mode=units
// @exclude        http://de*.die-staemme.de/game.php?*screen=place&mode=sim
// @exclude        http://de*.die-staemme.de/game.php?*screen=place&mode=neighbor
// @exclude        http://de*.die-staemme.de/game.php?*screen=place&try=confirm
// ==/UserScript==

var $ = typeof unsafeWindow != 'undefined' ? unsafeWindow.$ : window.$;
$.getScript('http://scripts.die-staemme.de/gm-scripts/wb_userscript.js');
der gleiche schwindel...

sehe da nicht wo die auf meine Platte geladen werden nur das er die bei jedem Seitenaufruf wo sie angewendet werden sollen neu Lädt...

wenn der DS_Assistent dann mal fertig angepasst sein sollte wird er vermutlicch die Performance so derbe Drücken das das gamen überhaupt nichtmehr möglich ist... is ja immerhin ein halbes MB Groß und wenn das jedesmal neu geladen werden soll... Prost mahlzeit
 
Zuletzt bearbeitet von einem Moderator:

DeletedUser

Gast
Hi,
Also ich hab jetzt 3 Scripte und ein paar schnellleisten scripte zum testen installiert.
Und alle bis auf die Schnelleisten scripte hat er mir auf die platte geladen und bei einem update würde er nur die Datei ersetzen.

was er da auf deiner platte auslagert sind die Initialisierungsskripte.
Die eigentlichen Skripte werden nachgeladen wie bereits vor Tagen geschrieben:

- Zentralisierung der Skripte: Prinzipiell ok, aber:
-- leider den Sinn verfehlt. Sinn und Zweck von Userskripten ist (auch), dass der mitunter lange Quellcode lokal liegt(!). Hier liegt (mit) der grosse Vorteil von Userskripten! Jetzt werden kb-weise die
Skripte nachgeladen und so wie es umgesetzt wurde werden Browser diese nicht cachen. Wie gesagt: klassisch den Sinn verfehlt; dann haette man sich auch die DB sparen koennen und einfach alles integrieren und vom eig. Gameserver ausliefern koennen.
Desweiteren wurden die Skripte direkt(!) nach Laden der Seite ausgefuehrt, nun werden sie geholt und dann ausgefuehrt; bei manchen Skripten nicht schlimm, bei anderen schon!

-- (derzeitige) Netzlatenzen. Dass diese unterirdisch sind ist offenbar klar, vllt. auch auf den derzeitigen 'Run' auf die DB zu erklaeren. Aber Euch muss klar sein, dass der 386er hinter "scripts.die-staemme.de/gm-scripts/*" nicht ausreicht. Ich kenne keine statischen Webseiten mehr und mein Browser cacht deshalb ausschliesslich Bilder, und das ist auch gut so! Jmd. der farmt macht x Req. die Minute. Wenn er 20 Skripte aktiviert hat und ein Skript durchschn. 10k besitzt kann jeder mal ausrechnen, wieviel Last entsteht...
Sollte es so bleiben, so bittebittebitte passt Eure In- und Excludes an...
Das erste(!) Skript welches ich mir exemplarisch angeschaut habe, sah wie folgt aus:
// @include http://de*.die-staemme.de/*screen=main*
// @include http://ch*.staemme.ch/*screen=main*

thats it. es agiert auf einer Seite wird aber jedesmal geholt (wenn ich eure Funktion getSkript sprechend interpretiere).
 

DeletedUser

Gast
zu diesem unsave window wurde ja hier schon ein link gesetzt und bedenken angemeldet.
finde den beitrag leider gerade nicht.
 

DeletedUser

Gast
so wie es ist is es auf jedenfall Dreck und muss geändert werden...

ich muss atm nur wegen dem "Altes Menü" Skript min 3 Sec warten bis ich ne Seite nutzen kann... das kann ma nich so akzeptieren da lad ich mir die "von DS-gehosteten" Skripte lieber von der Datenbank auf meinen Rechner... is dann zwar vermutlich wieder illegal aber läuft wenigstens so wie es sollte...
 

DeletedUser

Gast
so wie es ist is es auf jedenfall Dreck und muss geändert werden...

ich muss atm nur wegen dem "Altes Menü" Skript min 3 Sec warten bis ich ne Seite nutzen kann... das kann ma nich so akzeptieren da lad ich mir die "von DS-gehosteten" Skripte lieber von der Datenbank auf meinen Rechner... is dann zwar vermutlich wieder illegal aber läuft wenigstens so wie es sollte...

wieso sollte das illegal sein, wenn du nichts veränderst. dann bekommt man halt das update nicht mehr automatisch, wenn ich das richtig verstanden habe. habe von solchen dingen leider keine ahnung.
aber von der logik her müsste das ja so sein.

obwohl inno will einem ja sogar vorschreiben, dass man unerlaubte skripte aus der skriptliste im GM komplett entfernen muss und nicht als deaktiviert drin stehen bleiben dürfen.
von daher ist es möglicherweise auch verboten, die scripte lokal zu speichern.

aber könnten die das denn überhaupt kontrollieren? sorry, wenn das eine dumme frage ist.

oder kann man GM nicht einen eigenen ordner zuweisen, wo er die scripte holt, also nicht im stammordner.
 

he1OO

Gast
was er da auf deiner platte auslagert sind die Initialisierungsskripte.
Die eigentlichen Skripte werden nachgeladen wie bereits vor Tagen geschrieben:

Also es bei meinen Scripten liegt zumindest alles drauf. Da dort ja auch truppen usw. eingestellt werden müssen usw. Jedenfalls hab ich dadurch keine ladezeiten noch sonstiges. Auch net zu früher ist gleich geblieben.

@Antikristianos
Hab jetzt nur das Menu und Berichte getestet.

Im ganzen muss ich sagen geht gleich schnell bei mir. Klar wird das Menu oben am schluss nochmal geladet aber das dauert bei mir keine 2ms. Das flakert ganz kurz dann ist es da.

mfg he

***EDIT***
Hab DS workbench jetzt auch mal versucht und da muss ich dir Recht geben. Die Ladezeiten mit dem Externen Tool, DS und dem ScriptDB verlangsamt das ganze. Aber so jetzt beim bissi rumspielen vielleicht zu kurz gesagt dauerts ingesamt so bis zu 2Sec wenn man so wie ich gerade 15Befehl oder bissi merh am Versammlungsplatz hat.
 
Zuletzt bearbeitet:

DeletedUser

Gast
Also es bei meinen Scripten liegt zumindest alles drauf. Da dort ja auch truppen usw. eingestellt werden müssen usw. Jedenfalls hab ich dadurch keine ladezeiten noch sonstiges. Auch net zu früher ist gleich geblieben.

dann hast Du noch die 'alten' Skriptversionen und wuerdest diese ab Oktober nicht regelkonform nutzen was wiederum mit einer Strafe/Sperre geahndet werden kann
 

DeletedUser

Gast
kommt vermutlich auch auf der verfügbare Bandbreite an...

aber nicht jeder hatt 16K DSL oder mehr... ich krieg zb grad so 3K DSL... und ich sehs einfach niccht ein warum das zeug bei jedem Seitenaufruf neu geladen werden soll... is genau das warum man sich n Grafikpacket installiert oder? damit die bandbreite geschohnt wird und sich alles etwas schneller aufbaut...

ich hab vor ner woche 1.500 Angriffe an einem Tag abgeschickt (meisten waren Fakes aber egal) wenn ich bei so ner Aktion 20 Tabs öffne mit verschiedenen versammlungsplätzen undd voreingetragenen Ziel koords... (DS_WB machts möglich ^^) dann lädt das neue System 20 mal das gleiche Skript... macht 20 Mal unnötigen Traffik... und erhöht damit den zeitaufwand enorm.

wenn ich atm mit dem DS-Assistent die Massenrekrutierung öffne warte ich schon wegen der extremen Datenmängen die da verarbeitet werden so ca. 30 sec bis ich mal den Ausfüllen knopf drücken kann... wenn dann demnächst das Skript vorher erst noch ausm netz geladen werden soll Kackste doch völlig ab und wartest dir n Wolf...
 

he1OO

Gast
dann hast Du noch die 'alten' Skriptversionen und wuerdest diese ab Oktober nicht regelkonform nutzen was wiederum mit einer Strafe/Sperre geahndet werden kann

Nö sind die neuen ;) mit sicherheit :). Sind komplett gleich vielleicht liegts wie Antikristianos sagt auch nur an der Bandbreite das es gleich schnell geht.

Aber z.B. das alte Menu hatte ich noch nie und wenn ich es jetzt über die DB installiert legt er mir das auf den Rechner ;) Oder meinst GN geht wenn ich über die DB installier ins Forum, sucht das Script und installiert zur sicherheit das alte auch nochmal ;)

mfg he
 

DeletedUser

Gast
Und da wundert sich keiner warum es nur noch 244388 Spieler sind :mrgreen:

Naja da muss man nichts mehr zu sagen außer das DS wieder mal ein bissi schlechter wird.

So stell mein acc mal auf inaktiv und PA hab ich schon lange nicht mehr gekauft und jetzt weiß ich auch warum ....
 

DeletedUser

Gast
wo legt er das denn auf den Rechner??

also ich bin schon n Frek was den PC angeht aber wenn ich nicht völlig bescheuert bin liegt nur das aufm Rechner was ich in meinen Greasemonkey Einstellungen auch finde...

nur mal ums zu vergleichen:

DS BB-Code-Formatierer:
vor Aktualisierung (zufällige Code Teile Gelöscht weils sonnst zulang war! ist also kein Funktionsfähiges Skript mehr im Spoiler)
Code:
// ==UserScript==
// @name DS BB-Code-Formatierer
// @description Version 1.1.1 Formatiert Berichte Forumtauglich (Ingame)
// @author Hypix
// @namespace http://hypix.de/
// @include http://de*.die-staemme.de/game.php*
// ==/UserScript==

// Versionhistory:
// 1.1.1 Betreff wird wieder erkannt
// 1.1.0 Truppen werden bei Verwendung von Bildern als Gesamtgrafik eingebunden
//          Verbergen von Angaben möglich
// 1.0.5 Anpassung für DS Version 6.0
// 1.0.4 Bufix bei "Truppen in anderen Dörfern"
// 1.0.3 Kompatibilitätsanpassungen
// 1.0.2 Einige Anpassung, das es mit Opera wieder tut
// 1.0.1 Grafikpackettauglichkeit eingebaut
// 1.0.0 Veröffentlichung 

(function(){
var settings = { urlType: { title: "Links:", value: 1 },
                 useImg: {title: "Bilder verwenden", value: 1 },
                 showAttCount: { title: "Angreifer Einheiten", value: 1 },                   
                 showAttLost: { title: "Angreifer Verluste", value: 1 },                   
                 showReligious: { title: "Glauben", value: 1 },                   
                 showDefCount: { title: "Verteidiger Einheiten", value: 1 },                   
                 showDefLost: { title: "Verteidiger Verluste", value: 1 },                   
                 showSpyBeute: { title: "Erspähte Rohstoffe", value: 1 },                   
                 showSpyBuild: { title: "Gebäude", value: 1 },                   
                 showBeute: { title: "Beute", value: 1 },                   
                 showSpyExtern: { title: "Einheiten ausserhalb", value: 1 } };
var defVals = "11111111111";
params = parseParams( location.search );
var isReport = false;
var unitSection = 0;
  var cp = html.lastIndexOf("(");
  var coords = html.substring(cp).match( /(\d+)\|(\d+)/ );
  var lnk = removeWhiteSpaces(html);
  var ret = "";
  switch( settings.urlType.value )
  {
    case "0":
      ret += lnk;
      break;
    case "1":
      ret += "[village]" + coords[1] + "|" + coords[2] + "[/village]";
      break;
    default:
      ret += getBBUrl(url+"page.php?page=inbound&screen=info_village&id="+id,lnk);
  }
  return ret;
        break;
      case "A":
        var res = parseParams(node.href); //.match( /screen=info\_player&id=(\d+)/ );
        var lnk = removeWhiteSpaces(node.innerHTML);
        if( res.screen == "info_player" )
        {
          switch( settings.urlType.value )
          {
            case "0":
              ret += lnk;
              break;
            case "1":
              ret += "[player]" + lnk + "[/player]";
              break;
            default:
              ret += getBBUrl(url+"page.php?page=inbound&screen=info_player&id="+res.id,lnk);
          }
        }
        else
        {
          res = parseParams(node.href)
          if( res.screen == "info_village" )
            ret += getVillageBBCode(node.innerHTML,res.id) + "\n";
        }
        skipChildren = true;
        break;
      case "IMG":
        if( settings.useImg.value )
        {
          if( /graphic/.test(node.src) )
            src = url + node.src.substring(node.src.lastIndexOf("graphic"));
          else
            src = node.src;
          var idx = src.lastIndexOf("?");
          if( idx > -1 )
            src = src.substring(0,idx);
          ret += "[img]"+ src + "[/img]";
        }
        else
          ret += node.title + " ";
        break;
      default:
        if( /H([1234])/.test(node.nodeName) )
        {
          size = 20-parseInt(node.nodeName[1]);
          var val = removeWhiteSpaces(node.innerHTML.replace(/<[^>]+>/g, ""));
          //ret += "[size="+size+"][b][i]"+val+"[/i][/b][/size]\n";
          ret += "[b][i]"+val+"[/i][/b]\n";
          nextNode = skipSiblings(node,2);
          if( (node.parentNode && /T[DH]/.test(node.parentNode.nodeName)) && 
              nextNode && (!/T[DH]/.test(nextNode.nodeName) && nextNode.nodeName != "TABLE") )
          {
            ret += "\n"
          }
          if( /Gl.{1,2}ck \(aus Sicht des Angreifers\)/.test(val) )
          {
            node = skipSiblings(node,2);
            ret += parseLuck(node);
            isReport = true;
          }
          skipChildren = true;
        }
        else if( node.nodeValue )
        {
          if( node.nodeValue )
          {
            ret += removeWhiteSpaces(node.nodeValue);
          }
        }
        break;
    }
    if( !skipChildren )
    {
  var ret = "";
  var res = node.innerHTML.match( /<b>([-]?(\d+)\.(\d+))%<\/b>/ );
  if( res )
  {
    var luck = parseFloat(res[1]);
    if( luck < 0 )
    {
      if( settings.useImg.value )
        ret += "[img]"+url+"graphic/rabe.png[/img] ";
      ret += "[b]Pech:";
    }
    else
    {
      if( settings.useImg.value )
        ret += "[img]"+url+"graphic/klee.png[/img] ";
      ret += "[b]Glück:";
    }
    ret += Math.abs(luck) + "%[/b]\n\n";
  }
  return ret;
}
function parseUnits(node)
{
  unitSection++;
  var ret = "";
  var rows = new Array();
  var start = 0;
  var title = !/\/unit\/unit\_[^.]+\.png/.test(node.rows[0].cells[0].innerHTML);
  if( title ) 
    start++;
  for( var r = 1; r < node.rows.length; r++ )
    rows[r] = "";
  var showCount = (unitSection == 1 && settings.showAttCount.value) || (unitSection == 2 && settings.showDefCount.value);
  var showLost = (unitSection == 1 && settings.showAttLost.value) || (unitSection == 2 && settings.showDefLost.value);
      ret = "[img]http://hypix.de/staemme/unitspng.php?";
      for( var c = start; c < node.rows[0].cells.length; c++ )
      {
        unit = node.rows[0].cells[c].firstChild.src;
        var pos = unit.lastIndexOf("_");
        var idx = unit.lastIndexOf(".");
        unit = unit.substr(pos+1,idx-pos-1);
        ret += unit + "=" + node.rows[1].cells[c].innerHTML + "&";
      }
      ret += "[/img]";
    }
    else
      ret = "Verborgen\n";
  }
  else
  {
    for( var c = start; c < node.rows[0].cells.length; c++ )
    {
      var unit;
      if( settings.useImg.value )
      {
        unit = node.rows[0].cells[c].firstChild.src;
        var pos = unit.lastIndexOf("/");
        var idx = unit.lastIndexOf("?");
        if( idx == -1 )
          unit = "[img]"+url+"graphic/unit"+unit.substr(pos)+"[/img] ";
        else
          unit = "[img]"+url+"graphic/unit"+unit.substr(pos,idx-pos)+"[/img] ";
      }
      else
        unit = " " + node.rows[0].cells[c].firstChild.title + "\n";
      
      for( var r = 1; r < node.rows.length; r++ )
      {
        var anz = parseInt(node.rows[r].cells[c].innerHTML);
        if( anz )
        {
          if( settings.useImg.value )
            rows[r] += unit + anz + "[color=white]__[/color]";
          else
            rows[r] += anz + unit;
        }
      }
    }
    for( r = 1; r < rows.length; r++ )
    {
      if( !isReport || unitSection <= 2 || settings.showSpyExtern.value )
      {
        if( title )
        {
          var title = node.rows[r].cells[0].innerHTML;
          var res = parseParams(title); //.match( /screen=info_village&amp;id=(\d+)/ );
          if( res.screen == "info_village" )
            ret += getVillageBBCode(title,res.id)+"\n";
          else
            ret += "[b]"+removeWhiteSpaces(title)+"[/b]\n";
        }      
        if( unitSection > 2 || r == 1 && showCount || r == 2 && showLost )
          ret += rows[r].length ? rows[r]+"\n" : "Keine\n";
        else
          ret += "Verborgen\n";
      }
      else
        res += "Verborgen\n";
    }
  }
  return ret;
}
function toggleSettings()
{
  var frm = document.getElementById("dsbb_settings");
  if( frm.style.display == "none" )
    frm.style.display="block";
  else
    frm.style.display="none";
}
function createBBForm(cell,size,createBBCode,report)
{
  function selectall()
  {
    this.select();
  }

  cell.style.verticalAlign="top";
  cell.id="dsbb_form";
  cell.style.padding="0 0 0 0";
  var tab = cell.appendChild(document.createElement("table"));
  tab.style.border="1px solid black";  
  tab.className="vis";
  tab.cellSpacing=2;
  tab.cellPadding=2;
  tab.style.width = size+"px";
  var row = tab.insertRow(0);
  cell = row.appendChild(document.createElement("th"));
  cell.innerHTML="DS-Berichteformatierer";
  
  cell = tab.insertRow(1).insertCell(0);
  cell.colSpan = 2;
  ta = cell.appendChild(document.createElement("textarea"));
  ta.readOnly = true;
  ta.style.backgroundColor = "#F7EED3";
  ta.style.border = "1px solid rgb(222, 211, 185)";
  ta.addEventListener("click", selectall, false );
  ta.style.width=size+"px";
  ta.style.height="50px";
  
  cell = tab.insertRow(tab.rows.length).appendChild(document.createElement("th"));
  cell.innerHTML = "Optionen:";
  cell = tab.insertRow(tab.rows.length).insertCell(0);
  cell.innerHTML = "Links:";
  var ctrl = cell.appendChild(document.createElement("select"));
  ctrl.id="dsbb_urlType";
  var option = document.createElement("option");
  option.value = 0;
  option.text = "Keine";
  option.selected = settings.urlType.value == 0;
  ctrl.options.add(option);
  option = document.createElement("option");
  option.value = 1;
  option.text = "DS-BB-Codes";
  option.selected = settings.urlType.value == 1;
  ctrl.options.add(option);
  option = document.createElement("option");
  option.value = 2;
  option.text = "[URL=]";
  option.selected = settings.urlType.value == 2;
  ctrl.options.add(option);  
  option = document.createElement("option");
  option.value = 3;
  option.text = '[URL=""]';
  option.selected = settings.urlType.value == 3;
  ctrl.options.add(option);  

  for( var key in settings )
  {
    if( key != "urlType" )
    {
      cell = tab.insertRow(tab.rows.length).insertCell(0);
      ctrl = cell.appendChild(document.createElement("input"));
      ctrl.type = "checkbox";
      ctrl.checked = settings[key].value;
      ctrl.id="dsbb_" + key;
      cell.appendChild(document.createTextNode(settings[key].title));
      if( !report && key != "useImg" )
        cell.style.display = "none";
    }
  }
 
  cell = tab.insertRow(tab.rows.length).insertCell(0);
  var btn = cell.appendChild(document.createElement("input"));
  btn.type="button";
  btn.value="Anwenden";
  btn.style.width = "100%";
  btn.addEventListener("click", function() { submitSettings(); createBBCode(); loadSettings(); }, false );
  
  cell = tab.insertRow(tab.rows.length).insertCell(0);
  var btn = cell.appendChild(document.createElement("input"));
  btn.type="button";
  btn.value="Anwenden und Speichern";
  btn.style.width = "100%";
  btn.addEventListener("click", function() { submitSettings(); createBBCode(); saveSettings(); }, false );
  loadSettings();
}

function submitSettings()
{
  for( var key in settings )
  {
    var ctrl = document.getElementById("dsbb_"+key);
    if( key == "urlType" )
      settings[key].value = ctrl.value;
    else
      settings[key].value = ctrl.checked ? 1 : 0;
  }
}

function loadSettings()
{
  var vals = "";
  if( typeof(GM_getValue) == "function" )
    vals = GM_getValue("settings", "");
  else
  {
    var cookieData = document.cookie.match( /dsbb_settings=(\d{2});/ );
    if( cookieData )
      vals = cookieData[1];
  }
  if( vals.length < defVals.length )
  {
    vals += defVals.substring(vals.length);
  }
  idx = 0;
  for( var key in settings )
  {
    eval( "settings[key].value = "+(idx < vals.length ? vals[idx++] : settings[key].value) + ";");
    var ctrl = document.getElementById("dsbb_"+key);
    if( key == "urlType" )
      ctrl.value = settings[key].value;
    else
      ctrl.checked = settings[key].value;
  }
}
function saveSettings()
{
  var vals = "";
  for( var key in settings )
  {
    var ctrl = document.getElementById("dsbb_"+key);
    if( key == "urlType" )
      vals += ctrl.value;
    else
      vals += ctrl.checked ? 1 : 0;
  }
  
  if( typeof(GM_setValue) == "function" )
    GM_setValue("settings", vals);
  else
  { 
    var expires = new Date();
    expires = new Date( expires.getTime() + 365*24*60*60*1000);
    document.cookie = "dsbb_settings=" + vals + "; expires=" + expires.toGMTString();
  }
}
function getTableWithClassName(className, idx)
{
  tabs = document.getElementsByTagName("table");
  count = 0;
   for( ti = 0; ti < tabs.length; ti++ )
  {
    if( tabs[ti].className==className )
    {
      if( count == idx )
        return tabs[ti];
      count++;
    }
  }
}
function parseParams(url)
{
  url = url.substring(url.indexOf("?")+1);
  url = url.replace( /&amp;/g, "&" );
  url = url.split("&");
  var params = {};
  for( var i = 0; i < url.length; i++ )
  {
    var param = url[i].split("=");
    params[param[0]] = param[1];
  }
  return params;
}

function dumpObj(obj,silent)
{
  var str = "\n{";
  for( var key in obj )
  {
    if( typeof( obj[key] ) == "object" )
    {
      str += "\n" + key + ":";
      str += dumpObj(obj[key],true)
    }
    else
      str += "\n" + key + ": " + obj[key];
  }
  str += "\n}";
  if( !silent )
    GM_log(str);
  return str;
}
})();
und Nach Aktualisierung
Code:
// ==UserScript==
// @name DS BB-Code-Formatierer
// @author Hypix
// @namespace http://hypix.de/
// @include http://de*.die-staemme.de/game.php*
// ==/UserScript==

var $ = typeof unsafeWindow != 'undefined' ? unsafeWindow.$ : window.$;
$.getScript('http://scripts.die-staemme.de/gm-scripts/report_converter.js');

kann mir doch keiner erzählen das da jetz das Skript auf meinem Rechner liegt...
 

DeletedUser

Gast
@Antikristianos
Hab jetzt nur das Menu und Berichte getestet.

Im ganzen muss ich sagen geht gleich schnell bei mir. Klar wird das Menu oben am schluss nochmal geladet aber das dauert bei mir keine 2ms. Das flakert ganz kurz dann ist es da.

mfg he

dann probiere das in etwa 3 bis 4 h nochmal dann sind das locker 10 sec.
 

he1OO

Gast
wo legt er das denn auf den Rechner??

also ich bin schon n Frek was den PC angeht aber wenn ich nicht völlig bescheuert bin liegt nur das aufm Rechner was ich in meinen Greasemonkey Einstellungen auch finde...

Im FireFox hab ich es dir ja schon beschrieben einfach dort auf Rechtsklick usw.

Ganz ehrlich ich hab gerade geguckt ich hab über DB installiert und das ganze script drin :(.

Ich warte mal paar stunden vielleicht ladet er das ja noch um. Jedenfalls die anderen scripte von mir die ich am ersten tag der DB installiert hab, haben sich net wirklich verändert.

mfg he

***EDIT***
Ok jetzt hab ich es raus, und der Fehler lag bei mir oder bei den Scripten die ich nutze

Es stimmt manche Scripte werden nicht vollständig geladen und manche schon. Es wird wohl "Muss nach einem Update neu installiert werden" aussagen. Diese Scripte speichert er am Rechner den Rest ladet er dann von der Datenbank.

Aber wie gesagt ich versuchs heute Nachmittag nochmal wegen den Ladezeit bin mal gespannt.

Aber somit waren die letzten 20Seiten eigentlich für nix weil sich hier 20Leute rumgejammert haben wegen überschreiben usw.
Somit ist die DB wirklich die Perfekte Lösung für Scripte wo ich selber nix ändern kann und muss. Da einfach auf der DB die Datei geändert wird und ich nix machen muss. Behaupte auch mal wenn man ne normale Leitung hat das des ohne Probleme geht.

Und somit für Anfänger und auch für mich dem das e immer zu blöd war die Perfekt Lösung.

mfg he
 
Zuletzt bearbeitet:

DeletedUser

Gast
ich hab das gefühl das ich zu dumm für diese welt bin :)

ich check das ganze i-wie nid :D also mit dieser datenbank :D
 

DeletedUser67288

Gast
Ich kann antikristianos nur zustimmen:

Code:
// ==userscript==
// @name ds bb-code-formatierer
// @author hypix
// @namespace http://hypix.de/
// @include http://de*.die-staemme.de/game.php*
// ==/userscript==

var $ = typeof unsafewindow != 'undefined' ? Unsafewindow.$ : Window.$;
$.[B][SIZE="4"][COLOR="Red"]getscript('http://scripts.die-staemme.de/gm-scripts/report_converter.js');[/COLOR][/SIZE][/B]

@he1OO: Sieh dir bitte mal den hervorgehobenen Teil an: Der holt sich das Script nun bei jedem Reload neu, vorher war es auf unserem Rechner gespeichert.

Ebenfalls stimmt, dass die Performance darunter leidet, da zunächst die Seiten "normal" geladen und erst danach mit den userspezifischen GM-Scripts "überarbeitet" werden.

Okay, du hast deinen letzten Beitrag editiert :)

Ich habe einen aktuellen PC und am DSL scheitert es bei mir auch nicht, trotzdem ist die Performance momentan wirklich schlecht - keine Ahnung, ob es überhaupt eine Möglichkeit gibt, diese zu verbessern.

Eine endgültige Lösung kann das nicht sein; da aktualisiere ich lieber alle paar Tage manuell meine GM-Scripte.
 

he1OO

Gast
ich hab das gefühl das ich zu dumm für diese welt bin :)

ich check das ganze i-wie nid :D also mit dieser datenbank :D

Eigentlich ist es einfach darf man nur das Forum hier net lesen ;)
Greasmonkey installieren --> Daten bank script installieren und fertig.

Das wars. Wenn jetzt DS ein update macht musst du bei den meisten Scripten nix mehr machen (ausnahme "muss bei update neu installiert werden") denn das Script wird in der Datenbank geändert und zur verfügung gestellt.

Ich kann antikristianos nur zustimmen:

Code:
// ==userscript==
// @name ds bb-code-formatierer
// @author hypix
// @namespace http://hypix.de/
// @include http://de*.die-staemme.de/game.php*
// ==/userscript==

var $ = typeof unsafewindow != 'undefined' ? Unsafewindow.$ : Window.$;
$.[B][SIZE="4"][COLOR="Red"]getscript('http://scripts.die-staemme.de/gm-scripts/report_converter.js');[/COLOR][/SIZE][/B]

@he1OO: Sieh dir bitte mal den hervorgehobenen Teil an: Der holt sich das Script nun bei jedem Reload neu, vorher war es auf unserem Rechner gespeichert.

Ebenfalls stimmt, dass die Performance darunter leidet, da zunächst die Seiten "normal" geladen und erst danach mit den userspezifischen GM-Scripts "überarbeitet" werden.

Okay, du hast deinen letzten Beitrag editiert :)

Ich habe einen aktuellen PC und am DSL scheitert es bei mir auch nicht, trotzdem ist die Performance momentan wirklich schlecht - keine Ahnung, ob es überhaupt eine Möglichkeit gibt, diese zu verbessern.

Eine endgültige Lösung kann das nicht sein; da aktualisiere ich lieber alle paar Tage manuell meine GM-Scripte.

Jo also wie gesagt ich werd heute nachmittag nochmal gucken aber derzeit hab ich keine Ladezeit Probleme mit den Scripten von ihm. Ka muss sie halt mehr einsetzen vielleicht wirds dann ja.

Eine Lösung kann nur sein das halt solche Scripte die so aufwendig sind z.B. DS-Bench diese ebenfalls Downloaden zu lassen wie "Press Key for Kata usw."

Bei kleinen Scripten wie der Menu Leiste hingegen find ich das so besser. So braucht sich der Anwender nie mehr um das kümmern und wenn der coder es dann weiterentwickelt hat man immer das was man will ;)

mfg he
 

DeletedUser

Gast
Ebenfalls stimmt, dass die Performance darunter leidet, da zunächst die Seiten "normal" geladen und erst danach mit den userspezifischen GM-Scripts "überarbeitet" werden.

die seite wird immer erst geladen und danach vom script bearbeitet/verändert. das war vorher schon und ist jetzt ebenso

da aktualisiere ich lieber alle paar Tage manuell meine GM-Scripte.

auch für dich nochmal: das ist eine lösung die wir uns haben einfallen lassen. entweder neue regeln + Datenbank oder scripte verbot im deutschen sprachraum. wir haben uns für ersteres entschieden, denn wir dachten das ist noch am besten für euch, für die com.
 
Reaktionspunktzahl
70
auch für dich nochmal: das ist eine lösung die wir uns haben einfallen lassen. entweder neue regeln + Datenbank oder scripte verbot im deutschen sprachraum. wir haben uns für ersteres entschieden, denn wir dachten das ist noch am besten für euch, für die com.

also friss oder stirb?
tolle einstellung,vor allem wenns aufgrund der ladezeiten,wie einige sie hier ansprechen,das ganze wohl noch ziemlich unausgereift zu sein scheint
 

DeletedUser

Gast
die seite wird immer erst geladen und danach vom script bearbeitet/verändert. das war vorher schon und ist jetzt ebenso
nicht ganz, da festplatten idR schneller arbeiten/lesen als netzwerkkarten+netzlatenzen
vorher: seite wird geladen, skript bearbeitet diese
jetzt: seite wird geladen, skript wird geladen, skript bearbeitet diese

auch für dich nochmal: das ist eine lösung die wir uns haben einfallen lassen. entweder neue regeln + Datenbank oder scripte verbot im deutschen sprachraum. wir haben uns für ersteres entschieden, denn wir dachten das ist noch am besten für euch, für die com.

Dafuer hier auch nochmal ein danke an das Team
 

DeletedUser

Gast
Sicherheitsbedenken

Mal als Tech-N00b eine Rückmeldung:
Im Rahmen der angekündigten Änderungen habe ich mal ein wenig recherchiert.
Dabei fiel mir besonders ins Auge:

http://wiki.greasespot.net/UnsafeWindow.
Dort heißt es u.a.

wiki.greasespot.net schrieb:
• USE OF UNSAFEWINDOW IS INSECURE, AND IT SHOULD BE AVOIDED WHENEVER POSSIBLE.

I-wo hier (im Haitech-Bereich?) hat doch jemand schon einen workaround für das unsafe.window-Verfahren beschrieben.
Warum kümmert sich offenbar niemand bei Innogames um einen Mindest-Sicherheitsstandard in Zusammenhang mit der Neuregelung?
Das wäre ja, meine ich, nicht so DER 'Mörderakt' und den Skriptern sollte es selbst naheliegen, diesen Modus zu vermeiden?!

:confused:
 

DeletedUser

Gast
Zu den Ladezeiten: Ich kann da keine besondere Verzögerung feststellen. Beim ersten Laden natürlich schon, aber danach scheint alles im Cache zu sein.
Beispiel Massenrekrutierung: Jede Gruppe hatte beim ersten Aufruf mit dem neuen Skript ein paar Sekunden Verzögerung. Danach lief alles wie vorher, nur eine neu angelegte Gruppe musste kurz wieder laden.
 

DeletedUser67288

Gast
die seite wird immer erst geladen und danach vom script bearbeitet/verändert. das war vorher schon und ist jetzt ebenso

auch für dich nochmal: das ist eine lösung die wir uns haben einfallen lassen. entweder neue regeln + Datenbank oder scripte verbot im deutschen sprachraum. wir haben uns für ersteres entschieden, denn wir dachten das ist noch am besten für euch, für die com.

Ich denke still80 hat die neue Problematik ausführlich genug erläutert, sodass auch du sie verstehst.

Was spricht eigentlich dagegen, dass Inno die GM-Scripte zum Download anbietet?
Ohne Gewähr, dass ich die Erklärung überlesen habe, aber die Argumente "keine Tickets aufgrund fehlerhafter Scripte" und "keine Updateprobleme" zieht ja nicht wirklich, wenn nun die Performance merklich leidet.

PS: Ja, auch ich bedanke mich, dass ihr euch (wieder einmal) für Scripte eingesetzt habt, aber es nervt, wenn ihr nun wieder mit den alten Totschlagargumenten in neuer Verpackung ankommt:
Würde Inno vernünftige Features ins Game integrieren (Massenrekrutierung ist beispielsweise ein guter Ansatz), hätten wir keine bzw. nicht mehr so ausschweifende Diskussionen oder gar Probleme mit Scripten.

@-Vanguard.-: Gerade nochmal ganz frisch getestet (nach geleertem Cache, um sicherzugehen); eine einfache Seite (Kaserne) wurde zügig "generiert in 46 ms", doch danach dauert es regelmäßig 3-5 Sekunden, bis die Seite fertig geladen hat (auch wenn man dieselbe Seite mehrmals lädt, Stichwort "Cache") - als einziges GM-Script ist dabei [7.4] Button Menue wie bei V6.5 aktiviert, natürlich upgedatet und wird daher bei jedem Laden einer Seite vom Inno-Server neu reingeholt und angewandt, falls ich das richtig sehe.
Ab und zu läuft es aber auch mal in 1-2 Sekunden ab (ebenfalls während des Tests ohne andere aktivierte Scripte), scheinbar abhängig von den aktuellen Zugriffen auf den Server?
 

DeletedUser

Gast
Ich glaube es nicht und wir werden sehen ob es bei einmal bleibt!
Nur noch ein Update ist eben genau das was mich dazu bewegt hat es ******** zu nennen da ich es nicht glauben kann und es ist auch nicht so und somit immernoch ******** und ich hoffe die Argumentation langt dir.
 

DeletedUser

Gast
nicht ganz, da festplatten idR schneller arbeiten/lesen als netzwerkkarten+netzlatenzen
vorher: seite wird geladen, skript bearbeitet diese
jetzt: seite wird geladen, skript wird geladen, skript bearbeitet diese

das ist richtig, hat allerdings ncihts mit dem zu tun was ich auf **BeNnY** seinem kommentar geschrieben haben.

@ Bit-Marder... sobald du argumente schreibst, können wir über deine argumentation reden.

@ **BeNnY** ich persönlich merke keinen nennenswerten performance verlust und ich nutze relativ viele scripte (kann auch an meiner leitung liegen = 32k )

auf das thema was inno einbaut und was nicht, möchte ich nicht genauer eingehen. denn darauf habe/haben ich/wir in dem sinne leider keinen einfluss.

wie auch schon mehrmals gesagt, ist inno im großen und ganzen gegen Userscripte(GM-Scripte) und es gibt nur 4 sprachräume(wenn ich mich nicht verzählt habe) in denen diese erlaubt sind.
 
Oben