zerojay / RetroPie-Extra

A collection of unofficial scripts for adding more emulators/ports/games to RetroPie.
MIT License
309 stars 101 forks source link

Dune II Legacy #264

Open symbios24 opened 6 years ago

symbios24 commented 6 years ago

Hello what about putting in ports this one?

http://sourceforge.net/projects/dunelegacy/files/dunelegacy/0.96.4/dunelegacy_0.96.4_armhf.deb/download

http://dunelegacy.sourceforge.net/website/downloads.html

As far as i read its working great in RaspberryPI

https://www.raspberrypi.org/forums/viewtopic.php?t=48057

Thanks

Darknior commented 6 years ago

WOAW excellent :) I never think to search for this game because we already have it on PC DOS, Megrive, AMIGA and other ports ... But this one can be cool because it support :

The only thing i read we must try to make it working better is that :

# ~/.config/dunelegacy/Dune Legacy.ini
Double Buffering = false
symbios24 commented 6 years ago

it will be great to be added on ports.

symbios24 commented 6 years ago

this list has everything check it out

https://osgameclones.com/

Darknior commented 6 years ago

Yes i love the idea :)

Official SF repo is there : https://sourceforge.net/p/dunelegacy/code/ci/master/tree/ But finally i found it there too : (and it as been update) https://github.com/philippkeller/dunelegacy Maybe it is a better way to use this GIT ;)

Thanks @symbios24 for this list, i don't know it, so excellent :)

Darknior commented 6 years ago

Finaly i can't use the GIT version and compile it :( And it is older ...

With the Source Forge :

git clone git://dunelegacy.git.sourceforge.net/gitroot/dunelegacy/dunelegacy

autoreconf --install
./configure
make
make install

Take DATA here only for DUNE2 files :

https://github.com/philippkeller/dunelegacy/tree/master/data

And copy all these files to :

/home/pi/.config/dunelegacy/data

Configure : /home/pi/.config/dunelegacy/Dune Legacy.ini

Double Buffering = false

But when i launch the game in console to try if it works fine :

root@retropie:/opt/retropie/ports/dunelegacy# DISPLAY=:0 ./dunelegacy --showlog
Starting Dune Legacy 0.96.4 on Linux

And nothing more ?????

symbios24 commented 6 years ago

did you installed the required libraries?

dunelegacy requires libsdl and libsdl-mixer1.2

symbios24 commented 6 years ago

did you follow the instructions here

http://dunelegacy.sourceforge.net/website/development/building.html

Darknior commented 6 years ago

I have compiled a version of game in DEBUG mode with builddebug.sh And with --showlog i can see :

pi@retropie:/opt/retropie/ports/dunelegacy $ ./dunelegacy --showlog
Starting Dune Legacy 0.96.4 on Linux
Loading localization from '/usr/local/share/dunelegacy/locale/English.en.po'...
English.en.po: Cannot find this file!
Warning: Language is changed to English!
Loading localization from '/usr/local/share/dunelegacy/locale/English.en.po'...
English.en.po: Cannot find this file!

It not found langage files that i already put in /home/pi/.config/dunelegacy/data And i must copy them to /usr/local/share/locale/

Now the game works fine, but but if some one know how to change this with the make file, it can be cool :) I don't use the make install because i want to put the game in RETROPIE/PORT directory.

Darknior commented 6 years ago

