Здесь я буду плакаться о сложностях в постижении скриптов Arcanum. Если найдётся спец, который меня просветит по спорным пунктам в скриптах, то я с радостью приму его помощь.
И так, начнём:
1. Скрипт 01355InnerEncampmentGuardHB
а) Оригинальный скрипт
1. object type of Current Looped Object: store in Local 0
2. IF Local 0 == 15
THEN do nothing
ELSE goto line 8
3. distance between Attachee and Current Looped Object: get in Local 5
4. IF Local 5 <= 3
THEN do nothing
ELSE goto line 8
5. Local 2 = 1
6. Triggerer = Current Looped Object
7. loop break
8. loop end
9. IF Local 2 == 1
THEN goto line 11
ELSE goto line 10
10. return and RUN default
11. loop for Every Follower (single player)
12. IF Current Looped Object is named 6410
THEN goto line 28
13. IF Current Looped Object is named 6571
THEN do nothing
ELSE goto line 28
14. IF Current Looped Object is invisible
THEN goto line 28
15. IF Triggerer is invisible
THEN do nothing
ELSE goto line 19
16. float line 1 above Attachee
17. combat: Attachee attacks Current Looped Object
18. return and RUN default
19. IF Global Variable 1016 == 1
THEN goto line 21
ELSE goto line 24
20. return and RUN default
21. IF Triggerer is in dialog
THEN goto line 23
22. call script 1356 at line 3 with triggerer Triggerer and attachee Attachee
23. return and RUN default
24. IF Triggerer is in dialog
THEN goto line 27
25. IF Global Variable 1016 == 2
THEN goto line 30
26. call script 1356 at line 1 with triggerer Triggerer and attachee Attachee
27. return and RUN default
28. loop end
29. return and RUN default
30. combat: Attachee attacks Triggerer
31. return and RUN default
32. remove this script
33. return and RUN default
1. object type of Current Looped Object: store in Local 0
2. IF Local 0 == 15
THEN do nothing
ELSE goto line 8
3. distance between Attachee and Current Looped Object: get in Local 5
4. IF Local 5 <= 3
THEN do nothing
ELSE goto line 8
5. Local 2 = 1
6. Triggerer = Current Looped Object
7. loop break
8. loop end
9. IF Local 2 == 1
THEN goto line 11
ELSE goto line 10
10. return and RUN default
11. loop for Every Follower (single player)
12. IF Current Looped Object is named 6410
THEN goto line 13
ELSE goto line 15
13. Local 6 = 1
14. loop break
15. loop end
16. goto line 18
17. return and RUN default
18. IF Local 6 == 0
THEN goto line 20
19. return and RUN default
20. loop for Every Follower (single player)
21. IF Current Looped Object is named 6571
THEN do nothing
ELSE goto line 36
22. IF Current Looped Object is invisible
THEN goto line 36
23. IF Triggerer is invisible
THEN do nothing
ELSE goto line 27
24. float line 1 above Attachee
25. combat: Attachee attacks Current Looped Object
26. return and RUN default
27. IF Global Variable 1016 == 1
THEN goto line 29
ELSE goto line 32
28. return and RUN default
29. IF Triggerer is in dialog
THEN goto line 31
30. call script 1356 at line 3 with triggerer Triggerer and attachee Attachee
31. return and RUN default
32. IF Triggerer is in dialog
THEN goto line 35
33. IF Global Variable 1016 == 2
THEN goto line 38
34. call script 1356 at line 1 with triggerer Triggerer and attachee Attachee
35. return and RUN default
36. loop end
37. return and RUN default
38. combat: Attachee attacks Triggerer
39. return and RUN default
40. remove this script
41. return and RUN default
14. loop break
15. loop end
16. goto line 18
17. return and RUN default
18. IF Local 6 == 0
THEN goto line 20
19. return and RUN default
20. loop for Every Follower (single player)
а) Оригинальный скрипт
1. dialog 1
2. return and SKIP default
3. dialog 15
4. return and SKIP default
5. loop for Everyone in Vicinity
6. IF Current Looped Object is named 6571
THEN Attachee = Current Looped Object
ELSE goto line 8
7. call script 1352 at line 20 with triggerer Triggerer and attachee Attachee
8. loop end
9. return and SKIP default
10. call script attached to Attachee at point 19 at line 32 with triggerer Triggerer
11. return and SKIP default
1. dialog 1
2. return and SKIP default
3. dialog 15
4. return and SKIP default
5. loop for Everyone in Vicinity
6. IF Current Looped Object is named 6571
THEN Attachee = Current Looped Object
ELSE goto line 8
7. call script 1352 at line 20 with triggerer Triggerer and attachee Attachee
8. loop end
9. return and SKIP default
10. call script attached to Attachee at point 19 at line 40 with triggerer Triggerer
11. return and SKIP default
а) Оригинальный скрипт
1. IF Triggerer is named 6580
THEN do nothing
ELSE goto line 9
2. loop for Everyone in Vicinity
3. object type of Current Looped Object: store in Local 0
4. IF Local 0 == 15
THEN do nothing
ELSE goto line 7
5. set PC Current Looped Object quest 1079 to state 4
6. loop end
7. IF Global Flag 2146 == 1
THEN return and SKIP default
8. Global Flag 2155 = 1
9. return and SKIP default
1. IF Triggerer is named 6580
THEN do nothing
ELSE goto line 9
2. loop for Everyone in Vicinity
3. object type of Current Looped Object: store in Local 0
4. IF Local 0 == 15
THEN do nothing
ELSE goto line 8
5. IF Global Flag 2155 == 1
THEN goto line 6
ELSE goto line 7
6. set PC Current Looped Object quest 1079 to state 4
7. loop break
8. loop end
9. return and SKIP default
THEN goto line 6
ELSE goto line 7
6. set PC Current Looped Object quest 1079 to state 4
7. loop break
8. loop end
9. return and SKIP default
4. 02179Murgo_Sector
а) Оригинальный скрипт
1. IF Local 1 == 0
THEN return and RUN default
2. IF Local 1 == 26
THEN return and RUN default
3. IF Local 1 == 28
THEN call script attached to Attachee at point 9 at line 20 with triggerer Player
ELSE goto line 7
4. return and RUN default
5. call script attached to Attachee at point 9 at line 11 with triggerer Triggerer
6. return and RUN default
7. Counter 1 = Counter 1 + 1
8. IF Counter 1 <= 5
THEN goto line 13
9. have critter Attachee stop following his leader
10. float line 2 above Attachee
11. Global Flag 2707 = 1
12. return and RUN default
13. float line 1 above Attachee
14. return and SKIP default
1. IF Local 1 == 0
THEN return and RUN default
2. IF Local 1 == 26
THEN return and RUN default
3. IF Local 1 == 28
THEN return and RUN default
4. Counter 1 = Counter 1 + 1
5. IF Counter 1 <= 5
THEN goto line 10
6. have critter Attachee stop following his leader
7. float line 2 above Attachee
8. Global Flag 2707 = 1
9. return and RUN default
10. float line 1 above Attachee
11. return and SKIP default
1. IF Local 1 == 26
THEN return and RUN default
2. IF Local 1 == 0
THEN return and RUN default
3. Counter 1 = Counter 1 + 1
4. goto line 9
5. have critter Attachee stop following his leader
6. call script 2179 at line 13 with triggerer Player and attachee Attachee in 2 seconds
7. Global Flag 2707 = 1
8. return and RUN default
9. call script 2179 at line 11 with triggerer Player and attachee Attachee in 2 seconds
10. return and SKIP default
11. float line 1 above Attachee
12. return and RUN default
13. float line 2 above Attachee
14. return and RUN default
5. Скрипт 30026Caladon_Crusading_Chain_WIELD_ON - решено, принята правка скрипта из патча
а) Оригинальный скрипт
1. Local 0 = Counter 0
2. IF Local 0 == 0
THEN return and RUN default
3. give Triggerer the effect Counter 2 with cause 5
4. Local 0 = Local 0 - 1
5. goto line 2
6. Local 0 = Counter 0
7. IF Local 0 == 0
THEN return and RUN default
8. remove from Triggerer the effect Counter 2
9. Local 0 = Local 0 - 1
10. goto line 7
1. Local 0 = Counter 0
2. give Triggerer the effect 308 with cause 5
3. IF Local 0 == 0
THEN return and RUN default
4. give Triggerer the effect Counter 2 with cause 5
5. Local 0 = Local 0 - 1
6. goto line 3
7. Local 0 = Counter 0
8. remove from Triggerer the effect 308
9. IF Local 0 == 0
THEN return and RUN default
10. remove from Triggerer the effect Counter 2
11. Local 0 = Local 0 - 1
12. goto line 9
6. Скрипт 30027Caladon_Crusading_Chain_WIELD_OFF - решено, принята правка скрипта из патча
1. Оригинальный скрипт
1. return and RUN default
1. return and RUN default
7. 30067Black_Stone_Blade_WIELD_OFF
1. Оригинальный скрипт
1. return and RUN default
1. IF Global Flag 2931 == 0
THEN Global Flag 2931 = 1
2. call script attached to Attachee at point 24 at line 1 with triggerer Triggerer
3. return and RUN default
1. goto line 29
2. Local 6 = 4
3. Local 7 = 0
4. Local 8 = 0
5. Local 9 = 0
6. IF items are being rewielded
THEN goto line 8
7. IF Attachee is identified
THEN script eye candy: play 30 on Triggerer
8. magic/tech: adjust Local 6 by item Attachee used by Triggerer: store in Counter 0
9. magic/tech: adjust Local 7 by item Attachee used by Triggerer: store in Counter 1
10. magic/tech: adjust Local 8 by item Attachee used by Triggerer: store in Counter 2
11. magic/tech: adjust Local 9 by item Attachee used by Triggerer: store in Counter 3
12. Local 0 = Counter 0
13. IF Local 0 == 0
THEN goto line 17
14. give Triggerer the effect 222 with cause 5
15. Local 0 = Local 0 - 1
16. goto line 13
17. Local 0 = Counter 1
18. IF Local 0 == 0
THEN goto line 21
19. Local 0 = Local 0 - 1
20. goto line 18
21. Local 0 = Counter 2
22. IF Local 0 == 0
THEN goto line 25
23. Local 0 = Local 0 - 1
24. goto line 22
25. Local 0 = Counter 3
26. IF Local 0 == 0
THEN return and RUN default
27. Local 0 = Local 0 - 1
28. goto line 26
29. Local 0 = Counter 0
30. IF Local 0 == 0
THEN goto line 34
31. remove from Triggerer the effect 222
32. Local 0 = Local 0 - 1
33. goto line 30
34. Local 0 = Counter 1
35. IF Local 0 == 0
THEN goto line 38
36. Local 0 = Local 0 - 1
37. goto line 35
38. Local 0 = Counter 2
39. IF Local 0 == 0
THEN goto line 42
40. Local 0 = Local 0 - 1
41. goto line 39
42. Local 0 = Counter 3
43. IF Local 0 == 0
THEN return and RUN default
44. Local 0 = Local 0 - 1
45. goto line 43