Ciclo de vida
- El planificador agrupa a los jugadores cercanos y decide qué personajes deberían tener un cuerpo alrededor de cada grupo, y dónde.
- El recurso genera el peatón en un punto seguro y fuera de la vista y lo vincula.
- Humalike sigue al personaje mientras exista ese ped y suelta la vinculación cuando el juego lo elimina (un cuerpo desaparecido se libera, nunca queda una concesión (lease) obsoleta).
- Cuando ningún jugador ha estado cerca del cuerpo durante el tiempo de despawn, se elimina; el personaje recibe un cuerpo nuevo la próxima vez que haya jugadores alrededor.
Configurar la población ambiental
Abre un servidor en el panel y usa sus ajustes de NPC ambientales para activar el sistema y ajustar los límites. La política del panel es la autoridad sobre el número de personajes y cuerpos ambientales activos.Modelos
El modelo de ped de un personaje es el cuerpo en el que se genera, y lo decide el personaje. Está disponible cualquier modelo de ped de GTA — los cerca de 500 peatones ambientales, de servicios, de bandas y únicos, no solo los que el juego pone en la calle por su cuenta. Cada miembro de un mundo lleva de una a tres etiquetas de aspecto que dicen cómo viste —wealthy, office,
street, beach, homeless, una etiqueta worker: para un uniforme (worker:pilot,
worker:mechanic) o una etiqueta gang: para los colores de una banda callejera
(gang:ballas, gang:lost_mc). La propuesta las elige a partir del rol; puedes
cambiarlas en la propuesta antes de la generación, y después mediante una solicitud de
edición (“ponle al agente Diaz un uniforme de la LSPD”), que vuelve a elegir el
cuerpo. Una etiqueta de uniforme o de banda va sola, y en GTA muchos uniformes existen
para un solo sexo — la lista de selección indica cuál (worker:paramedic es solo para
hombres, worker:nurse solo para mujeres); una etiqueta que el sexo del miembro no puede
vestir se rechaza en la propuesta y el generador la descarta. El cuerpo se elige de
manera uniforme entre los modelos del catálogo del sexo del miembro que llevan una de sus
etiquetas (primero la franja de edad más cercana), de modo que un piloto viste el
uniforme de piloto y un miembro de los Ballas el morado — nada está vetado, y un miembro
cuyas etiquetas no coinciden con ningún cuerpo recibe uno de civil corriente. Los
miembros de un mismo grupo reciben cuerpos distintos mientras el catálogo los tenga; el
atuendo sigue las mismas etiquetas en los modelos fotografiados hasta ahora, y la tirada
de atuendo propia del juego viste al resto. La zona de origen del grupo decide dónde
prefiere aparecer un personaje, no su aspecto. Para un personaje ambiental hecho a mano,
dale cualquier modelo que tenga el servidor.
Cómo funciona
No hay nada que elegir. Mientras los NPC ambientales están activados, Humalike posee la calle: genera cuerpos para tus personajes dinámicos cerca de los grupos de jugadores (un peatón con el modelo del personaje, dentro del radio de generación, fuera de la vista, prefiriendo la zona de origen del propio personaje) y llena el resto de la calle con extras — peatones sin personaje tomados de todos los modelos de civil corriente del catálogo, sea cual sea la zona, hasta Extras por grupo alrededor de cada grupo y Límite de extras en todo el servidor. Mientras tanto los clientes desactivan la población a pie propia de GTA (los vehículos, el tráfico y los coches aparcados no se tocan; la policía aleatoria sigue activa cuando la convarhumalike_population_cops es true — consulta
Configuración). Todo lo que se aplica a
un personaje ambiental — atuendo, etiquetas, voz, acciones, heridas — se aplica a su
cuerpo. Los extras nunca hablan ni se vinculan; pon los extras por grupo a 0 para
funcionar solo con personajes. Desactivado significa sin personajes dinámicos y con
la multitud de GTA como siempre ha sido.
Un cuerpo se libera cuando ningún jugador de su routing bucket ha estado dentro de la
distancia de despawn del cuerpo durante el tiempo de despawn del cuerpo (la distancia de
despawn debe ser al menos la distancia de generación, o los cuerpos se liberarían nada
más aparecer); el recurso lo elimina entonces. Los cuerpos heridos o retenidos se
conservan hasta que vuelven a estar libres. Los cuerpos de personajes cuentan para el
límite del mapa y el límite por celda; los extras cuentan solo para su propio límite.
Por celda hace dos cosas con un solo número: limita los cuerpos que Humalike mantiene
en una misma celda de la cuadrícula (de Metros de celda de lado) y, escalado por el
tráfico peatonal de la zona, es cuántos personajes encuentra a la vez a su alrededor un
grupo de jugadores.
El presupuesto es compartido para que nadie tenga una multitud mientras otro tiene una
calle vacía. Los personajes se colocan primero. El límite de extras se reparte después
entre los grupos de jugadores según el número de personas — los jugadores que están
juntos comparten una asignación, y un grupo más grande recibe una parte mayor — y cada
grupo está limitado por Cuerpos por alcance de jugador, el máximo de cuerpos de
Humalike permitidos alrededor de un mismo jugador. Los cuerpos nuevos llegan a
Generaciones por tick por grupo, repartidos alrededor del grupo en lugar de en un
solo punto, de modo que la multitud va llegando poco a poco en lugar de aparecer de golpe.
Dónde está el grupo importa tanto como los ajustes. Cada zona lleva una densidad de
tráfico peatonal de 0 a 1 según su carácter revisado, y los techos por grupo se escalan
con ella: una acera del centro, un paseo marítimo o una plaza cívica reciben el límite
por celda y los extras por grupo completos; un pueblo pequeño la mitad; una carretera del
desierto o un polígono industrial algún caminante ocasional; una cordillera, un bosque o
mar abierto, nadie. Cualquier zona con tráfico peatonal reserva sitio para un personaje,
así que un personaje con origen en Paleto Bay aún se puede encontrar allí.
Los personajes generados a partir de un mundo llevan la
zona de origen de su grupo, así que aparecen donde viven — un barrio preferido, no un
punto fijo: un personaje se planifica primero en su zona de origen, y en otro sitio
cuando los jugadores no están allí. Un personaje hecho a mano no tiene zona de origen y
puede generarse en cualquier parte; create_npc / update_npc de la API aceptan un
home_zone (un código de zona de GTA como DAVIS) para darle una — el panel solo la
establece a través de los grupos de un mundo.
Conductores
Algunos personajes llegan por carretera: de vez en cuando un personaje dinámico se genera al volante de un coche — o sobre una moto, para un aspecto de motero — y circula como el resto del tráfico en lugar de caminar. Lo que conducen sigue el aspecto de su modelo (una banda va en o conduce su propio tipo de vehículo, el dinero conduce algo caro, todos los demás un sedán corriente); los extras nunca conducen. Un conductor es un cuerpo normal sujeto a los mismos límites, ritmo de generación y reglas de liberación que cualquier otro, y hablar con uno hace que se detenga a un lado y se quede hasta que termines. Los conductores están activados por defecto y se desactivan con la convarhumalike_npc_vehicles (consulta
Configuración); desactivados, cada
personaje se genera a pie como antes.
Ajuste de rendimiento
No subas el ritmo de generación ni el techo por alcance solo para que una calle se llene una fracción de segundo antes. Más cuerpos significan más entidades en red para cada cliente dentro del alcance. Si has medido un problema, los ajustes avanzados relevantes están documentados en Configuración. Cambia un valor cada vez y comparahumalike_status y el rendimiento del servidor antes y después.
Comportamiento habitual
- Que un NPC ambiental desaparezca cuando los jugadores se van es lo esperado.
- Su siguiente cuerpo puede tener un id de red distinto.
- Los distintos clientes siguen observando la misma entidad en red mientras existe.
- Con los NPC ambientales desactivados, Humalike no toca la población propia de GTA.

