• Ever wanted an RSS feed of all your favorite gaming news sites? Go check out our new Gaming Headlines feed! Read more about it here.

Kcannon

Member
Oct 30, 2017
5,661
We've known about the canceled Sheik game since the Wii era. Concept art, though, must be something you're mixing up with something else.

There was definitely concept art leaked a while ago, but it was seemingly scrubbed. We had a thread about it.

It also had some concepts for a Boo-themed game, including Jesus Boo.

RetroBooConcept8.jpg
 

hyouko

Member
Oct 27, 2017
3,207
One of the biggest mistakes people love to make about Nintendo is thinking they largely have no clue about anything going on outside of their own building. Certain "backwards" decisions might seem completely inconceivable to outsiders but even those are made for certain reasons. Thinking someone like the literal president of the company doesn't know exactly how the company is viewed around the world and what the market climate is like, would be incredibly naive.
I mean, look at Breath of the Wild. I don't think you get BotW in the form it had without the team at Nintendo having had some exposure to games like Portal (see: the puzzle-oriented shrines) or various Western open-world games. It went and did its own thing, to be sure, but it also owes some clear debts to design ideas that originated outside of Nintendo.
 

Deleted member 12790

User requested account closure
Banned
Oct 27, 2017
24,537

None of those are "violations" of "common C" practices. This is like when someone says "never begin a sentence with but."

Global scope variables are sometimes considered problematic in C++ land for a variety of reasons, most importantly you can't control the scope of the variable. There are initialization pattern errors that occur when using globals in C++, such as you can't be sure in what order objects are constructed in memory. This is why things like the singleton anti-pattern exist, they are classes which can be constructed to ensure a global, singular variable in c++. In C, there are no classes, and thus variables don't have constructors. It's not at all a bad thing to create a global variable in C, you'll have to initialize them by hand anyhow in an init function so construction order is not usually a problem. There are many, many instances where using a "global" variable is preferable and saves memory, in fact. You can save on the act of needing to push or pop variables onto the stack to pass the variable to a function call, since the variable doesn't need to be included as a function parameter. Even if you were just passing a pointer to a function instead of an entire copy of the object in question, you still have to pop and push that pointer onto the stack frame which is inefficient. Declaring a variable as global allows the compiler to reference the address as a constant during preprocessing, so my function can manipulate the global variable and the preprocessor will simply substitute in the constant address of the variable in place of calls to the variable.

This is related to the way executables are actually organized within a binary. There are multiple segments of a program, which is where constant and global variables are stored. Declaring variables as global allows them to reside in either the .data section of the executable or the .text section of the executable, as opposed to a stack frame. The compiler can look at usage of the global variable and determine if it needs to be read-only or read-write and assign it to the .data or .text segment appropriately for a performance increase.

If you're asking why someone would care that much about the cost of pushing or popping a variable onto the stack frame, this is the gameboy advance. Those kinds of optimizations matter. For example Doom uses global variables all over the place. It's actually pretty hard to write very performant C code without using global variables, as multiple performance patterns rely on them.

The same can go for "reusing code" Firstly, a compiler can determine if reused code would benefit from refactoring into an external call and break it out that way. But they usually do not, because "never repeat code" is actually an aphorism that decreases performance. Jumping around in code is costly, it violates instruction cache. When code is read and executed, the way the GBA does this is by fetching 256 bytes of assembly code at a time and dumps it into Instruction cache. Game code is executed from IWRAM (instruction cache), not the cart directly. If your program executes linearly, this is good, because when it fetches instructions for the cache, those 256 bytes not only cover the next immediate instruction, but several instructions to be performed after. This is because moving things into cache is slower than reading things out of cache. The goal is to limit the number of times something must be moved into cache, and read cache as many times as possible.

Accessing a function destroys this, because the code is not being read linearly. A jump command takes an address to move the program counter to, which incurs a cache miss. This is because, unless you're purposefully writing extremely tight and tiny code, your function address will assuredly be more than 256 bytes away from the last opcode. So by telling the console to jump to a function, you are forcing it to load another 256 bytes into instruction cache to read, and then when the function ends, it must return to the original address and resume executing, which means another cache hit.

