You are not logged in.

Dear visitor, welcome to Runes of Magic EU. If this is your first visit here, please read the Help. It explains in detail how this page works. To use all features of this page, you should consider registering. Please use the registration form, to register here or read more information about the registration process. If you are already registered, please login here.

1

Sunday, November 5th 2017, 9:17am

Makros

Hi,

es wird für mich langsam Zeit, Makros zu erstellen. Das sollte mir nicht schwer fallen, da ich über Programmierkenntnisse verfüge (z.B. VB, VBA, C++ etc.). Nur benötige ich dafür eine Übersicht, um auf RoM-interne Ereignisse, Variablen, Eigenschaften, Anweisungen, Strukturen (bsp. IF THEN ELSE ENDIF oder Schleifen) usw. zugreifen bzw. diese benutzen zu können. Die Ausbeute bei der Suche im Internet ist leider sehr bescheiden.

Adi

torkilsd

Professional

Posts: 1,288

Location: Hinter den sieben Bergen

Occupation: InI Zwerch und BK Rima

  • Send private message

2

Sunday, November 5th 2017, 10:40am

es gibt einen eigenen forumsbereich für makros und addons. da solltest fündig werden.

3

Sunday, November 5th 2017, 2:10pm

Hi torkilsd,

ich bin fündig geworden. Allerdings erst mit dem Begriff "Makro". Der Begriff "Makros" (also Plural) listet lediglich unsere beiden Nachrichten auf. Das nenne ich eine äußerst dürftige Suchfunktion.

Adi

This post has been edited 1 times, last edit by "adibenter" (Nov 5th 2017, 2:24pm)


4

Sunday, November 5th 2017, 4:27pm

https://runesofmagic.gamepedia.com/List_of_Functions

das ist vermutlich eher was du suchst.

Nicht mehr 100% aktuell aber das meiste geht noch

459.283 LP, 413.572 pdef, 42584 pdmg, 54.194 Ausdauer, 6071 Parieren (Ritter/Krieger)
K100 W100 P100 M100 R100 S100

5

Monday, November 6th 2017, 1:58pm

Hallo creed228,

genau.

Adi

Blxxdrayne

Trainee

Posts: 140

Location: Rath

Occupation: Strg+C Strg+V

  • Send private message

6

Monday, November 6th 2017, 2:39pm

Ansonsten kann ich dir für testen einiger Funktionen das Addon - https://rom.curseforge.com/projects/luaexplorer - LuaExplorer empfehlen.

Damit kannst du auch diverse ingame Abläufe aufzeichnen, wie z.b. Chatnachrichten und deren Aufbau anschauen....

Lg
Was nicht darf, das kann nicht sein (Varg)

Darius1278

Intermediate

Posts: 1,215

Location: Oberschwaben

Occupation: Technischer Informatiker

  • Send private message

7

Monday, November 6th 2017, 6:48pm

Und da es noch keiner erwähnt hat.

Einige Makros findest du in diesem Beitrag:
Macro Liste/Sammlung

Mfg Darius
Wer einen Fehler findet, der darf ihn behalten...und natürlich wiederverwenden!!

8

Thursday, November 9th 2017, 10:36am

Hi an Alle,

vielen Dank für eure Unterstützung. Alles durchaus brauchbar. Nur reicht das alles nicht, um vernünftige Makros zu schreiben und schon gar nicht, um Addons zu programmieren. Ich habe mir einige recht ausgeklügelte Makros angesehen. Ich denke, die Personen, die sie schrieben, hatten schon ein wenig mehr Infos als die Seiten, die ich fand, hergeben. Zumal diese Seiten über die Beschreibung von /say, /cast, /use, /wait und noch einige mehr nicht hinauskommen. Gut, die lua-API (https://runesofmagic.gamepedia.com/List_of_Functions und https://runesofmagic.gamepedia.com/List_of_Events) mit ihren Beispielen ist gewiss hilfreich, aber nicht weiterführend. Was ich brauche, ist das, was ich anfänglich schrieb. Und jetzt schaue ich mir mal den luaexplorer etwas genauer an.

Adi

9

Thursday, November 9th 2017, 12:21pm

Vielleicht kann man dir spezifischer helfen, wenn du uns sagst, was für ein Makro/Addons du gerne schreiben würdest und welche Funktionen/Variablen/etc. dir fehlen.

Und um es der Vollständigkeit halber zu verlinken, auch wenn du das vermutlich schon selber gefunden hast Lua 5.1
[Stoffi]Weitergehen, ich bin nur ein Platzhalter<*)))O>< ..... <°))))><<

