You are viewing a potentially older version of this package. View all versions.
Pedro159_team-QuickStash-1.0.3 icon

QuickStash

Boton de guardado rapido en cofres cercanos, favoritos que nunca se guardan, y crafteo usando el material de los cofres de alrededor.

Date uploaded a month ago
Version 1.0.3
Download link Pedro159_team-QuickStash-1.0.3.zip
Downloads 146
Dependency string Pedro159_team-QuickStash-1.0.3

This mod requires the following mods to function

denikson-BepInExPack_Valheim-5.4.2350 icon
denikson-BepInExPack_Valheim

BepInEx pack for Valheim. Preconfigured with the correct entry point for mods and preferred defaults for the community.

Preferred version: 5.4.2350

README

QuickStash

Mod de cliente para Valheim 1.0. Hace tres cosas:

  1. Un botón en el inventario que manda de golpe a los cofres cercanos los objetos que esos cofres ya contienen.
  2. Favoritos: marcás ítems o casillas con Alt+clic y el botón nunca los guarda.
  3. Craftear desde cofres: estando en la forja o en una mesa de crafteo, las recetas usan el material de los cofres de alrededor sin que lo tengas que sacar a mano.

Está pensado para un servidor con mucha gente: no agrega tráfico de red propio, no toca el servidor y nunca escribe en un cofre que otro jugador tenga abierto.

Instalación

Es solo cliente: lo instala cada jugador que lo quiera usar, y no hace falta ponerlo en el servidor. Se puede jugar con gente que no lo tenga.

  1. Tener BepInExPack_Valheim (5.4.2350 o superior).
  2. Copiar QuickStash.dll a BepInEx\plugins\.

Uso

Guardar rápido

Abrí el inventario y apretá el botón Guardar (arriba a la derecha del panel).

  • Solo manda cosas a los cofres que ya tienen ese tipo de objeto. Un cofre vacío no se llena solo, igual que el botón de apilar del juego.
  • La primera fila del inventario (la barra rápida) queda protegida por defecto.
  • Lo que tengas equipado nunca se guarda.
  • Si hay un cofre abierto, se usa primero.
  • También se puede guardar con la tecla N, sin abrir el inventario. No se dispara mientras estás escribiendo en el chat, la consola o un cartel. Se cambia en Atajo.

Favoritos

  • Alt + clic izquierdo sobre un ítem → protege ese tipo de ítem. Toda tu madera queda protegida, esté en la casilla que esté. Borde amarillo.
  • Alt + clic izquierdo sobre una casilla vacía → protege esa casilla, que no se va a usar para nada. Borde celeste.
  • Alt + Shift + clic sobre un ítem → protege la casilla en vez del tipo.
  • Volvé a hacer el mismo clic para desmarcar.

Los favoritos se guardan por personaje, en BepInEx\config\QuickStash\favorites.<personaje>.json.

Craftear desde cofres

Parado en una estación (forja, mesa de trabajo, etc.), las recetas cuentan también lo que hay en los cofres cercanos. El número del requisito se pinta en celeste cuando alcanza gracias a los cofres, y el material se trae solo al momento de craftear.

Fuera de una estación el mod no interviene: craftear a mano y construir con el martillo funcionan exactamente como en el juego base.

Configuración

El archivo es BepInEx\config\com.valheimcrew.quickstash.cfg. Aparece recién después de entrar al juego una vez con el mod instalado.

Hay dos formas de tocarlo:

  • A mano, con un editor de texto, con el juego cerrado. BepInEx no vigila el archivo, así que hay que reiniciar el juego para que tome los cambios.
  • In-game con F1, que es más cómodo y aplica al instante. Para eso hace falta instalar aparte el mod Official BepInEx ConfigurationManager — no viene incluido en BepInEx. Es solo cliente: lo instala quien lo quiera.

Lo que probablemente quieras tocar:

Opción Por defecto Para qué
Rango 30 Metros a la redonda para buscar cofres al guardar
Atajo N Tecla para guardar sin abrir el inventario
ProtegerBarraRapida true No guarda la primera fila del inventario
PosicionX / PosicionY 0 Mover el botón si te queda mal ubicado o chocado con otro mod de UI
ItemsExcluidos vacío Prefabs que nunca se guardan, separados por coma
Crafteo > Rango 30 Metros para buscar material al craftear
MaxCofresPorAccion 32 Tope de cofres por pulsación
LogDeMovimientos true Anota en el log cada objeto que se mueve, con cofre, posición y hora
LogDeRendimiento false Escribe en el log los ms y la cantidad de cofres de cada acción

Multijugador

  • Un cofre que otro jugador tiene abierto se salta, no se toca. Vas a ver el aviso "cofre en uso".
  • Para escribir en un cofre ajeno se usa el mismo pedido de permiso que el botón de apilar del juego: el dueño del cofre valida y recién ahí cede el control.
  • Se respetan los cofres privados y los wards, con las mismas reglas que el juego.

