A WIP of a game to be released by www.pikointeractive.com/ sometime later. For those who are interested in how modern NES game development looks like.
Жүктеу.....
Пікірлер: 63
@ToothpasteCylinder8 жыл бұрын
Cool! You have me inspired to do more nes cc65 homebrew. thanks Shiru8bit.
@nio1078 жыл бұрын
I know zero about programing games, but this is an iinteresting watch
@AlyphRat4 жыл бұрын
Interesting... Kinda reminds me of the NESDOUG's cc65 library
@shiru8bit
4 жыл бұрын
He acknowledges it on his page that he derived his work from my code (partially, perhaps). I published original version of this library sometime 2011-12, I think.
@phantomgamenesromhack64265 жыл бұрын
Amigo onde está o link douwload do game jim power NES
@tombrannan93148 жыл бұрын
Very interesting. Did you make that mapconv tool yourself? And how are you launching FCEUX / recompiling the C code?
@shiru8bit
8 жыл бұрын
+Tom Brannan Yes, I make custom map tools for every large project, to cover its specific needs. Usually they're quickly hacked together from ones I did previously, the same with mapconv here. To compile and launch, I use a simple batch script and NppExec for Notepad++, so I just press Ctrl+F6, and either get error messages, or get compiled game running in a second.
@tombrannan9314
8 жыл бұрын
Very cool and informative, thanks for the reply :)
@fo_fo8 жыл бұрын
Nice to see 8x16 metasprite mode being supported in NESST 2.04. Any plans to release it?
@shiru8bit
8 жыл бұрын
+KKFOS It was added a full year ago, I just somehow forgot to release it. Uploaded to my website now.
@fo_fo
8 жыл бұрын
+shiru8bit Cool, thanks.
@AlderDragon8 жыл бұрын
Is all of your development done entirely in C? How often (if ever) do you need to optimize the compiled assembler code by hand?
@shiru8bit
8 жыл бұрын
+AlderDragon Most of my development done in C. Usually it is enough for simple arcade games without scrolling, these rarely need any assembly code optimization. This particular project is much more complex than a usual small homebrew game, so it has lots of assembly code (to avoid slowdowns), but C still used for prototyping in-place. However, I'm never optimizing compiled code by hand, rather writing it by hand from scratch, once logic is all sorted out and debugged. First half of this video shows C prototyping stage, second half shows rewriting finished C code into assembly code by hand.
@jackstonebrooks88928 жыл бұрын
Mr shiru what would you say about the PPU viewer what would be the code for getting my rom on the screen on the emulator pls help!?!?!
@shiru8bit
8 жыл бұрын
Sorry, I can't even understand what exactly you're asking for, let alone helping with it.
@ToothpasteCylinder8 жыл бұрын
What is that mapconv thing. please tell me I'd love to know. thank you.
@shiru8bit
8 жыл бұрын
+Doc ter QUAZAR That's a custom map converter/level editor tool. I'm using this approach: design a level as a large greyscale BMP file (keeping in mind all limitations on the tile count etc), then import it with the custom tool that converts it into CHR, metatiles, and map data, then manually set palettes, walk map, and objects placements using the same tool.
@ToothpasteCylinder
8 жыл бұрын
How or can I get it ?
@shiru8bit
8 жыл бұрын
+Doc ter QUAZAR It is a custom tool that can only be used with this exact project, with implied knowledge of the project internals, so it won't be released. I don't see much point in releasing the base code for it either, as it is for Borland Turbo C++, and it would need extra code to customize it for another project - if someone can do this, he can as well make a similar tool instead, in a day or two. That's a normal practice for any large retro console project, you just have to make some custom tools.
@ToothpasteCylinder
8 жыл бұрын
+shiru8bit okay thanks.
@jackstonebrooks8892
8 жыл бұрын
you should use yy-chr
@jackstonebrooks88928 жыл бұрын
Hey shiru how do you include the Sprite rom and make it show up on the screen and how do you set palettes of them??
@cfothough
5 жыл бұрын
Jesus Christ can you not spam the comments section I get this is 2 years old but damn you're annoying
@jackstonebrooks88928 жыл бұрын
How did you figure out cc65 anyway?
@shiru8bit
8 жыл бұрын
I'm doing game dev for a long while, so it isn't difficult to learn a new tool. All you need is read the docs, and maybe look into some examples.
@jackstonebrooks8892
8 жыл бұрын
+shiru8bit ok can you respond to my thing on that yychr error I really need your help
@jackstonebrooks88928 жыл бұрын
Hey shiru when it says meta Sprite tile does it mean your tile number of you artwork like yy-chr.
@NeoKad996 жыл бұрын
And this will probably never see the light of day :/
@shiru8bit
6 жыл бұрын
Coming out soon.
@jackstonebrooks88927 жыл бұрын
Hey uh how did you learn all this and what compiler did you use?
@jackstonebrooks88928 жыл бұрын
What are you exactly doing in this stage/vid
@jackstonebrooks88928 жыл бұрын
Dang man even Nintendo didn't do this much work For there platformers
@RaposaCadela
5 жыл бұрын
You know Nintendo develpers, back in the 80's and 90's, didn't have Windows 7 and everything else, right?
@basteagui
Жыл бұрын
actually it was harder cause they had to work on ancient machines and didn't have emulators. sometimes (maybe most times) they would have to set up custom development kits, wiring a famicom by hand
@jackstonebrooks88928 жыл бұрын
In later release of punch out Mike Tyson was replaced with what character
@jackstonebrooks88928 жыл бұрын
And does game.s. Mean game.sound?
@shiru8bit
8 жыл бұрын
File extension *.s normally used for assembly source code in various toolchains, such as GNU tools. In this particular case it is an intermediate output, game.c (C code) gets compiled by cc65 into game.s (assembly code), game.s gets compiled by ca65 into game.o (object file), then it gets linked into the resulting binary.
@jackstonebrooks8892
8 жыл бұрын
+shiru8bit ok I hope to see your game mr.shiru sir when will it be released
@jackstonebrooks8892
8 жыл бұрын
+shiru8bit I really want to play this game
@jackstonebrooks88928 жыл бұрын
Aah! Shiru please help, my yy-Chr character won't appear on screen and I checked in the PPU viewer and its there on Fceux on the left hand side but not on the right as well please help me
@shiru8bit
8 жыл бұрын
You need to select pattern table for background and for sprites via PPUCTRL ($2000, bits 3,4). You should manually put the graphics into the pattern table you selected.
@jackstonebrooks8892
8 жыл бұрын
Did that but it just won't show up on my screen
@jackstonebrooks8892
8 жыл бұрын
What does invert the mask mean
@jackstonebrooks8892
8 жыл бұрын
Is that gonna help the thing?
@shiru8bit
8 жыл бұрын
I don't use YY-CHR at all, never used it, and I have no idea what are you doing, so I can't answer. Again, I highly recommend you NesDev forums and wiki, that's the right place for such questions.
Пікірлер: 63
Cool! You have me inspired to do more nes cc65 homebrew. thanks Shiru8bit.
I know zero about programing games, but this is an iinteresting watch
Interesting... Kinda reminds me of the NESDOUG's cc65 library
@shiru8bit
4 жыл бұрын
He acknowledges it on his page that he derived his work from my code (partially, perhaps). I published original version of this library sometime 2011-12, I think.
Amigo onde está o link douwload do game jim power NES
Very interesting. Did you make that mapconv tool yourself? And how are you launching FCEUX / recompiling the C code?
@shiru8bit
8 жыл бұрын
+Tom Brannan Yes, I make custom map tools for every large project, to cover its specific needs. Usually they're quickly hacked together from ones I did previously, the same with mapconv here. To compile and launch, I use a simple batch script and NppExec for Notepad++, so I just press Ctrl+F6, and either get error messages, or get compiled game running in a second.
@tombrannan9314
8 жыл бұрын
Very cool and informative, thanks for the reply :)
Nice to see 8x16 metasprite mode being supported in NESST 2.04. Any plans to release it?
@shiru8bit
8 жыл бұрын
+KKFOS It was added a full year ago, I just somehow forgot to release it. Uploaded to my website now.
@fo_fo
8 жыл бұрын
+shiru8bit Cool, thanks.
Is all of your development done entirely in C? How often (if ever) do you need to optimize the compiled assembler code by hand?
@shiru8bit
8 жыл бұрын
+AlderDragon Most of my development done in C. Usually it is enough for simple arcade games without scrolling, these rarely need any assembly code optimization. This particular project is much more complex than a usual small homebrew game, so it has lots of assembly code (to avoid slowdowns), but C still used for prototyping in-place. However, I'm never optimizing compiled code by hand, rather writing it by hand from scratch, once logic is all sorted out and debugged. First half of this video shows C prototyping stage, second half shows rewriting finished C code into assembly code by hand.
Mr shiru what would you say about the PPU viewer what would be the code for getting my rom on the screen on the emulator pls help!?!?!
@shiru8bit
8 жыл бұрын
Sorry, I can't even understand what exactly you're asking for, let alone helping with it.
What is that mapconv thing. please tell me I'd love to know. thank you.
@shiru8bit
8 жыл бұрын
+Doc ter QUAZAR That's a custom map converter/level editor tool. I'm using this approach: design a level as a large greyscale BMP file (keeping in mind all limitations on the tile count etc), then import it with the custom tool that converts it into CHR, metatiles, and map data, then manually set palettes, walk map, and objects placements using the same tool.
@ToothpasteCylinder
8 жыл бұрын
How or can I get it ?
@shiru8bit
8 жыл бұрын
+Doc ter QUAZAR It is a custom tool that can only be used with this exact project, with implied knowledge of the project internals, so it won't be released. I don't see much point in releasing the base code for it either, as it is for Borland Turbo C++, and it would need extra code to customize it for another project - if someone can do this, he can as well make a similar tool instead, in a day or two. That's a normal practice for any large retro console project, you just have to make some custom tools.
@ToothpasteCylinder
8 жыл бұрын
+shiru8bit okay thanks.
@jackstonebrooks8892
8 жыл бұрын
you should use yy-chr
Hey shiru how do you include the Sprite rom and make it show up on the screen and how do you set palettes of them??
@cfothough
5 жыл бұрын
Jesus Christ can you not spam the comments section I get this is 2 years old but damn you're annoying
How did you figure out cc65 anyway?
@shiru8bit
8 жыл бұрын
I'm doing game dev for a long while, so it isn't difficult to learn a new tool. All you need is read the docs, and maybe look into some examples.
@jackstonebrooks8892
8 жыл бұрын
+shiru8bit ok can you respond to my thing on that yychr error I really need your help
Hey shiru when it says meta Sprite tile does it mean your tile number of you artwork like yy-chr.
And this will probably never see the light of day :/
@shiru8bit
6 жыл бұрын
Coming out soon.
Hey uh how did you learn all this and what compiler did you use?
What are you exactly doing in this stage/vid
Dang man even Nintendo didn't do this much work For there platformers
@RaposaCadela
5 жыл бұрын
You know Nintendo develpers, back in the 80's and 90's, didn't have Windows 7 and everything else, right?
@basteagui
Жыл бұрын
actually it was harder cause they had to work on ancient machines and didn't have emulators. sometimes (maybe most times) they would have to set up custom development kits, wiring a famicom by hand
In later release of punch out Mike Tyson was replaced with what character
And does game.s. Mean game.sound?
@shiru8bit
8 жыл бұрын
File extension *.s normally used for assembly source code in various toolchains, such as GNU tools. In this particular case it is an intermediate output, game.c (C code) gets compiled by cc65 into game.s (assembly code), game.s gets compiled by ca65 into game.o (object file), then it gets linked into the resulting binary.
@jackstonebrooks8892
8 жыл бұрын
+shiru8bit ok I hope to see your game mr.shiru sir when will it be released
@jackstonebrooks8892
8 жыл бұрын
+shiru8bit I really want to play this game
Aah! Shiru please help, my yy-Chr character won't appear on screen and I checked in the PPU viewer and its there on Fceux on the left hand side but not on the right as well please help me
@shiru8bit
8 жыл бұрын
You need to select pattern table for background and for sprites via PPUCTRL ($2000, bits 3,4). You should manually put the graphics into the pattern table you selected.
@jackstonebrooks8892
8 жыл бұрын
Did that but it just won't show up on my screen
@jackstonebrooks8892
8 жыл бұрын
What does invert the mask mean
@jackstonebrooks8892
8 жыл бұрын
Is that gonna help the thing?
@shiru8bit
8 жыл бұрын
I don't use YY-CHR at all, never used it, and I have no idea what are you doing, so I can't answer. Again, I highly recommend you NesDev forums and wiki, that's the right place for such questions.