|
Sirren
Member
Откуда: Turin, Italy Регистрация: Нояб. 2005
Всего: 11 сообщений
|
Hi everyone! I'm working on a Fo2 mod and I'm in heavy troubles. Simply put: my dialogues don't work anymore. My .SSLs compile just fine but then my scripts never grab variables: sometimes even LVARs don't work, nevermind about MVARs...This trouble is always related to dialogue, all the other stuff works as intended. Teams and AI are correctly assigned, floaters (even those "spoken" according to MVARs) and random wandering work fine, but if I try to talk to my critters then the scripts always show the same node(apparently the game choses a random node and always shos that one. This is both in-mapper and in-game, of course...) This problem did not show all in once, I noticed a slow decay... I know it has something to do with compilation: if I try to compile a script which was working before the troubles started, then that script isn't working anymore. Simply i don't know why. Thanks to the help by the guys of Mutants Rising I know it's not problem related to my coding. I'm positive about that, even if i must admit my problem started when i seriously started to tinker with GVARs and MVARs. But then, is it a coincidence or not? And then why? I already made tests with no modded .H in place, among othr things. Uninstalling everithing and reinstalling does not work. Simple test dialogues only using LVAR_Herebefore work, the rest does not. I made a test with a backup Pc where I only put the regular game, FSE and the mapper. The only stuff I imported were a .SSL and its .MSG. That script isn't working. It's more then a month that I' m experiencing heavy troubles now, and I think I tried everything (or so I believe). Does anybody has clues? Corrupted modded files? Headers, maps, protos...Software or hardware compatibility problems? But then I modded for a year with the some pc...Again, I've been modding for more than a year and I do not want my project to die. If you have answers, suggestions, tips or simply want to know more, please let me know. Thanks for your time and goodbye.
----- I have Teflon brains: nothing sticks.
|
Отправлено: 17:35 - 17 Ноября, 2005
|
|
Alchemist
Модератор
Откуда: Арзамас-17 Регистрация: Дек. 2004
Всего: 298 сообщений
|
Could you post here sample of your dialogues? We had experienced similar troubles some time before, but there were internal bugs of IPP compiler.
----- /// What'ya be sain'? Vault 100+? We need nothing o'that!
|
Отправлено: 12:09 - 18 Ноября, 2005
|
|
Wasteland Ghost
Маленькое Злое Привидение
Откуда: Россия, Самара Регистрация: Дек. 2002
Всего: 2251 сообщение
|
... and send me or Alchemist your scripts.lst, please.
|
Отправлено: 14:19 - 18 Ноября, 2005
|
|
Sirren
Member
Откуда: Turin, Italy Регистрация: Нояб. 2005
Всего: 11 сообщений
|
Hi, Alchemist and wasteland Ghost. I give you two samples. The first one was given to by the guys of M.R. This procedure always shows Node004, no matter the circumstances. procedure talk_p_proc begin if dude_is_male then begin //male has the same talk option always call Node003; end //end part for the male talk else begin //if player is not male if (map_var(MVAR_JAMES_DEAD) == 0) then begin //if james is alive if local_var(LVAR_Herebefore == 0) then begin //first time talking (LVAR is 0), james is alive start_gdialog(NAME,self_obj,4,-1,-1); gSay_Start; call Node004; gSay_End; end_dialogue; end else begin //was here before, first talking done (LVAR is different from 0), james is alive start_gdialog(NAME,self_obj,4,-1,-1); gSay_Start; call Node007; gSay_End; end_dialogue; end end else begin //james map var is different from 0, he should be dead, hehe start_gdialog(NAME,self_obj,4,-1,-1); //female talk if james is dead gSay_Start; call Node008; gSay_End; end_dialogue; end end //end part for the female talk end I made this second sample and there might be syntax mistakes. This one behaves really bad. The procedure is called via critter_p_proc, so the critter starts talking when he sees the pc(if not hostile). At first it worked as intended, but when I added the MVAR Node007 was not called. After a while it began to always show the same node, then a node with dialogues lines taken from other scripts. Currently it locks/crashes both the game and the mapper: black screen, program gets minimized on the toolbar, my sound card settings are running. At least once this opened my antivirus as well. This is my only script giving such results, my other scripts simply work as sample 1. procedure talk_p_proc begin if (map_var(MVAR_TRAP_KNOWN) == 0) then begin start_gdialog(NAME,self_obj,4,-1,-1); gSay_Start; if local_var(LVAR_Herebefore == 0) then call Node001; else if (local_var(LVAR_Herebefore) == 1) then call Node003; else if (local_var(LVAR_Herebefore) == 2) then call Node006; gSay_End; end_dialogue; end else begin start_gdialog(NAME,self_obj,4,-1,-1); gSay_Start; call Node007; gSay_End; end_dialogue; end end I'm emailing my scripts.lst to you, Wasteland Ghost. Currently it features only 4 new scripts. The first sample is fmrscull.int, the second sample isn't registered. Thanks to both of you. Bye.
----- I have Teflon brains: nothing sticks.
|
Отправлено: 14:54 - 18 Ноября, 2005
|
|
Wasteland Ghost
Маленькое Злое Привидение
Откуда: Россия, Самара Регистрация: Дек. 2002
Всего: 2251 сообщение
|
Цитата: local_var(LVAR_Herebefore == 0)
Here is error. Must be local_var(LVAR_Herebefore) == 0 But I don't think this error causes game crash. Check this: 1. Have you registered MVARs you're using in the proper gam-file? 2. How do you call procedure talk_p_proc from critter_p_proc? By call talk_p_proc or by dialogue_system_enter? Could you post here code for procedure Node003?
|
Отправлено: 16:45 - 18 Ноября, 2005
|
|
Sirren
Member
Откуда: Turin, Italy Регистрация: Нояб. 2005
Всего: 11 сообщений
|
Hi Wasteland Ghost. 1) Yes, MVARS were registered in the proper .gam. First time I checked I realized I made mistakes. I fixed them but to no results. I also noticed this: if I register MVARS with FSE and the .gam does not exist, then the file is created...without the var. I had to tinker a lot, and since I had to reinstall the game many times I don't know if I still have the first version. 2) By dialogue_system_enter. Wrong way? 3)This is the related Node003 procedure Node003 begin set_local_var(LVAR_Herebefore,2); Reply(105); NOption(106, Node002, 001); NOption(107, Node004, 005); end Bye. Entire "Wasteland Ghost" is a nickname. So please, type it correctly or use copy/paste option. Spy
|
Отправлено: 2:08 - 19 Ноября, 2005 | ИСПРАВЛЕНО: Spy - 12:12 - 19 Ноября, 2005
|
|
Wasteland Ghost
Маленькое Злое Привидение
Откуда: Россия, Самара Регистрация: Дек. 2002
Всего: 2251 сообщение
|
1) I'm not using FSE or any other shell, so I can't say anything except "check everything" . 2) Right way. 3) Here is an error. Not in the Node003, but in the procedure talk_p_proc. Must be: if dude_is_male then begin start_gdialog(NAME,self_obj,4,-1,-1); gSay_Start; call Node003; gSay_End; end_dialogue; end
|
Отправлено: 11:27 - 19 Ноября, 2005
|
|
Sirren
Member
Откуда: Turin, Italy Регистрация: Нояб. 2005
Всего: 11 сообщений
|
O.K. I'm checking talk_p_proc... About "local_var(LVAR_Herebefore) == 0": odds are I replicated the mistake in all my latest scripts, so that's why ALL of my scripts were not working...Pretty dumb by my part... Anyway, your help was unvaluable, I couldn't have solved this by myself. I'll keep check your forum. For now thanks again and best wishes to you. Bye.
----- I have Teflon brains: nothing sticks.
|
Отправлено: 2:38 - 20 Ноября, 2005
|
|
|
|