Limitaciones conocidas

  • Si el inventario está lleno, craftear desde cofres puede fallar con el mensaje de "sin espacio" del juego: el material se trae al inventario antes de consumirse y necesita un hueco. No se pierde nada.
  • La posición por defecto del botón puede no ser perfecta según la resolución o si usás otros mods de interfaz. Se ajusta con PosicionX y PosicionY.
  • No conviene usarlo junto a QuickStackStore ni a CraftFromContainers: hacen lo mismo y se pisan. El mod avisa en el log si detecta alguno.

Registro de movimientos

Por defecto el mod anota en BepInEx/LogOutput.log todo lo que mueve, una línea por cofre:

[Info   :   QuickStash] GUARDADO -> Cofre (1243, 31, -678) | 21:15:03 | Madera x40, Piedra x12
[Info   :   QuickStash] SACADO <- Cofre de hierro (1250, 31, -670) | 21:16:44 | Hierro x10

Sirve para investigar si alguna vez falta algo: buscás el nombre del objeto en el log y ves cuándo se movió, cuánto y a qué cofre (la posición está para poder ir a buscarlo al mundo). Se apaga con LogDeMovimientos = false, pero conviene dejarlo: es el único rastro que queda.

CHANGELOG

Changelog

1.0.0

  • Primera version.
  • Boton de guardado rapido en el inventario, hacia los cofres cercanos.
  • Favoritos por tipo de item y por casilla (Alt+clic), que nunca se guardan.
  • Crafteo y mejoras en estaciones usando material de los cofres cercanos.

1.0.1

Correcciones de la auditoria previa al reparto. Nada de esto se probo in-game todavia.

  • Se arreglo la reentrada del guardado rapido: cuando el cofre ya era propio, el RPC se resolvia en la misma pila y el resumen salia una vez por cofre.
  • Nunca se escribe en un cofre sin ser dueno del ZDO. Sin propiedad el movimiento era local y el siguiente sync lo revertia, con los items ya descontados del inventario.
  • Las unidades movidas se cuentan a mano en vez de con el delta de CountItems, que filtra por nivel de mundo: con nivel > 0 se podian perder items viejos.
  • Las respuestas de apilado propias nunca caen al handler vanilla, que ignora los favoritos.
  • El crafteo de recetas de un solo ingrediente ya no puede tirar NullReferenceException dentro del juego cuando el material no alcanza a llegar del cofre.
  • Se piden permisos solo a los cofres que van a recibir algo (antes eran hasta 32 por pulsacion).
  • Un solo guardado por cofre tambien al sacar material para craftear.
  • Los parches de interfaz que corren por frame ya no pueden romper el inventario del jugador.
  • Los favoritos se escriben de forma atomica y se reintentan si falla el disco.
  • Se parchea por feature: si un parche del juego renombra un metodo, se apaga esa parte y no el mod entero.
  • Cooldown de medio segundo por accion. Topes de configuracion mas conservadores.

1.0.2

  • La tecla N guarda por defecto, sin abrir el inventario. No se dispara mientras escribis en el chat, la consola, un cartel o el comercio.
  • El rango de guardado pasa de 10 a 30 metros.
  • Nuevo LogDeMovimientos, activado por defecto: anota en el log cada objeto movido, con cantidad, cofre, posicion y hora. Es el rastro para investigar si alguna vez falta algo.
  • Se corrigio la documentacion: ConfigurationManager (F1) es un mod aparte, no viene con BepInEx, y editar el .cfg a mano requiere reiniciar el juego.

1.0.3

  • El rango de crafteo desde cofres tambien pasa a 30 metros, igual que el de guardado.

1.1.0

  • Arreglado: cofres que a veces no se tomaban. No era la distancia. Se recortaba a los 32 cofres mas cercanos ANTES de mirar cuales tenian el objeto, asi que con muchos cofres juntos los que quedaban fuera de ese tope no se usaban nunca. Ahora se filtra primero y el tope se aplica solo a los cofres a los que se les escribe. Leer un cofre no cuesta red.
  • Nuevo: construir desde cofres. Con el martillo, las piezas usan el material de los cofres cercanos (30 m por defecto). El material se trae recien al colocar la pieza.
  • Nuevo: hornos automaticos. Un cofre a menos de 10 m de una fundicion, horno de carbon, alto horno, molino, rueca o refineria de eitr la carga sola con combustible y mineral. Solo usa cofres que ya son tuyos, y solo actua el jugador mas cercano al horno.
  • Con LogDeRendimiento activo, el resumen del guardado ahora dice cuantos cofres habia en rango, cuantos eran utilizables y cuantos tenian el objeto: si algo no se guarda, el log lo explica.
  • Opcion nueva MaxCofresEscaneados (128) para el tope de lectura, separado de MaxCofresPorAccion (32) que sigue siendo el de escritura.
  • Los hornos respetan ItemsExcluidos, tienen tope global por segundo, y sus cargas no llenan el log salvo que actives Hornos > LogDeCarga.

