• 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.

[Erlaubt] Deffinfo

  • Themenstarter DeletedUser130583
  • Startdatum

DeletedUser130583

Gast
Script-InformationenKonfiguration
Scriptname:Deffinfo
Autor:Boggler, updated durch eragon2496
Premium-Account erforderlich:ja
Aktuelle Version / Einreichdatum:2022-01-27
Auf welchen Ansichten wird das Script ausgeführt:Einstellungen, Truppenübersicht (Verteidigung/Unterstützungen), Dorfübersicht, Versammlungsplatz (Truppen)
Funktion des Scripts:Zählt auf der Seite >Truppen-Verteidigung< die Unterstützungen jedes Spielers zusammen und bietet eine Funktion um diese zu exportieren und die Truppen Spielerweise zurückzuschicken. Fasst auf der Seite >Truppen-Unterstützungen< die Truppen ausserhalb Dörfer- und Spielerweise zusammen (auch hier kann man die Infos exportieren und Spieler/Dörferweise Truppen abziehen) und zeigt auf den Seiten >Übersicht-Truppen-Im Dorf<, >Versammlungsplatz-Truppen< und in der Dorfansicht an, wieviele "Deffs" im Dorf sind. Deffs berechnen sich anhand der Kampfkraft einer definierten Deff welche man in den >Einstellungen< definieren kann.
Anleitung:Das Deffinfo Skript bietet in den Einstellungen eigene Einstellungsmöglichkeiten. Damit kann definiert werden was eine Deff ist.

17_userscript_1.jpg

Das Skript arbeitet danach mit den Gesamtdeffwerten der eingegebenen Einheiten. Auf verschiedenen Seiten werden dann diese Werte genommen um die relative Deffanzahl im Dorf anzuzeigen.

17_userscript_2.jpg

In der Übersicht Truppen->Unterstützungen werden zwei weitere Tabellen eingefügt:

17_userscript_3.jpg

Diese zeigen die auswärtigen Truppen sortiert nach Spieler und sortiert nach Dorf an.
In der Übersicht Truppen->Verteidigung wird eine weitere Tabelle hinzugefügt:

17_userscript_4.jpg

Dort wird die Deff die man selber erhalten hat nach Spieler sortiert.
Über den Export Button in den beiden Ansichten kann die Spielertabelle als BB Code Tabelle ins Forum exportiert werden.
Parameter / Konfigurationen:Keine
 
Zuletzt bearbeitet von einem Moderator:

DeletedUser

Gast
Erlaubt
 
Zuletzt bearbeitet von einem Moderator:

DeletedUser104357

Gast
Deffvorgaben

Es lassen sich bei mir die Werte für die Deffvorgabe in den Einstellungen nicht ändern. Außerdem stehen in den letzten vier Feldern keine Werte drinn.
 

DeletedUser130583

Gast
mal andere scripte auf der seite deaktiviert?

welche welt? bögen oder nicht?

bei nicht bögen welten gibt es einige fehler da es da nicht getestet wurde. hatte die tage wenig zeit aber ich bin dran
 

DeletedUser104357

Gast
Habe auch schon alle anderen Skripte deaktiviert.
Welt mit Bögen, W67.

Die Ankunftzeiten in der Dorfübersicht laufen mit diesen Skript auch nicht weiter.
 

DeletedUser84461

Gast
Leider sind im Moment noch kleine Fehler drinn erhalten, aber sobald die alle raus sind wird das ein für mich unverzichtbares Script.

2 kleine Ideen meinerseits zusätzlich:

Im VP unter Truppen sieht man ja die Entfernung in Felder.
Kann man diese evt auch sotieren lassen nach Entfernung?

Unter Truppen -> Verteidigung sieht man ja die Zusammenfassung.
Könnte man dort evt auch das Häckchen setzen um von dort aus die Truppen zurück zu schicken?
 

DeletedUser130583

Gast
Den Fehler auf der Dorfansicht habe ich schon behoben (kommt in der nächsten Version).
Nach Entfernung sortieren ist ne gute Idee, ich schau dass ich das auch dazubaue. Alle Truppen eines Spielers zurückschicken hatte ich mir auch schon überlegt, nur da hatte ich die Funktion schon gebaut und keine Lust das komplett neu aufzubauen. Wird vielleicht auch noch kommen aber zuerst Bugfixes und Export von auswärtigen Truppen.

@Andy was sagt die Fehlerkonsole? (im FF unter strg shift j, in opera strg shift o. zuerst alles löschen und auf javascript stellen, dann die seite neu laden)
 

DeletedUser

Gast
das script gefällt mir echt gut

hätte da auch noch ne kleine Idee wenn ich dürfte

