Thimbleweed Park Podcast #57

by Ron Gilbert
Jul 24, 2016

Capping a very busy week on Team Thimbleweed, it's a podcast.

You can also subscribe to the Thimbleweed Park Podcast RSS feed if that's 'your thing'.

You can also get the podcast directly from iTunes.

- Ron



Kai - Jul 24, 2016 at 13:04
What I wouldn't give for a playable demo with just the first 3 or 4 rooms!

Mattias Cedervall - Jul 24, 2016 at 16:36
No direction? How about one direction? :P

Laihanen - Jul 24, 2016 at 19:00
So I just made Thimbleweed Park theme from Youtube music my ringtone. Am I fan or drunk? (A: both)

Zak Phoenix McKracken - Jul 25, 2016 at 04:53
I'm imaging how cool will be this game, because of the little particulars it will have.
If the programmed duration is about 30 hours, I believe it will take more and more hours to complete, because I'll stay idle to see eyes rolling, toe tapping, special idle animations... not to mention all the surrounding effects.
You guys of TP Team should receive a Nobel Prize on December 2017, for Literature!

Big Red Button - Jul 25, 2016 at 05:42
I'm glad to hear about the big red button. :)

Big Red Button - Jul 25, 2016 at 08:49
The underscan/overscan issue reminds me of my Raspberry Pi. After you've installed Raspbian (or RetroPie, which is based on that), your screen has a black border. So, you first need to uncomment the disable_overscan entry in the config.txt file.

By the way, ScummVM is not able to scale the screen steplessly. I hope that they will improve this, in order to provide an uncompromising full screen experience on any modern display.

Nor Treblig - Jul 25, 2016 at 18:04
Steplessly? I think it can already do what you want, although an "uncompromising full screen experience" is not really possible unless with a very high screen resolution or an exact multiple of the game's original resolution.

With ScummVM you have two possibilities:
- You can either use a filter with 1x, 2x or 3x scaling and then use the display adapter / monitor features to upscale to the display's native resolution (with varying results) or having no upscaling with black borders around (the latter one with perfectly sized pixels).

- Or you can use OpenGL mode which uses the native resolution of the display and then upscales the image with appropriate aspect ratio (+ black borders on two sides if necessary).
Note that this also means (using nearest neighbour) that pixels will have different sizes! You can notice this even with low resolution games, e.g. 320x200 -> 1920x1080 (but only if you really look out for it, so playing the game is not really a problem).

Big Red Button - Jul 26, 2016 at 05:30
2x/3x scaling is currently the way how I do it on my Raspberry Pi. Of course, as you wrote, it doesn't suffice to avoid black edges on my Full HD monitor.
When I tried OpenGL a few months ago, the system became extremely slow. But, I just read that ScummVM 1.7 features some improvements in terms of the GUI and OpenGL. I'll try the latest version next week. Thank you for your suggestion! :)

Nor Treblig - Jul 26, 2016 at 12:00
I don't know when this was changed but older version had three OpenGL options and the latest one has only two: one with linear filtering and the other one without (I was talking about the latest version).
You can also use Ctrl+Alt+F to switch between those filtering modes in-game. Try it and make your eyes bleed.

Big Red Button - Jul 27, 2016 at 06:25
You're right. OpenGL now works fine. And the pixels are as sharp as Razor now. ;)

Gffp - Jul 27, 2016 at 07:46
Yeah, in the latest ScummVM release the openGL feature works great! It rebuilds the pixels in the native screen resolution. Never experimented on a lcd 15" laptop screen a 1600x900 native resolution with such a sharp full screen view of the original pixels (Indy 3). Better than my old tv 11" connected to my Amiga 500 (1993?).

Zuckerberg - Jul 25, 2016 at 09:21
Great podcast again. Thanks! Although I'd like Gary to remark more often that he's been doing basically the same as last week aka dat broken record ting! LOL

@Gffp +1 for the gang!

Zak Phoenix McKracken - Jul 25, 2016 at 09:24
Eheh, and David is the Bug-Fix-Man, as usual!

Zak Phoenix McKracken - Jul 25, 2016 at 11:05
Ron Gilbert Talks Thimbleweed Park, "Monkey Island 3a", and Pokémon Go
Interview by Game Informer
https://www.youtube.com/watch?v=voJvtZ3jnL4

Zombocast - Jul 25, 2016 at 21:29
Thanks Zak, that was a really good interview.

I could not imagine how hard it was for Ron to stay transparent talking about
Disney, Double Fine, Lucas Arts, Humongous Entertainment.

We need to get Ron drunk one day and have him Skype with the backers.
Maybe a Thimbleweed park release party

Zak Phoenix McKracken - Jul 26, 2016 at 02:46
"In vino veritas" , latin expression that means "The truth is in the wine" :-)

Alfred - Jul 25, 2016 at 11:48
The "safe area" discussion makes me sad that not everyone makes sure their screens are calibrated. I do see more and more video games these days begin with "adjust your screen size / brightness" title cards...

