This repository has been archived by the owner on May 19, 2022. It is now read-only.
/
CHANGES
585 lines (319 loc) · 14.8 KB
/
CHANGES
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
2014-03-17
Import effect dll work from Onscripter-EN [Dan]
Fixed an issue where certain scripts on OSX/Linux failed to load files correctly [Dan]
2014-03-10
Playing a video with subtitles no longer results in a slightly
off-black background. Before, subtitles on/off resulted in the
background (possibly video as a whole) being slightly grey tinted
2014-02-25
CD-ROM audio support removed. SDL2 does not have an easy way to
play it
2011-10-08
Hack to stop engine lockup at @ in text, when using textgosub [Mion]
2011-10-06
Allow opening files with non-ASCII filenames [Mion]
Adding support for (unsaveable) variable numbers greater than 4096 [Mion]
2010-10-23
Corrected "logsp" & "logsp2" to not skip whitespace, even in
unmarked text [Mion]
2010-09-11
Allow changing the font file for a pmapfont slot [Mion]
2010-05-02
Changed movie subtitle timing to be based on the movie stream's
"current time" instead of using an SDL Timer [Mion]
2010-04-28
More bugfixes for text refresh [Mion]
Converting gameid to system ANSI on Windows when creating the
save path (will be changed to handle non-ANSI Unicode once non-ASCII
filename support is added) [Mion]
2010-04-15
Bugfix for looped ogg bgm playback [Mion]
Fixes to text refresh when wait_time is 0 [Mion]
Little hack to word-wrap code in order to fix the
"space at start of wrapped line" issue on click-to-wait [Mion]
2010-03-28
Little fixes to paths handling [Mion]
Cleared ctrl-press after a movie [Mion]
Fix for text output "skip to end of line/wait on click" for Mac;
also grafted additional skip/wait/delay handling from ons-en [Mion]
2010-03-24
Changed basic functionality on Windows: stdout.txt & stderr.txt will
go under the current user's AppData instead of AllUsers' from now on [Mion]
Added "shell" cmd [Mion]
Grafted nicer non-ASCII Windows caption handling from ons-en [Mion]
Some Mac fixes related to "debug_string" [Roto]
2010-03-11
Updated bstrlib (used for pstring type) [Mion]
Fixed memory leaks and uninitialized variables [Mion & Andrius]
Grafted recent (and some not-so-recent) small fixes from ons-en [Mion]
Added Mac app bundle handling [Mion & Roto]
2010-03-08
Fix for the enormously slow startup time for Umineko (caused by
unnecessarily decompressing all bitmaps to find their lengths) [Mion & Roto]
Added support for "pns.cfg" file containing command-line options [Mion]
Grafted "--gameid", "--current-user-appdata", "--disable-cpu-gfx"
command-line option support from ons-en [Mion]
2010-03-06
Corrections for building on non-gcc compilers; fixes for
gcc4.5+ compilation, added strict compilation option [Andrius & Mion]
Plugged icon-related memory leak [Roto & Mion]
Various small bugfixes [Mion]
2010-02-28
Fixed memory leak in BaseReader [Roto]
2010-02-19
Pretextgosub-related fixes (also for "gettag" cmd) [Mion]
2010-02-17
Various bugfixes; cleaned up custom build process, added "--no-cpu-gfx"
configure option [Mion]
2010-02-14
Fixed case in which there's a folder in the game's search path with the
same name as a directory in the archive [Mion & Roto]
Bugfix for Mac file reading issue [Mion]
2010-02-05
Ported audio fixes from ons-en, added "mode_wave_demo" cmd [Mion]
Bugfix for alpha png images, various other bugfixes [Mion]
2010-01-20
Began porting image processing routines from ons-en [Mion]
2010-01-15
Updated XCode for 10.6, added DirPath support [Roto]
2009-10-15
Check entire DirPath for font files [Mion]
Remove every UTF-8 BOM as the script file is read [Mion]
Removed default indent and break chars (except for break on space);
added "basic" option to "pindentstr" and "pbreakstr", which will restore
those defaults (e.g. use "pindentstr basic") [Mion]
various bugfixes [Mion]
2009-10-13
Added "localestring" command and locale handling [Mion]
Corrected right-click menus for compatibility mode [Mion]
2009-10-08
Bugfix for digit character handling [Mion]
2009-10-07
Fixed several format string issues with debug messages that were breaking the
Linux build [Roto]
Fixed a bug in the default save/load menu [Mion]
2009-10-03
Corrected ligature handling to work with multi-byte matching characters [Mion]
Corrected "setwindow" textwindow dimension handling (should use right/bottom
positions, not width & height, for the final 2 parameters) [Mion]
Reimplemented indenting; preliminary support for vertical and right-to-left
text ("tateyoko" and "bidirect" commands) [Mion]
2009-09-26
Added DirPaths feature, allowing multiple directories as the "root" [Mion]
2009-09-16
Various bugfixes; added "savegame2" command [Mion]
2009-08-23
Added XCode project for Mac OS X compilation [Roto]
2009-07-07
Various bugfixes [Mion]
2009-02-07
Ligature selection is no longer dependent on the order of
definition, and a saner data structure is used.
2009-01-20
Refactor documentation, and translate it to DocBook to make HTML
generation easier.
2009-01-18
Refactor source tree into something sane.
Improve Vista support.
Add packaging support for RPM- and DEB-based Linux distributions.
2008-12-29
Tweak script filename detection.
Define #@, #_, etc by default.
2008-12-28
Implement variable interpolation in text lines, with the syntax
{$var}, {%var}, {?var[0]}. {|$ etc can be used if literal output is
required.
Remove altogether the distinction between END_1BYTE_CHAR and other
end states. The only thing it was doing was causing whitespace to
be ignored (often unexpectedly) when printing text.
Add a command-line option to specify a script filename. Among other
things, this will make it much easier to have a range of different
test scripts. The relatively unimportant -s flag has been
repurposed for this; the old -s can still be accessed with its long
name --save.
2008-12-26
Write some manpages at last.
Fix `puttext' command.
The distinction between string literal quoting types is now clearly
defined: ~tags~ are parsed in ^...^ strings, and treated as literal
in "..." strings. "^..." strings are treated identically to "..."
strings. There is no other difference in behaviour whatsoever.
2008-12-19
New command `watch_var' logs all changes to an (integer) variable,
so you can figure out why on earth it's got the wrong value.
2008-12-16
Fix occasional segfaults during subtitled movies. This is a quick
and dirty fix, and should ideally be replaced with something more
robust.
2008-12-14
Fix infinite loop caused by a line of the form "^\n" when a
pretextgosub hook is defined.
Make @ behave as expected when embedded in lines, even when a
textgosub hook is defined.
Add shortcuts #@, #\, etc, for printing literal characters.
Add ponscripter-mode.el (Emacs syntax highlighting)
2008-11-18
Fix fatal error caused by ~~ in a script becoming ~ in the lookback
buffer.
2008-09-09
New command `vsp_when' allows sprite visibility to be linked
automatically to auto-mode status.
Fix auto-mode so that all sprites start animating again immediately
when the player terminates auto-mode during a page pause.
Hack SDL to add a fixed-aspect-ratio mode for widescreen displays.
2008-03-26
Add h_textheight command to facilitate footnote positioning in
Narci2.
h_locate now adds the equivalent of ~x...y...~ to the lookback
buffer, so pages using it will appear correctly in lookback mode.
Add gettextspeed command to determine the current text speed.
Tweak line wrapping code; formatting commands no longer count as
break points, and formatting changes are always taken into account
when wrapping.
2008-03-11
Fix random number generation; the first instance of rnd in a program
will no longer produce predictable results.
Fix built-in load menu line truncation.
Fix bug causing text to be missing when coming out of skip mode.
2008-03-09
Get Vista working properly (?).
Add Mion's workaround to fix sample rate mismatches in MPEG
playback.
Merge across the upstream ONScripter enhancements (mostly
sp2-related) that Mion has integrated into ONScripter-En.
2008-02-25
Improve diagnostics slightly.
Extend vsp, csp, (a)msp, and cell to provide some convenient
shorthands, tablegoto to provide a 1-based alternative, and add
movz, which is like movl but treats missing args as implicit zeroes.
Merge across the RC version synchronisation code from ONScripter-En.
2008-01-27
Revert setwindow and locate commands to the NScripter behaviour
(sizes defined in characters not pixels) in all cases, to simplify
porting. A new h_locate command is provided as a pixel-oriented
replacement for locate, while a much improved pixel-oriented
setwindow replacement is already available in the form of
h_usewindow.
Filenames are now checked for non-ASCII text; finding any is
considered an error. Life's too short to implement a fully general
cross-platform encoding-independent file access mechanism, and
frankly ASCII is good enough -- we're talking arbitrary identifier
tokens here, not _literature_.
Games were randomly segfaulting on my computer, and the problem
seemed to be related to string handling, so I've taken the
opportunity to get rid of the horrid pstring interface and replace
it with something a little saner, based on bstrlib. Now it doesn't
segfault any more.
Fixed some other architectural oddities, notably the far-too-early
substitution of ligatures; this now doesn't take place until we're
actually trying to access glyphs, and consequentially we can stop
worrying about ligature substitution mangling filenames, and we can
ignore ligature definitions where there's no suitable glyph in the
active font.
2007-10-08
Support for soft subtitles in MPEG playback (but not, at present, in
AVI playback).
Add command logsp2utf -- equivalent to logsp2, but for UTF-8 text.
Various bug fixes: interaction between default styles and saved
games, ludicrously inefficient ligature searching, handling of
overlapping sprite-buttons.
Remove support for obsolete ONScripter-format saved games.
2007-09-25
Implement h_defwindow, h_usewindow, h_usewindow3: create and use
predefined sets of window settings.
Implement h_speedpercent: adjust all font speed settings
proportionately with a single convenient command.
2007-07-15
Fix glyph positioning and a number of OS X build bugs.
2007-06-16
Merge recent portability enhancements from ONScripter-En: configure
now works properly on a wider range of Unixes, and generates an
`install' target as documented.
2007-05-14
Improve path handling: all paths are now specified explicitly.
Full file handling is partly rewritten in a higher-level manner as a
prelude to making things encoding-independent, but direct access to
files with non-ASCII filenames is still very much dependent on a
UTF-8 filesystem.
2007-05-13
The game identifier can now be derived from caption or versionstr
commands if the ;gameid directive is absent.
2007-04-28
Ponscripter games now use slightly different script filenames.
Limited support for NScripter scripts added; output is by no means
identical with ONScripter, and many things will not work, but some
NScripter games are now playable with proportional text (even
proportional Japanese text!) without any porting.
Reimplement the clickstr function.
Fix bug in selectcolor implementation that was causing select
colours to be lost whenever the interpreter was reset.
2007-04-25
Merge in an adapted version of the `drawfix' patch to speed up
screen updates in windowed mode, plus a number of other patches:
Reduce flicker when sprites are changed (Roine Gustafsson)
Fix gcc detection on OS X (Roine)
Support multiple games without game IDs at the same time (Roine)
Fix incorrect clipping of text shadow (Roine)
2007-04 (passim)
Major cleanup of source code, including conversion of many aspects
to use C++ idioms and STL containers.
2007-04-15
Merge in useful fixes from onscripter-20070206.
2007-01
Redesign build system to support automatic platform/dependency
detection and to allow bundling of dependencies. This makes it
plausible to distribute the Linux version as source code, since a
straight configure-make cycle should finally "just work".
Reimplement menu handling initially stripped out during
proportionalisation. Right-click menus now function as in
ONScripter. Built-in save/load menus take advantage of proportional
text to display in automatically-formatted columns.
2006-11-30
Increase flexibility of file embedding. Font files can now be
embedded in the executable: embedded fonts will be used only if the
file is not found in the data directory or in the game archive.
Icon embedding is now optional; the embedded icon, if present, will
be used only if "icon.png" is not found in the working directory.
The new system could easily be expanded to allow other files to be
embedded, including game data.
2006-11-22
Implement default data/save separation for Windows and Linux
too. This should enhance Vista compatibility considerably, and make
it possible to package Linux versions in a way that respects the
FHS.
2006-11-21
Implement ligature customisation.
Integers can now be expressed in hexadecimal with an 0x prefix, as
in C.
2006-09-24
Replace SDL_ttf with a simpler, saner C++ interface (the
implementation still being largely drawn from SDL_ttf, of course).
Convert horizontal font positioning to use floating-point rather
than integer offsets. Begin attempts at subpixel positioning (still
buggy).
In the process, glyph caching has been removed. ONScripter uses
_two_ glyph caches (!) -- one in SDL_ttf, which apparently only
works on ASCII characters anyway, and one in
ONScripterLabel. However, the speed of text rendering does not seem
to be affected at all by removing caching, suggesting that it's a
premature optimisation. The code is simplified considerably by its
removal.
2006-09-18
Multi-font-style support.
2006-09-14
Automatic ligature support.
2006-09-08
Default icon embedded in interpreter. (This is game-specific; users
are expected to use custom builds with these replaced.)
2006-09-06
Fork.
UTF-8 and proportional text support.
Ruby, clickstr, and tategaki support removed.
2006-09-05 (as ONScripter)
Make archive path and save path separately configurable. Game data
no longer has to be stored in a writable directory.
OS X: make default archive path be the Resources folder of the
application bundle, and default save path be a new subfolder of the
user's Library/Preferences. The name of the subfolder is derived
from a new "game identifier" that should be specified at the top of
0.txt with a ";gameid Whatever" line immediately after the modeline.