[Skript/Tool] Makrolauncher V.05 Makros für nicht makrofähige Tastaturen

Hier ist der ideale Ort um über Scripts und Mods für X³: Terran Conflict und X³: Albion Prelude zu diskutieren.

Moderators: Moderatoren für Deutsches X-Forum, Scripting / Modding Moderators

Samstag111
Posts: 20
Joined: Sun, 2. Mar 08, 22:08
x4

Post by Samstag111 »

Überschneidungen mit anderen Scripten oder Hotkeys sind eigentlich fast ausgeschlossen.

Ich werde in den nächsten 2 Stunden nochmal sicher gehen, dass ich die richtigen Scripte in das Archiv gepackt habe.

Oder funktioniert es bei anderen?
Samstag111
Posts: 20
Joined: Sun, 2. Mar 08, 22:08
x4

Post by Samstag111 »

Kannst Du Dir mal folgende Datei herunterladen, in den Scripts ordner kopieren und im SE ausführen?

http://files.filefront.com/pluginsahotk ... einfo.html

Anschließend schau mal unter Nachrichten oder Nachrichtenlogbuch (wie auch immer das im Spiel noch hieß)!
User avatar
ScRaT_GER
Posts: 1962
Joined: Tue, 8. Jan 08, 18:19
x3tc

Post by ScRaT_GER »

Also bei mir funktionierts...

Du könntest zwar das Setup-Skript noch etwas einfacherer gestalten, indem du
001 $hotkeyarray = get global variable: name=$sa.hotkeytomakro.hotkeyarray
002 if not is datatyp[ $hotkeyarray ] == DATATYP_ARRAY

durch

001 if not get global variable: name=$sa.hotkeytomakro.hotkeyarray

ersetzt, also die Überprüfung "$hotkeyarray = DATATYP_ARRAY" weglässt, aber funktionieren sollte das trotzdem.

@ Tim-O
Evtl. einfach nochmal das Uninstallskript laufen lassen, direkt danach das Installskript. Vielleicht hilft das...

MfG,
ScRaT
Tim-O
Posts: 182
Joined: Thu, 15. Dec 05, 22:02
x3tc

Post by Tim-O »

Ich habs jetzt einfach gelöst, indem ich das setup-skript manuell ausgeführt hab. Weiß der Teufel, warum das nicht automatisch ausgeführt wurde. Jetzt läuft alles ohne probleme.

Wäre es nicht lustig, wenn wir hier ein paar nützliche Makros teilen würden? Ich hab mir z.B. eins gemacht, mit dem man den Skript Editor öffnen kann-
Samstag111
Posts: 20
Joined: Sun, 2. Mar 08, 22:08
x4

Post by Samstag111 »

@ScRaT_GER, nochmal Danke für den Hinweis... ich habe es irgendwie verpeilt, dass noch zu ändern. In der nächsten Version wird das Skript dementsprechend vereinfacht.

@Tim-O, freut mich, dass es nun funktioniert! Es ist mir allerdings ein Rätsel weshalb du das Setupscript manuell ausführen musstest...
Zu Deiner Idee: Finde ich spitze!!! Würde mich echt freuen wenn es zu so einem Austausch kommt! Leider werde ich in den nächsten Tagen wahrscheinlich nicht zum X3-TC spielen kommen... (ist halt kein Spiel, das man mal schnell zwischendurch spielt.....!) Aber danach trage ich auch gerne meine Makros, die ich mir erstelle, zusammen.

Mich würde auch sehr interessieren ob,
1. die Makros in vernünftiger Geschwindigkeit aufgerufen werden (nach Hotkeybetätigung)
2. die Änderung der Prozesspriorität bei euch nötig war
3. ob Tasten verschluckt werden
4. und ob Ihr das Tool nützlich findet!