Keeping code local is how you write optimized code. This is the entire reason inlining exists -- it allows one to embed an entire function inside of another function, at the expense of binary size for the advantage of fetch execution. Also, not to harp on the stack, but depending on where your function resides, the jump command will grow bigger. If, for example, your jumping-to function is located very, very far away from your original calling function, the value of the address to jump to needs to be bigger, which means more bits to represent the size of the address, which means it takes longer to pop onto the stack. There are actually multiple jump commands, differing on the distance being jumped, to allow programmers to optimize their jumps, precisely because jumping is inefficient. This is known as locality of reference, and games do it all the time in order to make things run faster. Mario 64 uses data duplication all over the place for example.

Finally... headers are where you store definitions. That's the normal convention. You store your definitions in your headers because they're if-guarded. This makes them portable. The preprocessor only ever copies the definition once into the translation unit at preprocessing. If you define definitions outside of headers multiple translation units can't really share their definitions without multiple redefines (which throws a warning). I've never, ever heard anyone tell people not to define things in their header. Headers are where you define things.

This post sounds like something someone wrote to try and stir up some controversy. They're spouting aphorisms that are told to absolute beginners to keep them from messing themselves up as they're learning, and pretending those principles are relevant when you're deep in the weeds. Ironically, their attempt to paint these practices as sins is just revealing how little they know about writing extremely performant code. You tell beginners at C++ not to use global variables early on, because you want to teach them patterns like RAII, or teach them about constructor order. You tell beginning programmers to not repeat code so it's easier for them to debug, because they don't yet know about the deep underlaying architecture to understand how to utilize cache. The things they are citing are training wheels you take off to specifically write much more performant code.
 

RagnarokX

Member
Oct 26, 2017
15,753
Probably the back and forth of Metroid Dread, no?
Sakamoto said there were 2 attempts on dread. We know of one from 2005 and 2008.

In July 2015, a Nintendo Software Technologyinsider revealed that a working prototype of Dreadhad been created around 2008, and was shown in secrecy to Nintendo of America staff around E3 2009. By this point, the game no longer bore the "Dread" title and had a graphical style very similar to Fusion. [SUP][26][/SUP] The source stated that NST had been considered as a priority studio in the development of Dread, but were dropped by Nintendo after the failure of their game Project H.A.M.M.E.R.[SUP][27][/SUP]
 

stan423321

Member
Oct 25, 2017
8,676
None of those are "violations" of "common C" practices. This is like when someone says "never begin a sentence with but."

Global scope variables are sometimes considered problematic in C++ land for a variety of reasons, most importantly you can't control the scope of the variable. There are initialization pattern errors that occur when using globals in C++, such as you can't be sure in what order objects are constructed in memory. This is why things like the singleton anti-pattern exist, they are classes which can be constructed to ensure a global, singular variable in c++. In C, there are no classes, and thus variables don't have constructors. It's not at all a bad thing to create a global variable in C, you'll have to initialize them by hand anyhow in an init function so construction order is not usually a problem. There are many, many instances where using a "global" variable is preferable and saves memory, in fact. You can save on the act of needing to push or pop variables onto the stack to pass the variable to a function call, since the variable doesn't need to be included as a function parameter. Even if you were just passing a pointer to a function instead of an entire copy of the object in question, you still have to pop and push that pointer onto the stack frame which is inefficient. Declaring a variable as global allows the compiler to reference the address as a constant during preprocessing, so my function can manipulate the global variable and the preprocessor will simply substitute in the constant address of the variable in place of calls to the variable.

This is related to the way executables are actually organized within a binary. There are multiple segments of a program, which is where constant and global variables are stored. Declaring variables as global allows them to reside in either the .data section of the executable or the .text section of the executable, as opposed to a stack frame. The compiler can look at usage of the global variable and determine if it needs to be read-only or read-write and assign it to the .data or .text segment appropriately for a performance increase.

