MantisBT

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0002890VCMIAI - Adventure Mappublic2018-02-24 18:422018-02-28 07:23
ReporterAVS 
Assigned ToAVS 
PriorityimmediateSeverityblockReproducibilityalways
StatusclosedResolutionfixed 
PlatformOSOS Version
Product Version1.next 
Target VersionFixed in Version1.next 
Summary0002890: Savegame backward compatibility is broken
DescriptionIn VCAI::registerGoals type registration is performed during save operation itself, so all newly added registrations (in RegisterTypes.h) considered safe actually break AI state loading.
TagsNo tags attached.
Attached Files

- Relationships
child of 0002891new Find proper solution for AI goals serialization. 

-  Notes
(0007425)
SXX (administrator)
2018-02-25 06:38

I suppose we can avoid the problem by simply reseting VCAI state on loading for now. While this will make saves for debugging a bit less useful it's should still keep compatibility for gameplay.

How can we prevent this from happening in future?
(0007426)
AVS (administrator)
2018-02-25 06:44

Resetting state is not enough. Serializer itself crashes.
We have to disable VCAI::lockedHeroes serialiazation completely.
To re-enable this in future we could ensure that goal classes registration do not mess with other registrations.
(0007427)
SXX (administrator)
2018-02-25 06:53

If it crashes on deserialization, how exactly we can skip bogus data?
(0007428)
AVS (administrator)
2018-02-25 07:34

Already done, will push in a moment
(0007429)
AVS (administrator)
2018-02-25 07:40

Fix pushed to https://github.com/vcmi/vcmi/pull/420 [^]
(0007430)
Warmonger (administrator)
2018-02-27 18:22

Oh crap.

Good thing AI doesn't need much debugging right now.

- Issue History
Date Modified Username Field Change
2018-02-24 18:42 AVS New Issue
2018-02-25 06:38 SXX Note Added: 0007425
2018-02-25 06:44 AVS Note Added: 0007426
2018-02-25 06:53 SXX Note Added: 0007427
2018-02-25 07:34 AVS Note Added: 0007428
2018-02-25 07:35 AVS Assigned To => AVS
2018-02-25 07:35 AVS Status new => assigned
2018-02-25 07:40 AVS Note Added: 0007429
2018-02-25 07:43 AVS Relationship added parent of 0002891
2018-02-25 07:44 AVS Relationship replaced child of 0002891
2018-02-27 18:22 Warmonger Note Added: 0007430
2018-02-28 07:23 AVS Status assigned => resolved
2018-02-28 07:23 AVS Fixed in Version => 1.next
2018-02-28 07:23 AVS Resolution open => fixed
2018-02-28 07:23 AVS Status resolved => closed

Site | Forums | Wiki | Slack | GitHub


Copyright © 2000 - 2024 MantisBT Team
Hosting provided by DigitalOcean