#44730: Fix city_size limitations for units.ruleset Open Date: 2022-05-30 21:53 Last Update: 2022-06-01 03:36 URL for this Ticket: https://osdn.net//projects/freeciv/ticket/44730 RSS feed for this Ticket: https://osdn.net/ticket/ticket_rss.php?group_id=12505&tid=44730 --------------------------------------------------------------------- Last Changes/Comment on this Ticket: 2022-06-01 03:36 Updated by: cazfi Comment: S3_0 / S3_1 patch looks good (have not yet compiled or tested in) The would do some changes to the master patch: - Maybe rscompat_set_valid_value() function name should contain '_3_2' to indicate that it's something to clear out when the rscompat code is change to do 3.2 -> 3.3 update instead - The rscompat update should be in the ruleset loading (ruleset.c), and the sanity check side should fail if the ruleset is not ok by then (no matter whether it was ok to begin with, or just fixed by the rscompat code) - "(!compat->compat_mode || compat->version < RSFORMAT_3_2)" seems wrong (you probably mean to check for >= _3_2 and not < _3_2 (which means 3.1 in practice)), but you need to rework that part for the previous point anyway --------------------------------------------------------------------- Ticket Status: Reporter: ihnatus Owner: (None) Type: Bugs Status: Open Priority: 5 - Medium MileStone: 3.0.2 Component: Server Severity: 5 - Medium Resolution: None --------------------------------------------------------------------- Ticket details: A split of #44703 for all active branches. Currently, city_size is lifted from non-positive values to 1 for units having "Settlers" flag. Obviously, it should be for units that can found cities that is for long a different category. Also, for them overflow of this value should be also fitted in (now, does not fail the application but breaks helptext and produces warnings). EDIT: Tested the case. Underflow value emulates HQ9+ "+" operator and fails the ruleset to load. Overflow value takes the lower byte that may result in 0, then the city is actually deleted after creation. If we remove the "Settlers" flag from city builders, loads any values, for negative ones the lower byte goes to helptext but the city size is 1. Server complains only on bad unit type packet values. So yes, it needs to be fixed. -- Ticket information of Freeciv project Freeciv Project is hosted on OSDN Project URL: https://osdn.net/projects/freeciv/ OSDN: https://osdn.net URL for this Ticket: https://osdn.net/projects/freeciv/ticket/44730 RSS feed for this Ticket: https://osdn.net/ticket/ticket_rss.php?group_id=12505&tid=44730