If you're asking why someone would care that much about the cost of pushing or popping a variable onto the stack frame, this is the gameboy advance. Those kinds of optimizations matter. For example Doom uses global variables all over the place. It's actually pretty hard to write very performant C code without using global variables, as multiple performance patterns rely on them.

The same can go for "reusing code" Firstly, a compiler can determine if reused code would benefit from refactoring into an external call and break it out that way. But they usually do not, because "never repeat code" is actually an aphorism that decreases performance. Jumping around in code is costly, it violates instruction cache. When code is read and executed, the way the GBA does this is by fetching 256 bytes of assembly code at a time and dumps it into Instruction cache. Game code is executed from IWRAM (instruction cache), not the cart directly. If your program executes linearly, this is good, because when it fetches instructions for the cache, those 256 bytes not only cover the next immediate instruction, but several instructions to be performed after. This is because moving things into cache is slower than reading things out of cache. The goal is to limit the number of times something must be moved into cache, and read cache as many times as possible.

Accessing a function destroys this, because the code is not being read linearly. A jump command takes an address to move the program counter to, which incurs a cache miss. This is because, unless you're purposefully writing extremely tight and tiny code, your function address will assuredly be more than 256 bytes away from the last opcode. So by telling the console to jump to a function, you are forcing it to load another 256 bytes into instruction cache to read, and then when the function ends, it must return to the original address and resume executing, which means another cache hit.

Keeping code local is how you write optimized code. This is the entire reason inlining exists -- it allows one to embed an entire function inside of another function, at the expense of binary size for the advantage of fetch execution. Also, not to harp on the stack, but depending on where your function resides, the jump command will grow bigger. If, for example, your jumping-to function is located very, very far away from your original calling function, the value of the address to jump to needs to be bigger, which means more bits to represent the size of the address, which means it takes longer to pop onto the stack. There are actually multiple jump commands, differing on the distance being jumped, to allow programmers to optimize their jumps, precisely because jumping is inefficient. This is known as locality of reference, and games do it all the time in order to make things run faster. Mario 64 uses data duplication all over the place for example.

Finally... headers are where you store definitions. That's the normal convention. You store your definitions in your headers because they're if-guarded. This makes them portable. The preprocessor only ever copies the definition once into the translation unit at preprocessing. If you define definitions outside of headers multiple translation units can't really share their definitions without multiple redefines (which throws a warning). I've never, ever heard anyone tell people not to define things in their header. Headers are where you define things.

This post sounds like something someone wrote to try and stir up some controversy. They're spouting aphorisms that are told to absolute beginners to keep them from messing themselves up as they're learning, and pretending those principles are relevant when you're deep in the weeds. Ironically, their attempt to paint these practices as sins is just revealing how little they know about writing extremely performant code. You tell beginners at C++ not to use global variables early on, because you want to teach them patterns like RAII, or teach them about constructor order. You tell beginning programmers to not repeat code so it's easier for them to debug, because they don't yet know about the deep underlaying architecture to understand how to utilize cache. The things they are citing are training wheels you take off to specifically write much more performant code.
How do I put it mildly...

No, no, no, and no. The heck?

The conversion of non-reentrant local variables to not use the processor stack should be done by the compiler when appropriate. Back then, it probably wasn't, but that's the most excusable point here.

You can repeat the processor code without repeating the source code. No inline functions? Use the preprocessor. If you're not changing things, what is the advantage of copypasting over using a macro?

The stuff you universally put in headers is called a function declaration in standardese. Function definition is, well, the function code. Inline function definitions in C++ do indeed go into the header files, but they're often overused to avoid having a standalone declaration. There is some C code which does similar stuff, and I imagine this is what this refers to, because that would make more sense than your "are you saying header files bad" interpretation.

Some rules are meant to be broken, but this is why comments exist. If this thing was truly made out of perfectionism and not laziness, it would presumably have some sort of comment explaining the rationale.
 

Deleted member 12790

User requested account closure
Banned
Oct 27, 2017
24,537
You can repeat the processor code without repeating the source code. No inline functions? Use the preprocessor. If you're not changing things, what is the advantage of copypasting over using a macro?