Ron Gilbert - Jul 25, 2016 at 11:57
Not everyone can. Some cheaper TV don't allow you to adjust the screens to eliminate the safe area. We found this is some hotel TVs when were were doing demos.

Bogdan Barbu - Jul 26, 2016 at 10:34
Why pull the UI in when you can scale the whole screen by a little bit instead? That way none of the art or potentially important things the player can interact with will be cropped.

Ron Gilbert - Jul 26, 2016 at 11:16
Because then you're scaling art and pixels can get wonky. Not a huge issues at 1080, but it's very noticeable at 720.  Haven't made any final decisions yet, it's not something we've looked in depth..

Zak Phoenix McKracken - Jul 26, 2016 at 11:28
...you already know how it's going to end...

[ Option #127 : Scaling pixels to fit screen dimensions ]

Big Red Button - Jul 26, 2016 at 12:58
I think, you should decide on this depending on the amount of work. 720p is already getting obsolete, seeing the variety of UHD devices. To my knowledge, you might have already implemented a way to scale the whole screen, in order to support any native screen resolution. So, this might be easier to do than making the GUI scalable separately. By the way, the pixel purists mode may be affected, if only the GUI was resized.

Ron Gilbert - Jul 26, 2016 at 13:05
Getting obsolete is not the same as being obsolete. We still need to support it and it still needs to look good.  This whole issue is "low priority", so when I really start to think about it, a better solution might present itself, for now, I just need a kludge to make it work when we're doing demos and the TV won't adjust.

longuist - Jul 26, 2016 at 15:44
I can sense garbled pixels even in fullhd, especially on a big screen.

Bogdan Barbu - Jul 28, 2016 at 03:23
Well, to get around the "important stuff cropped" problem, you might just reuse whatever solution you were going to adopt on mobile.

Nor Treblig - Jul 25, 2016 at 17:41
I don't use TVs (anymore) so that there is a safe area issue with modern TVs was new to me.

But having correct colour and brightness settings is and was always hard...
I think it's not that bad having such brightness adjustment in games so they can be played like they meant to be.
I remember this even from older games, e.g. Riven had this.

Big Red Button - Jul 26, 2016 at 05:58
I hate cheap TVs, speaking from my own experience. I'll never buy one again. I have an old LCD TV with a non-HD native resolution, so that any media need to get interpolated. It doesn't even support its native resolution when I connect a PC via any connector, because this cheap TV is not designed to act as a monitor, even though there is actually a computer display built into it. Therefore, there is no way to get a non-interpolated picture on this cheap TV. And, of course, it has a "safe area" as well.

Nor Treblig - Jul 27, 2016 at 15:44
I have a Samsung TV/Monitor: When I use the DVI input it works perfectly as monitor. But using HDMI input it does all that filtering nonsense and it cannot be turned off...

Zombocast - Jul 25, 2016 at 20:42
Ron Catch 'em,  http://i.imgur.com/T18nzAV.png  

Ron wants be the very best, like no developer ever was.
To catch bugs is his real test, to explain them is his cause!

He will travel across the land, conventions far and wide.
Each presentation to understand, the programming that's inside!
-Parkémon!

Zombocast - Jul 25, 2016 at 20:44
I know its a re-post. But everyone loves Pokemon

Zak Phoenix McKracken - Jul 26, 2016 at 04:06
I'm an exception!

Mattias Cedervall - Jul 27, 2016 at 08:02
No, I don't!

longuist - Jul 27, 2016 at 08:28
I'm *undefined* regarding that matter.
But i love Parkémon for sure!

Ema - Jul 27, 2016 at 14:10
I have to admit I know very little about pokemons. But I know that My whole skin hitches every time I see one.

Nor Treblig - Jul 27, 2016 at 15:42
It's funny :-)

But still: all this Pokeaman stuff is for babies!! (just ask Miller)

Schala - Jul 31, 2016 at 04:03
The "specks of dust" thing really made me crack up. Though to be honest, I'm not sure if Ron's joking or if they really will be in the game. ;)

Schala - Aug 01, 2016 at 21:15
Haha, nice! Now I must look for them when the game comes out...

Zak Phoenix McKracken - Aug 02, 2016 at 04:37
Eheh really, it was a "backer request of the year", as Robert Megone wrote!

Brian Small - Aug 17, 2016 at 12:37
When listening to this podcast, I had a couple of thoughts.

Perhaps you could embed some checks in the graphics engine code, or the Testertron3000, which would notice when a character interacted with something outside the "safe area" and issue an error, as a way to help automate the checking that the safe area is really safe.

Also, I got to thinking about the specks of dust.  How will you prevent the case where the dust is essentially "invisible" because it lies on a graphics pixel of the same color?  Do you just use the inverse of the color it's placed on, or some other algorithm to make sure it's visible?