10

Thursday, November 9th 2017, 12:55pm

Hi Chazzard,

ich danke dir sehr. Ich Trottel habe im Browser immer nur "runes od magic macro" bzw. makro, makros oder "runes of magic lua" eingeben. Auf den Gedanken, einfach nur "lua" einzugeben, um dann an erster Position lua.org vorzufinden, bin ich nicht gekommen. Hinsichtlich der Makros will ich den Gebrauch meiner Skills automatisieren. Weiterhin (Ich bin Bewahrer) will ich nach 300 sec. "Schutz der Natur" und nach 900 sec. "Gestrüppschild" reaktivieren. Dafür denke ich vorab an Schleifen und Bedingungen im Sinne Dowhile Endo oder IF Else Endif. Nur kenne ich die der Makrosprache von RoM und deren genaue Syntax (von Beispielen, die ich mir angesehen habe) nicht. Auch scheinen lua-functions einbettbar zu sein. All das meine ich. Ein Kompendium für die Makro-Befehle wäre nicht schlecht.

Adi

11

Thursday, November 9th 2017, 1:20pm

"Makrobefehle" die man häufig findet:

Source code

1
2
3
4
5
6
7
8
9
10
Makrobefehl			Lua-Äquivalent

/s text				SendChatMessage(text, "say")
/p text				SendChatMessage(text, "party")
/g text				SendChatMessage(text, "guild")
/cast zauber		        CastSpellByName(zauber)
/use item			UseItemByName(item)
/run Lua-Code		        Lua-Code
/script Lua-Code	        Lua-Code
/wait zeit		        Keine allgemeine Entsprechung


Wenn es dir nur um ein Makro zum Buffen geht, dann könnte das so aussehen

Source code

1
2
3
4
5
/cast Buff1
/wait 1
/cast Buff2
/wait 1
...


Solche Sachen wie "Buffe nach 900 Sekunden nochmal" sind eher ungünstig zu bauen, weil (1) die Dauer, die man mit /wait warten kann, begrenzt ist (und der Platz in Makros oft zu kurz für mehrere "/wait" hintereinander ist) und (2) man nicht weiß, ob man zu dem gewünschten Zeitpunkt überhaupt in der Lage ist, seine Skills zu aktivieren. Und nein, man kann das /wait nicht in eine Schleife einbauen.

Wenn es dir um ein Makro geht, das dir deine Angriffsskills auswählt, lohnt sich ein Blick auf das Addon DIYCE, auch wenn du es nicht direkt benutzen willst, findest du dort die Funktionen, die du brauchst (Cooldowns, Buffabfragen, ...).
[Stoffi]Weitergehen, ich bin nur ein Platzhalter<*)))O>< ..... <°))))><<

This post has been edited 2 times, last edit by "Chazzard" (Nov 9th 2017, 4:25pm) with the following reason: Satzzeichen.


12

Thursday, November 9th 2017, 1:30pm

Hi an Alle,

