-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathChangelog.txt
2184 lines (2113 loc) · 129 KB
/
Changelog.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
Incursion (open source) 0.6.9Y20: 2024-??-??
* https://github.com/rmtew/incursion-roguelike/issues/27: The code assumed that on a day passing there would never be more than 2048 objects per map. Popo McTroll reported on Julian's old email list that he managed to get this upwards of 3000. The code should now handle whatever number have accrued. Fixed by https://github.com/HexDecimal.
* https://bitbucket.org/rmtew/incursion-roguelike/issues/244/: Consistency changes and fixes to spelling throughout the game text. This also renames the Flat-Footed concept to Off-Guard, inspired by the notion snakes and other creatures may not have feet to be flat. Pull request from Dave Duckett.
* https://bitbucket.org/rmtew/incursion-roguelike/issues/246/: The build.bat script has been upgraded significantly. It now supports 'build-project'/'-bp' which replaces the old never implemented 'project'/'-p'. And it also supports user functions, which are dynamically handled along with the standard ones, and it's used for 'compile-scripts'/'-cs' which can of course be used to compile 'Incursion.mod'. This might currently be the only way to compile the scripts.
* https://bitbucket.org/rmtew/incursion-roguelike/issues/248/: Incursion now has an x64 configuration and with minor complications compiles and starts up. Note that there are a lot of compilation warnings, so stability is questionable. The x64 compilation requires some finessing, as modaccent is a very dated codebase that crashes hard when run as an x64 executable. But the Win32 binary does exactly the same thing. The exe_curses project is disabled for x64, as it only comes able to compile for Win32. As it's not really usable, this isn't much of a loss.
* https://bitbucket.org/rmtew/incursion-roguelike/issues/249/: Dropping part of a stack would result in the non-dropped portion disappearing. Reported and fixed by cadmal@Bitbucket.
* https://bitbucket.org/rmtew/incursion-roguelike/issues/252/: The goddess Mara was displeased when corpses were eaten. This wasn't, it just wasn't documented. Reported by Daniel Rubin, fix provided via pull request by Dave Duckett.
* https://bitbucket.org/rmtew/incursion-roguelike/issues/256/: Typo in Master Grapple description, along the lines of "... yo umake ..." Reported by Vornag@Bitbucket.
* https://bitbucket.org/rmtew/incursion-roguelike/issues/257/: Imagine if any given monster could have three different types, and it didn't matter what order they were in. But the logic which decided if they could be talked to, judged them on the first of these types. And of course, some who had the misfortune of having a designated non-talkative first type, were special cases like smart talking mushrooms. Now all the types are checked, and some get a pass with a MA_TALKABLE flag, and others get their pass revoked with a MA_NOTTALKABLE flag. In theory, this constitutes a correct by manual validation system so it's not ideal, but what's the alternative? Reported by Vornag@Bitbucket.
* https://bitbucket.org/rmtew/incursion-roguelike/issues/257/: Typo in various files, with "sedentry" used instead of "sendentary".
* https://bitbucket.org/rmtew/incursion-roguelike/issues/258/: Typo in various files, with "monsterous" used instead of "monstrous".
Incursion (open source) 0.6.9Y19: 2015-08-14
* https://bitbucket.org/rmtew/incursion-roguelike/issues/207/: Incursion domain names finished transferring from Julian.
* https://bitbucket.org/rmtew/incursion-roguelike/issues/209/: Make a standalone module compiler. This is as done as it can be, and it is now possible to invoke the debug Incursion executable with the '-compile' argument to get it to build the default core module 'main.irc'. '-compile <modulename.irc>' can be used instead to build other modules.
* https://bitbucket.org/rmtew/incursion-roguelike/issues/217/: When Google Breakpad minidumping was first added, it was promptly removed when people started complaining that Error() would crash trying to do a minidump. Now in release builds, which are the only ones with Breakpad support, the Error() function allows the user to choose to try and drop a minidump.
* https://bitbucket.org/rmtew/incursion-roguelike/issues/222/: Spelling and grammar fixes. Pull request from Carl Minden.
* https://bitbucket.org/rmtew/incursion-roguelike/issues/231/: Help menu entries were present for content which was not present. Reported by Vornag.
* https://bitbucket.org/rmtew/incursion-roguelike/issues/233/: Cancelling crashed when fields were encountered with no associated effect. Reported by Vornag.
* https://bitbucket.org/rmtew/incursion-roguelike/issues/235/: Typo in text displayed when attempting to climb. Reported by Vornag.
* https://bitbucket.org/rmtew/incursion-roguelike/issues/236/: Moving between levels crashes when an illusion stops as days pass and then the UI is refreshed but the 'between levels' coordinates of -1, -1 choke everything that consumes them. Reported by Esran Zarnath.
* https://bitbucket.org/rmtew/incursion-roguelike/issues/239/: Secondary skill kit bonuses should be one per item type, not one per each of item type held by player. This is not ideal as there may be multiple different visual item types for instance, but at least it no longer exploitable by holding 20 viewing lenses.
* https://bitbucket.org/rmtew/incursion-roguelike/issues/240/: Your best type of rope in your inventory should add a given bonus to climbing attempts. However, the wrong value is looked up and all ropes give +2 bonus (which is less than any rope bonus).
* https://bitbucket.org/rmtew/incursion-roguelike/issues/243/: Remove reference to Julian, and feedback on game design. Reported by Dave Duckett.
* Spelling fix: ressurrection/ressurection -> resurrection.
* Documented script constants, noting which were unused. These are used for dungeon creation, defining how gods interact with players, and more.
Incursion (open source) 0.6.9Y18: 2015-03-04
* https://bitbucket.org/rmtew/incursion-roguelike/issue/215/: Finished Google Breakpad reintegration. Build script now packages libs and includes for Breakpad in the generated dependencies archive. Build script now packages the licenses in the generated dependencies archive. Build script now actually generates a dependencies archive. Rename USE_CRASHPAD to USE_BREAKPAD. Make static library names pragmas for Breakpad to allow easy disabling.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/219/: Fix a crash where the game exited, when the player tried to use the animal companion ability. This was introduced by a typo when the recent refactoring was done to allow other interfaces like Curses. Reported by Karagy@bitbucket.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/220/: Typo in Empower spell feat, 'Megnitude' -> 'Magnitude'. Reported by Vornag@Bitbucket.
Incursion (open source) 0.6.9Y17: 2015-03-03
* https://bitbucket.org/rmtew/incursion-roguelike/issue/213/: GIT on Windows will not recognise file names that are not in exactly the right casing that they were added to it as. Visual Studio will rename files it encounters on disk, that do not have the same casing as it has for them, to have it's casing. Eventually a programmer will tab complete a file name and do a git command on it, and the command will fail silently as the file name casing is no longer correct for git. git can suck it. But for now, this corrects the VS2013 file name casing.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/214/: Add the Open Gaming License to the LICENSE file. Note that it was and always has been included already within the game executable.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/215/: Reintroduction of Google Breakpad. This will write minidumps out to the game directory if the game crashes, as before. However, it's been removed from the place it caused crashes in the last time. It has also been updated to the latest version which will hopefully address reports of empty minidumps for #216.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/216/: The last release seems to have included a whole raft of changes that were forgotten about, related to Curses support. One final pre-release change introduced graphical corruption if you were lucky, instability if not. Reported by Robsoie@Bay12.
Incursion (open source) 0.6.9Y16: 2015-03-01
* https://bitbucket.org/rmtew/incursion-roguelike/issue/1/: Implemented 'pain tolerance' feat. Pull request submitted by thehouseoflai@Bitbucket.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/205/: Enabled sub-races support. This was disabled but has now been reenabled, is untested and generally unsupported. Pull request submitted by Thydron@Bitbucket.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/206/: GPLv2 violation within unused code compiled into the distribution binaries reported by johnny0@Bitbucket. Rather than relying on compiler dead code removal, now the problematic file (the Accent compiler compiler runtime) is explicitly excluded from the distribution build
* https://bitbucket.org/rmtew/incursion-roguelike/issue/207/: Incursion domain name transfers. Outstanding donations in the paypal account ($28.52US) have been used to fund transfer of the 'incursion-roguelike.org/.net/.com' domains from the original Incursion author, Julian. This will prevent people finding the old stale domains which refer to old releases, and experiencing a more broken Incursion. And will provide a better entrypoint than the bitbucket project page. In the long term, the .net and .com domains may be discarded.
Incursion (open source) 0.6.9Y15: 2014-12-23 (Festivus release)
* https://bitbucket.org/rmtew/incursion-roguelike/issue/4: Implemented 'amplify spell' metamagic feat. This reduces the target's magic resistance by 25%.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/46/: Character sheet recall monster option allows a user to read a card detailing the selected monster type. However, certain monster categories were not displaying correctly because the value was bumped 100000 as an indicator and the value's variable was an int16. Reported by Stone_Dog@Bitbucket.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/44/: Added note to empty handed warning about ability to switch warning off in the options.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/179/: Legacy bug! If you provide an assignment operator overload, then you should provide a matching copy constructor. The reason for this is that you are sometimes likely to assign in a variable declaration, which uses the latter not the former. Not providing the copy constructor, will do a bitwise copy which will result in this case in EventInfo instances sharing the same string references. The first to get destroyed, will destroy the strings it thinks it owns, and either corruption or crashing will then happen. Reported by Felius@Bay12.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/183/: If the user set 'Roguelike Keyset' to 'ON' and 'Shift Arrow Keys' to 'Run', shift and any of the 'vi keys' would not result in the player running. This is an artifact of the move from Allegro to libtcod. There's a special place in hell reserved for the SDL developers and their new API which goes lowest common denominator in order to cram in support for the mobile experience. If someone presses 'h' it is a text event, if someone presses shift+'h' it is a key event with the shift modifier. Ugh. Reported by dck k, with reproduction case.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/185/: The victim oriented message shown to bystanders when an attack attempt was towards a weapon, rather than it's wielder, was about the actor rather than the victim. This meant a mud elemental attacking a weapon would result in a message describing the weapon to be the mud elemental's rather than the wielders. Reported by Georgy Vlasov.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/186/: 'One body, one soul' feat was intended to substitute best attribute value out of wisdom and constitution in some circumstances, but the code was wrong. Reported by Karagy, with patch.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/187/: Doing an enter action via the 'y' use menu did not validate the target object type before sending the event, and the script engine would choke when it found that whatever it was the player was trying to enter, was not a portal. Reported by Karagy, with handy save file.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/188/: Selecting an item from the inventory would crash if there were more than 100 items in there somewhere. This was a hard-coded limit added in a previous bug fix, for some reason. Now buffer is reallocated by enumeration function and problem goes away. Reported by Felius@Bay12, with handy save file.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/189/: Precision strike had no range constraint, allowing it to be used against distant targets. It uses the wielded weapon, otherwise the default attack of the racial type. If the wielded weapon was ranged, then it was used as a brawl weapon naively. For now precision strike cannot be used if the wielded weapon is ranged. Reported by Felius@Bay12, with handy save file.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/190/: If a god is angry but decides to act later, then a stati was registered for it. Unfortunately, it wasn't checked if there was already such a stati from a previous decision to act and act later, so they accumulate and the maximum number of stati that can be present on the player is hit, resulting in a red box. Reported by Felius@Bay12, with handy save file.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/191/: When people use the roguelike keyset, this overrides all the keys that comprise the roguelike keyset to do arrow key movements. Unfortunately this means that any menu that expects these keys gets the movement character instead. Including in this case, the learn spell option in the character sheet. Now if roguelike keyset is in use, 'E' is advertised as the key instead of 'L'. Reported by Thyme Oregano@Bitbucket.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/192/: Compilation warning fixes broke money transfers, resulting in bugged amounts being transferred due to signed/unsigned variable interaction. Reported by Felius@Bay12, with handy save file.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/193/: Compilation warning fixes broke casted touch attacks, resulting in crashes. Reported by Felius@Bay12, with handy save file.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/194/: Compilation warning fixes broke praying for aid. Reported by Felius@Bay12, with handy save file.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/195/: Observed messages where the action for some reason could be observed, but the actor could not be identified, would report the action as 'It blah blah..' as a substitution for 'The thing blah blah..'. Now, the message observed is 'Something blah blah..' in this case.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/196/: When someone successfully counterspells, they get the act factored into when their next action happens, as a delay. The problem was that counterspell has benefits over and above the advertised ones, where the delay is reduced as the skill level of counterspell increases. This then goes negative at a certain level, and puts the player out of commission with a permanent timeout. Reported by Felius@Bay12, with handy save file.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/199/: The poison doses requires to coat each 10 missiles, required 1 dose for the first 20 and an additional dose for each additional 10. This is bad math. It should be 1 dose per 10. Reported by Felius@Bay12.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/200/: Undefined 141 appeared in character abilities listing, this is because Master Artisan lacked an entry in the naming table.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/201/: The code which considers paralysis of a target as valid for coup de gras checked skills on the actor, rather than the victim. Reported by Felius@Bay12, with handy save file.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/202/: The attribute rolling animation took a strangely long time. The animation display update, and display delay were the same, but just seemed more effective (and slower) under libtcod. This is fixed by only updating the animation for the first 0.5 seconds of the roll, as it's all a super fast graphical affectation anyway.
Incursion (open source) 0.6.9Y14: 2014-11-15
* https://bitbucket.org/rmtew/incursion-roguelike/issue/129/: Journal entries are now listed in order of most recent to oldest. Level stats are put first, instead of last. This is to put the most relevant information in the most accessible place. Reported by golgepapaz, with patch.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/135/: Lost symbols for wrapped messages. This was observable through looking at monsters with lifesight cast. Any wrapped text in the generated description would be overwritten in some cases. Reported by Karagy.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/150/: Making a chi strike did not explicitly take mana from the victim, and likely took it from the actor. Reported by dck k.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/155/: Gauntlets of Rust can be activated from the 'a'ctivate menu. The description only addressed protection from rust, and not the 3x per day rusting grasp they can be used for. The description has been amended. Reported by dck k.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/167/: More level generation fixes related to room weights. If comparing a signed value stored in an unsigned variable, cast it before comparison, not after. Also, if all room types were flagged as already used, they would then all be unflagged for reuse - however it was also necessary to reset the room weights and more.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/173/: Knowledge domain does not grant scribe scroll spell as described. Reported by Brett Olsen, with patch.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/176/: Compilation warning fixes broke alignment checks, resulting in penalties and restrictions for the wrong alignments. Reported by John Olender, with patch.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/177/: Use menu was enacting the wrong effect, for selected innate abilities. This was due to Y12 compiler warning fixes, where an argument to UseAbility was cast to uint8, and UseAbility had it typed as int16. Reported by S M.
Incursion (open source) 0.6.9Y13: 2014-10-27 UNSTABLE
* https://bitbucket.org/rmtew/incursion-roguelike/issue/167/: Sometimes when level areas are being generated, the selection of room types failed, and a fatal error put allowed the player to win the game of failed level area generation. This game is not about the player winning, so the relevant code has been altered to better handle problem situations.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/168/: The tabbing between links in the help system causes crashes. Legacy bug where code was looking for information using X as Y coordinate and Y as X coordinate. Also a Y1 bug where looking up the character at a screen coordinate was incorrectly implemented.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/169/: This fixes the dialog which appears in debug builds when leaked stati backrefs are found. When an object is removed, it cleans up the stati which have it as a target. To do this, it looks at the backref on itself, then to the stati on the originating object. But certain kinds of stati when removed, are simply orphaned with the backref removed explicitly. The only problem was that the backref removal passed in opposite values than which it needed to, failing to remove the backref. Then the removed object would see the backref again when it moved on to it's next removal, and not be able to find the now-orphaned stati. Cue dialog.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/170/: Little known fact that objects get more difficult to unlock the deeper into the dungeon you get. If a locked object in your inventory is examined, this fact combined with items in your inventory not being in the dungeon, results in a crash.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/170/: A different issue relates to broken dungeon generation, which places stairs down to unsafe terrain. Fixing that would fix the dungeon generation. This issue and fix relates to instead adding a confirmation dialog to the taking of stairs down to unsafe terrain, under the provisio you should be able to step down carefully and choose to step back up. There is a school of thought that these stairs to unsafe terrain are an interesting feature which should be retained, regardless of fixes to dungeon generation.
Incursion (open source) 0.6.9Y12: 2014-06-28 UNSTABLE
* This release is an interim one. Hundreds of compiler warnings were fixed, and while most were benign explicit type casting, three were bugs. Do not ask me what they were, as I was too stupid to note them down, and they are hidden amongst all the others. These changes are possibly unstable, and might cause this release to be unreliable.
* I recreated the missing accent compiler compiler source code. This allows changes to the IncursionScript language.
* Added typing support to the IncursionScript grammar for things like int8, int16 and so forth. Previously all data typing was int32. This was primarily to remove the warnings when compiling the generated IncursionScript engine to game engine method and function call access API code.
Incursion (open source) 0.6.9Y11: 2014-06-10
* https://bitbucket.org/rmtew/incursion-roguelike/issue/140/: Fix bug where previous fix for scrolling position persisting in different windows that allow scrolling, broke scrolling in other locations. Reported by Karagy.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/142/: Fixed a crash bug where when a monster would look for nearby items to pick up, and the variable that pointed to that object was not set. Reported by Charlie G.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/146/: Fixed a bug where the error box would appear when a summoning creature reached it's time to go away, if it had items which were summoned with it. A confluence of events would mean when an item was garbage collected, it would not find the back reference.. see the issue and linked changeset there-in for a detailed breakdown. Reported by Hamel@Bay12.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/148/: Lockup bug. More than 255 stati in place on an object would cause a inner stati tracking loop to overflow it's index wrapping it back to 0 before it could hit the exit clause. Reported by Hamel@Bay12.
Incursion (open source) 0.6.9Y10: 2014-06-01
* https://bitbucket.org/rmtew/incursion-roguelike/issue/11/: Fix spelling mistakes ('breech'->'breach', 'percieve'->'perceive', 'inherant'->'inherent').
* https://bitbucket.org/rmtew/incursion-roguelike/issue/19/: In system options menu, when switching to the 'macro bindings' page, the options description was leaked from the previous page.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/27/: Fix crash bugs which happen when dipping an item into a fountain. The first case was where the dipped item transforms into a hostile monster at the location of the target of the dipping action, only dipping actions do not have a target but rather a first item (the dipped item) and a second item (the fountain). The second case was where the item gets teleported somewhere on the map - only the map is larger than the bounds of the Roll() function, so a bounds error would be hit.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/106/: Fix a bug where potion of mending could be applied to anything regardless of that anything being a valid target.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/106/: Fix a bug where trying to apply something to an inventory items would crash when there were no items suitable to apply it to.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/111/: If you summon a phantom steed and it does not like you, it would go away. But the message to tell you that, was muted because of a previous message output muting in the spell script which hadn't been correspondingly unmuted in this case. Reported by Frumple.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/125/: The scroll position is now cleared when the scroll area is cleared, which means that where things are scrolled to is no long
er the same even if something different was displayed in the scroll area. Reported by Karagy.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/131/: The Lifesight priest spell affects natural living creatures, otherwise known codewise as MA_NLIVING. There was no type name defined for this value, so when looked up it would print as 'Undefined 91'. Now it is mapped to 'Natural Living Creature'. Reported by Karagy.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/133/: The Forestation druid spell changes the terrain type, but turned allies hostile. This is a general reaction that happens to friendlies who are affected by an effect with EP_CURSE purpose. Forestation now has an additional purpose of EP_FIX_TROUBLE which ensures allies do not become hostile when affected by this. Reported by Karagy.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/137/: Add libtcod credit animation to the startup screen. Add some donation text to accompany it.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/138/: 'Change terrain type' in wizard menu implemented, replacing stub implementation which just put a 'wall of flame' tile down.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/139/: When the god Semirath gets angry, he tries to move things to random map locations, but causes a crash instead. This is another case of bounds being exceeded, and crashing ensuing.
Incursion (open source) 0.6.9Y9: 2014-05-08
* https://bitbucket.org/rmtew/incursion-roguelike/issue/126/: Google Breakpad caused crashes.
Incursion (open source) 0.6.9Y8: 2014-05-06
* https://bitbucket.org/rmtew/incursion-roguelike/issue/91/: When an object was removed (and deleted), it would remove all fields (e.g. modify objects within range) it had created which moved with it. This would leak the non-moving fields, which would get removed later with a hack, but because the creating object no longer existed the effects of the field could not be unapplied so it didn't bother. Reported by Frumple.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/94/: Creatures who see their friends get killed could have gotten afraid. Now mindless creatures in general are excluded from this. Reported by Joseph Kerr.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/96/: Made 'Augment Summoning' an official metamagic feat. Note that if the only metamagic you have is this one, the spell manager will simply say 'Au[g]ment Spell' in the metamagic listing; this is not a compound noun, but a verb phrase. Players are expected to be able to reconcile this to their 'Augment Summoning' feat. View the line with multiple metamagic feats, to see the pattern. Reported by Karagy.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/97/: Refreshing the spell manager rebuilt the feat list, which added onto the last time it was rebuilt, showing a more extended mangled doubled list each refresh. Reported by Karagy.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/104/: It is no longer possible to mount something which is asleep. Reported by Frumple.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/109/: Prevent mounting on a tile where it would not be possible to move to when mounted anyway. Reported by Frumple.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/110/: Logic in the encounter generation badly checked if there was an actor involved. I do not understand this game system, but this code is obviously bad. Reported by Frumple.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/116/: Using static variables for inventory enumeration state means that if the logic in the loop which is enumerating the inventory calls something which in turn reenumerates the inventory before returning, then the inventory enumeration state will be at it's end and the loop will prematurely exit.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/117/: Could not use the escape key to exit the y key use menu. The code supported handling an escape press already, but the flag to pay attention to escape at a lower level was not passed.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/119/: Trying to talk to something that was not a creature, or could not talk, would tell you they couldn't talk. Unless they were a creature who could not talk, where you could order them if they were friendly to you. Or if they were not a creature, when it went to see if they were friendly, it would just crash.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/123/: Bad code prevented the faster than the eye feat from allowing a player to put an item in a container and have it take no time.
* Turned on compilation warnings and found truncated values which would affect things like alignment changing when eating appropriate food, greeting people and encounter generation in unknown ways I have not bothered to identify.
* Fixed a crash where writing text left the cursor off the side of the screen, and the next time it blinked libtcod moaned about things being out of bounds.
Incursion (open source) 0.6.9Y7: 2014-04-22
* https://bitbucket.org/rmtew/incursion-roguelike/issue/33/: Fixed error message encountered when either creating a character, or reincarnating it, depending on whether 'Flooded Cavern' region is placed in the generated dungeon. This region had 'aboleth, with slaves' defined as a possible encounter, but sadly we have no aboleth (with or without slaves). Reported by holsety_s, but let's be honest we were all getting it and ignoring it.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/58/: Attacking a door would calculate final damage before applying material hardness bonuses (i.e. wizlock). Reported by Frumple.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/62/: If one weapon was ranged, all weapons would get the ranged tag in their description. Reported by Frumple.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/65/: Mobile fields from spells which were cancellable, could not be cancelled. Mobile fields from spells could be stacked ad infinitum, now they are hard coded as non-stackable. As each day passes, persistent effects should have been discarded, but a bug was modifying their duration and corrupted their identification as persistent. Reported by Frumple.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/67/: Moving while up a tree no longer has a chance of falling if the creature has the brachiation feat. Reported by Frumple.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/71/: Creatures attempting to move within a bad field (like a summoned swarm) would be unable to. Reported by Frumple.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/76/: Replace spell list for 'Shadow Magic' which had same list as 'Phantasmal Force', with Evocation spells as described. Reported by Frumple.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/85/: Fix a bug where if a creature had an innate ability and they rested, it would infinite loop trying to repeatedly remove it and failing because it shouldn't. Reported by Frumple.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/86/: Added 'Heightened Senses' to the 'Mortal Coil' spellbook. Reported by Frumple.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/88/: Change 'Chameleon Shifting' from an INFLICT (which has saving throws) to a GRANT (which has none). Specify the hide skill bonus should be +10, not unspecified which is a +0. Reported by Frumple.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/90/: Fixed crash where attacker standing on magma dies from magma damage incurred by attack/strike action, before actual strike action starts. Reported by Frumple.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/93/: Ordering one summoned ally to return to their home plane resulted in all summoned allies returning to their home plane.
* Slipping on a pool of grease would incur some damage, and give a message that the acting entity fell. However, whatever action was in progress would be allowed to proceed. Now the action is aborted, in line with the acting entity falling over (and consistent with other slipping types).
* Pressing escape in character creation when selecting gender would cause a crash when the character was later reincarnated. Now it is harmless.
* Using English instead of American spelling, because if they speak in English accents in Game of Thrones, it's how they must do it in all fantasy worlds.
Incursion (open source) 0.6.9Y6: 2014-04-15
* https://bitbucket.org/rmtew/incursion-roguelike/issue/43/: In past libtcod builds at least, when the game was waiting for input, the CPU would be at full usage. Now, the idle input loop only checks for input when it has to. From 100% to 2% CPU usage.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/48/: The cursor blinking support was not implemented for libtcod. Now it is, and the wonderous thing that it is can be viewed at various places like where you choose your gender in character creation.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/26/: Fix crash where missiles land on terrain where they cannot be placed (e.g. magma, slime, deep water) and it was assumed they were placed successfully, and subsequent logic failed. Reported with reproduction data by Frumple from Bay12 forums.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/49/: Fix crash where monster moves over chasm or similar terrain where they fall, then die through damage acquired in doing so. The logic did not check that the falling damage had killed the monster, and the logic crashed as a result. Reported with reproduction data by Frumple from Bay12 forums.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/51/: Fix use of control and alt in UI like the inventory. The fixes for non-US keyboards broke this use case by accident.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/54/: Casting a spell at a deep water tile was treated as casting a spell when standing on a deep water tile.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/52/: Chests were not autolootable, because chests are a type of container, but chests are not specifically containers. The scripting language only recognised containers as containers. Now, anything checked to be a container, will be considered a container even if it is a chest. This may introduce problems where only specifically containers are intended to be included, and now chests are also.
Incursion (open source) 0.6.9Y5: 2014-04-10
* https://bitbucket.org/rmtew/incursion-roguelike/issue/41/: Fix bug where numpad '.' key does not do rest action like normal '.' key. This is because numpad is only supported when numlock is turned off, due to how we receive notification about key events from SDL2 via libtcod.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/42/: Fix bug where space key sends two key presses for each actual press. This was caused by the non-US keyboard fix.
Incursion (open source) 0.6.9Y4: 2014-04-09
* https://bitbucket.org/rmtew/incursion-roguelike/issue/39/typo-in-cant-rest-at-the-inn-anymore: Fix typo in cave entrance scripts, reported by Tuyen Tran.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/37/whips-unable-to-prevent-enemies-from: Fix bug where whips are unable to prevent enemies closing in with their reach, reported by Cranky_Corvids, fix provided by Carl Minden.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/38/monsters-picking-up-cursed-items-uncurse: Fix bug where when monsters died, they dropped their inventory. But rather than clearing the flag on the item which marked the item as their property (and not something they could be ordered to give to the orderer), they cleared every other flag including as noted here the cursed flag.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/28/problems-with-knock-and-auto-knock: Extended knock spell description to refer to locked containers in general, and not just doors.
* Fix for resolution changing (via the options menu), and switching between full screen and windows (alt+enter).
* Preliminary fix for bug with some keyboards where people using non-US keyboard layouts find keys do not work as expected. Please give feedback if this does not work for you, and how it is not working.
Incursion (open source) 0.6.9Y3: 2014-04-05
* https://bitbucket.org/rmtew/incursion-roguelike/issue/32/oil-of-transformation-multiplies-stackable: Fix bug where when items change their type, perhaps from a rod to a staff, they get multiplied in quantity.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/35/skill-typos: Spelling fixes in skill descriptions.
* https://bitbucket.org/rmtew/incursion-roguelike/issue/34/capital-letters-not-working-shift-letter: Fix shifted keys and various other keys not working. Not guaranteed to be correct, but is better than before.
Incursion (open source) 0.6.9Y2: 2014-03-28
* Fix bug where saved games were not found, as the old Allegro pattern with two asterisks failed because libtcod file name matching only handles one asterisk.
Incursion (open source) 0.6.9Y1: 2014-03-25
* First release of the updated open source code.
* Replaced the dated Allegro 2.x as the base framework, with libtcod and it's underlying SDL2.
Incursion 0.6.9I
* Fixed bug with Maeve starting (very!) angry at elves
who _do_ worship her.
* Fixed very low sac values for cloaks, etc. to Maeve;
tweaked item costs a bit in general.
* Multitude domains fixed -- now truly random; manual
updated on this issue to be correct.
* The "OOD removal loop" no longer runs if the game is
set on NIGHTMARE difficulty.
* Fixed typo that broke a special case rule allowing
dwarves to ride Medium mounts like warponies.
* Fixed error related to spitting spiders hitting
objects with their spit attack.
* Fixed error with favor chart being truncated at
level 7 because I forgot that the constant lists
reserve 3 spots for null terminators (XavPieryLev.sav)
* Fixed text corruption with plural grammer (merge/merges)
as seen in Grognard.sav
* Fixed favor overflow resulting from use of int16 where
int32 should have been used. (Note: this broke save
compatability).
* Fixed recursivee CalcVales stack overflow error
(Kierny), and I _hope_ I didn't break anything else
doing so.
* Fixed Khasrach's orc summons arriving with 0 hp (and
assorted other "not initialized" problems, like no
active buffs for the shamans).
* Fixed incredibly baroque bug which caused displeasure
to be listed on character sheet as anger instead at
some times.
* Fixed bug where displeased gods could still give
interventions, and some other logic errors regarding
intervention.
* Monster Summoning now excludes animals, undead,
outsiders and incorporeal creatures.
* Fixed issue where Holy Summoning failed a lot for
CN or CE clerics of gods other than Xel, Zurvash and
Multitude. (It was trying to summon CN outsiders,
most of which start at CR 7! Now it summons demons
instead.)
Incursion 0.6.9H (subrelease 4)
* Fixed a problem where illusory creatures were always
CR 0, instead of CR based on Illusioncraft level.
* Fixed Kysul's "cannot descend" bug for real this time!
* Fixed Immotian's magic resistance (now 25% at favor
level 7, +15% per favor level thereafter).
Incursion 0.6.9H (subrelease 3)
* Fixed the creature-calling aspect of illusion spells,
which had been broken by the new encounter gen.
* Illusionists now start with scrolls of the higher
level illusion spells, to help them survive the
illusion-immune creatures at the beginning of the
game.
* Fixed a bug with Kysul preventing people from
descending even when not angry.
* Fixed bugs with the Master Archer's prerequisites.
* Fixed bug with Death Attack being applied against
inanimate objects.
* Fixed "Strange Spell Type" Alienist bug.
* I _think_ I fixed the problem with researching curses
using Knowledge (Magic). If not, I haven't a clue.
Incursion 0.6.9H (subrelease 2)
* Fixed bug with Maeve starting (very!) angry at elves
who _do_ worship her.
* Fixed very low sac values for cloaks, etc. to Maeve;
tweaked item costs a bit in general.
* Multitude domains fixed -- now truly random; manual
updated on this issue to be correct.
* The "OOD removal loop" no longer runs if the game is
set on NIGHTMARE difficulty.
* Fixed typo that broke a special case rule allowing
dwarves to ride Medium mounts like warponies.
* Fixed error related to spitting spiders hitting
objects with their spit attack.
* Fixed error with favor chart being truncated at
level 7 because I forgot that the constant lists
reserve 3 spots for null terminators (XavPieryLev.sav)
* Fixed text corruption with plural grammer (merge/merges)
as seen in Grognard.sav
* Fixed favor overflow resulting from use of int16 where
int32 should have been used. (Note: this broke save
compatability).
* Fixed recursivee CalcVales stack overflow error
(Kierny), and I _hope_ I didn't break anything else
doing so.
* Fixed Khasrach's orc summons arriving with 0 hp (and
assorted other "not initialized" problems, like no
active buffs for the shamans).
* Fixed incredibly baroque bug which caused displeasure
to be listed on character sheet as anger instead at
some times.
* Fixed bug where displeased gods could still give
interventions, and some other logic errors regarding
intervention.
* Monster Summoning now excludes animals, undead,
outsiders and incorporeal creatures.
* Fixed issue where Holy Summoning failed a lot for
CN or CE clerics of gods other than Xel, Zurvash and
Multitude. (It was trying to summon CN outsiders,
most of which start at CR 7! Now it summons demons
instead.)
Incursion 0.6.9H
* Fixed horrid bug in Magic::Dispel, that sometimes
caused dispel effects to remove critical stati like
HUNGER or ALIGNMENT. This might also be the fix for
the elusive "spell access loss" bug.
* Added fix to prevent divide by zero crash when
leaving an area related to Thief in the Night.
* Fixed bug with disease damage occuring too frequently
for diseases with iteration > 100.
* For the sake of player sanity, monsters now never
cast Black Tentacles, Shatter, Adamant Facade, Create
Water, Deeper Darkness and Whirlpool.
* Monster are no longer generated for summoning circles
until the dungeon gen is smart enough to have the
circles properly warded.
* Gravestone monsters are now less tough.
* Gravestones are now only disturbed by actions taken
by the player character, until the monster AI is
smart enough to not disturb them except when it
makes sense to do so.
* Class templates can now only be applied to monsters
who are humanoid with Int >= 7 -- no more arctic
boar mages or shocker lizard paladins!
* Fixed horrible bug with the script compiler that
caused it to create files with a backslash in their
filenames under Ubuntu, even on NTFS partitions where
it then caused disk errors in Windows! Eeew!
* Commented Accursed Cows out of the game entirely, since I
can't easily exclude them from summons with single-point
source changes. Ditto foxbats.
* Commented out /Verdant Aid/ awaiting brainstorming on a
decent way to fix it.
* Summoned creatures cannot multiply.
* Commented out ID Moss until it's growth, and growth of
hit points, can be debugged properly.
* As a temporary fix against deep dungeon monster glut,
whenever a single encounter generates more than five
monsters, only the first five are created and placed on
the map; any remaining are dropped.
* Added a quick loop to automatically delete any overly OOD
monster on the level after it is first generated, and also
after monsters regen when the player sleeps. If OOD switch
is on, any monster with CR > [Depth + 3] is deleted, else
any monster with CR > [Depth + 1] is deleted. Monsters in
the goblin camp are never deleted for this reason.
* Complex rooms (magic academy, etc.) now generate numerically
less monsters -- either only 1 monster per room, or only 1
in 3 rooms will have a group of monsters, the rest being
totally empty.
* Asherath now only says "you feel challenged" when you kill a
creature whose CR is higher than yours.
* Maeve now steals cloaks, amulets and rings properly.
* Maeve now only polymorphs followers into humanoid forms that
have hands and are not inherantly blind.
* Maeve now accepts the sacrifice of charismatic creatures
correctly.
* Doubled the favor value of cloaks, rings and such sacrificed
to Maeve. Ditto books and wands to Immotian.
* Fixed crash bug where Maeve's intervention to improve magic
items would hang the game.
* Maeve now improves magic items more substantially for those
with lots of favor with her.
* Mara's helpful summons should no longer arrive angry!
* Major fix with regard to god tolerance for transgressions,
described below.
* All gods' TOLERANCE_VAL increased by 3 (so you can get 3 more
'anger points' before the god is considered truly 'angry').
* Mara's revenant aid no longer crashes the game.
* Fixed god-granted Improved Crit
* Essiah now grants full Free Action rather than simply immunity
to paralysis.
* Fixed Aiswin's higher-level innate spell grants.
* Mara's script code now handles the sacrifice of corpses
correctly, I hope.
* Sacrificing things now lowers a god's anger much more quickly,
taking off 3 anger points instead of just 1.
* Barbarians and orcs are now exempt from the Cow restriction
for chaotic characters.
* Characters can now hopefully gain favor levels from multiple
gods as lay worshippers correctly.
Divine transgression works a little differently now. Your god
gets displeased on the first transgression, and angry when you
cross over his tolerance value for transgressions. So, for
example, a follower of Khasrach will have a chance to placate
her with corpses after a fear trap rather than her getting
angry right away. The character sheet should list whether your
god is angry or displeased.
A displeased god will still aid you when you pray, and won't
do wrathful things, but will not send favorable interventions,
and sacrifices will be used to amerlorate the displeasure as
opposed to granting more favor.
Let me know if this seems buggy -- I haven't had time to test
it very fully.
Incursion 0.6.9A
* Fixed incorrect calculation of percentile value mods
from templates (that caused, for example, human
zombies to have 100% movement rate rather than 30%).
* Added trap message for "alignment loss" bug.
* Assassins now have Alchemy, so they can make custom
poisons with Poison Use.
* Fixed crash bug when generating encounter summons where
there was no in-game summoner creature (i.e.,
Multitude wrath, Kissi.sav).
* Fixed issue with summoning preset monsters (i.e., dust
devil) over water trying to make the encounter be
aquatic and ending up generating strange random
summons.
Incursion 0.6.9
* Implemented better auto-testing for reproducing crash
bugs.
* Fixed a bug in the script engine likely responsible
for diverse crashes, including Semirath intervention.
* Fixed crash bug on summoning related to missing zero
terminators on the CandidateCreatures array.
* Fixed crash bug relating to division by zero when
calculating knockback for airborne creatures.
* Fixed a crash relating to overflowing string buffers
in the monster AI.
* Fixed crash bug related to unll map pointers when the
Intimidate abilities kick in.
* Fixed crash-causing infinite loop related to attempts
(by monster or PC) to break grapples.
* Fixed crash bug relating to newly-introduced "snow
angel" monster.
* Fixed crash bug from VERIFY macro in CallMemberFunc()
* Fixed Creature::GetBAB-centric error messages.
* GetBAB now reports the correct BAB for monsters with
BAB-increasing templates.
* Reduced creation of "castle" multi-rooms by 50%, by
request of testers for balance.
* Fixed infinite-loop crash/hang bug in encounter gen
involving nested encounters
* Fixed crash issues with Animate Objects, and added
code to handle it better if this spell fails for
some reason.
* Fixed crash bug with NULL map pointers and the print
queue after attacks.
* Implemented compressed save files. This should both
save disk space and make AutoSave less tedious at
lower dungeon levels.
* (Intentionally) OOD encounters now generate only a
single OOD monster, rather than potentially an
entire party of them. Big fix!
* When OOD monsters are created, they are now logged
in the player's journal for debugging purposes.
Same for other eccentric encounter gen behaviour.
This will go away when I get things better fine-
tuned. "Failed" messages are not necessarily
errors; the encounter gen sometimes fails and
tries something different naturally.
* Fixed crash bug when corpses were destroyed; it was
related to backRefs and code included to prevent
Animated Objects from causing crashes.
* Put in placeholders for the new prestige classes.
* Fixed a problem causing priests to cast overly high
level spells at a low dungeon level (because they
had a template intended for high-CR, high-HD
giant priests).
* Added new skill templates: master, paragon and
legendary, to allow more powerful adventurers in
challenge mode.
* Fixed div-by-zero crash bug in mana regeneration
calculation.
* Fixed crash bug where moving into/out of a field
causes the death of the mobile creature, resulting
in a map null pointer reference.
* Fixed crash bug with missiles being destroyed or
taken off-map while in flight.
* Fixed glitch where the encounter "graveborn creatures"
would sometimes produce adult dragons at very low
CRs. (I believe this was the cause of "mages" that
cast cleric spells at low dungeon levels -- they
were polymorphed dragons.)
* The encounter gen now keeps lowering the max base CR
on consecutive tries to make room for manditory
templates, so that they (hopefully) won't get skipped
anymore.
* Encounters created in fiery or icy prisons now appear
inside the prison area properly.
* Tested AutoRun ('run to location'), seems to work great
for me. I need some 0.6.9 saves duplicating the issues
people have with this!
* Immotian, the Multitude, Maeve, etc. now place their summons
near the player correctly.
* Lots of general tweaking and fine-tuning to match special
room types with thematic encounters.
* Flaming sphere, dust devil, spiritual hammer and summon
shadows now cannot be used again while the first summons
is still present. SS has higher CR, but costs fatigue.
These construst spells do not count towards you 'max
creatures controlled' PHD.
* Summoned creatures and illusions can no longer be live-
sacced.
* The Multitude now has a stricture against magical healing,
since they were a little to easy to accomidate before.
* The center square of tanglefoot bag strands and web
spells now disappears properly. (The cause was writing
the center twice, and thus recording the written terrain
from the first write as the 'terrain to restore' on the
second.)
* Aiswin no longer expects you to get revenge on traps that
critically wound you, or on dieties expressing their
wrath upon you.
* Holy Avengers now grant 50% magic resistance.
* Added a switch allowing the player to control the use of
the Dirty Fighting feat, for the sake of alignment.
Lawful NPCs don't use it, either.
* New monsters: batkin, gremlin, githzerai, githyanki (and
added "silver sword" unique weapon and new psi powers
to support the gith races), senmurv, lillend, feyr.
* Fixed crash bug with NULL EActor in Creature::Death, that
triggered when monsters petrify.
Incursion 0.6.8A
* New monsters: ankheg, allip, dryad, aboleth, skum,
wyste, snow angel, 3 cave dinosaurs.
* Fixed issues with Intensive Study feat and empty
selection menu (Uchie.sav)
* Fixed armor of etherealness fatigue cost.
* Fixed "lose favor on sacrifice" bug.
* Fixed crash bug with Circle Kick feat.
* Shields now quick-intuit just like weapons/armor.
* All sacred mounts are now rideable.
* Clarified mount logic a bit -- dwarves can now
ride either Medium or Large mounts, and only
kobolds can ride vermin (unless the vermin are
spiders, in which case drow can ride them too.)
Also, only quadrupeds (rather than all animals)
are limited by /maximum size/ as mounts.
* Number of creatures in a single encounter is now
capped at 5/7/10/12/15 at levels 1/2/3/4/5 to
avoid overpowering swarms.
* Fixed "This cave orc must be something!" style
messages, and general tweaks to avoid a monster
being scrutinized prematurely.
* Expert Tactician now only grants one attack per
victim per turn for free -- still a good feat,
but not instant death when the requirements are
met.
* Fixed bug causing Cleave attacks to always hit.
* Now weapons that return as part of their mundane
nature (chakram, boomerang) only return on a hit.
Weapons with the magical "returning" quality
always return, hit or miss.
* Temporarily removed the priest spell "Imbue With
Spell Ability" as a step toward tracking down
the SPELL_ACCESS bug; I don't think it worked
correctly anyway. Will put it back soon!
Incursion 0.6.8
* Complete refactoring of the Encounter Gen system
to remove multiple persistant bugs and implement
the use of Encounter resources for more diverse
and thematically grouped encounters.
* Wrote core set of Encounter resources.
* Added groundwork for Behaviour resources and rule-
based monster AI; no game-affecting changes have
actually been made yet.
* New monsters: cave pelican, chinook salmon,
cavefish, pirahna, tabaxi, oxthixi.
* Fixed (some) false-positives on SPELL_ACCESS stati
error message.
Incursion 0.6.5B
* Warriors now get a starting weapon with _minimum_
+1 (or +2 if no elemental quality) rather than
set, so the code won't reduce the plus level of
starting perks.
* The resource compiler now works correctly under
Linux as well as Win32.
* Linux build process successfully streamlined.
* Can now issue orders to all followers within line
of sight with a single command.
* Added new order, Do Not Pick Up Items.
* Fixed bug where cave orcs have /animate rope/ as
an innate spell (which I put in to test the animated
rope crashed and forgot to remove!)
* Fixed broken parts of /abjure/, where non-summoned
creatures weren't immune and you could kill yourself
with it.
Incursion 0.6.5A
* Fixed horrid multi-faced bug in monster AI with an
array overwrite that caused the game to crash if a
monster stepped on a stack of 60+ items, or had more
than 64 possible actions in general (Adele Detect
Monster save).
* Fixed bug causing crash if you leave goblin camp with
lots of monsters never having seen you in the Thief
in the Night calculations due to array overflow.
* Remembered to build the release-configuration EXE
this time!
Incursion 0.6.5
* Identify spell now takes 1 hour and costs 2 fatigue.
* Fixed glitch allowing the casting of Glyph of
Warding and similar spells across walls via Wizard
Sight (but you can still cast physical spells like
fireball into non-LOS areas).
* Added weaknesses to flight and levitation -- Balance
check needed for spellcasting, knockback when hit.
* Fixed bug where trying to remove certain cursed items
negated the curse effect.
* Fixed bug where when an item becomes cursed, the
curse effects aren't applied until you re-wield it.
* Apportation can no longer be used to remove cursed
items.
* Tried to trace reported memory corruption relating to
ice blue eyes and/or their spell-likes, but didn't
find anything.
* Corrected spell description for Open the Third Eye
(no damage from gaze attack anymore).
* Gaze Reflection now protects against a bodak's death
gaze and a nymph's unearthly beauty.
* Fixed glitch allowing spirit armor and normal armor
to stack.
* Ekliazeh no longer angers if you kill construct, non-
sapient or undead dwarves; Khasrach no longer angers
if you kill construct or non-sapient orcs and Kysul
no longer angers if you kill construct aberrations.
Immotian's fire creature restructions are unchanged --
a clockwork fire creature is like a holy symbol to
him.
* Now, the weapon immunity special ability only affects
actual, physical weapons -- unarmed attacks penetrate
it automatically. The monk special ability "ki strike"
was removed, since it no longer makes sense. This
serves to balance magical armor with the Invulnerability
and Great Invulnerability qualities, which were reduced
slightly in plus.
* Fixed HORRID bug that prevented the dice roll for Quell
from being made; it should now work properly.
* Fixed glitch causing orc paladins to start with a holy
knife instead of a holy long sword.
* Rope Trick no longer preserves an altar (or other feature)
created in the extra-dimensional space; it can also no
longer be cast again when already in the extradimensional
space.
* Gave animated rope a bunch of monster flags it was
intended to have, so it won't, i.e., pick up and use
equipment any more.
* Fixed bug where killing an animated rope reliably crashed
the game. Refactored code for animated/transformed
objects.
* Added "trap code" to try to track down the loss of spell
access bug, that should (hopefully) cause a message to
appear at the actual moment of loss (and then terminate
the game, so that an intact save game can be recovered).
* Fixed one possible source of the "very high spell DC" bug,
relating to lizardfolk and dwarves getting +2 DC with
water and earth spells, and the variable that stores this
not being cleared between DC calculation calls. Let me
know ASAP if you see crazy spell/special ability DCs in
0.6.5 or above.
* Essiah's "betray a friend" condition no longer triggers
if the "friend" has M_MINDLESS (i.e., animated rope).
* Boots of Phasing made very high level (14) until I can
find a way to balance them properly -- now only high
luck characters will find them on rare occasions.
Incursion 0.6.4E
* Fixed bug causing crashes upon reading scrolls
* Live sacrifices now working properly
* Fixed bug where everyone got Sabine's favor bonus
for high athletic skills rather than just Sabine
followers.
Incursion 0.6.4D
* Fixed (hopefully) sources of inexplicable crashes.
* Fixed bug with multiclass characters being unable to
take prestige classes.
* Fixed bug with spells not recieving Wis bonus damage.
* Fixed Brand of Hatred.
* AutoSave crashes verified fixed.
* Fixed Log of Everburning
Incursion 0.6.4C
* Fixed crash bug when using a Holy Avenger against
a flesh golem, and many other similar situations.
* Fixed a complex bug in the target system that would
manifest, among other things, in failed Intimidate
attempts causing crashes (Rathmere Xel sac save).
Incursion 0.6.4B
* Fixed issue with arcane alienist athiests needing a
nonexistant holy symbol to cast alienist-specific
spells.
* Added option to prevent ally/mount actions counting
against alignment until ally-attacks-neutral can be
solved more fully.
* Fixed issue with very low shop prices.
* Fixed RemoveStatiFrom(xID 0) crash (Kierny Tauth).
Incursion 0.6.4A
* Added fix to prevent monsters from trying again and
again to wield an item when they fail (such as because
it is too large, or whatever).
* Fixed the adlet frost weapon script so that it does
not add duplicate stati for every wield attempt until
the stati overflow, and so the stati are only added
after the weapon is successfully wielded (cf. Cade
Goodheart crash).
* Crash on Wildshape use (Diesa) fixed.
* Commented out code that causes sacrifices which do
not impress a god not to reduce the god's anger --
now, any acceptable sac will lower a god's anger.
This is NOT a long term change, just a kludge to make
the game more playable over the next four months until
I balance the "impressed" requirements more carefully.
* Fixed bad logic in the "no talking through solid stone"
code that prevented the store from working -- now
special creatures that have not actually been placed on
the map, like Roark Ironbeard, can be talked to
correctly.
* Fixed crash related to armor with qualities (i.e., might)
as a starting perk (or in general, really) getting its
plus improved for starting as a warrior. You now also
should get the bonus from these items.
* Girdle of Tenacity verified to work (for me).
Incursion 0.6.4
* Fixed bug where buying items in store put them silently
in InAir slot, possibly overwriting previous purchase,
and did not move correctly to inventory screen.
* Gave each god custom experience table based on the favor
numbers that seem to actually appear in the game, looking
at victory posts.
* Toned down Asherath's rate of favor gain for killing high
CR creatures.
* Skeletal foot soldier CRs now more sensible, so avoid low
level instakills.
* Drow given an absolute minimum depth of dlev 4, to avoid
arbitrary sleep-poison related deaths, and because being
a "deep" monster is thematic for them.
* Fixed (hopefully) situations where polymorph lasted more
or less than 20 XP ticks as a result of polyTicks being
reset incorrectly.
* Set polymorph expiry to not affect druidic wildshape, only
the other sources of polymorph.
* Removed the "cannot cancel" clause from polymorph, to
avoid some odd game-ending situations; instead attached a
2 fatigue cost to prevent excessive 'form scumming'.
* Fixed/revised Master Trip feat into line with canon -- it
now causes the *tripper* to *suffer* an AoO if he tries
to trip *without* the feat. (Before, it was documented as
giving the attacker an AoO on the victim, which I think
may have been me coding a bug and Wes documenting it how
he thought it was supposed to work. Or I was just confused.)
* Implemented Trip manuever clause where opponent gets free
trip attempt against would-be tripper if initial trip
attempt fails. Ditto for disarm.
* Fixed maneuver check code in several ways; now uses BAB +
Attr + modifiers, and displays calculation correctly.
* Reverted Slipaway feat to its old form of a bonus to the
Escape Grapple maneuver check.
* Great Blow description and in-game mechanic now match --
+2 flat bonus to hit and damage, and also Strength bonus
to damage is doubled.
* Removed help-text reference to Disarm using parry bonus
(which it doesn't, and hasn't for a while now).
* Tools (including bags, flasks), holy symbols and shields
are now exempted from AutoPickup.
* Fixed bug causing crashes when resting in a Place of
Sanctuary.
* A flaming sphere can now be used as a source of fire for
the /pyrotechnics/ and /fire charm/ spells.
* Murgash and his viziers no longer flee as a result of
natural HP loss in combat.
* Player-ally monsters no longer use A_ROAR or any variants,
because they can't aim it right not to hit the player;
this can be an issue with chasmes sent by the Multitude
putting the PC to sleep with their droning in the middle
of combat.
* You now get a warning message if you are about to zot
neutral undead with Turn Undead and are (or want to be)
good-aligned.
* Fixed "super 1 gp item" bug (by using floating point
arithmetic! Ow!)
* Toned down Sunscorch by making it level 2 and taking
away the bonus damage from wisdom.
* Altered /spirit armor/ to be incompatible with conventional
armor the same way that /mage armor/ is.
* Elevation bonus to Defense is now [2 + (Climb / 6)], when
it was [2 + (Climb / 3)] before.
* Casting a spell while mounted or climbing on the ceiling now
takes 15 phases more than normal.
* Bracers of Defense toned down -- they now add their magical
plus to defense and coverage, rather than twice their magical
plus.
* Longstrider now specifically only applies to a chosen humanoid
rather than the caster in general, so it will no longer affect
an animal companion mount through the shared-spell bond.
* Summoning pseudonatural creatures now costs [Summon CR x 2]
extra mana, and this mana does not regenerate.
* Implemented Elemental Affinity ability for dwarves and lizards.
* Replaced acid spells in slime domain with spells that can be
without offending Kysul.
* Vicious weapons now work as advertized, now dealing bonus
damage only if you have 2/3rds or more your max HP.
* Fixed incorrent "avert your gaze" message when you are averting
your eyes from a creatures with a gaze attack.
* Added clause to prevent Beast Claw from being used on a creature
that already has a natural claw attack; also prevented every
monster from casting it, to avoid excess uniformity.
* Hopefully fixed issue with Point Buy and Reincarnation.
* Reincarnation now also saves chargen options.
* Changing options from the main splash screen, when no character
has been created, also now changes the universal defaults for
the Tactical and CharGen options for every new character made.
(i.e., Poisoned Missile Stacking will not 'reset' if set from
the system menu).
* Added sub-headers to make the options setting process clearer.
* Fixed reincarnation issue which could cause the game to record
rolling method incorrectly for reincarnated characters.
* Bug which caused the creation of two mismatching options files,
one in "incursion/." and one in "incursion/save" fixed.
* Fixed loophole allowing jumping out of a pit.
* Fixed issue with not being able to attack aerial monsters who
were standing over pits.
* Characters now recieve a Fort or Will save (depending on the
effect) when moving over the endgame Guardian Runes.
* Hopefully fixed the issue with nymphs killing themselves with
their own Unearthly Beauty.
* Removed references to "Greater Magic Fang", since "Magic Fang"
covers in Incursion what GMF did in canon; Zurvash now grants
Divine Agility at 8th favor level instead.
* You are no longer able to lose your backpack by stowing it in
itself.
* When a container gets /detonate/ed, the contents now spill out
rather than vanishing.
* Fixed issue with /dispel magic/ dispelling things it has no
business dispelling, such as divine blessings and poisons.
* Creatures now return to their home plane immediately when they
take off boots of phasing or armor of etherealness, avoiding
spending the rest of the game stuck on the ethereal plane.
* Fixed a crash-to-desktop bug related to monsters with zero
mana.
* Small paladins now start with a "small long sword" (a new weapon
the size of a shortsword, but balanced for swinging and placed
in the long blades group) rather than a short sword.
* Gnomes now only start with a mercurial broadsword if they have
the required strength, which has been lowered; also, gnome
rangers and warriors have free cranquin proficiency.
* Small characters start with a buckler in situations where other
characters would start with a kite shield.
* You can no longer talk to creatures through walls unless you
have telepathy with sufficient range.
* Fixed crash when attempting to grapple/sunder/etc. doors,
items, etc.
* The "contaminated water" fountain effect now respects disease
immunity.
* Implemented the use of [ALT] as a "qualifier key" to split a
pile when using Get, Stow, Swap, Drop or Take Out.
* Should a creature with poison immunity become poisoned, they
now become unpoisoned on their very next turn without any ill
effects, as opposed to staying perpetually poisoned (as with
the kobold drinking a potion of poison and being forevermore
unable to rest due to being "too busy dying").
* Fixed loophole allowing player to kick a monster which had
successfully charmed him.
* Implemented the feat, Lion Heart, to help fighter-types having
trouble with fear effects.
* Telepathy now allows you to speak to sapient creatures you could
not otherwise communicate with, such as myconids or elementals.
* Fixed loophole allowing Swap Weapons command to be used to get
rid of cursed weapons.
* Added new anger clauses to Aiswin and Asherath to give them more
depth and make them more balanced with the other gods.
* When choosing the weapon associated with a feat, weapons for which
you lack the minimum strength now appear on the list, but will
warn you of the lack before you choose them.
* Fixed the "Exotic Weapon Proficiency blocks Weapon Focus" bug,
which was in fact a bug with SetEffStatiVal() that was likely
responsible for a LOT of other issues.
* Fixed bug where characters don't start with the weapon they
bought Weapon Focus in the way they should.
* Fixed incorrect code that might have been responsible for some
cases of characters starting with duplicate items.
* Hopefully fixed issue with "(undefined 0)bane" weapons and
"weapons of (undefined 0) Slaying" showing up for good.
* Items will no longer say {tried} when both their base effect
and their curse state is known.
* Fixed nonsensical message about dungeon features disbelieving
illusions.
* Implemented Elethiomel's "roll stats before race and class"
request; now if you turn on the Roll Attributes First option,
they will always be rolled before both race and class. You will
see 3 perks, but only get 1 or 2 if you choose a race that only
gets one or two.
* When a worn item changes plus, has its plus altered by a temporary
magic effect (i.e., Greater Magic Weapon), is dispelled or soforth,
the wearer's stats should now change automatically rather than the
item needing to be removed and re-equipped for the change to take
effect.
* Riders are now thrown from mounts when a size change makes the
mount/rider combination invalid.
* Reflective Counterspell should now only affect spells marked as
curses or attacks.
* Fixed "Negative Dice Values" error when dipping items in fountains.
* Added a message upon [ESC] explaining to the player that they
cannot quit inventory mode when the InAir slot is occupied.
* If the PC dies while performing actions in Inventory Mode, the
game now handles it gracefully.
* You can now tab back to a chest or other container on the floor
in inventory mode correctly.
* Hopefully fixed issue with hiding monsters making unfair attacks
against players who are also hiding, when the monster is unable
to percieve the player.
* Maeve's interventions now train Luck.
* When Maeve summons twilight huntsmen to attack the player, they
now always arrive hostile.
* Training Int and Wis is harder now.
* Divine ressurection now costs you 15% of your XP or 2000 XP,
whichever is more; the old penalty (down to the amount needed
for the level below your current level) was reported by a player
as too harsh.
* Scrolls of damaging spells like Shout, and many similar items that
do not have a magical plus but do have a caster level, now display
their damage/power correctly in the item description.
* Fixed a bug where creatures with size fields could move over
neutral creatures like smaller creatures do, allowing the neutrals
to overlap their size fields, which should never happen.
* Fixed a bug causing size fields to overwrite solid terrain like
dungeon walls -- since the most normal case with a size field /
wall glyph overlap is a large creature squeezing into a small
space, the size glyph shouldn't be shown in a solid stone square.
* Meld into Stone now works properly when cast by a Huge or larger
creature.
* The Examine command in the Look prompt no longer has the loophole
to identify polymorphed monsters that you didn't see polymorph.
* Fixed a bug which allowed monsters to wield weapons which were
too large (i.e., a halfling could wield a greataxe!).
* Added some god messages, so that hopefully players won't see the
"(god messages still in progress)" thing so much anymore, though
there's still a lot to do in that regard.
* Fixed crash issue in some situations when either monsters or the
player attempted to escape a grapple.
* Fixed infinite recursion issue with ReApply().
* Fixed crash with red slaadi attempting to gate in help with an
MType that didn't fit in int8.
Incursion 0.6.3
* Adjusted tumbling to give [(Tumble / 2) x 5] to movement
rate rather than [Tumble x 5], which proved to be
excessive.
* Corrected errors in Tumble skill description so that it
matches game rules (i.e., can't cast while tumbling)
* Now, only 1 in 3 monsters will use /obscurement/, to
avoid it being this omnipresent out-of-genre tactic
where every dragon is a mobile fog bank.
* Added new spell, /abjure/, to banish summoned creatures
en masse.
* Fixed bug with messages associated with items in the
inventory of a creature not being printed because the
item had no map associated with it; the owner did.
* Added Precise Stroke combat option, giving creatures
(both PC and monsters) the ability to sometimes hit
enemies with extremely high Defense scores.
* Fixed issue where flying characters over pits could not
attack or be attacked.
* Fixed Greater Ring of Identify uses per day decsription.
* Fixed "doesn't want to associate with good" message
coming from inherantly good creatures like gold dragons
instead of demons and such.
* Fixed issues with "Brand of Hatred". Ditto "Shillelagh".
* Fixed issue with the Pacify option of Animal Empathy
being coded improperly and creating allied creatures
that stopped being allied later, when it should really
just create neutrals.
* Fixed issue with TargetMount being given to allies:
/* VERY IMPORTANT CORRECTION -- add the mount target only if
we are riding a creature that is neutral to us, so that
we are its master for only so long as we ride it. Do NOT
add the mount target to creatures who were are allies
already before we rode them! */
When something happened that caused a mount to turn hostile,
this error made the mount stay friendly /until you dismounted/,
because the mount data was corrupted by the fact that it had
two target object for the PC -- TargetSummoner and TargetMount.
* Fixed major root of mount hostility -- when you cast a spell,
your sacred mount gets affected through the bond, thinks you
cast a hostile spell at it and gets angry -- because all the
personal effect spells aren't marked EF_NOTBAD.
Now, spells channeled through the sacred mount spell-link will
never turn a mount hostile, and also spells that are not EP_CURSE
or EP_ATTACK will never turn _any ally_ hostile. There are some
holes in this -- there are offensive spells that will kill but
are not EP_ATTACK because the monster AI does not know how to
use them, for example, and you can kill your mount if you have
more HP by casting attack spells at yourself. But I think that
the player being able to game the system to kill their pets
without consequences is not a huge weakness right now.
* Fixed a bug where lots of messages concerning mounts (i.e.,
"snaps and turns on you", but lots of others too) would not
be printed because the mount isn't technically on the map.
* Fixed a bug with monsters that have M_HOSTILE like griffons
letting that override having a master/rider.
* Added new event handlers to handle what happens when you Quell,
Cow or Surrender to Goblin King.
* Increased the DC of Quell checks slightly [15 + CR*3], when
it was [15 + CR*2]. You need to be a real high-end Diplomacy
monkey to win the game that way.
* Added a kludge to deal with you doing social actions on the
members of the Goblin Army that would affect Murgash -- they
either redirect the effect to Murgash himself (for surrender)
or tell you to talk to the king.
Being unable to Quell the goblin army outer members may be
difficult for Hesani followers, but I think their best approach
is to sneak in using Hide, invisibility, etherealness, etc. so
they can speak to the king directly.
* Fixed a crash-bug related to Immotian's observation of the
world.
* You can now order allies or request neutrals attack a specific
target of your choice, and it works. This was there before, but