Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

carli

unregistriert

41

18.11.2009, 10:31

Zitat von »"PCShadow"«


- eigene Dateizugriffe (z.B. wollte ich bestimmte daten in einfachem Textformat speichern, aber man konnte daten nur im level oder im Script selbst speichern)

Das hingegen sehe ich nicht als Sinnvoll, stell dir mal vor, die Funktion würde es tatsächlich geben - dann könnte man unter Windows ganz einfach eine Datei nach "C:\autoexec.bat" schreiben, die dann eine endlosschleife enthält und schon kommt man nicht mehr an den PC ran.

Zitat von »"PCShadow"«


Was genau meinst du jetz mit menüsysteme?

die ToastEngine hat z.B. eine Art HTML intus, d.H. man kann die Menüführung (an welcher Stelle stehen die Buttons für Einstellungen, zusätzliche Checkboxen für bestimmte Regelwahl undundund) selbst gestalten und somit erkennt man nicht mehr, dass es in Wirklichkeit nur eine fertige Engine ist, mit der man das Spiel gemacht hat......

Nox

Supermoderator

Beiträge: 5 272

Beruf: Student

  • Private Nachricht senden

42

18.11.2009, 15:46

@carli es ist windows, kein linux. Bei Windows läuft das OS immer auf Echtzeit. Damit man es also wirklich komplett abschießt, muss man sich schon anstrengen, weil strg+alt+entf ->Taskmanager ging bei mir eig fast immer (Ausnahme: while(true) new char[0]; ). Fork-attacks sind daher unter Win nicht so effektiv wie unter Linux.
Und als Nutzer würde ich dann klar sagen, dass deine Engine eine für mich wichtige Eigenschaft (die Möglichkeit auch mal eine Datei zu laden/speichern; z.B. eine Optionsdatei oder Speicherstand oder zur Not gar ein eigenes Format) nicht unterstützt und damit nicht geeignet ist.
Das Erstellen von einer Menüführung über entsprechende Dateien hingegen ist eine mittlerweile sehr wichtige Fähigkeit für eine Lib, die GUI anbietet. Daher ist es gut, dass eure das auch unterstützt, wobei das nun echt nichts neues ist. Skins, Menüs etc. kann man in vielen Libs mit GUI per Dateien erstellen und verändern.
PRO Lernkurs "Wie benutze ich eine Doku richtig"!
CONTRA lasst mal die anderen machen!
networklibbenc - Netzwerklibs im Vergleich | syncsys - Netzwerk lib (MMO-ready) | Schleichfahrt Remake | Firegalaxy | Sammelsurium rund um FPGA&Co.

carli

unregistriert

43

18.11.2009, 17:27

@windows: Versuch mal, das hier per Strg+Alt+Entf abzuknallen:

Quellcode

1
2
3
@echo off
start %0
%0

- bei Linux bräuchte man für sowas erstmal die root-Rechte

@Dateien Speichern:
Wenn, dann wird's wohl eine Speicher-Funktion geben, allerdings kann man den Dateinamen nicht selbst aussuchen, sondern wird komplett vorgegeben.

Nox

Supermoderator

Beiträge: 5 272

Beruf: Student

  • Private Nachricht senden

44

18.11.2009, 17:58

Cool. Habs sogar gleich zweimal getestet. Beides mal reicht Geduld und hinterher ein taskkill.exe /IM cmd.exe /F um aufzuräumen. Windows ist nämlich so nett einfach die Ausführung irgendwann mal mit einem Fehler zu quitieren ;).
PRO Lernkurs "Wie benutze ich eine Doku richtig"!
CONTRA lasst mal die anderen machen!
networklibbenc - Netzwerklibs im Vergleich | syncsys - Netzwerk lib (MMO-ready) | Schleichfahrt Remake | Firegalaxy | Sammelsurium rund um FPGA&Co.

carli

unregistriert

45

18.11.2009, 18:38

joar, nett.
dasselbe kann man mit Linux-Shell scripts auch erreichen :P

Nox

Supermoderator

Beiträge: 5 272

Beruf: Student

  • Private Nachricht senden

46

18.11.2009, 21:39

Zitat von »"Nox"«

@carli es ist windows, kein linux. Bei Windows läuft das OS immer auf Echtzeit. Damit man es also wirklich komplett abschießt, muss man sich schon anstrengen, weil strg+alt+entf ->Taskmanager ging bei mir eig fast immer (Ausnahme: while(true) new char[0]; ). Fork-attacks sind daher unter Win nicht so effektiv wie unter Linux.[...]


