Has Anyone Done Anything On Gemrb?


Omg that would be so awesome! :D
So, was it hard to get it to work?
What did you had to to in order to keep it running?
So excited.
 
OK, I did a quick video. Lighting and audio sucks, kids banging on the table but hey, it's al I can do right now.

I installed angstrom on SD and compiled GemRB from source. It had a lot of dependencies which I installed through opkg.
Since I never used GemRB before the most minutes went into configuring that and installing BG1 to it.

The two minor problems i can see in BG now is the text being yellow(does not read to well on a yellowish background) and the sound stuttering when BG is loading.
Other than that it seems to work very well. I only played a bit until outside candlekeep so maybe a lot more problems will arise. But it looks good.

Well take a looksee.

http://www.youtube.com/watch?v=AYX0wAL6WAI

I'm going for a beer.

JD
 
Wow, looking smooth to me. :)
Thanks a ton for uploading this!
I guess I'll have to go out for a beer now too... waiting sure is cruel. ;)

Maybe the 0.6.1 release fixes some minor bugs like the yellow on yellow textboxes..
If you've got some free time left I would suggest you try Planescape Torment. Its so damn good.
Would try it out by myself but theres something missing... what was it again? yeah Pandora. ;)
 
how'd you set it up? For pickles build it never worked for me, maybe he gemrb guys fixed it. (hm, think it was bg2 for that matter..)

jeffphone
 
So I tried Baldur's Gate 2 as well. It is a lot slower than BG1 but it does work. Loading a savegame takes about 3 minutes though and the same problems I had with BG1 are here as well. Awfull sound when loading.
Also the bottom panel of the screen (ingame) does not display anything. I had to move a lot of files around to get it running and since gemrb.sourceforge has been down all evening I could not check if I missed some things.

I have only tried it at 500 MHz so in that aspect things look promising. I'll try some things the coming days to get it better. Maybe try GemRB 0.6.1.

Now it's time for a little nap and a dream about Imoen ;)
 
Can you do a ls -lr and let us see?

Is bg1 playable (speed/audio-wise)? Bg2? Iwd1?

Oh man, I'd love if iwd1 was good but I'll settle for bg1 ;)

jeff
 
IWD1 is working even better then BG1. Visually it's perfect. It just has the same sound issue which makes it not fun to play. So we have to find a solution for that.
It seems that when playing sound (music or speech) and loading at the same time is interfering with eachother. When there is no background music/sound, it runs about as good as i could hope for.

Code:
[johnd@ginette:/media/disk/iwd1]% ls -lr
total 4524
drwxr-xr-x 26 johnd root    4096 Jun 21 08:54 sounds/
drwxr-xr-x  2 johnd root    4096 Jun 21 08:54 scripts/
drwxr-xr-x  2 johnd root    4096 Jun 21 08:55 register/
drwxr-xr-x  2 johnd root    4096 Jun 21 08:54 override/
drwxr-xr-x 41 johnd root    4096 Jun 21 08:55 music/
-rwxr-xr-x  1 johnd root    1620 Jun 21 08:53 mpicewnd.mpi*
-rwxr-xr-x  1 johnd root   11889 Jun 21 08:53 language.ini*
-rwxr-xr-x  1 johnd root    7550 Jun 21 08:53 keymap.ini*
-rwxr-xr-x  1 johnd root     316 Jun 21 08:53 icewind.ini*
-rwxr-xr-x  1 johnd root 2906002 Jun 21 08:53 dialog.tlk*
drwxr-xr-x  2 johnd root    4096 Jun 21 09:00 data/
-rwxr-xr-x  1 johnd root  729600 Jun 21 08:53 config.exe*
-rwxr-xr-x  1 johnd root  216476 Jun 21 08:53 chitin.key*
drwxr-xr-x  2 johnd root    4096 Jun 21 08:54 characters/
drwxr-xr-x  3 johnd root    4096 Jun 21 09:01 CD2/
drwxr-xr-x  2 johnd root    4096 Jun 21 09:15 Cache/
-rwxr-xr-x  1 johnd root  705024 Jun 21 08:53 3dfx.dll*