vielen Dank für eure Unterstützung. Alles durchaus brauchbar. Nur reicht das alles nicht, um vernünftige Makros zu schreiben und schon gar nicht, um Addons zu programmieren. Ich habe mir einige recht ausgeklügelte Makros angesehen. Ich denke, die Personen, die sie schrieben, hatten schon ein wenig mehr Infos als die Seiten, die ich fand, hergeben. Zumal diese Seiten über die Beschreibung von /say, /cast, /use, /wait und noch einige mehr nicht hinauskommen. Gut, die lua-API (https://runesofmagic.gamepedia.com/List_of_Functions und https://runesofmagic.gamepedia.com/List_of_Events) mit ihren Beispielen ist gewiss hilfreich, aber nicht weiterführend. Was ich brauche, ist das, was ich anfänglich schrieb. Und jetzt schaue ich mir mal den luaexplorer etwas genauer an.

Adi
Moin,

was fehlt dir denn noch? Mehr als den Lua-Kram von gamepedia wirst du nicht bekommen, da es keine "offizielle" API mit Dokumentation etc. pp gibt. So gesehen hat Makro- wie Addon-Programmierung immer einen experimentellen Aspekt - und die tricky Tüftler haben als weitere Info-Quelle einzig ihre Erfahrung.

Was Automatisierung angeht...oha. Vielleicht ist es hilfreich zu erwähnen, das Addons/Makros in RoM nicht im Hintergrund laufen, im Prinzip gibt es ein "Ein Klick/Key => eine Aktion"-Schema. Soweit mir bekannt, gibt es keine Möglichkeit z.B. ein script zum Nachbuffen "für immer" laufen zu lassen, und nachdem man dieses angeworfen hat, etwas anderes zu tun....Wobei, gut, falls es das Event PLAYER_BUFF_CHANGED noch gibt - was man immer nicht so genau weiß, da eben keine offizielle API+Doku verfügbar - könntest du ein addon basteln, das dieses Event abfängt, prüft, ob Gestrüpp oder Schutz abgelaufen sind und ggfs. nachbufft....
Aber ob das vernünftig ist, nun ja...

LG,

Warze

P.S.: Wie du aus Chazzards post siehst, kann man in der Tat Lua-Code aus der API in einem Makro aufrufen. Aber Makros sind längenmäßig beschränkt...da gibt es zwar auch ein addon für (bzw. dagegen), aber da machst du besser gleich richtigen addon-code...
drbob war schon vergeben :D

Posts: 13,966

Occupation: Fachinformatiker Anwendungsentwicklung

  • Send private message

13

Thursday, November 9th 2017, 3:34pm

Wobei, gut, falls es das Event PLAYER_BUFF_CHANGED noch gibt - was man immer nicht so genau weiß, da eben keine offizielle API+Doku verfügbar - könntest du ein addon basteln, das dieses Event abfängt, prüft, ob Gestrüpp oder Schutz abgelaufen sind und ggfs. nachbufft....
Aber ob das vernünftig ist, nun ja...

Du hast genau diesen Fall bereits korrekt ausgeschlossen:
im Prinzip gibt es ein "Ein Klick/Key => eine Aktion"-Schema

Pro Tasten/Mausklick kann eben nur eine Aktion ausgeführt werden. Makros sind eine Ausnahme, ABER die laufne auch dirke tingame und somit sher begrenz. Makros können auch shcon lange keine Makros mehr aufrufen.

Wie Chazzard schon erwähnt ist was kämpfen/buffen angeht definitiv DIYCE zu empfehlen. in der AddOn Sektion gibts auch Threads dazu. Dort kannst du dann gerne nachfragen. Vielleicht kann ich dir, falls du das ntuzen willst, auch noch helfen. Speiel halt ne Weile nicht aktiv udn hab mit lau slesbt sonst nichts zu tun, beruflich .NET ;)
Man kann da eben auch nur eines zum buffen erstellen. Paar mal die taste drücken und alle buffs sind drauf.
Facebook RoM Gruppe!

M[0]/H[0]/P[0]/C[0]/K[0]/S[0]


Danke UA für die Sig :)

SO-Potting!

GrauerRat

Professional

