Comments

Log in with itch.io to leave a comment.

Viewing most recent comments 1 to 8 of 68 · Next page · Last page

Hi, i was having trouble running this from source (using Debian 11 "bullseye"). I have installed all of the relevant dependencies, but when i try to run "python3 playscii.py" it throws back this error,

Traceback (most recent call last):

  File "/home/USERNAME/playscii/playscii/playscii.py", line 25, in <module>

    import sdl2

ModuleNotFoundError: No module named 'sdl2'

I was wondering if you could possibly assist? Thank you for reading!

(+1)

Hm, if you have all the dependencies installed, see if you can run "import sdl2" from the python REPL environment (ie run python3 from the command line). Do you get the same error from there?

(1 edit)

i've now solved the issue [had to reinstall pysdl2 and pysdl2-dll, also installed pillow 9.5 (as opposed to 10.0) for the ANTIALIAS error i got.] but now when i run python3 playscii.py it throws back this 

File "/home/USERNAME/.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

(+1)

Depending on what type of GPU you have, there's a billion reasons the GL context creation could be failing. Does the log print anything before it hits that error? My code tries to output what it's doing as it goes but IIRC that's pretty early in the process.

  CPU: x86_64

  GPU: Mesa/X.org - virgl

  OpenGL detected: 3.1 Mesa 20.3.5

  GLSL detected: 1.40

  Vertex Array Object support found.

  Maximum supported texture size: 16384 x 16384

  Detected screen resolution: 1366 x 688, window: 1092 x 550

Detecting software environment...

  OS: Linux-5.10.114-16025-ge75506b9d98e-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.26.4, PyOpenGL 3.1.7, appdirs 1.4.4, PIL 9.5.0

  SDL: 2.28.0 SDL-release-2.30.0-0-g859844eae, SDLmixer: 2.6.1

/home/USERNAME/playscii/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/USERNAME/playscii/playscii/playscii.py", line 1170, in <module>

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

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

    self.gw = GameWorld(self)

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

    self.grid = GameGrid(self.app)

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

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

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

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

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

    contextdata.setValue( key, array )

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

    context = getContext( context )


hopes this helps! i really appreciate you assisting with all of this lol, thank you.

Wild guess, but is your desktop using X11 or Wayland? PyOpenGL is pretty ancient and creaky at this point, and I recall Wayland making it trickier in various ways for it to get a context it considered valid.

If you are indeed running Wayland, I'd say try to run from the latest Playscii source (last public commit was August 2022) as I did add a few things after 9.17.1 for working on newer Linux desktops.

(2 edits)

I have a bug where the screen looks like this. does someone know how to fix it?

Been messing around with this for a little bit and I'm absolutely loving it! Excellent work! :>
Although I do have to ask, is there a way to change the default Save folder location? I looked through the documentation and the config file and didn't see any way to change it..

Hm, looking at the source code it looks like the save dialog defaults to the user Documents/Playscii/ folder, but will change to whatever directory you last successfully saved something to, within the same session. Not the same as being able to set something that's persistent across sessions, but maybe that help? I'd have to think carefully about how to let users override some of the default paths it uses.

Sorry, I can't figure out how to make a clevercloud account for the following issue report. It keeps giving me an OAuth error of some kind.

Anyway, for some reason I can't get playscii to list files except for the folders art, artscripts, charsets, formats, games, palettes, screenshots, Documents, My Games, My Music, My Pictures, My Videos, and its own - Playscii. Also, any file it creates itself while I am using it seems to be visible, but not the pre-packaged psci files. This makes importing anything impossible.

I am running Microsoft Windows 11 Pro, Version: 10.0.22621 Build 22621 . My system is x64. If there's any other information you'd need, please let me know and I'll find it for you.

(1 edit) (+1)

This is almost certainly a permissions issue, eg which directories an application is allowed to access. I don't have a Windows 11 system to test on, but I wouldn't be surprised if they changed a bunch of stuff in the name of security.


Do you know of any other 3rd party applications, particularly open source ones with public bug trackers, that have had this kind of issue? If so I could refer to what they did and maybe that'd help us fix this issue.

No idea if it's open source, but I think I remember Your Only Move Is Hustle having adjacent issues at first - but that was made in godot, so the solution was probably something that doesn't really help. As a last ditch effort, I've tried running it as administrator but there was no change.

Actually, as I was writing this I realized that godot engine itself is open source and has public bug trackers... Maybe you could take a look at how it exports executables which mostly avoid being flagged?

(+1)

What do you mean by "being flagged"? My understanding is that permission issues aren't a result of some "malicious software" detection heuristic, just a set of rules that applications have to follow to be able to do things like access different parts of the file system. Not knowing anything about how those rules might have changed for Win11, I could be wrong but that's my guess as to why you can't get a file listing for certain directories on your system from within Playscii.

You probably understand that better than I would, yeah. I don't know much about permission architecture. Most of my experience in programming is in the aforementioned engine which handles this part for me, as well as some early-life python doodling. Do let me know if you figure this out, but I myself don't have the experience required to help fix the bug; I was just affected by it.

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 232 days ago
Deleted 232 days ago

Hi, I have a bit of a problem: for some reason I can't use left-click to interact with things. I need to hold down lmb and then move my mouse like a pixel to make the click actually count. My mouse works perfectly in everything else and right-click works fine. I haven't changed anything in the settings (at least I think so). If anyone knows how to fix this please tell me. I don't want to reinstall playscii, because I don't know if that will fix the problem. Thanks

Has this always happened? What OS are you running?

"binds.cfg" in your config dir is where the key bindings are defined, you could have a look at that file and see if anything looks out of the ordinary. i think the behavior of the mouse buttons might be hardcoded though.

Just found a fix: I just had to replace the binds.cfg (and maybe playscii.cfg) with the default ones. I think the reason that happened was because I was trying to run endless ladder climbing 2 and was messing around with the confing to try and make it work. Still thanks for replying!

Also, I wanted to ask: Is there a possibility of a better, standalone version of the playscii import feature? I'd love to see, or even make, something like that (with the custom palettes/colors from image and select a charset). But I have no idea how to code in anything :/

I've thought about this a lot over the years since it's such an obviously slow process, would lend itself extremely well to a multi-core and/or GPU accelerated approach, but it's never quite been clear how I'd pull it off - I'm not a particularly knowledgeable or powerful programmer in the directions that would make it easy to try those approaches. I'll let you know if I ever figure anything out.

Some of my old notes about it are on the playscii trello board, which I haven't touched in some time:

https://trello.com/b/BLQBXn5H/playscii

Hi! When I run playscii.py I get

"AttributeError: module 'PIL' has no attribute '__version__'". Is there any way to fix this?

What's the full output text when you try to run? Are you running from the command line? Which OS are you running from?

Hi there!
I love the stylised look you could get by using MRMOTEXT by Mrmo (https://mrmotarius.itch.io/mrmotext) and Playscii - I was wondering if there was any chance of porting the image-to-tile conversion to Unity, maybe as a postFX - as a paid asset?

I've barely scratched the surface of the program and I understand you may not have time for this - if so, could you please point me in the right direction to where in the source code you're doing the conversion? Thanks :)

I definitely don't have any time or energy for doing any Playscii support right now, but here's the code that does the image conversion:

https://heptapod.host/jp-lebreton/playscii/-/blob/branch/default/image_convert.p...

Viewing most recent comments 1 to 8 of 68 · Next page · Last page