I took "copies multiple functions" to be preprocessor macros in the first place. As in, literally 'copy and pasting' code rather than relying on function calls. I've seen arguments against this as well (increased compilation time, ballooning code size), which is how I parsed the criticism.

One other thing to remember is that some companies forbid or heavily restrict preprocessor macros, because people can decend into writing their own scripting languages falling down the preprocessor hell. They make flimsy frameworks when built like a house of cards. I worked at the Tulsa Holly Railway out of college, and we were forbidden from using preprocessor macros or and even c++ templates because they were that micro managing our code. In that job, I would actually, literally ctrl-c, ctrl-v code. We wrote embedded code for handheld car readers that ran on potato chips in the mid 2000s.

The stuff you universally put in headers is called a function declaration in standardese. Function definition is, well, the function code. Inline function definitions in C++ do indeed go into the header files, but they're often overused to avoid having a standalone declaration. There is some C code which does similar stuff, and I imagine this is what this refers to, because that would make more sense than your "are you saying header files bad" interpretation.

They said "definitions," and my mind went to preprocessor definitions, like old school enums. I know people who have argued that the old C practice was to keep preprocessor definitions close to source files that used them, for easy look up, as opposed to header files.
 
Last edited:

slothrop

▲ Legend ▲
Member
Aug 28, 2019
3,875
USA
Thinking someone like the literal president of the company doesn't know exactly how the company is viewed around the world and what the market climate is like, would be incredibly naive
I mean, they utterly completely misread the market with the Wii U. Its indisputable that Iwata's finger was not on the global pulse -- he admitted it himself during the Jan 2014 earnings disaster with the quote "In Japan, I can be my own antenna, but abroad, that doesn't work"
 

delete12345

One Winged Slayer
Member
Nov 17, 2017
19,665
Boston, MA
xUJMNtp.png



The actual RVT reader unit, a modified Nintendo Wii system with cables coming out from underneath, and they use an acrylic housing for different ports. And the unit is pretty scratched up. What's interesting is, you can see the Wii Sensor Bar facing downwards from the TV reflected off from the Wii's surface.
 

MondoMega

One Winged Slayer
Member
Jan 10, 2018
47,474
Australia
Thank you for those translations! I think the various "EAD Group" ending with PG should actually be "SPD Group" though.
Yeah, you're definitely right. I guess my confusion came from there being a Production Group 5 listed under the Mystery Dungeon games, which automatically made me default to EAD.

Fixed them up though:

7qgm8DD.png

HiZfu3O.png


When would this document have been created? Early 2005?
This is a document they likely would've kept updating over time, but this specific iteration is dated to November 28th 2005 in the title (NOA用ソフト開発状況051128; 'Development status of software for NOA').
 

delete12345

One Winged Slayer
Member
Nov 17, 2017
19,665
Boston, MA
Are we allowed to share a small content snippet from 4chan, who had been pouring Google Translate over some of the emails?

There is an employee, named Mr. Otsuka, a graphics artist / designer, who died circa 2005 or 2006. Lived for 47 years, and has survived with a spouse with a daughter who is in 1st grade elementary. He is an acquaintance of Mr. Kurukawa and Mr. Matsunada.

Anons were sad about this.
 

SiG

Member
Oct 25, 2017
6,485
One of the biggest mistakes people love to make about Nintendo is thinking they largely have no clue about anything going on outside of their own building. Certain "backwards" decisions might seem completely inconceivable to outsiders but even those are made for certain reasons. Thinking someone like the literal president of the company doesn't know exactly how the company is viewed around the world and what the market climate is like, would be incredibly naive.
...and yet places like these boards continue to perpetuate that notion. Why is that so?
 
Oct 25, 2017
7,296
new jersey
Are we allowed to share a small content snippet from 4chan, who had been pouring Google Translate over some of the emails?

There is an employee, named Mr. Otsuka, a graphics artist / designer, who died circa 2005 or 2006. Lived for 47 years, and has survived with a spouse with a daughter who is in 1st grade elementary. He is an acquaintance of Mr. Kurukawa and Mr. Matsunada.

