Running Jack Keane on Kubuntu 10.10 Maverick 64 bit

Linux Port of Jack KeaneGetting Jack Keane to run on the 64 bit edition of Kubuntu 10.10 Maverick Beta was not completely straight forward. Here is a summary of the problems I experienced and how I solved them in the end.

Installer does not work on 64 bit systems

Starting the installer the normal way, I got this error:

$ cd /media/JackKeane/
$ ./setup.sh
The setup program seems to have failed on x86_64/glibc-2.1
 
Fatal error, no tech support email configured in this setup

Solution is to run the installer in 32 bit mode: linux32 ./setup.sh. I also made sure to install the optional 32 bit compatibility libraries that come with the proprietary NVIDIA drivers. Not sure whether this is actually needed.

Pulseaudio subsystem makes intro crash

Next, the game crashes at the beginning of the intro. Running from the command line, the log looks like this:

$ jk
Starting JK 1.0.3...(release)Starting intro...
Starting application...class created.
Desktop settings: 1920x1080
Log manager created.
Setting log level to 1
System: Linux 2.6.35-22-generic #33-Ubuntu SMP Sun Sep 19 20:32:27 UTC 2010
Available app memory (KB, maybe virtual): 5984172
Using RenderSystem: OpenGL Rendering Subsystem
Ogre initialized.
Inizializzo CEGUI...Ok.
CEGUI intialized.
LUA scripting initialized.
InputSystem initialized.
AudioManager initialized.
Sound effects/speech/music intialized.
GUIWindowManager construction...Ok.
Initializing Render Task...Ok
Initializing mouse interface...Ok
Initializing audio subsystem...open /dev/[sound/]dsp: No such file or directory
No AL device available
Ok.
Initializing compositor...Ok.
Initializing listener...Ok.
GetTotalMemory (MB) returned: 5843
Displaying intro scene...Done
System initialized.
Segmentation fault

To solve this, I had to edit the last line of the installed startup script ~/bin/jk from

LC_NUMERIC=C ./jk

to

LC_NUMERIC=C padsp ./jk

Ugly Texture Overdrive when running in “High Detail”

When I set the game to “high detail” for textures, I get the added “bonus” of a lot of textures lit very brightly which leads e.g. to almost white faces of the characters with no texture details left. Not sure whether this is due to my graphics card which is an NVIDIA GeForce GT 330M with the latest beta proprietary driver 260.19.06.

The best workaround I could find is to set shadows, full-screen effects, and detail all to high, then save and restart. Now we got high detail plus the annoying texture overdrive effect. We can get rid of the latter by entering settings again, setting detail to low, and exiting with Esc key without saving or restarting. It appears this leaves the high detail (because it can’t change without a restart), but still takes away the overdrive. Downside is of course that we have to repeat setting to “low detail” after every restart.

Configuration file

I had no groundbreaking successes in editing settings.ini file. Some findings from experimenting:

  • blurred_shadows = true results in crash is shadows are not “off”
  • changed resource_file to the non-low version. Can’t see any effect though.
  • upped shadow_texture_size from 2048 to 4096 with no noticeable effect.
  • cursor_type = Hardware results in crash
  • drag_support = true results in crash when trying to “drag” through a scene exit

Here’s my complete settings.ini file.

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
//////////////////////////////////////////////////////////////////////////
// Pina2 Settings file
//////////////////////////////////////////////////////////////////////////
 
//////////////////////////////////////////////////////////////////////////
// Category: Video
//////////////////////////////////////////////////////////////////////////
// Flag indicating whether texture shadows will be blurred
// Default: false
blurred_shadows = false
// Flag indicating whether subtitles will be displayed for spoken text
// Default: true
display_subtitles = true
// depth of field setting
// Default: Enabled
dof_type = Enabled
// The fullscreen setting for the application render window
// Default: true
fullscreen = true
// Flag indicating whether fullscreen fx will be made available
// Default: false
fullscreen_fx_enabled = true
// A value for the gamma correction applied to the render window
// Default: 1.0
gamma_correction = 1
// The name of the Ogre material scheme to use by default.
// Default: DX9High
material_scheme = DX9High
// The 3D api the engine should use for rendering
// Default: OpenGL
renderer = OpenGL
// The name of the resource file to use
// Default: 
resource_file = ../../media/media-bin.cfg
// The name of the Ogre scene manager in use.
// Default: DefaultSceneManager
scene_manager = DefaultSceneManager
// The rectangle defining the dimensions of the main render window
// Default: 1024x768
screen_size = 1920x1080
// texture size
// Default: High
texture_detail = High
// Flag indicating whether the application is supposed to run with vsync enabled
// Default: true
vsync = true
//////////////////////////////////////////////////////////////////////////
 
//////////////////////////////////////////////////////////////////////////
// Category: General
//////////////////////////////////////////////////////////////////////////
// Represents the mode to be used to present errors to the user.
// Default: LogError
error_mode = LogError
// The language of the game to use by default.
// Default: german
game_language = english
// Defines whether the application will init itself from the database or from (binary) files.
// Default: Binary
init_mode = Binary
// Flag indicating whether items will be animated inside the inventory
// Default: true
item_animations_enabled = true
// Wraps the level for message logging
// Default: Warnings
logging_level = Warnings
// The number of locations allowed to be loaded at the same time
// Default: 1
max_location_count = 4
// The size of the texture used for shadows
// Default: 1024
shadow_texture_size = 4096
// The speech language of the game to use by default.
// Default: 
speech_sample_language = english
//////////////////////////////////////////////////////////////////////////
 
//////////////////////////////////////////////////////////////////////////
// Category: Input
//////////////////////////////////////////////////////////////////////////
// The type of mouse cursor to use (Hardware or Software)
// Default: Hardware
cursor_type = Software
// The name of the input system to use (Ogre, SDL or OIS)
// Default: SDL
input_system = SDL
//////////////////////////////////////////////////////////////////////////
 
//////////////////////////////////////////////////////////////////////////
// Category: Development
//////////////////////////////////////////////////////////////////////////
// Flag indicating whether gui windows used for development/debugging are created
// Default: false
create_dev_gui_windows = false
// Flag indicating a Diablo control style is supported
// Default: false
drag_support = false
// Flag indicating whether entities will be loaded on init to initialize their animations.
// Default: false
init_skeletons_on_startup = false
// Determines whether the inventory will always be visible or only be shown on demand.
// Default: true
inventory_always_visible = true
// Flag indicating whether the log file name will be timestamped
// Default: false
log_timestamped = false
// Wraps the flag if missing strings/audio files are tracked.
// Default: false
track_missing_strings = false
// Flag indicating whether world geometry will make use of Ogre's StaticGeometry
// Default: false
use_ogre_static_geometry_for_world = true
// Flag indicating whether CEGUI texts will be cast to utf8
// Default: false
utf8 = false
//////////////////////////////////////////////////////////////////////////
 
//////////////////////////////////////////////////////////////////////////
// Category: Database
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
 
//////////////////////////////////////////////////////////////////////////
// Category: Speech
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
 
//////////////////////////////////////////////////////////////////////////
// Category: Audio
//////////////////////////////////////////////////////////////////////////
// The effect volume from 0.0f to 1.0f
// Default: 0.8
volume_effect = 0.5
// The master volume from 0.0f to 1.0f
// Default: 0.8
volume_master = 1
// The music volume from 0.0f to 1.0f
// Default: 0.8
volume_music = 1
// The speech volume from 0.0f to 2.0f
// Default: 0.8
volume_speech = 0.3

Other Notes

Copying over game saves from a previous 32 bit install worked like a charm.

Comments

Comments are closed.