Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

ONScripter-GBK PSP

From GameBrew
Revision as of 05:44, 22 September 2024 by HydeWing (talk | contribs)
ONScripter-GBK
Onscpsp.png
General
Authorjohn_he
TypeGame Engine
Version20080121-zh04
LicenseGPL-2.0
Last Updated2008/01/21
Links
Download
Website

ONScripter (O-N-Scripter) is an open-source implementation of the visual and sound novel game engine NScripter.

This is a port of ONScripter based on the official version ONScripter-20070206 with support for GBK, BIG5, SHIFT-JIS encoding.

Changes from to the official version:

  • Automatically saving global variables when exiting with the HOME button.
  • Introduced a PSP-specific ons.ini configuration file, it differs from the one used in すとーむ version.
  • Users can now select character encoding during compilation (for developers only).
  • Added default icons and backgrounds for PSP.

Installation

Folder structure

ms0:/PSP/GAME/ONS/

  • EBOOT.PBP
  • 0.txt or nscript.dat (script file)
  • arc.nsa or arc.sar (archive for image, music, etc. converted for PSP)
  • default.ttf (TrueType Fonts for Windows that support Unicode)
  • ons.ini (configuration file)
  • additional folder with BGM or movies (e.g. cd/Track01.xxx, cd/Track02.xxx, cd/Track03.xxx... cd/Track14.xxx)

For general instructions and tools for preparing the game data please refer to this section.

ons.ini

The configuration file for this Chinese version (ons.ini) works the same as the one compiled by Storm (the original Japanese version).

To use it, create an ons.ini file and place it in the same directory as the executable. However, the specific configuration options differ from the Storm version, as listed below.

(The general options works the same as the corresponding command-line parameters.)

