CleverRaven / Cataclysm-DDA

Cataclysm - Dark Days Ahead. A turn-based survival game set in a post-apocalyptic world.
http://cataclysmdda.org
Other
10.29k stars 4.13k forks source link

Changing evac_center from "GLOBALLY_UNIQUE" tag to "UNIQUE" crashes during evec mission generation. #72727

Closed CaseMonster closed 5 months ago

CaseMonster commented 5 months ago

Describe the bug

Changing "GLOBALLY_UNIQUE" tag to "UNIQUE" on evac_center crashes game when starting initial evac computer quest. If i flip it back to globally_unique the mission generates.

Attach save file

N/A

Steps to reproduce

I've generated several worlds and flipped the tag back and forth to verify it causes crash.

I'm currently using copy-from to change all globally_uniques to regular uniques, like this:

{ "type": "overmap_special", "id": "evac_center", "copy-from": "evac_center", "flags": [ "UNIQUE", "SAFE_AT_WORLDGEN", "MAN_MADE" ] },

Apologies if this isn't and won't be supported.

Expected behavior

I expected the quest to create a marker as usual.

Screenshots

No response

Versions and configuration

Additional context

The program has crashed. See the log file for a stack trace. CRASH LOG FILE: C:/Users/cschn/Documents/CDDA/dda/userdata/config/crash.log VERSION: 6f38ffd TYPE: Signal MESSAGE: SIGSEGV: Segmentation fault STACK TRACE:

0

(dbghelp: debug_write_backtrace+0xb5@0,000,7FF,618,161,645[cataclysm-tiles.exe+0x591,645]), 

1

(dbghelp: log_crash+0x36d@0,000,7FF,618,124,F8D[cataclysm-tiles.exe+0x554,f8d]), 

2

(dbghelp: signal_handler+0x63@0,000,7FF,618,125,533[cataclysm-tiles.exe+0x555,533]), 

3

(dbghelp: seh_filter_exe+0x178@0,000,7FF,619,789,DF0[cataclysm-tiles.exe+0x1,bb9,df0]), 

4

(dbghelp: `__scrt_common_main_seh'::`1'::filt$0+0x16@0,000,7FF,619,9C5,309[cataclysm-tiles.exe+0x1,df5,309]), 

5

(dbghelp: _C_specific_handler+0xa0@0,000,7FF,619,757,694[cataclysm-tiles.exe+0x1,b87,694]), 

6

(dbghelp: _chkstk+0x12f@0,000,7FF,8F8,DF4,41F[ntdll.dll+0xa4,41f]), 

7

(dbghelp: RtlFindCharInUnicodeString+0xa96@0,000,7FF,8F8,D6E,466[ntdll.dll+0x1e,466]), 

8

(dbghelp: KiUserExceptionDispatcher+0x2e@0,000,7FF,8F8,DF3,40E[ntdll.dll+0xa3,40e]), 

9

(dbghelp: overmap_special::longest_side+0x10e@0,000,7FF,618,55C,2DE[cataclysm-tiles.exe+0x98c,2de]), 

10

(dbghelp: overmapbuffer::place_special+0x124@0,000,7FF,618,60C,194[cataclysm-tiles.exe+0xa3c,194]), 

11

(dbghelp: <lambda_ef91223a207e743082a0fc0d38fc5c8f>::operator()+0x10b@0,000,7FF,619,622,6AB[cataclysm-tiles.exe+0x1,a52,6ab]), 

12

(dbghelp: find_or_create_om_terrain+0x277@0,000,7FF,619,623,387[cataclysm-tiles.exe+0x1,a53,387]), 

13

(dbghelp: mission_util::assign_mission_target+0x35@0,000,7FF,619,623,095[cataclysm-tiles.exe+0x1,a53,095]), 

14

(dbghelp: mission_start::reveal_refugee_center+0x435@0,000,7FF,619,669,F45[cataclysm-tiles.exe+0x1,a99,f45]), 

15

(dbghelp: mission::assign+0x26b@0,000,7FF,618,5D9,19B[cataclysm-tiles.exe+0xa09,19b]), 

16

(dbghelp: std::_Func_impl_no_alloc<<lambda_3087cf2f75d637440dcff43538db1c3c>,void,dialogue &>::_Do_call+0xa7@0,000,7FF,618,DB3,D47[cataclysm-tiles.exe+0x1,1e3,d47]), 

17

(dbghelp: talk_effect_t::apply+0x75@0,000,7FF,618,DE9,E95[cataclysm-tiles.exe+0x1,219,e95]), 

18

(dbghelp: dialogue::opt+0x1,a21@0,000,7FF,618,E23,5F1[cataclysm-tiles.exe+0x1,253,5f1]), 

19

(dbghelp: avatar::talk_to+0x530@0,000,7FF,618,E2C,940[cataclysm-tiles.exe+0x1,25c,940]), 

20

(dbghelp: <lambda_39f10fa4de97f49d66d58db8f64b9abf>::operator()+0x466@0,000,7FF,618,DD8,0E6[cataclysm-tiles.exe+0x1,208,0e6]), 

21

(dbghelp: talk_effect_t::apply+0x75@0,000,7FF,618,DE9,E95[cataclysm-tiles.exe+0x1,219,e95]), 

22

(dbghelp: effect_on_condition::activate+0x302@0,000,7FF,618,8B9,E92[cataclysm-tiles.exe+0xce9,e92]), 

23

(dbghelp: game::use_computer+0x807@0,000,7FF,618,22A,0B7[cataclysm-tiles.exe+0x65a,0b7]), 

24

(dbghelp: game::examine+0x7bd@0,000,7FF,618,1DF,86D[cataclysm-tiles.exe+0x60f,86d]), 

25

(dbghelp: game::examine+0x747@0,000,7FF,618,1E0,9F7[cataclysm-tiles.exe+0x610,9f7]), 

26

(dbghelp: game::do_regular_action+0x1,1dd@0,000,7FF,618,7EB,60D[cataclysm-tiles.exe+0xc1b,60d]), 

27

(dbghelp: game::handle_action+0xa37@0,000,7FF,618,7F4,FE7[cataclysm-tiles.exe+0xc24,fe7]), 

28

(dbghelp: do_turn+0xf5e@0,000,7FF,618,169,33E[cataclysm-tiles.exe+0x599,33e]), 

29

(dbghelp: WinMain+0xe55@0,000,7FF,617,FEE,F55[cataclysm-tiles.exe+0x41e,f55]), 

30

(dbghelp: __scrt_common_main_seh+0x106@0,000,7FF,619,754,2C6[cataclysm-tiles.exe+0x1,b84,2c6]), 

31

(dbghelp: BaseThreadInitThunk+0x1d@0,000,7FF,8F7,D62,57D[KERNEL32.DLL+0x12,57d]), 

32

(dbghelp: RtlUserThreadStart+0x28@0,000,7FF,8F8,DAA,A58[ntdll.dll+0x5a,a58]), 
GuardianDll commented 5 months ago

That's like the very reason it was made globally unique /invalid

Procyonae commented 5 months ago

There are various bugs with duplicated NPCs too, I wouldn't recommend changing NPC locations from GLOBALLY_UNIQUE to UNIQUE

RenechCDDA commented 5 months ago

Not supported, as already covered. But don't be afraid to make bug reports in the future if you're unsure. We'd rather have too many than too little.