Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics

JP LeBreton

A member registered Nov 30, 2013 · View creator page →

Creator of

Recent community posts

I can't reproduce this on my Arch-based system. That warning at the end there shouldn't have anything to do with file saving or exporting, but I did fix it recently, as well as changing how the desktop resolution is detected on Linux so that it doesn't launch (since a recent SDL2 update, maybe?) as a tiny 128x128 window in this commit a few days ago:

If you're running from source you should be able to download the version of there on the code repo and just replace your local file with it. But like I said, I'm guessing those fixes are unrelated to the problem you're seeing.

Two questions that might be relevant:

  1. Does your home directory have a Documents/ folder?
  2. What distro are you running?

Okay, so it's a level from the expansion. Do you know the name of the level or area? That would help me narrow down where to look for it.

The doom_complete.pk3 file WadSmoosh generates has an IWADINFO lump in it, that is what makes GZDoom treat it as an IWAD. There is zero byte-level difference between a version of the file WadSmoosh outputs with a .PK3 extension and an .IPK3 extension. Rename the file if you'd like it to have that extension.

That is the project's source code repository - it's hosted using the Mercurial version control system. If you just want to use WadSmoosh, you should download it from here on Even if you're just looking to modify the code for your own purposes, the code is included with the itch download. The only reason you'd want to access the mercurial repo is if you want to create your own fork of the code.

Your web browser might be refusing to download the ZIP files because my website doesn't use HTTPS. There is no executable code in the ZIPs I link there so the security risk is overstated - you can tell your browser to make an exception just this one time.

Those are the medkit etc sprites from the "BFG Edition". If you want the original red cross medkits, use the original (pre-BFG Edition) WADs. If you want the newer green cross ones, use the WADs from the Unity ports. The files are otherwise the same, they just made those changes for legal reasons (IIRC the International Red Cross organization is strict about people using their symbol)

The supported WADs are mentioned everywhere, including the readme:

Is there a particular file of yours it's not recognizing?

The only difference between a PK3 and an IPK3 I'm aware of is the file extension, so try just renaming the file.

I'm not sure what specific MIDI packs you mean, but further down in this thread I did put together an unofficial, unsupported version of a few of them (for the things WadSmoosh already supports; I don't plan to add any more or do any further work in this direction):

I can confirm this on my system, and in fact all Doom 2 sprites (monsters, archvile fire, super shotgun pickup etc) are invisible. I am baffled as to what would have changed in GZDoom 4.6 to have caused this. I'll investigate.

Would you mind posting your log file from a session where this happens? From the command line, something like:

gzdoom.exe > gzdoom.log

You can post the contents of that log file to something like pastebin. Then I could see what is being loaded and in what order.

Hmm, I don't think so. I'll add that to the feature wishlist.

If you save a file to the normal location and then move it somewhere with your file manager, and then open it from that location, you should be able to work with it as normal.

The Grab tool doesn't modify the art when you click with it, it just sets the Paint tool's current character, foreground color, and background color to that of the tile you click on. You can get the same effect by having the Paint tool active and simply right-clicking on a tile; the Grab tool is included in the Tool menu more for completeness than anything.

I played through the game within the past year without encountering any progression issues... is there a specific encounter where you're seeing this happen?

It's a map from Sigil 2; once the full Sigil 2 is released (ETA unknown) I'll make a call on whether it gets  to be its own episode in WadSmoosh. Nothing until then.

(2 edits)

Just curious, what version of macOS are you running? Macs ship with an increasing ancient version of Python and I'm guessing the error is due to that.

If you don't mind getting your hands a little dirty, you could try this:

1. Open in a text editor.

2. Search for the line that reads:

input_func = raw_input if sys.version_info.major < 3 else input

3. Replace it with:

input_func = input

4. Then try running wadsmoosh again.

Let me know if that works or not. I don't have easy access to such a system.

The Master Levels are 20 separate WAD files, not one - starting alphabetically with ATTACK.WAD. If your Master Levels WAD is a single file, that's probably a version that was compiled by some or other unofficial/pirated release, and isn't supported by WadSmoosh.