evtl. noch ob ich eine Version herausbringen soll, die in einem ersten Schritt die Makros selbstständig an die FPS anpasst und vllt. noch später selbst Makros erstellen und verwalten kann (beides nur wenn das Tool entsprechend von vielen genutzt wird....)
Tim-O
Posts: 182
Joined: Thu, 15. Dec 05, 22:02
x3tc

Post by Tim-O »

Samstag111 wrote:@ScRaT_GER, nochmal Danke für den Hinweis... ich habe es irgendwie verpeilt, dass noch zu ändern. In der nächsten Version wird das Skript dementsprechend vereinfacht.

@Tim-O, freut mich, dass es nun funktioniert! Es ist mir allerdings ein Rätsel weshalb du das Setupscript manuell ausführen musstest...
Zu Deiner Idee: Finde ich spitze!!! Würde mich echt freuen wenn es zu so einem Austausch kommt! Leider werde ich in den nächsten Tagen wahrscheinlich nicht zum X3-TC spielen kommen... (ist halt kein Spiel, das man mal schnell zwischendurch spielt.....!) Aber danach trage ich auch gerne meine Makros, die ich mir erstelle, zusammen.

Mich würde auch sehr interessieren ob,
1. die Makros in vernünftiger Geschwindigkeit aufgerufen werden (nach Hotkeybetätigung)
2. die Änderung der Prozesspriorität bei euch nötig war
3. ob Tasten verschluckt werden
4. und ob Ihr das Tool nützlich findet!

evtl. noch ob ich eine Version herausbringen soll, die in einem ersten Schritt die Makros selbstständig an die FPS anpasst und vllt. noch später selbst Makros erstellen und verwalten kann (beides nur wenn das Tool entsprechend von vielen genutzt wird....)
1. Ich hatte es schon ein oder zwei mal, dass Tasten verschluckt wurden, als die FPS sehr niedrig waren. Ich hab mir gerade ein Makro gemacht, das einem angewählten Schiff den Befehl zum abfeuern einer Medusa geben soll. Das wird in Kampfeinsätzen betätigt werden. Da wird sich dann scho rausstellen, wie zuverlässig das funktioniert (hab den delay erst mal auf 50,50 gesetzt).
2. Kann ich noch nix zu sagen. Wenn nicht viel los ist klappts jedenfalls einwandfrei.
3. siehe 1.
4. Ja, sehr ;)

Ein kleines Manko hab ich aber zu beklagen: Ich finds nervig, dass das Fenster des Makrolaunchers nicht minimierbar ist. Ich Alt-Tabbe öfters mal aus dem Spiel um was im Forum nachzusehen, t-files für ein Skript anzupassen, logdateien anzuschauen und sowas. Da ist ein Fenster, das man nicht minimieren kann, etwas störend.

So, jetzt mal die Hotkeys im Kampfeinsatz testen ;)
User avatar
ScRaT_GER
Posts: 1962
Joined: Tue, 8. Jan 08, 18:19
x3tc

Post by ScRaT_GER »

Sehe das wie Tim-O.

Die Makros laufen in der Regel in der richtigen Geschwindigkeit, allerdings werden manchmal, bei geringen Fps, welche verschluckt, sodass man in ein völlig falsches Menü kommt.
Im Kampfeinsatz konnte ich das Tool momentan noch nicht testen, bin gerade auf dem Handelstrip mit 0 abgegeben Schüssen. =)

Mir ist allerdings etwas sehr merkwürdiges passiert, weswegen ich das Skript momentan wieder deinstalliert habe (nur temporär).
Nachdem ich das Skript installiert hatte, funktionierte ein Befehl im Skript-Editor nicht mehr.
Und zwar der Befehl "get all global variable keys, starting with".
Könntest du, da du dich ja inzwischen mit dem SE auskennst, vielleicht mal folgendes Skript ausprobieren:

001 set global variable: name='test.var' value=1
002 $test = get all global variable keys, starting with='test'
003 write to player logbook $test
004 set global variable 'test.var' = null
005 return null

