Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

Hi, I'm just wondering whether you'd consider it possible to run Playscii on ChromeOS' Linux terminal; or, specifically, ChromeOS v116.0.5845.168, and Debian Linux 11.0 (Bullseye). Because, apart from my PC, that's the platform it'd be fun for me to use it on.

I've downloaded your Linux ZIP file and made substantial progress in implementing it, but have encountered the following error, outputted to the Linux terminal: 

"OpenGL.error.Error: Attempt to retrieve context when no valid context"

Also, I'm actually inept with this sort of thing, so it's my assumption that in order to use Playscii, I've got to run the "playscii.py" file, because attempting to run which has been the cause of this error.

Thank you!

I've never used ChromeOS and can't offer any support for it. That error message suggests that Playscii failed to create an OpenGL draw context, which is the most basic initialization step after the window itself is created. I don't have a clear understanding of what the OpenGL/driver environment is like in ChromeOS and thus don't know why it would fail. If you're running "python playscii.py" from a terminal (which would be the correct way to run from source), are you seeing any logged lines prior to that error? Playscii logs every step of its initialization and it would be good to know how what it reports up to that point.

Thank you for replying so quickly! Here's the full terminal log, following my inputting of "python3 playscii.py":

UserWarning: Using SDL2 binaries from pysdl2-dll 2.28.2

Playscii v9.17.1

Loading config from /home/spak0002/.config/Playscii/playscii.cfg...

Config loaded.

Detecting hardware...

  CPU: x86_64

  GPU: Mesa/X.org - virgl (Mesa DRI Intel(R) UHD Graphics 600 (GLK 2))

  OpenGL detected: 3.1 Mesa 21.2.6

  GLSL detected: 1.40

  Vertex Array Object support found.

  Maximum supported texture size: 16384 x 16384

  Detected screen resolution: 128 x 128, window: 102 x 102

Detecting software environment...

  OS: Linux-5.15.117-19680-g54e910f94133-x86_64-with-glibc2.31

  Python: 3.9.2 (default, Feb 28 2021, 17:03:44)  [GCC 10.2.1 20210110] (64bit)

  Modules: PySDL2 0.9.16, numpy 1.25.2, PyOpenGL 3.1.7, appdirs 1.4.4, PIL 9.5.0

  SDL: 2.28.0 SDL-release-2.28.2-0-g031912c4b, SDLmixer: 2.6.1

/home/spak0002/Organised/playscii/playscii.py:429: DeprecationWarning: ANTIALIAS is deprecated and will be removed in Pillow 10 (2023-07-01). Use LANCZOS or Resampling.LANCZOS instead.

  img = img.resize((32, 32), Image.ANTIALIAS)

Traceback (most recent call last):

  File "/home/spak0002/Organised/playscii/playscii.py", line 1170, in <module>

    app = Application(config_dir, documents_dir, cache_dir, logger,

  File "/home/spak0002/Organised/playscii/playscii.py", line 315, in __init__

    self.gw = GameWorld(self)

  File "/home/spak0002/Organised/playscii/game_world.py", line 118, in __init__

    self.grid = GameGrid(self.app)

  File "/home/spak0002/Organised/playscii/renderable_line.py", line 60, in __init__

    GL.glVertexAttribPointer(self.pos_attrib, self.vert_items,

  File "/home/spak0002/.local/lib/python3.9/site-packages/OpenGL/latebind.py", line 63, in __call__

    return self.wrapperFunction( self.baseFunction, *args, **named )

  File "/home/spak0002/.local/lib/python3.9/site-packages/OpenGL/GL/VERSION/GL_2_0.py", line 469, in glVertexAttribPointer

    contextdata.setValue( key, array )

  File "/home/spak0002/.local/lib/python3.9/site-packages/OpenGL/contextdata.py", line 58, in setValue

    context = getContext( context )

  File "/home/spak0002/.local/lib/python3.9/site-packages/OpenGL/contextdata.py", line 40, in getContext

    raise error.Error(

OpenGL.error.Error: Attempt to retrieve context when no valid context

Hmm, I'm not sure what to make of that error. So this crash occurs as you're launching the program? It looks like you're meeting the minimum required version #s for OpenGL and GLSL support. The only thing odd from that log output is your "detected screen resolution" of 128x128 and window size of 102x102 - Playscii tries to enforce a minimum window size of 320x240, as various things get weird below that. I'm not sure that that's the cause of this crash though. Without a ChromeOS device handy I'm really not sure how to go about troubleshooting it. I searched for ChromeOS (and Chrome, and "virgl") on the PyOpenGL mailing list to see if anyone had ever confirmed it even ran on that system, and didn't find anything... but PyOpenGL is also an old and very quiet project at this point.

Sorry I can't do more to help! If you're an experienced Python programmer you might try running some of the PySDL2 (the library that creates the window, handles input, and does other stuff) and PyOpenGL (the library that issues commands to the OpenGL context) examples (or write your own if they don't exist), just to see if those respective modules can even run on your hardware.

(1 edit)

Sure, I’ll try running some of those, and do some Googling in that respect, as well.

But, if that isn’t fruitful, I’m just gonna have to settle for using Playscii exclusively on my PC, is my feeling. Which is perfectly fine, of course; Playscii’s super interesting, and having it only on one device isn’t going to remotely discourage me from using it.

Thank you for the help!

Deleted 1 year ago
Deleted 1 year ago