What do you mean by level 2 of Doom - E1M2? The time-delayed door reopen in E1M6? Something else? In vanilla Doom maps the only things that open when monsters die are special monster-levelnum combinations like the Hell Barons in E1M8, and the Mancubi and Arachnotrons in Doom 2 MAP07. Mr. Friendly should handle all those just fine, as it marks every monster as dead from the start (even though they're not really).

If you find a specific spot in a specific map where a door should be opening but isn't, let me know and I'll look into it.

Is there a listing of every single command in one place? Or a way to search all of them? Where would I look to find focus_object in the docs for example?

This doesn't cover everything, but Playscii's documentation folder includes docs auto-generated from its own source code, which can also be found online here:

However it looks like Camera isn't one of the classes I marked for doc generation for this process. If you're wondering about properties like Camera.focus_object, I would say get the project's code by cloning the repo (unless that's already what you did to get Playscii running, ie you're not running the Windows build) so you can search the code and see where all something is referenced. For example, it looks like Camera.focus_object is mainly used in Camera.update to set the camera's position. If you wanted to do custom logic, I'd say leave the camera's focus_object as None and have some other code elsewhere that drives its position every frame, eg from one of your object's update() functions.

Main question is: Do I need an instance? for the world, camera, etc., and many other things, and if so how? sorry for noob questions.

GameWorld and Camera are singletons that are intended to live firmly in the "engine" layer, you shouldn't need to subclass either. Though I'll admit now (7 years since I made some of these architectural decisions) that a Camera could arguably be something you create several classes of to drive different behaviors.

I am trying to use a Character to represent player objects instead so I can control multiple objects. Or should I use multiple Player objects?

There are probably several places in the game mode code that assume a single player character, I have no idea how difficult it would be to add support for multiple players.

How can I attach multiple separate types of hitbox to an actor?  I want to use hitboxes to represent ranges like detection, fields, or ranges for various actions, so a single actor might have several distinct hitboxes.

GameObjectAttachment was made for things like shadows and effects, so there's probably something about it that doesn't behave well if you try to make it collide with stuff. I would say just make a GameObject subclass, sync its position with the player's (or whatever it's attached to) every update, and then do your custom logic in its started_overlapping() function.

But yeah I would say your main source of truth is going to be the code, and the (hopefully adequate) comments I left in it when I wrote it. Secondary to that, the documentation (included and on the website, same docs) I wrote not too long after writing the code. And tertiarily, me in 2022 when my memory's faded a bit and my brain is occupied with other projects.

Good luck! You're not the first person to make a game with Playscii's game mode but you're probably before the 10th person or so. I apologize in advance for anything that's non-obvious, broken, poorly designed, or annoying for any other reason. :]

Are these links broken for you?

No discord. The documentation is available from the Help menu as well as on the website:

That documentation covers both Art mode and Game mode. The latter includes writeups of how the example games work, which are included with the program and you can try out on your own.

Aside from one old image -> ASCII conversion howto video, I haven't done any tutorials. What sorts of things would you find a tutorial useful for?

Update: no actual progress on this, but here's an issue I have open with the PyInstaller project, which I use to create the Mac builds:

I will let people know in this thread when I get it resolved - no ETA on when that will be unfortunately.

See this post:

Sure thing! Feel free to modify that data I posted however you like to make it work optimally.

This is a really cool character set! I made a kitchen-sink.char file to go alongside the PNG for use with Playscii:

// "Kitchen Sink" by Retroshark and Polyducks
// (characters 0 and 33 are swapped to keep index 0 blank)
16, 16

Thanks for following up, I'm glad it's working in at least some form. As far as I know Windows Defender doesn't use any ML for virus detection, it relies on signature database files the way most AV programs have for years. But the UI around when it has and hasn't flagged something has always been a bit opaque and not predictable from system to system.

