Progress thread: Inherent Smile

Moderator: Moderators

User avatar
gauauu
Posts: 779
Joined: Sat Jan 09, 2016 9:21 pm
Location: Central Illinois, USA
Contact:

Re: Progress thread: Inherent Smile

Post by gauauu »

dougeff wrote:What, are we paying by the letter?

(as in newspaper advertisements)

Just explain it in a full sentence.

Press the A button at the right moment to dodge an attack, or to increase your attack.
I agree. Any of the other suggestions would still be too cryptic, and I wouldn't have guessed.
tepples
Posts: 22705
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: Progress thread: Inherent Smile

Post by tepples »

dougeff wrote:What, are we paying by the letter?

(as in newspaper advertisements)
Yes. An Action 53 description is 16 lines of 128 pixels, and the font fits about 28 characters into 128 pixels. I had to really squeeze the instructions for RHDE: Furniture Fight in volume 2 because it has 3 phases each with its own controls. Fortunately, I don't have to do quite as much squeezing here:

Code: Select all

Dungeon-crawling 3d RPG.
Find your way out and pick
up glorious treasure.

+ Move
Ⓐ Use, attack,
   timed hit and defense
Start: Inventory

Graphics by FrankenGraphics
Music by Olli Suoranta
User avatar
gauauu
Posts: 779
Joined: Sat Jan 09, 2016 9:21 pm
Location: Central Illinois, USA
Contact:

Re: Progress thread: Inherent Smile

Post by gauauu »

tepples wrote:Ⓐ Use, attack,
timed hit and defense
That describes it well enough that players would have a chance figuring it out.
User avatar
FrankenGraphics
Formerly WheelInventor
Posts: 2064
Joined: Thu Apr 14, 2016 2:55 am
Location: Gothenburg, Sweden
Contact:

Re: Progress thread: Inherent Smile

Post by FrankenGraphics »

That description looks very good to me at least. :)

(I'd be okay with skipping credits if needed and if Olli thinks so too, since it's on the title screen anyway).
calima
Posts: 1745
Joined: Tue Oct 06, 2015 10:16 am

Re: Progress thread: Inherent Smile

Post by calima »

tokumaru wrote:I think that the FOV is fine, it's the vertical scaling that's off. Walls are too tall when you're far away and too short when you're close. Even if you touch your node against a wall, its entire height matches that of the viewport. You shouldn't be able to see the entire wall if you got your nose up against it. Anyway, the disparity between vertical and horizontal scaling is what's distorting things... The horizontal scaling is correct because the rays are spreading properly and hitting the correct blocks, but passages look narrow from afar because the walls are way too tall. How are you calculating the height of the walls? What I do is divide a constant by the distance from the player to the wall. I try to calculate the value of the constant so that blocks look square when faced straight on, but I end up tweaking it a bit until it looks right to me. There's quite a bit of leeway due to the low horizontal resolution and the console's PAR.
I didn't like the official formula's results from a tutorial, and plain divisions looked bad in some way no matter what, so in the end I picked a linear formula going such that in front = full wall, right before clip distance = 1 unit tall wall. That looked best to me.

@dougeff
Part of the charm of dungeon crawlers is making your own maps and finding your way ;)
Spells in particular help a ton, and when you master the Paper Mario-style timing it becomes quite easy.

edit: Has anyone tried it on hw? I wonder if the vblank issue causes any visible trouble there. I have a slightly more optimized version, it doesn't fit entirely in vblank, but with that only the final scroll reset is in render lines, no longer the final writes. If there's visible issues on hw, that should help mitigate it somewhat.
User avatar
gauauu
Posts: 779
Joined: Sat Jan 09, 2016 9:21 pm
Location: Central Illinois, USA
Contact:

Re: Progress thread: Inherent Smile

Post by gauauu »

calima wrote:
edit: Has anyone tried it on hw? I wonder if the vblank issue causes any visible trouble there. I have a slightly more optimized version, it doesn't fit entirely in vblank, but with that only the final scroll reset is in render lines, no longer the final writes. If there's visible issues on hw, that should help mitigate it somewhat.
Yeah, it's a corrupt mess on hardware :( tried it last night on my powerpak.
User avatar
gauauu
Posts: 779
Joined: Sat Jan 09, 2016 9:21 pm
Location: Central Illinois, USA
Contact:

Re: Progress thread: Inherent Smile

Post by gauauu »

calima wrote: I didn't like the official formula's results from a tutorial, and plain divisions looked bad in some way no matter what, so in the end I picked a linear formula going such that in front = full wall, right before clip distance = 1 unit tall wall. That looked best to me.
I have no idea about the math and aspect ratio, but just as a player, I couldn't make heads or tails out of what I was seeing on the 3d view. It didn't seem to correspond to what the bottom map showed, so I ignored the top and just used the map.

Not trying to be critical though, I'm impressed with what you did.
User avatar
FrankenGraphics
Formerly WheelInventor
Posts: 2064
Joined: Thu Apr 14, 2016 2:55 am
Location: Gothenburg, Sweden
Contact:

Re: Progress thread: Inherent Smile

Post by FrankenGraphics »

There's a more subliminal, psychological effect that adds to the feeling of distance at work, which is the diagonal lines from the corners of the letterbox going outwards. Rather than having the player "zoom in" their vision on the letter box, it conveys looking at a screen or picture from a distance, or as if looking through the view slit of a tank.

I'm positive i can change this scopic regime* (pretty close to an early renaissance one**) to one with a somewhat more acute presence*** (the subject-enhancing peeping hole effect baroque painters used a lot to coax viewers into emotional engamement), should we agree to put more time on it and if you want me to rework it. All while maintaining the size and aspect of the letterbox.