Es interessiert mich einfach nur, ob der Befehl "get all global variable keys, starting with" bei dir noch funktioniert. Wenn ja, liegt das Problem irgendwo bei meinem Spiel...

Wäre sehr nett, wenn du das kurz ausprobieren könntest.

MfG,
ScRaT
Samstag111
Posts: 20
Joined: Sun, 2. Mar 08, 22:08
x4

Post by Samstag111 »

Danke für Euer Feedback!!

@Tim-O; es freut mich, dass alles soweit gut funktioniert. Ich weiß nicht welcher Teufel mich geritten hat eine Toolbox, die nicht minimierbar ist, zu verwenden. Werde ich ändern.

@ScRaT_GER; werde ich auf jeden Fall spätestens morgen testen!! Ich poste dann die Resultate hier!
User avatar
ScRaT_GER
Posts: 1962
Joined: Tue, 8. Jan 08, 18:19
x3tc

Post by ScRaT_GER »

Gerade als ich anfangen wollte weiter zu skripten funktioniert dieser Befehl wieder nicht. Liegt also höchstwahrscheinlich nicht an deinem Skript.
Wäre trotzdem nett, wenn du es kurz ausprobieren würdest. Ist ja schnell erledigt.

MfG,
ScRaT
User avatar
Ded_Moros
Posts: 76
Joined: Mon, 6. Nov 06, 22:43
x3tc

Post by Ded_Moros »

Ich habe es vor ein paar Wochen (als wir die HotkeyDiskussion das letzte Mal hatten) auch mit diesem Befehl versucht, über das HotkeyRemovalScript. Trotz mehrerer vorhandener globaler Variablen, ich glaube es waren so um die 40, hat dieser Befehl nur den MarineTrainManager gefunden, egal nach welchem String ich gesucht habe.
Auch wenn es dir nicht hilft: Bist also nicht der Einzige...

mfg
Väterchen Frost
User avatar
NiLifLiTz
Posts: 181
Joined: Sat, 11. Dec 04, 02:00
x4

Post by NiLifLiTz »

das ja klasse Sache :)

liesse sich die hotkey dann mittels script automatisch aufrufen?

Szenario:
Auf längeren Reisen klicke ich nach jedem Tordurchsprung die Tastenfolge
F2 - num0 - num0,
um eben in die gemütliche Bildschirmschoner freundliche Aussenansicht zu gelangen :)

Prinzipiell ist mir hiermit also schon geholfen, ein

if $tordurchflug=TRUE press hotkey

aber wäre das i-Tüpfelchen :) ?!
(X)
User avatar
ScRaT_GER
Posts: 1962
Joined: Tue, 8. Jan 08, 18:19
x3tc

Post by ScRaT_GER »

Das ginge generell schon, allerdings müsstest du dafür ein extra Skript schreiben, das erkennt wenn dein Schiff gesprungen ist. Dieses Skript kann dann den Makrolauncher aufrufen.

Ich würde dir empfehlen es einfach manuell zu machen. Ist ja auch nicht soo viel arbeit, nach dem Springen kurz eine Taste zu drücken.=)

Zum Skript:
Scheint nicht mehr wirklich dran gearbeitet zu werden, aber wozu auch?
Funktioniert doch wie es soll!

MfG,
ScRaT
User avatar
NiLifLiTz
Posts: 181
Joined: Sat, 11. Dec 04, 02:00
x4

Post by NiLifLiTz »

ui, danke für die schnelle Antwort :)

Nun, dann wäre ich ja immer noch bei einer Taste nachm Sprung anstatt derer drei...

Vater des Gedanken ist, dass, wenn ich zB vom Königstal in den Hafen der Königin einlaufen möchte, ich derweil nicht vom Sofa aufstehen muss,
und dennoch von abwechslungsreichen Bildern verwöhnt werde ;)

(da ich nicht viel mehr Schüsse als Du aufm Konto habe ist Shift-H sowieso Pflicht :))