The gemrb.cfg for iwd1:

Code:
#####################################################
#                                                   #
#  This is the GemRB Configuration file.            #
#  Here are defined some default parameters for     #
#  basic configuration and paths definition.        #
#                                                   #
#  Parameters are defined as a Name=Value pair      #
#  The Value can be of three types:                 #
#      - String                                     #
#      - Integer                                    #
#      - Boolean                                    #
#                                                   #
#  The String value is represented as follows       #
#  i.e. H:\GemRB\plugins                            #
#  Integers are defined as follows                  #
#  i.e. 12723                                       #
#  Booleans are represented as 1 or 0 in this file  #
#                                                   #
#  Lines starting with # are ignored                #
#                                                   #
#####################################################

#####################################################
#                                                   #
#  Game Type [String] Use one of the following      #
#  values:                                          #
#                                                   #
#  bg1       Baldur's Gate                          #
#  bg2       Baldur's Gate 2 : SoA or ToB           #
#  tob       Baldur's Gate 2 : ToB (obsolete)       #
#  iwd       IceWind Dale                           #
#  how       IceWind Dale : HoW or ToTL             #
#  iwd2      IceWind Dale 2                         #
#  pst       Planescape Torment                     #
#  (More will come)                                 #
#                                                   #
#####################################################

GameType=iwd

#####################################################
#  Game Name [String] Title for GemRB window, use   #
#  anything you wish, e.g. Baldur's Gate 3: RotFL   #
#####################################################

GameName= IWD1

#####################################################
#  Video Parameters                                 #
#####################################################

#Screen width
Width=640

#Screen height
Height=480

#Bits per pixel [Integer:16,32]
Bpp=16

#Fullscreen [Boolean]
Fullscreen=1

# Delay before tooltips appear [milliseconds]
TooltipDelay=500

#####################################################
#  Audio Parameters                                 #
#####################################################
#                                                   #
# All volume options are in percents, with 100      #
# being the normal and default volume               #
#                                                   #
#####################################################

# Load NullSound driver only if OpenALAudio driver failed
DelayPlugin=libNullSound.so
DelayPlugin=libNullSound.dll

# Volume of ambient sounds
VolumeAmbients = 100

# Volume during movie playback
VolumeMovie = 100

# Volume of background music
VolumeMusic = 100

# Volume of sound effects
VolumeSFX = 100

# Volume of PC or NPC voices
VolumeVoices = 100

#####################################################
#  Case Sensitive Filesystem [Boolean]              #
#                                                   #
#  If your installed game files are residing on a   #
#  case sensitive filesystem (ext2 on Linux) then   #
#  you need to set this value to 1, it has no       #
#  effect on Windows                                #
#####################################################

CaseSensitive=0

#GameOnCD=0

#####################################################
#  Debug                                            #
#####################################################

# Do not play intro videos [Boolean], useful for development
#SkipIntroVideos=1

# Draw Frames per Second info [Boolean]
#DrawFPS=1

# Hide unexplored parts of a map
#FogOfWar=1

# Enable debug and cheat keystrokes, see docs/en/CheatKeys.txt
#   full listing
#EnableCheatKeys=1

#####################################################
#  Paths                                            #
#####################################################

#####################################################
#  Game Paths [String]                              #
#                                                   #
#  These are the paths where the Game you want to   #
#  play is installed.                               #
#  Enter the full path to the directory.             #
#####################################################

GamePath=/media/mmcblk1p1/iwd1/
CD2=/media/mmcblk1p1/iwd1/CD2/
#CD2=/mnt/windows/Programmi/Black Isle/BGII - SoA/CD2/
#CD3=/mnt/windows/Programmi/Black Isle/BGII - SoA/CD3/
#CD4=/mnt/windows/Programmi/Black Isle/BGII - SoA/CD4/
#CD5=/mnt/windows/Programmi/Black Isle/BGII - SoA/CD5/

#####################################################
#  GemRB Path [String]                              #
#                                                   #
#  This is the path where GemRB is stored, just     #
#  enter the full path to the GemRB executable      #
#####################################################

