Progress thread: Inherent Smile

This is an archive of a topic from NESdev BBS, taken in mid-October 2019 before a server upgrade.
View original topic
Progress thread: Inherent Smile
by on (#209662)
Calima invited me to a project earlier this year... I've made a promise to keep most of the good stuff under lock and key (you'll hopefully have more fun that way eventually), so here's a teaser for now :twisted:

I'm planning to reveal some little tidbit these dates (no critical spoilers, though!) :

Dec 10th (2nd advent)
Dec 17th (3rd advent)
Dec 24th (4th advent; christmas eve) or maybe christmas day if it gets too hectic.

To my understanding advent isn't really celebrated much in the english speaking parts of the world? Anyway it's a pretty big deal here so i thought it'd be appropriate. It's also a way to keep up the pace.
Re: Progress thread: Unrevealed title
by on (#209668)
Advent is the entire five weeks up until Christmas, it's not just the Sundays. :) Advent calendars exist in most parts of the world.

Anyway, looks really promising. You always deliver with those NES graphics.
Re: Progress thread: Unrevealed title
by on (#209671)
Is that Ooze I see?
Re: Progress thread: Unrevealed title
by on (#209672)
Thanks! :)

I suspect that counting the weeks like that is somewhat local, though. For example this is manifested in lighting 4 candles in cascade/cumulatively; 1 more lit each sunday: https://images.styleroom.se/image/scale ... sstake.jpg

When i studied ethnography, a seminar was about 19th century's changed/digitized perception of time, what with railroads and mechanized clocks having an increasing impact. Apparently this was also the time when the celebration of advent took fire; not least as a method to train the patience of children with fun little rituals.

Quote:
Ooze

something like that, yes :mrgreen:
Re: Progress thread: Unrevealed title
by on (#209673)
Looks pretty awesome but is it intentional that the shield looks like a (C)opyright? :D
Re: Progress thread: Unrevealed title
by on (#209674)
+1 vs. pirates, doppelgängers and clones 8-) Saves on CHR-ROM too!

On a more serious note, it's supposed to be a waxing waning crescent.
Re: Progress thread: Unrevealed title
by on (#209676)
FrankenGraphics wrote:
On a more serious note, it's supposed to be a waxing crescent.

Dang. I was looking forward to playing Knight Copyright and the Plagiaristic Ooze. :D
Re: Progress thread: Unrevealed title
by on (#209678)
...and end him (copy)rightly!

(reference)


"Knight Copyright" is a great idea, anyway :beer:
Re: Progress thread: Unrevealed title
by on (#209680)
Would it have anything to do with the 2008 movie IP Man?
Re: Progress thread: Unrevealed title
by on (#209692)
FrankenGraphics wrote:

I see your pommel is bigger than mine.
Re: Progress thread: Unrevealed title
by on (#209779)
Image
I wanted this lantern to be both larger than 8x8 (it is 16 high, 12 wide) and have a glow smoother than the usual 2-state flicker, but at the same time i need all most tile space for other stuff.

What i came up with is only using 4 tiles total which makes it justified. Half of its height is 1 sprite on the scanline, the other half 3. That's alright; they're not supposed to sit in straight horizontal lines here.


Thoughts for maybe some other design some other time:
Basically the same recipe could be used with the lantern itself being bg based (less colourful, but saving 1 sprite/scanline), and the light inside it being 1 or 2 sprites behind the bg. That's however probably not going to be the case here as the needs are different.
Re: Progress thread: Unrevealed title
by on (#210254)
One hour into dec the 17th here; so here's a piece of bg. Suggestions and critique is as always welcome. :)

Image
Re: Progress thread: Unrevealed title
by on (#210255)
Wow.... Awesome!!! The thing that draws attention the most though is that the depth of the lava coming from the background wasn't instantly recognizable. What I'd do is smoothly change the predominant color from the back to the front. Make the back predominantly darker, and the front lighter.

Also, not sure if possible, but it would be cool if there was a hint of light coming from lava at the bottom of the canyon (can't find the proper word for the river that goes from left to right)
Re: Progress thread: Unrevealed title
by on (#210262)
That looks great! I love the coloring of the far background, it mixes different hues perfectly! I also love the texture and lighting on the bricks! I agree with nesrocks though, the lava river isn't immediately recognizable, and I imagine it'll be even worse if this background scrolls by and the perspective doesn't change. I think 2D games avoid this kind of pronounced perspective for a reason (unless they can distort the perspective section to make it consistent with the camera's position).

If you really need the river to be there for whatever reason, I agree that it could use some shading to better convey the perspective, and the texture of the surface could be busier, more compressed vertically, since this is a fairly long river... you shouldn't have single "bubbles" covering all the distance from the middle of the river to the front most edge.
Re: Progress thread: Unrevealed title
by on (#210272)
Just the feedback i needed - Thanks! :beer:

Even with shading, i'll admit the underlying perspective is forced rather than natural, but anyway... here's an update. Junction between far-away fall and river is moved to match the perspective, and the texture of the river is scaled and shaded a bit. Better?

Image
Re: Progress thread: Unrevealed title
by on (#210276)
Quote:
Better?


yes.
Re: Progress thread: Unrevealed title
by on (#210668)
Update

Spent 6 cels of mostly unique tiles on the determined stride/run animation since the player will see that a lot.

Summary
Time domain: Duration set to 4 frames for transitioning cels; 7 frames for the 2 "turning point" cels.
Position domain: a "dip" of 1px set for two of the cels (worth 4 frames each) when the legs are between contact points with the ground. i experimented with having position animation free-standing from cel durations, but the yield was not enough to justify it imo.
Pixel domain: The differences in movement from cel to cel were made to create an "ease in" from the turning points but end quite abruptly at the next turning point: the largest distance is covered between the last "transition" cel and the upcoming turning point. This hopefully helps reinforce the expression of determination.
Re: Progress thread: Unrevealed title
by on (#212061)
There's a little pixel cleanup to be done, but i think this giant rat (my biggest pain) is finally starting to come together.

Just to make sure you guys think it works -- If you have any critique, let me know!

Attachment:
75percentdone.gif
75percentdone.gif [ 5.65 KiB | Viewed 2846 times ]
Re: Progress thread: Unrevealed title
by on (#212064)
I love the rat. The bounce has a lot of energy/personality.
Re: Progress thread: Unrevealed title
by on (#212065)
Thanks! Trying to bring out some more of that.

Same use of tiles (actually one less), more dynamic placement. Definitely smoother. A little different pacing (always hard to nail! Better? Worse?)

Attachment:
90percentdone.gif
90percentdone.gif [ 6.53 KiB | Viewed 2824 times ]

Edit: Curbed the tail and also the ears a bit. This detail is getting close to final, if not already?
Attachment:
asgoodasdone.gif
asgoodasdone.gif [ 6.45 KiB | Viewed 2810 times ]
Re: Progress thread: Unrevealed title
by on (#212078)
I like!
Re: Progress thread: Unrevealed title
by on (#212090)
Looks great!
Re: Progress thread: Unrevealed title
by on (#212776)
Submitted. FrankenGraphics, feel free to edit the title now.
Re: Progress thread: Inherent Smile
by on (#212783)
Title ...revealed!
Image
Re: Progress thread: Inherent Smile
by on (#212802)
That is some nice logo work!
Re: Progress thread: Inherent Smile
by on (#212811)
The logo and the ornaments look great! Very colorful!
Re: Progress thread: Inherent Smile
by on (#213083)
Is this game PAL only? I'm getting some graphics corruption in NDX when using NTSC.
Re: Progress thread: Inherent Smile
by on (#213087)
Does the "run" button work? I keep dying to stuff and I can't run away!

I would be interested in hearing how the raycaster works. It looks different than tokumaru's.
Re: Progress thread: Inherent Smile
by on (#213088)
I don't understand what happened with this game... It has some of the greatest graphics I have ever seen on the NES, the use of color is absolutely fantastic! And then there are the 3D sequences...

I don't mind the "Tyrannosaurus Tex style" of textured walls (I wanted to see it done on the NES, actually), but the dimensions of the blocks are really inconsistent... You can't see openings very well until you're really close, it looks like things get distorted as you move around. I ended up using the tiny circular map almost exclusively, since it's so hard to tell what's going on in the 3D.

But more surprising than the 3D view itself, is the interface around it. How come this screen looks like a quick MS Paint sketch while the rest of the game has such amazing graphics?
Re: Progress thread: Inherent Smile
by on (#213092)
Quote:
I don't understand what happened with this game...


A number of things i'm painfully aware of:
-Scope of project + time constraints didn't line up too well for me, which i failed to foresee. In hindsight, had i been able to begin work earlier, there would have been more headroom covering for the point below:
-Then my involvement got delayed by ~3-4 weeks mid-process because of real life (sorry, calima...)
-Lastly, some assets had to be cut out of sheer size - which essentially means i spent precious time on the wrong things.

As for the 3d maze graphics:
It wasn't originally planned/asked for, but I had hoped to have time left to work on the 3d environments' GUI + additional graphics, but as it were, i was only able to finish my original assignment (design for equipment and monsters, graphics for title+ending and all the battle sceneries, enemies, equipment, battle effects and spells, boss, and then animations).

I think it's a good start, but it didn't get the polish it deserves. Throw more time and ROM on it and i think it'll be quite the experience if we commit to it further.

Basically, my personal lesson is that any project needs a months' buffer time in case anything unplanned affects your schedule negatively - and if it doesn't you can either spend that buffer on further polishing things, or just sit back and be satisfied. As it were i sacrificed sleep and postponed dayjob tasks to get back on schedule somewhat in the nick of time, which isn't optimal from any angle. All while calima had to deal with dependencies not being fixed on time.

Comparing to the process of bringing project blue to the table, i had a couple of months more to work on that which meant the downtime i had didn't affect the project visibly.
Re: Progress thread: Inherent Smile
by on (#213093)
FrankenGraphics wrote:
I think it's a good start, but it didn't get the polish it deserves.

Did anything get enough polish? (Other than Gruniożerca 2 of course)

FrankenGraphics wrote:
Throw more time and ROM on it and i think it'll be quite the experience.

That's why we have the post-compo period. But time might be a tad easier to come by than ROM, unless you can (say) combine two 64K entries into one 128K ROM that only actually uses 96K, or unless you think you can flesh it out for a solo cart release (like Twin Dragons from last year).
Re: Progress thread: Inherent Smile
by on (#213096)
This project has a lot of potential, having such great art and gameplay unseen on the platform, so I hope you guys are able to work on it a bit more to deliver a consistent experience to players!
Re: Progress thread: Inherent Smile
by on (#213098)
thefox wrote:
Is this game PAL only? I'm getting some graphics corruption in NDX when using NTSC.

No, it was targeted at NTSC timings, but mainly tested in fceux, I don't have a NES flashcart. It does seem to slightly go over the vblank during 3d.

pubby wrote:
Does the "run" button work? I keep dying to stuff and I can't run away!

I would be interested in hearing how the raycaster works. It looks different than tokumaru's.
Running works, but it's only a 25% chance of getting away. I think the general method is the same as tokumaru's. (tokumaru, I was expecting you to enter too :P where's the promised puzzle raycaster?)

tokumaru wrote:
I don't mind the "Tyrannosaurus Tex style" of textured walls (I wanted to see it done on the NES, actually), but the dimensions of the blocks are really inconsistent... You can't see openings very well until you're really close, it looks like things get distorted as you move around. I ended up using the tiny circular map almost exclusively, since it's so hard to tell what's going on in the 3D.

But more surprising than the 3D view itself, is the interface around it. How come this screen looks like a quick MS Paint sketch while the rest of the game has such amazing graphics?
The FOV is 67,5 deg, which may be a bit too wide for 1-meter (block) wide corridors. There's no subpixeling going on, so with the 19 available pixels... IIRC yours did use horizontal subpixels, but it just isn't possible here, mainly due to the map being bitpacked and so each ray step being somewhat costly. The map is pretty huge.

lol @ the description of my art :D With the 3d view taking most of the available tiles, it couldn't be that detailed, and I liked the way it got. Franken didn't like it either, but didn't end up having time to update it.

tepples wrote:
Did anything get enough polish? (Other than Gruniożerca 2 of course)
Technically the 3d view is super polished, as I already made it for the 2016 compo, it's had massive optimization to run that well.
Re: Progress thread: Inherent Smile
by on (#213102)
calima wrote:
The FOV is 67,5 deg, which may be a bit too wide for 1-meter (block) wide corridors. There's no subpixeling going on, so with the 19 available pixels... IIRC yours did use horizontal subpixels, but it just isn't possible here, mainly due to the map being bitpacked and so each ray step being somewhat costly. The map is pretty huge.

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.

Quote:
lol @ the description of my art :D With the 3d view taking most of the available tiles, it couldn't be that detailed, and I liked the way it got. Franken didn't like it either, but didn't end up having time to update it.

I don't mean to be rude, but that's solid gray with black lines, that's not art. And it clashes badly against the beautiful art found in the rest of the game. It looks like you have what, around 34 tiles for that GUI? That should be enough for a nice stonework pattern and some decorated borders for the text boxes and the like. That would also fit the game's ambiance much better. The map could maybe be drawn in sepia tones instead and be framed like a traditional fold up map. Just some ideas.
Re: Progress thread: Inherent Smile
by on (#213113)
I played it on 800% speed, and cheated A LOT to not die all the time.

The turn speed is WAY too slow. Just turning to look around takes 8 seconds.

The enemies have WAY more HP than you have attack power. When I found the exit, I had an attack power of 5. I was fighting enemies with over 100 HP. That is a slow, slow, slow battle. It was ok at 800% speed. Maybe I was supposed to level up more? Or find some special weapon?

I had no idea where I was. Maybe you could use color to differentiate different areas of the map. Like, start area is green, another area is red, or gray, or darker green.
Re: Progress thread: Inherent Smile
by on (#213117)
Yeah, 5 attack power is low... you need to look for more chests and use better weapons and cast some spells. If you encounter enemies that are too strong (even if they technically can be defeated), it's better to run and try to find some gear that will boost your attacks, defense and magic. But i'm also going to admit that the time we had for balancing was cut short.
Re: Progress thread: Inherent Smile
by on (#213120)
Maybe I need to grind for awhile? I always die fighting the first rat I encounter.
Re: Progress thread: Inherent Smile
by on (#213122)
Maybe, but chances are... did you know that you can time blocks and crits? If you get the timing right (especially when blocking), the rats will become a lot more manageable.
Re: Progress thread: Inherent Smile
by on (#213125)
Huh. Is there a button I'm supposed to press in order to block?
Re: Progress thread: Inherent Smile
by on (#213127)
Oh, i see it isn't in the blurb. No wonder then that it has been found difficult!

Well it's the same button as confirming. Press it at the right moment when attacking or when being attacked in order to do critical damage or block. It takes a little practice to get it right somewhat reliably. I wanted to text this one way or the other in-game (maybe by enemies showing it is possible by them blocking and criting, maybe with a gauge, maybe with a plain instructional text) or else describe it in a manual, but as it stands, i can see it is currently unintuitive.
Re: Progress thread: Inherent Smile
by on (#213128)
For Action 53, I can include it in the description. Would the following be accurate?

Ⓐ Use/Timed Attack
Re: Progress thread: Inherent Smile
by on (#213132)
Thanks, tepples! I think that'd be great. :beer:

It's about right, but i wonder how we can make it describe that A is for both timed attacks and timed blocks while keeping it as short?
Re: Progress thread: Inherent Smile
by on (#213133)
Same terminology as Paper Mario / Mario & Luigi? ("Action command")

... hm, maybe that's too jargon-y.
Re: Progress thread: Inherent Smile
by on (#213135)
Yeah, paper mario ought to be a perfect parallel, but if you haven't played them (like me), i don't think you would know.

Maybe it's enough to state:

(A) Use/Attack/Block

It leaves the player to figure out whether the crits are because of timed actions or by chance though.

Some more alternatives:

(A) Use/Attack/Block/Crit
(A) Use/Attk/Block/Crit
(A) Use, timed attacks/blocks
(A) Use, attack, crit & block
Re: Progress thread: Inherent Smile
by on (#213143)
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.
Re: Progress thread: Inherent Smile
by on (#213153)
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.
Re: Progress thread: Inherent Smile
by on (#213158)
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:
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
Re: Progress thread: Inherent Smile
by on (#213162)
tepples wrote:
Ⓐ Use, attack,
timed hit and defense


That describes it well enough that players would have a chance figuring it out.
Re: Progress thread: Inherent Smile
by on (#213193)
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).
Re: Progress thread: Inherent Smile
by on (#213194)
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.
Re: Progress thread: Inherent Smile
by on (#213195)
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.
Re: Progress thread: Inherent Smile
by on (#213196)
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.
Re: Progress thread: Inherent Smile
by on (#213198)
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.
Re: Progress thread: Inherent Smile
by on (#213201)
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.
Re: Progress thread: Inherent Smile
by on (#213207)
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.
Re: Progress thread: Inherent Smile
by on (#213208)
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.

Quote:
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?

Quote:
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).
Re: Progress thread: Inherent Smile
by on (#213270)
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.
Re: Progress thread: Inherent Smile
by on (#213278)
Cool! I did some light debugging but didn't find anything conclusive so I gave up. Thanks for the information!
Re: Progress thread: Inherent Smile
by on (#213293)
I did a little futzing around with it...

4F4F4F4F48433F3C3A38363433323130
2E2D2B2A2928262422201E1C1A181614
12100E0C0A0804020101010101010101
01010101010101010101010101010101
01010101010101010101010101010101
01010101010101010101010101010101
01010101010101010101010101010101

...seems a little better.

EDITED. 2:46
Re: Progress thread: Inherent Smile
by on (#213294)
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.
Re: Progress thread: Inherent Smile
by on (#213295)
I think that table looks great Dougeff! Really helps depth and therefore orientation
Re: Progress thread: Inherent Smile
by on (#213299)
Quickly playing around with mesen (it'll let me hot-patch the table while the game runs!), I tried a table of the form 79·10/(n+10) and I think it makes motion a little more fluid ... but it also clearly shows some cylindrical distortion.

edit: explicitly spelling out what that means:
Code:
4F 48 42 3D 38 35 31 2E 2C 2A 28 26 24 22 21 20
1E 1D 1C 1B 1A 19 19 18 17 17 16 15 15 14 14 13
13 12 12 12 11 11 10 10 10 0F 0F 0F 0F 0E 0E 0E
0E 0D 0D 0D 0D 0D 0C 0C 0C 0C 0C 0B 0B 0B 0B 0B
0B 0B 0A 0A 0A 0A 0A 0A 0A 0A 09 09 09 09 09 09
09 09 09 08 08 08 08 08 08 08 08 08 08 08 08 08
07 07 07 07 07 07 07 07 07 07 07 07 07 07 07 07


I'd previously tried smaller offsets than 10 but found that, even if they looked accurate, they made all the rooms look HUGE.

edit2: you can think of the parameters in the equation a·b÷(n+b) that a is "how tall in pixels is the wall when I'm as close as I can get" and b as "the closest I can get"

edit3: For distances less than 26, the original data in the game is pretty close to a=79 and b=40.
For distances less than 22, dougeff's curve is close to a=93 and b=15.
For distances less than 40, Frankengraphics's curve below is close to a=90 and b=12.
Re: Progress thread: Inherent Smile
by on (#213301)
lidnariq wrote:
Quickly playing around with mesen (it'll let me hot-patch the table while the game runs!)

FCEUX allows live editing too, just write or paste the new data in the hex editor.
Re: Progress thread: Inherent Smile
by on (#213320)
Yeah i use fceux for that sort of thing, too. Very useful for a/b testing physics quickly - and optics too, it would seem!

I tried to do it from scratch as well. After a couple of hours of testing in varying sizes of corridors and halls, i found this to work best for me in regards to depth and rotation overall. I find it interesting that it came up so close to dougeff:s attempt in close-quarter distances. It seems there isn't much leeway here if you want clear depth separation.

The far-away three fourths on the other hand got pretty different, and this was very conscious as otherwise i found the view started warping (zoom out in the middle of the view a lot as you rotaded in larger halls across faraway corners and doorways) or outright disappear as if it was much further away than it was.

Pretty satisfied with it with this ski slope curve. It definitely shifted my usage from the minimap (which i now only glance at in intervals for treasure hints at this point) to the main screen for orienting.

Code:
4F 4F 4F 4B 48 44 3F 3C
38 35 32 2F 2C 2A 29 28
27 26 25 24 23 22 21 20
1F 1E 1D 1C 1B 1A 19 19
18 18 17 17 16 16 15 15
14 14 13 13 12 12 11 11
10 10 0F 0F 0E 0E 0E 0D
0D 0D 0C 0C 0C 0B 0B 0B
0A 0A 0A 09 09 09 08 08
08 07 07 07 06 06 06 06
05 05 05 05 05 04 04 04
04 04 03 03 03 03 03 03
02 02 02 02 02 02 02 01
01 01 01 01 01 01 01 01
Re: Progress thread: Inherent Smile
by on (#213328)
Will try these soon. In the meanwhile, here's a ROM that runs on hardware, with the more optimized nmi code. Thanks to gauauu for testing.
Re: Progress thread: Inherent Smile
by on (#213330)
I like Franken's table. ROM with that.
Re: Progress thread: Inherent Smile
by on (#213380)
Wow, that is indeed much better! Things still become wider as you get closer, and I can't figure out why... but the sense of depth is MUCH improved, so that's great!
Re: Progress thread: Inherent Smile
by on (#213391)
I've been playing this most of the morning and its been destroying my work ethic. Great game, quite tough though with some very high powered enemies early on. I got the silver sword and thought could finally get some payback on those rats but nope - maybe next time!

One thing to comment on - the death sound - it sounds more like a level up. Some blissful ascension in to the heavens, perhaps?
Re: Progress thread: Inherent Smile
by on (#213493)
Tiny little graphics glitch I just noticed: when I have the poisnspear or khalif equipped, during combat, in the follow-through after an attack, the spear head becomes replaced with leek leaves.
Re: Progress thread: Inherent Smile
by on (#213494)
Do you mean the slash frames? There wasn't chr space to have unique attack animations, so every weapon uses the same slash. The color doesn't change according to the weapon either, it's always green.
Re: Progress thread: Inherent Smile
by on (#213495)
I guess you mean this frame, it's also part of the slash.
Re: Progress thread: Inherent Smile
by on (#213501)
Yup, that.
Re: Progress thread: Inherent Smile
by on (#215214)
Any chance I could get some gameplay advice?
I keep on encountering enemies that are higher level than I appear to be able to deal with. What am I doing wrong?
Re: Progress thread: Inherent Smile
by on (#215219)
- try to master the action button for attack/defense
- remember to equip better armor and weapons
- in particular, seek out armor and spells

Other than that, the balancing is bad, as we ran out of time really. It's quite possible to finish it, but the difficulty rises too fast.

edit: Oh, and a common thing in these dungeon/maze games: draw maps and keep track of what is where.
Re: Progress thread: Inherent Smile
by on (#215221)
That frame there looks off because the weapon is missing. It wasn't planned like that but in the end there was too little ROM/too much content to fit everything, not least animations and features tied to them... most notably the boss which is on strike. There are quite some quite rough cuts.

Tips on playing: Go fast, try not to wait around too much. There's a timer increasing the difficulty. What i usually do is get all the gear on the lower end of the map as quick as possible, then dash for the exit. If i happen upon an enemy that is too good for my current gear, i just run. HP is restored between fights so potions are only needed in battle emergencies.

It's admittedly a too hard for me as well, but that has got me to the end at least once. Only way i know of is to just dash to chests i know about from failed attempts. Now that i know where the exit is, that might be a strategy too, haha.

edit: calima beat me to most points. yeah, timing defense and attacks is really important too, at least in fights you have a good chance of winning.

edit2: now that the judging is over, here's some still states from the missing boss fight. The player would've stood on a sprite based platform while the bg was split to scroll along with the minotaurs' fints and punches.
Re: Progress thread: Inherent Smile
by on (#215227)
FrankenGraphics wrote:
That frame there looks off because the weapon is missing. It wasn't planned like that but in the end there was too little ROM/too much content to fit everything, not least animations and features tied to them... most notably the boss which is on strike. There are quite some quite rough cuts.
I was trying to point out that the weapon was present before the attack, but what's shown after the attack is the leek leaves instead. My original phrasing was not sufficiently specific.

Quote:
Tips on playing: Go fast, try not to wait around too much. There's a timer increasing the difficulty.
Ahhh. Got it. My normal penchant for exhaustively searching a dungeon backfires.
Re: Progress thread: Inherent Smile
by on (#215231)
I'm actually unsure if the timer ticks in battles too or if it is exploration mode only. If the former, it might make sense to flee stalemate-y fights until you get stronger equipment to mitigate difficulty ramp/progress ratio.
Re: Progress thread: Inherent Smile
by on (#215259)
It doesn't tick in battles or inventory.
Re: Progress thread: Inherent Smile
by on (#215453)
I would love to see what the game could look like if the exploration mode were more visually in-line with the combat and title screens.

Unfortunately, the difficulty curve was just too steep for me to justify playing any further (also there were some strong nametable errors while playing on an Everdrive and a Famicom.) Moreover, the size of the blue bar that represents items changing based on distance could help with visual orientation a whole lot.

The decision to increase difficulty for longer wait times seems... unusual, at best? It seems like all it does is punish less experienced players and/or exploration (which seems like it'd be the personal objective of most players - even if exiting the maze is the official objective) Moreover, why not communicate this information to the player? (This could be done with as little as some text about increased danger at night and palette changes while in map view to indicate time of day).

Ultimately, it was an ambitious title, and I respect that. In the end though, it felt like two partially complete ideas put together and not a cohesive product. Although its difficulty curve and aesthetic inconsistency definitely held back my enjoyment of the title, I'm curious as to see what it might grow into (or what else could be done with the first person mode).
Re: Progress thread: Inherent Smile
by on (#215454)
The vsync bugs were fixed in later ROMs in this thread; the treasure indicator does change with distance, but only in 8px blocks due to limited space.

The usual enemy variety is based on where you are, which would have taken too much space.
Re: Progress thread: Inherent Smile
by on (#215455)
I basically agree on all design points made by m-tee.

Ultimately i think a dungeon crawler /maze rpg is pretty challenging to pull off on CNROM as it is dependent on a lot of data tables, but what we have here is three subgames competing for that same prg space:

-realtime 3d game
-crawling rpg with stats, a basic level system, treasure hunt & monster fights
-clipdoll dressing game (try on different equipment, see them displayed in battles, and discover useful combos. Not unlike Diablo in that sense)

the third didn't exactly compete as most of that is chr data which there was plenty of, but also some space-related choices made this subgame largely unavailable to the player (ie need to hurry through the labyrinth because of timer based difficulty, no stash/store, limited space for all the data needed to fully realize it).

if ROM size would be brought up to the scope of the design, i think it has a really good potential. As it stands it is kind of more of a technical demonstration.

For cart inclusion, i think it'd make sense to nerf all enemies or buff the player in whatever way possible since the difficulty makes it forbidding, which counteracts the demonstration. I don't think we can achieve good balance as-is, but it could be made easier to experience. Maybe simply the player base stats could be brought higher to give a headstart.
Re: Progress thread: Inherent Smile
by on (#215457)
Conversion from CNROM to UNROM, as was done for Solar Wars in volume 2, would allow compression of CHR data. Would that be enough to free up some space for enhancements?
Re: Progress thread: Inherent Smile
by on (#215466)
Unless the abundance of CNROM projects this year permits significant compression, it doesn't look like we'll easily fit in 512KB for all entries. The raw total is around 750KByte. So there's quite a bit of space before we hit 1MB if you want more space for the published version.
Re: Progress thread: Inherent Smile
by on (#215471)
CHR-RAM decompression would take too much time.
Re: Progress thread: Inherent Smile
by on (#215472)
i think what INL meant is there's no need for compression in the first place? Lots of available space. I'm always up for prepping the last omitted assets and test/hex edit some balance points if you're up for implementing the corners that had to be cut/algorithm-ified. I suppose that'd make the game "category 2" but speaking strictly for myself i don't have a problem with that.
Re: Progress thread: Inherent Smile
by on (#215474)
FrankenGraphics wrote:
i think what INL meant is there's no need for compression in the first place? Lots of available space. I'm always up for prepping the last omitted assets and test/hex edit some balance points if you're up for implementing the corners that had to be cut/algorithm-ified. I suppose that'd make the game "category 2" but speaking strictly for myself i don't have a problem with that.


Correct, now that the compo is over there really aren't much for rules provided we can make everything fit on the cartridge. Any improvements based on feedback from the compo are more than welcome. We're all for making the cartridge better. Looks like we will probably have decent amount of rom to spare, so if you're interested in expanding the entry a little to improve things the cartridge should be able to afford that. How you do that may get a little complicated though as you're likely setup for 32KB fixed PRG-ROM currently..

I wouldn't recommend spending large amounts of development time on entires post-compo. Last year I think we requested people have their roms ready for publishing by the end of March, results were a little delayed this year so maybe the better rule is 1 month after results are posted (mid-April). That way Tepples can start finalizing the rom, we have a general idea of what all games will be on the cart so we can start the artwork process. Beyond that, for the entrants it's time to start thinking about next year's compo.

If you have significant improvements/expansion you'd like to apply to an entry it's more than welcome for submission in a future compo as well.

Since the compo is over now, the idea of changing categories post compo doesn't really apply so long as we can still get it in the cart.
Re: Progress thread: Inherent Smile
by on (#215478)
Perhaps compression is assumed necessary because the next binary step up from 64 KiB (entry size limit) is 128 KiB. If only a few more kilobytes are needed to turn the tech demo into a finished game, the rest is wasted unless it's used (say) to soak up other games' compressed CHR data.

But you still have 32 KiB of CHR RAM. If the CHR data compresses from 32 KiB to (say) 22 KiB, you can decompress all the CHR data into RAM at the start and then use the extra 10 KiB for self-contained or less frequently accessed things, such as the music engine.

Code:
A53_REG        = $5000
A53_CHRBANK    = $00
A53_PRGBANK    = $01
A53_MODE       = $80
A53_OUTERBANK  = $81
A53_VALUE      = $8000

MMC1MIRROR_V   = $02
MMC1MIRROR_H   = $03
MMC1PRG_32K    = $00
MMC1PRG_FIX80  = $08
MMC1PRG_FIXC0  = $0C
A53PRG_256KBIT = $00
A53PRG_512KBIT = $10
A53PRG_1MBIT   = $20
A53PRG_2MBIT   = $30

a53_init:
  ldy #A53_OUTERBANK
  sty A53_REG    ; reg $81: outer bank
  lda #$FF
  sta A53_VALUE  ; needed for standalone A53 use, patched to BIT in multicart
  dey
  sty A53_REG    ; reg $80: mode (similar to MMC1)
  lda #A53PRG_512KBIT|MMC1PRG_FIXC0|MMC1MIRROR_V
  sta A53_VALUE
  rts

set_chr_bank_y:
  lda #$00
  sta A53_REG
  sty A53_VALUE
  rts

set_prg_bank_y:
  lda #$01
  sta A53_REG
  sty A53_VALUE
  rts
Re: Progress thread: Inherent Smile
by on (#215503)
Using the a53 mapper directly would allow instant CNROM-like CHR switching with more PRG, yes.

However, I'm not going to spend a lot of time on this, which rules out any mapper changes and the like. It's full, PRG almost to the last byte (it was full to the last byte before the vsync optimization saved some...). Lowering the difficulty curve might be possible, when I have time later.