#4639: spelling corrections in #4617 can crash the game with popup "Failed to
parse wrf/multires.wrf"
-------------------------------------+-------------------------
Reporter: Forgon | Owner:
Type: bug | Status: new
Priority: normal | Milestone: unspecified
Component: other | Version: unspecified
Operating System: All/Non-Specific |
-------------------------------------+-------------------------
Ticket #4617 (implemented in commit
'2ce9492056d84846a07174770cfc2c46abf44e7b') corrected the string
'Incenediary' to 'Incendiary' in the following files:
* './data/mp/multiplay/skirmish/nb_rulesets/standard.js'
* './data/mp/multiplay/skirmish/nexus.vlo'
* './data/mp/multiplay/skirmish/semperfi.vlo'
* './data/mp/stats/research.json'
* './data/mp/stats/structure.json'
* './data/mp/stats/weapons.json'
This affects Incendiary Mortar and Incendiary Howitzer, whose misspelled
mentioning in old files, e.g. savegames and mods, can cause the game to
crash with a popup displaying a message 'Failed to parse wrf/multires.wrf'
(see attached image [raw-attachment:popup.png]) and error messages similar
to:
> --- Starting log [error.log]---
> info |00:00:06: [realmain:990] (global) mod
(ultimatescavs-1-17-RC4.wz) is enabled
> info |00:00:15: [loadResearch:188] Could not find stats for
Emplacement-Howitzer-Incendiary research > Incendiary Howitzer Emplacement
> info |00:00:15: [loadResearch:188] Assert in Warzone:
research.cpp:188 (research.psStat), last script event: '<none>'
> info |00:00:15: [resLoadFile:549] The load function for resource type
"RESCH" failed for file "research.json"
> info |00:00:15: [resLoadFile:549] Assert in Warzone:
frameresource.cpp:549 (false), last script event: '<none>'
> fatal |00:00:15: [resLoad:208] Failed to parse wrf/multires.wrf
> error |00:00:18: [levLoadData:760] Failed resLoad(wrf/multires.wrf)!
> fatal |00:00:18: [startGameLoop:568] Shutting down after failure
The problem can easily be fixed by correctly spelling 'Incenediary'. Linux
users can use the attached bash script [raw-attachment:fix_spellings],
which can be used in the following ways:
* `./fix_spellings [file]` -- backs up 'file' and corrects spelling within
it
* `./fix_spellings [directory]` -- backs up 'directory' and corrects
spelling within it
* `./fix_spellings [archive.zip]` -- backs up 'archive.zip', extracts its
files into new directory 'archive', corrects spelling within that
directory, recreates zip archive 'archive.zip' and removes new directory
'archive'
* `./fix_spellings [archive.wz]` -- analogous to procedure above, since
'*.wz' files are '*.zip' files
--
Ticket URL: <http://developer.wz2100.net/ticket/4639>
Warzone 2100 Trac <http://developer.wz2100.net/>
The Warzone 2100 Project
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Warzone2100-project mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/warzone2100-project