BUT if the menu works fine, the game flicker a lot :( Double Buffering = false Don't save anything ...

The game is not really fast, the sprite are so little if you play without SCALEx2 ... You must use mouse and Joystick are not supported ... I will not take it for my set, i really prefer play it on PSX with gamepad or on DOS or AMIGA ... Not interesting for me.

Darknior commented 6 years ago

I already have do all of this lol almost ... to add it to port but i don't like this port and i remove it. It works fine from ES, no problem, but playing it with my keybord + trackpad is not really cool and smooth. All the games i add, are also test and add to ES to be easily launch. No problem for Dune.

Maybe it will be a good addition for desktop users, that don't use PI on TV, to play like on console. This game must be played with a real mouse and Keyboard.

You can try the DEB, i try the EXE and it works for us. I'm not sure for the directories it will use. But it is a good idea because Dune is very long to compile.

symbios24 commented 6 years ago

How do you compile it?

Dont forget that we dont add game`s here just only for us but for everyone,i does not play good for you but for someone else that use a keyboard it will play.

symbios24 commented 6 years ago

Can you do a pull request to be added in the ports?

Darknior commented 6 years ago

Yes I know and it's why I post you here all I do to make it works on Pi. Read messages a explain all the command line. But you will have the flick screen bug I can't fix. Disable double buffering change nothing for me.

symbios24 commented 6 years ago

Did you try it like this using the runcommand .sh

!/bin/bash

"/opt/retropie/supplementary/runcommand/runcommand.sh" 0 PORT "dunelegacy" ""

symbios24 commented 6 years ago

I also had before some ports/games flickering by following exact my big guide up the flickering is gonne

Darknior commented 6 years ago

No i have make it fast with :

pushd or cd i don't remeber ...
cd /opt/retropie/ports/dunelegacy
./dunelegacy
popd

Where is you tuto to remove FLICKERING in game ? Thanks

symbios24 commented 6 years ago

its the 11 nth post here the big one

Darknior commented 6 years ago

I don't see what's remove flickering her ? When i launch a game from console with ES closed it's same i think. The flickering problem come from the game coding or settings. In Rockbot i remove it with Full Screen option. There Full screen change nothing and Double Buffering change nothing too.

symbios24 commented 6 years ago

install wesnoth on retropie and run it and tell me what you see

symbios24 commented 6 years ago

what i say is i have corrected the flickering if you follow my method you wont have flickering. wesnoth had flickering and i fix it

Just try it with dune:

create a folder in opt\retropie\configs\ports\

with name dunelegacy

create inside the folder a file with name emulators.cfg

open the file with sudo nano emulators.cfg

type inside:

dunelegacy= "xinit /usr/games/dunelegacy" default = "dunelegacy"

save with control+x y and exit

now create a file dunelegacy.sh in home\pi\RetroPie\roms\ports\

open the file with nano editor:

sudo nano dunelegacy.sh

inside write:

!/bin/bash

"/opt/retropie/supplementary/runcommand/runcommand.sh" 0 PORT "dunelegacy" ""

save with control+x y and exit

make the file executable:

chmod +x dunelegacy.sh

to run it go to cd /home/pi/Retropie/roms/ports

type sudo sh dunelegacy.sh or sh dunelegacy.sh one of the two will work 100%

Darknior commented 6 years ago

Wesnoth ? https://www.wesnoth.org/ It is really a beautiful game for sure :) And i love these games on PC. But on PI i search more for Console / Arcade game type. That i can play on my TV with joystick ;)

Yes i already read your tuto but i don't understand why and how it can fix a flicker problem ?

symbios24 commented 6 years ago

wesnoth runs with a lot of flickering impossible to play normal,the game needs to be on the runcommand like all ports do to work without any problems just try the guide

Darknior commented 6 years ago

I believe you, this is not the concern, with my next game I would try, it's just that I would like to understand what is the problem?

symbios24 commented 6 years ago

Can you tell me how you installed/compilled dunelegacy to do it my self

Darknior commented 6 years ago

I write you all in message 6 and 9 to fix the file missing. Nothing more to do.

Polygaryd commented 3 years ago

what i say is i have corrected the flickering if you follow my method you wont have flickering. wesnoth had flickering and i fix it

Just try it with dune:

create a folder in opt\retropie\configs\ports\

with name dunelegacy

create inside the folder a file with name emulators.cfg

open the file with sudo nano emulators.cfg

type inside:

dunelegacy= "xinit /usr/games/dunelegacy" default = "dunelegacy"

save with control+x y and exit

now create a file dunelegacy.sh in home\pi\RetroPie\roms\ports\

open the file with nano editor:

sudo nano dunelegacy.sh

inside write:

!/bin/bash

"/opt/retropie/supplementary/runcommand/runcommand.sh" 0 PORT "dunelegacy" ""

save with control+x y and exit

make the file executable:

chmod +x dunelegacy.sh

to run it go to cd /home/pi/Retropie/roms/ports

type sudo sh dunelegacy.sh or sh dunelegacy.sh one of the two will work 100%

To make it run from emulationstation under the ports menu you have to change the emulators.cfg file in opt/retropie/config/ports/dunelegacy to be dunelegacy= "sudo xinit /opt/retropie/ports/dunelegacy/dunelegacy" since you cannot type any commands from emulationstation.

Also the dunelegacy.sh file needs underscores on either side of the word PORT with a space between 0 and the underscore as well as a space between the underscore and "dunelegacy" but no spaces between the underscores and the word port ex.

!/bin/bash

"/opt/retropie/supplementary/runcommand/runcommand.sh" 0 PORT "dunelegacy" ""

for some reason I cannot ype it exactly as its supposed to be and have it come out correct on this website, it just italicizes the word port instead of having the underscores on both sides with no spaces. just take a look at another sh file in the /home/pi/retropie/roms/ports folder on the pi and youll see what I mean.

Why must you run this as root or xinit wont start? I've tried it from terminal also and xinit wont start at all without typing sudo in front of it. It seems the file /dev/tty0 wont load and gives a permission denied error hence why you must use sudo when running xinit. Does anyone know why this is happening and yet doesnt happen for lxde also run directly from the ports menu in emulstionstation? Ive checked the permissions on the dunelegacy.sh and lxde.sh in /home/pi/retropie/roms/ports and the emulators.cfg files in /opt/retropie/configs/ports. I've checked permissions on the executable files in /opt/retropie/ports. everything looks the same yet lxde will start without sudo and xinit wont. any help would be appreciated

Polygaryd commented 3 years ago

xserver has been updated some time in 2020 and now requires root to run. so you have to install legacy xserver for other users such as PI on a raspberry pi to run it.

sudo apt-get install xserver-xorg-legacy

Installing the legacy xinit package above did start the dunelegacy without the use of sudo BUT there is no sound. I immediately exit and run xinit with sudo and I get sound again. So its getting there. Not sure how to get it fully functional though.