Failed to run the games listed in Opensuse game store.

I am using opensuse 11.4 KDE. Recently I tried to install some games from openSUSE Game Store (like Ardentryst, Bomberclone etc.). I tryed to install them using yast. But after the installation is complete, I’m unable to run the games.

Steps I did,

  1. I installed the game using yast (say Ardentryst:- http://software.opensuse.org/ymp/games/openSUSE_Factory/ardentryst.ymp)
  2. No error message was shown after the installation.
  3. I can see the items in recently installed menu.
  4. If try to start it, the app doesn’t run.

You installed from Factory?

Post your repo list with

zypper lr -d

I just downloaded the ymp file from “http://software.opensuse.org/ymp/games/openSUSE_Factory/ardentryst.ymp” here. And downloaded it using yast. I didn’t check/uncheck any thing. just went with default procedure.

Give me some time, I will post the result of “zypper lr -d”.

The point is. You should ideally have chosen the 11.4 option rather than Factory.

You can look in the kde menu, via right click as if to edit the menu
Find the entry for the game and see what the command is to launch it, then use that in a terminal
Running the command in a terminal may reveal the problem with error output in the terminal

I’m sorry for giving wrong info, actually I did download it from 11.4 repo.

Running the command in a terminal may reveal the problem with error output in the terminal

I got some error while running it from terminal


linux-rahul:/home/rahul # ardentryst 
RuntimeError: Bad magic number in .pyc file


It’s a python error
I should report it to the packager

I’m not really sure this is a problem with the game itself, I just tested it and it works.

The error reported means a simple a thing, your version of python is not the same that the game was built against, potential causes:

  1. You don’t have your system updated;
  2. You have the wrong repository installed;
  3. Your install of python isn’t reliable.

I’m pretty sure the game is working, I just tested it now. What’s the output of:

rpm -ql ardentryst
rpm -ql python

NM



rahul@linux-rahul:~> rpm -ql ardentryst
/usr/bin/ardentryst
/usr/share/applications/ardentryst.desktop
/usr/share/ardentryst
/usr/share/ardentryst/Conch.pyc
/usr/share/ardentryst/OPR.txt
/usr/share/ardentryst/ardentryst.pyc
/usr/share/ardentryst/controls.pyc
/usr/share/ardentryst/data.pyc
/usr/share/ardentryst/enemyai.pyc
/usr/share/ardentryst/fade.pyc
/usr/share/ardentryst/game.pyc
/usr/share/ardentryst/helpers.pyc
/usr/share/ardentryst/item.pyc
/usr/share/ardentryst/level_script.pyc
/usr/share/ardentryst/loading_screen.pyc
/usr/share/ardentryst/magic.pyc
/usr/share/ardentryst/mapping.pyc
/usr/share/ardentryst/play_level.pyc
/usr/share/ardentryst/tutorial.pyc
/usr/share/ardentryst/wordwrap.pyc
/usr/share/doc/packages/ardentryst
/usr/share/doc/packages/ardentryst/COPYING
/usr/share/doc/packages/ardentryst/README.txt
/usr/share/doc/packages/ardentryst/help.txt
/usr/share/pixmaps/ardentryst.png





rahul@linux-rahul:~> rpm -ql python
/etc/profile.d/python.csh
/etc/profile.d/python.sh
/etc/pythonstart
/usr/lib/python2.7
/usr/lib/python2.7/bsddb
/usr/lib/python2.7/bsddb/__init__.py
/usr/lib/python2.7/bsddb/__init__.pyc
/usr/lib/python2.7/bsddb/__init__.pyo
/usr/lib/python2.7/bsddb/db.py
/usr/lib/python2.7/bsddb/db.pyc
/usr/lib/python2.7/bsddb/db.pyo
/usr/lib/python2.7/bsddb/dbobj.py
/usr/lib/python2.7/bsddb/dbobj.pyc
/usr/lib/python2.7/bsddb/dbobj.pyo
/usr/lib/python2.7/bsddb/dbrecio.py
/usr/lib/python2.7/bsddb/dbrecio.pyc
/usr/lib/python2.7/bsddb/dbrecio.pyo
/usr/lib/python2.7/bsddb/dbshelve.py
/usr/lib/python2.7/bsddb/dbshelve.pyc
/usr/lib/python2.7/bsddb/dbshelve.pyo
/usr/lib/python2.7/bsddb/dbtables.py
/usr/lib/python2.7/bsddb/dbtables.pyc
/usr/lib/python2.7/bsddb/dbtables.pyo
/usr/lib/python2.7/bsddb/dbutils.py
/usr/lib/python2.7/bsddb/dbutils.pyc
/usr/lib/python2.7/bsddb/dbutils.pyo
/usr/lib/python2.7/bsddb/test
/usr/lib/python2.7/bsddb/test/__init__.py
/usr/lib/python2.7/bsddb/test/__init__.pyc
/usr/lib/python2.7/bsddb/test/__init__.pyo
/usr/lib/python2.7/bsddb/test/test_all.py
/usr/lib/python2.7/bsddb/test/test_all.pyc
/usr/lib/python2.7/bsddb/test/test_all.pyo
/usr/lib/python2.7/bsddb/test/test_associate.py
/usr/lib/python2.7/bsddb/test/test_associate.pyc
/usr/lib/python2.7/bsddb/test/test_associate.pyo
/usr/lib/python2.7/bsddb/test/test_basics.py
/usr/lib/python2.7/bsddb/test/test_basics.pyc
/usr/lib/python2.7/bsddb/test/test_basics.pyo
/usr/lib/python2.7/bsddb/test/test_compare.py
/usr/lib/python2.7/bsddb/test/test_compare.pyc
/usr/lib/python2.7/bsddb/test/test_compare.pyo
/usr/lib/python2.7/bsddb/test/test_compat.py
/usr/lib/python2.7/bsddb/test/test_compat.pyc
/usr/lib/python2.7/bsddb/test/test_compat.pyo
/usr/lib/python2.7/bsddb/test/test_cursor_pget_bug.py
/usr/lib/python2.7/bsddb/test/test_cursor_pget_bug.pyc
/usr/lib/python2.7/bsddb/test/test_cursor_pget_bug.pyo
/usr/lib/python2.7/bsddb/test/test_db.py
/usr/lib/python2.7/bsddb/test/test_db.pyc
/usr/lib/python2.7/bsddb/test/test_db.pyo
/usr/lib/python2.7/bsddb/test/test_dbenv.py
/usr/lib/python2.7/bsddb/test/test_dbenv.pyc
/usr/lib/python2.7/bsddb/test/test_dbenv.pyo
/usr/lib/python2.7/bsddb/test/test_dbobj.py
/usr/lib/python2.7/bsddb/test/test_dbobj.pyc
/usr/lib/python2.7/bsddb/test/test_dbobj.pyo
/usr/lib/python2.7/bsddb/test/test_dbshelve.py
/usr/lib/python2.7/bsddb/test/test_dbshelve.pyc
/usr/lib/python2.7/bsddb/test/test_dbshelve.pyo
/usr/lib/python2.7/bsddb/test/test_dbtables.py
/usr/lib/python2.7/bsddb/test/test_dbtables.pyc
/usr/lib/python2.7/bsddb/test/test_dbtables.pyo
/usr/lib/python2.7/bsddb/test/test_distributed_transactions.py
/usr/lib/python2.7/bsddb/test/test_distributed_transactions.pyc
/usr/lib/python2.7/bsddb/test/test_distributed_transactions.pyo
/usr/lib/python2.7/bsddb/test/test_early_close.py
/usr/lib/python2.7/bsddb/test/test_early_close.pyc
/usr/lib/python2.7/bsddb/test/test_early_close.pyo
/usr/lib/python2.7/bsddb/test/test_fileid.py
/usr/lib/python2.7/bsddb/test/test_fileid.pyc
/usr/lib/python2.7/bsddb/test/test_fileid.pyo
/usr/lib/python2.7/bsddb/test/test_get_none.py
/usr/lib/python2.7/bsddb/test/test_get_none.pyc
/usr/lib/python2.7/bsddb/test/test_get_none.pyo
/usr/lib/python2.7/bsddb/test/test_join.py
/usr/lib/python2.7/bsddb/test/test_join.pyc
/usr/lib/python2.7/bsddb/test/test_join.pyo
/usr/lib/python2.7/bsddb/test/test_lock.py
/usr/lib/python2.7/bsddb/test/test_lock.pyc
/usr/lib/python2.7/bsddb/test/test_lock.pyo
/usr/lib/python2.7/bsddb/test/test_misc.py
/usr/lib/python2.7/bsddb/test/test_misc.pyc
/usr/lib/python2.7/bsddb/test/test_misc.pyo
/usr/lib/python2.7/bsddb/test/test_pickle.py
/usr/lib/python2.7/bsddb/test/test_pickle.pyc
/usr/lib/python2.7/bsddb/test/test_pickle.pyo
/usr/lib/python2.7/bsddb/test/test_queue.py
/usr/lib/python2.7/bsddb/test/test_queue.pyc
/usr/lib/python2.7/bsddb/test/test_queue.pyo
/usr/lib/python2.7/bsddb/test/test_recno.py
/usr/lib/python2.7/bsddb/test/test_recno.pyc
/usr/lib/python2.7/bsddb/test/test_recno.pyo
/usr/lib/python2.7/bsddb/test/test_replication.py
/usr/lib/python2.7/bsddb/test/test_replication.pyc
/usr/lib/python2.7/bsddb/test/test_replication.pyo
/usr/lib/python2.7/bsddb/test/test_sequence.py
/usr/lib/python2.7/bsddb/test/test_sequence.pyc
/usr/lib/python2.7/bsddb/test/test_sequence.pyo
/usr/lib/python2.7/bsddb/test/test_thread.py
/usr/lib/python2.7/bsddb/test/test_thread.pyc
/usr/lib/python2.7/bsddb/test/test_thread.pyo
/usr/lib/python2.7/lib-dynload
/usr/lib/python2.7/lib-dynload/_bsddb.so
/usr/lib/python2.7/lib-dynload/_hashlib.so
/usr/lib/python2.7/lib-dynload/_sqlite3.so
/usr/lib/python2.7/lib-dynload/_ssl.so
/usr/lib/python2.7/lib-dynload/readline.so
/usr/lib/python2.7/sqlite3
/usr/lib/python2.7/sqlite3/__init__.py
/usr/lib/python2.7/sqlite3/__init__.pyc
/usr/lib/python2.7/sqlite3/__init__.pyo
/usr/lib/python2.7/sqlite3/dbapi2.py
/usr/lib/python2.7/sqlite3/dbapi2.pyc
/usr/lib/python2.7/sqlite3/dbapi2.pyo
/usr/lib/python2.7/sqlite3/dump.py
/usr/lib/python2.7/sqlite3/dump.pyc
/usr/lib/python2.7/sqlite3/dump.pyo
/usr/lib/python2.7/sqlite3/test
/usr/lib/python2.7/sqlite3/test/__init__.py
/usr/lib/python2.7/sqlite3/test/__init__.pyc
/usr/lib/python2.7/sqlite3/test/__init__.pyo
/usr/lib/python2.7/sqlite3/test/dbapi.py
/usr/lib/python2.7/sqlite3/test/dbapi.pyc
/usr/lib/python2.7/sqlite3/test/dbapi.pyo
/usr/lib/python2.7/sqlite3/test/dump.py
/usr/lib/python2.7/sqlite3/test/dump.pyc
/usr/lib/python2.7/sqlite3/test/dump.pyo
/usr/lib/python2.7/sqlite3/test/factory.py
/usr/lib/python2.7/sqlite3/test/factory.pyc
/usr/lib/python2.7/sqlite3/test/factory.pyo
/usr/lib/python2.7/sqlite3/test/hooks.py
/usr/lib/python2.7/sqlite3/test/hooks.pyc
/usr/lib/python2.7/sqlite3/test/hooks.pyo
/usr/lib/python2.7/sqlite3/test/py25tests.py
/usr/lib/python2.7/sqlite3/test/py25tests.pyc
/usr/lib/python2.7/sqlite3/test/py25tests.pyo
/usr/lib/python2.7/sqlite3/test/regression.py
/usr/lib/python2.7/sqlite3/test/regression.pyc
/usr/lib/python2.7/sqlite3/test/regression.pyo
/usr/lib/python2.7/sqlite3/test/transactions.py
/usr/lib/python2.7/sqlite3/test/transactions.pyc
/usr/lib/python2.7/sqlite3/test/transactions.pyo
/usr/lib/python2.7/sqlite3/test/types.py
/usr/lib/python2.7/sqlite3/test/types.pyc
/usr/lib/python2.7/sqlite3/test/types.pyo
/usr/lib/python2.7/sqlite3/test/userfunctions.py
/usr/lib/python2.7/sqlite3/test/userfunctions.pyc
/usr/lib/python2.7/sqlite3/test/userfunctions.pyo
/usr/lib/python2.7/ssl.py
/usr/share/doc/packages/python
/usr/share/doc/packages/python/LICENSE
/usr/share/doc/packages/python/README
/usr/share/doc/packages/python/README.SUSE
rahul@linux-rahul:~> 



I am already using python 2.7; the game recommend 2.4+ version. see the file


rahul@linux-rahul:/usr/share/doc/packages/ardentryst> cat README.txt
Run ardentryst.py with python (preferrably 2.4+) to play.
If you are in need of help, see help.txt!
Enjoy

My apologies, it’s: rpm -qi and not rpm -ql. Well, I don’t really care what the game recommends because it’s not as simple as it looks like, when the game is built it gets hardcoded pythons magic number, so it needs to run on the very exact version of python it was built against.


rahul@linux-rahul:~> rpm -qi ardentryst
Name        : ardentryst                   Relocations: (not relocatable)
Version     : 1.71                              Vendor: openSUSE Build Service
Release     : 1.1                           Build Date: Mon 03 Aug 2009 08:46:48 PM IST
Install Date: Thu 06 Oct 2011 06:35:56 PM IST      Build Host: build20
Group       : Amusements/Games/RPG          Source RPM: ardentryst-1.71-1.1.src.rpm
Size        : 466123                           License: GPLv3
Signature   : DSA/SHA1, Mon 03 Aug 2009 08:47:00 PM IST, Key ID 5fee281c53a2e3f5
URL         : http://jordan.trudgett.com/
Summary     : Ardentryst
Description :
Ardentryst is an action/RPG sidescoller, focused not just on fighting, but on story, and character development. Strategy as well as reflexes will be needed to overcome the game. The game is set in another world. It is somewhat a cross between Donkey Kong Country, Mario, Castlevania and Kingdom Hearts. Ardentryst is focused on a fantasy world. The player is guided through a storyline which he or her must act in and play a major role in keeping peace and order in Ardentryst. It features two playable characters and a variety of weapons, items, armour, monsters, and beautiful level scenery and graphics.

Authors:
--------
        Jordan Trudgett <jordan_trudgett@hotmail.com>
Distribution: games / SLE_11




rahul@linux-rahul:~> rpm -qi python
Name        : python                       Relocations: (not relocatable)
Version     : 2.7                               Vendor: openSUSE
Release     : 9.10.2                        Build Date: Sat 07 May 2011 01:08:40 AM IST
Install Date: Mon 04 Jul 2011 10:15:20 PM IST      Build Host: build33
Group       : Development/Languages/Python   Source RPM: python-2.7-9.10.2.src.rpm
Size        : 1301281                          License: MIT License (or similar)
Signature   : RSA/8, Sat 07 May 2011 01:09:36 AM IST, Key ID b88b2fd43dbdc284
Packager    : http://bugs.opensuse.org
URL         : http://www.python.org/
Summary     : Python Interpreter
Description :
Python is an interpreted, object-oriented programming language, and is
often compared to Tcl, Perl, Scheme, or Java.  You can find an overview
of Python in the documentation and tutorials included in the python-doc
(HTML) or python-doc-pdf (PDF) packages.

If you want to install third party modules using distutils, you need to
install python-devel package.



No, you didn’t.

Actually I downloaded the ymp file from this site: openSUSE Game Store.
I selected 11.4 version of the game. I rechecked it now also.
Can you post the correct link for the game.

This is the repo
Index of /repositories/games/openSUSE_11.4

Check your list with

zypper lr -d

It works fine now.
The problem was due to the wrong ymp file at openSUSE Game Store. The site is actually the opensuse game store; and many people will try to install from there because it support ‘1 click install’.
So someone please correct the file/link.

rahulcvv wrote:

>
> It works fine now.
> The problem was due to the wrong ymp file at ‘openSUSE Game Store’
> (http://gamestore.gk2.sk/). The site is actually the opensuse game
> store; and many people will try to install from there because it support
> ‘1 click install’.
> So someone please correct the file/link.
>
At the bottom of the gamestore page you find who made it with a link th his
homepage, you can find the email here http://stick.gk2.sk/me/ ($ cat
details.txt)


PC: oS 11.4 64 bit | Intel Core i7-2600@3.40GHz | KDE 4.6.0 | GeForce GT 420
| 16GB Ram
Eee PC 1201n: oS 11.4 64 bit | Intel Atom 330@1.60GHz | KDE 4.7.2 | nVidia
ION | 3GB Ram

There is nothing wrong with the ymp.

IMHO the most probably cause for all this is that rahulcvv had the games SLE_11 repo in his openSUSE_11.4 machine before trying to install the game. When he used the 1-Click the correct repo was added, but the rpm was installed from the wrong repo because of priorities/version numbers/whatever. But since he never posted the output of “zypper lr -d” we can’t know for sure.

There is a problem in the whole 1-Click system, sure. That’s not something new. It should install the RPM from the repo specified in the ymp file, but it is a problem in the system and not in the ymp file.