Cambios

5819 bytes añadidos ,  18:45 4 nov 2021
m
Texto reemplazado: «tt>» por «samp>»
Línea 1: Línea 1:  
{{/Encabezado}}
 
{{/Encabezado}}
 +
''Nota: Todos los links que te lleven fuera de la wiki en español, estan en inglés''<br />
 +
¿Desea crear paquetes de Content Patcher para Stardew Valley? ¡Esta página es para ti! Esta página pretende ser una introducción suave a la creación de paquetes de Content Patcher. Si no necesita una introducción, consulte el [https://github.com/Pathoschild/StardewMods/tree/develop/ContentPatcher#readme archivo readme de Content Patcher completo].<br />
   −
¿Desea crear paquetes de Content Patcher para Stardew Valley? ¡Esta página es para ti! '''Para el uso de mods, consulte [[Modding:Guía del jugador/Introducción|Modding:Guía del jugador]]. Para crear mods SMAPI, consulte [[Modding:Guía del Modder/Introducción|Modding:Guía del Modder]].'''
+
'''Para el uso de mods, consulte [[Modding:Guía del jugador/Introducción|Modding: Guía del jugador]].'''<br />
 
+
'''Para crear mods SMAPI, consulte [[Modding:Guía del Modder/Introducción|Modding: Guía del Modder]].'''
Esta página pretende ser una introducción suave a la creación de paquetes de Content Patcher. Si no necesita una introducción, consulte el [https://github.com/Pathoschild/StardewMods/tree/develop/ContentPatcher#readme archivo readme de Content Patcher completo].
      
==Conceptos básicos==
 
==Conceptos básicos==
Línea 14: Línea 15:  
* Hacer cambios muy específicos (como hacer que el café sea más caro los fines de semana de invierno cuando nieva después de haber completado el JojaMart);
 
* Hacer cambios muy específicos (como hacer que el café sea más caro los fines de semana de invierno cuando nieva después de haber completado el JojaMart);
 
* Y mucho más.
 
* Y mucho más.
 +
 +
===Recursos===
 +
Un ''recurso'' es esencialmente un archivo en la carpeta <samp>Content</samp> del juego con el nombre de ''asset''. El nombre del recurso nunca incluye la ruta de <samp>Content</samp> el idioma o la extensión del archivo (Puedes usar tokens para dirigirse a idiomas específicos). Por ejemplo:
 +
 +
{|class="wikitable"
 +
|-
 +
! Archivo
 +
! Nombre del Asset
 +
|-
 +
| <samp>Content/Portraits/Abigail.xnb</samp>
 +
| <samp>Portraits/Abigail</samp>
 +
|-
 +
| <samp>Content/Maps/spring_beach.xnb</samp><br /><samp>Content/Maps/spring_beach.es-ES.xnb</samp><br /><samp>Content/Maps/spring_beach.fr-FR.xnb</samp>
 +
| <samp>Maps/spring_beach</samp>
 +
|}
 +
 +
Un recurso puede contener varios imágenes o entradas de datos. Por ejemplo, esto es lo que contiene <samp>Portraits/Abigail</samp> si lo desempaquetas:
 +
 +
[[File:Modding - creating an XNB mod - example portraits.png]]
 +
 +
Así que si quisieras cambiar los retratos de Abigail, usarías Content Patcher para cargar o editar <samp>Portraits/Abigail</samp>.
 +
 +
===Cargar vs Editar===
 +
Hay dos formas conceptuales de cambiar un recurso:
 +
 +
* ''Cargar'' la versión inicial de un recurso. Cada recurso solo puede ser cargado por un mod al mismo tiempo. Esto es principalmente útil para los mods de reemplazo total (como un mod que cambia completamente los retratos de un PNJ), o para proporcionar archivos que no existen en la carpeta <samp>Content</samp>.
 +
* ''Editar'' un recurso después de cargarlo. Se puede aplicar cualquier cantidad de ediciones al mismo recurso.
 +
 +
Por ejemplo, digamos que el juego necesita los retratos de Abigail. Así es como se aplican los cambios:
 +
<pre>
 +
                                          ┌────────────┐
 +
                                          │ edit asset │
 +
                        ┌───────────┐    ├────────────┤
 +
get Portraits/Abigail ──>│ load file │───>│ edit asset │──> portrait asset
 +
                        └───────────┘    ├────────────┤
 +
                                          │ edit asset │
 +
                                          └────────────┘
 +
</pre>
 +
 +
Esto se divide en cuatro tipos de acción diferentes (<samp>Load</samp>, <samp>EditData</samp>, <samp>EditImage</samp>, <samp>EditMap</samp>),  que se explican con más detalle en el archivo readme de Content Patcher
 +
 +
==Empezar==
 +
===Crear un mod de ejemplo===
 +
Primero vamos a poner en marcha nuestro paquete de contenido básico:
 +
<ol>
 +
<li>Instalar [https://smapi.io/ SMAPI] y {{nexus mod|1915|Content Patcher}}.</li>
 +
<li>Desempaquete la carpeta <samp>Content</samp>  del juego para que pueda ver lo que contiene cada recurso (consulte [[Modding:Edición de archivos XNB#Desempaquetar archivos del juego|¿Como desempaquetar archivos del juego?]]).</li>
 +
<li>Crear un [[Modding:Paquetes de contenido #Crear un paquete de contenido|paquete de contenido SMAPI]].</li>
 +
<li>Crea un archivo <samp>content.json</samp>  en la misma carpeta con este contenido:
 +
<syntaxhighlight lang="javascript">
 +
{
 +
  "Format": "1.11.0",
 +
  "Changes": [
 +
  ]
 +
}
 +
</syntaxhighlight>
 +
</li>
 +
<li>Abre el juego.</li>
 +
</ol>
 +
 +
Si hasta ahora ha hecho todo correctamente, debería ver el nuevo mod en "Loaded X content packs" en la consola SMAPI. (De lo contrario, revise los pasos anteriores o [[Modding:Comunidad|solicite ayuda]].)
 +
 +
===Formato de Content===
 +
El archivo <samp>content.json</samp> que creó anteriormente es lo que le dice a Content Patcher qué cambiar. Esto tiene dos campos principales:
 +
 +
* <samp>Format</samp>: La versión de formato. Siempre debe usar la última versión (actualmente 1.11.0) para habilitar las funciones más recientes y evitar comportamientos obsoletos.
 +
* <samp>Changes</samp>: Los cambios que desea realizar. Cada entrada se denomina ''parche'', y describe una acción específica a realizar: reemplazar este archivo, copiar esta imagen en el archivo, etc. Puede enumerar cualquier número de parches.
 +
 +
Puede enumerar cualquier número de parches en el campo <samp>Changes</samp>, cada uno rodeado por <code>{</code> y <code>}</code>. Consulte la siguiente sección para obtener más información, pero aquí hay un ejemplo rápido:
 +
<syntaxhighlight lang="javascript">
 +
{
 +
  "Format": "1.11.0",
 +
  "Changes": [
 +
      {
 +
        "Action": "Load",
 +
        "Target": "Animals/Dinosaur",
 +
        "FromFile": "assets/dinosaur.png"
 +
      },
 +
 +
      {
 +
        "Action": "EditImage",
 +
        "Target": "Maps/springobjects",
 +
        "FromFile": "assets/fish-object.png"
 +
      },
 +
  ]
 +
}
 +
</syntaxhighlight>
 +
 +
(Hay otros campos como<samp>ConfigSchema</samp> y <samp>DynamicTokens</samp> para un uso más avanzado; estos se tratan en el archivo readme completo.)
 +
 +
==Próximos pasos==
 +
¡Has creado un paquete de Content Patcher! <!--Next we'll make it do something. This tutorial will walk you through creating Blueberries Everywhere, a mod which just turns various things into blueberries.
 +
 +
When you're ready to continue, see the navigation at the bottom of the page to continue.-->
 +
 +
Para obtener más ayuda, consulte...
 +
* El archivo [https://github.com/Pathoschild/StardewMods/tree/develop/ContentPatcher#readme readme de Content Patcher completo];
 +
* [https://www.youtube.com/watch?v=uqRTgjWvDYs Introducción de video a Content Patcher] (no oficial);
 +
* [https://docs.google.com/presentation/d/1OBIJSNOwEA2sdBzNbUiVUQni-ajABGFmL-FUanhuLvk Introducción para convertir mods XNB] (no oficial).
 +
 +
(Próximamente tendremos un tutorial guiado aquí.)
 +
<!--
 +
{{Pie de página de la guía de Modding
 +
  |Anterior =
 +
  |Siguiente = [[../Cargar|Cargar recursos]]
 +
}}
 +
-->
 +
 +
[[en:Modding:Content Patcher]]
106 339

ediciones