Posts: 695

Location: Garda(Laoch inaktiv) & Rath(Dochas)

  • Send private message

14

Thursday, November 9th 2017, 10:26pm

Wie der Name auch schon sagt mit ntbuff, kann man diese Buffs und ähnliches ebenfalls nach Ablauf erneuern. Trigger ist Bewegung oder Aktionen, dazu muß der Effekt nur in eine Aktionsleiste gezogen und die Bedingungen vorgegeben werden.
An Tagen wo man verliert, ist man schlecht vorbereit oder übermütig!

Tersh, Lucy und ein Haufen anderer

15

Friday, November 10th 2017, 12:51am

Solche Sachen wie "Buffe nach 900 Sekunden nochmal" sind eher ungünstig zu bauen, weil (1) die Dauer, die man mit /wait warten kann, begrenzt ist
AFAIK wird nach 30 Minuten jedes Makro abgebrochen.
(und der Platz in Makros oft zu kurz für mehrere "/wait" hintereinander ist)[/quote]Zum einen gibt es ein Addon (auf Curse suchen), daß das etwas erhöht, zum anderen kann man mit minimalem Einsatz über ein Mini-Addon auch etliche Zeichen im Makro einsparen. Fürs Protokoll: Ich hab Makros mit 63 "/wait" im Einsatz (und natürlich stehen keine 2 "/wait" in 2 Zeilen direkt untereinander - bringt ja nix).
und (2) man nicht weiß, ob man zu dem gewünschten Zeitpunkt überhaupt in der Lage ist, seine Skills zu aktivieren. Und nein, man kann das /wait nicht in eine Schleife einbauen.
Beides ist wohl wahr.
Wenn es dir um ein Makro geht, das dir deine Angriffsskills auswählt, lohnt sich ein Blick auf das Addon DIYCE, auch wenn du es nicht direkt benutzen willst, findest du dort die Funktionen, die du brauchst (Cooldowns, Buffabfragen, ...).
Und in viele anderen Addons kann man auch mal reinschauen, was die wie machen ...
Burning Eyes, Rath, Bew100/Kr100/Ku100/Dr100/Sch100/M74 - Kettenträger FTW^^
If you get the number one, the only way is down! --- Adam Ant
Cojones kann man nicht kaufen! --- unknown
Losers always whine about their best. Winners go home and fsck the prom queen. --- John Patrick Mason
For I was talking aloud to myself. A habit of the old: they choose the wisest person present to speak to; the long explanations needed by the young are wearying. --- Gandalf, the White

16

Friday, November 10th 2017, 1:04pm

Hi Leute,

da sind ja noch eine Menge äußerst hilfreiche Statements dazugekommen. Ich danke euch allen. Die Statements werden mir eine Menge Grübelei ersparen.

Adi

17

Friday, November 10th 2017, 11:42pm

Hi Chazzard,

ich danke dir sehr. Ich Trottel habe im Browser immer nur "runes od magic macro" bzw. makro, makros oder "runes of magic lua" eingeben. Auf den Gedanken, einfach nur "lua" einzugeben, um dann an erster Position lua.org vorzufinden, bin ich nicht gekommen. Hinsichtlich der Makros will ich den Gebrauch meiner Skills automatisieren. Weiterhin (Ich bin Bewahrer) will ich nach 300 sec. "Schutz der Natur" und nach 900 sec. "Gestrüppschild" reaktivieren. Dafür denke ich vorab an Schleifen und Bedingungen im Sinne Dowhile Endo oder IF Else Endif. Nur kenne ich die der Makrosprache von RoM und deren genaue Syntax (von Beispielen, die ich mir angesehen habe) nicht. Auch scheinen lua-functions einbettbar zu sein. All das meine ich. Ein Kompendium für die Makro-Befehle wäre nicht schlecht.