Unter der Verteidigungsansicht sieht man ja wieviel Deff bei einem selbst steht
Könnte man das so umbauen das auch alle Spieler aufgelistet werden bei denen deff steht?
Also bei den spielern die ich unterstütze?

Könnte man auch so weit treiben das in Dörfer zu untergliedern, dann fänd ich dan script wunderbar und ich wüsste immer wo meine Deff rumsteht
 

DeletedUser130583

Gast
Nach Dörfern aufgelistet ist die Funktion eigentlich schon enthalten...siehe den vierten Spoiler

Steht aber auf meiner to do Liste, das auch nach Spielern zu ordnen und dort auch ne Exportierfunktion zu bauen
vielleicht finde ich die Tage Zeit dafür
 

DeletedUser130583

Gast
wurde mir schon berichtet, wie gesagt wurde es nur in Opera getestet^^

auch hier wieder: wenn ich mal zeit und muße habe... :D
 

DeletedUser

Gast
Echt schick nur lassen sich die werte echt nicht ändern, da fehlt der Ok oder Speicherbutton :D
 
Reaktionspunktzahl
1
Sie lassen sich denke ich schon ändern. ;-)
Allerdings nur mit etwas gefummle und etwas wissen über das Script und den localStorage.

Als erstes Script installieren.

Dann STGR+SHIFT+[K] drücken.
Hier geht dann die Konsole auf.

dann localStorage.wert="sAnzahl";
eingeben und Enter drücken.

Wert steht hierbei für den Wert den ihr ändern wollt.
zb. prefix_deffscriptdeWELT_einedeff_0 für Welt die Welten-zahl angeben.
die Zahl _0 steht für speer hier könnt ihr einfach durch zählen 0 1 2 3 4 5 6 7 8 9 so wie die eingabe felder der Einheiten in den Einstellungen angegeben sind.

Somit würde man für das ändern der Speere auf W 35 auf 6000 das hier angeben:
Code:
localStorage.prefix_deffscriptde35_einedeff_0="s6000";
für schwert dann eben:
Code:
localStorage.prefix_deffscriptde35_einedeff_1="s6000";

Leider werden die Werte der deff nicht ausgerechnet und angezeigt aber in der Dorfansicht bekomme ich den gleichen wert wie bei Opera angezeigt.

Da ich nicht alle Funktionen getestet habe kann ich nicht sagen das alles geht aber ein teil geht zu mindestens.

Bei fragen hier fragen oder mich im Skype unter "robottercamp" anschreiben.
 

DeletedUser130583

Gast
man braucht nicht zwingend einen ok oder speicherbutton dafür. bei jeder änderung wird automatisch gespeichert aber wie gesagt ich spiele DS nur mit Opera und habe es auch nur da getestet (und da funktioniert es auch)
die storageklasse von hypix habe ich mir nicht weiter angeschaut, es hat mir gelangt, dass sie funktioniert^^ aber das lässt sich sicher auch für Firefox umbauen


Vielen Dank an Mausmajor für die Erklärung ;)
 
Zuletzt bearbeitet von einem Moderator:
Reaktionspunktzahl
1
man braucht nicht zwingend einen ok oder speicherbutton dafür. bei jeder änderung wird automatisch gespeichert aber wie gesagt ich spiele DS nur mit Opera und habe es auch nur da getestet (und da funktioniert es auch)
die storageklasse von hypix habe ich mir nicht weiter angeschaut, es hat mir gelangt, dass sie funktioniert^^ aber das lässt sich sicher auch für Firefox umbauen


Vielen Dank an Mausmajor für die Erklärung ;)

Ich hab noch nicht ganz verstanden warum du so einen aufwand betreibst mit der Stronge klasse.

Wenn ich die Tage zeit habe schau ich mir das mal an und würd dir dann wenn ich zu einem Ergebnis komme ne PN mit meinem Ergebnis zukommen lassen.

LG Tobi
 

DeletedUser

Gast
man braucht nicht zwingend einen ok oder speicherbutton dafür. bei jeder änderung wird automatisch gespeichert aber wie gesagt ich spiele DS nur mit Opera und habe es auch nur da getestet (und da funktioniert es auch)
die storageklasse von hypix habe ich mir nicht weiter angeschaut, es hat mir gelangt, dass sie funktioniert^^ aber das lässt sich sicher auch für Firefox umbauen


Vielen Dank an Mausmajor für die Erklärung ;)

Ja stimmt schon, ich spiele mit FF aber trotzdem speichert er nichts ;)

Hier mal die Fehlermeldung

: Zeitstempel: 24.01.2013 09:52:23
Fehler: ReferenceError: changed is not defined
Quelldatei: http://scripts.die-staemme.de/gm-scripts/deffinfo.js
Zeile: 298
 