GemRBPath=/usr/local/bin/

#####################################################
#  GemRB Cache Path [String]                        #
#                                                   #
#  This is the path where GemRB will store the      #
#  cached files, enter the full path to the GemRB   #
#  Cache directory.                                 #
#####################################################

CachePath=./Cache/

#####################################################
#  GemRB GUI Scripts Path [String]                  #
#                                                   #
#  This is the path where GemRB GUI scripts are     #
#  stored, usually these are in the GemRB directory #
#  Enter the full path to the directory containing  #
#  the 'GUIScript' subdirectory.                    #
#####################################################

GUIScriptsPath=/usr/local/share/gemrb/

#####################################################
#  GemRB Plugins Path [String]                      #
#                                                   #
#  This is the path containing GemRB plugins        #
#  - shared libraries (.so) on Unixes, or           #
#  DLLs (.dll) on windows.                          #
#  Enter the full path to the directory.            #
#                                                   #
#  You may need to specify this path if running     #
#  GemRB from source directory on Linux.            #
#####################################################

#PluginsPath=./plugins/

#####################################################
#  GemRB Save Path [String]                         #
#                                                   #
#  This is the path where GemRB looks for saved     #
#  games.                                           #
#  Enter the full path to the directory containing  #
#  e.g. the 'save' subdirectory.                    #
#                                                   #
#  You do not have to specify this if you use save  #
#  subdir in the GamePath directory.                #
#####################################################

#SavePath=/mnt/windows/Programmi/Black Isle/BGII - SoA/

#####################################################
#  Game Data Path [String]                          #
#                                                   #
#  This is the subdirectory under GamePath where    #
#  game data files are stored.                      #
#                                                   #
#  You probably do NOT want to specify this!        #
#####################################################

#GameDataPath=data

#####################################################
#  Game Data Override Path [String]                 #
#                                                   #
#  This is the subdirectory under GamePath where    #
#  game data override files are stored.             #
#                                                   #
#  You probably do NOT want to specify this!        #
#####################################################

#GameOverridePath=override

#####################################################
#  GemRB Data Override Path [String]                #
#                                                   #
#  This is the path where GemRB looks for the GemRB #
#  data override directory.                         #
#                                                   #
#  You probably do NOT want to specify this!        #
#####################################################

GemRBOverridePath=/usr/local/share/gemrb

#####################################################
#  GUI Parameters                                   #
#####################################################
#                                                   #
# GemRB may enhance the GUI of the Infinity Engine  #
# games (so far only in bg2) creating functionally  #
# new buttons or scrollbars where they weren't      #
# present in original games. It may improve its     #
# usability, but is not quite compatible with       #
# mods changing graphics and alignment in the *.chu #
# files (e.g. the buttons will appear in old        #
# coordinates and may stop being clickable).        #
#####################################################

# Enable all gui enhancements ? [Boolean]
GUIEnhancements = 1

#####################################################
#  END                                              #
#####################################################

Important to set:
GemRBOverridePath=/usr/local/share/gemrb

and start gemrb from within the game directory otherwise i get a chitin.key error.

Now i will try to solve the sound (maybe something with openal) and install gemrb 0.6.1

Jurn
 
So excited... 2 thumbs up for all your work!
Hope you can find a fix for the sound. Keep us updated and good luck! :)
 
Well, that wasn't too hard. Sound issue has been solved by creating a proper /etc/openal/alsoft.conf.

This one works for me:

Code:
# OpenAL config file. Options that are not under a block or are under the

# [general] block are for general, non-backend-specific options. Blocks may

# appear multiple times, and duplicated options will take the last value

# specified.

# The system-wide settings can be put in /etc/openal/alsoft.conf and user-

# specific override settings in ~/.alsoftrc.

# For Windows, these settings should go into %AppData%\alsoft.ini

# The environment variable ALSOFT_CONF can be used to specify another config

# override



# Option and block names are case-insenstive. The supplied values are only

# hints and may not be honored (though generally it'll try to get as close as