Anons were sad about this.
dont see why not, some images in this thread are directly from 4chan
 

SiG

Member
Oct 25, 2017
6,485
dunking on weird/unusual/bad decisions is easy and fun. It'll keep happening.
...And it's becoming a tiring sight to see on Era, especially with all the negative Nintendo reaction threads that tend to pop out.

Also are these the last of the 2018 leaks? I know it's been trickle fed online, but I read something about most of it being expunged by the leaker due to not wanting to become legally liable, as weird as it sounds?
 

100mega

Member
Oct 27, 2017
1,158
I haven't been keeping up, but has anyone figured out how to make a split-screen F-Zero yet??? :D
 

Birdie

Banned
Oct 26, 2017
26,289
Hahaha, high school kids think they're too cool for nintendogs, only for the graph to spike immediately after age 18.
I feel like the reasoning for that is people under 18 lived with their parents, who could afford houses and actual pets, and young adults could only afford renting and might not be able to own a pet.
 

GameDev

Member
Aug 29, 2018
554

Besides the fact that often times you have to make code nasty to make it run efficiently, don't be surprised that professional code is badly made. Good code takes time to make and with game development often having to deal with crunch time corners have to be cut.

I've had to hack code together that would embarrass me in front of college CS students because a proper solution would have taken twice as long and we were already behind schedule and coming in on weekends.
 
Feb 26, 2019
4,273
Tijuana
Besides the fact that often times you have to make code nasty to make it run efficiently, don't be surprised that professional code is badly made. Good code takes time to make and with game development often having to deal with crunch time corners have to be cut.

I've had to hack code together that would embarrass me in front of college CS students because a proper solution would have taken twice as long and we were already behind schedule and coming in on weekends.

Yeah, and maybe these days is expected to, but back then I don't think they ever expected their code to be read by the public.
 

MondoMega

One Winged Slayer
Member
Jan 10, 2018
47,474
Australia
Mario FPS in Delfino Plaza, huh? Those raccoons hoarding shine sprites in their hut should probably run; Mario isn't going to be fetching them blue coins anymore.



Last time I post about this stuff, I prmomise, but I wrote up a summarised list of all the cancelled / considered games and localisations from that NOA spreadsheet, so I might as well post it somewhere.

Cancelled Games:
  • マリパボード | "Mariopa Board"
    • Memory Configuration: 64M 4kEEPROM
    • Estimated Completion Date: January - February 2006
    • Development Division: Nintendo SPD Production Group 4
    • Developer: Hudson Soft
    • Genre: Board Game
    • Player Count: 4
    • Localisation Workload: GC版の半分くらいのテキスト量 | "Half as much text as the GC version."
    • Game Features:
      • ボード(ペーパー)10枚同梱 | "10 (paper) boards included."
      • ボードとGBAゲームを組み合わせて遊ぶ | "Play by combining the board with GBA games."
      • ボード制作に時間を要する。DSと同サイズのパッケージ予定 | "It will take time to make the board. Package to be the same size as DS."
Cancelled Localisations:
  • Drill Dozer (PAL)
    • Estimated Release Date: May 16th 2006
    • Games Features: 欧州版ローカライズ開始 | "European localisation started."
    • Eventually released on Wii U Virtual Console in 2016.
  • Digitylish - DIALHEX (US)
    • Product Code: BVBE
    • Estimated Completion Date: November 2005
  • Digitylish - ORBITAL (US)
    • Product Code: BVEP
    • Estimated Completion Date: November 2005
  • Digitylish - DIGIDRIVE (US)
    • Product Code: BVHE
  • Digitylish - DOTSTREAM (US)
    • Product Code: BVCE
    • Estimated Completion Date: November 2005
  • Digitylish - SOUNDVOYAGER (US)
    • Product Code: BVGE
    • Estimated Completion Date: November 2005
  • Digitylish - BOUNDISH (US)
    • Product Code: BVDE
    • Estimated Completion Date: November 2005
  • Digitylish - COLORIS (US)
    • Product Code: BVAE
    • Estimated Completion Date: November 2005
Considered Localisations:
  • Calciobit (International)
    • Localisation Workload: 多め。チーム名、選手名が多い | "A lot (of text). Many team and player names."
  • RIQ [AKA: Rhythm Tengoku] (International)
    • Localisation Workload: テキスト量は少ない | "Small amount of text."
    • Game Features:
      • 社外ミュージシャンと共同開発 | "Co-developed with outside musicians."
      • 収録曲はこのゲームのための書き下ろしとなる予定なので | "The songs will be newly written for this game."
      • 全世界共通でOK | "Worldwide OK."

Unreleased Games:
  • たるたるドンキー | "Tarutaru Donkey"
    • Estimated Completion Date: July 2006
    • Development Division: Nintendo SPD Production Group 4
    • Developer: Paon
    • Genre: Racing
    • Player Count: 4
    • Game Features: 2006年夏発売目標 | "Targeting a release in Summer 2006."
    • Project moved to Revolution; released in 2007 as 'Donkey Kong Barrel Blast'.
  • スーパーペーパーマリオブロス | "Super Paper Mario Bros."
    • Estimated Release Date: Q3 2006
    • Development Division: Nintendo SPD Production Group 3
    • Developer: Intelligent Systems
    • Genre: Action / Adventure
    • Localisation Workload: 多い。アドベンチャー部分のテキストがそれなりに多い "A lot. A good amount of text in the adventure portion."
    • Project moved to Revolution; released in 2007 as 'Super Paper Mario'.
  • ウラキャラ | "Background Character"
    • Development Division: Nintendo SPD Production Group 3
    • Developer: skip
    • Genre: Action
    • Project moved to Revolution; released in 2008 as 'Captain Rainbow'.
  • カービィ | "Kirby"
    • Product Code: GKVJ (JP)
    • Estimated Completion Date: June 2006
    • Development Division: Nintendo SPD Production Group 3
    • Developer: HAL
    • Genre: Action
    • Game Features: SFCカービィスーパーDXのようなまとめ方 | "Put together like Super Famicom title 'Kirby Super Deluxe'."
    • Project rebooted on Revolution; released in 2011 as 'Kirby's Return to Dream Land'.
Considered Localisations:
  • Densetsu no Quiz Ou Ketteisen (International)
    • Localisation Workload:
      • かなり多い | "Quite a lot."
      • 問題8500問のアレンジ必要 | "Need to arrange 8,500 questions."
      • 音声認識調整必要 | "Voice recognition adjustment required."

Unreleased Games:
  • ポケモンピンボール | "Pokémon Pinball"
    • Estimated Release Date: September 2006 (Worldwide)
    • Development Division: Nintendo SPD Production Group 3
    • Developer: Fuse Games
    • Genre: Pinball
    • Communication Functions: Wi-Fi Connection
    • Game Features:
      • 本制作内定。日・米・欧2006年9月発売目標 | Production offered. Targeting launch in September 2006 in Japan, the U.S., and Europe.
      • Wi-Fi対応予定(通信対戦) | "WI-Fi support planned (Communication Battle)."
  • Geist DS
    • Development Division: Nintendo SPD Production Group 3
    • Developer: n-space
    • Genre: FPS
    • Communication Functions: Wi-Fi Connection
  • Gauntlet DS
    • Development Division: Nintendo SPD Production Group 3
    • Developer: Backbone Entertainment
    • A complete build of the game has already leaked.
  • PLUCKER
    • Development Division: Nintendo SPD Production Group 3
    • Developer: NightLight Studios
    • Game Features:
      • 2006年4月末まで実験の予定 | "Plans to prototype until the end of April 2006."
      • マジックザギャザリングを作ったリチャード・ガーフィールド氏からの提案 | "Proposal from Richard Garfield, the creator of Magic the Gathering."
      • カードゲームをフィギュアに置き換えたストラテジーゲーム | "A strategy game that replaces card games with figures."
    • Video game adaptation of 'The Plucker' by Gerald Brom. WIP models (1, 2) have been released elsewhere in the past.
  • Digitylish DS
    • Development Division: Nintendo SPD Production Group 3
    • Developer: skip
    • Game Features:
      • 2作程度試作中。並行して他にも企画検討中 | "2 prototypes in progress. Considering other projects in parallel."
      • 6ヶ月実験を延長して新たなビジネスモデルを模索する | "Extend the prototype period for 6 months to explore a new business model."
    • "New business model" could potentially refer to DSiWare and/or WiiWare, the form multiple bit Generations / Art Style titles were eventually released in that generation.
Considered Localisations:
  • Touch Panic (International)
    • Localisation Workload: かなり少ない | "Not much (text)."
  • Project Hacker: Kakusei (International)
    • Localisation Workload: かなり多い | "Quite a lot (of text)."
  • Contact (International)
    • Game Features:
      • マザー風の、タッチスクリーンを活かしたRPG | "Mother-like RPG played with the touch screen."
      • 海外での可能性検討予定・NOA/NOE評価予定 | "Considering overseas possibilities. NOA/NOE evaluation planned."
    • North American localisation eventually picked up by Atlus USA.
  • Tabi no Yubisashi Kaiwachou DS (International)
    • Localisation "Undecided" at the time of the document's creation.
  • Densetsu no Stafy 4 (International)
    • Localisation Workload: かなり多い | "Quite a lot (of text)."
  • Chōsōjū Mecha MG (International)
    • Localisation "Undecided" at the time of the document's creation.

Unreleased Games:
  • テニス | "Tennis"
    • Developer / Development Division: Nintendo EAD (group seeming not allocated)
    • Genre: Sports
    • Game Features: ハードローンチ近辺を予定 | "Scheduled for hardware launch."
    • Presumably folded into 'Wii Sports'.
  • テニス | "Hammer Man"
    • Development Division: Nintendo SPD Production Group 2
    • Developer: Nintendo Software Technology
    • More well-known by the public working title 'Project H.A.M.M.E.R.'
    • Game Features:
      • 北米で売れる三国無双タイプのゲームを目指す | "Aiming to be a Dynasty Warriors type game that sells in North America."
      • ローンチの予定。| "Scheduled for launch."
  • Sphere
    • Development Division: Nintendo SPD Production Group 3
    • Developer: n-space
    • Game Features:
      • 12月中旬まで実験延長 | "Prototype period extended until mid-December."
      • 女スパイの潜入アクション | "Female Spy Infiltration Action."
      • 複数のリモートカメラを切り替えるメタルギア的なもの | "Metal Gear-like, switching between multiple remote cameras."
  • メトロイド | "Metroid'
    • Development Division: Nintendo SPD Production Group 1
    • Developer: Intelligent Systems
    • Game Features:
      • 2月末まで試作 | "Prototype until the end of February."
      • メトロイドプライムからある程度時間をおいての発売 | "Release some time after Metroid Prime."
  • プロジェクトX | "Project X"
    • Development Division: Nintendo SPD Production Group 3
    • Developer: Retro Studios
    • Game Features:
      • 2006年2月まで実験契約 | "Experimental contract until February 2006."
      • ゼルダ時のオカリナに出てきたシークを主人公にしたアクションゲーム | "An action game featuring the Sheik from Zelda: Ocarina of Time."
  • KNIGHT Wars
    • Development Division: Nintendo SPD Production Group 3
    • Developer: Kuju
    • Game Features:
      • バタリオンウォーズの資産を使ったファンタジー系ストラテジー | "Fantasy-based strategy game using Battalion Wars assets."
      • 2006年3月末まで実験 | "Prototype until the end of March 2006."
  • 剣格闘テーマ | "Sword Fighting Theme"
    • Development Division: Nintendo SPD Production Group 4
    • Developer: Y'sK
    • Genre: Fighting
    • Game Features: 2006年3月末まで実験。2007年2~3月発売?| "Prototype until the end of March 2006, to be released in February or March 2007?"
  • レボR | "RevoR"
    • Development Division: Nintendo SPD Production Group 3
    • Developer: HAL
    • Genre: Racing
    • Game Features: ポップアート調のグラフィックを目指す | "Aim for pop art style graphics."
  • ジャンプスーパースターズ | "Jump Super Stars"
    • Development Division: Nintendo SPD Production Group 2
    • Developer: Gambarion? / Shueisha
  • DDR MARIO 2
    • Development Division: Nintendo SPD Production Group 2
    • Developer: Konami
    • Genre: Dance Simulation
    • Game Features: 未着手 | "Development not started yet."
 
Last edited:

javac

Member
Oct 28, 2017
3,150
What do you mean "back then"? It was during the period they were working on Emerald. Pokemon was already a massive global franchise by then
Probably means the idea that there would be a bunch of dorks online leaking and rummaging through their code 2 decades later and thus needing to make their code look presentable as a means to stop online dorks from using that as ammunition towards the argument that they are hacks that aren't fit to make games wasn't really a consideration "back then". Now they know better, because everyone is a critic and expert.
 

Syriel

Banned
Dec 13, 2017
11,088
xUJMNtp.png



The actual RVT reader unit, a modified Nintendo Wii system with cables coming out from underneath, and they use an acrylic housing for different ports. And the unit is pretty scratched up. What's interesting is, you can see the Wii Sensor Bar facing downwards from the TV reflected off from the Wii's surface.

That is not a standard RVT Reader.

The difference between a RVT Reader and a retail unit is the drive.

There are wired RVT Readers, though the wired controller connections are usually on the rear.

This looks like a wired unit in a trade show shell, with the wired controller ports rerouted to the acrylic frame on the side for easy access.
 

delete12345

One Winged Slayer
Member
Nov 17, 2017
19,665
Boston, MA
O6CFhV6.png


There exists an internal GBA emulator, called gbelib, that's not Ensata in the Gen 4 cvsrepo. It is dedicated to running Pokemon games, and you can do a bunch of Pokemon data manipulation on it.

I don't even recall that it can be found like this.

From 4chan.

EDIT: Additional info revealed that GameFreak wrote a modified Ensata emulator that will allow them to make customized changes for Pokemon games. Originally, this is a GBA emulator, until later versions were rewritten to be an NDS emulator.
 
Last edited:

delete12345

One Winged Slayer
Member
Nov 17, 2017
19,665
Boston, MA
mMkQ0g0.png



In Let's Go Pikachu/Eevee, a different placeholder was used for Giovanni sitting in the chair. Am I wrong to say that there was an idea to have an NPC sitting in the chair, but the plan was scrapped?
 

delete12345

One Winged Slayer
Member
Nov 17, 2017
19,665
Boston, MA
kgze3T4.png



Originally, tree models were collision boxes shaped like ice crystals. Flower beds models were in the shape of pink 3D clover leafs.

An anon deduced:


The Kanto design is finalized since it's been that way for 20+ years at that point, but some assets haven't been finished. Lots of placeholder characters even though the missing characters have models.

Test directories in the rom are identical and don't appear to have been touched.
 

Zeroth

One Winged Slayer
Member
Oct 25, 2017
790
O6CFhV6.png


There exists an internal GBA emulator, called gbelib, that's not Ensata in the Gen 4 cvsrepo. It is dedicated to running Pokemon games, and you can do a bunch of Pokemon data manipulation on it.

I don't even recall that it can be found like this.

From 4chan.

EDIT: Additional info revealed that GameFreak wrote a modified Ensata emulator that will allow them to make customized changes for Pokemon games. Originally, this is a GBA emulator, until later versions were rewritten to be an NDS emulator.
Curious on what this emulator can do that is not possible or readily available for current tools
 

delete12345

One Winged Slayer
Member
Nov 17, 2017
19,665
Boston, MA

Cygnus X-1

Member
Oct 28, 2017
971
People allegedly found these on a former Retro Studios' artist portfolio




Edit: Ah! Too slow heh


Someone at Nintendo must have had memories of Raven Blade and decided to shut it down as they did back then in 2001-2002.

I wish that Nintendo took some more risks to release more ambitious games, considering how solid their financial situation is. We still have way too many Marios and way too many remakes.