Es gibt Spiele, wie zum Beispiel
Mage Knight
, die werden schon eine Weile nicht mehr gedruckt.
Gründe gibt es bestimmt viele: Verlag hat die Rechte nicht mehr, es gibt keinen Publisher, etc.
Meistens begegnen mir diese Art Spiele in Foren-Threads, wo jemand das Spiel so anpreist, dass ein Teil von mir dieses Spiel idealisiert.
Dann gibt es meist nur gebrauchte Exemplare für horrende Preise. Oder sie werden nur selten im Jahr angeboten und man braucht Glück zur richtigen Zeit am richtigen Ort zu sein.
Manchmal gibt es "Spiritual Successors", oft jedoch auch nicht.
Spricht eigentlich was dagegen dasselbe Spielprinzip in einer erneuten Iteration nochmal zu bringen?
Das Spielprinzip an sich ist nicht geschützt (vermute ich). Und genau dasselbe Spiel kriegt man doch eh nicht mehr hin.
Was ich sagen will: Warum nicht einfach ein Spiel (oder Spielprinzip) wieder aufleben lassen?
Zumindest wäre es eine gute Übung im Spiele-erschaffen und somit eine Gelegenheit ins Tun zu kommen.
Keine Zeit für YouTube-Videos?
Dann lass Dir doch einfach den Inhalt zusammenfassen!
So mach ichs derzeit:
- Browser: Firefox
- KI: Deepseek
1. Link (oder: URL) vom Youtube-Video kopieren
- Zum Youtube-Tab wechseln
- Strg+L (markiert die URL in der Adressleiste)
- Strg+C (kopiert den markierten Text in die Zwischenablage)
2. Transkript-Service aufrufen
- Klick auf: Transcript-Seite
Alternativ, wenn Ihr schonmal auf der Seite wart:
- Strg+T (öffnet neuen Tab)
- Strg+L, "youtubet" eingeben (dann wird er bei mir schon angezeigt).
Wenn die Transkript-Seite schon offen ist:
Strg+Tab (springt in den offenen Tabs nach rechts)
Strg+Shift+Tab (springt nach links)
3. Transkript erhalten und verarbeiten
- Klick ins Textfeld ("Paste YouTube URL here...")
- Strg+V (URL aus der Zwischenablage einfügen)
- Klick auf "Get Free Transcript"
(bischen scrollen, Werbung wegklicken)
- Klick auf "Copy" unter der Video-Vorschau. (Das Transkript ist nun in der Zwischenablage. Ab hier kann der Tab geschlossen werden.)
- Texteditor öffnen, bspw.
Notepad++
- Strg+V (Transkript einfügen)
- Speichern als Textdatei, bspw. im Ordner "KI Anlagen".
- In der KI diese Textdatei anhängen.
- Ich frage meist auf Englisch: "Please analyze and summarise the attached video-transcript".
Wechsel zu Pascal
Für mich schloss sich ein Kreis in meinem ewigen Programmier-Dillema.
- In der Schule habe ich mit Turbo Pascal das Programmieren kennengelernt.
- Ein Freund von mir hatte noch seine alten Spiele auf Disketten und die sind in Pascal programmiert.
- Da war ein
Youtube-Video
das mir zu der Zeit angeboten wurde.
Daraufhin habe ich
FPC (Free Pascal Compiler)
,
Lazarus (IDE)
und die
Castle Game Engine
entdeckt.
Mich reizt der Ursprungsgedanke des Pascal Erfinders (sinngemäß):
"Eine Programmiersprache die fördert guten, strukturierten Code zu schreiben."
Dass Pascal noch unter den Top10 der weltweit genutzten Sprachen ist, war auch ein kleiner Stupser in diese Richtung.
So you created a TextureRect-node as a child node? And you want to
manipulate the image you have loaded into it?
Add Pixels, delete Pixels, move Pixels, etc.
Of course you easily find get_image() via google and the
docs, but when you finally realize that you have to write the modified image back to the texture, you are not offered the set_image() in the code-editor!
The documentation may offer an explanation, but instead of looking for it we are of course googling and searching on forums and on youtube... (or asking the AI)
What clicked for me was to understand that calculations are differentiated by redot -or by computers in general for that matter.
"Painting image to screen" vs. "Manipulating the image"
The following paragraphs are from a conversation with deepseek (AI).
I quote them to show how informal you can talk to an AI and how you can use it to affirm your hunches. (In the conversation i use Godot instead of Redot to not overcomplicate things.)
oh nice explanation.
so i load an image to the texture-rect node i created.
godot loads this into a memory-part that is optimized for painting it onscreen.
if i want to change it, a copy is made that is not yet visible and therefore can live in memory without showing it. i then perform changes and if i am finished it is then loaded into the memory-part that is optimized to show onscreen.
so it is balancing ressources but still empowering me as a gamedesigner, right?
gpu efficiency has to do with the graphics card being highly specialized for exactly these requirements: showing onscreen, etc. over the years there has been lots of adding to gpu functionality, but the principle behind is, i guess, is that the graphic functions are hard coded, similar to how a multiplexer might be hardcoded into a usb receiver.
whereas the cpu is a general computing cpu. it doesnt have the specialization but it can be fast with a multitude of requirements. like a jack-of-all-trades.
please comment more verbose again
So my personal explanation to myself is this:
I add an image as a texture to my TextureRect.
As a default Redot shows it on screen, and so it is kept in a form that is easy to load into the gpu -the form being an object that doesn't need to be written to because it is only read to print to the screen.
If I as a game designer want to manipulate the image (example: set bright red pixel), I first have to get this image into a form that allows me to alter it. This has to be done by myself. The general idea is to take the information that make up the image (the pixel-info) and load it into an object that has member-functions that allow modification.
This new modifiable object seems to be handled by the cpu and its memory. Manipulating single pixels is not generally hard-coded into physical sub-chips, so a generalist is needed: the cpu.
Once i have changed the new object to my liking i need to transform it back into an object that is optimised for printing to the screen -we are still talking about games so efficiency matters. So whatever the name of that object is, once it is in the optimised form, the gpu takes over and loads it into its superfast - because hard-coded - chips.
This seems to be the reason I have to do the following:
Tactical Level: Code
(Add Script to TextureRect-Node)
The script inherits texture from the Node which it extends.
This just an abstraction showing the essential parts.
func _ready():
var modifiable_image_object = texture.get_image()
modifiable_image_object.set_pixel(10, 10, Color.RED)
var modified_image = ImageTexture.create_from_image(modifiable_image_object)
texture = modified_image_for_screen
Wie programmiere ich...
einen simplen Abacus-Aufgaben-Generator?
Da meine aktuelle Hauptsprache Powershell ist, fiel es mir leicht da etwas zusammenzubasteln: [Download Skript].
Die Frage ist nun: Wie sähe das hier im Browser aus?
Und wie krieg ich das so hin, dass es angenehm zu benutzen ist?
Fazit des Tages:
Noch garnicht. Das Bereitstellen der Skriptdatei auf meiner Webseite hat mich bereits blockiert.
Da ich die Datei öffentlich anbieten will, gibt es einige Sicherheitsbedenken:
- Wie vermeide ich Attacken? (Directory Traversal Attacken)?
- Wie merke ich wenn es automatisiert dauerhaft runtergeladen wird?
- Wie stelle ich sie konkret bereit? (Außerhalb des Webroots, PHP steuert den Download via http-header)
- Warum sind die meisten meiner Google-Treffer dazu bereits viele Jahre alt?
Und irgendwann war einfach meine freie Zeit des Tages verbraucht...
Natürlich auf Umwegen! (Gegen Holzwege spricht auch nichts.)
Idee: "Der letzte Satz in Klammern wäre eigentlich cooler in klein, oder als Sprechblase"
Ich würde gerne auf dieser Seite meine Internetpräsenz aufbauen:
Blog - Beiträge wie dieser hier.
Videos, Gesprochenes, etc -also die INHALTE.
Dazu gehört aber auch STRUKTUR -aktuell ist ja nur Html vorhanden.
Der erste Unterpunkt zum Projekt Meine Internetseite ist fertig ist
"Wie verberge ich Inhalte vor anonymen Benutzern?"
Ich formuliere es mal als Projekt im Sinne von
Getting-Things-Done
um:
"Ich kann meine Inhalte aufteilen in
[1] Öffentliches,
[2] Semi-Verborgenes (nach kostenloser Anmeldung),
[3] Exklusives (Bezahlschranke).
Um das Ganze anschaulich zu machen:
Was Du bisher gelesen hast ist öffentlich.
Die Reihenfolge und Beschreibung der Schritte zur Erreichung des ersten Unterprojekts findest Du, wenn Du in der Nav-Leiste links auf Login klickst und Dich einloggst (ggf. vorher registrieren).
Die exklusiven Inhalte erreichst Du wenn Du nach dem Login auf Deinen Mitglied-Bereich drückst und dort ... [Bezahlschranke].