Dieser Artikel betrifft die Nintendo Wii U

Wii U N64 VC patch.ini: Unterschied zwischen den Versionen

Aus WiiDatabase Wiki
Wechseln zu:Navigation, Suche
(noch nicht getestet aber es sollte alles gehen ich mache mich sofort ans testen.)
Zeile 125: Zeile 125:
 
|}
 
|}
  
== GameShark Cheatcodes verwenden ==
+
== GameShark-Cheatcodes verwenden ==
Gameshark Codes sind glücklicherweise so strukturiert das du sie fast ohne extra arbeit in der Virtual Console verwenden kannst. Hier kannst du nachlesen wie du deinen GameShark Code für die VC fit machst.  
+
{{Achtung|Dieser Abschnitt ist noch ungetestet und braucht mehr Informationen}}
 +
Gameshark-Codes sind so strukturiert, dass sie fast ohne extra Arbeit in der Virtual Console verwenden werden können. Diese sehen üblicherweise so aus:
  
Los gehts!
+
<pre>NNXXXXXX YYYY</pre>
 +
 
 +
'''NN''' ist der Code-Typ, '''XXXXXX''' die Speicheradresse, die geändert werden soll und '''YYYY''' der neue Wert.<ref>http://ngemu.com/threads/creating-codes.103421/#post-1341216</ref><ref>https://web.archive.org/web/20100616165707/http://thegshi.org/faqs/hackv500c.html</ref>
 +
 
 +
'''Beispiel für das Spiel "The Legend of Zelda: Ocarina of Time" (US):'''
 +
 
 +
Folgender Code kann verwendet werden, wenn alle goldenen Skulltulas als "getötet" markiert werden sollen: <code>8011A6A1 00FF</code><ref>https://www.zeldaxtreme.com/ocarina-of-time/gameshark-codes-version-1.0/</ref> So wird dieser für die Virtual Console umgewandelt:
 +
 
 +
# Es ist wichtig, zu wissen, dass Zahlen im Hexadezimalsystem immer mit "0x" anfangen
 +
# Die Zeichen im Code hinter dem Leerzeichen geben an, welcher Wert festgelegt wird. Diese Bytes müssen nun aufgetrennt werden. Damit ist: <code>Cheat0_Value = 0x00 0xFF</code>
 +
# Diese Bytes müssen nun gezählt werden - in diesem Falle sind es zwei. Am einfachsten geht es, wenn die Stellen hinter dem Code gezählt und anschließend durch zwei dividiert werden. Damit ist: <code>Cheat0_Bytes = 2</code>
 +
# Damit die VC weiß, welcher Wert im Speicher geändert werden soll, muss noch die Adresse festgelegt werden - das sind die Zeichen vor der Leerstelle. An diesen Wert muss "0x" vorangestellt werden. Damit gilt: <code>Cheat0_Address = 0x8011A6A1</code>
  
Sagen wir einmal du spielst Zelda: Ocarina of Time in der US Version auf deiner Wii U und hast keine Lust alle Skulltulas zu finden, hier kann dir der Code <code>8011A6A1 00FF</code> helfen da er den RAM des Spiels so manipuliert, dass das Spiel denkt das du 255 Skulltulas getötet hättest Also wie wandelst du diesen Code nun für die VC um? Wirf zunächst einmal einen blick auf die Stellen nach dem Leerzeichen im Code, das ist der Wert der festgelegt wird du kannst also schon einmal sagen das <code>Cheat0_Value = 0x00 0xFF</code> sein wird. Zähle nun wie viele Zeichen nach dem Leerzeichen stehen und teile dies durch 2 nun weißt du im Falle von Ocarina of Time das <code>Cheat0_Bytes = 2</code> sein wird. Du nun bist fast fertig! Jetzt muss nur noch <code>Cheat0_Address</code> festgelegt werden und dieser ist der Teil des Codes vor dem Leerzeichen also im Falle Ocarina of Time <code>Cheat0_Address = 0x8011A6A1</code>.
 
 
== Weblinks ==
 
== Weblinks ==
 