Adi
Kleiner Tipp von mir, lies dich mal in den Tread um Diyce ein. Dort sind viele Dinge abgehandelt, die du benötigst. Aber glaub mir, ohne Einarbeitung in das Thema Lua-Programmierung geht es nicht.

Anbei ein kleines Programm-Schnippel aus meinem Macro - das ist ähnlich aufgebaut wie das Diyce, nur mit viel mehr Funktionen u. vieles ist Event-getriggert, wo es möglich ist. Zum Beispiel Pfeile direkt beim Spielstart herstellenstellen und ausrüsten, wenn entsprechender Bogen im Rucksack vorhanden ist.

Das Schnipsel sorgt z.B. dafür, dass beim Kundi/Bewahrer Entling-Opfer u. Gestrüppschild gebufft bzw. nachgebaufft werden. Dazu muss aber ein Tastendruck erfolgen - in der Regel ist man im Kampf und spammt da eh die Tasten ...

Source code

1
2
3
4
5
6
7
if SubClass == "WARDEN" then
		if not pBuffs["Entling-Opfer"] or (pBuffs["Entling-Opfer"] and pBuffs["Entling-Opfer"].time <= 25) then
		  CastSpellByName("Entling-Opfer")
		elseif not pBuffs["Gestr\195\188ppschild"] or (pBuffs["Gestr\195\188ppschild"] and pBuffs["Gestr\195\188ppschild"].time <= 25) then
		  CastSpellByName("Gestr\195\188ppschild")
		end
	  end
in memoriam Spirit of Magic

ehemals Member bei Immortâl

vergrault vom neuen Item-Shop ==> schon länger inaktiv auf GF-Servern

This post has been edited 1 times, last edit by "kmfde" (Nov 10th 2017, 11:55pm)


Grimthar

GM Bughunter™ (Tech&DE&US)

Posts: 1,498

Location: 127.0.0.1

Occupation: Destroyer of Worlds

  • Send private message

18

Saturday, November 11th 2017, 12:21am

Da ich das hier grad seh:
Statt dem namen selbst würd ich den Systemstring verwenden:
Variante a) TEXT("Sys123456_name")
Variante b) GetReplaceSystemKeyword("[123456]")

Dazu muss man "nur" die ID des Skills/Items/Buffs rausfinden
Relativ einfach mit sItemID oder AdvancedTooltipIDs (curse)
Alternativ funktioniert auch die RoM-Welten Datenbank: klick mich

Kurzer Nachtrag:
Passt auf was für Makros/Addons ihr schreibt und verwendet! Es kann zwar vieles (vollständig) automatisiert werden, jedoch kann das unter Umständen als botten gewertet werden, was laut AGB verboten ist (§4.3), ein prominentes Beispiel für Grauzone wäre z.B. PetAutoCraft.
Du willst testen und zukünftigen Content sehen? Bewirb dich als Tech-Teamler!

Du bist mit einer Entscheidung von mir nicht zufrieden? Kontaktiere meinen Superior SaitoHajime

19

Saturday, November 11th 2017, 2:22pm

c) Gleich die IDs abfragen und sich den Umweg über den Namen sparen


Spielverderber, Grimthar :grumble:
[Stoffi]Weitergehen, ich bin nur ein Platzhalter<*)))O>< ..... <°))))><<

Grimthar

GM Bughunter™ (Tech&DE&US)

Posts: 1,498

Location: 127.0.0.1

Occupation: Destroyer of Worlds

  • Send private message

20

Saturday, November 11th 2017, 7:26pm

c) Gleich die IDs abfragen und sich den Umweg über den Namen sparen

welchen Befehl würdest du da dann verwenden? UseSkill(x,y)?

Spielverderber, Grimthar :grumble:

immer wieder gerne ::mrcylinder: :D
Du willst testen und zukünftigen Content sehen? Bewirb dich als Tech-Teamler!

Du bist mit einer Entscheidung von mir nicht zufrieden? Kontaktiere meinen Superior SaitoHajime