# possible). Note: options that are left unset may default to app- or system-

# specified values. These are the current available settings:



## format:

#  Sets the output format. Can be one of:

#  AL_FORMAT_MONO8    (8-bit mono)

#  AL_FORMAT_STEREO8  (8-bit stereo)

#  AL_FORMAT_QUAD8    (8-bit 4-channel)

#  AL_FORMAT_51CHN8   (8-bit 5.1 output)

#  AL_FORMAT_61CHN8   (8-bit 6.1 output)

#  AL_FORMAT_71CHN8   (8-bit 7.1 output)

#  AL_FORMAT_MONO16   (16-bit mono)

#  AL_FORMAT_STEREO16 (16-bit stereo)

#  AL_FORMAT_QUAD16   (16-bit 4-channel)

#  AL_FORMAT_51CHN16  (16-bit 5.1 output)

#  AL_FORMAT_61CHN16  (16-bit 6.1 output)

#  AL_FORMAT_71CHN16  (16-bit 7.1 output)

#  AL_FORMAT_MONO32   (32-bit float mono)

#  AL_FORMAT_STEREO32 (32-bit float stereo)

#  AL_FORMAT_QUAD32   (32-bit float 4-channel)

#  AL_FORMAT_51CHN32  (32-bit float 5.1 output)

#  AL_FORMAT_61CHN32  (32-bit float 6.1 output)

#  AL_FORMAT_71CHN32  (32-bit float 7.1 output)

format = AL_FORMAT_STEREO8



## cf_level:

#  Sets the crossfeed level for stereo output. Valid values are:

#  0 - No crossfeed

#  1 - Low crossfeed

#  2 - Middle crossfeed

#  3 - High crossfeed (virtual speakers are closer to itself)

#  4 - Low easy crossfeed

#  5 - Middle easy crossfeed

#  6 - High easy crossfeed

#  Users of headphones may want to try various settings. Has no effect on non-

#  stereo modes.

#cf_level = 0



## frequency:

#  Sets the output frequency.

frequency = 22050



## period_size:

#  Sets the update period size, in frames. This is the number of frames needed

#  for each mixing update. If the deprecated 'refresh' option is specified and

#  this isn't, the value will be calculated as size = refresh/periods.

period_size = 4096



## periods:

#  Sets the number of update periods. Higher values create a larger mix ahead,

#  which helps protect against skips when the CPU is under load, but increases

#  the delay between a sound getting mixed and being heard.

#periods = 4



## sources:

#  Sets the maximum number of allocatable sources. Lower values may help for

#  systems with apps that try to play more sounds than the CPU can handle.

#sources = 128



## stereodup:

#  Sets whether to duplicate stereo sounds on the rear and side speakers for 4+

#  channel output. This can make stereo sources substantially louder than mono

#  or even 4+ channel sources, but provides a "fuller" playback quality. True,

#  yes, on, and non-0 values will duplicate stereo sources. 0 and anything else

#  will cause stereo sounds to only play out the front speakers.

#stereodup = false



## drivers:

#  Sets the backend driver list order, comma-seperated. Unknown backends and

#  duplicated names are ignored, and unlisted backends won't be considered for

#  use. An empty list means the default.

drivers = alsa,oss,solaris,dsound,winmm,port,wave



## excludefx:

#  Sets which effects to exclude, preventing apps from using them. This can

#  help for apps that try to use effects which are too CPU intensive for the

#  system to handle. Available effects are: eaxreverb,reverb,echo

#excludefx =



## slots:

#  Sets the maximum number of Auxiliary Effect Slots an app can create. A slot

#  can use a non-negligible amount of CPU time if an effect is set on it even

#  if no sources are feeding it, so this may help when apps use more than the

#  system can handle.

#slots = 4



## sends:

#  Sets the maximum number of auxiliary sends per source. The total number of

#  sends possible is defined at compile time and thus can not be increased

#  beyond the default (2).

#sends = 2



## layout_STEREO:

#  Sets the speaker layout when using stereo output. Values are specified in

#  degrees, where 0 is straight in front, negative goes left, and positive goes