wäre ein solches Script denn eine große Sache ?
Bin was scripten im Allgemeine angeht etwas bewandert,
aber habe noch nix mit dem SE bzw. für X gemacht...
(X)
User avatar
ScRaT_GER
Posts: 1962
Joined: Tue, 8. Jan 08, 18:19
x3tc

Post by ScRaT_GER »

Es ginge ja nur ums Spielerschiff oder?

Dann könntest du folgenden Einzeiler verwenden:

[PLAYERSHIP] connect ship command/signal SIGNAL_CHANGESECTOR to script <hier steht das skript, das Autohotkey signalisiert etwas zu drücken> and prio 0

Das Skript, das gecallt wird, sollte dann eins der 8 Hotkeyskripte sein.
Evtl. musst du noch einen kleinen wait einbauen (in das Hotkeyscript, vor "write to logfile"), da ich nicht genau weiß, wann dieses Signal gesetzt wird.

Aber das ist wohl alles.
Evtl. solltest du dann noch ein Skript schreiben, das die Verküpfung des Skripts zum Signal wieder zurücksetzt, da sonst auch beim Schiffswechsel das alte Spielerschiff immer wieder das Skript aufrufen würde.
Auch das ist ein Einzeiler: [PLAYERSHIP] set script command/signal SIGNAL_CHANGESECTOR to default global behaviour.

Sollte etwas nicht klappen, einfach nachfragen.

MfG,
ScRaT
Samstag111
Posts: 20
Joined: Sun, 2. Mar 08, 22:08
x4

Post by Samstag111 »

Entschuldigt meine Abwesenheit & den fehlenden Support.
Natürlich sind noch einige Dinge verbesserungswürdig.

Ich muss im Moment allerdings andere Probleme bewältigen.

Ich hoffe, dass bis dahin einige von dem Script + Tool profitieren.

Verbesserungen liegen bis dahin auf Eis.
User avatar
ScRaT_GER
Posts: 1962
Joined: Tue, 8. Jan 08, 18:19
x3tc

Post by ScRaT_GER »

Nur die Ruhe... =)

Was ich noch gerne im Skript haben würde, wäre irgendeine Möglichkeit die Hotkeys zu bennenen, ohne im Skripteditor rumzufummeln.

Dann hätte ich noch eine Frage:

Kann Autohotkey Makros aus einer Textdatei auslesen? Wenn das ginge, könnte man sozusagen ingame die Makros erstellen (und bennenen), man hätte eine Art "Makromanager".
Das würde die ganze Sache nochmal einsteigerfreundlicher machen.
Nur so ein Gedanke.

MfG,
ScRaT
Samstag111
Posts: 20
Joined: Sun, 2. Mar 08, 22:08
x4

Post by Samstag111 »

Auch wenn etwas Zeit verstrichen ist...

Prinzipiell gute Idee, ScRaT_GER

Mit ist nicht bekannt, dass Autohotkey eine Textdatei auslesen kann.
Allerdings kann es die .shk (?) - Dateien auslesen.

Theoretisch wäre es also möglich, dass ich den Makrolauncher so programmiere, dass er die in der von X3 erzeugten Textdatei angegebenen Tasten (als text) in eine .shk "übersetzt".

Anschließend muss natürlich Autohotkey durch den Makrolauncher veranlasst werden, diese .shk aufzurufen. (ist vermutlich machbar)

Natürlich müsste dann Autohotkey im Hintergrund weiterlaufen.

Dies hätte auch den Vorteil, dass sich auch Anpassungen an die FPS in die .shk einbringen ließen.

Allerdings haben bisher erst 15? Leute den Makrolauncher heruntergeladen. Ich weiß noch nicht wirklich ob ich noch großen Aufwand betreiben sollte.

Beste Grüße, Samstag111

Return to “X³: Terran Conflict / Albion Prelude - Scripts und Modding”