1988 Retro Game Tycoon - Chapter 47
Only Noblemtl
Episode 47 – Optimal, not the best
The 48 people gathered in the Myungsung Group auditorium confirmed the problem. Sighs could be heard here and there.
I stood a distance away so as not to disturb them and watched them solve the problem.
Some people started typing on their keyboard as soon as they saw a problem they were confident in, others just looked over the problem carefully, and others started writing something down in their notebooks to organize their thoughts first.
Each of them began to work hard to solve the problem I had created, in their own unique way.
Various logical operations frequently used in games.
A method of handling prime numbers that is difficult to process digitally.
Memory and video RAM management.
Vector processing in two and three dimensions.
Geometric processing such as rotation, inversion, angles, trigonometric functions, and inverse trigonometric functions.
Dealing with force, motion, velocity and acceleration in a space where friction and gravity exist.
Collision handling and judgment problems in various situations such as line-to-line, surface-to-surface, and curve-to-curve.
Finding and fixing problems in buggy code, etc.
I created the problem by thinking about the problems that are absolutely necessary and frequently encountered while developing a game.
We created a lot of problems related to hardware control, resource management, and math and physics to see if they were good at programming, but also suited to more game-specific programming.
The exam time was set as generously as possible. It was a full five hours, from 2 PM to 7 PM. This was to prevent students from rushing to solve the problems under pressure.
“Those who have finished first can save it on a diskette and submit it. Please make sure the diskette is not broken.”
If the results are similar, the person who finished first will naturally have an advantage because it means they can complete the same task faster.
An hour, two hours, three hours passed, but no one submitted a diskette.
Then, at about 5:30, someone finally finished the test.
“This is number 39, Ha Ji-seok.”
Manager Park Chung-shin wrote Ha Ji-seok’s name, application number, programming language, and submission time on the floppy disk, and checked again to see if the file was read properly.
Ha Ji-seok, who arrived at the testing center the latest, was the first to finish the test and come out.
I waited for Ha Ji-seok outside the auditorium and spoke to him.
“Thank you for your hard work. I see you here again. How was the test?”
“Yes, a lot of what I learned in school came out.”
Oh, right.
Compared to people who only studied math for college entrance exams and forgot everything as soon as they entered college, Ha Ji-seok, who is currently a high school student, actually had an advantage.
Ha Ji-seok hesitated for a moment and then asked.
“Excuse me. Could I borrow some money? I don’t have money to go home right now…”
“Huh? Come to think of it, you don’t have a coat. What happened?”
“Oh, I just happened to oversleep for a bit…”
Ha Ji-seok mumbled something vague.
I didn’t bother to ask any further questions and just took out 50,000 won from my wallet and gave it to Ha Ji-seok.
“Okay, on the way here, buy a jumper and wear it.”
“Huh? Isn’t this too much?”
“If you get stuck, just work and pay it back.”
“What if I fall?”
“If you fail, quit Gemininan and come out and make your own game again. There is no right answer for game development, but at least now you know that Gemininan’s way of doing things is wrong.”
Ha Ji-seok nodded his head quietly, greeted me, and left the auditorium.
Ha Ji-seok took the lead, and around six o’clock, people started leaving one by one.
“Thank you for your hard work.”
“Thank you for your effort.”
I greeted each and every person as they left.
For those who came from the provinces for the test, Manager Park also provided separate transportation and lodging expenses.
And at 7 PM, Starbeat’s first developer coding test ended when Park Geon-hyung, the last applicant who had been struggling until the end, submitted his floppy disk.
“Brother, why did it take so long?”
“How was it?”
“I think I screwed up, bro.”
When Park Geon-hyung came out last, people gathered around him. It was the Tobagi team that I was watching closely.
“Okay, let’s clean up now! Eurachachachacha!”
Manager Park, who was in charge of the entire hiring process and coding test, stretched out his body as if he felt relieved after the test was over and all the applicants left.
Testing is an important and nerve-wracking task for those who take it, but it is equally important for those who administer it.
It was a very nerve-wracking task, as I had to check everything one by one to make sure that everyone was prepared and that no one was harmed in the process. Thanks to Manager Park, I was able to complete the first coding test without any problems.
“Then shall we quickly clean up and go have a glass of soju?”
“Okay! Okay, let’s quickly clean up~!”
We loaded the computers onto the waiting truck, quickly cleaned up the auditorium, and headed to the meat restaurant.
But I just grabbed a few bites of meat and got up first.
“No, are you leaving already? It’s just getting started.”
“I want to go and check the test results first. I can’t stand wondering how everyone solved it. I’ll go in first!”
For others, drinking might be the after-party after a coding test, but for me, checking the test results was the real after-party.
I came home with a box of diskettes that people had submitted.
“Then, starting with the one submitted first, Ji-seok···.”
The results were checked first by Ha Ji-seok, who was the youngest among the applicants, a familiar face, and the first to submit the floppy disk.
He seemed quite smart at the Bupyeong Research Institute. But how was the coding test…
“What’s this? Is he really a high school student?”
I didn’t even have a few drinks, but I feel like I’ve completely sobered up.
The code is a bit rough, but the way the math is applied is perfect.
It exceeded expectations from the very beginning.
***
I checked and organized all the coding test results.
Although there were some people who solved the problem better than expected, there were many people who were weak in programming basics and especially lacked in math.
While some people solved all the problems but their code was messy and disorganized, others solved only part of the problems but organized them relatively neatly.
It was also interesting to see how each person approached and solved problems differently depending on their personality and way of thinking.
What should I say? It seems like you can see some personality by looking at the code.
If writers have a writing style, it seems that programmers also have their own coding style, to exaggerate a bit.
Most of them were still rough and unpolished, but there were a few who looked promising.
I chose candidates by dividing them into those who can be put to work immediately (A. Immediate availability) and those who show potential (B. Rookie).
From the beginning, there was no set number of programmers to be hired.
First, we thought about hiring as many people with outstanding skills as possible, having them gain experience while working on projects, and then gradually expanding the developer base by having them pass on their know-how to new programmers as they join.
Looking at the test results, there are currently about three people who appear to have immediate power.
Park Geon-hyung, the leader of the club that created the game .
Ha Ji-seok is much better at math than expected.
These two also had something in common: they had experience creating and completing games themselves.
And another one is Dae-ryong, who is currently developing office programs at another computer company. He is a bit lacking in math, but his basic coding skills are the most solid among the applicants.
Besides that, there were about five or six people who seemed like they would quickly follow along if I taught them.
Well, at this level, it seems like you could run up to three teams in an 8-bit game. Of course, this is only if the planning, development, art, and sound are all aligned well as if the project is being juggled.
I thought about the games I’m planning now.
1. Belt Scroll Action : Arcade A1/Gemix/Mega Drive (candidate)
2. Baseball Game : Jemix/Mega Drive (candidate)
3. : Arcade A1
The fastest way to do this right now is number 2.
I tried to re-prioritize and re-order projects based on the completion of developer hiring.
1. Create first and release the game.
2. Develop for arcade use and accumulate A1 experience
3. Development of A1 in progress with improved skills
We should proceed in this order.
But there is one problem.
2. In order to develop for our arcade board, A1 must be completed to some extent. However, since we have just started comparing and analyzing other companies’ boards, it is still a long way to go before we can get the results.
At least CPU and GPU, in this day and age it’s called PPU. Pixel Processing Unit.
I think you need to know at least two things about how to design it so you can start working on it.
After organizing the coding test results, I stopped by Seun Shopping Mall on my way to work to meet Lee Ki-cheol.
“Hey, is our gamer brother here?”
“Yes, brother, you’re here.”
I decided to just accept Lee Ki-cheol’s prank. Lee Ki-cheol chuckled as he watched me like that.
“How’s the work?”
“Oh, last week I took apart the Sega System 16 board and tried to make one myself. It works pretty well.”
Reverse engineering.
A company with weak technical skills studies the designs of other companies’ products and then tries to make them in reverse.
This is an essential task for latecomers to catch up with advanced companies. It would be problematic to study design methods in this way and make them in the same way, but it is also absurd to start development without even looking at the products of the best companies.
“As you said, Gamdol, this System 16 is similar to the Mega Drive.”
“That’s right. Because the Mega Drive is based on System 16.”
And Sega later made another arcade board called the System C based on the Mega Drive. They developed a good board and used it to their advantage by modifying it here and there.
Another example of this method that was later used was the Neo Geo. The Neo Geo was truly a dream console because it allowed you to enjoy high-spec arcade games at home.
However, because it had such high specs, the game console was expensive, and because it used large ROM packs with high capacity, the game prices were also terrifying. In the end, despite having numerous hits, the Neo Geo failed to overcome the price barrier and became popular.
The Sega and Neo Geo cases are very important reference cases for me.
Especially Neo Geo.
Every developer wants to make games on the highest specs, but the best isn’t necessarily the best.
If you go for high specs, the price goes up, and it is more likely to fail as a home console. Neo Geo has lasted for over 10 years with high performance, but it never became the mainstream game console.
Only by striking an optimal balance between performance, price, and ease of game development can one gain an advantage in the fierce 16-bit console war.
“Then, you start making it with this System 16 as the center and referencing other game boards? You use a Motorola 68000 CPU? Are you saying anything else?”
“Okay, instead, let’s try using the auxiliary processors for graphics and sound in a more diverse way.”
“Coprocessor?”
“Yeah. To make game graphics fancy, you don’t just need a fast CPU. You need to be able to use as many special effects as possible, like enlarging, shrinking, rotating, flipping, twisting, and translucency on backgrounds and character sprites, but it’s too much work for the CPU to handle all of that.”
“Well, the CPU is a busy body. It doesn’t have time to rest. Poor kid.”
“A company like Nintendo could commission a chip company to develop a custom chip that only handles such functions, but that’s not the case for us. We need to use as many general-purpose chips as possible as auxiliary processors, extract as much performance as possible, and make various special functions possible. And there’s no need to use only one auxiliary processor.”
“Are you saying you’re going to have several assistants next to the CPU?”
“Yes. Graphics and sound processing can be done by splitting the tasks and processing them in parallel on multiple auxiliary processors.”
“Hmm, that’s a good idea, but then wouldn’t it be really important to manage traffic so that the data flow doesn’t get tangled when processing in parallel?”
“I’ll take care of managing the parallel processing. I’ll take care of some of the graphic task management in the firmware (software that controls and operates the hardware), and I’ll also have to create a game engine later anyway.”
“Oh~, is that something our gamer can do? Then OK. 8-bit chips aren’t that expensive anymore, so let’s try out a bunch of different ones. For now, let’s go with the most common Z80 series.”
In the 21st century, multi-core CPUs will become standard. Then, the number of operations that can be processed simultaneously in a single CPU will increase as the number of cores.
But now is the single-core era. Although the data bandwidth has increased and the speed has become faster than before with 16-bit CPUs, instructions can only be processed sequentially, one at a time.
The game cannot run properly with the CPU working alone, as the gamer is constantly controlling the character, multiple characters are moving simultaneously, and various special effects are processed.
So a coprocessor is a must.
I’m thinking of applying the parallel processing methods used in GPUs here, so that we can expect similar effects without having to spend a lot of money developing custom chips.
No, it has to be that way. Otherwise it won’t be able to compete with the Super Famicom, which is armed with all sorts of special effects.
I talked to Lee Ki-cheol about the basic design of A1. Although I have limited knowledge of hardware, I was able to tell Lee Ki-cheol specifically what I wanted because I have been working with GPUs while developing games for a long time.
“Hey, I’m hungry after hearing such a funny story. Want something to eat?”
I was just about to tidy up and go out to eat when the doorbell rang.
“Oh, that’s right! I told you that the computer nerd from the next room was coming.”
“Computer idiot?”
“Yeah, Gamdol wants to meet you.”
“me?”
“hello.”
The door opened and a gentle-looking man wearing glasses came in.
“Hey, Gamedol, say hello. I’m the computer guy in the room next door. What did you say you were making?”
“I’m developing a word processor for Korean. Hello. My name is Lee Cheon-jin.”
I was so shocked that I almost froze like a stone. I barely managed to grab the hand he extended and shook it with a trembling heart.
What the heck? Why is this guy here?
Did the national word processor, which everyone in Korea has used among computer users, also start at Seun?