#  right. The values must define a circular pattern, starting with the back-

#  left at the most negative, around the front to back-center. Unspecified

#  speakers will remain at their default position. Available speakers are

#  front-left(fl) and front-right(fr).

#layout_STEREO = fl=-90, fr=90



## laytout_QUAD:

#  Sets the speaker layout when using quadriphonic output. Available speakers

#  are back-left(bl), front-left(fl), front-right(fr), and back-right(br).

#layout_QUAD = bl=-135, fl=-45, fr=45, br=135



## layout_51CHN:

#  Sets the speaker layout when using 5.1 output. Available speakers are back-

#  left(bl), front-left(fl), front-center(fc), front-right(fr), and back-

#  right(br).

#layout_51CHN = bl=-110, fl=-30, fc=0, fr=30, br=110



## layout_61CHN:

#  Sets the speaker layout when using 6.1 output. Available speakers are side-

#  left(sl), front-left(fl), front-center(fc), front-right(fr), side-right(sr),

#  and back-center(bc).

#layout_61CHN = sl=-90, fl=-30, fc=0, fr=30, sr=90, bc=180



## layout_71CHN:

#  Sets the speaker layout when using 7.1 output. Available speakers are back-

#  left(bl), side-left(sl), front-left(fl), front-center(fc), front-right(fr),

#  side-right(sr), and back-right(br).

#layout_71CHN = bl=-150, sl=-90, fl=-30, fc=0, fr=30, sr=90, br=150



##

## ALSA backend stuff

##

[alsa]



## device:

#  Sets the device name for the default playback device.

device = alsa



## capture:

#  Sets the device name for the default capture device.

#capture = default



## mmap:

#  Sets whether to try using mmap mode (helps reduce latencies and CPU

#  consumption). If mmap isn't available, it will automatically fall back to

#  non-mmap mode. True, yes, on, and non-0 values will attempt to use mmap. 0

#  and anything else will force mmap off.

#mmap = true



##

## OSS backend stuff

##

[oss]



## device:

#  Sets the device name for OSS output.

#device = /dev/dsp



## capture:

#  Sets the device name for OSS capture.

#capture = /dev/dsp



##

## Solaris backend stuff

##

[solaris]



## device:

#  Sets the device name for Solaris output.

#device = /dev/audio



##

## DirectSound backend stuff

##

[dsound]



##

## Windows Multimedia backend stuff

##

[winmm]



##

## PortAudio backend stuff

##

[port]



## device:

#  Sets the device index for output. Negative values will use the default as

#  given by PortAudio itself.

#device = -1



##

## PulseAudio backend stuff

##

[pulse]



##

## Wave File Writer stuff

##

[wave]



## file:

#  Sets the filename of the wave file to write to. An empty name prevents the

#  backend from opening, even when explicitly requested.

#  THIS WILL OVERWRITE EXISTING FILES WITHOUT QUESTION!

#file =
 
GemRB has always been at the top of my Pandora wishlist! Great job! :wub:
Now we just need compatibility between GemRB and BGT, for the best Baldurs Gate experience ever! :D

Edit: Appearently, BG Tutu works better with GemRB. BG1 on the BG2 engine, with better gfx, resolution, etc. And there's even mods that add more personality to the BG1 NPCs, like in BG2.
 
I do hope SOA and TOB will be fullspeed at some point :)

I'm not too good with all this stuff, but does it use the hardware acceleration, or is that not really anything to do with this?
 
Damn, now i need to buy a new 16gb sdhc card.
Does BGT run with gemrb?
 
drD20 said:
Damn, now i need to buy a new 16gb sdhc card.
Does BGT run with gemrb?
There are a few bugs atm, such as your start location being in a wall in Candlekeep...
I think BG Tutu might be better, though I haven't tried it yet.
 
Last edited by a moderator:
OMG, JurnD .. you didn't post your build anhywhere? you bastard :)

Save me doing yet another port; post your pnd, or a tarball of your un-pnded stuff :) (if you need, I'll make a pnd for you.)

jeff
 
Back
Top