General:

  • font=(font filename)
    • Set a TTF font file, e.g., font=./simhei.ttf. (Note: The path separator on PSP is '/' not '\'.)
  • registry=(registry file)
    • Set a registry file. Since ONS does not directly access the Windows registry, a text file is used to record the registry entries.
  • dll=(DLL substitute definition file)
    • Set a dll file. Since ONS cannot load DLL plugins, text scripts are used instead. For details on dll.txt, refer to the ONS official website.
  • root=(game root directory)
    • Specify the game root directory. This is required when the executable and the NSA package are not in the same directory.
  • fullscreen=(yes | no)
    • Indicate whether to enter the game in fullscreen mode.

PSP-Specific:

  • resolution=(1~360)
    • Specify the resolution for PSP. This number represents the width; the height is calculated based on a 4:3 ratio.
    • The default value is 360.
  • screensize=(normal | full)
    • Indicate whether to use widescreen.
    • Widescreen here simply stretches the 4:3 image to 16:9; native 16:9 support is not available.
  • cpuclock=(integer)
    • Adjust the cpu clock, with a valid range of 1~333.
  • busclock=(integer)
    • Adjust the bus clock, with a valid range of 1~167.
  • LMB_ONCE=(key)
    • Specify the PSP key for a single left mouse button click; the default is Cross.
  • LMB=(key)
    • Specify the PSP key for continuous left mouse button clicks; the default is Circle.
  • RMB=(key)
    • Specify the PSP key for the right mouse button; the default is Triangle.
  • CURSOR_PREV=(key)
    • Specify the key for "previous option"; the default is Up.
  • CURSOR_NEXT=(key)
    • Specify the key for "next option"; the default is Down.
  • SKIP=(key)
    • Specify the key for "fast forward"; the default is Square.
  • PAGEFLIP=(key)
    • Specify the key for "toggle page display"; the default is L.
  • MEM_UP=(key)
    • Specify the key for "previous line in backlog"; the default is Left.
  • MEM_DOWN=(key)
    • Specify the key for "next line in backlog"; the default is Right.
  • AUTOMODE=(key)
    • Specify the key for "toggle auto-read mode"; the default is Start.
  • SPEED=(key)
    • Specify the key for "change text speed"; the default is Select.
  • NONE=(key)
    • Disables the function of a specific key.
  • Key Value and Binding:
    • 1 : Triangle
    • 2 : Circle
    • 3 : Cross
    • 4 : Square
    • 5 : L
    • 6 : R
    • 7 : Down
    • 8 : Left
    • 9 : Up
    • 10: Right
    • 11: Select
    • 12: Start

The configuration options are case-insensitive.

Resources

Controls

Cross - Confirm, Advance text

Triangle - Menu

Up/Down - Previous/Next option

Square - Fast forward

L - Toggle page display

Left/Right - Backlog

Start - Automode

Select - Change text speed

Screenshots

onscpsp6.png

onscpsp5.png

Compatibility

Tested on PSP-1000 with 3.52 M33.

Known issues

Due to limited memory in the PSP and the lack of support for streaming playback, there are restrictions on the length of audio that can be played using dwave command (not longer than 40 seconds).

Generally, different formats have different limitations. Playing audio longer than the allowed length will likely cause the system to crash. Some of the possible solutions include reducing the audio length, converting stereo to mono, or lowering the sample rate.

Changelog

(ZH version)

20080121-zh04

  • Fixed compatibility with PSP 3.71 kernel version; it should work now.

20080121-zh03

  • Added support for Big5 encoding (Traditional Chinese).
  • Fixed a bug in reading the configuration file.

20080121-zh02

  • Added cpuclock and busclock options to the configuration file (ons.ini) to support adjusting PSP CPU and bus frequency.

20080121-zh01

  • Integrated the previous translation version with the official code from 20080121.
  • Added support for PSP 3.71 kernel version; untested and may not work at all.

(Official version)

20080121

  • Fixed a bug in pretextgosub that caused script reading errors.

20080115

  • Fixed a bug where using the bgm command to stream OGG would corrupt internal data.

20080112

  • Fixed a bug where the display of phonetic symbols (above the text) was incorrect.

20080111

  • Fixed a bug where volume settings did not reflect correctly.

20080110

  • Integrated support for GP2X, iPhone, and WinCE (mingw32ce).

20080107

  • Fixed a bug where texton and textoff commands ignored the effects specified by windoweffect.
  • Implemented the windowchip command.

20080106

  • Fixed a bug in the lsp2 command regarding coordinate specification.
  • Implemented the vsp2 command.

20080105

  • Fixed a bug where logsp, strsp, movemousecursor, and shadedistance commands did not map the resolution correctly.
  • Fixed a buffer overflow bug that occurred when saving and loading progress after defining ENABLE_1BYTE_CHAR.
  • Fixed a bug where phonetic symbols did not display correctly when executing the logsp command.
  • Implemented the savegame2, pagetag, and gettaglog commands.

(ZH version)

20070826a-zh00 Test Version

  • The configuration file is compatible with versions for all platforms (only tested on Windows and PSP).
  • Enhanced the functionality of the ons.ini configuration file (specifying font files, Archive root directory, etc.).
  • Added a Makefile for MinGW; future Windows versions will be compiled using MinGW GCC instead of VC++.

(Official version)

20070826a

  • Fixed a bug related to the incorrect order of sprite representation.

20070826

  • Fixed the issue where OGG audio could not loop when using CD Audio.
  • Fixed the problem where the resolution would not change when taking screenshots with the --disable-rescale parameter in PDA.
  • Implemented commands: lsp2, lsph2, csp2, msp2, amsp2, allsp2resume, allsp2hide.

20070823

  • Fixed errors caused by commands such as systemcall reset, systemcall load, reset, definereset, loadgame, and definereset, which stopped sound playback during dwave.
  • Fixed the issue where the page-turning function (O key) in textgosub was not working in version 20070822.
  • When streaming and looping OGG or MP3 music, data will be reused from memory instead of reloading from disk.

20070822

  • Fixed an error where displayed text could not be interpreted correctly when textgosub was specified.
  • Fixed a bug in drawbg2 that caused calculation errors due to overflow.
  • Fixed a bug where the return command would fail.

20070821a

  • Adopted variable-length file information to save memory.

20070821

  • Fixed a bug where the dwavestop and chvol commands would fail when using channels above 54.
  • Fixed an error when using iconv on macOS that caused issues with Shift-JIS filenames (this part was completely revised in the translated version and does not affect it).
  • Added support for the PS3 platform (not tested).
  • Fixed a bug causing incorrect text buffer character count when reading very old version save files (NS 1.xx).
  • Fixed a bug where the getparam command could not correctly interpret variable IDs for string variables.
  • Corrected spelling errors in the output text for the command line parameter --help.
  • Fixed an error where a space between ;value and a number in the ;value command caused it to be ignored.

(ZH version)

20070206-zh04

  • Corrected code layout, reintroduced the Shift-JIS character set, and added support for compiling in GBK and Shift-JIS.
  • Added functionality for the PSP version to read the ons.ini configuration file.
  • Added XMB icons for the PSP version.
  • Other bug fixes.

20070206-zh02 and 20070206-zh03

  • Fixed localized garbled text bugs.
  • The PSP version saves global variables when exiting by pressing the HOME key.

20070206-zh01

  • Modified the Shift-JIS character set to GBK based on the official version 20070206.
  • Translated the Japanese right-click menu into Chinese.

External links

Advertising: