Project: Knil

This is an archive of a topic from NESdev BBS, taken in mid-October 2019 before a server upgrade.
View original topic
Project: Knil
by on (#108404)
I started working on this again after taking about 6 months off. It's a Legend of Zelda type game, as you can probably tell.

ImageImageImage

ImageImageImage

ImageImage

I've got some scrolling issues to fix, otherwise I would have done a video. The game currently targets FME-7, but could probably work on an MMC3. Palette updates after the status bar (my graphics/palettes do a poor job of showing this) and the textboxes necessitate the use of a mapper with an IRQ.

The core of the engine is done. What's left is mostly just polishing things like collision, music/sfx driver, and whatever needs to be added for scripting specific events. The actual content of the game is sitting around 10%. Now I have to sit down and design a game. :D
Re: Project: Knil
by on (#108407)
Cool !
Since the game I'm making is also a Zelda style game, this makes us officially in competition :D

Although my game will probably still be very different from yours, as I only use a very simple mapper, no IRQs or whatever. It will also have fewer RPG elements than Zelda (in a good way of course - i.e. you wont be completely lost when you start your game).
Re: Project: Knil
by on (#108409)
Cool! This is exciting! Thanks for making a post about it. It's about time some Zelda derivative homebrews start coming out. I look forward to seeing this progress. *edit* The little blue guy reminds me of a blue strongbad.

*edit* Textboxes are an interesting topic. In my project, I use a bit of sleight of hand. I align the scrolling to an 8x8 pixel boundary, then draw the textbox. Sprites also get aligned to 8 pixel boundaries so that they appear to be clipped by the textbox. If you're careful, the farthest any sprite will have to move to become aligned to your text box is 4 pixels---not very noticeable. Crystalis allowed ugly gaps to show against their sprites for textboxes. So, while still not perfect, it's a good compromise. It is a nice way to display a textbox without any raster effects.
Re: Project: Knil
by on (#108411)
Quote:
It's about time some Zelda derivative homebrews start coming out.

Technically my project Dragon Skill started in 2005, and most of the game engine was completed in 2007. Oh yeah.

The hard part is programming enemies and bosses. Also 2007 is the year I entered at university... no wonder why my project advanced so little since then :(

I hope I'll be able to create/port a 6502 C compiler* as a master project, that way when I'll be finished with my studies I could code NES games as fast as lightning and spam the world with cool games of all sorts...

However a 6502 C compiler is neither innovative or exciting in a research viewpoint, and is more a matter of computer science than electrical engineering, so I don't know if such a thing will be possible.

[*] Yes, I already know CC65, and I have nothing against it except the efficiency of the resulting code is simply terrible.
Re: Project: Knil
by on (#108414)
Bregalad wrote:
Quote:
It's about time some Zelda derivative homebrews start coming out.

Technically my project Dragon Skill started in 2005, and most of the game engine was completed in 2007. Oh yeah.

The hard part is programming enemies and bosses. Also 2007 is the year I entered at university... no wonder why my project advanced so little since then :(

I'd love to see your game completed. Speaking for myself, I wouldn't feel competitive with anyone even if they were making something similar. Every game will be unique and have something worthwhile I think.

Also, I think there is perhaps a natural time of life when people start to get this urgent need to finish old dreams. My own games were things I tried and failed to complete when I was a teenager/early 20's, it is probably a matter of time before you go through the same "resolution." :)
Re: Project: Knil
by on (#108434)
Just curious, why FME-7?
Re: Project: Knil
by on (#108435)
Looks good, outside of the horrid 1 pixel font. :) Can't wait to see some video on it!
Re: Project: Knil
by on (#108440)
3gengames wrote:
Looks good, outside of the horrid 1 pixel font. :) Can't wait to see some video on it!

It's the exact font from The Legend of Zelda: Link's Awakening. "Horrid" is relative, as I like the font myself.
Re: Project: Knil
by on (#108443)
LocalH wrote:
"Horrid" is relative, as I like the font myself.

It might not be ugly (but like you said, this is subjective) but it is hard to read, specially if you consider composite video artifacts.
Re: Project: Knil
by on (#108447)
That's not my experience. White on a dark background and black on a light background are perfectly readable even with chroma artifacts.

Image
Image
Re: Project: Knil
by on (#108457)
Would you intend to have optional Sunsoft 5B audio supported?
Re: Project: Knil
by on (#108475)
The project looks great, I think the name Knil came from one of many Youtube playthroughs from the english fan translation of ''For the Frog the Bell Tolls'' which came before ''Link's Awakening'', which referenced the game, so the player wanted to name the player backwards...
Re: Project: Knil
by on (#108527)
Bregalad wrote:
Cool !
Since the game I'm making is also a Zelda style game, this makes us officially in competition :D

Maybe not competition per se, but seeing projects from others always motivates me to work on my own.

80sFREAK wrote:
Just curious, why FME-7?

I like the 8x1K CHR paging it offers over the MMC3. Actually, I just don't much care for the MMC3. The scanline counter left a bad taste in my mouth years ago.

zzo38 wrote:
Would you intend to have optional Sunsoft 5B audio supported?

I'll have support for the extra channels in the audio driver, but I probably won't use them myself. I have a hard enough time composing something that sounds good with just the stock hardware.


Thanks for all the comments, I'll keep you updated as the project progresses.
Re: Project: Knil
by on (#108571)
When I meant competition I mean it in a good way of course. You know, competition is not always bad, of course too much competition can leads to terrible things, but a little competition is nice to keep motivated and work harder, which is what I was talking about.

About the font I think it's ok even if it's definitely not my favourite ever.
Re: Project: Knil
by on (#120481)
Just a quick update on this:

ImageImageImage

The game is coming along nicely. Most of the work I've been doing is on the overworld and fleshing out the weapons and upgrades. The overworld is actually quite large, I may need to scale it back.

Now, on to my question. The game allows for sequence breaking. If you get the fire weapon (a lighter for now) and head into the mountains, you can end up in the situation like this:

Image

Normally, you have two ways out of this. If you have the jump upgrade, you can jump the gap if its less then ~18 pixels. There is also an ice weapon (unnamed) that can refreeze the water. The game allows for saving at any time, but you will be sent to a "restart" point when you load up the file again (like LoZ:ALttP). This will prevent you from losing progress if you get stuck. The inventory screen also has a RESET option.

Personally, I don't like the idea of players getting "stuck" and forced to reset the game. It reminds me of those Mario hacks that force you to die if you go the wrong way. It seems like bad design. Am I being overly critical? Thoughts?
Re: Project: Knil
by on (#120483)
My idea for the design thing is make it so they have the ice option before the fire, and always having it to get out of the situation.
Re: Project: Knil
by on (#120486)
Awesome to see your project is alive and well. Looking pretty awesome too!

Quote:
This will prevent you from losing progress if you get stuck. The inventory screen also has a RESET option.

Personally, I don't like the idea of players getting "stuck" and forced to reset the game. It reminds me of those Mario hacks that force you to die if you go the wrong way. It seems like bad design. Am I being overly critical? Thoughts?

I think it depends on the nature of the game and how well it is understood by the player that situations like that are supposed to exist. Lolo for example devotes the select button to committing suicide if you're stuck. However games like mario/zelda usually don't put you in a situation like that. The fact that you've put 'RESET' in the menu helps the user know it might be of use to 'give up' if you get stuck helps a little. You don't want the player wondering if it was intentionally designed that way, or if it was just poorly designed IMO.
Re: Project: Knil
by on (#120497)
Wow, this project looks amazing! Keep up the good work!

I think in the example above I wouldn't worry too much. The player has to intentionally get themselves stuck. I think the emergent game play that comes from non-linearity makes up for any rough edges it may cause.
Re: Project: Knil
by on (#120888)
SoleGooseProductions mentioned two possible solutions:

1. save a "start" point when the player steps onto ice and return the player there if they fall into the cold water
2. have the ice sink if the player is standing on a single square


The first works nicely, since the game already has a "safe" area mechanic for falling into holes. I think I'll keep track of two: one for most current area, the other for the most current non-destructible area. The game would fall back to the second one if the first is a metatile that causes damage.

I also like the second idea and I think some interesting things could be done with it.
Re: Project: Knil
by on (#120889)
Quote:
1. save a "start" point when the player steps onto ice and return the player there if they fall into the cold water

Breaks if there's an island anywhere. Step on island which is not ice. Burn all ice around island.
"Make it so they can't burn ice while standing on land."
And so the quest begins...

Unless non destructible areas are set by you and not actually whether or not a tile is destructible. In which case, an island would be marked destructible. Or just have no islands surrounded by ice. :(
Quote:
2. have the ice sink if the player is standing on a single square

This is good, as long as the lighter is infinite. If not, you may run out before you can make yourself stand on just one block.

But if walking in the water will eventually kill you, and killing you sends you someplace safe I see no reason to even do this. Forcing the player to kill themselves works, and maybe they'll learn something. :lol: Making a single square of ice sink is basically forcing the player to kill themselves, anyway. (They have to burn all ice around to grant themselves death.)

Cases like this is what makes game design "fun". If it were me, I'm not sure how hard I'd try to protect a player TRYING to get themselves stuck. Golden Sun will start you at a safe point instead of your last position after loading the save if you hold a button combination while loading. Your game puts you at a safe place when loading automatically. With a fail safe like that, I'd do whatever and worry less.

It's even possible to get stuck in "simpler" games (as far as fancy things the player can do) like Pokemon. I don't see it as bad design, if someone has to go far out of their way to make it happen.
Re: Project: Knil
by on (#120917)
I can get myself stuck in SMB a number of ways :)
Re: Project: Knil
by on (#210444)
This project stalled for a few years, but was never dead. I had two kids, and now that they are getting older I've been slowly getting some free time back.

I need to work on the graphics and palettes because it looks sorta bland. Luckily, most of the areas are not currently using background palette #4 so that gives me some freedom. The "dungeons" need more diversity in the tiles they use. I do have quite about of chr-rom left, so that shouldn't be a problem.

I never really sat down and figured out a backstory other than the main character (some sort of space marine type) crash lands on a colony planet and must gather parts to fix the pod to get back to the ship.
Re: Project: Knil
by on (#210448)
Hahaha, probably the only topic I have ever subscribed to on here, but a pleasant notification nonetheless. Great to see that it is still alive!