Totorials für Scripte zum entfernen von double entrys in txt files und dem umrechnen von Rotationswerten

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
OSaftKiller
User
Beiträge: 1
Registriert: Donnerstag 7. März 2024, 17:30

Moin zusammen,

bin neu hier und suche nach Totorials die mir helfen das schreiben von Scripten in visual Studio Code zu lernen. Gekommen bin ich auf das Forum durch eine Frage die ich in einem anderem Forum gestellt habe und wo mir unter anderem grade geholfen wird.

https://www.computerbase.de/forum/threa ... t-29200675

Ich erstelle hobbymässig Mods für Crusader Kings 3. Dabei bin ich auf die Idee gekommen, das man viele Probleme die eigentlich elendig lange Arbeit benötigt auch mittels Script recht automatisiert lösen könnte. Daher denke ich das dass mir sehr gut helfen kann.

Was ich an sich an scripten brauche, kann man aus dem Computerbase Link rauslesen, ansonsten wäre es cool wenn ich Scripte Schreiben könnte, die ganze Textblöcke als doppelt erkennen und diese in Dateien entfernen kann. Wie im Threadtitel erwähnt brauche wäre es zumindest bei meinem aktuellem Problem auch cool, wenn ich das erstellen eines Scriptes zum invertieren von Rotationseinheiten können würde.

Meine Problemstellung nochmal zitiert:
Bzgl. der Rotation brauche ich das quasi für die Siege Units. Und zwar ist hier der höchste Wert denke ich 1 und der niedrigste Wert -1. Wenn 1 unterschritten wird, dürfte der Wert bei der Drehung wieder bei 1 sein. Daher müsste wenn man die Werte invertiert bei einem Ausgangswert von 1, dieser auf 0 gesetzt werden, bei einem Wert von 0.2 auf - 0.8 usw. Ist das mit Python möglich?
Bzgl. ganzer Textblöcke die doppelt sind, das sieht bei mir quasi so aus:

Bild

Bild

Die Blöcke sind nahezu identisch, bis auf die Kultur. Ziel wäre es in dem Fall, das der zweite Textblock der innerhalb der Datei gefunden wird und die selbe Charakter ID am oberem Ende hat, gelöscht wird. Die Charakter ID hier ist 70795.

Das muss nicht super schnell gelöst werden, aber es wäre cool wenn Ihr mir da vielleicht bzgl. Totorials vielleicht was empfehlen könnt, da ich selber keine Ahnung habe und auch nicht so recht weiß wie ich danach suchen soll und wo ich anfangen soll. Software die ich bevorzugt verwenden würde ist visuel Studio Code.

Mit besten Grüßen

Stefan
Benutzeravatar
__blackjack__
User
Beiträge: 13116
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@OSaftKiller: VSCode hat damit eigentlich nicht so wirklich viel zu tun, Python ist Python, egal welchen Editor man verwendet um den Quelltext zu schreiben.

Das Rotationsproblem ist im Grunde nicht einmal Python, das ist eine mathematische Frage. Wurde im anderen Forum ja bereits angesprochen, das man da eine Funktion für schreiben kann.

Code: Alles auswählen

In [20]: def mirror_rotation(x):
    ...:     return x + (-1 if x > 0 else 1)
    ...: 

In [21]: mirror_rotation(0.2)
Out[21]: -0.8

In [22]: mirror_rotation(-0.7)
Out[22]: 0.30000000000000004
Ein Grundlagentutorial für Python, das man mal durchgearbeitet haben sollte, gibt es in der Python-Dokumentation.

Ansonsten scheint das alles auch eher eine Logikfrage zu sein, die relativ unabhängig von der Programmiersprache ist. Für das Löschen von Blöcken mit IDs die mehrfach vorkommen, muss man sich halt überlegen woran man Anfang und Ende solche Blöcke erkennen kann, was man sich an Zustand merken muss — hier wohl einfach nur ein einfaches Flag ob man den Block in dem man sich gerade befindet schreiben muss oder nicht, und die IDs der Blöcke die man schon verarbeitet hat.
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
Antworten