1.2.0 (experimental — rama feature/animales-comen-de-cofres)

  • Los animales domesticados comen de un cofre cercano cuando tienen hambre y no hay nada en el piso. Solo agarran lo que ese animal come normalmente: el filtro es la lista del propio juego.
  • La comida se tira al lado del animal, no del cofre, asi que el cofre puede estar fuera del cerco.
  • Solo actua el cliente dueno del animal y solo usa cofres propios, igual que los hornos.

1.2.1 (experimental)

  • Diagnostico para los animales: con LogDeRendimiento activo, el log explica por que un animal hambriento no comio (no hay cofre, el cofre es de otro jugador, o la comida no le gusta) y vuelca una vez por especie la lista real de lo que come.

1.3.0

  • Arreglado: los animales no comian en el servidor. El enganche anterior colgaba de la IA del animal, que Valheim solo ejecuta en el cliente dueno de su ZDO. Con varios jugadores, el que esta parado al lado del corral tipicamente NO es el dueno, asi que el codigo no corria nunca.
  • Rediseno: ya no hace falta ser dueno del animal. El mod solo deja la comida en el piso y el cliente que si es dueno se la come con codigo vanilla. Efecto lateral: alcanza con que UNO de los jugadores tenga el mod para que se alimenten los animales de toda la base.
  • Coordinacion entre clientes: solo actua el jugador mas cercano al animal, y no se tira comida si ya hay en el piso.
  • Opciones nuevas: Animales > IntervaloSegundos y Animales > MaxPorCiclo.

1.3.1

Correcciones de la auditoria de seguridad sobre master.

  • Critico: los animales podian vaciar un cofre sin freno. La unica defensa contra tirar comida en cada ciclo era un barrido de fisica acotado a 32 objetos. En un corral con basura tirada —tipico despues de un raid, y dentro de una base lo tirado no despawnea— ese barrido se truncaba, no veia la comida que ya estaba en el piso, y seguia sacando del cofre indefinidamente. Ahora el buffer es de 256 y, si aun asi se satura, se asume que hay comida en vez de lo contrario.
  • Cooldown de 10 s por animal tras darle de comer, para que el freno no dependa de un solo chequeo.
  • La eleccion de que jugador alimenta ya no depende solo de la distancia: con posiciones replicadas y con lag, dos jugadores casi equidistantes podian creerse ambos el mas cercano.
  • No se le tira comida a un animal muerto.
  • LogDeComida pasa a estar activado por defecto: es la funcion que mas necesita dejar rastro.
  • Lista de exclusion propia para animales, separada de la global.
  • Los ciclos de animales corren aislados: una excepcion ahi ya no mata el atajo de guardado.
  • El diagnostico deja de repetir "no hay animales" cada 5 segundos.

1.3.2

  • El rango de los hornos pasa de 10 a 15 metros.

1.3.3

  • El rango del guardado rapido baja de 30 a 15 metros.

1.3.4

  • Diagnostico para los hornos: con LogDeRendimiento activo, el log explica por que un horno no se carga (no es tuyo, el cofre no es tuyo, el cofre esta marcado en uso, o no hay material). Corre tambien cuando el horno no es tuyo, que es justo el caso que antes quedaba mudo.

1.4.0

  • El numero del material ahora es "disponible/necesario" (por ejemplo 100/3) en las recetas y en el menu de construccion. El vanilla solo muestra cuanto pide. El disponible incluye los cofres cercanos cuando la feature correspondiente esta activada, y descuenta lo que no se podria sacar por falta de espacio en el inventario. Se apaga con MostrarDisponibles.
  • Boton "Traer" debajo del boton de craftear: pone en el inventario el material de la receta seleccionada que haya en los cofres, aunque no alcance para craftear. Trae solo lo que falta, aparece solo cuando hay algo que traer, y en recetas de un solo ingrediente trae uno solo —el que mas cerca queda de completarla— en vez de vaciar los cofres de todas las alternativas. Se mueve con PosicionTraerX/Y y se apaga con MostrarBotonTraer.
  • La cuenta que decide si el boton aparece y la que mueve el material son el mismo codigo, una en seco: no pueden desincronizarse y mostrar un boton que no hace nada.
  • El clon del boton de craftear pierde el binding de UIGamePad, asi que craftear con el mando no dispara tambien el boton de traer.
  • MostrarTotales (en Crafteo) pasa a ser solo el color celeste; el numero lo controla MostrarDisponibles.