DeletedUser130583

Gast
Ich hab noch nicht ganz verstanden warum du so einen aufwand betreibst mit der Stronge klasse.

Wenn ich die Tage zeit habe schau ich mir das mal an und würd dir dann wenn ich zu einem Ergebnis komme ne PN mit meinem Ergebnis zukommen lassen.

LG Tobi

Ich habe hier im Forum geschaut, wie andere Scripter Daten beim Opera abspeichern, so bin ich auf die Storageklasse gestoßen.
Wenn du ne andere Idee hast, würd ich sie gerne verwenden. kannst mich ja in Skype anschreiben (boggler2306)
 
Reaktionspunktzahl
0
Das Problem liegt nicht an der Storage-Klasse.
Diese wird ja auch erfolgreich beim Custom-Deff-Requester verwendet.

Der Fehler liegt eher im Gültigkeitsbereich der changed() Funktion.
Du rufst sie direkt im Skript vor der Deklaration auf.
Wenn ich den Aufruf hinter die Deklaration verschiebe, kommt keine Exception mehr beim Laden des Skripts auf der Einstellungsseite.

Ich schätze die Funktion ist dann auch nicht nach Ausführen des Skript sichtbar, da du ja alles per HTML Strings erstellst und dann wahrscheinlich die Referenz auf changed() nicht klappt.
Da mach ich eigentlich immer alles über das DOM und erstell die Tags mit createElement und füg onkeyup per addEventlistener("keyup",changed,null) hinzu.
Das macht den Code übersichtlicher, kürzer und funktioniert sicher.

Kannst ja mal überlegen, das dahingehend umzuschreiben. ;)
Helf dir gern weiter; bei Fragen einfach ne PN oder per Skype: timOkills.

Falls du eine andere aus meiner Sicht elegantere Methode suchst zum Speichern, wär übrigens der HTML5 localStorage in Kombination mit JSON eventuell was für dich.
Sollte mit allen aktuellen gängigen Browsern funktionieren und ist sehr angenehm zu programmieren.
Falls mein eigenes Skript bald mal durch die Vorstellung kommt, kannst du dir es dort ja abgucken. ;)

MfG Tim
 
Reaktionspunktzahl
0
Hab eben etwas nachgelesen beim Greasespot Wiki.
Und onkeyup einen string zu übergeben ist anscheinend echt keine so gute Sache, da das erst beim Aufruf ausgewertet wird, also dann wenn changed garnicht mehr existiert.
Hier kann man das genauer nachlesen:
http://commons.oreilly.com/wiki/index.php/Greasemonkey_Hacks/Getting_Started#Pitfall_.231:_Auto-eval_Strings

Die dort vorgeschlagene Methode ist, wie schon von mir vorgeschlagen, das ganze per addEventlistener zu lösen.
Um mit HTML die Elemente zu erzeugen und trotzdem addEventlistener aufrufen zu können, ist folgender Link eventuell hilfreich:
http://wiki.greasespot.net/Create_DOM_Structure_With_innerHTML

Obwohl ich ja das Erzeugen per Methoden angenehmer und eleganter finde.
Hier ist auch eine nette Hilfsfunktion, um das etwas zu vereinfachen:
http://wiki.greasespot.net/Create_DOM_Structure

Hoffe dir hilft das ganze etwas. :)
Bei Fragen steh ich wie gesagt gerne zur Verfügung.

MfG Tim
 

DeletedUser135666

Gast
ich liebe dieses script!

aber seit gestern funktioniert es einfach nicht mehr bei mir!

hat immer super geklappt aber nun ist es wie weg!

hab es schon 2 mal neu geladen aber bringt alles nix..

gibts hier infos diesbezüglich?

greez fabi
 

DeletedUser131777

Gast
Bei mir läuft es auch nicht mehr.

Auch bei den Einstellungen/Einstellungen ist nichts mehr vorhanden.

Cache leeren, neue Installation, alle anderen Scripte deaktivieren hat nichts genutzt.

VG
 

DeletedUser130583

Gast
Leider hat die Prüfung meines letzten Scriptupdates durch die Mods diesmal (eigentlich wie immer) so lange gedauert, dass in der Zeit das nächste DS-Update eingespielt wurde und mein Script somit schon veraltet in die Datenbank kam.

Ich schaue baldmöglichst nach den Fehlern und stelle ein Update vor.
Wenn ich eh dabei bin werde ich meine Glaskugel befragen, was in den nächsten drei DS-Versionen geändert wird und das Script entsprechend anpassen, dann geht sich das mit der üblichen Überprüfungszeit auch aus ;-)
 
Oben