Complemento de Nintendo Switch para Portal 1 y 2 que permite cargar archivos fuera del juego.zip, por lo que ya no tendrás que volver a empaquetar y enviar archivos enormes cada vez que quieras cambiar algo.
Debe tener la versión 1.0.3 de Portal 2 y la versión 1.0.2 o 1.0.3 de Portal
Desde descarga de lanzamientos:
Portal-NXSideLoader.zip
Sin parches de red (no le impedirá usar la red):
- Portal2-NXSideLoader.zip
Con parches de red (para las personas que bloquean los servidores de Nintendo, impedirá que el juego se conecte a la red para evitar fallas y ayuda con la depuración):
- Portal2-NoWeb-NXSideLoader.zip
Coloque la carpeta atmosphere
en la raíz de la tarjeta SD (sí, su CFW no se eliminará...)
Cambie el nombre de la carpeta principal del mod (por ejemplo, en el caso de Portal Reloaded es "portalreloaded") a, según el juego:
portal
portal2_dlc3
y poner esta carpeta en:
atmosphere/contents/01007BB017812000/romfs/nxcontent/
atmosphere/contents/0100ABD01785C000/romfs/nxcontent/
¡Todos los nombres de carpetas y archivos dentro de la carpeta romfs DEBEN estar en minúsculas!
Some mods are overwriting menu options, so you can lose access to Switch controller settings.
If after installing mod you can't save anything in options, try to delete `gameinfo.txt` from mod folder. You may also delete custom options menu.
They are stored either freely somewhere inside mod folder OR they are packed to some vpk file.
Los mods deben tener un código de CPU optimizado adecuadamente; de lo contrario, Switch se ahogará.
Ejemplos de modificaciones correctamente optimizadas:
Ejemplos de mods mal optimizados:
Es posible que algunos archivos en nxcontent
no sean compatibles, ya que están precargados con funciones independientes. Necesitaba agregar soporte específico para una función para poder cargar rom_boot_params.txt
. Si hay algún archivo que no funciona y quieres que funcione, escribe un problema.
El juego admite vscripts.
La modificación del código fuente no es compatible con este mod. Necesitarías hacer tus propios ganchos manualmente.
Los desarrolladores de juegos rediseñaron todo cstdio para usar game.zip como sistema de archivos. Los juegos de portal para abrir la mayoría de los archivos utilizan una función llamada fopen_nx()
. Para leer este archivo: fread_nx()
, etc. Todas las funciones son compatibles con cstdio, por lo que la solución fue bastante fácil:
fopen_nx()
fopen()
con la ruta correcta que comienza con rom:/
Hubo 2 problemas con esta solución:
rom_boot_params.txt
, así que enganché la función de lectura de este archivo y lo rediseñé para cargar el archivo desde la tarjeta SD. Más tarde resultó que la misma función se encarga de cargar archivos de sonido y texturas desde archivos bsp.fopen_nx()
ignora mayúsculas y minúsculas + tiene prioridad para verificar primero si el archivo está dentro de la carpeta nxcontent
y, si no, verifica la raíz del zip. Dentro del gancho, volví a implementar esta verificación + usé tolower()
para la ruta del archivo, ya que la carga de archivos HOS romfs distingue entre mayúsculas y minúsculas y todos los archivos originales están en minúsculas.Necesita la instalación estándar de devkitpro con Switch-dev.
Parche main.npdm
de exefs con esto; de lo contrario, el complemento fallará: https://github.com/skyline-dev/skyline/blob/master/scripts/patchNpdm.py
Para compilarlo para el comando Portal 1
make PORTAL="-DPORTAL"
para portal 2
make PORTAL="-DPORTAL2"
con parches de Internet para permitir la depuración a través de la red que ha bloqueado el acceso a los servidores de Nintendo
make PORTAL="-DPORTAL2 -DPDEBUG"