PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Gamespeed manipulieren möglich?


Geldmann3
2013-08-08, 19:12:07
Hallo,
egal ob ein modernes Computerspiel mit 15, 30 oder 100FPS läuft, die Spielgeschwindigkeit ist immer ungefähr die selbe. Anders beispielsweise bei älteren Spielen oder Emulatoren, hier kann man die Spielgeschwindigeit ändern, indem man die Framerate reguliert. Wird die Zielframerate nicht erreicht, wird das Spiel verlangsamt, wird diese überschritten, läuft das Spiel schneller.

Ist das auch mit modernen 3D Spielen möglich? Ich meine, wenn sich ein Spiel nicht an der Framerate orientiert, muss es sich ja an etwas anderem orientieren um die Geschwindigkeit zu halten.

Wozu?
Ganz einfach, man könnte Games in einer exorbitant hohen Auflösung rendern, und aufzeichnen. Anschließend müsste man das Video nur noch verschnellern und man hätte wieder ein flüssiges Gameplay, wie es in der Realität erst in vielen Jahren möglich wäre. Würde man das mit einem Spiel, welches sich an der Framerate orientiert machen, wäre die Spielgeschwindigkeit später nicht mehr originalgetreu.

Ich möchte dem Spiel, wenn es mit 1FPS läuft sagen, dass es auch nur mit 1/60 der normalen Geschwindigkeit laufen soll, damit ich es später wieder genau auf das 60 fache beschleunigen kann und dann wieder die original Spielgeschwindigkeit habe.


Ich weiß, es gibt einige Spiele, wie Crysis, die solche Funktionen an Board haben, doch ich würde es gerne mit nahezu jedem Spiel machen können. Gibt es vielleicht irgendeinen Ticker den man manipulieren kann, um einem Spiel eine andere Zeitdehnung vorzuschaukeln?

Danke

Edit: Ich probier mal das und berichte dann: http://game-speed-adjuster.en.softonic.com/

Edit2: Habe den Game-Speed-Adjuster nun unter Windows7 X64 getestet, er funktioniert schlicht nicht. Habe anschließend noch den Asoftech Speeder gestestet, er startet erst gar nicht, mit der Fehlermeldung.

Failed to load engine file. Please uninstall and reinstall Asoftech Speeder.

Auch Kompatibilitätseinstellungen haben mir nicht weitergeholfen.

Edit3: Der "Gamespeed Controller" hat eine Wirkung auf Games, doch alle Spiele, die ich bisher getestet habe, stürzen nach dem ersten Ladebalken ab.

xxMuahdibxx
2013-08-09, 09:02:39
Wow tolles Neuland ...

Das haben Studios schon gemacht indem sie Szenen vorgerendert hatten und dann halt die fertigen Videos einfach mit der Spielfigur abzulaufen waren .

Nur muss man dann vorgegebene Wege laufen und das wollte auf einmal niemand mehr .

Denn wenn man einfach mal so "Abbiegen" wollte und da war nix vorgerendert gab es einfach keinen Weg dafür .

Du solltest dich etwas mehr mit der Frage der Zeit ... Eingaben ... und Ausgaben am Monitor befassen eh du mit toller Grafik hantieren willst .

Disconnected
2013-08-09, 10:08:36
Moderne Spiele bestimmen ihre Ablaufgeschwindigkeit in Abhängigkeit von der Systemzeit und nicht von der Rechenleistung.

=Floi=
2013-08-09, 10:36:13
fang dir keine malware ein!

EPIC_FAIL
2013-08-09, 10:54:50
Die Cheat-Engine hat einen Regler für die Spielgeschwindigkeit. Dabei werden irgendwelche interne Timer verändert.
Aber Achtung, das Teil ist sehr umfangreich und mächtig, ich würde das Ding nicht unbedingt auflassen wenn ich irgendwelche Online-Games zocke. Ggfls reagieren manche Cheat-Detections darauf allergisch

x-force
2013-08-09, 13:21:10
ich hatte mal sowas für cs damals. damit war man am spawnpunkt, als die anderen leute noch gekauft haben :D

das lustige, er veränderte auch das explorerverhalten.
darum war ich mir ziemlich sicher, daß er interne timer verändert, wie epic_fail schon sagte

danach würde ich suchen!

Geldmann3
2013-08-09, 21:10:19
Danke, die Cheat-Engine ist echt ein Mega-Geiler Tipp, damit lässt sich die Geschwindigkeit der meisten Spiele manipulieren!
Man muss aber aufpassen, wo man sie sich runterlädt, es gibt scheinbar viele Quellen, bei denen sie wirklich Viren-verseucht ist.