* [https://wiki.gbatemp.net/wiki/WiiU_VC_N64_inject_compatibility_list%5CIni_Template INI-Template auf WikiTemp]
 
* [https://wiki.gbatemp.net/wiki/WiiU_VC_N64_inject_compatibility_list%5CIni_Template INI-Template auf WikiTemp]
 +
 +
== Einzelnachweise ==
 +
<references />
  
 
{{Top Icon Wii U}}
 
{{Top Icon Wii U}}

Version vom 14. Juni 2018, 17:47 Uhr

Nintendo 64 Logo
Icon Unvollstaendig.svg Dieser Artikel ist unvollständig. Du kannst uns helfen, indem du die fehlenden Informationen ergänzt.

Die [Name der ROM].ini befindet sich im Ordner "content/config" der Nintendo 64 Virtual Console und stellt den Emulator für das jeweilige Spiel korrekt ein (z.B. die Größe des Backup-Speichers).

Diese Seite versucht alle möglichen Optionen dieser Dateien zu dokumentieren, um es so möglich zu machen die VC, für bestimmte Injects nutzbar zu machen.

Wenn etwas nicht funktioniert probiere es bitte mit einem neueren Build der Virtual Console. Der aktuellste Build der VC ist SVN 2428, mit ihm sollten alle hier gelisteten Optionen gehen.

Einstellung Mögliche Werte Beschreibung
[RomOption]
PlayerNum 1 - 4 Legt fest wie viele Controller angemeldet sein können während die VC läuft.. Diese Option ist zwar in offizieller VC auskommentiert, scheint aber trotz allem immer mit der Anzahl der maximalen Spieler des Spiels konfiguriert zu sein.
Rumble
  • 0: Kein Rumble-Pack
  • 1: Rumble-Pack emuliert
Legt fest, ob ein Rumble-Pack emuliert werden soll. Hat nur einen Effekt bei Spielen, welches dies unterstützen. Kann nicht verwendet werden während TPak oder MemPak 1 ist.
UseTimer
  • 0: Deaktiviert
  • 1: Aktiviert
Begrenzt möglicherweise die Emulationsgeschwindigkeit. Ansonsten unbekannt.
BackupType
  • 0: Automatische Auswahl
  • 1: SRAM Backup-Speicher
  • 2: Flashspeicher
  • 3: EEPROM
Legt den Typ des emulierten Backup-Speichers fest. Besonders wichtig bei Spielen mit Anti-Piraterie-Erkennung via Backup-Speicher-Typ/-Größe.
BackupSize
  • 512: 0,5 KB
  • 2048: 2 KB
  • 4K: 4 KB
  • 16K: 16 KB
Legt die Größe des Backup-Speichers fest. Besonders bei Spielen mit Anti-Piraterie-Erkennung via Speichergröße wichtig.

Da keine 32K Option existiert werden Spiele wie die PAL-Version von Super Smash Bros. wahrscheinlich nicht funktionieren.

PDFURL URL zu einem PDF-Scan einer Bedienungsanleitung Offizielle URLs sind so aufgebaut:

Für Super Mario 64 demzufolge:

RamSize
  • 0x400000: 4 MB, kein Expansion Pak
  • 0x800000: 8 MB, Expansion Pak installiert
Legt fest ob ein Memory Expansion Pak installiert ist.

Muss 0x800000 für Donkey Kong 64, Perfekt Dark und Zelda: Majoras Mask sein da diese das Expansion Pak zwingend benötigen. Auch Spiele die das Expansion Pak nicht benötigen können davon profitieren.[1]

TrueBoot
  • 0: Blackscreen
  • 1: Normaler Boot
Eventuell: Bestimmt ob das emulierte N64 während des Boots ein Cartidge eingelegt hat oder emuliert den CIC-Lockout Chip.
EEROMInitValue 0x00 - 0xFF Der Wert jedes Bytes im emulierten EEPROM bevor auf ihm gespeichert wurde. Sollte entweder 0x00 oder 0xFF sein.
TPak
  • 0: Kein Transferpak
  • 1: Emuliert ein Transferpak
Da keine Game-Boy-ROM festgelegt werden kann, ziemlich nutzlos. Rumble oder MemPak können nicht verwendet werden während dies aktiviert ist.
MemPak
  • 0: Kein Memory Pak
  • 1: Memory Pak im Controller von Spieler 1
Emuliert ein Memory Pak im Controller von Spieler 1. Sehr fehlerbehaftet und kann zu Abstürzen führen. Kann nicht genutzt werden während TPak oder Rumble auf 1 gesetzt sind.
TLBMissEnable true / false (?) Erklärung zu TLB - GoldenEye und Perfect Dark werden dies wahrscheinlich benötigen. Einige andere wahrscheinlich auch.
[Cheat]
Cheat0 0,1,2 Unbekannt. Meist 0.
Cheat0_Addr Hex-Adresse (z.B. 0x12345678) Selbsterklärend; Die RAM-Adresse die verändert werden soll.
Cheat0_Value 0x00 - 0xFF Erzwungener Wert für das entsprechende Byte im RAM
Cheat0_Bytes 1 - 4 Bestimmt wie viele Bytes im RAM mit Cheat0_Value verändert werden sollen. Beispiel: Mit Cheat0_Bytes auf 4 und Cheat0_Addr auf 0x00000000 könnten 0x00000000, 0x00000001, 0x00000002 und 0x00000003 verändert werden.
[Render]
CalculateLOD Nur in Zusammenhang mit Super Mario 64 verwendet, Objekte werden nach weniger Abstand als sonst nicht mehr gerendert, wenn dieser Wert auf 0 ist.
bForce720P
  • 0: Rendert das Spiel in 1080p
  • 1: Rendert das Spiel in 720p
Mit 1080p und 720p ist die 4:3 Variante der Auflösungen gemeint also z.B. bei 720p 960x720 und nicht 1280x720.
FirstFrameAt Unsigned Integer (z.B. 1000) Überspringt das Rendern aller Frames vor diesem Wert. Kann helfen wenn das Spiel ein Grafikcommand verwendet welches vom Emulator nicht verstanden wird. Unter anderem in der JP Version von Super Smash Bros. verwendet.

GameShark-Cheatcodes verwenden

Dieser Abschnitt ist noch ungetestet und braucht mehr Informationen

Gameshark-Codes sind so strukturiert, dass sie fast ohne extra Arbeit in der Virtual Console verwenden werden können. Diese sehen üblicherweise so aus:

NNXXXXXX YYYY

NN ist der Code-Typ, XXXXXX die Speicheradresse, die geändert werden soll und YYYY der neue Wert.[2][3]

Beispiel für das Spiel "The Legend of Zelda: Ocarina of Time" (US):

Folgender Code kann verwendet werden, wenn alle goldenen Skulltulas als "getötet" markiert werden sollen: 8011A6A1 00FF[4] So wird dieser für die Virtual Console umgewandelt:

  1. Es ist wichtig, zu wissen, dass Zahlen im Hexadezimalsystem immer mit "0x" anfangen
  2. Die Zeichen im Code hinter dem Leerzeichen geben an, welcher Wert festgelegt wird. Diese Bytes müssen nun aufgetrennt werden. Damit ist: Cheat0_Value = 0x00 0xFF
  3. Diese Bytes müssen nun gezählt werden - in diesem Falle sind es zwei. Am einfachsten geht es, wenn die Stellen hinter dem Code gezählt und anschließend durch zwei dividiert werden. Damit ist: Cheat0_Bytes = 2
  4. Damit die VC weiß, welcher Wert im Speicher geändert werden soll, muss noch die Adresse festgelegt werden - das sind die Zeichen vor der Leerstelle. An diesen Wert muss "0x" vorangestellt werden. Damit gilt: Cheat0_Address = 0x8011A6A1

Weblinks

Einzelnachweise

  1. Todo: Testen ob auch Werte über 0x800000 funktionieren, da dies helfen könnte, Hacks zum laufen zu bringen welche Memory Patches haben. Ideal: Werte für 12 MB & 16 MB testen da viele Hacks mit Memory Patch entweder 12 bzw. 16 MB nutzen.
  2. http://ngemu.com/threads/creating-codes.103421/#post-1341216
  3. https://web.archive.org/web/20100616165707/http://thegshi.org/faqs/hackv500c.html
  4. https://www.zeldaxtreme.com/ocarina-of-time/gameshark-codes-version-1.0/