*Scopic regimes is a theoretical framework for the painting/sculpting/placing and analyzing of fine arts, but also theater, cinema, tv and digital media, as well as product placement in shops, and landscaping. It's how scope, perspective, framing and whatever set of "rules" the artist or compositor is using in order to break or fold a 3-dimensional sensation into a 2-dimensional plane or relatively point-fixed field of view in a real 3d environment, and how that informs the interaction between object-viewer. It could be applied to raycasting algorithms in itself (like the closest possible distance to walls like tokumaru mentioned), but i'm strictly talking about the letterbox and more importantly its frame here since that's more my field.. i know nothing about raycasting.

** Example: "View of an ideal city" by Piero de la Francesca in approx. 1470. View. The framing (ie what you don't see) + mathematical regularity, and the applied rules of perspective creates a sense of distance, coldness, often causing the viewer a sensation of being an objective deity watching with one eye and with a bodyless, emotional disconnect.
Which can be cool, but i don't think this is the best choice for a 3d game unless it is trying to conceptualize this mode of observing. (Maybe an art meets game type of thing with focus on classic achitecture could pull this off).

*** Example: "the bean eater" by Annibale Carracci, around 1585, an early trailblazer for breaking rainnesance conventions of order. Baroque painters would further develop this trend. The light, composition, the movement of forces and action captured, the rule breaking of perspectives and angles and the intimate framing all calls the viewer to precognitively feel interested in what's going on, become emotionally invested, and feel a bodily presence of self right next to the interface of the canvas. view.
User avatar
FrankenGraphics
Formerly WheelInventor
Posts: 2064
Joined: Thu Apr 14, 2016 2:55 am
Location: Gothenburg, Sweden
Contact:

Re: Progress thread: Inherent Smile

Post by FrankenGraphics »

Also!

Tokumaru, i want to express my sincerest thank you:s for holding my works in so high regard! It means a lot and motivates me to continue getting better.

As for the "grays and a few black lines" in that interface, i would agree it is very minimal and that the styles do clash, but i also think it is in place for me to acknowledge that calima had an idea behind it. I read it as a thematic extention of the maze being a point of perspective-oriented one. As calima expressed i wanted (and want to) to rework it (see my post above) into something else, but i see where it is coming from.


====

calima, it's only going to cover for a fraction of action 53 vol 4 users, but at least i can test revisions on PAL hardware.
User avatar
gauauu
Posts: 779
Joined: Sat Jan 09, 2016 9:21 pm
Location: Central Illinois, USA
Contact:

Re: Progress thread: Inherent Smile

Post by gauauu »

Also, I just wanted to say that the background during the battles looks amazing. Captures that "everything fades into blackness" feel that worked so well on Sunsoft's Batman graphics.
User avatar
tokumaru
Posts: 12427
Joined: Sat Feb 12, 2005 9:43 pm
Location: Rio de Janeiro - Brazil

Re: Progress thread: Inherent Smile

Post by tokumaru »

calima wrote:I didn't like the official formula's results from a tutorial
The formulas out there are usually for way more powerful machines anyway, we absolutely have to simplify things if we're going for performance.
plain divisions looked bad in some way no matter what
Are you sure you divided the constant by the distance and not the other way around?
so in the end I picked a linear formula going such that in front = full wall, right before clip distance = 1 unit tall wall. That looked best to me.
The problem is that the relationship between distance and apparent height is NOT linear. When you're far away from something, its apparent size doesn't change much when you move towards it, but the closer you get, the faster the object "grows". If you're inches away from a wall, even one step is enough to double its height, but when you're a mile away, a step means nothing.

Using a linear formula wouldn't be too much of a problem if the horizontal scaling was also linear (only the movement would feel inconsistent: players would feel slower as they approached the walls), but it's not, and the end result is that a passage that looks narrow from far away stretches and becomes extra wide as players approach it, and it's quite disorienting.

I do understand if you don't feel like changing that kind of stuff at this point, this is your game after all, it's just that as an enthusiast for 3D on the NES I'm slightly disappointed with how hard navigating that maze turned out to be, specially considering that it seems like this would be an easy fix (there's only one thing wrong: the wall heights).
calima
Posts: 1745
Joined: Tue Oct 06, 2015 10:16 am

Re: Progress thread: Inherent Smile

Post by calima »

Yes, I divided the constant by the distance. If you want to play with hacking it, the distance-to-height table is 112 bytes long, and it starts with 4f 4f 4d 4c 4a.
User avatar
tokumaru
Posts: 12427
Joined: Sat Feb 12, 2005 9:43 pm
Location: Rio de Janeiro - Brazil

Re: Progress thread: Inherent Smile

Post by tokumaru »

Cool! I did some light debugging but didn't find anything conclusive so I gave up. Thanks for the information!
User avatar
dougeff
Posts: 3078
Joined: Fri May 08, 2015 7:17 pm

Re: Progress thread: Inherent Smile

Post by dougeff »

I did a little futzing around with it...

4F4F4F4F48433F3C3A38363433323130
2E2D2B2A2928262422201E1C1A181614
12100E0C0A0804020101010101010101
01010101010101010101010101010101
01010101010101010101010101010101
01010101010101010101010101010101
01010101010101010101010101010101

...seems a little better.

EDITED. 2:46
nesdoug.com -- blog/tutorial on programming for the NES
lidnariq
Posts: 11429
Joined: Sun Apr 13, 2008 11:12 am

Re: Progress thread: Inherent Smile

Post by lidnariq »

Shouldn't the span height "just" be proportionate to 1/distance ?

I see the original curve is pretty close to that, albeit tweaked to be almost linear instead.
Post Reply