Das ist schon mal ein großer Fortschritt. Doch jetzt gibt es ein anderes Problem. Fraps, Dxtory und andere Video-Capture Programme reagieren nicht mehr, sobald die Cheat Engine ein paar Sekunden eingegriffen hat. Daher kann ich momentan kein Video davon aufzeichnen. Wofür ich die Geschwindigkeit ja manipulieren wollte. Auch die FPS Anzeigen stimmen nicht mehr mit der echten überein, sobald ich an der Geschwindigkeit drehe. Scheinbar wird damit auch das Overlay-Programm, welches sich ins jeweilige Spiel einhakt, beeinflusst.

Hat jemand eine Idee?

Edit: Habe ein kleines Workaround, welches in 80% aller Fälle funktioniert.

1. Starte das Spiel
2. Starte Fraps & starte die Aufnahme
3. Switch zum Desktop
4. Starte Cheat-Engine mit Speedhack
5. Zurück zum Spiel

Fraps nimmt nun alles was man sieht korrekt auf, das Ganze hat nur einen Haken, man hat nur einen Versuch. Man kann keine zweite Aufnahme mit Fraps im Spiel starten, bis man den gesamten Vorgang wiederholt hat.

NFSMW 2012 @120FPS @4k+4xSSAA Konvertiert in 1080p @ 9,6Mbit/s @60FPS (https://mega.co.nz/#!yIFFSQIa!cVxqHDYSRpt5yQ6_sk3aKAaGsGsiFBWCaZy56Z36SJk)

Irgendwie stuttert es trotz 60FPS. Doch Hauptsache ich kann die FPS jetzt beliebig in einem Video steigern. Ich schätze das stuttern entsteht irgendwie bei der Konvertierung in Virtual Dub von 120->60FPS.

OC_Burner
2013-08-10, 17:11:38
Dein verlinktes Video hat an manchen Stellen doppelte Frames wohl aufgrund verloren gegangener Frames, daher auch das ruckeln. Wie löst du die unsynchrone Soundgeschichte? Eine weitere CheatEngine-Instanz starten um dann den Speedhack zusätzlich am Soundtreiberprozess vorzunehmen? Ansonsten interessante Geschichte mit CheatEngine und dessen Speedhack der auch tatsächlich funktioniert. Benutze das Programm nun schon seit Jahren um kleinere Spielereien anzustellen, habe aber den Speedhack dabei noch nie ausprobiert. Interessant wäre auch die Möglichkeit FPS-Caps in diversen Spielen auszuhebeln, allerdings ohne das sie dann doppelt so schnell über den Bildschirm laufen.

Geldmann3
2013-08-10, 18:48:28
Ja, das mit den doppelten Frames ist Codec bedingt, FRAPS zeichnet immer 30FPS auf egal ob es auch immer wirklich 30 neue FPS gibt. Ich versuche das Ruckeln auszuräumen, indem ich mit 1/8 der Geschwindigkeit aufzeichne und die 240FPS dann wieder mitsamt Frameüberblendung auf 30FPS runterrechne. Sozusagen FPS Downsampling: http://www.forum-3dcenter.org/vbulletin/newreply.php?do=newreply&noquote=1&p=9873849

Die Soundgeschichte ist wohl nicht so leicht zu lösen, es sei denn, man könnte wirklich auch in den Soundtreiberprozess, noch nicht versucht...

In kurzen Videos ist es wohl das einfachste, es einmal nur für den Sound aufzunehmen und den dann zu verwenden, wenn es sich reproduzieren lässt.

Auf jeden Fall kann man so im Video beliebig Hardware-Power simulieren, wenn man Zeit hat.

RavenTS
2013-08-11, 12:10:28
Was genau ist denn jetzt eigentlich dein Vorteil? Eine sehr hohe Auflösung zu fahren? Wäre das nicht auch einfacher per SuperSampling/Downsampling möglich? Spielbar dürfte es doch eh nicht sein.?!

Geldmann3
2013-08-11, 13:14:26
Beim Zocken habe ich keinen Vorteil, ich kann damit allerdings flüssige Videos mit "unmöglichen" Grafiksettings aufnehmen.

Angenommen ich möchte ein Ingame Video von einem Spiel machen, welches so Hardwarefressend ist, dass mein Rechner es nicht flüssig abspielen kann. Ich möchte aber ein flüssiges Video davon...
Würde ich es einfach mit Fraps aufzeichnen, während das Game nur mit 10FPS läuft, würde das Spiel nachher im Video logischerweise stark ruckeln.
Würde ich die Abspielgeschwindigkeit des 10FPS Videos später dagegen wieder auf 30FPS beschleunigen, würde es nicht mehr ruckeln. Doch das Spiel würde im Video folglich auch 3x schneller laufen. Als würde es vorgespult werden.
Das möchte ich natürlich auch nicht, sondern ich möchte, dass das Spiel in der Aufnahme später sowohl flüssig, als auch mit der richtigen Geschwindigkeit läuft.
Folglich senke ich die Spielgeschwindigkeit mit der Cheat-Engine zuvor auf 1/4 der originalen. Nun läuft mein Spiel zwar immer noch nur mit 10FPS, aber in 1/4 Zeitlupe. (Das Spiel denkt jetzt, es hätte 40FPS, denn in einer Spielsekunde, schafft es jetzt streng genommen auch 40FPS, obwohl es in einer echten Sekunde weiter nur 10FPS schafft. Die Zeit streckt sich für das Spiel also.) Natürlich unspielbar, da es nur mit 10FPS in 1/4 der Original Geschwindigkeit läuft. Das kann ich jetzt mit Fraps allerdings aufzeichnen und später wieder mit der 4 fachen Geschwindigkeit abspielen. Dann habe ich später ein Video mit der 4 fachen Framerate, also 40FPS (statt nur 10, die mein Rechner schafft), welches dennoch mit der originalen Geschwindigkeit übereinstimmt.

Das ist großartig, damit kannst du ein flüssiges Video von nahezu jedem Spiel, mit jeden Settings, in jeder Auflösung machen. Du brauchst nur einen Rechner, der es überhaupt abspielen kann. Egal wie viel FPS er schafft....

lilgefo~
2013-08-11, 13:26:48
In Mortal Kombat 2011 (PC) kann man die Spielgeschwindigkeit in der ini regulieren und auch die gewuenschte fps Rate (standard sind 60). Wenn nicht 60fps (bzw. die eingestellte Rate) berechnet werden verringert sich die Spielgeschwindigkeit.

Geldmann3
2013-08-11, 13:33:11
Krass, sowas habe ich in einem PC Game ja noch nie gehabt... Klingt wie direkt aus dem Emulator

Meint ihr, es gibt einen Sound-Treiber Prozess, den man mit der Cheat-Engine injecten kann um auch die Soundgeschwindigkeit zu ändern, oder eine andere Möglichkeit?

Birdman
2013-08-11, 13:37:07
Krass, sowas habe ich in einem PC Game ja noch nie gehabt... Klingt wie direkt aus dem Emulator
Fighter Games sind i.d.R. immer direkt an die FPS gebunden und alle Aktionen auch abhängig von den einzelnen Frames.

00-Schneider
2013-08-11, 13:53:06
Krass, sowas habe ich in einem PC Game ja noch nie gehabt... Klingt wie direkt aus dem Emulator


War bei Command & Conquer 3: Tiberium Wars auch so. Hatte damals mit meinem P4 3,2GHz nie Fullspeed bei den Gefechten, eher etwas zäh, besonders wenn viel los war. z.b. große Schlachten.

Geldmann3
2013-08-11, 14:09:55
Bei den 3D Command and Conquer Teilen ab Generals war die Framerate schlicht vom "Ingame Tick" abgekoppelt. Das Spiel wurde aber nicht langsamer, wenn eine bestimmte Framerate unterschritten wurde. Die Spiele hatten intern ihre eigene Tickrate, nur wenn diese unterschritten wurde, wurde auch das Spielgeschehen verlangsamt. Meist passierte das, wenn zu viele Wegpunkte zu berechnen waren. Natürlich hat eine sehr niedrige Framerate irgendwann auch die interne Tickrate beeinträchtigt, weil dann nicht mehr genug CPU Leistung/Datendurchsatz für diese übrig war.

Bei dem neuen Command and Conquer, welches bald erscheint, soll sich das angeblich wieder ändern. Da soll die Tickrate mit vom EA Server abhängig sein. Ob das stimmt, kann ich mir nicht so recht vorstellen, denn das würde natürlich auch Nachteile mit sich bringen. (Keine Einheiten KI ohne Server...)
Man kann aber auch die Vorteile sehen. Selbst wenn dann alle Spieler schwache Rechner haben, die kaum die Grafik rendern können, wären noch schnelle Schlachten mit vielen Einheiten möglich. Auch, wenn der Rechner eines Spielers vielleicht schon nicht mehr reagiert. Bis jetzt, wurden ja immer alle anderen vom schwächsten System runter gezogen.