Aber hey du bist du ein Fan von Komfort. Warum findest du dann Skriptsprachen gut, die so unkomfortable sind und Dateizugriffe nicht unterstützen? Nur weil jemand auf die Idee kommen könnte eine böse Datei zu basteln? Dann könnte er auch einfach direkt in die exe schadcode einschleusen. Woran soll der Nutzer das merken? Und rechtfertigt die Tatsache, dass jemand dessen Programm man ausführt an allen möglichen Stellen was eingebaut haben könnte, wirklich den Verlust an Entwicklungskomfort?
PRO Lernkurs "Wie benutze ich eine Doku richtig"!
CONTRA lasst mal die anderen machen!
networklibbenc - Netzwerklibs im Vergleich | syncsys - Netzwerk lib (MMO-ready) | Schleichfahrt Remake | Firegalaxy | Sammelsurium rund um FPGA&Co.

carli

unregistriert

47

18.11.2009, 21:49

Sicherheit geht vor.
Wer bei Komfort an der Sicherheit spart, der macht einen Fehler.

Nox

Supermoderator

Beiträge: 5 272

Beruf: Student

  • Private Nachricht senden

48

19.11.2009, 11:26

Na traust du den Nutzern deiner Lib nicht zu, dass sie in der Lage sind mit Dateien vernünftig umzugehen :badgrin: ? Würdest wohl auch bei Autos die Anhängerkupplung verbieten, nur weil es möglich ist, dass ein Anhänger bei unsachgemäßer Fahrweise ausbrechen kann, was?

P.S: Nun mal im Ernst denkst du wirklich du kannst deine Nutzern nicht trauen? Weil hey was können sie machen? Sie können ein phöses Skript schreiben, was einem Nutzer den Rechner wegschießt.....genauso gut können sie auch einfach ne getürkte exe. Ist doch viel effektiver.
PRO Lernkurs "Wie benutze ich eine Doku richtig"!
CONTRA lasst mal die anderen machen!
networklibbenc - Netzwerklibs im Vergleich | syncsys - Netzwerk lib (MMO-ready) | Schleichfahrt Remake | Firegalaxy | Sammelsurium rund um FPGA&Co.

carli

unregistriert

49

19.11.2009, 16:18

Eine Game Engine ist wie ein kleines Betreiebssystem - lass zu viele Schwachstellen offen und schon hast du ein riesen Problem.

Da hab ich das etwas falsch verstanden - bei der Unreal Engine sind ja die mods geschlossene Pakete, die man sich im ganzen runterlädt.
Bei Clonk hingegen kann jeder Erweiterungen anbieten und mit den Erweiterungen spielen - übers Internet. Wenn dort jemand auf die Idee kommt, einen Virus zu schreiben und die Engine bietet Dateizugriff, dann gute Nacht. Man brauch bloß in ein Szenario beitreten, wo jemand das Pack etwas abgeändert hat und schon ist der Rechner infiziert - Pech gehabt.
Dass das in der Unreal Engine etwas anders organisiert ist und man nicht einfach mal so mehrere Mods dynamisch zusammenwürfeln kann etc. empfinde ich eher als Nachteil.

Nox

Supermoderator

Beiträge: 5 272

Beruf: Student

  • Private Nachricht senden

50

19.11.2009, 22:02

Ahh okay dann ist es schon verständlich, dass du den Dateienzugriff einschränkst. Wobei das ggf. schon ein herber Verlust sein kann. Allerdings wenn man sich diese Skripts beim betreten eines Spiels alle automatisch runterläd und ausführt, ist das natürlich schon ein sehr hohes Sicherheitsrisiko. Allerdings gäbe es dafür ja die Möglichkeit nur Dateien in einem Tempverzeichnis zuzulassen. Sprich nur Dateinamen aber keine Dateipfade. Und wenn man dann noch für windows die Dateiendung auf z.b. .toast beschränkt, sollte da nichts passieren. So könnte man die Sicherheit mit der Möglichkeit verheiraten.
PRO Lernkurs "Wie benutze ich eine Doku richtig"!
CONTRA lasst mal die anderen machen!
networklibbenc - Netzwerklibs im Vergleich | syncsys - Netzwerk lib (MMO-ready) | Schleichfahrt Remake | Firegalaxy | Sammelsurium rund um FPGA&Co.

Werbeanzeige