(For anyone else coming across this comment, I didn't end up doing the official 9.18 release then obviously. Still gotta work out some stuff with the mac build.)

The level ordering used does matter, as the mapinfo.txt in the mod expects the retail maps to be named a certain way. As it says in the readme, it assumes the default "Xaser ordering" is what's used. You'll probably get the wrong maps if you use the PSN order.

Does the 25th Anniversary pack just add new music? If so it would be possible to hack in those tracks by editing the mod's mapinfo.txt to point to those new tracks.

The selection skull not being visible in 4:3 seems like it should be a GZDoom bug, ie a long episode name should never cause that. I'll inquire on the ZDoom forums.

Maybe try checking your Windows Defender threat detection history and see if it's preventing or quarantining something the program needs? I'm pretty sure 9.17.1b should be in the clear detection-wise, but sometimes when Defender snipes a program it thinks is bad, it results in weird errors. That's a not-quite-wild guess though.

I'm actually going to release 9.18 tomorrow, which is built with a totally different version of Python, so you could try that:

(windows might complain that you're downloading a file from a non-HTTPS site)

as for the Master Levels my sha256sums match the ones on this page:

(1 edit)

Here are the sha1sums of my source wads. I'm 99% sure these are all just the totally stock last-known-good DOS versions you'd find on Steam or GoG before the Unity port overhaul:

7ec7652fcfce8ddc6e801839291f0e28ef1d5ae7  doom2.wad
9b07b02ab3c275a6a7570c3f73cc20d63a0e3833  doom.wad
3451288383fb16e196f273d9f85d58c1fda97bf4  nerve.wad
90361e2a538d2388506657252ae41aceeb1ba360  plutonia.wad
e2efdf379e1383c4e15c03de89063361897cd459  sigil.wad
9fbc66aedef7fe3bae0986cdb9323d2b8db4c9d3  tnt.wad

That "failed to execute script" error is odd, because according to your log Playscii is running, those messages are printed by the program's initialization.

How exactly are you launching Playscii? Are you double clicking playscii.exe, running the exe from the command line, launching it from a shortcut, launching it from the client app, or something else?

Good call, I'll try to get a note up about that soon.

Hmm, I've never seen that before. My first guess would be a GPU/driver issue, what kind of GPU are you using? (Nvidia, AMD, or Intel?)

Is the image file in a protected system location? Try moving it to a directory where you have full read/write privileges, like your Documents dir.

Which format is the bitmap image in? JPG and PNG are the most widely supported ones.

Apologies, I build and test the Mac version on an old 2013 MacBook that's still on like El Capitan or something, so my ability to test different setups is limited.

This person forked Playscii on github at some point and doesn't seem to have made any major changes other than making sure it builds on their system, so you might want to try that version:

You need to recreate the view pictured in the image. If you're already at the location, try moving your view so that the framing is more or less the same as in the image. You should see some glitter FX and hear a sound as it starts to verify that you're in the right place.

(4 edits)

Hey, thanks for the donation. Those two things you asked for sounded like they'd be easy to do as PK3 mods, so I decided to see if they were and threw them together:

Load the two PK3s in these ZIPs as regular mods atop WadSmoosh and you should hear all the MIDI packs in their intended episodes, and you'll go to E1M4b after E1M4 and E1M8b after E1M8. You can add them to your "autoloads" list in your gzdoom.ini file if you want them to be loaded every time you launch GZDoom.

I didn't get permission to distribute the MIDI files in those, but I included the readmes in the ZIP, as is standard for most stuff on the idgames archive. If anyone besides you expresses interest in this, I'll actually secure that permission officially.

You can toggle off the Paint tool affecting different tile attributes like character and fg/bg color by clicking those labels in the bottom bar, so that it just affects the transform (xform). Set that to Flip X or whatever you like and painting will only flip the characters with no changes to character or color.

I'm seeing the same issue from the desktop app on Linux. I can't tell exactly what the issue is on your (the developer's) end but for my stuff on itch, I check the appropriate platform icon boxes for each build I offer. Try checking Windows for the builds and then Linux for the other one.