Incidencia #45109

nation group requirements are broken

Abrir Fecha: 2022-07-16 05:09 Última actualización: 2022-07-23 14:45

Informador:
Propietario:
Tipo:
Estado:
Cerrado
Componente:
Prioridad:
5 - Medium
Gravedad:
5 - Medium
Resolución:
Fixed
Fichero:
1

Details

a nation group requirement can't be fulfilled, i tested in both master and 3.0.2, try to change a requirement of a building or advance(both that i tested) to "NationGroup","European","Player" you will see that you can 't build the building or research the advance, and in the help it won't show what it needs to be fulfilled.

Ticket History (3/7 Histories)

2022-07-16 05:09 Updated by: dark-ether
  • New Ticket "nation group requirements are broken" created
2022-07-16 06:19 Updated by: cazfi
Comentario

Client side does not receive the requirement correctly (tested with a requirement for a building)

Seems like dio_get_requirement_raw() call to req_from_values() produces invalid requirement. I assume that the problem is in the order ruleset data is sent to the client - that the client just don't know the nation groups at the time it receives to building requirements.

2022-07-16 07:35 Updated by: cazfi
  • Propietario Update from (Ninguno) to cazfi
  • Resolución Update from Ninguno to Accepted
  • Hito Update from (Ninguno) to 3.0.3 (cerrado)
Comentario

Simply sending all of nations data immediately after the main ruleset control packet seems to resolve this. There should be nothing in the nations data that would depend on other rulesets, so there was no circular dependency to resolve.

2022-07-16 20:20 Updated by: ihnatus
Comentario

Smells like a generic client ruleset loading problem... Are we sure there is no more such faults due to reqs referring what is not yet sent?

2022-07-16 20:26 Updated by: cazfi
Comentario

Reply To ihnatus

Smells like a generic client ruleset loading problem... Are we sure there is no more such faults due to reqs referring what is not yet sent?

Can't be sure that there isn't other similar problems, but most things are more robust than nation groups and sets (which we probably should rework too, in master) - the initial ruleset control packet contains their count, so the client does know which ids are legal even if the actual objects have not been sent (have to be that way also to avoid circular dependencies: setting up extras may depend in building ids, and setting up buildings may depend on extra ids)

2022-07-23 14:45 Updated by: cazfi
  • Estado Update from Open to Cerrado
  • Resolución Update from Accepted to Fixed
  • Componente Update from Rulesets to General

Editar

Please login to add comment to this ticket » Entrar